diff --git a/default/objects/baxterNarrowLongFinger/ein/sceneModel/model.yml b/default/objects/baxterNarrowLongFinger/ein/sceneModel/model.yml new file mode 100644 index 00000000..11f6ecb9 --- /dev/null +++ b/default/objects/baxterNarrowLongFinger/ein/sceneModel/model.yml @@ -0,0 +1,1099 @@ +%YAML:1.0 +Scene: + predicted_class_name: NONAME + annotated_class_name: NONAME + width: 111 + height: 77 + x_center_cell: 55 + y_center_cell: 38 + cell_width: 2.0017182130584194e-03 + anchor_pose: { px:4.1546699999999992e-01, py:6.7261000000000004e-01, + pz:1.6820546412302465e-01, qw:1., qx:0., qy:0., qz:0. } + background_map: + width: 111 + height: 77 + x_center_cell: 55 + y_center_cell: 38 + cell_width: 2.0017182130584194e-03 + cells: [ + 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" ] + anchor_pose: { px:3.3421699999999999e-01, py:7.5385999999999997e-01, + pz:1.6820546412302465e-01, qw:9.9999922513961792e-01, + qx:-1.4685103087686002e-04, qy:-2.3665605112910271e-04, + qz:1.2525303754955530e-03 } + predicted_map: + width: 111 + height: 77 + x_center_cell: 55 + y_center_cell: 38 + cell_width: 2.0017182130584194e-03 + cells: [ + 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" ] + anchor_pose: { px:4.1546699999999992e-01, py:6.7261000000000004e-01, + pz:1.6820546412302465e-01, qw:1., qx:0., qy:0., qz:0. } + observed_map: + width: 111 + height: 77 + x_center_cell: 55 + y_center_cell: 38 + cell_width: 2.0017182130584194e-03 + cells: [ + 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" ] + anchor_pose: { px:4.1546699999999992e-01, py:6.7261000000000004e-01, + pz:1.6820546412302465e-01, qw:1., qx:0., qy:0., qz:0. } + discrepancy_map: + width: 111 + height: 77 + x_center_cell: 55 + y_center_cell: 38 + cell_width: 2.0017182130584194e-03 + cells: [ + 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 ] + anchor_pose: { px:4.1546699999999992e-01, py:6.7261000000000004e-01, + pz:1.6820546412302465e-01, qw:1., qx:0., qy:0., qz:0. } + predicted_objects: + [] + predicted_segmentation: + rows: 111 + cols: 77 + type: 6 + data: [ + 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" ] + discrepancy_magnitude: + rows: 111 + cols: 77 + type: 6 + data: [ + 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" ] + discrepancy_density: + rows: 111 + cols: 77 + type: 6 + data: [ + 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" ] diff --git a/default/objects/baxterNarrowLongFinger/ein/sceneModel/model.yml.REMOVED.git-id b/default/objects/baxterNarrowLongFinger/ein/sceneModel/model.yml.REMOVED.git-id deleted file mode 100644 index a7888e34..00000000 --- a/default/objects/baxterNarrowLongFinger/ein/sceneModel/model.yml.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -11f6ecb9e8c3ad41c02d6bee6ebf68bd524b86a4 \ No newline at end of file diff --git a/default/objects/vocab.yml b/default/objects/vocab.yml new file mode 100644 index 00000000..06863838 --- /dev/null +++ b/default/objects/vocab.yml @@ -0,0 +1,31972 @@ +%YAML:1.0 +vocab: !!opencv-matrix + rows: 1000 + cols: 128 + dt: f + data: [ 5.62745094e+00, 9.35294151e+00, 9.76470566e+00, + 7.01960802e+00, 1.00588236e+01, 1.06862745e+01, 6.64705896e+00, + 4.96078444e+00, 2.95490189e+01, 4.44313736e+01, 4.65098038e+01, + 3.91960793e+01, 6.18235283e+01, 6.26666679e+01, 3.32156868e+01, + 2.09215679e+01, 3.67843132e+01, 5.86666679e+01, 4.49803925e+01, + 3.62156868e+01, 7.76862717e+01, 1.12960785e+02, 5.25686264e+01, + 2.54901962e+01, 1.76470585e+01, 2.74509811e+01, 2.26274509e+01, + 2.17254906e+01, 7.18627472e+01, 1.29333328e+02, 8.33529434e+01, + 1.62941170e+01, 8.13725471e+00, 1.34705887e+01, 1.17450981e+01, + 7.37254906e+00, 1.17647057e+01, 1.45882349e+01, 9.23529434e+00, + 6.27450991e+00, 4.34117661e+01, 6.17254906e+01, 5.36862755e+01, + 4.11372566e+01, 6.37254906e+01, 84., 4.82549019e+01, + 2.77058830e+01, 5.74117661e+01, 7.58823547e+01, 5.56666679e+01, + 4.32352943e+01, 7.43529434e+01, 1.02921570e+02, 5.84901962e+01, + 3.82941170e+01, 3.92941170e+01, 4.75686264e+01, 3.75098038e+01, + 3.23137245e+01, 7.10784302e+01, 1.07019608e+02, 5.61960793e+01, + 3.08627453e+01, 7.33333349e+00, 9.84313679e+00, 8.52941132e+00, + 4.50980377e+00, 8.39215660e+00, 1.28431368e+01, 7.01960802e+00, + 4.37254906e+00, 3.50196075e+01, 4.45098038e+01, 3.72352943e+01, + 2.83333340e+01, 4.64509811e+01, 6.76470566e+01, 3.43529396e+01, + 2.21568623e+01, 4.83529396e+01, 5.55686264e+01, 38., + 3.05098038e+01, 56., 7.57843170e+01, 4.11176453e+01, + 2.82549019e+01, 3.10980396e+01, 3.28235283e+01, 2.64509811e+01, + 2.59607849e+01, 4.53725471e+01, 5.18235283e+01, 3.83529396e+01, + 2.93529415e+01, 6.86274529e-01, 8.82352948e-01, 5.29411793e-01, + 2.74509817e-01, 9.01960790e-01, 1.62745094e+00, 3.72549027e-01, + 3.92156869e-01, 4.37254906e+00, 5.94117641e+00, 2.90196085e+00, + 2.35294127e+00, 5.86274529e+00, 7.31372547e+00, 2.41176462e+00, + 1.76470590e+00, 5.52941179e+00, 5.76470566e+00, 3.45098042e+00, + 3.66666675e+00, 8.19607830e+00, 8.68627453e+00, 3.31372547e+00, + 2.76470590e+00, 4.60784292e+00, 4.33333349e+00, 2.56862736e+00, + 1.96078432e+00, 5.27450991e+00, 4.72549009e+00, 2.78431368e+00, + 3.15686274e+00, 8.10810852e+00, 6.02702713e+00, 1.93243237e+01, + 8.98378372e+01, 8.51891861e+01, 3.02702713e+00, 1.45945942e+00, + 3.18918920e+00, 3.67567563e+00, 1.48648643e+00, 5.86486483e+00, + 9.18108139e+01, 8.25945969e+01, 8.35135174e+00, 5.54054070e+00, + 5.56756735e+00, 4.43243265e+00, 1.21621621e+00, 6.18918896e+00, + 2.48378372e+01, 1.68648643e+01, 1.40810814e+01, 2.08378372e+01, + 1.73783779e+01, 1.22702703e+01, 1.32432432e+01, 8.48648643e+00, + 4.29729748e+00, 4.32432413e+00, 1.98108101e+01, 3.02972965e+01, + 1.77567558e+01, 2.38378372e+01, 1.85945950e+01, 1.51621618e+01, + 4.12162170e+01, 1.08540543e+02, 3.48918915e+01, 7.29729748e+00, + 6.45945930e+00, 4.39729729e+01, 1.33513517e+01, 1.78378379e+00, + 1.62972965e+01, 9.79729767e+01, 6.95945969e+01, 1.97837830e+01, + 2.74864864e+01, 5.08648643e+01, 2.17567558e+01, 4.83783770e+00, + 1.03783779e+01, 5.04054070e+01, 7.39459457e+01, 4.19729729e+01, + 3.93513527e+01, 3.38108101e+01, 2.87297306e+01, 9.51351357e+00, + 9.32432461e+00, 2.67297306e+01, 4.25405388e+01, 2.38648643e+01, + 1.73513508e+01, 3.38648643e+01, 3.98378372e+01, 1.90540543e+01, + 19., 8.49189224e+01, 7.15945969e+01, 21., 1.31891890e+01, + 6.71621628e+01, 7.24324341e+01, 1.23783779e+01, 9.16216183e+00, + 9.83243256e+01, 1.10648651e+02, 1.06756754e+01, 1.35675678e+01, + 5.04864883e+01, 7.72162170e+01, 3.42702713e+01, 2.58918915e+01, + 7.85945969e+01, 86., 1.57567568e+01, 11., 1.56756754e+01, + 2.29189186e+01, 2.11621628e+01, 2.02432442e+01, 3.32702713e+01, + 2.96756763e+01, 8.29729748e+00, 6.97297287e+00, 1.40540543e+01, + 2.78378372e+01, 1.47567568e+01, 1.58648653e+01, 3.39459457e+01, + 5.31081085e+01, 2.50810814e+01, 1.22432432e+01, 1.47837839e+01, + 5.39189186e+01, 1.75675678e+01, 1.11891890e+01, 3.92162170e+01, + 1.08891891e+02, 3.08108101e+01, 9.67567539e+00, 4.45945930e+00, + 3.41351357e+01, 2.43783779e+01, 8.89189148e+00, 1.71891899e+01, + 9.55135117e+01, 6.80810776e+01, 3.51351357e+00, 1.72972977e+00, + 5.72972965e+00, 12., 9.51351357e+00, 7.13513517e+00, + 2.12432442e+01, 8.20270233e+01, 1.85675678e+01, 1.65074635e+01, + 1.22238808e+01, 2.87164173e+01, 6.92985077e+01, 2.73731346e+01, + 1.03283587e+01, 1.16716413e+01, 2.01194038e+01, 2.73432827e+01, + 1.18507462e+01, 1.21791048e+01, 4.36716423e+01, 2.78059692e+01, + 8.73134327e+00, 8.83582115e+00, 3.18507462e+01, 1.27044777e+02, + 8.10447788e+00, 3.64179111e+00, 8.01492500e+00, 7.67164183e+00, + 2.74626875e+00, 3.97014928e+00, 1.24910446e+02, 7.85223846e+01, + 9.70149231e+00, 4.59701490e+00, 4.41791058e+00, 5.29850769e+00, + 3.73134327e+00, 6.59701490e+00, 6.23283577e+01, 7.64179087e+00, + 8.52238846e+00, 2.52686558e+01, 3.53432846e+01, 8.11940289e+00, + 7.98507452e+00, 4.49104462e+01, 3.55223885e+01, 2.90746269e+01, + 5.11940289e+00, 8.35820866e+00, 1.32238808e+01, 6.83582067e+00, + 5.56716394e+00, 6.22388077e+01, 1.43134323e+02, 9.07761230e+01, + 4.82089567e+00, 3.46268654e+00, 8.65671635e+00, 6.10447741e+00, + 3.59701490e+00, 2.72089558e+01, 1.46567169e+02, 4.09403000e+01, + 8.47761154e+00, 4.38805962e+00, 5.50746250e+00, 6.26865673e+00, + 5.20895529e+00, 1.64626865e+01, 6.44626846e+01, 3.98507452e+00, + 2.44776130e+00, 5.53731346e+00, 3.56716418e+00, 2.01492548e+00, + 1.08208952e+01, 1.41865677e+02, 1.15074623e+02, 1.36865673e+01, + 3.11940289e+00, 5.17910433e+00, 5.10447741e+00, 4.04477596e+00, + 6.22388077e+00, 1.26865669e+02, 1.46567169e+02, 2.75522385e+01, + 6.68656731e+00, 5.77611923e+00, 6.83582067e+00, 6.32835817e+00, + 9.26865673e+00, 5.32388077e+01, 1.14402985e+02, 1.85223885e+01, + 7.34328365e+00, 5.95522404e+00, 5.73134327e+00, 5.47761202e+00, + 7., 2.01343288e+01, 3.61641808e+01, 5.28358221e+00, + 2.52238798e+00, 3.58208966e+00, 3.26865673e+00, 3.41791034e+00, + 8.68656731e+00, 6.13283577e+01, 4.33880615e+01, 1.12686567e+01, + 4.58208942e+00, 4.10447741e+00, 5.49253750e+00, 5.13432837e+00, + 7.56716394e+00, 3.45671654e+01, 4.53880615e+01, 1.16567163e+01, + 5.86567163e+00, 6.34328365e+00, 6.38805962e+00, 6.32835817e+00, + 7.98507452e+00, 1.86865673e+01, 2.63880596e+01, 8.16417885e+00, + 4.95522404e+00, 5.56716394e+00, 4.73134327e+00, 4.41791058e+00, + 5.29850769e+00, 9.62686539e+00, 1.25671644e+01, 1.06571426e+01, + 2.19619045e+01, 1.61333332e+01, 8.76190472e+00, 7.75238085e+00, + 6.54285717e+00, 4.56190491e+00, 5.27619028e+00, 1.16476192e+01, + 1.82571430e+01, 1.55333338e+01, 1.05714283e+01, 1.15047617e+01, + 1.20380955e+01, 8.71428585e+00, 6.28571415e+00, 1.06761904e+01, + 1.43238096e+01, 1.13047619e+01, 8.65714264e+00, 8.55238056e+00, + 1.03333330e+01, 1.12857141e+01, 7.28571415e+00, 3.11428571e+00, + 3.36190486e+00, 2.22857141e+00, 1.94285715e+00, 1.65714288e+00, + 1.25714290e+00, 2.79047608e+00, 2.62857151e+00, 3.49238091e+01, + 1.22171425e+02, 8.35428543e+01, 1.85333328e+01, 1.26666670e+01, + 1.04857140e+01, 6.51428556e+00, 8.03809547e+00, 3.57999992e+01, + 7.56666641e+01, 5.14952393e+01, 2.76666660e+01, 2.52000008e+01, + 2.08476181e+01, 1.62190475e+01, 1.51904764e+01, 2.64380951e+01, + 4.67333336e+01, 3.45619049e+01, 2.33333340e+01, 1.88285713e+01, + 1.89047623e+01, 1.85333328e+01, 1.62761898e+01, 7.17142868e+00, + 1.17047615e+01, 8.22857189e+00, 5.24761915e+00, 3.56190467e+00, + 3.73333335e+00, 5.91428566e+00, 6.20952368e+00, 6.22000008e+01, + 1.60295242e+02, 1.07485718e+02, 1.08761902e+01, 7.06666660e+00, + 1.11238098e+01, 5.37142849e+00, 5.28571415e+00, 7.99523773e+01, + 1.47047623e+02, 6.53904724e+01, 2.12666664e+01, 1.70761909e+01, + 1.37142859e+01, 1.05619049e+01, 1.29238091e+01, 4.12000008e+01, + 6.46476212e+01, 3.81142845e+01, 2.13333340e+01, 2.04190483e+01, + 1.82571430e+01, 1.51523809e+01, 1.84380951e+01, 8.70476151e+00, + 1.29238091e+01, 9.01904774e+00, 5.00952387e+00, 4.61904764e+00, + 4.52380943e+00, 4.26666689e+00, 5.02857161e+00, 9.33619080e+01, + 1.51466660e+02, 3.77904778e+01, 5.29523802e+00, 1.27619047e+01, + 3.81714287e+01, 1.33619051e+01, 8.36190510e+00, 1.37276184e+02, + 1.58380951e+02, 2.72857151e+01, 7.03809547e+00, 1.01428576e+01, + 1.02095242e+01, 5.52380943e+00, 1.26095238e+01, 6.28761902e+01, + 7.68190460e+01, 2.29142857e+01, 1.24761906e+01, 1.46380949e+01, + 1.29238091e+01, 1.05142860e+01, 1.71142864e+01, 9.56190491e+00, + 1.11047621e+01, 5.50476170e+00, 3.75238085e+00, 4.00952387e+00, + 3.77142859e+00, 3.67619038e+00, 4.18095255e+00, 3.54150925e+01, + 5., 2.43396235e+00, 2.22641516e+00, 5.05660391e+00, + 1.96415100e+01, 3.64339638e+01, 1.68679237e+01, 4.82641525e+01, + 1.16603775e+01, 5.64150953e+00, 5.24528313e+00, 6.07547188e+00, + 1.42641506e+01, 3.11320763e+01, 2.68490562e+01, 3.41132088e+01, + 1.06981134e+01, 9.20754719e+00, 9.67924500e+00, 9.28301907e+00, + 1.06415091e+01, 2.11886787e+01, 2.57924538e+01, 2.20566044e+01, + 7.54716969e+00, 7.49056625e+00, 2.16415100e+01, 1.18679247e+01, + 7.41509438e+00, 14., 4.14905663e+01, 2.52830181e+01, + 8.39622688e+00, 4.22641516e+00, 3.81132078e+00, 5.75471687e+00, + 1.57924528e+01, 3.23018875e+01, 19., 3.97735863e+01, + 1.53773584e+01, 9.94339657e+00, 9.69811344e+00, 1.05471697e+01, + 1.68867931e+01, 3.91509438e+01, 3.06037731e+01, 4.03207550e+01, + 1.51698112e+01, 1.38490562e+01, 2.46037731e+01, 1.44150944e+01, + 14., 2.05660381e+01, 5.48113213e+01, 4.75660362e+01, + 7.22641516e+00, 9.03773594e+00, 5.59433975e+01, 2.48490562e+01, + 9.69811344e+00, 2.06981125e+01, 1.34547165e+02, 1.87358494e+01, + 9.13207531e+00, 5.33962250e+00, 5.58490562e+00, 6.03773594e+00, + 1.00566034e+01, 2.13396225e+01, 1.78301888e+01, 2.41698112e+01, + 1.24716978e+01, 1.15283022e+01, 1.77358494e+01, 1.32641506e+01, + 1.79622650e+01, 2.98490562e+01, 3.48301888e+01, 6.18679237e+01, + 1.09245281e+01, 1.07924528e+01, 5.49433975e+01, 2.04528294e+01, + 8.71698093e+00, 1.74150944e+01, 1.34924530e+02, 6.15471687e+01, + 4.05660391e+00, 7.03773594e+00, 1.10735847e+02, 3.33396225e+01, + 3.11320758e+00, 1.02641506e+01, 1.52415100e+02, 1.01509438e+01, + 6.67924547e+00, 4.20754719e+00, 5.94339609e+00, 5.30188656e+00, + 7.43396235e+00, 1.04905663e+01, 1.19811325e+01, 3.18301888e+01, + 1.03018866e+01, 9.26415062e+00, 2.72452831e+01, 1.26415091e+01, + 9.35849094e+00, 1.53584909e+01, 8.62830200e+01, 6.69245300e+01, + 7.47169828e+00, 9.45283031e+00, 7.94150925e+01, 2.70377350e+01, + 4.41509438e+00, 1.34150944e+01, 1.50886795e+02, 3.25283012e+01, + 3.64150953e+00, 8.83018875e+00, 1.37698120e+02, 4.34528313e+01, + 3.83018875e+00, 7.33962250e+00, 1.01792450e+02, 1.18904114e+01, + 1.16849318e+01, 1.39452057e+01, 2.42739735e+01, 1.61506844e+01, + 1.10821915e+01, 1.95068493e+01, 2.66164379e+01, 3.06027393e+01, + 1.33698626e+01, 1.03698626e+01, 7.46849289e+01, 6.74657516e+01, + 1.28219175e+01, 1.20136986e+01, 5.46438370e+01, 7.16849289e+01, + 9.38356209e+00, 5.13698626e+00, 9.10410995e+01, 7.42602768e+01, + 6.64383554e+00, 5.83561659e+00, 8.83835602e+01, 4.14246559e+01, + 5.89041090e+00, 7.60273981e+00, 4.45890427e+01, 2.43013706e+01, + 7.72602749e+00, 6.38356161e+00, 6.43013687e+01, 2.17123280e+01, + 2.08904114e+01, 1.73972607e+01, 3.85479469e+01, 2.92602749e+01, + 1.45753422e+01, 2.11369858e+01, 3.25068512e+01, 4.97808228e+01, + 1.36027393e+01, 1.00684929e+01, 9.82739716e+01, 9.44794540e+01, + 2.45205479e+01, 1.36438360e+01, 7.02328796e+01, 9.15068512e+01, + 7.72602749e+00, 5.38356161e+00, 8.08767090e+01, 6.88493118e+01, + 1.22054796e+01, 7.80821896e+00, 1.02315071e+02, 4.00273972e+01, + 6.19178104e+00, 7.78082180e+00, 3.12876720e+01, 2.34246578e+01, + 1.29452057e+01, 1.08630133e+01, 5.81506844e+01, 2.63287678e+01, + 2.01369858e+01, 1.55205479e+01, 4.90821915e+01, 3.96849327e+01, + 14., 1.56849318e+01, 3.36849327e+01, 6.15342484e+01, + 1.26986303e+01, 1.19452057e+01, 9.80410995e+01, 8.69452057e+01, + 2.06438351e+01, 1.13972607e+01, 8.11095886e+01, 8.59726028e+01, + 8.63013744e+00, 7.83561659e+00, 5.45205498e+01, 4.16986313e+01, + 11., 8.83561611e+00, 9.56164398e+01, 2.69041100e+01, + 9.82191753e+00, 9.79452038e+00, 1.77123280e+01, 1.69452057e+01, + 1.48082190e+01, 1.10547943e+01, 3.35890427e+01, 1.98904114e+01, + 9.46575356e+00, 8.50684929e+00, 5.45616455e+01, 3.93561630e+01, + 9.52054787e+00, 9.34246540e+00, 3.04520550e+01, 5.39452057e+01, + 6.97260284e+00, 7.30136967e+00, 7.19452057e+01, 5.17123299e+01, + 1.30547943e+01, 9.76712322e+00, 7.99862976e+01, 4.61232872e+01, + 8.31506824e+00, 8.63013744e+00, 2.55068493e+01, 2.27808228e+01, + 1.00273972e+01, 8.50684929e+00, 6.04246559e+01, 1.20273972e+01, + 9.56164360e+00, 9.15068531e+00, 9.13698673e+00, 1.05068493e+01, + 1.08493147e+01, 8.04109573e+00, 1.20410957e+01, 7.18421030e+00, + 6.21052647e+00, 3.86842108e+00, 4.02631569e+00, 5.36842108e+00, + 7.68421030e+00, 9.05263138e+00, 8.02631569e+00, 1.10526314e+01, + 7.15789461e+00, 6.31578970e+00, 5.63157892e+00, 1.04210529e+01, + 1.42105265e+01, 1.69473686e+01, 1.69473686e+01, 7.23684216e+00, + 4.68421030e+00, 7.42105246e+00, 2.20263157e+01, 2.26315784e+01, + 1.69473686e+01, 1.52105265e+01, 1.35263157e+01, 1.39473686e+01, + 2.60526323e+00, 6.34210539e+00, 5.38947372e+01, 2.81842098e+01, + 9.84210491e+00, 8.34210491e+00, 4.19473686e+01, 1.36842108e+01, + 9.92105293e+00, 7.34210539e+00, 6.97368431e+00, 6.73684216e+00, + 1.16578951e+01, 1.62894745e+01, 1.46052628e+01, 1.44736843e+01, + 1.32631578e+01, 2.68947372e+01, 4.78684196e+01, 1.68947372e+01, + 1.65789471e+01, 2.46842098e+01, 2.55789471e+01, 1.27631578e+01, + 6.39473677e+00, 4.56315804e+01, 9.22105255e+01, 3.23947372e+01, + 1.57894735e+01, 3.83947372e+01, 6.27894745e+01, 2.97631588e+01, + 2.34210515e+00, 2.14210529e+01, 9.29210510e+01, 3.98947372e+01, + 1.07105265e+01, 2.93684216e+01, 1.17710526e+02, 1.25526314e+01, + 8.52631569e+00, 1.02631578e+01, 3.54736824e+01, 1.67368412e+01, + 1.17631578e+01, 1.35526314e+01, 1.77894745e+01, 2.40526314e+01, + 9.34210491e+00, 3.57894745e+01, 1.02105263e+02, 3.33421059e+01, + 9.89473724e+00, 4.75000000e+01, 1.09921051e+02, 2.17368412e+01, + 1.56052628e+01, 4.83947372e+01, 7.22631607e+01, 2.37631588e+01, + 2.62368412e+01, 1.15947365e+02, 1.28736847e+02, 2.48421059e+01, + 2.23947372e+01, 2.25000000e+01, 79., 6.09210510e+01, + 2.82368412e+01, 6.05526314e+01, 9.85000000e+01, 1.68684216e+01, + 3.86842108e+00, 7.71052647e+00, 5.51315804e+01, 3.23684196e+01, + 5.73684216e+00, 8.63157940e+00, 5.68947372e+01, 5.41578941e+01, + 1.34210529e+01, 2.27631588e+01, 7.66052628e+01, 3.11315784e+01, + 5.18421030e+00, 2.01052628e+01, 1.18342102e+02, 4.47105255e+01, + 3.56578941e+01, 3.96842117e+01, 3.47894745e+01, 2.15789471e+01, + 2.34736843e+01, 3.58684196e+01, 5.76052628e+01, 2.12894745e+01, + 2.36315784e+01, 2.09736843e+01, 5.58157883e+01, 7.66052628e+01, + 4.80789490e+01, 2.25263157e+01, 2.28947372e+01, 2.46744194e+01, + 4.85813942e+01, 4.24418602e+01, 6.97674417e+00, 8.37209320e+00, + 1.55116282e+01, 2.15581398e+01, 1.92093029e+01, 3.79534874e+01, + 1.42046509e+02, 1.21860466e+02, 1.07906981e+01, 1.40930233e+01, + 3.51395340e+01, 4.50930214e+01, 2.68139534e+01, 2.40697670e+01, + 1.55093018e+02, 1.57209305e+02, 1.11162786e+01, 7.06976748e+00, + 4.18837204e+01, 6.60697708e+01, 2.24186039e+01, 1.13488369e+01, + 1.46651169e+02, 1.55232559e+02, 1.16279068e+01, 4.13953495e+00, + 5.57674408e+01, 9.48372116e+01, 1.12093019e+01, 2.34883728e+01, + 1.61627903e+01, 1.06976748e+01, 7.83720922e+00, 9.30232525e+00, + 1.20465117e+01, 1.70930233e+01, 2.58604660e+01, 4.00232544e+01, + 3.14186039e+01, 2.34651165e+01, 1.90930233e+01, 1.67906971e+01, + 2.21395340e+01, 3.02790699e+01, 3.99069786e+01, 4.21162796e+01, + 5.27441864e+01, 5.52093010e+01, 2.17674427e+01, 1.88604660e+01, + 3.66279068e+01, 5.07209320e+01, 4.11860466e+01, 3.14418602e+01, + 8.56511612e+01, 1.01139534e+02, 1.72558136e+01, 1.32790699e+01, + 4.48372078e+01, 5.82093010e+01, 2.93720932e+01, 2.09767437e+01, + 1.67906971e+01, 1.15348835e+01, 6.74418592e+00, 6.18604660e+00, + 8.88372135e+00, 1.21627903e+01, 1.78372097e+01, 3.20465126e+01, + 2.16976738e+01, 1.68837204e+01, 1.17441864e+01, 1.17441864e+01, + 1.49302330e+01, 2.23255806e+01, 3.23255806e+01, 3.37209320e+01, + 2.19534893e+01, 1.86511631e+01, 1.49534883e+01, 1.31627903e+01, + 1.64651165e+01, 2.39767437e+01, 3.49767456e+01, 2.51395340e+01, + 1.98139534e+01, 1.65348835e+01, 1.24883718e+01, 1.22325583e+01, + 1.47906981e+01, 1.83023262e+01, 2.51162796e+01, 9.02325535e+00, + 4.53488350e+00, 5.23255825e+00, 4.37209320e+00, 2.74418616e+00, + 2.55813956e+00, 3.76744175e+00, 8.13953495e+00, 1.41162786e+01, + 9.27906990e+00, 7.60465097e+00, 6.13953495e+00, 4.39534903e+00, + 4.04651165e+00, 5.25581408e+00, 1.06046515e+01, 1.23953485e+01, + 1.02558136e+01, 8.20930195e+00, 8.48837185e+00, 5.37209320e+00, + 4.27906990e+00, 6.90697670e+00, 9.32558155e+00, 1.03953485e+01, + 7.02325583e+00, 5.97674417e+00, 4.76744175e+00, 3.58139539e+00, + 3.55813956e+00, 5.44186068e+00, 7.97674417e+00, 5.85245895e+00, + 8.95081997e+00, 1.05901642e+01, 8.95081997e+00, 1.93278694e+01, + 1.03901642e+02, 9.24262314e+01, 1.86885242e+01, 1.09344263e+01, + 1.69836063e+01, 2.39672127e+01, 1.44754095e+01, 1.34262295e+01, + 7.70655746e+01, 1.19819672e+02, 3.70163918e+01, 1.57377052e+01, + 1.79016399e+01, 3.34918022e+01, 1.60819664e+01, 1.11475410e+01, + 4.20655746e+01, 1.17754097e+02, 6.62459030e+01, 1.80655746e+01, + 9.96721268e+00, 2.13442631e+01, 1.21147537e+01, 4.26229525e+00, + 1.07540979e+01, 9.55081940e+01, 1.06278687e+02, 5.27868843e+00, + 4.06557369e+00, 4.08196735e+00, 6.16393423e+00, 2.48032780e+01, + 1.05213112e+02, 8.29344254e+01, 1.33934422e+01, 1.31311474e+01, + 8.39344215e+00, 1.06885242e+01, 1.12950821e+01, 1.93278694e+01, + 7.95245895e+01, 1.07836067e+02, 3.15901642e+01, 1.94918041e+01, + 8.18032742e+00, 1.32786884e+01, 1.02950821e+01, 1.38524590e+01, + 4.05573769e+01, 1.15295082e+02, 7.26065598e+01, 2.76393452e+01, + 6.95081949e+00, 9.11475372e+00, 8.22950840e+00, 8.19672108e+00, + 1.49672127e+01, 7.89016418e+01, 9.12459030e+01, 4.11475420e+00, + 2.52459025e+00, 1.37704921e+00, 2.29508185e+00, 1.60819664e+01, + 7.61639328e+01, 6.50983582e+01, 1.18360653e+01, 5.32786894e+00, + 1.63934422e+00, 1.16393447e+00, 2.26229501e+00, 1.08524590e+01, + 7.62622986e+01, 1.03967216e+02, 3.30163918e+01, 1.01475410e+01, + 2.31147552e+00, 1.16393447e+00, 2.09836054e+00, 6.44262314e+00, + 4.03770485e+01, 1.00737701e+02, 6.62459030e+01, 1.21475410e+01, + 1.86885250e+00, 1.50819671e+00, 2.55737710e+00, 5.32786894e+00, + 1.87049179e+01, 7.72295074e+01, 7.19508209e+01, 5.73770463e-01, + 3.27868849e-01, 8.19672123e-02, 1.63934425e-01, 1.52459013e+00, + 5.42622948e+00, 4.60655737e+00, 1.29508197e+00, 9.18032765e-01, + 3.11475396e-01, 9.83606577e-02, 9.83606577e-02, 1.14754093e+00, + 5.72131157e+00, 9.95081997e+00, 3.62295079e+00, 1.21311474e+00, + 6.55737668e-02, 4.91803288e-02, 4.91803288e-02, 5.40983617e-01, + 4.22950840e+00, 10., 6.26229525e+00, 1.27868855e+00, + 1.63934425e-01, 1.31147534e-01, 3.11475396e-01, 4.26229507e-01, + 1.55737710e+00, 6.93442631e+00, 6.52459002e+00, 1.22869568e+02, + 8.28695679e+00, 6.44347811e+00, 3.05130444e+01, 1.81739140e+01, + 4.66956520e+00, 1.64521732e+01, 1.33782608e+02, 1.55913040e+02, + 1.40434780e+01, 4.44347811e+00, 6.26956511e+00, 7.62608719e+00, + 5.85217381e+00, 1.49304352e+01, 1.51104355e+02, 5.18521729e+01, + 1.53391304e+01, 8.79130459e+00, 9.35652161e+00, 8.71304321e+00, + 9.08695698e+00, 1.46000004e+01, 5.29478264e+01, 3.91304350e+00, + 2.07826090e+00, 1.69565213e+00, 1.39999998e+00, 1.34782612e+00, + 1.34782612e+00, 1.68695652e+00, 3.86086965e+00, 1.29913040e+02, + 4.97391319e+00, 3.84347820e+00, 1.08434782e+01, 6.64347839e+00, + 4.65217400e+00, 2.85739136e+01, 1.61608688e+02, 1.19400002e+02, + 1.52956524e+01, 7.50434780e+00, 1.07043476e+01, 1.34956522e+01, + 1.26000004e+01, 2.80173912e+01, 1.48904343e+02, 3.53217392e+01, + 1.65913048e+01, 1.33913040e+01, 1.54173918e+01, 1.56782608e+01, + 1.50782604e+01, 1.90347824e+01, 4.28086967e+01, 2.70434785e+00, + 2.55652165e+00, 2.08695650e+00, 1.94782603e+00, 2.22608685e+00, + 2.13913035e+00, 2.33913040e+00, 3.49565220e+00, 6.92782593e+01, + 6.26086950e+00, 4.16521740e+00, 7.06086969e+00, 7.13043499e+00, + 9.72173882e+00, 4.46173897e+01, 1.56660873e+02, 5.17217407e+01, + 1.72000008e+01, 1.25130434e+01, 1.82608700e+01, 2.08086948e+01, + 1.97043476e+01, 3.00434780e+01, 7.99739151e+01, 2.26347828e+01, + 1.54434786e+01, 1.40260868e+01, 1.54086952e+01, 1.82000008e+01, + 1.60086956e+01, 1.86173916e+01, 2.79391308e+01, 2., + 1.68695652e+00, 1.70434785e+00, 1.77391303e+00, 1.77391303e+00, + 1.93913043e+00, 2.26956511e+00, 3.02608705e+00, 2.26260872e+01, + 6.53043461e+00, 6.93913031e+00, 9.14782619e+00, 8.98260880e+00, + 1.07130432e+01, 2.20086956e+01, 5.98347816e+01, 1.99304352e+01, + 1.19217396e+01, 1.19130430e+01, 1.41652174e+01, 1.63652172e+01, + 1.56000004e+01, 2.14434776e+01, 2.87565212e+01, 1.24608698e+01, + 8.59130478e+00, 1.00695648e+01, 1.01043482e+01, 1.21652174e+01, + 1.15913048e+01, 1.50608692e+01, 1.74086952e+01, 1.29565215e+00, + 8.34782600e-01, 1.22608697e+00, 9.91304338e-01, 9.65217412e-01, + 9.91304338e-01, 1.39999998e+00, 1.77391303e+00, 2.44067788e+00, + 1.22033894e+00, 2.76271176e+00, 2.81355929e+00, 1.32203388e+00, + 1.27118647e+00, 2.13559318e+00, 9.15254235e-01, 2.13559318e+00, + 1.77966106e+00, 4.32203388e+00, 2.37288141e+00, 8.81355941e-01, + 8.30508471e-01, 1., 8.81355941e-01, 1.30508471e+00, + 2.10169482e+00, 4.35593224e+00, 2.05084753e+00, 6.77966118e-01, + 8.13559294e-01, 7.62711883e-01, 7.28813589e-01, 8.64406765e-01, + 2.61016941e+00, 3.98305082e+00, 1.66101694e+00, 4.40677971e-01, + 2.71186441e-01, 3.72881353e-01, 4.23728824e-01, 5.38983059e+00, + 5.42372894e+00, 2.35254230e+01, 2.25254230e+01, 6.86440659e+00, + 8.05084705e+00, 1.06779661e+01, 5.18644047e+00, 8.91525459e+00, + 1.07118645e+01, 3.74067802e+01, 2.07118645e+01, 5.83050871e+00, + 4.88135576e+00, 8.77966118e+00, 7.16949129e+00, 4.81355953e+00, + 1.55593224e+01, 4.36610184e+01, 1.95593224e+01, 4.49152565e+00, + 2.69491529e+00, 5.16949129e+00, 4.38983059e+00, 4.18644047e+00, + 1.66610165e+01, 3.62372894e+01, 1.28644066e+01, 2.94915247e+00, + 1.72881353e+00, 3.61016941e+00, 4.74576283e+00, 3.52542377e+00, + 6.18644047e+00, 3.07627125e+01, 2.81525421e+01, 8.62711906e+00, + 4.30508471e+00, 3.61016960e+01, 2.58644066e+01, 3.74576283e+00, + 9.32203388e+00, 4.86440697e+01, 3.05762711e+01, 6.66101694e+00, + 5.77966118e+00, 1.08898308e+02, 5.60677948e+01, 3.72881365e+00, + 1.34237289e+01, 6.06440697e+01, 2.39322033e+01, 4.72881365e+00, + 1.53050852e+01, 1.33457626e+02, 4.49661026e+01, 9.54237270e+00, + 1.72881355e+01, 4.38305092e+01, 1.38983049e+01, 4.11864424e+00, + 3.07966099e+01, 1.18186440e+02, 2.55254230e+01, 7.89830494e+00, + 4.38983059e+00, 5.20338974e+01, 5.11694908e+01, 4.77966118e+00, + 2.86440682e+00, 9.83898315e+01, 1.16694916e+02, 4.06779671e+00, + 6.13559341e+00, 1.14881355e+02, 76., 3.37288141e+00, + 8.45762730e+00, 1.34440674e+02, 9.51864395e+01, 3.13559318e+00, + 1.56271191e+01, 1.31728821e+02, 4.84237289e+01, 3.06779671e+00, + 2.13220348e+01, 1.32406784e+02, 5.01016960e+01, 3.98305082e+00, + 3.82881355e+01, 1.20203392e+02, 2.09661026e+01, 5., + 4.86949158e+01, 1.16864410e+02, 1.75254230e+01, 6.59036160e+00, + 2.77831326e+01, 2.53253021e+01, 9.30120468e+00, 2.71084332e+00, + 3.10361443e+01, 3.95903625e+01, 2.33734941e+00, 3.04819274e+00, + 2.04216862e+01, 3.85301208e+01, 2.60963860e+01, 8., + 7.85542154e+00, 3.56746979e+01, 4.85542154e+00, 1.07228911e+00, + 8.66265106e+00, 2.87590370e+01, 3.34819260e+01, 1.66987953e+01, + 5.66265059e+00, 5.01927719e+01, 2.68192768e+01, 2.03614450e+00, + 2.28915668e+00, 2.13132534e+01, 3.83253021e+01, 1.04457827e+01, + 5.06024075e+00, 5.87831306e+01, 9.56385574e+01, 2.65060234e+00, + 7.78313217e+01, 1.25373497e+02, 4.89156628e+00, 2.18072295e+00, + 6.96265030e+01, 1.13265060e+02, 4.63855410e+00, 2.60240960e+00, + 2.96144581e+01, 1.30421692e+02, 2.22168674e+01, 3.26506019e+00, + 3.42650604e+01, 1.28783127e+02, 2.21686745e+01, 2.39759040e+00, + 7.20481920e+00, 1.27337349e+02, 7.87228928e+01, 3.93975902e+00, + 8., 1.25373497e+02, 7.79879532e+01, 3.54216862e+00, + 2.69879508e+00, 1.11240967e+02, 1.21674698e+02, 2.53012037e+00, + 2.79518080e+00, 7.46867447e+01, 7.91325302e+01, 2.24096394e+00, + 3.35301208e+01, 8.70481949e+01, 2.78313255e+00, 2.81927705e+00, + 1.29036140e+01, 2.57710838e+01, 9.97590351e+00, 3.87951803e+00, + 1.95542164e+01, 1.24192772e+02, 1.50843372e+01, 2.87951803e+00, + 8.46987915e+00, 3.12771091e+01, 1.51686745e+01, 5.78313255e+00, + 5.01204824e+00, 1.06156624e+02, 3.92530136e+01, 2.95180726e+00, + 6.48192787e+00, 2.47831326e+01, 1.77951813e+01, 8.02409649e+00, + 2.39759040e+00, 3.17108440e+01, 2.36265068e+01, 2.08433723e+00, + 4.49397612e+00, 1.85421696e+01, 2.32650604e+01, 1.20481932e+00, + 4.21686739e-01, 4.45783138e-01, 5.30120492e-01, 1.49397588e+00, + 1.04457827e+01, 1.97469883e+01, 5.09638548e+00, 2.06024098e+00, + 6.74698770e-01, 6.26506031e-01, 6.98795199e-01, 1.34939754e+00, + 8.10843372e+00, 2.36024094e+01, 9.12048149e+00, 3.28915668e+00, + 7.95180738e-01, 6.02409661e-01, 7.10843384e-01, 1.08433735e+00, + 4.63855410e+00, 2.10843372e+01, 1.54578314e+01, 3.92771077e+00, + 9.51807201e-01, 6.02409661e-01, 6.26506031e-01, 9.39759016e-01, + 2.12048197e+00, 1.41927710e+01, 1.61204815e+01, 2.83132529e+00, + 1.22530117e+01, 3.27710843e+00, 1.01204824e+00, 1.81084347e+01, + 1.33361450e+02, 3.44216881e+01, 1.66265059e+00, 4.89156628e+00, + 5.68072281e+01, 2.99759045e+01, 1.72289157e+00, 7.51807213e+00, + 8.97710876e+01, 4.29156609e+01, 2.78313255e+00, 3.36144567e+00, + 7.80963821e+01, 9.09638519e+01, 3.66265059e+00, 2.31325293e+00, + 2.50240955e+01, 2.94939766e+01, 4.12048197e+00, 1.90361440e+00, + 3.25542183e+01, 1.03313255e+02, 1.42771082e+01, 1.39759040e+00, + 8.10843372e+00, 2.14337349e+01, 6.93975925e+00, 2.14457822e+00, + 5.16867447e+00, 4.65060234e+00, 2.61445785e+00, 1.06506023e+01, + 1.25216866e+02, 7.57590332e+01, 4.16867447e+00, 1.77108431e+00, + 8.51807213e+00, 5.83132553e+00, 1.27710843e+00, 5.31325293e+00, + 1.42060242e+02, 1.33397583e+02, 4.68674707e+00, 2.53012037e+00, + 1.39518070e+01, 1.56746988e+01, 1.56626511e+00, 1.87951803e+00, + 1.06108437e+02, 1.41337357e+02, 1.06867466e+01, 2.96385550e+00, + 1.04819279e+01, 2.31325302e+01, 3.09638548e+00, 1.37349403e+00, + 3.22891579e+01, 1.33903610e+02, 3.09518070e+01, 4.26506042e+00, + 6.34939766e+00, 9.09638596e+00, 5.66265059e+00, 1.02891569e+01, + 4.11566277e+01, 3.35060234e+01, 7., 3.96385550e+00, + 5.46987963e+00, 8.51807213e+00, 5.21686745e+00, 1.00722895e+01, + 7.22409668e+01, 7.84578323e+01, 1.05301208e+01, 3.72289157e+00, + 4.18072271e+00, 6.54216862e+00, 4.20481920e+00, 6.33734941e+00, + 7.63253021e+01, 1.20927711e+02, 1.43493977e+01, 3.74698806e+00, + 2.97590351e+00, 5.01204824e+00, 3.59036136e+00, 3.89156628e+00, + 4.00843391e+01, 1.15457832e+02, 1.81566257e+01, 2.01204824e+00, + 1.89156628e+00, 2.16867471e+00, 2.18072295e+00, 3.63855433e+00, + 5.91566277e+00, 4.84337330e+00, 2.32530117e+00, 2.26506019e+00, + 2.33734941e+00, 3.33734941e+00, 2.95180726e+00, 4.20481920e+00, + 9.57831287e+00, 9.03614426e+00, 3.59036136e+00, 2.04819274e+00, + 1.75903618e+00, 2.67469883e+00, 2.73493981e+00, 3.36144567e+00, + 9.73493958e+00, 1.36024094e+01, 4.74698782e+00, 1.83132529e+00, + 1.40963852e+00, 2.34939766e+00, 2.49397588e+00, 2.07228923e+00, + 7.68674707e+00, 1.26024094e+01, 4.49397612e+00, 4.87142868e+01, + 1.34081631e+01, 1.91836739e+00, 1.95918369e+00, 2.13673477e+01, + 1.87142849e+01, 2.28571439e+00, 1.55918369e+01, 7.38163300e+01, + 3.37551003e+01, 4.10204077e+00, 1.46938777e+00, 4.10204077e+00, + 6.48979568e+00, 5.08163261e+00, 2.20204086e+01, 4.40816345e+01, + 3.46734695e+01, 1.12653065e+01, 4.93877554e+00, 7.51020432e+00, + 9.14285755e+00, 1.46530609e+01, 2.26734695e+01, 2.01224499e+01, + 1.39795914e+01, 1.13877554e+01, 8.30612278e+00, 8.71428585e+00, + 1.13877554e+01, 1.95510197e+01, 2.08367348e+01, 4.92857132e+01, + 4.26938782e+01, 2.34693885e+00, 1.85714281e+00, 3.28775520e+01, + 1.03367348e+02, 9.08163261e+00, 7.87755108e+00, 7.36326523e+01, + 6.79795914e+01, 5.93877554e+00, 1.22448981e+00, 2.67346931e+00, + 1.57551022e+01, 6.48979568e+00, 1.32448978e+01, 4.37755089e+01, + 6.76938782e+01, 1.92244892e+01, 4.14285707e+00, 3., + 7.32653046e+00, 1.32040815e+01, 17., 2.03673477e+01, + 3.37959175e+01, 3.25306129e+01, 1.72653065e+01, 9.63265324e+00, + 6.77551031e+00, 1.30204086e+01, 1.70204086e+01, 2.13673477e+01, + 1.15877548e+02, 2.30204086e+01, 1.93877554e+00, 1.40408163e+01, + 1.15938774e+02, 3.22448997e+01, 3.10204077e+00, 2.93469391e+01, + 8.60204086e+01, 2.17346935e+01, 1.30612242e+00, 2.69387746e+00, + 1.04285713e+02, 7.12653046e+01, 4.75510216e+00, 2.15510197e+01, + 8.93673477e+01, 3.17755108e+01, 4.53061247e+00, 2.63265300e+00, + 2.37346935e+01, 4.70816345e+01, 7.63265324e+00, 7.40816307e+00, + 4.65102043e+01, 4.36530609e+01, 1.33673468e+01, 5.97959185e+00, + 4.87755108e+00, 2.66938782e+01, 1.17755098e+01, 3.95918369e+00, + 9.43877563e+01, 41., 3.59183669e+00, 1.14489794e+01, + 2.76938782e+01, 1.21020412e+01, 3.16326523e+00, 4.71428585e+00, + 1.18489799e+02, 1.03714287e+02, 2.53061223e+00, 4.83673477e+00, + 6.88163300e+01, 6.21020393e+01, 4.10204077e+00, 4.97959185e+00, + 8.06530609e+01, 1.08714287e+02, 4.20408154e+00, 1.97959185e+00, + 5.34897957e+01, 1.04244896e+02, 8.18367386e+00, 3.08163261e+00, + 2.91428566e+01, 1.04714287e+02, 1.74897957e+01, 2.51020408e+00, + 1.49183674e+01, 9.22448959e+01, 1.71224499e+01, 1.61764698e+01, + 1.61764705e+00, 1.72058821e+00, 5.54117661e+01, 9.76911774e+01, + 1.20294113e+01, 1.80882359e+00, 1.22647057e+01, 9.81617661e+01, + 9.61764717e+00, 2.41176462e+00, 3.46617661e+01, 6.21764717e+01, + 5.26470566e+00, 2.45588231e+00, 4.47205887e+01, 1.16029411e+02, + 2.21323528e+01, 3.76470590e+00, 4.67647076e+00, 9.39705849e+00, + 3.60294127e+00, 4.88235283e+00, 4.57941170e+01, 3.37205887e+01, + 1.07647057e+01, 1.91176474e+00, 1.33823526e+00, 1.51470590e+00, + 2.05882359e+00, 3.41176462e+00, 1.49264708e+01, 2.04117641e+01, + 2.20588231e+00, 5.76470566e+00, 9.83382339e+01, 7.62352905e+01, + 4.35294104e+00, 4.39705896e+00, 3.84852943e+01, 1.04794121e+02, + 6.16176462e+00, 3.64705873e+00, 4.07352943e+01, 3.70735283e+01, + 3.29411769e+00, 6.98529434e+00, 1.01691177e+02, 1.22220589e+02, + 1.65294113e+01, 4.20588255e+00, 5.54411745e+00, 6.82352924e+00, + 4.02941179e+00, 8.22058868e+00, 9.59264679e+01, 3.72205887e+01, + 8.27941132e+00, 2.19117641e+00, 1.69117641e+00, 1.70588231e+00, + 2.10294127e+00, 4.76470566e+00, 2.73529415e+01, 2.51911774e+01, + 4.14705896e+00, 1.00882349e+01, 7.37058792e+01, 2.41911774e+01, + 2.92647052e+00, 1.04117651e+01, 7.92500000e+01, 9.67794113e+01, + 5.44117641e+00, 4.20588255e+00, 2.09558830e+01, 1.01617651e+01, + 4.14705896e+00, 1.27205887e+01, 1.27867645e+02, 9.82941208e+01, + 1.04558821e+01, 3.52941179e+00, 3.98529410e+00, 3.64705873e+00, + 4.35294104e+00, 1.31029415e+01, 1.08250000e+02, 2.43382359e+01, + 5.29411745e+00, 2.47058821e+00, 2.19117641e+00, 2.08823538e+00, + 2.27941179e+00, 5.95588255e+00, 2.63676472e+01, 1.81617641e+01, + 3.13235283e+00, 6.38235283e+00, 1.96617641e+01, 3.10294127e+00, + 2.58823538e+00, 2.48823528e+01, 1.01264709e+02, 5.28970604e+01, + 4.25000000e+00, 2.39705873e+00, 4.98529434e+00, 2.61764717e+00, + 3.82352948e+00, 2.41764698e+01, 1.13573532e+02, 4.63970604e+01, + 6.51470566e+00, 3.61764717e+00, 3.77941179e+00, 3.64705873e+00, + 3.92647052e+00, 1.61323528e+01, 7.00441208e+01, 8.72058868e+00, + 3.67647052e+00, 2.83823538e+00, 2.30882359e+00, 2.26470590e+00, + 2.30882359e+00, 5.19117641e+00, 1.14558821e+01, 2., + 2.77631569e+00, 3.23684216e+00, 4.07894754e+00, 4.46052647e+00, + 3.71052623e+00, 2.11842108e+00, 1.65789473e+00, 1.59605265e+01, + 1.61315784e+01, 1.27500000e+01, 2.10657902e+01, 4.88552628e+01, + 3.68289490e+01, 1.38552628e+01, 1.00131578e+01, 7.55263138e+00, + 1.17105265e+01, 1.10131578e+01, 2.92631588e+01, 1.37539474e+02, + 1.19368423e+02, 1.41578951e+01, 4.98684216e+00, 9.57894707e+00, + 2.23157902e+01, 1.43552628e+01, 1.44342108e+01, 9.64605255e+01, + 1.38802628e+02, 50., 6.05263138e+00, 2.40789485e+00, + 3.26315784e+00, 3.07894731e+00, 3.14473677e+00, 4.40789461e+00, + 5.40789461e+00, 4.15789461e+00, 3.05263162e+00, 2.12500000e+01, + 1.96842098e+01, 1.56315794e+01, 2.29473686e+01, 4.77631569e+01, + 3.93815804e+01, 2.18815784e+01, 1.91315784e+01, 1.12236843e+01, + 1.36842108e+01, 1.23947372e+01, 3.05394745e+01, 1.34855270e+02, + 1.12894737e+02, 2.32236843e+01, 9.98684216e+00, 6.81578970e+00, + 2.16315784e+01, 2.19210529e+01, 2.04605255e+01, 1.12210526e+02, + 1.38592102e+02, 4.37105255e+01, 7.05263138e+00, 2.75000000e+00, + 3.38157892e+00, 3.05263162e+00, 2.31578946e+00, 3.73684216e+00, + 4.85526323e+00, 4.32894754e+00, 3.39473677e+00, 2.42894745e+01, + 2.24736843e+01, 1.62368412e+01, 2.05000000e+01, 3.56447372e+01, + 3.36184196e+01, 2.35921059e+01, 2.12236843e+01, 1.92236843e+01, + 1.57500000e+01, 1.28157892e+01, 2.41052628e+01, 1.00960526e+02, + 1.02342102e+02, 3.41447372e+01, 1.73815784e+01, 6.69736862e+00, + 7.27631569e+00, 7.39473677e+00, 1.19736843e+01, 1.00421051e+02, + 1.32407898e+02, 4.52894745e+01, 8.48684216e+00, 2.36842108e+00, + 1.93421054e+00, 1.98684216e+00, 1.50000000e+00, 3.02631569e+00, + 4.23684216e+00, 3.47368431e+00, 2.55263162e+00, 2.01973686e+01, + 1.80657902e+01, 1.27368422e+01, 1.19605265e+01, 2.03552628e+01, + 22., 1.67763157e+01, 1.70657902e+01, 2.28815784e+01, + 1.63421059e+01, 1.17236843e+01, 1.66052628e+01, 4.07368431e+01, + 4.50657883e+01, 2.57236843e+01, 1.92105255e+01, 9.68421078e+00, + 4.75000000e+00, 3.67105269e+00, 6.59210539e+00, 3.96052628e+01, + 9.27236862e+01, 4.47894745e+01, 1.06973686e+01, 2.13728809e+01, + 3.65932198e+01, 1.85593224e+01, 5.72881365e+00, 2.13559318e+00, + 1.84745765e+00, 7.44067812e+00, 1.34576273e+01, 1.22203388e+01, + 3.60508461e+01, 3.79661026e+01, 1.31694918e+01, 6.05084753e+00, + 3.52542377e+00, 1.19322033e+01, 1.46779661e+01, 4.61016941e+00, + 1.44576273e+01, 3.43220329e+01, 3.27288132e+01, 1.93898296e+01, + 6.79661036e+00, 8.13559341e+00, 7.06779671e+00, 2.25423717e+00, + 3.50847459e+00, 1.45423727e+01, 3.05254230e+01, 3.14406776e+01, + 1.24745760e+01, 4.77966118e+00, 7.23728800e+00, 1.58305082e+01, + 4.59322052e+01, 2.10677967e+01, 5.62711859e+00, 4.45762730e+00, + 3.46101685e+01, 5.10338974e+01, 7.18644047e+00, 7.05084753e+00, + 4.62542381e+01, 4.19491539e+01, 1.38474579e+01, 6.55932188e+00, + 8.20339012e+00, 4.53050842e+01, 9.20339012e+00, 3., + 1.94745770e+01, 4.63389816e+01, 3.09491520e+01, 1.26101694e+01, + 5.13559341e+00, 5.15762711e+01, 3.04576263e+01, 3.42372870e+00, + 3.86440682e+00, 3.16779652e+01, 5.41525421e+01, 1.82881355e+01, + 6., 5.84237289e+01, 8.63389816e+01, 3.30508471e+00, + 9.08813553e+01, 124., 6.33898306e+00, 2.42372870e+00, + 5.30847473e+01, 9.83389816e+01, 5.74576283e+00, 3.33898306e+00, + 3.93728828e+01, 1.30220337e+02, 1.74915257e+01, 2.20338988e+00, + 2.55593224e+01, 1.18745766e+02, 2.18305092e+01, 3.33898306e+00, + 1.13389826e+01, 1.30406784e+02, 7.55254211e+01, 2.54237294e+00, + 6.93220329e+00, 1.13423729e+02, 6.28305092e+01, 4.18644047e+00, + 3.71186447e+00, 121., 1.22525421e+02, 3.22033906e+00, + 2.55932212e+00, 5.81016960e+01, 6.52203369e+01, 1.28813565e+00, + 2.53559322e+01, 6.24576263e+01, 3.16949153e+00, 2.50847459e+00, + 1.22881355e+01, 2.16101704e+01, 6.22033882e+00, 2.32203388e+00, + 1.69830513e+01, 1.10491524e+02, 9.32203388e+00, 1.64406776e+00, + 7.69491529e+00, 2.77288132e+01, 1.26101694e+01, 3.94915247e+00, + 3.77966094e+00, 9.14576263e+01, 2.77118645e+01, 1.18644071e+00, + 4.50847435e+00, 2.23050842e+01, 1.89830513e+01, 5.79661036e+00, + 1.66101694e+00, 2.77966099e+01, 1.91016941e+01, 1.23728812e+00, + 3.61016941e+00, 1.32203388e+01, 1.76440678e+01, 7.78600006e+01, + 2.68799992e+01, 1.21199999e+01, 8.19999981e+00, 6.58199997e+01, + 3.69000015e+01, 1.93999996e+01, 1.68799992e+01, 7.05000000e+01, + 2.24200001e+01, 7.63999987e+00, 9.56000042e+00, 2.51000004e+01, + 3.28600006e+01, 4.17400017e+01, 2.24400005e+01, 7.59999990e+00, + 5.65999985e+00, 8.38000011e+00, 1.01400003e+01, 1.67199993e+01, + 2.42999992e+01, 3.27999992e+01, 1.33199997e+01, 2.48000002e+00, + 1.05999994e+00, 1.24000001e+00, 1.34000003e+00, 2.22000003e+00, + 4.80000019e+00, 7., 4.23999977e+00, 1.15279999e+02, + 3.46800003e+01, 6.57999992e+00, 7.59999990e+00, 1.08379997e+02, + 5.93800011e+01, 2.02199993e+01, 2.36000004e+01, 1.17680000e+02, + 4.34799995e+01, 1.05000000e+01, 1.66800003e+01, 6.08199997e+01, + 4.84199982e+01, 4.55800018e+01, 3.24000015e+01, 1.13999996e+01, + 1.01000004e+01, 1.26400003e+01, 2.00400009e+01, 2.87000008e+01, + 3.89599991e+01, 4.62599983e+01, 1.90799999e+01, 2.42000008e+00, + 2.01999998e+00, 2.68000007e+00, 3.25999999e+00, 3.18000007e+00, + 5.69999981e+00, 9.89999962e+00, 5.28000021e+00, 1.20660004e+02, + 3.00200005e+01, 2.72000003e+00, 9.23999977e+00, 1.21279999e+02, + 6.11800003e+01, 1.17799997e+01, 2.02000008e+01, 1.29360001e+02, + 5.65600014e+01, 1.04799995e+01, 1.75599995e+01, 8.51600037e+01, + 5.07999992e+01, 3.06800003e+01, 2.93199997e+01, 1.37600002e+01, + 1.20600004e+01, 1.46800003e+01, 2.35599995e+01, 3.10200005e+01, + 3.82400017e+01, 4.01599998e+01, 1.40600004e+01, 1.89999998e+00, + 2.42000008e+00, 3.29999995e+00, 4.69999981e+00, 3.42000008e+00, + 5.34000015e+00, 8.03999996e+00, 4.26000023e+00, 1.00580002e+02, + 1.93199997e+01, 3.27999997e+00, 7.13999987e+00, 1.06500000e+02, + 5.37599983e+01, 1.45000000e+01, 1.87600002e+01, 1.25779999e+02, + 5.83600006e+01, 7.71999979e+00, 1.33400002e+01, 8.82799988e+01, + 5.51800003e+01, 2.41599998e+01, 2.23199997e+01, 2.05000000e+01, + 1.45400000e+01, 1.19600000e+01, 1.76599998e+01, 2.54400005e+01, + 3.26199989e+01, 2.99799995e+01, 1.05200005e+01, 2.05999994e+00, + 1.79999995e+00, 2.74000001e+00, 3.24000001e+00, 3.40000010e+00, + 4.67999983e+00, 5.32000017e+00, 3.33999991e+00, 1.95833337e+00, + 7.72916641e+01, 1.27458336e+02, 6.41666651e+00, 2.25000000e+00, + 7.04166651e+00, 9.85416698e+00, 2.45833325e+00, 1.46041670e+01, + 1.41291672e+02, 8.63958359e+01, 4.29166651e+00, 3.60416675e+00, + 1.01250000e+01, 8.12500000e+00, 4.45833349e+00, 3.22500000e+01, + 8.96250000e+01, 1.88958340e+01, 4.66666651e+00, 4.47916651e+00, + 8.75000000e+00, 8.91666698e+00, 8.47916698e+00, 1.38333330e+01, + 1.87708340e+01, 8.02083302e+00, 3.20833325e+00, 3.33333325e+00, + 4.93750000e+00, 7.27083349e+00, 6.08333349e+00, 5.89583349e+00, + 3.42708321e+01, 4.83958321e+01, 1.25625000e+01, 1.13750000e+01, + 3.19166660e+01, 3.20208321e+01, 8.10416698e+00, 4.40625000e+01, + 1.38395828e+02, 3.28333321e+01, 3.64583325e+00, 7.41666651e+00, + 1.52083330e+01, 5.79166651e+00, 2.81250000e+00, 1.29666672e+02, + 1.46083328e+02, 1.04166670e+01, 3.02083325e+00, 6.31250000e+00, + 8.16666698e+00, 4.58333349e+00, 6.52083349e+00, 3.12708340e+01, + 3.38750000e+01, 8.54166698e+00, 3.14583325e+00, 4.18750000e+00, + 4.81250000e+00, 5.02083349e+00, 8.87500000e+00, 1.81250000e+01, + 1.73750000e+01, 2.63541660e+01, 1.89166660e+01, 2.57083340e+01, + 3.78125000e+01, 2.79375000e+01, 1.55416670e+01, 5.59166679e+01, + 3.79375000e+01, 8.50000000e+00, 7.97916651e+00, 2.57708340e+01, + 2.65000000e+01, 9.77083302e+00, 9.97916698e+00, 1.46791672e+02, + 1.02770836e+02, 3.41666675e+00, 2.93750000e+00, 7.93750000e+00, + 5.62500000e+00, 2.58333325e+00, 1.83125000e+01, 7.41250000e+01, + 3.24166679e+01, 7.58333349e+00, 3.64583325e+00, 5.58333349e+00, + 5.04166651e+00, 5.52083349e+00, 12., 1.64791660e+01, + 1.00833330e+01, 1.59791670e+01, 2.67500000e+01, 2.65208340e+01, + 1.81250000e+01, 2.22916660e+01, 2.12291660e+01, 4.46041679e+01, + 7.29166651e+00, 5.20833349e+00, 1.68750000e+01, 2.52916660e+01, + 1.19375000e+01, 7.54166651e+00, 3.96458321e+01, 1.45854172e+02, + 1.18958330e+01, 2.79166675e+00, 4.89583349e+00, 6.81250000e+00, + 2.81250000e+00, 2.85416675e+00, 9.63541641e+01, 6.05625000e+01, + 1.61041660e+01, 6.27083349e+00, 3.79166675e+00, 5.83333349e+00, + 4.54166651e+00, 5.35416651e+00, 1.84375000e+01, 1.82857144e+00, + 1., 2.15714288e+00, 3.38571429e+00, 2.62857151e+00, + 3.21428561e+00, 4.61428595e+00, 2.15714288e+00, 8.47142887e+00, + 3.82857132e+00, 9.41428566e+00, 3.36142845e+01, 2.65857143e+01, + 1.05571432e+01, 1.31714287e+01, 1.14428568e+01, 5.02857161e+00, + 3.45714283e+00, 1.71571426e+01, 9.83000031e+01, 5.19857140e+01, + 6.91428566e+00, 4.59999990e+00, 5.95714283e+00, 4.84285736e+00, + 3.04285717e+00, 2.69714279e+01, 1.00014282e+02, 3.15142860e+01, + 5.04285717e+00, 3.97142863e+00, 1.12857141e+01, 1.65714288e+00, + 1.18571424e+00, 2.51428580e+00, 6.69999981e+00, 6.14285707e+00, + 3.15714288e+00, 3.57142854e+00, 3.11428571e+00, 4.24285698e+00, + 3.12857151e+00, 1.10571432e+01, 8.36714249e+01, 7.61285706e+01, + 1.17428570e+01, 7.42857122e+00, 6.28571415e+00, 8.04285717e+00, + 2.90000010e+00, 1.72000008e+01, 1.26828575e+02, 1.01542854e+02, + 1.01142855e+01, 3.29999995e+00, 1.14857140e+01, 2.64285717e+01, + 5.18571424e+00, 2.07999992e+01, 8.74428558e+01, 4.44571419e+01, + 8.94285679e+00, 8.07142830e+00, 5.87285728e+01, 1.31428576e+00, + 9.85714257e-01, 2.17142868e+00, 1.14857140e+01, 1.12285719e+01, + 3.38571429e+00, 2.59999990e+00, 2., 2.02857137e+00, + 1.27142859e+00, 5.74285698e+00, 9.73428574e+01, 1.13500000e+02, + 1.58285713e+01, 4.07142878e+00, 2.77142859e+00, 2.06571426e+01, + 3.68571424e+00, 9.78571415e+00, 1.04757141e+02, 1.15057144e+02, + 1.49714289e+01, 5.12857151e+00, 2.57428570e+01, 7.28571396e+01, + 6.15714264e+00, 1.26000004e+01, 6.45000000e+01, 4.70857124e+01, + 8.19999981e+00, 8.91428566e+00, 1.12714287e+02, 7.71428585e-01, + 8.14285696e-01, 1.34285712e+00, 8.87142849e+00, 1.47428570e+01, + 3.41428566e+00, 1.52857149e+00, 1.35714281e+00, 2.95714283e+00, + 1.29999995e+00, 2.90000010e+00, 5.86571426e+01, 1.14157143e+02, + 1.97142849e+01, 3.35714293e+00, 3.24285722e+00, 3.95857124e+01, + 4.02857161e+00, 6.09999990e+00, 6.29000015e+01, 1.01542854e+02, + 1.96142864e+01, 4.68571424e+00, 3.35714302e+01, 1.09642860e+02, + 1.10142860e+01, 8.31428528e+00, 4.69000015e+01, 4.56714287e+01, + 5.82857132e+00, 6., 9.27285690e+01, 6.51515150e+00, + 6.96969700e+00, 2.10606060e+01, 9.93939400e+00, 2.78787875e+00, + 6.18181801e+00, 5.58484840e+01, 2.86969700e+01, 5.87878799e+00, + 1.31818180e+01, 1.64545460e+01, 5.12121201e+00, 3.06060600e+00, + 2.60303040e+01, 7.13939362e+01, 1.67272720e+01, 6.63636351e+00, + 1.77575760e+01, 9.75757599e+00, 2.21212125e+00, 3.27272725e+00, + 1.76060600e+01, 2.12121220e+01, 7.39393950e+00, 2.60606050e+00, + 6.36363649e+00, 3.21212125e+00, 2.15151525e+00, 3.09090900e+00, + 3.84848475e+00, 4.54545450e+00, 2.87878799e+00, 1.42121210e+01, + 7.03030300e+00, 2.00303040e+01, 1.36363640e+01, 3.72727275e+00, + 1.64848480e+01, 1.30696976e+02, 1.12121216e+02, 1.36666670e+01, + 1.86666660e+01, 1.89393940e+01, 5.03030300e+00, 1.02727270e+01, + 1.17393936e+02, 1.41424240e+02, 4.08787880e+01, 1.48787880e+01, + 2.42727280e+01, 1.11818180e+01, 5.30303049e+00, 5.79696960e+01, + 1.41151520e+02, 6.87575760e+01, 1.25151520e+01, 7.96969700e+00, + 1.00303030e+01, 4.15151501e+00, 5.03030300e+00, 2.13636360e+01, + 1.74848480e+01, 5.30303049e+00, 4.18181801e+00, 2.09393940e+01, + 14., 1.59090910e+01, 1.45757580e+01, 8.66666698e+00, + 7.09090900e+00, 2.49696960e+01, 4.26969681e+01, 2.82121220e+01, + 2.89696960e+01, 2.22727280e+01, 1.67878780e+01, 2.47272720e+01, + 4.00606079e+01, 2.49090900e+01, 1.81212120e+01, 3.41515160e+01, + 2.19090900e+01, 1.48484850e+01, 4.05454559e+01, 1.41939392e+02, + 1.21363640e+02, 1.51515150e+01, 1.59393940e+01, 6.66666651e+00, + 7.54545450e+00, 3.84848475e+00, 13., 7.07878799e+01, + 2.64848480e+01, 2.78787875e+00, 3.66666675e+00, 1.39393940e+01, + 1.71515160e+01, 2.68787880e+01, 1.21515150e+01, 6.45454550e+00, + 1.09393940e+01, 2.08181820e+01, 1.66666660e+01, 2.00909100e+01, + 1.29090910e+01, 3.67272720e+01, 6.01818199e+01, 2.59393940e+01, + 7.12121201e+00, 22., 4.17878799e+01, 3.41515160e+01, + 1.05757580e+01, 1.89090900e+01, 1.13818184e+02, 1.29454544e+02, + 2.14848480e+01, 8.66666698e+00, 3.78787880e+01, 7.93939400e+00, + 5.48484850e+00, 2.03030300e+00, 2.33636360e+01, 5.58787880e+01, + 1.34242420e+01, 5.21212101e+00, 4.06060600e+00, 2.29772720e+01, + 1.42045450e+01, 3.81363640e+01, 2.25909100e+01, 1.01136360e+01, + 2.42954540e+01, 9.33181839e+01, 5.80454559e+01, 3.50681801e+01, + 1.05000000e+01, 16., 2.44318180e+01, 1.79090900e+01, + 1.87500000e+01, 7.31590881e+01, 9.80909119e+01, 1.14318180e+01, + 6.29545450e+00, 1.01590910e+01, 1.43181820e+01, 1.54318180e+01, + 3.64090919e+01, 6.37727280e+01, 4.00454559e+01, 5.47727251e+00, + 6.06818199e+00, 1.04545450e+01, 9.75000000e+00, 1.37045450e+01, + 3.01136360e+01, 4.58863640e+01, 1.28409090e+01, 1.67727280e+01, + 5.99090919e+01, 1.07227272e+02, 3.01818180e+01, 1.36363640e+01, + 2.85454540e+01, 8.73181839e+01, 4.32272720e+01, 30., + 8.82272720e+01, 8.39318161e+01, 2.52272720e+01, 2.67954540e+01, + 4.19545441e+01, 4.81136360e+01, 3.85681801e+01, 1.27045450e+01, + 2.68409100e+01, 5.75909081e+01, 3.72500000e+01, 2.63636360e+01, + 3.70681801e+01, 3.23863640e+01, 1.87045460e+01, 4.93181801e+00, + 8.02272701e+00, 4.41818199e+01, 3.91818199e+01, 1.75454540e+01, + 1.95227280e+01, 2.88636360e+01, 1.29545450e+01, 7.54545450e+00, + 3.48181801e+01, 7.67045441e+01, 3.22500000e+01, 4.75000000e+00, + 29., 4.94545441e+01, 1.59545450e+01, 1.58636360e+01, + 1.07409088e+02, 1.08545456e+02, 1.78863640e+01, 5.72727251e+00, + 3.94318199e+01, 5.55000000e+01, 1.15681820e+01, 4.40909100e+00, + 6.67272720e+01, 1.28522720e+02, 2.53409100e+01, 6.20454550e+00, + 2.97954540e+01, 5.97727280e+01, 1.30227270e+01, 3.11363626e+00, + 1.51363640e+01, 1.13204544e+02, 3.64545441e+01, 4., + 1.30227270e+01, 4.86590919e+01, 2.19772720e+01, 3.95454550e+00, + 2.72727275e+00, 2.79545450e+00, 2.15909100e+00, 2.29545450e+00, + 8.84090900e+00, 1.94318180e+01, 9.09090900e+00, 3.56818175e+00, + 6.09090900e+00, 8.40909100e+00, 2.45454550e+00, 3.72727275e+00, + 1.64545460e+01, 3.34090919e+01, 7.95454550e+00, 3.20454550e+00, + 1.09772730e+01, 2.92954540e+01, 2.70454550e+00, 2.75000000e+00, + 1.22045450e+01, 4.12045441e+01, 1.08636360e+01, 3.45454550e+00, + 8.36363602e+00, 3.01590900e+01, 3.40909100e+00, 1.97727275e+00, + 4.77272749e+00, 2.42500000e+01, 1.29090910e+01, 3.41860466e+01, + 3.87209320e+01, 8.30232525e+00, 5.93023252e+00, 8.81395340e+00, + 1.20697670e+01, 1.00232553e+01, 1.00232553e+01, 1.72558136e+01, + 17., 8.69767475e+00, 5.32558155e+00, 8.44186020e+00, + 2.63953495e+01, 2.60930233e+01, 1.53953485e+01, 2.15581398e+01, + 2.30232563e+01, 5.51162767e+00, 4.90697670e+00, 3.30232544e+01, + 7.42558136e+01, 2.82558136e+01, 11., 1.66279068e+01, + 2.28139534e+01, 4.65116262e+00, 4.02325583e+00, 5.16279068e+01, + 7.28372116e+01, 9.65116310e+00, 3.83720922e+00, 3.73255806e+01, + 1.08604652e+02, 1.42093019e+01, 2.83720922e+00, 1.37209301e+01, + 3.21627922e+01, 7.69767427e+00, 4.20930243e+00, 3.78837204e+01, + 6.83953476e+01, 3.33255806e+01, 1.04418602e+01, 7.44186068e+00, + 1.70930233e+01, 2.57674427e+01, 2.00930233e+01, 2.95116272e+01, + 2.57906971e+01, 2.55581398e+01, 2.11860466e+01, 4.28372078e+01, + 4.53720932e+01, 3.16976738e+01, 2.89767437e+01, 2.95116272e+01, + 2.17209301e+01, 6.30232573e+00, 2.83255806e+01, 9.91860428e+01, + 7.82790680e+01, 16., 1.28604650e+01, 14., 7.71395340e+01, + 1.92558136e+01, 2.06976748e+00, 1.32093019e+01, 5.67906990e+01, + 1.20232553e+01, 2.60465121e+00, 2.04883728e+01, 1.12069771e+02, + 9.08372116e+01, 1.42790699e+01, 9.72093010e+00, 4.14186058e+01, + 3.03953495e+01, 5.51162767e+00, 3.77441864e+01, 1.05372093e+02, + 9.73023224e+01, 2.95348835e+01, 1.98604660e+01, 3.87906990e+01, + 3.26511612e+01, 2.69534893e+01, 29., 6.79534912e+01, + 2.88139534e+01, 1.78604660e+01, 6.24186058e+01, 1.07093025e+02, + 2.09302330e+01, 1.89534893e+01, 6.09302330e+00, 1.03488369e+01, + 7.97674417e+00, 4.09302330e+00, 5.95348835e+00, 1.94651165e+01, + 6.83720922e+00, 3.20930243e+00, 5.23255825e+00, 3.06511631e+01, + 3.07906971e+01, 8.13953495e+00, 1.04418602e+01, 4.88139534e+01, + 2.32790699e+01, 2.51162791e+00, 3.04883728e+01, 9.33953476e+01, + 4.83023262e+01, 1.17209301e+01, 1.52558136e+01, 5.96046524e+01, + 2.56046505e+01, 4.51162767e+00, 3.15116272e+01, 1.17744186e+02, + 2.67441864e+01, 3.93023252e+00, 2.85348835e+01, 7.29069748e+01, + 1.02093019e+01, 2.83720922e+00, 4.40789461e+00, 2.11842108e+00, + 2.22368431e+00, 4.75000000e+00, 7.19736862e+00, 5.60526323e+00, + 7.55263138e+00, 7.39473677e+00, 6.61842108e+00, 3.47368431e+00, + 3.61842108e+00, 4.78947353e+00, 7.23684216e+00, 5.57894754e+00, + 7.63157892e+00, 9.50000000e+00, 3.01315784e+00, 2.11842108e+00, + 3.09210515e+00, 4.52631569e+00, 5.26315784e+00, 4.48684216e+00, + 5.50000000e+00, 7.50000000e+00, 3.28947365e-01, 3.42105269e-01, + 4.73684222e-01, 5.39473712e-01, 5.39473712e-01, 9.73684192e-01, + 1.05263162e+00, 5.92105269e-01, 3.26315804e+01, 2.30657902e+01, + 3.65921059e+01, 4.93552628e+01, 4.68552628e+01, 4.79342117e+01, + 7.05657883e+01, 5.83289490e+01, 3.95789490e+01, 3.23157883e+01, + 4.53026314e+01, 5.97105255e+01, 5.86973686e+01, 5.21578941e+01, + 7.66447372e+01, 7.26447372e+01, 32., 2.59078941e+01, + 3.60263176e+01, 4.46447372e+01, 4.02894745e+01, 3.56710510e+01, + 5.69736824e+01, 6.43157883e+01, 3.53947377e+00, 3.27631569e+00, + 4.11842108e+00, 4.88157892e+00, 4.02631569e+00, 4.60526323e+00, + 8.13157940e+00, 6.82894754e+00, 4.43157883e+01, 3.22368431e+01, + 4.41315804e+01, 6.06710510e+01, 5.94605255e+01, 5.89342117e+01, + 8.06842117e+01, 7.75394745e+01, 4.97368431e+01, 3.81842117e+01, + 5.39473686e+01, 6.96710510e+01, 7.21710510e+01, 74., + 9.75394745e+01, 8.44078979e+01, 4.33289490e+01, 3.50394745e+01, + 4.48157883e+01, 4.80263176e+01, 4.72105255e+01, 5.35789490e+01, + 7.72236862e+01, 7.46315765e+01, 5.25000000e+00, 4.72368431e+00, + 6.19736862e+00, 5.28947353e+00, 3.80263162e+00, 5.51315784e+00, + 8.90789509e+00, 8.28947353e+00, 4.11710510e+01, 3.22763176e+01, + 3.23684196e+01, 4.35921059e+01, 5.14736824e+01, 5.06052628e+01, + 6.39605255e+01, 5.92105255e+01, 3.57500000e+01, 2.60394745e+01, + 4.08026314e+01, 5.83552628e+01, 5.68026314e+01, 5.82631569e+01, + 8.01315765e+01, 7.43684235e+01, 2.95000000e+01, 2.15000000e+01, + 3.33289490e+01, 4.11447372e+01, 3.97894745e+01, 4.27500000e+01, + 6.59473648e+01, 6.04736824e+01, 3.56578946e+00, 2.47368431e+00, + 4.07894754e+00, 3.92105269e+00, 3.77631569e+00, 4.65789461e+00, + 6.86842108e+00, 6.09210539e+00, 8.72727299e+00, 5.12954559e+01, + 7.99318161e+01, 1.75227280e+01, 4.95454550e+00, 7.13636351e+00, + 1.12272730e+01, 6.20454550e+00, 1.93863640e+01, 9.57045441e+01, + 7.84090881e+01, 1.44318180e+01, 3.50000000e+00, 6.02272749e+00, + 6.72727251e+00, 7.84090900e+00, 3.25909081e+01, 8.48636398e+01, + 4.79772720e+01, 9.75000000e+00, 3.59090900e+00, 3.13636374e+00, + 4.79545450e+00, 6.65909100e+00, 1.98181820e+01, 2.72045460e+01, + 1.75681820e+01, 7.15909100e+00, 5.79545450e+00, 4.15909100e+00, + 6.27272749e+00, 9.09090900e+00, 5.59090900e+00, 5.59545441e+01, + 8.97954559e+01, 1.07045450e+01, 6.40909100e+00, 2.27500000e+01, + 2.50909100e+01, 6.34090900e+00, 1.50227270e+01, 1.12250000e+02, + 9.17727280e+01, 1.15909090e+01, 5.75000000e+00, 2.03636360e+01, + 1.77727280e+01, 1.00454550e+01, 4.72272720e+01, 1.21886360e+02, + 5.72727280e+01, 1.01590910e+01, 3.90909100e+00, 1.10454550e+01, + 7.75000000e+00, 1.19318180e+01, 5.15454559e+01, 8.39545441e+01, + 2.87727280e+01, 6.04545450e+00, 3.20454550e+00, 3.18181825e+00, + 4.04545450e+00, 9.81818199e+00, 1.65909088e+00, 2.31363640e+01, + 3.38409081e+01, 6.61363649e+00, 1.17500000e+01, 9.22727280e+01, + 3.69772720e+01, 1.88636363e+00, 5.72727251e+00, 7.40454559e+01, + 4.94772720e+01, 1.00227270e+01, 1.39090910e+01, 4.58409081e+01, + 1.16136360e+01, 3.88636374e+00, 3.63409081e+01, 1.20681816e+02, + 4.15681801e+01, 7.77272749e+00, 7.54545450e+00, 1.74772720e+01, + 7.15909100e+00, 7.52272749e+00, 7.14545441e+01, 1.06590912e+02, + 1.98409100e+01, 5.06818199e+00, 3.47727275e+00, 5.13636351e+00, + 4.38636351e+00, 1.15909090e+01, 2., 1.28181820e+01, + 7.47727251e+00, 3.77272725e+00, 3.50681801e+01, 1.18750000e+02, + 35., 7.27272749e-01, 3.09090900e+00, 2.42727280e+01, + 9.86363602e+00, 5.72727251e+00, 4.70227280e+01, 1.02818184e+02, + 9., 5.22727251e-01, 2.99772720e+01, 7.12045441e+01, + 1.17045450e+01, 7.63636351e+00, 1.81363640e+01, 2.24545460e+01, + 2.25000000e+00, 2.43181825e+00, 7.83636398e+01, 9.22727280e+01, + 8.79545498e+00, 3.86363626e+00, 4.15909100e+00, 4.65909100e+00, + 3.15909100e+00, 8.52272701e+00, 1.04571426e+02, 3.56714287e+01, + 8.15714264e+00, 5.68571424e+00, 3.08857136e+01, 1.18285713e+01, + 7.72857141e+00, 1.40714283e+01, 7.13142853e+01, 1.10285711e+01, + 6.65714264e+00, 3.09142857e+01, 1.05814285e+02, 1.53428574e+01, + 1.13428574e+01, 1.83714294e+01, 2.59428577e+01, 5.62857151e+00, + 7.11428595e+00, 4.16857147e+01, 7.83857117e+01, 6.38571405e+00, + 3.51428580e+00, 1.33714285e+01, 6.54285717e+00, 2.02857137e+00, + 2.05714297e+00, 4.18571424e+00, 3.68571424e+00, 1.14285719e+00, + 1.22857141e+00, 4.11428595e+00, 1.38614288e+02, 3.46571426e+01, + 5.61428595e+00, 6.90000010e+00, 4.77999992e+01, 1.11428576e+01, + 5.59999990e+00, 1.92000008e+01, 1.01885712e+02, 1.40571432e+01, + 3.87142849e+00, 3.32714272e+01, 1.41271423e+02, 1.73571434e+01, + 7.28571415e+00, 1.71857147e+01, 3.52857132e+01, 8.67142868e+00, + 7.98571444e+00, 2.54857140e+01, 8.58714294e+01, 9.55714321e+00, + 3.70000005e+00, 1.43571424e+01, 5.87142849e+00, 2.95714283e+00, + 3.14285707e+00, 2.62857151e+00, 1.88571429e+00, 1.88571429e+00, + 1.67142856e+00, 4.25714302e+00, 1.41257141e+02, 2.02857151e+01, + 1.45714283e+00, 7.21428585e+00, 5.36285706e+01, 8.72857189e+00, + 1.55714285e+00, 1.55000000e+01, 1.08928574e+02, 1.54571428e+01, + 1.89999998e+00, 2.58999996e+01, 1.42614288e+02, 1.20142860e+01, + 1.08571434e+00, 8.69999981e+00, 3.77142868e+01, 1.09857140e+01, + 6.14285707e+00, 1.24142857e+01, 8.54285736e+01, 9.84285736e+00, + 2.81428576e+00, 9.64285755e+00, 5.01428556e+00, 3.54285717e+00, + 3.57142854e+00, 2.28571439e+00, 1.62857139e+00, 1.62857139e+00, + 1.31428576e+00, 2.21428561e+00, 1.24500000e+02, 1.80857143e+01, + 3.59999990e+00, 6.54285717e+00, 3.82857132e+01, 6.88571405e+00, + 1.34285712e+00, 1.24857140e+01, 8.62857132e+01, 1.82857151e+01, + 8.10000038e+00, 2.58571434e+01, 1.32471436e+02, 1.05142860e+01, + 1.01428568e+00, 5.51428556e+00, 2.62142849e+01, 8.45714283e+00, + 5.12857151e+00, 9.62857151e+00, 6.71428604e+01, 9.45714283e+00, + 2.82857132e+00, 5.61428595e+00, 3.70000005e+00, 2.72857141e+00, + 2.52857137e+00, 1.64285719e+00, 9.42857146e-01, 1.22857141e+00, + 1.41428566e+00, 1.22857141e+00, 4.14062500e+00, 3.26562500e+00, + 2.51562500e+00, 3.20312500e+00, 5.10937500e+00, 4.20312500e+00, + 5.09375000e+00, 6.87500000e+00, 8., 6.29687500e+00, + 5.07812500e+00, 5.76562500e+00, 9.03125000e+00, 8.51562500e+00, + 9.07812500e+00, 1.00156250e+01, 7.06250000e+00, 5.76562500e+00, + 5.03125000e+00, 6.85937500e+00, 1.02968750e+01, 1.05000000e+01, + 9.90625000e+00, 8.01562500e+00, 4.90625000e+00, 3.98437500e+00, + 4.54687500e+00, 7.45312500e+00, 1.02343750e+01, 7.28125000e+00, + 6.92187500e+00, 5.14062500e+00, 1.15937500e+01, 1.04687500e+01, + 1.02968750e+01, 1.44843750e+01, 1.47968750e+01, 1.57656250e+01, + 1.71562500e+01, 1.51562500e+01, 1.83125000e+01, 1.89531250e+01, + 1.85156250e+01, 2.22187500e+01, 2.57812500e+01, 2.67031250e+01, + 2.57812500e+01, 2.23593750e+01, 1.57031250e+01, 1.87343750e+01, + 2.17656250e+01, 2.73125000e+01, 3.25312500e+01, 2.97187500e+01, + 2.25312500e+01, 1.70312500e+01, 8.65625000e+00, 9.89062500e+00, + 2.86562500e+01, 5.24531250e+01, 4.10312500e+01, 2.22968750e+01, + 1.17812500e+01, 1.12031250e+01, 1.19531250e+01, 1.31562500e+01, + 1.29218750e+01, 1.69843750e+01, 1.93125000e+01, 1.88281250e+01, + 1.92812500e+01, 1.35937500e+01, 1.80625000e+01, 2.06875000e+01, + 2.77656250e+01, 3.97968750e+01, 3.19062500e+01, 2.81875000e+01, + 2.78437500e+01, 2.22500000e+01, 1.19531250e+01, 1.61093750e+01, + 5.56875000e+01, 1.04515625e+02, 4.53906250e+01, 2.52187500e+01, + 1.83125000e+01, 1.51562500e+01, 1.16562500e+01, 8.95312500e+00, + 7.79218750e+01, 1.51890625e+02, 4.89062500e+01, 1.44687500e+01, + 1.44843750e+01, 2.79218750e+01, 8.85937500e+00, 1.10312500e+01, + 2.33437500e+01, 3.64687500e+01, 1.71250000e+01, 1.35937500e+01, + 1.38593750e+01, 1.10625000e+01, 9.71875000e+00, 1.20156250e+01, + 6.97656250e+01, 1.23468750e+02, 3.61406250e+01, 1.53750000e+01, + 1.75625000e+01, 1.86250000e+01, 7.06250000e+00, 7.18750000e+00, + 9.97500000e+01, 1.55687500e+02, 3.86250000e+01, 1.14843750e+01, + 4.71562500e+01, 7.82656250e+01, 2.01093750e+01, 4.39062500e+00, + 7.71875000e+01, 1.51781250e+02, 3.03593750e+01, 1.43593750e+01, + 1.07375000e+02, 1.57375000e+02, 4.64197540e+00, 4.56790113e+00, + 5.66666651e+00, 7.80246925e+00, 6.20987654e+00, 4.76543188e+00, + 3.75308633e+00, 3.43209887e+00, 5.46913576e+00, 6.27160501e+00, + 9.64197540e+00, 1.20617285e+01, 7.48148155e+00, 5.45678997e+00, + 4.07407427e+00, 3.56790113e+00, 4.39506149e+00, 6.18518496e+00, + 1.73580246e+01, 2.16049385e+01, 6.77777767e+00, 3.79012346e+00, + 2.77777767e+00, 2.69135809e+00, 2.54320979e+00, 5.81481504e+00, + 2.66049385e+01, 2.20987663e+01, 4.13580227e+00, 2.16049385e+00, + 1.41975307e+00, 1.44444442e+00, 6.96296310e+00, 9.27160454e+00, + 1.72716045e+01, 2.65061722e+01, 1.65679016e+01, 1.21851854e+01, + 9.60493851e+00, 6.67901230e+00, 6.59259272e+00, 1.16419754e+01, + 4.91481476e+01, 7.62222214e+01, 2.10740738e+01, 8.55555534e+00, + 6.69135809e+00, 5.70370388e+00, 3.58024693e+00, 1.10864201e+01, + 1.06679016e+02, 1.06456787e+02, 1.48395061e+01, 4.76543188e+00, + 4., 3.60493827e+00, 2.41975307e+00, 1.46543207e+01, + 1.21580246e+02, 7.80987625e+01, 6.40740728e+00, 2.90123463e+00, + 5.88888884e+00, 3.97530866e+00, 4.34567881e+00, 6.01234579e+00, + 2.72345676e+01, 9.20123444e+01, 3.19135799e+01, 7.87654305e+00, + 6.13580227e+00, 4.93827152e+00, 2.88888884e+00, 4.14814806e+00, + 8.93456802e+01, 1.40469131e+02, 2.85679016e+01, 3.06172848e+00, + 3.51851845e+00, 7.32098770e+00, 2.62962961e+00, 4.92592573e+00, + 1.31888885e+02, 1.41543213e+02, 9.75308609e+00, 2.37037039e+00, + 8.91357994e+00, 1.38271608e+01, 2.64197540e+00, 1.80493832e+01, + 1.34259262e+02, 8.03950653e+01, 3.18518519e+00, 2.98765421e+00, + 2.20740738e+01, 2.07407398e+01, 3.70370364e+00, 2.75308633e+00, + 1.54691362e+01, 1.28012344e+02, 5.88518524e+01, 3.95061731e+00, + 2.40740752e+00, 5.67901230e+00, 6.87654305e+00, 2.54320979e+00, + 3.22592583e+01, 1.36666672e+02, 3.87777786e+01, 2.08641982e+00, + 5.74074078e+00, 2.35925922e+01, 1.04814816e+01, 3.50617290e+00, + 4.21358032e+01, 8.79259262e+01, 8.23456764e+00, 2.75308633e+00, + 2.44074078e+01, 5.91234550e+01, 8.17283916e+00, 6.79012346e+00, + 3.09135799e+01, 2.63209877e+01, 2.86419749e+00, 6.74074078e+00, + 4.94691353e+01, 6.55802460e+01, 2.87321434e+01, 9.55357170e+00, + 4.26785707e+00, 1.36607141e+01, 5.90714302e+01, 27., + 1.04285717e+01, 7.17857122e+00, 6.18214302e+01, 1.82321434e+01, + 5.55357122e+00, 1.23392859e+01, 8.06607132e+01, 3.39642868e+01, + 1.28571424e+01, 1.43571424e+01, 9.83392868e+01, 3.03035717e+01, + 5.07142878e+00, 8.73214245e+00, 5.65357132e+01, 2.47321434e+01, + 1.60357151e+01, 1.82500000e+01, 1.43750000e+01, 5.35714293e+00, + 5.21428585e+00, 7.46428585e+00, 1.20714283e+01, 1.84464283e+01, + 1.75535717e+01, 1.06785717e+01, 4.26607132e+01, 1.15178576e+01, + 4.67857122e+00, 1.97142849e+01, 8.57857132e+01, 3.33392868e+01, + 1.18214283e+01, 1.01785717e+01, 9.21964264e+01, 1.93214283e+01, + 1.92857146e+00, 1.12678576e+01, 1.06696426e+02, 4.07142868e+01, + 8.53571415e+00, 1.77142849e+01, 1.16178574e+02, 4.16250000e+01, + 3.80357146e+00, 9.23214245e+00, 9.31607132e+01, 3.46785698e+01, + 1.22321424e+01, 2.18035717e+01, 2.96071434e+01, 1.16607141e+01, + 7.33928585e+00, 1.24464283e+01, 1.95714283e+01, 2.07678566e+01, + 1.86250000e+01, 1.10357141e+01, 4.49285698e+01, 1.04107141e+01, + 5.23214293e+00, 2.22678566e+01, 9.22857132e+01, 3.30357132e+01, + 1.35535717e+01, 1.51071424e+01, 1.04107140e+02, 1.69821434e+01, + 1.82142854e+00, 1.06607141e+01, 1.04142860e+02, 4.15892868e+01, + 9.69642830e+00, 2.27500000e+01, 1.16482140e+02, 4.40535698e+01, + 2.71428561e+00, 8.30357170e+00, 107., 4.77321434e+01, + 1.07500000e+01, 2.08214283e+01, 4.45892868e+01, 1.95178566e+01, + 6.58928585e+00, 1.23750000e+01, 2.18928566e+01, 22., + 1.79821434e+01, 1.04821424e+01, 3.58214302e+01, 6.32142878e+00, + 3.73214293e+00, 1.88571434e+01, 7.78750000e+01, 2.41607151e+01, + 1.26250000e+01, 1.89642849e+01, 8.63571396e+01, 1.35357141e+01, + 2.94642854e+00, 1.09107141e+01, 8.58392868e+01, 3.08571434e+01, + 1.06071424e+01, 2.43750000e+01, 1.00928574e+02, 3.23392868e+01, + 3.46428561e+00, 9., 1.00678574e+02, 4.58392868e+01, + 1.24107141e+01, 1.75178566e+01, 4.80892868e+01, 2.24642849e+01, + 5.39285707e+00, 1.05892859e+01, 2.14821434e+01, 1.89464283e+01, + 1.47678576e+01, 8.25000000e+00, 1.44444442e+00, 7.55555570e-01, + 1.77777779e+00, 1.58444443e+01, 8.42444458e+01, 6.78444443e+01, + 8.75555515e+00, 2.08888888e+00, 7.53333330e+00, 9.04444408e+00, + 8.48888874e+00, 19., 6.71999969e+01, 7.19777756e+01, 27., + 1.23777781e+01, 1.64222221e+01, 3.35555573e+01, 2.18222218e+01, + 2.21555557e+01, 3.78666649e+01, 8.83333359e+01, 5.51333351e+01, + 2.34888897e+01, 4.05333328e+01, 8.52222214e+01, 3.45333328e+01, + 1.00222225e+01, 3.18666668e+01, 9.74222260e+01, 5.75111122e+01, + 1.51999998e+01, 2.37777781e+00, 1.04444444e+00, 1.64444447e+00, + 7.26666689e+00, 7.31333313e+01, 1.00088890e+02, 2.33999996e+01, + 5.33333349e+00, 4.31111097e+00, 3.11111116e+00, 4.73333311e+00, + 9.46666622e+00, 7.63111115e+01, 1.22199997e+02, 4.40444450e+01, + 10., 1.31333332e+01, 1.25333338e+01, 1.53333330e+01, + 1.75777779e+01, 3.12222214e+01, 7.12222214e+01, 5.21555557e+01, + 2.86444435e+01, 1.25555553e+01, 2.55333328e+01, 1.56888885e+01, + 1.01999998e+01, 2.28888893e+01, 7.12888870e+01, 5.44444427e+01, + 2.46222229e+01, 8.77777767e+00, 2.84444451e+00, 3.13333344e+00, + 8.02222252e+00, 3.07555561e+01, 6.04666672e+01, 2.62222214e+01, + 1.32888889e+01, 2.68888879e+00, 6.66666687e-01, 1.11111116e+00, + 4.17777777e+00, 4.80222206e+01, 1.26511108e+02, 8.44000015e+01, + 9.44444466e+00, 4.19999981e+00, 2.11111116e+00, 2.93333340e+00, + 4.71111107e+00, 1.90444450e+01, 1.21933334e+02, 1.14933334e+02, + 1.92666664e+01, 5.66666651e+00, 4.40000010e+00, 4.59999990e+00, + 5.22222233e+00, 9.39999962e+00, 5.91555557e+01, 100., + 3.43555565e+01, 6.22222233e+00, 2.17777777e+00, 2.06666660e+00, + 3.75555563e+00, 8.11111069e+00, 1.22444448e+01, 9.48888874e+00, + 7.75555563e+00, 5., 1.53333330e+00, 1.88888884e+00, + 3.64444447e+00, 1.39555559e+01, 4.03333321e+01, 3.30888901e+01, + 1.11555557e+01, 1.73333335e+00, 4.22222227e-01, 4.22222227e-01, + 1.17777777e+00, 8.71111107e+00, 64., 7.61777802e+01, + 1.00444441e+01, 8.00000012e-01, 2.44444445e-01, 4.00000006e-01, + 9.33333337e-01, 3.91111112e+00, 4.01333351e+01, 7.90666656e+01, + 1.49555559e+01, 5.43478251e-01, 0., 6.52173907e-02, + 1.19565213e+00, 1.87173920e+01, 5.39782600e+01, 21., + 1.19565213e+00, 7.63043499e+00, 7.71739149e+00, 4.13043469e-01, + 2.39130425e+00, 1.71086960e+01, 3.77608681e+01, 1.79565220e+01, + 2.39130425e+00, 1.03152176e+02, 7.81956558e+01, 6.52173936e-01, + 1.73913038e+00, 2.61521740e+01, 2.91739140e+01, 8.17391300e+00, + 5.52173901e+00, 7.08043442e+01, 3.60434799e+01, 1.89130437e+00, + 2.73913050e+00, 6.93478241e+01, 4.25869560e+01, 3.02173924e+00, + 3.93478251e+00, 5.47826099e+00, 1.19565213e+00, 1.36956525e+00, + 4.43478251e+00, 4.95434799e+01, 8.42608719e+01, 2.85000000e+01, + 3.69565225e+00, 3.36956525e+00, 3.47826093e-01, 2.17391297e-01, + 3.97826076e+00, 4.61521721e+01, 6.89565201e+01, 2.36304340e+01, + 2.43478251e+00, 1.09652176e+02, 2.68913040e+01, 3.91304344e-01, + 5.19565201e+00, 4.06739120e+01, 3.11739140e+01, 1.20869570e+01, + 19., 1.13347824e+02, 2.44565220e+01, 1.65217388e+00, + 1.07391300e+01, 1.06673912e+02, 2.65000000e+01, 2.67391300e+00, + 1.81956520e+01, 8.04347801e+00, 2.63043475e+00, 4.06521749e+00, + 1.82826080e+01, 6.58043442e+01, 5.26086960e+01, 1.61956520e+01, + 7.86956501e+00, 1.45652175e+00, 3.04347813e-01, 1.19565213e+00, + 1.46956520e+01, 7.89782639e+01, 5.96086960e+01, 1.26086960e+01, + 2.02173924e+00, 1.07717392e+02, 1.95652175e+00, 6.52173936e-01, + 1.58043480e+01, 5.33913040e+01, 2.39130440e+01, 1.02608700e+01, + 7.55000000e+01, 1.03913040e+02, 5.80434799e+00, 1.34782612e+00, + 4.48043480e+01, 1.14391304e+02, 7.28260851e+00, 2.63043475e+00, + 5.39130440e+01, 4.58695650e+00, 4.47826099e+00, 12., + 3.51086960e+01, 4.59565201e+01, 1.61086960e+01, 5.56521749e+00, + 4.32608700e+00, 5.47826099e+00, 6.30434811e-01, 4.82608700e+00, + 3.05434780e+01, 5.91521721e+01, 2.33913040e+01, 5.43478251e+00, + 2.59130440e+01, 9.25000000e+01, 7.39130437e-01, 1.56521738e+00, + 5.53478279e+01, 5.28695641e+01, 9.58695698e+00, 6.54347849e+00, + 1.13217392e+02, 4.33695641e+01, 5.73913050e+00, 1.78260875e+00, + 7.89782639e+01, 8.77391281e+01, 1.84782612e+00, 1.93478262e+00, + 3.90217400e+01, 9., 1.46489363e+01, 1.17765961e+02, + 1.37106384e+02, 1.82127666e+01, 1.31276598e+01, 6.14255333e+01, + 7.48829803e+01, 9.01063824e+00, 7.93617010e+00, 1.27861702e+02, + 1.42882980e+02, 1.28404255e+01, 8.35106373e+00, 8.43510666e+01, + 1.03968086e+02, 1.26702127e+01, 8.54255295e+00, 7.88829803e+01, + 1.12914894e+02, 1.66595745e+01, 1.00531912e+01, 7.12553177e+01, + 1.00585106e+02, 6.20212746e+00, 7.08510637e+00, 2.49255314e+01, + 3.10638294e+01, 1.49042549e+01, 1.00957451e+01, 2.84787235e+01, + 31., 1.37553196e+01, 1.27021275e+01, 8.94148941e+01, + 1.22351067e+02, 2.46063824e+01, 1.19361706e+01, 8.34574432e+01, + 1.03531914e+02, 1.66914902e+01, 1.79042549e+01, 4.78085098e+01, + 6.38829803e+01, 2.73085098e+01, 1.82659569e+01, 6.89042587e+01, + 8.65212784e+01, 1.44574471e+01, 1.82340431e+01, 2.89787235e+01, + 3.41702118e+01, 3.05744686e+01, 2.26382980e+01, 2.76063824e+01, + 2.81702137e+01, 7.71276617e+00, 1.03191490e+01, 1.62978725e+01, + 2.01595745e+01, 1.80531921e+01, 1.62553196e+01, 1.43297873e+01, + 8.95744705e+00, 1.47234039e+01, 1.46702127e+01, 2.15638294e+01, + 3.13085098e+01, 2.23936176e+01, 1.73829784e+01, 2.56489353e+01, + 3.33723412e+01, 1.40531912e+01, 1.80319157e+01, 2.57340431e+01, + 3.17340431e+01, 2.59361706e+01, 2.45000000e+01, 2.13404255e+01, + 1.63936176e+01, 1.20851068e+01, 1.50212765e+01, 2.24680843e+01, + 2.76702137e+01, 2.63936176e+01, 2.22978725e+01, 1.82978725e+01, + 1.47127657e+01, 8.17021275e+00, 8.80851078e+00, 1.14574471e+01, + 1.61489353e+01, 1.75212765e+01, 1.41702127e+01, 1.06702127e+01, + 8.90425491e+00, 7.95744658e+00, 8.29787254e+00, 1.22872343e+01, + 1.43191490e+01, 1.23723402e+01, 1.05744677e+01, 8.93617058e+00, + 8.68085098e+00, 9.20212746e+00, 1.05106382e+01, 1.37659578e+01, + 1.69255314e+01, 1.80212765e+01, 1.38191490e+01, 9.63829803e+00, + 8.82978725e+00, 9.08510685e+00, 9.65957451e+00, 1.05319147e+01, + 1.32127657e+01, 1.72978725e+01, 1.37446804e+01, 9.04255295e+00, + 8.60638332e+00, 4.37234020e+00, 5.22340441e+00, 5.91489363e+00, + 8.20212746e+00, 1.19255323e+01, 9.24468040e+00, 5.14893627e+00, + 4.07446814e+00, 4.92307711e+00, 1.25576925e+01, 1.41346149e+01, + 4.53846169e+00, 2.11538458e+00, 8.96153831e+00, 1.30384617e+01, + 2.13461542e+00, 6.28846169e+00, 1.76538467e+01, 1.64423084e+01, + 6.13461542e+00, 7., 6.01923084e+00, 5.69230747e+00, + 3.88461542e+00, 6.98076916e+00, 2.06153851e+01, 1.21923075e+01, + 3.92307687e+00, 6.38461542e+00, 4.38461542e+00, 1.14615383e+01, + 5.50000000e+00, 6.86538458e+00, 1.07115383e+01, 6.96153831e+00, + 3.28846145e+00, 7.07692289e+00, 1.78846157e+00, 8.78846169e+00, + 6.46153831e+00, 9.61538506e+00, 6.84423065e+01, 6.50769196e+01, + 3.07692313e+00, 2.76923084e+00, 1.10826920e+02, 1.14500000e+02, + 4.98076916e+00, 8.88461494e+00, 3.49807701e+01, 2.41923084e+01, + 5.23076916e+00, 5.46153831e+00, 1.11788460e+02, 5.78846169e+01, + 4.84615374e+00, 1.34615383e+01, 3.32884598e+01, 1.99615383e+01, + 6.94230747e+00, 9.46153831e+00, 2.20576916e+01, 1.12307692e+01, + 5.73076916e+00, 1.19230766e+01, 2.54423084e+01, 1.32692308e+01, + 5.28846169e+00, 1.00961542e+01, 2.46153855e+00, 6.42307711e+00, + 5.42307711e+00, 1.13269234e+01, 1.25153847e+02, 9.81346130e+01, + 2.65384626e+00, 8.01923084e+00, 5.20769234e+01, 3.54423065e+01, + 7.57692289e+00, 1.79807701e+01, 1.36884613e+02, 5.36153831e+01, + 2.65384626e+00, 1.23653851e+01, 1.36288467e+02, 5.01153831e+01, + 3.57692313e+00, 1.67500000e+01, 6.00769234e+01, 1.58076925e+01, + 4.67307711e+00, 3.29423065e+01, 1.32230774e+02, 1.55192308e+01, + 3.53846145e+00, 1.56730766e+01, 2.95576916e+01, 1.40192308e+01, + 4.03846169e+00, 1.26730766e+01, 14., 5.92307711e+00, + 4.73076916e+00, 7.63461542e+00, 1.04038458e+01, 3.19230771e+00, + 2.94230771e+00, 1.79230766e+01, 3.42500000e+01, 2.52115383e+01, + 1.10961542e+01, 3.19807701e+01, 1.19250000e+02, 9.59615421e+00, + 2.78846145e+00, 2.06538467e+01, 4.22884598e+01, 1.32500000e+01, + 7.90384626e+00, 6.54615402e+01, 1.28115387e+02, 6.94230747e+00, + 2.40384626e+00, 6.77307663e+01, 1.32211533e+02, 5.34615374e+00, + 3.15384626e+00, 1.50576925e+01, 1.96153851e+01, 6.73076916e+00, + 2.03846145e+00, 4.32115402e+01, 6.60961533e+01, 7.15384626e+00, + 4.11538458e+00, 1.12857141e+01, 1.12222223e+01, 8.76190472e+00, + 5.92063475e+00, 5.25396824e+00, 7.61904764e+00, 1.10793648e+01, + 1.25079365e+01, 2.69682541e+01, 2.74761906e+01, 1.11111107e+01, + 1.09365082e+01, 4.50952377e+01, 4.40793648e+01, 1.41111107e+01, + 1.70476189e+01, 1.45761902e+02, 1.20904762e+02, 9.73015881e+00, + 1.19047623e+01, 74., 6.20317459e+01, 7.01587296e+00, + 1.97936516e+01, 9.50952377e+01, 8.93015900e+01, 2.45873013e+01, + 2.49523811e+01, 5.86031761e+01, 3.96984138e+01, 1.27777777e+01, + 1.61746025e+01, 1.29682541e+01, 1.40317459e+01, 1.23015871e+01, + 7.87301588e+00, 6.73015881e+00, 1.00634918e+01, 1.34920635e+01, + 1.50158730e+01, 2.21111107e+01, 2.21111107e+01, 1.57301588e+01, + 1.36825399e+01, 2.86031742e+01, 3.28571434e+01, 1.70158730e+01, + 2.33174610e+01, 1.27428574e+02, 1.31206345e+02, 9.90476227e+00, + 9.39682579e+00, 6.45238113e+01, 9.93809509e+01, 2.06666660e+01, + 1.32222223e+01, 112., 1.44984131e+02, 5.27142868e+01, + 1.94444447e+01, 6.33174591e+01, 7.10317459e+01, 1.51428576e+01, + 6.23809528e+00, 9.34920597e+00, 8.52380943e+00, 8.80952358e+00, + 8.04761887e+00, 6.80952358e+00, 8.80952358e+00, 1.37301588e+01, + 1.18571424e+01, 2.05714283e+01, 1.93333340e+01, 1.59206352e+01, + 1.11428576e+01, 1.35238094e+01, 1.31269846e+01, 1.53015871e+01, + 1.93333340e+01, 2.88571434e+01, 4.51111107e+01, 1.36031742e+01, + 1.04603176e+01, 2.88888893e+01, 5.37777786e+01, 2.29682541e+01, + 1.57460318e+01, 4.58412704e+01, 1.27539680e+02, 6.11428566e+01, + 1.34126987e+01, 2.67777786e+01, 5.99841270e+01, 2.55714283e+01, + 7.26984119e+00, 2.53968263e+00, 2.01587296e+00, 2.20634913e+00, + 2.22222233e+00, 1.69841266e+00, 2.25396824e+00, 3.61904764e+00, + 3.30158734e+00, 5.04761887e+00, 4.61904764e+00, 4.58730173e+00, + 2.79365087e+00, 2.49206352e+00, 2.88888884e+00, 5.28571415e+00, + 5.61904764e+00, 6.44444466e+00, 5.09523821e+00, 4.52380943e+00, + 3.68253970e+00, 4.92063475e+00, 6.41269827e+00, 4.84126997e+00, + 5.92063475e+00, 5.92063475e+00, 1.48253965e+01, 5.93650770e+00, + 2.73015881e+00, 9.31746006e+00, 1.78730164e+01, 8.07936478e+00, + 3.46031737e+00, 2.08947372e+01, 2.29605255e+01, 8.42105293e+00, + 1.06052628e+01, 6.28684196e+01, 6.94868393e+01, 1.03289471e+01, + 6.89473677e+00, 1.94868412e+01, 2.57236843e+01, 1.12500000e+01, + 1.17631578e+01, 1.70263157e+01, 1.02894735e+01, 7.94736862e+00, + 5.67105246e+00, 1.34078951e+01, 1.48552628e+01, 7.53947353e+00, + 5.56578970e+00, 5.47368431e+00, 5.76315784e+00, 7.46052647e+00, + 6.05263138e+00, 2.38157892e+00, 2.88157892e+00, 1.60526311e+00, + 1.38157892e+00, 1.76315784e+00, 2.07894731e+00, 2.69736838e+00, + 1.64473689e+00, 6.49342117e+01, 5.19736824e+01, 6.31578970e+00, + 1.04342108e+01, 1.35131577e+02, 1.33105270e+02, 1.40789471e+01, + 1.06710529e+01, 4.19210510e+01, 4.15789490e+01, 1.06052628e+01, + 1.21578951e+01, 4.71184196e+01, 2.91447372e+01, 9.69736862e+00, + 8.31578922e+00, 2.23421059e+01, 2.17763157e+01, 8.80263138e+00, + 6.67105246e+00, 9.11842060e+00, 8.35526276e+00, 9.05263138e+00, + 8.40789509e+00, 4.75000000e+00, 3.76315784e+00, 2.17105269e+00, + 1.65789473e+00, 1.80263162e+00, 2.40789485e+00, 3.50000000e+00, + 2.84210515e+00, 1.21934212e+02, 7.28552628e+01, 2.82894731e+00, + 5.72368431e+00, 145., 1.28434204e+02, 3.65789485e+00, + 6.09210539e+00, 6.18815804e+01, 4.20526314e+01, 6.71052647e+00, + 9.15789509e+00, 1.12618423e+02, 6.09473686e+01, 8.07894707e+00, + 7.86842108e+00, 3.07631588e+01, 2.15657902e+01, 7.13157892e+00, + 7.40789461e+00, 1.07894735e+01, 9.38157940e+00, 9.76315784e+00, + 9.64473724e+00, 5.57894754e+00, 3.88157892e+00, 2.17105269e+00, + 1.69736838e+00, 1.38157892e+00, 1.86842108e+00, 3.32894731e+00, + 2.89473677e+00, 1.31131577e+02, 5.65394745e+01, 2.67105269e+00, + 1.93552628e+01, 1.41368423e+02, 6.98289490e+01, 3.35526323e+00, + 1.03815794e+01, 5.83684196e+01, 3.08289471e+01, 5.02631569e+00, + 1.30131578e+01, 1.31565796e+02, 6.28815804e+01, 9.89473724e+00, + 1.00263157e+01, 3.05657902e+01, 1.64078941e+01, 5.10526323e+00, + 5.50000000e+00, 7.90789461e+00, 8.57894707e+00, 1.07105265e+01, + 9.93421078e+00, 5.43421030e+00, 2.86842108e+00, 1.51315784e+00, + 1.27631581e+00, 1.11842108e+00, 1.46052635e+00, 2.23684216e+00, + 2.34210515e+00, 2.98181820e+00, 5.65454531e+00, 1.07454548e+01, + 4.01818180e+00, 1.98181820e+00, 4.10909081e+00, 8.34545422e+00, + 4.87272739e+00, 2.40000010e+00, 6.65454531e+00, 1.64363632e+01, + 5.50909090e+00, 2.89090919e+00, 5.87272739e+00, 9.21818161e+00, + 5.19999981e+00, 2.30909085e+00, 5.96363640e+00, 1.23636360e+01, + 4.32727289e+00, 5.70909071e+00, 5.56363630e+00, 6.90909100e+00, + 4.41818190e+00, 2.10909081e+00, 3.56363630e+00, 5.27272749e+00, + 2.52727270e+00, 3.61818171e+00, 4., 3.96363640e+00, + 2.98181820e+00, 7.92727280e+00, 1.65636368e+01, 4.98909073e+01, + 2.41272736e+01, 6.18181801e+00, 2.92909088e+01, 1.01054543e+02, + 6.23818169e+01, 5.07272720e+00, 2.52000008e+01, 5.94545441e+01, + 1.65818176e+01, 4.61818171e+00, 5.44727287e+01, 1.27781815e+02, + 4.46545448e+01, 4.92727280e+00, 3.80363655e+01, 5.88727264e+01, + 8.23636341e+00, 7.89090919e+00, 9.07090912e+01, 1.22272728e+02, + 1.22909088e+01, 6.83636379e+00, 3.37636375e+01, 3.08181820e+01, + 5.90909100e+00, 9.19999981e+00, 5.45636368e+01, 4.80363655e+01, + 6.10909081e+00, 2.20181828e+01, 2.50363636e+01, 2.64727268e+01, + 2.61818180e+01, 2.09636364e+01, 3.20363655e+01, 9.46727295e+01, + 7.96181793e+01, 1.59272728e+01, 1.65272732e+01, 1.79818172e+01, + 1.35272732e+01, 1.76181812e+01, 5.17272720e+01, 1.09181816e+02, + 5.54545441e+01, 1.48000002e+01, 2.66000004e+01, 2.08727264e+01, + 1.16545458e+01, 2.61818180e+01, 1.01072731e+02, 112., + 2.51454544e+01, 1.28000002e+01, 3.19272728e+01, 2.11272736e+01, + 1.07454548e+01, 5.02727280e+01, 1.16381821e+02, 8.18000031e+01, + 1.20181818e+01, 3.12545452e+01, 7.81090927e+01, 4.45090904e+01, + 1.01636362e+01, 1.77999992e+01, 2.96363640e+01, 1.64545460e+01, + 1.43999996e+01, 1.92181816e+01, 4.23818169e+01, 4.45636368e+01, + 2.59272728e+01, 1.98545456e+01, 2.23636360e+01, 1.72909088e+01, + 1.65454540e+01, 1.67272720e+01, 1.82181816e+01, 4.21454544e+01, + 4.36181831e+01, 30., 2.12181816e+01, 2.02909088e+01, + 2.14363632e+01, 1.52363634e+01, 1.82909088e+01, 3.83818169e+01, + 4.37090912e+01, 5.33090897e+01, 3.87818184e+01, 2.51636372e+01, + 1.58363638e+01, 2.43604660e+01, 1.88372087e+00, 7.29069757e+00, + 2.91627903e+01, 2.96744194e+01, 1.15581398e+01, 6.48837233e+00, + 2.64418602e+01, 1.26604652e+02, 4.27906990e+00, 2.77906966e+00, + 6.87674408e+01, 9.88488388e+01, 7.39534903e+00, 6.15116262e+00, + 1.05941864e+02, 3.50116272e+01, 8.18604660e+00, 2.43023252e+00, + 6.20465126e+01, 1.07313957e+02, 4.60465097e+00, 5.31395340e+00, + 2.19069767e+01, 1.17325583e+01, 4.38372087e+00, 8.83720934e-01, + 8.95348847e-01, 1.34883726e+00, 6.97674394e-01, 1.84883726e+00, + 7.24418592e+00, 4.89302330e+01, 2.36046505e+00, 1.02093019e+01, + 5.16860466e+01, 2.46511631e+01, 7.06976748e+00, 1.13023252e+01, + 1.20883720e+02, 8.48255844e+01, 3.34883714e+00, 4.13953495e+00, + 1.36372086e+02, 1.17209305e+02, 2.91860461e+00, 5.20930243e+00, + 1.21918602e+02, 3.48255806e+01, 8.96511650e+00, 2.52325583e+00, + 5.71162796e+01, 4.95813942e+01, 3.10465121e+00, 6.98837233e+00, + 2.96860466e+01, 1.48488369e+01, 3.41860461e+00, 8.02325606e-01, + 6.27906978e-01, 5.81395328e-01, 7.32558131e-01, 4.09302330e+00, + 1.33372097e+01, 1.97093029e+01, 2.65116286e+00, 2.98953495e+01, + 133., 2.06511631e+01, 3.01162791e+00, 3.02093029e+01, + 1.32267441e+02, 2.58372097e+01, 4.06976748e+00, 8.81395340e+00, + 1.36302322e+02, 4.85000000e+01, 2.76744175e+00, 1.06976748e+01, + 5.98488388e+01, 3.44302330e+01, 6.60465097e+00, 2.06976748e+00, + 8.47674465e+00, 4.50000000e+00, 2.56976748e+00, 9.88372135e+00, + 4.18604660e+01, 1.27441864e+01, 2.50000000e+00, 7.55813956e-01, + 3.83720934e-01, 4.41860467e-01, 6.51162803e-01, 3.19767451e+00, + 1.54767447e+01, 7.48837233e+00, 1.90697670e+00, 3.33604660e+01, + 1.07220932e+02, 8.23255825e+00, 3.02325583e+00, 1.52441864e+01, + 3.11162796e+01, 1.84186039e+01, 3.60465121e+00, 3.73255825e+00, + 2.05116272e+01, 3.52325583e+00, 3.29069757e+00, 1.49302330e+01, + 3.71162796e+01, 1.97209301e+01, 4.60465097e+00, 2.01162791e+00, + 1.46511626e+00, 1.98837209e+00, 2.95348835e+00, 9.26744175e+00, + 3.46395340e+01, 6.87209320e+00, 1.53488374e+00, 6.51162803e-01, + 5.00000000e-01, 4.88372087e-01, 8.72093022e-01, 2.59302330e+00, + 1.08837214e+01, 7.06382990e+00, 3.63829780e+00, 1.31063833e+01, + 1.07042557e+02, 4.23191490e+01, 8.19148922e+00, 7.61702108e+00, + 1.64255314e+01, 5.93617010e+00, 3.10638309e+00, 7.34468079e+01, + 1.21723404e+02, 1.06595745e+01, 3.72340417e+00, 1.21276598e+01, + 1.94042549e+01, 3.53191495e+00, 1.24042549e+01, 1.00255318e+02, + 45., 4.57446814e+00, 7.93617010e+00, 2.14680843e+01, + 1.23829784e+01, 3.12765956e+00, 5.99574471e+01, 8.64042587e+01, + 5.38297892e+00, 1.89361703e+00, 6.72340441e+00, 1.11914892e+01, + 3.55319142e+00, 6.95744658e+00, 2.17021275e+00, 4.19148922e+00, + 1.22702126e+02, 1.16063828e+02, 5.29787254e+00, 3.06382990e+00, + 9.74468040e+00, 3.11914902e+01, 1.69361706e+01, 3.32765961e+01, + 7.77446823e+01, 2.44042549e+01, 6.23404264e+00, 2.98510647e+01, + 5.37446823e+01, 2.28510647e+01, 2.55957451e+01, 5.95744667e+01, + 4.45744667e+01, 2.97659569e+01, 4.62553177e+01, 8.02978745e+01, + 5.41276588e+01, 8.59574509e+00, 2.63404255e+01, 2.94042549e+01, + 1.30851068e+01, 1.80425529e+01, 3.78297882e+01, 2.67659569e+01, + 9.36170197e+00, 9.38297844e+00, 3.87234044e+00, 2.14893627e+00, + 3.53829803e+01, 1.23978722e+02, 3.06170216e+01, 1.76595747e+00, + 5.65957451e+00, 3.72765961e+01, 2.78297863e+01, 2.72127666e+01, + 2.10638294e+01, 2.58085098e+01, 8.29787254e+00, 1.05106382e+01, + 3.15106392e+01, 2.50638294e+01, 3.17446804e+01, 5.89361687e+01, + 3.75106392e+01, 2.62765961e+01, 2.11489353e+01, 3.29787216e+01, + 3.08936176e+01, 1.24680853e+01, 1.34893618e+01, 2.18510647e+01, + 2.20212765e+01, 2.80425529e+01, 2.92553196e+01, 1.81276588e+01, + 1.60212765e+01, 5.42553186e+00, 4.27659559e+00, 1.46808505e+00, + 3.31914902e+00, 1.13617020e+02, 1.15617020e+02, 3.85106373e+00, + 1.85106385e+00, 2.31702137e+01, 2.47446804e+01, 1.35744677e+01, + 7.38297892e+00, 2.05319157e+01, 4.67659569e+01, 1.78723412e+01, + 1.34680853e+01, 2.43617020e+01, 3.07234039e+01, 37., + 2.69787235e+01, 1.47659578e+01, 1.92127666e+01, 5.38723412e+01, + 4.27021294e+01, 1.30638294e+01, 8.29787254e+00, 2.24680843e+01, + 4.08510628e+01, 3.12340431e+01, 1.72127666e+01, 3.71702118e+01, + 3.87021294e+01, 8.65217400e+00, 1.47608700e+01, 2.47826080e+01, + 1.73260860e+01, 6.71739149e+00, 3.11739140e+01, 9.30652161e+01, + 6.85869598e+01, 1.57391300e+01, 2.13913040e+01, 3.62826080e+01, + 9.44347839e+01, 2.77173920e+01, 1.48043480e+01, 6.24130440e+01, + 1.12956520e+02, 9.47826099e+00, 2.80434775e+00, 5.35434799e+01, + 1.32782608e+02, 2.20652180e+01, 3.78260875e+00, 3.81739120e+01, + 9.62391281e+01, 3.39130425e+00, 4.78260875e-01, 3.77826080e+01, + 9.42173920e+01, 7.93478251e+00, 2.67391300e+00, 2.57391300e+01, + 6.11086960e+01, 2.33913040e+01, 2.53695660e+01, 2.46739140e+01, + 2.96521740e+01, 3.14347820e+01, 1.90434780e+01, 2.28043480e+01, + 2.45869560e+01, 2.90434780e+01, 2.01086960e+01, 4.49347839e+01, + 1.23826088e+02, 1.15369568e+02, 3.20652161e+01, 1.66304340e+01, + 4.96739120e+01, 2.48043480e+01, 2.54347825e+00, 3.04565220e+01, + 9.09565201e+01, 4.44347839e+01, 1.36956520e+01, 2.81304340e+01, + 7.92173920e+01, 4.21739149e+00, 1.39130437e+00, 10., + 1.96521740e+01, 1.26304350e+01, 8.80434799e+00, 2.49782600e+01, + 3.22173920e+01, 1.76739140e+01, 7.13043499e+00, 3.53913040e+01, + 8.79782639e+01, 2.64130440e+01, 5.84782600e+00, 8.95652199e+00, + 2.53913040e+01, 2.39565220e+01, 3.04347825e+00, 1.85869560e+01, + 1.09369568e+02, 8.65869598e+01, 1.16521740e+01, 1.49565220e+01, + 6.07173920e+01, 1.48913040e+01, 2.32608700e+00, 6.19565201e+00, + 2.12608700e+01, 2.49782600e+01, 1.15217390e+01, 15., + 4.38913040e+01, 2.47826076e+00, 1.71739125e+00, 5.41304350e+00, + 9.73913002e+00, 1.21086960e+01, 1.11521740e+01, 1.05869570e+01, + 8.36956501e+00, 4.76086950e+00, 1.43478262e+00, 2.40217400e+01, + 1.03978264e+02, 7.93478251e+00, 1.47826087e+00, 1.80652180e+01, + 4.30869560e+01, 7.56521749e+00, 1.93478262e+00, 10., + 5.30869560e+01, 1.53260870e+01, 3.02173924e+00, 1.34347830e+01, + 4.77826080e+01, 3.80434775e+00, 3.34782600e+00, 6.17391300e+00, + 9.97826099e+00, 1.18478260e+01, 6.71739149e+00, 6.43478251e+00, + 1.06739130e+01, 1.69565213e+00, 2.43478251e+00, 3.80434775e+00, + 5.78260851e+00, 9.43478298e+00, 7.86956501e+00, 3.69565225e+00, + 2.08695650e+00, 8.09375000e+00, 3.50000000e+00, 1.12031250e+01, + 7.14062500e+00, 1.96875000e+00, 1.06250000e+00, 7.50000000e-01, + 7.96875000e-01, 6.35937500e+00, 7.12500000e+00, 1.70625000e+01, + 7.71875000e+00, 1.71875000e+00, 1.14062500e+00, 1.18750000e+00, + 7.65625000e-01, 1.90625000e+00, 9.75000000e+00, 1.59843750e+01, + 5.93750000e+00, 1.79687500e+00, 1.43750000e+00, 1.51562500e+00, + 1.01562500e+00, 1.87500000e+00, 9.03125000e+00, 1.02968750e+01, + 3.01562500e+00, 1.95312500e+00, 1.73437500e+00, 1.21875000e+00, + 1.14062500e+00, 1.60625000e+01, 5.43750000e+00, 2.25937500e+01, + 1.40156250e+01, 5.40625000e+00, 7.06250000e+00, 8.55468750e+01, + 4.06875000e+01, 1.37500000e+01, 1.23437500e+01, 4.88906250e+01, + 1.39843750e+01, 4., 1.88750000e+01, 1.27328125e+02, + 2.89375000e+01, 6.04687500e+00, 2.00468750e+01, 4.13125000e+01, + 1.00781250e+01, 4.70312500e+00, 5.05781250e+01, 1.20296875e+02, + 7.21875000e+00, 5.14062500e+00, 2.02187500e+01, 2.25781250e+01, + 6.79687500e+00, 4.89062500e+00, 4.57500000e+01, 5.66093750e+01, + 2.89062500e+00, 1.50468750e+01, 7.32812500e+00, 109., + 8.03125000e+01, 3.60937500e+00, 1.24375000e+01, 1.00812500e+02, + 6.19687500e+01, 1.15937500e+01, 3.00625000e+01, 1.31328125e+02, + 3.82187500e+01, 3.29687500e+00, 2.11250000e+01, 1.09390625e+02, + 2.80468750e+01, 4.31250000e+00, 8.65156250e+01, 1.32468750e+02, + 9.35937500e+00, 4.56250000e+00, 6.22500000e+01, 1.12812500e+02, + 8.43750000e+00, 3.53125000e+00, 9.64531250e+01, 9.13593750e+01, + 3.98437500e+00, 5.76562500e+00, 1.09828125e+02, 9.82812500e+01, + 3.09375000e+00, 1.10156250e+01, 3.48437500e+00, 2.38593750e+01, + 2.48437500e+01, 2.32812500e+00, 8.64062500e+00, 2.47031250e+01, + 2.36250000e+01, 6.42187500e+00, 4.31250000e+00, 1.69375000e+01, + 6.12500000e+00, 4.25000000e+00, 2.52031250e+01, 3.76562500e+01, + 2.18593750e+01, 4.87500000e+00, 1.78593750e+01, 2.78437500e+01, + 2.92187500e+00, 1.14687500e+01, 3.81250000e+01, 2.86093750e+01, + 1.28437500e+01, 5.21875000e+00, 7.20937500e+01, 3.97968750e+01, + 3.39062500e+00, 1.12343750e+01, 3.11875000e+01, 1.60156250e+01, + 6.59375000e+00, 2.15000010e+00, 2.20000005e+00, 1.79999995e+00, + 1.50000000e+00, 1., 1.04999995e+00, 1.07500005e+00, + 1.25000000e+00, 2.47499990e+00, 2.70000005e+00, 2.75000000e+00, + 2.15000010e+00, 1.47500002e+00, 1.52499998e+00, 2.25000000e+00, + 2.17499995e+00, 2.37500000e+00, 1.57500005e+00, 5.12500000e+00, + 4.59999990e+00, 3.45000005e+00, 1.37500000e+00, 3.72499990e+00, + 4.84999990e+00, 1.39999998e+00, 1.20000005e+00, 5.92500019e+00, + 5.07499981e+00, 2.34999990e+00, 1.20000005e+00, 6.34999990e+00, + 1.04250002e+01, 4.37500000e+00, 5.17500019e+00, 1.79750004e+01, + 1.41999998e+01, 5.05000019e+00, 4.12500000e+00, 8.87500000e+00, + 6.94999981e+00, 7.32499981e+00, 6.59999990e+00, 2.87250004e+01, + 2.26000004e+01, 6.80000019e+00, 4.30000019e+00, 1.62500000e+01, + 1.69750004e+01, 1.66749992e+01, 6.52500010e+00, 2.68250008e+01, + 2.45499992e+01, 1.44499998e+01, 9.85000038e+00, 3.40999985e+01, + 3.58499985e+01, 1.50500002e+01, 4.80000019e+00, 12., + 1.05500002e+01, 9.92500019e+00, 8.35000038e+00, 3.16499996e+01, + 4.39249992e+01, 1.85000002e+00, 2.22499990e+00, 4.41749992e+01, + 2.82000008e+01, 2.95000005e+00, 4.12500000e+00, 1.13849998e+02, + 7.44000015e+01, 4.47499990e+00, 4.37500000e+00, 6.31250000e+01, + 4.24500008e+01, 5.47499990e+00, 8.85000038e+00, 1.35050003e+02, + 1.12349998e+02, 1.89249992e+01, 5.90000010e+00, 5.50499992e+01, + 5.97249985e+01, 3.48250008e+01, 3.98499985e+01, 1.25150002e+02, + 8.89000015e+01, 1.69500008e+01, 9.19999981e+00, 2.02749996e+01, + 2.62749996e+01, 3.36500015e+01, 2.82500000e+01, 4.32999992e+01, + 3.37999992e+01, 5.24999976e-01, 8.50000024e-01, 1.09349998e+02, + 7.73000031e+01, 6.49999976e-01, 9.49999988e-01, 1.08349998e+02, + 7.18750000e+01, 1.89999998e+00, 4.07499981e+00, 1.33925003e+02, + 1.05824997e+02, 3.17499995e+00, 3.75000000e+00, 8.93750000e+01, + 5.73750000e+01, 5.55000019e+00, 1.65499992e+01, 1.15025002e+02, + 8.96750031e+01, 1.56750002e+01, 1.21000004e+01, 4.31250000e+01, + 2.97500000e+01, 4.15000010e+00, 2.87500000e+01, 4.76250000e+01, + 2.46000004e+01, 1.07500000e+01, 1.05500002e+01, 1.73750000e+01, + 9.69999981e+00, 9.53658581e+00, 3.04065037e+00, 1.13902435e+01, + 1.43902435e+01, 3.65853667e+00, 1.07723579e+01, 1.58991867e+02, + 1.50601624e+02, 2.44878044e+01, 4.47154474e+00, 6.28455305e+00, + 8.88617897e+00, 5.82926846e+00, 8.17886162e+00, 1.46926834e+02, + 169., 3.79024391e+01, 1.01463413e+01, 1.10975609e+01, + 1.29837399e+01, 1.16341467e+01, 1.20731707e+01, 7.21788635e+01, + 1.47886185e+02, 1.93333340e+01, 1.10569105e+01, 1.29756098e+01, + 1.31382113e+01, 1.01219511e+01, 1.02682924e+01, 2.52682934e+01, + 4.48292694e+01, 1.98617878e+01, 8.74796772e+00, 1.01382113e+01, + 1.20325203e+01, 8.37398338e+00, 1.86341457e+01, 1.49764221e+02, + 1.39886185e+02, 2.98211384e+01, 1.54796743e+01, 1.64715443e+01, + 2.42926826e+01, 1.98292675e+01, 2.46178856e+01, 1.03284554e+02, + 1.17073174e+02, 2.81951218e+01, 2.13821144e+01, 2.43983746e+01, + 2.47154465e+01, 2.36585369e+01, 2.52357731e+01, 4.88617897e+01, + 6.07967491e+01, 1.90081310e+01, 1.41056910e+01, 1.90569115e+01, + 1.73902435e+01, 1.40325203e+01, 1.52764225e+01, 2.69674797e+01, + 3.23821144e+01, 1.67398376e+01, 1.36178865e+01, 1.46991873e+01, + 1.49268293e+01, 1.24390240e+01, 1.44959345e+01, 2.97642269e+01, + 3.29349594e+01, 2.16666660e+01, 1.57967482e+01, 1.88943081e+01, + 20., 1.87560978e+01, 1.89512196e+01, 2.64796753e+01, + 3.16829262e+01, 2.14146347e+01, 1.46585369e+01, 1.76422768e+01, + 1.69837399e+01, 1.82682934e+01, 1.85691051e+01, 2.62276421e+01, + 2.98617878e+01, 1.25365858e+01, 9.44715405e+00, 1.39186993e+01, + 1.31707315e+01, 1.16016264e+01, 1.14146338e+01, 1.74308949e+01, + 2.04227638e+01, 1.47967482e+00, 2.27642274e+00, 1.52845526e+00, + 1.37398374e+00, 1.54471540e+00, 1.14634144e+00, 1.61788619e+00, + 1.77235770e+00, 3.02439022e+00, 2.77235770e+00, 1.72357726e+00, + 1.34959352e+00, 2., 1.95934963e+00, 1.79674792e+00, + 2.15447164e+00, 2.39837408e+00, 1.52845526e+00, 1.52845526e+00, + 1.45528460e+00, 1.98373985e+00, 1.60162604e+00, 1.97560978e+00, + 2.34959340e+00, 1.34146345e+00, 8.37398350e-01, 1.45528460e+00, + 1.78861785e+00, 1.79674792e+00, 9.83739853e-01, 1.42276418e+00, + 1.75609756e+00, 7.04255342e+00, 1.06329788e+02, 8.08936157e+01, + 4.80851078e+00, 2.77659583e+00, 3.70319138e+01, 3.70106392e+01, + 5.54255342e+00, 8.95744705e+00, 1.28191483e+02, 1.14585106e+02, + 6.65957451e+00, 3.14893627e+00, 6.38404274e+01, 5.84255333e+01, + 5.97872353e+00, 1.52127657e+01, 1.02223404e+02, 7.49148941e+01, + 8.56382942e+00, 1.19574471e+01, 1.11659576e+02, 8.27340393e+01, + 8.89361668e+00, 7.03191471e+00, 2.84255314e+01, 1.86170216e+01, + 8.53191471e+00, 1.23297873e+01, 1.04659576e+02, 7.13085098e+01, + 1.62872334e+01, 6.42553186e+00, 1.78617020e+01, 1.81170216e+01, + 6.44680834e+00, 5.23404264e+00, 3.00531921e+01, 2.76063824e+01, + 7.39361715e+00, 9.24468040e+00, 8.05319138e+01, 6.22234039e+01, + 7.78723383e+00, 7., 5.84468079e+01, 4.34042549e+01, + 6.61702108e+00, 3.16170216e+01, 1.32765961e+02, 1.04851067e+02, + 5.65957451e+00, 8.56382942e+00, 6.00106392e+01, 3.38191490e+01, + 5.19148922e+00, 2.36489353e+01, 1.16542557e+02, 8.59893646e+01, + 1.18191490e+01, 1.66382980e+01, 7.60744705e+01, 3.38510628e+01, + 4.60638285e+00, 6.09574461e+00, 5.48936176e+00, 5.17021275e+00, + 4.94680834e+00, 5.77659559e+00, 9.31914902e+00, 9.27659607e+00, + 7.92553186e+00, 7.93617010e+00, 8.98936176e+00, 8.69148922e+00, + 7.25531912e+00, 8.07446766e+00, 2.49255314e+01, 1.88723412e+01, + 8.68085098e+00, 1.39361706e+01, 3.48936157e+01, 1.90319157e+01, + 7.03191471e+00, 8.74468040e+00, 4.56808510e+01, 28., + 7.72340441e+00, 2.03085098e+01, 9.82234039e+01, 5.54468079e+01, + 6.32978725e+00, 7.89361715e+00, 4.12978706e+01, 2.25000000e+01, + 4.79787254e+00, 3.69148946e+00, 3.03191495e+00, 2.71276593e+00, + 2.90425539e+00, 2.78723407e+00, 2.53191495e+00, 3.42553186e+00, + 3.98936176e+00, 4.39361715e+00, 3.79787230e+00, 3.42553186e+00, + 3.67021275e+00, 4.11702108e+00, 5.39361715e+00, 5.84042549e+00, + 4.88297892e+00, 5.09574461e+00, 4.45744658e+00, 3.88297868e+00, + 3.65957451e+00, 4.32978725e+00, 1.12765961e+01, 8.21276569e+00, + 4.94680834e+00, 4.48936176e+00, 1.25425529e+01, 5.06382990e+00, + 2.63829780e+00, 4.06382990e+00, 1.82127666e+01, 1.07127657e+01, + 3.29787230e+00, 1.04344261e+02, 53., 5.06557369e+00, + 2.34426236e+00, 3.07868843e+01, 1.86393452e+01, 6., + 7.18032789e+00, 4.68688507e+01, 1.82131157e+01, 1.78688526e+00, + 7.18032789e+00, 1.14327866e+02, 6.92786865e+01, 7.19672108e+00, + 5.75409842e+00, 2.62622948e+01, 1.20983610e+01, 2.83606553e+00, + 5.39344263e+00, 2.73114758e+01, 1.44918032e+01, 5.13114738e+00, + 4.78688526e+00, 4.01639366e+00, 2.50819683e+00, 2.34426236e+00, + 2.62295079e+00, 3.80327868e+00, 4.06557369e+00, 3.52459025e+00, + 2.98360658e+00, 1.24016396e+02, 7.11967239e+01, 1.78688526e+00, + 2.06557369e+00, 3.62295074e+01, 2.24262295e+01, 3.26229501e+00, + 5.47540998e+00, 9.24262314e+01, 4.05573769e+01, 1.49180329e+00, + 2.90163946e+00, 1.25409836e+02, 9.59672165e+01, 5.03278685e+00, + 4.98360634e+00, 4.21639328e+01, 2.25409832e+01, 4.29508209e+00, + 5.93442631e+00, 6.98688507e+01, 3.51147537e+01, 4.62295103e+00, + 4.27868843e+00, 7.03278685e+00, 5.08196735e+00, 3.22950816e+00, + 4.37704897e+00, 6.39344263e+00, 5.50819683e+00, 4.42622948e+00, + 3.91803288e+00, 1.11278687e+02, 5.55737686e+01, 1.78688526e+00, + 3.09836054e+00, 3.90327873e+01, 2.38196716e+01, 4.67213106e+00, + 7.47540998e+00, 1.15409836e+02, 6.43606567e+01, 4.70491791e+00, + 7.21311474e+00, 1.22868851e+02, 7.80491791e+01, 4.54098368e+00, + 5.24590158e+00, 4.21147537e+01, 2.33606548e+01, 3.91803288e+00, + 5.72131157e+00, 1.04262299e+02, 6.43770523e+01, 1.11639347e+01, + 4.40983629e+00, 1.18196726e+01, 8.73770523e+00, 2.65573764e+00, + 3.14754105e+00, 5.83606577e+00, 8.11475372e+00, 5.52459002e+00, + 3.65573764e+00, 6.61475372e+01, 2.34262295e+01, 2.21311474e+00, + 4.55737686e+00, 3.01147537e+01, 1.77377052e+01, 3.36065578e+00, + 1.57704916e+01, 1.04622948e+02, 5.70983620e+01, 8.90163898e+00, + 8.88524628e+00, 7.70983582e+01, 3.86393433e+01, 4.90163946e+00, + 1.01311474e+01, 2.88524590e+01, 1.81147537e+01, 4.67213106e+00, + 5.83606577e+00, 9.84262314e+01, 7.14426193e+01, 1.39672127e+01, + 4.04918051e+00, 1.26065578e+01, 9.26229477e+00, 1.86885250e+00, + 2.39344263e+00, 1.03442621e+01, 1.34754095e+01, 4.96721315e+00, + 2.67213106e+00, 4.58490562e+00, 4.14716988e+01, 4.64339638e+01, + 8.01886749e+00, 2.05660367e+00, 2.26415086e+00, 4.09433985e+00, + 2.43396235e+00, 4.26415110e+00, 1.96226406e+01, 6.99433975e+01, + 2.32452831e+01, 1.71698117e+00, 1.77358496e+00, 6.13207531e+00, + 6.90566015e+00, 3.37735844e+00, 5.24528313e+00, 6.40566025e+01, + 7.95660400e+01, 4.52830172e+00, 7.54716992e-01, 3.05660367e+00, + 5.94339609e+00, 3.16981125e+00, 1.35849059e+00, 2.24716988e+01, + 9.66792450e+01, 1.19811325e+01, 5.66037714e-01, 1.54716980e+00, + 6.69811344e+00, 1.75471699e+00, 4.71132088e+01, 9.11886826e+01, + 7.35849047e+00, 7.92452812e-01, 9.30188656e+00, 1.17169809e+01, + 1.01886797e+00, 1.50943398e+00, 2.11698112e+01, 1.19660378e+02, + 3.87169800e+01, 1.35849059e+00, 2.90566039e+00, 1.09433966e+01, + 4.32075453e+00, 2.86792445e+00, 5.69811344e+00, 8.86037750e+01, + 7.28490601e+01, 1.64150941e+00, 8.86792481e-01, 1.31509438e+01, + 1.74528294e+01, 5.88679266e+00, 2.49056602e+00, 2.54716988e+01, + 4.40754700e+01, 2.20754719e+00, 6.41509414e-01, 2.02075462e+01, + 7.14716949e+01, 2.05660367e+00, 1.05094337e+01, 2.30377350e+01, + 3.39622641e+00, 8.11320782e-01, 6.70754700e+01, 1.20603775e+02, + 5.43396235e+00, 2.41509438e+00, 6.47169828e+00, 3.04528294e+01, + 1.09056606e+01, 1.20754719e+00, 2.20188675e+01, 1.26132072e+02, + 3.40377350e+01, 2.49056602e+00, 2.75471687e+00, 1.53584909e+01, + 1.00754719e+01, 1.62264156e+00, 4.92452812e+00, 1.26584908e+02, + 1.00377357e+02, 3.32075477e+00, 1.33962262e+00, 4.94339609e+00, + 8.60377312e+00, 1.79245281e+00, 3.28301883e+00, 1.05849060e+02, + 1.20754715e+02, 2.58490562e+00, 3.05660367e+00, 3.69811320e+00, + 1.71698117e+00, 2.39622641e+00, 3.77924538e+01, 1.04792450e+02, + 1.03773584e+01, 2.75471687e+00, 2.41509438e+00, 3.96226406e+00, + 2.67924523e+00, 2.75471687e+00, 2.19811325e+01, 1.24641510e+02, + 3.25094337e+01, 3.83018875e+00, 2.28301883e+00, 3.83018875e+00, + 3.88679242e+00, 2.77358484e+00, 1.05283022e+01, 1.12018867e+02, + 6.03207550e+01, 5.24528313e+00, 1.94339621e+00, 3.35849047e+00, + 5.47169828e+00, 3.37735844e+00, 6.07547188e+00, 5.70566025e+01, + 5.36792450e+01, 3.59420300e+00, 3.40579700e+00, 2.63768125e+00, + 4.27536249e+00, 2.60579720e+01, 2.82173920e+01, 8.21739101e+00, + 3.28985500e+00, 5., 4.66666651e+00, 3.91304350e+00, + 1.14347830e+01, 8.92173920e+01, 1.23782608e+02, 3.65507240e+01, + 7.66666651e+00, 8.95652199e+00, 1.46666670e+01, 5.65217400e+00, + 5.17391300e+00, 5.26811600e+01, 1.39695648e+02, 9.62173920e+01, + 1.25072460e+01, 4.00434799e+01, 6.40724640e+01, 1.64927540e+01, + 6.36231899e+00, 2.38260860e+01, 1.10289856e+02, 1.05318840e+02, + 2.12173920e+01, 6.52173901e+00, 5.30434799e+00, 2.92753625e+00, + 4.49275351e+00, 2.09275360e+01, 2.73768120e+01, 1.10579710e+01, + 6.52173901e+00, 9.88405800e+00, 7.65217400e+00, 5.34782600e+00, + 1.25362320e+01, 8.84492722e+01, 1.13275360e+02, 3.26811600e+01, + 1.23188410e+01, 1.63768120e+01, 1.08985510e+01, 7.92753601e+00, + 1.05507250e+01, 5.73188400e+01, 1.23130432e+02, 7.51739120e+01, + 2.39420280e+01, 1.87536240e+01, 2.22463760e+01, 1.05217390e+01, + 6.37681150e+00, 2.04637680e+01, 1.04507248e+02, 1.07985504e+02, + 2.19565220e+01, 9.15942001e+00, 8.63768101e+00, 4.04347849e+00, + 3.20289850e+00, 9.27536201e+00, 1.84057980e+01, 1.12028990e+01, + 7.30434799e+00, 1.16376810e+01, 1.02753620e+01, 5.71014500e+00, + 8.75362301e+00, 5.48695641e+01, 9.72898560e+01, 3.53768120e+01, + 1.45507250e+01, 1.60144920e+01, 8.85507202e+00, 4.97101450e+00, + 7.95652151e+00, 5.05797119e+01, 1.05855072e+02, 5.41304359e+01, + 2.13768120e+01, 1.74782600e+01, 8.84057999e+00, 5.42028999e+00, + 6.63768101e+00, 2.18260860e+01, 6.36521721e+01, 5.27246361e+01, + 2.46956520e+01, 4.08695650e+00, 6.53623199e+00, 3.63768125e+00, + 1.91304350e+00, 3.98550725e+00, 5.91304350e+00, 3.53623199e+00, + 2.43478251e+00, 8.50724602e+00, 1.02753620e+01, 4.34782600e+00, + 3.89855075e+00, 1.46086960e+01, 2.76521740e+01, 1.51449280e+01, + 8.88405800e+00, 7.42028999e+00, 4.78260851e+00, 1.79710150e+00, + 2.81159425e+00, 2.09565220e+01, 5.23043480e+01, 2.75362320e+01, + 8.43478298e+00, 7.52173901e+00, 3.84057975e+00, 1.44927537e+00, + 3.66666675e+00, 1.02173910e+01, 2.77681160e+01, 2.62753620e+01, + 1.28115940e+01, 6., 4.03278685e+00, 1.17049179e+01, + 1.70163937e+01, 7.01639366e+00, 3.16393447e+00, 4.90163946e+00, + 7.39344263e+00, 1.22131147e+01, 6.57377052e+00, 1.35901642e+01, + 1.37377052e+01, 9.59016418e+00, 5.73770475e+00, 3.48524590e+01, + 3.66229515e+01, 5.26229525e+00, 6.04918051e+00, 2.00819664e+01, + 1.21967211e+01, 5.36065578e+00, 6.88524580e+00, 8.25409851e+01, + 3.58360672e+01, 4.01639366e+00, 5.06557369e+00, 2.43934422e+01, + 9.78688526e+00, 5.01639366e+00, 9.91803265e+00, 7.87704926e+01, + 1.36065578e+01, 6.62295103e+00, 2.83606553e+00, 1.77868843e+01, + 4.05081978e+01, 7.32786894e+00, 3.09836054e+00, 4.61475410e+01, + 1.17131149e+02, 5.14754105e+00, 5.36065578e+00, 9.05737686e+01, + 1.11836067e+02, 7.55737686e+00, 7.11475420e+00, 1.01311478e+02, + 1.19868851e+02, 3.50819683e+00, 1.13442621e+01, 1.26606560e+02, + 9.50491791e+01, 4.67213106e+00, 1.08032789e+01, 9.34918060e+01, + 5.06229515e+01, 3.44262290e+00, 2.05901642e+01, 1.18442619e+02, + 3.64918022e+01, 1.01639347e+01, 2.12622948e+01, 7.62459030e+01, + 1.23934422e+01, 1.45409832e+01, 2.37704921e+00, 3.52950821e+01, + 1.28016388e+02, 1.58196726e+01, 1.70491803e+00, 2.03770485e+01, + 1.11573769e+02, 1.21639347e+01, 6.14754105e+00, 6.77540970e+01, + 1.21459015e+02, 6.08196735e+00, 5.52459002e+00, 3.11311474e+01, + 3.95737686e+01, 1.10983610e+01, 6.18032789e+00, 4.38524590e+01, + 2.68524590e+01, 3.16393447e+00, 1.30983610e+01, 4.12950821e+01, + 2.97540989e+01, 5.36065578e+00, 5.57377052e+00, 2.00163937e+01, + 5., 5.19672108e+00, 2.61967220e+01, 3.50983620e+01, + 1.86229515e+01, 1.41147537e+01, 3.62295079e+00, 4.72131157e+00, + 8.71803284e+01, 2.72459011e+01, 1.86885250e+00, 9.86885262e+00, + 3.14098358e+01, 1.86721306e+01, 4.85245895e+00, 2.13114762e+00, + 5.81967211e+00, 1.31147540e+00, 4.70491791e+00, 2.85737705e+01, + 3.90819664e+01, 1.22295084e+01, 2.91803288e+00, 1.60655737e+00, + 1.03278685e+00, 2.42622948e+00, 1.09344263e+01, 4.34590149e+01, + 4.02131157e+01, 4.60655737e+00, 1.11475408e+00, 1.40983605e+00, + 2.32786894e+00, 6.14754105e+00, 2.12786884e+01, 3.82786903e+01, + 2.28196716e+01, 9.68493176e+00, 1.24520550e+01, 9.08219147e+00, + 4.08219194e+00, 2.90410948e+00, 6.16438341e+00, 9.53424644e+00, + 8.49315071e+00, 3.39863014e+01, 3.47260284e+01, 2.29863014e+01, + 1.22054796e+01, 1.01917810e+01, 1.84794521e+01, 2.81780815e+01, + 2.60273972e+01, 3.62328758e+01, 4.03561630e+01, 2.59589043e+01, + 1.78082199e+01, 1.55479450e+01, 2.08630142e+01, 2.96575336e+01, + 2.91369858e+01, 3.87945213e+01, 2.80273972e+01, 1.60958900e+01, + 3.44931488e+01, 4.27808228e+01, 1.54931507e+01, 2.19726028e+01, + 3.77808228e+01, 1.41506853e+01, 1.78767128e+01, 1.19589043e+01, + 4.52054787e+00, 4.53424644e+00, 8.79452038e+00, 1.20821915e+01, + 1.12876711e+01, 3.85753441e+01, 4.67260284e+01, 3.44109573e+01, + 2.00684929e+01, 1.84246578e+01, 2.45890408e+01, 3.45890427e+01, + 3.06301365e+01, 5.13561630e+01, 5.63561630e+01, 4.18630142e+01, + 2.90547943e+01, 2.53424664e+01, 2.63287678e+01, 3.77945213e+01, + 4.91643829e+01, 7.25890427e+01, 4.19452057e+01, 2.31643829e+01, + 7.89862976e+01, 8.69452057e+01, 2.12465744e+01, 2.46575336e+01, + 6.37671242e+01, 1.27808218e+01, 1.81369858e+01, 1.36164379e+01, + 5.21917820e+00, 5.23287678e+00, 9.31506824e+00, 1.17534246e+01, + 1.07397261e+01, 3.64931488e+01, 4.82739716e+01, 3.78630142e+01, + 2.37534256e+01, 2.05753422e+01, 2.15068493e+01, 3.07671242e+01, + 3.28904114e+01, 5.89041100e+01, 6.01506844e+01, 4.18356171e+01, + 3.53287659e+01, 2.97397251e+01, 2.37808228e+01, 3.56438370e+01, + 6.22739716e+01, 9.95342484e+01, 3.78082199e+01, 1.92054787e+01, + 1.12904106e+02, 1.18726028e+02, 2.14931507e+01, 1.89041100e+01, + 9.06849289e+01, 8.53424644e+00, 14., 1.08082190e+01, + 4.42465734e+00, 4.50684929e+00, 7.52054787e+00, 9.71232891e+00, + 7.91780806e+00, 3.08493156e+01, 3.75068512e+01, 3.03698635e+01, + 2.11232872e+01, 1.76575336e+01, 1.76712322e+01, 2.26575336e+01, + 2.84520550e+01, 5.76849327e+01, 4.84657516e+01, 2.96712322e+01, + 5.44657516e+01, 4.10273972e+01, 1.60821915e+01, 2.60273972e+01, + 5.86849327e+01, 1.06958900e+02, 2.55205479e+01, 1.18904114e+01, + 1.16109589e+02, 1.16849312e+02, 1.32739725e+01, 9.24657536e+00, + 1.03383560e+02, 5.34090900e+00, 5.86363649e+00, 4.27272749e+00, + 1.35454550e+01, 8.57727280e+01, 3.98636360e+01, 1.56818187e+00, + 3.45454550e+00, 4.29545450e+00, 5.59090900e+00, 2.22727275e+00, + 1.27500000e+01, 1.08113640e+02, 3.30909081e+01, 1.36363640e-01, + 1.13636367e-01, 9.69772720e+01, 5.45000000e+01, 4.06818199e+00, + 4.50000000e+00, 1.54772730e+01, 5.06818199e+00, 7.50000000e-01, + 2.02272725e+00, 1.06454544e+02, 4.27272720e+01, 5.65909100e+00, + 2.65909100e+00, 6.22727251e+00, 5.09090900e+00, 5.29545450e+00, + 13., 9.38636398e+00, 6.50000000e+00, 7.20454550e+00, + 5.23636360e+01, 9.15681839e+01, 8.72727299e+00, 9.54545438e-01, + 5.20454550e+00, 3.88636374e+00, 1.95454550e+00, 2.93181825e+00, + 5.30909081e+01, 1.20636360e+02, 1.02045450e+01, 2.27272734e-01, + 3.63636374e-01, 1.11295456e+02, 1.95909100e+01, 5.13636351e+00, + 9.79545498e+00, 1.95681820e+01, 3.52272725e+00, 1.11363637e+00, + 1.68409100e+01, 1.21681816e+02, 2.61136360e+01, 5.47727251e+00, + 3.38636374e+00, 5.93181801e+00, 5., 6.54545450e+00, + 3.51818199e+01, 5.45454550e+00, 2.77272725e+00, 1.03636360e+01, + 1.02295456e+02, 6.12272720e+01, 6.81818187e-01, 3.86363626e-01, + 4.04545450e+00, 7.34090900e+00, 2.40909100e+00, 6.40909100e+00, + 8.86818161e+01, 7.57500000e+01, 1.22727275e+00, 3.40909094e-01, + 4.25000000e+00, 1.17545456e+02, 6.63636351e+00, 5.72727251e+00, + 1.03863640e+01, 8.59090900e+00, 1.75000000e+00, 1.54545450e+00, + 8.03181839e+01, 1.12181816e+02, 14., 4.61363649e+00, + 3.09090900e+00, 4.31818199e+00, 3.90909100e+00, 8.93181801e+00, + 7.70681839e+01, 8.18181813e-01, 8.63636374e-01, 1.80909100e+01, + 1.07340912e+02, 1.57727270e+01, 2.95454532e-01, 4.31818187e-01, + 2.40909100e+00, 1.72045460e+01, 3.04545450e+00, 7.90909100e+00, + 4.42045441e+01, 1.30454550e+01, 5.00000000e-01, 1.61363637e+00, + 4.87272720e+01, 1.04568184e+02, 3.93181825e+00, 4.18181801e+00, + 4.95454550e+00, 2.77272725e+00, 1.77272725e+00, 3.20454550e+00, + 1.21113640e+02, 6.23181801e+01, 9.15909100e+00, 3.65909100e+00, + 4.02272749e+00, 3.84090900e+00, 4.22727251e+00, 9.75000000e+00, + 7.06136398e+01, 1.32500000e+01, 2.97916675e+00, 1.59583330e+01, + 1.06333336e+02, 3.39791679e+01, 3.04166675e+00, 1.35416670e+01, + 6.66875000e+01, 5.70833349e+00, 1.77083337e+00, 2.32708340e+01, + 7.63541641e+01, 8.97916698e+00, 4.18750000e+00, 7.21666641e+01, + 9.79375000e+01, 1.68750000e+00, 2.02083325e+00, 2.13958340e+01, + 2.96041660e+01, 3., 1.33125000e+01, 1.19208336e+02, 73., + 8.54166687e-01, 3.43750000e+00, 2.03125000e+01, 9.10416698e+00, + 3.12500000e+00, 5.09791679e+01, 1.15416664e+02, 1.34375000e+01, + 4.57083321e+01, 1.45833337e+00, 4.75000000e+00, 7.02708359e+01, + 4.03333321e+01, 2.87500000e+00, 1.92500000e+01, 1.22500000e+02, + 1.73750000e+01, 3.16666675e+00, 7.22916651e+00, 2.46458340e+01, + 1.08125000e+01, 6., 7.77916641e+01, 1.23562500e+02, + 9.93750000e+00, 7.50000000e+00, 1.45833330e+01, 1.54791670e+01, + 9.68750000e+00, 1.95625000e+01, 9.64166641e+01, 7.10625000e+01, + 4.18750000e+00, 7.62500000e+00, 1.91875000e+01, 1.25000000e+01, + 12., 5.76250000e+01, 9.01041641e+01, 1.47083330e+01, + 9.58333359e+01, 6.45833349e+00, 3.50000000e+00, 2.15833340e+01, + 2.91666660e+01, 4.27083349e+00, 6.10416651e+00, 1.09416664e+02, + 3.10833340e+01, 1.24583330e+01, 1.29791670e+01, 1.98333340e+01, + 1.50208330e+01, 1.11458330e+01, 1.75625000e+01, 5.93125000e+01, + 2.27708340e+01, 2.38541660e+01, 2.97291660e+01, 2.31875000e+01, + 1.88125000e+01, 1.91875000e+01, 3.04375000e+01, 2.75208340e+01, + 1.26875000e+01, 1.97500000e+01, 2.83750000e+01, 2.71666660e+01, + 2.86458340e+01, 2.88750000e+01, 2.41250000e+01, 1.32500000e+01, + 8.98958359e+01, 3.02083340e+01, 6.97916651e+00, 1.10625000e+01, + 2.16666660e+01, 8.29166698e+00, 5.35416651e+00, 3.10416660e+01, + 2.28750000e+01, 2.33750000e+01, 1.48958330e+01, 1.35625000e+01, + 1.29583330e+01, 1.11666670e+01, 1.05000000e+01, 1.40625000e+01, + 1.59583330e+01, 1.74791660e+01, 2.07083340e+01, 2.28750000e+01, + 1.73125000e+01, 1.32083330e+01, 1.39166670e+01, 1.36666670e+01, + 6.39583349e+00, 1.01041670e+01, 2.01875000e+01, 3.62916679e+01, + 2.77500000e+01, 1.09375000e+01, 8.93750000e+00, 8.41666698e+00, + 1.02941179e+00, 7.94117630e-01, 7.05882370e-01, 1.76470590e+00, + 7.79411745e+00, 4.38235283e+00, 1., 2.64705896e-01, + 9.08823490e+00, 5.55882359e+00, 5.47058821e+00, 6.20588255e+00, + 1.58235292e+01, 1.56176472e+01, 1.10882349e+01, 1.03235292e+01, + 2.34411774e+01, 7.38235283e+00, 8.61764717e+00, 6.23529434e+00, + 1.26470585e+01, 2.55588226e+01, 2.81470585e+01, 2.60588226e+01, + 1.14117651e+01, 7.73529434e+00, 2.73529410e+00, 5.08823538e+00, + 1.63823528e+01, 2.54411774e+01, 1.83235302e+01, 9.17647076e+00, + 5.58823526e-01, 4.11764711e-01, 6.76470578e-01, 2.58823538e+00, + 8.26470566e+00, 4.52941179e+00, 2.94117641e+00, 9.70588207e-01, + 2.55882359e+01, 1.32647057e+01, 7., 1.41764708e+01, + 3.82058830e+01, 2.58235302e+01, 1.96470585e+01, 1.34117651e+01, + 1.12617645e+02, 4.67058830e+01, 1.18529415e+01, 1.02352943e+01, + 5.76176453e+01, 6.61470566e+01, 5.31764717e+01, 5.58235283e+01, + 5.41764717e+01, 2.96764698e+01, 3.70588231e+00, 5.52941179e+00, + 9.22352905e+01, 9.47647095e+01, 4.02647057e+01, 1.87352943e+01, + 5.00000000e-01, 4.41176474e-01, 8.52941155e-01, 2.02941179e+00, + 6.70588255e+00, 4.67647076e+00, 2.05882359e+00, 7.64705896e-01, + 2.13529415e+01, 1.23235292e+01, 4.17647076e+00, 1.09411764e+01, + 4.82941170e+01, 2.61176472e+01, 8.11764717e+00, 5.76470566e+00, + 139., 8.10882339e+01, 2.88235283e+00, 7.73529434e+00, + 8.45588226e+01, 5.05588226e+01, 1.15588236e+01, 2.13235302e+01, + 9.38823547e+01, 4.71764717e+01, 1.55882359e+00, 4.26470566e+00, + 1.37205887e+02, 9.70294113e+01, 1.68823528e+01, 13., + 2.05882356e-01, 2.35294119e-01, 5.29411793e-01, 2.08823538e+00, + 4.41176462e+00, 2.58823538e+00, 1.61764705e+00, 6.47058845e-01, + 9.61764717e+00, 5.17647076e+00, 3.08823538e+00, 5.91176462e+00, + 3.43529396e+01, 2.30294113e+01, 8.47058868e+00, 5.61764717e+00, + 1.32852936e+02, 6.32941170e+01, 2.14705873e+00, 4.20588255e+00, + 6.62058792e+01, 3.42058830e+01, 4.35294104e+00, 1.13235292e+01, + 1.11294121e+02, 4.84705887e+01, 5.29411793e-01, 4.55882359e+00, + 1.32823532e+02, 7.29411774e+01, 1.79411769e+00, 8.23529434e+00, + 5.16619720e+01, 7.87464752e+01, 1.61690140e+01, 3.22535205e+00, + 1.43661976e+00, 3.32394361e+00, 1.50704229e+00, 5.07042265e+00, + 2.69154930e+01, 5.30985909e+01, 2.74647884e+01, 1.04507046e+01, + 6.74647903e+00, 1.02394361e+01, 9.87323952e+00, 9.40845108e+00, + 1.39154930e+01, 1.82816906e+01, 2.26901417e+01, 1.61126766e+01, + 1.01126757e+01, 1.01549292e+01, 1.47887325e+01, 1.55915489e+01, + 1.77464790e+01, 1.26478872e+01, 1.99859161e+01, 2.79577465e+01, + 1.54507046e+01, 1.00845070e+01, 9.42253494e+00, 1.44788733e+01, + 2.84788723e+01, 1.10014084e+02, 3.57746468e+01, 2.11267614e+00, + 2.91549301e+00, 7.49295759e+00, 2.40845060e+00, 1.76056337e+00, + 1.95070419e+01, 1.08915489e+02, 8.91690140e+01, 7.23943663e+00, + 2.45070434e+00, 6.12676048e+00, 7.47887325e+00, 4.19718313e+00, + 1.04647884e+01, 5.73661957e+01, 1.13042252e+02, 3.04788723e+01, + 6.81690121e+00, 6.12676048e+00, 1.08309860e+01, 1.07464790e+01, + 5.54929590e+00, 1.32957745e+01, 9.52394333e+01, 7.69154892e+01, + 1.28873243e+01, 4.81690121e+00, 5.01408434e+00, 6.61971807e+00, + 1.03521128e+01, 5.49859161e+01, 3.15070419e+01, 2.54929566e+00, + 8.46478844e+00, 7.76901398e+01, 2.56197186e+01, 2.36619711e+00, + 7.36619711e+00, 7.63521118e+01, 9.60845108e+01, 7.23943663e+00, + 1.56338024e+00, 1.25492954e+01, 1.42957745e+01, 1.69014084e+00, + 3.08450699e+00, 4.74084511e+01, 1.21408447e+02, 2.54507046e+01, + 1.87323940e+00, 2.23943663e+00, 8.30985928e+00, 2.28169012e+00, + 1.87323940e+00, 1.09859152e+01, 9.67323914e+01, 5.14507027e+01, + 3.49295783e+00, 1.15492952e+00, 9.07042217e+00, 8.69014072e+00, + 3.16901398e+00, 2.95352116e+01, 1.32112675e+01, 1.66197181e+00, + 4.85915470e+00, 1.22704224e+02, 9.19154892e+01, 2.53521132e+00, + 3., 1.85211277e+01, 2.32957745e+01, 3.33802819e+00, + 2.49295783e+00, 8.91126785e+01, 1.09788734e+02, 3.57746482e+00, + 3.29577470e+00, 1.39577465e+01, 3.10704231e+01, 6.98591566e+00, + 2.60563374e+00, 2.39436626e+01, 1.01042252e+02, 1.63943653e+01, + 2.28169012e+00, 5.88732386e+00, 2.12253513e+01, 1.06619720e+01, + 2.18309855e+00, 3.50704217e+00, 9.42253494e+01, 5.24366188e+01, + 2.49504948e+00, 4.27722788e+00, 2.71287131e+00, 9.00990129e-01, + 1.69306934e+00, 2.81188130e+00, 3.29702973e+00, 1.67326736e+00, + 3.84257431e+01, 4.39009895e+01, 2.70396042e+01, 1.57722769e+01, + 2.22178211e+01, 3.77326736e+01, 4.54950485e+01, 3.29009895e+01, + 6.93168335e+01, 6.16732674e+01, 2.95841579e+01, 1.90099010e+01, + 2.67722778e+01, 4.30693054e+01, 5.65148506e+01, 5.77128716e+01, + 4.80990105e+01, 4.36831665e+01, 2.49702969e+01, 1.74455452e+01, + 2.41881180e+01, 3.60098991e+01, 4.92475243e+01, 5.07029686e+01, + 4.17821789e+00, 6.23762369e+00, 3.70297027e+00, 1.22772276e+00, + 2.00990105e+00, 3.60396051e+00, 4.87128735e+00, 2.95049500e+00, + 5.70495033e+01, 7.00297012e+01, 3.94059410e+01, 1.85247517e+01, + 2.42079201e+01, 4.50792084e+01, 5.41287117e+01, 3.89504967e+01, + 8.69306946e+01, 8.86138611e+01, 4.69207916e+01, 2.65247517e+01, + 3.43960381e+01, 5.62772293e+01, 6.60792084e+01, 6.12970314e+01, + 6.84752502e+01, 6.72574234e+01, 3.77623749e+01, 2.60792084e+01, + 2.68019810e+01, 3.91782188e+01, 4.99306946e+01, 5.61782188e+01, + 5.52475262e+00, 6.81188107e+00, 3.44554448e+00, 9.50495064e-01, + 2., 4.57425737e+00, 5.95049524e+00, 3.67326736e+00, + 5.91188126e+01, 6.57029724e+01, 3.67227707e+01, 1.83465347e+01, + 2.53465347e+01, 4.89504967e+01, 5.85346527e+01, 4.25049515e+01, + 8.28811874e+01, 8.45049515e+01, 4.45247536e+01, 2.83069305e+01, + 3.35049515e+01, 5.72475243e+01, 7.06237640e+01, 6.20594063e+01, + 6.86336670e+01, 6.52970276e+01, 4.13168335e+01, 3.53960381e+01, + 2.85940590e+01, 3.28316841e+01, 5.22376251e+01, 6.04356422e+01, + 4.06930685e+00, 4.96039581e+00, 2.86138606e+00, 1.11881185e+00, + 1.78217816e+00, 3.32673264e+00, 4.55445528e+00, 2.54455447e+00, + 4.55841599e+01, 5.42970314e+01, 2.57524757e+01, 1.32376242e+01, + 1.98316841e+01, 3.53168335e+01, 3.87029686e+01, 2.78811874e+01, + 6.35643578e+01, 6.55643539e+01, 3.45940590e+01, 2.66336632e+01, + 2.69603958e+01, 4.25841599e+01, 5.09702988e+01, 4.71584167e+01, + 5.70396042e+01, 4.63762360e+01, 3.48514862e+01, 4.55148506e+01, + 2.64455452e+01, 2.54950504e+01, 4.30198021e+01, 5.60990105e+01, + 7.49253750e+00, 4.38805962e+00, 3.67164183e+00, 4.17910433e+00, + 4.68656731e+00, 5.07462692e+00, 6.38805962e+00, 7.01492548e+00, + 7.98507452e+00, 6.17910433e+00, 4.82089567e+00, 5.56716394e+00, + 7.14925385e+00, 8.64179134e+00, 1.05223885e+01, 8.11940289e+00, + 6.97014904e+00, 5.46268654e+00, 4.47761202e+00, 5.26865673e+00, + 7.88059711e+00, 9.20895481e+00, 1.07164183e+01, 8.40298462e+00, + 4.58208942e+00, 3.95522380e+00, 4.52238798e+00, 7.43283606e+00, + 6.85074615e+00, 7.44776106e+00, 6.86567163e+00, 5.19402981e+00, + 1.49253731e+01, 9.47761154e+00, 6.40298510e+00, 7.31343269e+00, + 9.04477596e+00, 1.07761192e+01, 1.25671644e+01, 1.08208952e+01, + 1.18208952e+01, 1.05671644e+01, 9.95522404e+00, 1.10597019e+01, + 1.31791048e+01, 1.56865673e+01, 1.96268654e+01, 1.46865673e+01, + 1.12238808e+01, 9.64179134e+00, 1.36268654e+01, 1.87910442e+01, + 1.68059692e+01, 1.59552240e+01, 1.68955231e+01, 1.43432837e+01, + 1.06268654e+01, 5.32835817e+00, 1.58507462e+01, 4.08507462e+01, + 1.69402981e+01, 1.11044779e+01, 1.41044779e+01, 2.61940308e+01, + 1.31044779e+01, 1.01940298e+01, 1.35074625e+01, 1.45522385e+01, + 8.77611923e+00, 1.13731346e+01, 1.63880596e+01, 1.24925375e+01, + 1.22238808e+01, 1.37761192e+01, 2.69402981e+01, 3.45820885e+01, + 1.65223885e+01, 1.50895519e+01, 2.37910442e+01, 1.88358212e+01, + 1.44328356e+01, 1.02835817e+01, 4.35671654e+01, 7.04925385e+01, + 1.88059692e+01, 1.66567173e+01, 4.76119385e+01, 5.32985077e+01, + 2.22537308e+01, 5.47761202e+00, 3.84029846e+01, 8.64477615e+01, + 1.70597019e+01, 9.58208942e+00, 9.40746231e+01, 1.42477615e+02, + 7.58208942e+00, 5.88059711e+00, 2.60895519e+01, 3.38208961e+01, + 8.31343269e+00, 1.47164183e+01, 4.42835808e+01, 4.02985077e+01, + 9.44776154e+00, 7.01492548e+00, 5.04029846e+01, 6.44477615e+01, + 1.05223885e+01, 17., 1.14462685e+02, 1.31716415e+02, + 1.26716413e+01, 9., 6.06268654e+01, 7.84477615e+01, + 9.19402981e+00, 2.31044769e+01, 1.50567169e+02, 1.47014923e+02, + 2.00447769e+01, 1.18059702e+01, 7.43432846e+01, 1.17119400e+02, + 1.30597019e+01, 1.12537317e+01, 1.23059700e+02, 1.48074631e+02, + 2.88571434e+01, 2.56666660e+01, 1.65238094e+01, 1.15555553e+01, + 1.39206352e+01, 2.35079365e+01, 3.90793648e+01, 3.07460308e+01, + 5.57777786e+01, 4.72380943e+01, 2.38412704e+01, 1.84444447e+01, + 2.30158730e+01, 3.69523811e+01, 5.66190491e+01, 5.53968239e+01, + 5.01111107e+01, 3.70158730e+01, 2.21428566e+01, 2.13650799e+01, + 2.34444447e+01, 4.11428566e+01, 6.02698402e+01, 6.16349220e+01, + 3.69047623e+01, 5.82539673e+01, 2.01746025e+01, 1.71904755e+01, + 4.88095245e+01, 8.71428604e+01, 5.20952377e+01, 3.53968239e+01, + 3.73809509e+01, 3.78571434e+01, 2.59206352e+01, 1.62539692e+01, + 1.53968258e+01, 2.94603176e+01, 4.43015862e+01, 3.46507950e+01, + 6.93174591e+01, 6.07619057e+01, 3.78571434e+01, 2.55873013e+01, + 2.75396824e+01, 4.73968239e+01, 6.81111145e+01, 64., + 6.72698441e+01, 5.87142868e+01, 3.70158730e+01, 2.90793648e+01, + 2.79682541e+01, 3.46666679e+01, 5.66031761e+01, 6.85238113e+01, + 4.43015862e+01, 4.01111107e+01, 2.76825390e+01, 2.71587296e+01, + 4.69841270e+01, 5.82857132e+01, 5.22539673e+01, 4.80793648e+01, + 4.08095245e+01, 4.23650780e+01, 2.63968258e+01, 1.55238094e+01, + 1.73650799e+01, 3.29365082e+01, 4.02857132e+01, 3.55555573e+01, + 6.12063484e+01, 6.35079384e+01, 4.28888893e+01, 2.93015881e+01, + 3.14126987e+01, 5.32222214e+01, 6.42857132e+01, 5.65714302e+01, + 6.18253975e+01, 6.59841232e+01, 4.75873032e+01, 3.47936516e+01, + 2.87142849e+01, 3.90476189e+01, 5.65396843e+01, 5.67142868e+01, + 5.20634918e+01, 4.96507950e+01, 3.76984138e+01, 3.22539673e+01, + 3.56825409e+01, 3.22063484e+01, 4.17142868e+01, 5.02380943e+01, + 2.72063484e+01, 3.27301598e+01, 1.83968258e+01, 1.19047623e+01, + 1.60317459e+01, 2.56031742e+01, 2.63174610e+01, 1.81111107e+01, + 4.67301598e+01, 5.50793648e+01, 3.28730164e+01, 2.24444447e+01, + 2.47142849e+01, 3.49047623e+01, 3.83650780e+01, 3.49682541e+01, + 4.09047623e+01, 4.33650780e+01, 3.63650780e+01, 27., + 2.58730164e+01, 3.36984138e+01, 4.57460327e+01, 4.04603157e+01, + 3.97301598e+01, 3.66984138e+01, 3.32539673e+01, 2.33968258e+01, + 2.10317459e+01, 2.16984119e+01, 3.15238094e+01, 3.75873032e+01, + 1.87500000e+00, 1., 7.50000000e-01, 9.37500000e-01, + 2.12500000e+00, 2.31250000e+00, 3.43750000e+00, 3.71875000e+00, + 3.03125000e+00, 5.62500000e-01, 5.62500000e-01, 1.06250000e+00, + 2.59375000e+00, 2.15625000e+00, 3.06250000e+00, 5.53125000e+00, + 3.43750000e+00, 9.06250000e-01, 7.81250000e-01, 1.50000000e+00, + 4.18750000e+00, 3., 2.18750000e+00, 3.90625000e+00, + 1.65625000e+00, 6.25000000e-01, 5.31250000e-01, 1.15625000e+00, + 5.28125000e+00, 2.90625000e+00, 5.37500000e+00, 2.62500000e+00, + 1.04375000e+01, 1.63750000e+01, 2.02187500e+01, 8.78125000e+00, + 6.40625000e+00, 1.15312500e+01, 1.53125000e+01, 1.56562500e+01, + 1.11875000e+01, 1.51562500e+01, 2.56562500e+01, 1.04375000e+01, + 1.12812500e+01, 1.45937500e+01, 1.83437500e+01, 2.17812500e+01, + 1.21250000e+01, 1.16250000e+01, 1.86250000e+01, 1.07812500e+01, + 1.56875000e+01, 1.54687500e+01, 1.39062500e+01, 18., + 8.37500000e+00, 7.93750000e+00, 9.84375000e+00, 7.78125000e+00, + 9.90625000e+00, 8.21875000e+00, 1.09687500e+01, 9.78125000e+00, + 11., 3.51875000e+01, 8.25625000e+01, 2.55312500e+01, + 6.50000000e+00, 1.95625000e+01, 6.69687500e+01, 45., + 9.34375000e+00, 4.87187500e+01, 9.86250000e+01, 2.18437500e+01, + 8.40625000e+00, 3.92500000e+01, 8.16875000e+01, 2.44062500e+01, + 1.01562500e+01, 5.40937500e+01, 7.28125000e+01, 1.05625000e+01, + 1.30312500e+01, 3.50937500e+01, 5.42812500e+01, 1.49375000e+01, + 7.96875000e+00, 2.46250000e+01, 2.66250000e+01, 7.90625000e+00, + 1.14375000e+01, 1.80312500e+01, 2.00625000e+01, 9.31250000e+00, + 1.41250000e+01, 2.25312500e+01, 8.74687500e+01, 3.75625000e+01, + 1.12812500e+01, 5.32812500e+01, 1.48312500e+02, 1.04562500e+02, + 8.34375000e+00, 3.53750000e+01, 9.22500000e+01, 1.93125000e+01, + 8.28125000e+00, 1.11687500e+02, 1.49437500e+02, 33., + 6.62500000e+00, 6.21562500e+01, 6.59375000e+01, 8.90625000e+00, + 1.03125000e+01, 1.24093750e+02, 1.46875000e+02, 9.21875000e+00, + 8.46875000e+00, 3.82500000e+01, 2.94062500e+01, 4.12500000e+00, + 1.05312500e+01, 8.20625000e+01, 6.60625000e+01, 5.93750000e+00, + 2.69848480e+01, 3.01666660e+01, 3.75303040e+01, 3.88484840e+01, + 1.61666660e+01, 1.11212120e+01, 2.35151520e+01, 3.53636360e+01, + 3.96060600e+01, 4.76666679e+01, 5.69545441e+01, 5.53787880e+01, + 3.77575760e+01, 2.31818180e+01, 2.69696960e+01, 3.03939400e+01, + 5.15454559e+01, 5.75909081e+01, 6.25303040e+01, 6.17575760e+01, + 5.00606079e+01, 3.63030319e+01, 26., 2.32727280e+01, + 4.63484840e+01, 7.14545441e+01, 5.69545441e+01, 3.30606079e+01, + 4.37121201e+01, 6.81515121e+01, 2.38939400e+01, 1.85909100e+01, + 3.19090900e+01, 4.58939400e+01, 5.87424240e+01, 4.48333321e+01, + 2.11363640e+01, 1.42424240e+01, 1.92727280e+01, 2.81969700e+01, + 4.58636360e+01, 5.10454559e+01, 8.06818161e+01, 7.99090881e+01, + 3.84090919e+01, 2.19545460e+01, 2.55454540e+01, 3.78333321e+01, + 5.53787880e+01, 5.61212120e+01, 6.71060638e+01, 7.18787842e+01, + 4.68636360e+01, 3.50151520e+01, 3.20151520e+01, 3.87575760e+01, + 4.02575760e+01, 5.49545441e+01, 6.43484879e+01, 5.04393921e+01, + 3.42575760e+01, 3.30303040e+01, 2.46666660e+01, 3.25606079e+01, + 3.68333321e+01, 4.02272720e+01, 5.70606079e+01, 5.02727280e+01, + 2.48484840e+01, 1.71060600e+01, 2.11060600e+01, 3.13939400e+01, + 5.58030319e+01, 5.59393921e+01, 7.37575760e+01, 7.62424240e+01, + 3.49242439e+01, 2.06363640e+01, 2.96060600e+01, 4.85303040e+01, + 5.57272720e+01, 5.06363640e+01, 6.64090881e+01, 7.47272720e+01, + 3.93333321e+01, 2.29848480e+01, 2.93484840e+01, 4.58939400e+01, + 3.73484840e+01, 3.74393921e+01, 5.69545441e+01, 6.09242439e+01, + 2.98333340e+01, 1.93787880e+01, 2.26666660e+01, 3.47727280e+01, + 1.94696960e+01, 1.83939400e+01, 2.63939400e+01, 3.10757580e+01, + 1.63787880e+01, 1.02878790e+01, 1.42878790e+01, 2.08333340e+01, + 3.43939400e+01, 3.43333321e+01, 4.01363640e+01, 4.52272720e+01, + 2.43333340e+01, 1.17424240e+01, 1.97727280e+01, 3.29090919e+01, + 3.20151520e+01, 3.16060600e+01, 4.39696960e+01, 5.29090919e+01, + 2.67424240e+01, 1.19848480e+01, 1.63939400e+01, 2.86363640e+01, + 3.04848480e+01, 2.35606060e+01, 3.13333340e+01, 3.43181801e+01, + 1.78181820e+01, 1.11666670e+01, 1.54090910e+01, 2.42121220e+01, + 1.56885242e+01, 4.43770485e+01, 3.65573764e+00, 2.22950816e+00, + 3.63442612e+01, 6.24754105e+01, 5.19672108e+00, 9.01639342e-01, + 7.87704926e+01, 1.08950821e+02, 8.34426212e+00, 4.26229525e+00, + 1.74426231e+01, 2.41639347e+01, 3.68852448e+00, 4.88524580e+00, + 9.04918060e+01, 8.63934402e+01, 1.37868853e+01, 4.27868843e+00, + 5.42622948e+00, 5.95081949e+00, 5.18032789e+00, 1.38360653e+01, + 3.76885262e+01, 3.31147537e+01, 6.65573788e+00, 2.24590158e+00, + 1.96721315e+00, 2.03278685e+00, 2.78688526e+00, 1.05573769e+01, + 1.02131147e+01, 1.25573769e+01, 1.90163934e+00, 7.19672108e+00, + 9.96065598e+01, 6.82950821e+01, 2.72131157e+00, 1.31147540e+00, + 1.09049179e+02, 8.05245895e+01, 4.40983629e+00, 8.22950840e+00, + 4.75573769e+01, 2.58688526e+01, 2.18032789e+00, 4.44262314e+00, + 1.18442619e+02, 8.38524628e+01, 9.93442631e+00, 4.75409842e+00, + 1.40819674e+01, 7.96721315e+00, 7.62295103e+00, 2.08524590e+01, + 5.90983620e+01, 3.61311493e+01, 6.65573788e+00, 2.24590158e+00, + 1.93442619e+00, 1.98360658e+00, 3.65573764e+00, 1.74754105e+01, + 8.39344215e+00, 4.60655737e+00, 2.52459025e+00, 3.53934441e+01, + 1.15475410e+02, 2.62295074e+01, 1.78688526e+00, 1.65573776e+00, + 1.11032784e+02, 3.03442631e+01, 4.85245895e+00, 1.97377052e+01, + 5.89508209e+01, 1.19836063e+01, 1.72131145e+00, 1.36065578e+01, + 1.24163933e+02, 4.28360672e+01, 6.32786894e+00, 4.90163946e+00, + 1.56885242e+01, 6.04918051e+00, 6.78688526e+00, 3.61475410e+01, + 5.89836082e+01, 2.32622948e+01, 4.40983629e+00, 2.09836054e+00, + 2.44262290e+00, 2.27868843e+00, 4.13114738e+00, 2.58032780e+01, + 8.42622948e+00, 2.18032789e+00, 3.11475420e+00, 6.71147537e+01, + 8.35737686e+01, 5.06557369e+00, 5.08196712e-01, 4.52459002e+00, + 1.06754097e+02, 7.62295103e+00, 4.34426212e+00, 2.48524590e+01, + 3.54590149e+01, 3.18032789e+00, 1.54098356e+00, 4.82622948e+01, + 1.18049179e+02, 1.62622948e+01, 3.86885238e+00, 5.63934422e+00, + 9.01639366e+00, 3.04918027e+00, 5.75409842e+00, 67., + 4.27213097e+01, 1.07868853e+01, 2.34426236e+00, 1.80327868e+00, + 2.31147552e+00, 2.26229501e+00, 4.44262314e+00, 2.63770485e+01, + 6.51351357e+00, 1.05945950e+01, 7.67567587e+00, 6.16216230e+00, + 2.46486492e+01, 6.76216202e+01, 6.48918915e+01, 1.61081085e+01, + 9.86486530e+00, 1.44594593e+01, 4.70270252e+00, 3.81081080e+00, + 6.76756744e+01, 1.25648651e+02, 5.48648643e+01, 8.16216183e+00, + 1.68108101e+01, 1.68378372e+01, 3.86486483e+00, 3.78378367e+00, + 3.18918915e+01, 4.54324341e+01, 2.68918915e+01, 1.34864864e+01, + 1.68648643e+01, 1.05675678e+01, 1.05405402e+00, 1.16216218e+00, + 3.18918920e+00, 5.51351357e+00, 8.43243217e+00, 1.09729729e+01, + 1.67027035e+01, 14., 1.47027025e+01, 1.28918915e+01, + 1.88378372e+01, 2.27027035e+01, 2.16756763e+01, 2.09189186e+01, + 2.92162170e+01, 1.47837839e+01, 9.70270252e+00, 2.44864864e+01, + 1.20378380e+02, 1.21594597e+02, 4.64864883e+01, 3.01891899e+01, + 1.57297297e+01, 1.19189186e+01, 3.64864874e+00, 1.65135136e+01, + 1.10621620e+02, 8.37297287e+01, 1.62972965e+01, 6.81081104e+00, + 1.02162161e+01, 5.83783770e+00, 1.94594598e+00, 2.29729724e+00, + 7.16216230e+00, 7.18918896e+00, 4.32432413e+00, 3.16216207e+00, + 1.84324322e+01, 2.11621628e+01, 3.40270271e+01, 3.37297287e+01, + 1.44864864e+01, 1.85135136e+01, 3.08648643e+01, 2.81621628e+01, + 3.77567558e+01, 2.11621628e+01, 4.25945930e+01, 1.27297295e+02, + 1.15378380e+02, 2.68378372e+01, 2.14324322e+01, 5.35135117e+01, + 1.18378382e+01, 4.51351357e+00, 7.27027035e+00, 8.82972946e+01, + 1.14918922e+02, 2.16486492e+01, 7., 1.81081085e+01, + 1.08918915e+01, 3.05405402e+00, 3.13513517e+00, 8.59459496e+00, + 9.02702713e+00, 3.56756759e+00, 1.35135138e+00, 4.94594574e+00, + 4.45945930e+00, 2.39189186e+01, 9.79189224e+01, 8.85945969e+01, + 8.86486530e+00, 1.23513517e+01, 2.89459457e+01, 2.41891899e+01, + 1.05135136e+01, 3.62162161e+00, 6.66486511e+01, 1.29783783e+02, + 2.63243237e+01, 3.48648643e+00, 1.66756763e+01, 2.86216221e+01, + 7.86486483e+00, 2.16216207e+00, 1.20540543e+01, 5.15945930e+01, + 1.54054050e+01, 1.81081080e+00, 6.97297287e+00, 1.92972965e+01, + 1.37297297e+01, 1.18918920e+00, 4.62162161e+00, 8.59459496e+00, + 3.35135126e+00, 5.67567587e-01, 4.86486495e-01, 1.64594593e+01, + 3.73749995e+00, 3.62500000e+00, 3.43250008e+01, 5.10999985e+01, + 1.04250002e+01, 4.65000010e+00, 8.84625015e+01, 1.25824997e+02, + 1.65499992e+01, 2.20000005e+00, 4.94500008e+01, 1.45574997e+02, + 1.84375000e+01, 3.38750005e+00, 6.07249985e+01, 1.43875000e+02, + 1.72250004e+01, 3.33750010e+00, 1.61124992e+01, 1.40425003e+02, + 3.56624985e+01, 3.45000005e+00, 1.70750008e+01, 7.76750031e+01, + 2.17999992e+01, 3.82500005e+00, 1.79999995e+00, 1.46499996e+01, + 5.42500019e+00, 2.53749990e+00, 1.24750004e+01, 4.51250000e+01, + 5.11250019e+00, 4.61250019e+00, 1.35412506e+02, 1.39475006e+02, + 4.01249981e+00, 5.26249981e+00, 9.61750031e+01, 9.99749985e+01, + 1.21250000e+01, 3.97499990e+00, 8.25875015e+01, 1.42225006e+02, + 6.77500010e+00, 6.59999990e+00, 4.21124992e+01, 6.80625000e+01, + 2.22374992e+01, 4.84999990e+00, 8.21249962e+00, 3.37249985e+01, + 4.68750000e+00, 6., 3.29249992e+01, 6.77249985e+01, + 2.09375000e+01, 4.88749981e+00, 2.56250000e+00, 2.48749995e+00, + 3.28749990e+00, 4.63749981e+00, 1.55874996e+01, 5.02125015e+01, + 9.78750038e+00, 2.88750005e+00, 3.23624992e+01, 2.54874992e+01, + 3.53749990e+00, 9.50000000e+00, 3.65125008e+01, 3.28624992e+01, + 1.50249996e+01, 4.38749981e+00, 4.91249990e+00, 6.12500000e+00, + 4.17500019e+00, 8.50000000e+00, 4.23375015e+01, 5.50750008e+01, + 1.76124992e+01, 5.57499981e+00, 3.17499995e+00, 3.68750000e+00, + 5.28749990e+00, 8.02499962e+00, 2.85000000e+01, 5.72999992e+01, + 1.63374996e+01, 4.94999981e+00, 3.58750010e+00, 4.12500000e+00, + 5.32499981e+00, 5.84999990e+00, 1.41250000e+01, 3.70750008e+01, + 4.13749981e+00, 1.62500000e+00, 8.62500012e-01, 1.01250005e+00, + 1.62500000e+00, 4.02500010e+00, 2.06375008e+01, 1.73250008e+01, + 6.17500019e+00, 2.32500005e+00, 1.50000000e+00, 1.31250000e+00, + 1.97500002e+00, 3.66249990e+00, 2.10874996e+01, 2.66625004e+01, + 7.34999990e+00, 2.37500000e+00, 1.70000005e+00, 1.82500005e+00, + 2.70000005e+00, 3.90000010e+00, 1.46499996e+01, 2.61749992e+01, + 6.30000019e+00, 2.04999995e+00, 2., 2.54999995e+00, + 3.23749995e+00, 3.62500000e+00, 6.65000010e+00, 1.54375000e+01, + 3.56470604e+01, 8.39705849e+00, 1.69705887e+01, 2.83823528e+01, + 3.77941179e+00, 2.10294127e+00, 3.07205887e+01, 8.87647095e+01, + 5.90294113e+01, 1.51470585e+01, 1.19117651e+01, 6.27941179e+00, + 1.51470590e+00, 4.48529434e+00, 7.18382339e+01, 1.15367645e+02, + 3.69705887e+01, 2.22500000e+01, 1.78382359e+01, 1.26323528e+01, + 9.72058868e+00, 3.16617641e+01, 1.08088234e+02, 8.45294113e+01, + 6.51470566e+00, 1.31176472e+01, 9.69117641e+00, 9.39705849e+00, + 1.68823528e+01, 9.14117661e+01, 9.12794113e+01, 1.70882359e+01, + 8.52647095e+01, 1.64705887e+01, 6.02941179e+00, 1.18970585e+01, + 4.04411745e+00, 2.50000000e+00, 1.46911764e+01, 9.63970566e+01, + 9.61029434e+01, 3.78088226e+01, 1.22941179e+01, 5.97058821e+00, + 5.01470566e+00, 6.07352924e+00, 2.70588226e+01, 9.79852905e+01, + 4.78970604e+01, 3.72352943e+01, 2.91323528e+01, 1.87205887e+01, + 1.47352943e+01, 1.69411774e+01, 3.11029415e+01, 4.98676453e+01, + 1.99558830e+01, 2.15588226e+01, 1.43088236e+01, 1.25000000e+01, + 2.31764698e+01, 4.44558830e+01, 2.72352943e+01, 1.82500000e+01, + 9.61176453e+01, 3.02794113e+01, 5.29411745e+00, 5.54411745e+00, + 6.50000000e+00, 7.58823538e+00, 6.45588255e+00, 4.95588226e+01, + 1.01323532e+02, 6.92058792e+01, 1.18382349e+01, 4.33823538e+00, + 5.38235283e+00, 6.41176462e+00, 1.16470585e+01, 4.45588226e+01, + 4.98235283e+01, 4.33382339e+01, 1.73088226e+01, 1.08823528e+01, + 1.66029415e+01, 2.09411774e+01, 2.73823528e+01, 3.51323547e+01, + 3.69117661e+01, 25., 1.17500000e+01, 1.21176472e+01, 22., + 2.78823528e+01, 3.07647057e+01, 3.75441170e+01, 6.02205887e+01, + 4.00882339e+01, 5.02941179e+00, 3.26470590e+00, 8.30882359e+00, + 2.41470585e+01, 1.06323528e+01, 1.45147057e+01, 7.22205887e+01, + 7.80882339e+01, 1.51617651e+01, 2.58823538e+00, 2.69117641e+00, + 6.61764717e+00, 1.00441179e+01, 1.79705887e+01, 4.87647057e+01, + 6.68088226e+01, 3.23970604e+01, 9.97058868e+00, 7.94117641e+00, + 8.92647076e+00, 1.68676472e+01, 3.06911774e+01, 2.72794113e+01, + 2.81323528e+01, 3.36764717e+01, 4.19264717e+01, 22., + 1.07205887e+01, 1.56911764e+01, 3.07352943e+01, 2.80645156e+00, + 2.51612902e+00, 3.64516139e+00, 7.22580624e+00, 8.74193573e+00, + 6.19354820e+00, 3.51612902e+00, 3.22580647e+00, 3.61290312e+00, + 3.09677410e+00, 6.22580624e+00, 3.54838715e+01, 95., + 2.29354839e+01, 4.22580624e+00, 3.09677410e+00, 7.87096786e+00, + 2.16129041e+00, 1.74193549e+00, 3.43870964e+01, 1.15419357e+02, + 3.55161285e+01, 3.74193549e+00, 6.74193525e+00, 6.75161285e+01, + 7.06451607e+00, 2.93548393e+00, 8.58064556e+00, 1.44193544e+01, + 5.77419376e+00, 6.09677410e+00, 3.15161285e+01, 4.67741919e+00, + 3.74193549e+00, 3.96774197e+00, 1.28064518e+01, 1.89677410e+01, + 9.93548393e+00, 5.51612902e+00, 3.90322590e+00, 5.54838705e+00, + 6.25806475e+00, 7.03225803e+00, 5.34516144e+01, 1.18967743e+02, + 4.38064499e+01, 6.90322590e+00, 2.87096763e+00, 1.44838705e+01, + 1.36774197e+01, 3.96774197e+00, 1.75483875e+01, 133., + 1.18032257e+02, 6.67741919e+00, 5.38709688e+00, 9.33871002e+01, + 3.26129036e+01, 4.67741919e+00, 6.41935492e+00, 2.58709679e+01, + 4.36774178e+01, 1.13225803e+01, 2.39354839e+01, 3.09677410e+00, + 2.96774197e+00, 4.03225803e+00, 1.12580643e+01, 2.66129036e+01, + 1.62903233e+01, 7.48387098e+00, 4.19354820e+00, 3.61290312e+00, + 6.58064508e+00, 8.70967770e+00, 4.78064499e+01, 1.18451614e+02, + 4.88387108e+01, 9., 3.41935492e+00, 1.64193554e+01, + 3.94838715e+01, 1.36774197e+01, 2.23225803e+01, 1.14580643e+02, + 1.23967743e+02, 1.30322580e+01, 6.25806475e+00, 5.94838715e+01, + 5.04838715e+01, 6.48387098e+00, 2.67741942e+00, 2.85483875e+01, + 1.10193550e+02, 3.05806446e+01, 7.83870983e+00, 2.48387098e+00, + 2.06451607e+00, 2.38709688e+00, 6.29032278e+00, 1.95161285e+01, + 1.91290321e+01, 6.67741919e+00, 2.80645156e+00, 2.03225803e+00, + 2.77419353e+00, 4.32258081e+00, 1.95483875e+01, 9.88064499e+01, + 7.35161285e+01, 1.37419357e+01, 3.96774197e+00, 1.06129036e+01, + 2.70645161e+01, 1.04838705e+01, 1.81612911e+01, 6.00322571e+01, + 8.07096786e+01, 2.68064518e+01, 15., 1.66129036e+01, + 4.25161285e+01, 1.06129036e+01, 4.22580624e+00, 1.66774197e+01, + 1.00161293e+02, 3.40645180e+01, 9.16129017e+00, 6.14130449e+00, + 4.27173901e+00, 2.98913050e+00, 3.13043475e+00, 4.18478251e+00, + 6., 8.02173901e+00, 5.56521749e+00, 8.59782600e+00, + 5.67391300e+00, 4.69565201e+00, 7.83695650e+00, 7.30434799e+00, + 7.50000000e+00, 8.88043499e+00, 9.17391300e+00, 1.46956520e+01, + 4.75000000e+00, 5.07608700e+00, 2.30217400e+01, 9.42391300e+00, + 6.22826099e+00, 9.88043499e+00, 4.23804359e+01, 1.98913040e+01, + 2.47826076e+00, 4.58695650e+00, 3.30652161e+01, 9.92391300e+00, + 5.08695650e+00, 1.68260860e+01, 1.14858696e+02, 7.73913050e+00, + 5.14130449e+00, 5.11956501e+00, 6.64130449e+00, 5.54347849e+00, + 7.72826099e+00, 9.53260899e+00, 8.21739101e+00, 1.42500000e+01, + 5.52173901e+00, 6.76086950e+00, 3.07173920e+01, 1.09021740e+01, + 9.15217400e+00, 1.53369570e+01, 4.95652161e+01, 2.37608700e+01, + 2.13043475e+00, 7.79347849e+00, 6.05543480e+01, 1.23260870e+01, + 3.52173924e+00, 2.08913040e+01, 1.44902176e+02, 1.46630430e+01, + 9.89130437e-01, 8.22826099e+00, 1.12391304e+02, 1.86630440e+01, + 3.78260875e+00, 1.78260860e+01, 1.23250000e+02, 1.04239130e+01, + 4.81521749e+00, 8.23913002e+00, 1.89673920e+01, 6.03260851e+00, + 7.32608700e+00, 2.23913040e+01, 3.76630440e+01, 2.32608700e+01, + 4.93478251e+00, 1.00760870e+01, 5.01739120e+01, 1.07282610e+01, + 5.78260851e+00, 3.35978279e+01, 1.39847824e+02, 2.01086960e+01, + 2.13043475e+00, 1.19347830e+01, 1.23510872e+02, 1.90760860e+01, + 1.47826087e+00, 1.94565220e+01, 1.35902176e+02, 8.48913002e+00, + 1.21739125e+00, 1.45543480e+01, 1.42836960e+02, 2.17608700e+01, + 1.53260875e+00, 7.31521749e+00, 6.27065201e+01, 1.46739130e+01, + 6.20652151e+00, 8.73913002e+00, 2.12500000e+01, 5.39130449e+00, + 4.90217400e+00, 2.54565220e+01, 8.66413040e+01, 2.41739140e+01, + 1.15326090e+01, 1.70760860e+01, 8.47608719e+01, 1.61521740e+01, + 4.34782600e+00, 1.75000000e+01, 1.05989128e+02, 1.05869570e+01, + 4.23913050e+00, 1.63913040e+01, 1.40750000e+02, 3.14782600e+01, + 3.40217400e+00, 7.27173901e+00, 5.58478279e+01, 8.58695698e+00, + 3.01086950e+00, 6.57608700e+00, 5.92826080e+01, 1.08152170e+01, + 3.31521749e+00, 6.85869551e+00, 4.00760880e+01, 5.71428585e+00, + 1.59642859e+01, 1.58392859e+01, 5.55357122e+00, 2.50000000e+00, + 2.69642854e+00, 2.89285707e+00, 2.41071439e+00, 7.92857122e+00, + 2.13571434e+01, 1.60357151e+01, 5.55357122e+00, 7.28571415e+00, + 3.23214293e+00, 5.89285707e+00, 4.75000000e+00, 7.58928585e+00, + 1.52142859e+01, 1.06428576e+01, 5., 5.39285707e+00, + 2.94642854e+00, 8.14285755e+00, 6.73214293e+00, 3.55357146e+00, + 5.46428585e+00, 4.50000000e+00, 3.42857146e+00, 2.73214293e+00, + 2.30357146e+00, 8.10714245e+00, 7.57142878e+00, 1.00535717e+01, + 4.46964302e+01, 30., 5.92857122e+00, 4.76785707e+00, + 1.22321426e+02, 8.09821396e+01, 5.67857122e+00, 1.69642849e+01, + 4.54107132e+01, 3.41250000e+01, 7.91071415e+00, 5.69642878e+00, + 4.24107132e+01, 1.56607141e+01, 6.25000000e+00, 1.77500000e+01, + 4.32678566e+01, 2.65714283e+01, 7.19642878e+00, 3.78571439e+00, + 3.23214293e+00, 9.44642830e+00, 7.16071415e+00, 1.12500000e+01, + 1.97321434e+01, 1.18750000e+01, 5.32142878e+00, 3.21428561e+00, + 2.53571439e+00, 6.73214293e+00, 6.87500000e+00, 1.50535717e+01, + 1.44553574e+02, 7.58392868e+01, 2.94642854e+00, 1.07500000e+01, + 1.41517853e+02, 6.51607132e+01, 5.50000000e+00, 1.92500000e+01, + 1.05267860e+02, 2.32678566e+01, 4.60714293e+00, 3.65535698e+01, + 1.51500000e+02, 3.56964302e+01, 3.76785707e+00, 2.34107151e+01, + 5.32142868e+01, 2.51785717e+01, 5.30357122e+00, 1.13750000e+01, + 4.58928566e+01, 4.80357122e+00, 4.92857122e+00, 1.91785717e+01, + 3.05000000e+01, 1.38928576e+01, 3.42857146e+00, 1.42857146e+00, + 1.44642854e+00, 2.73214293e+00, 4.57142878e+00, 1.91785717e+01, + 1.02089287e+02, 1.55000000e+01, 3.01785707e+00, 1.96607151e+01, + 3.91071434e+01, 1.79107151e+01, 8.83928585e+00, 7.90178604e+01, + 1.45285721e+02, 1.26428576e+01, 2.85714293e+00, 6.46250000e+01, + 1.42928574e+02, 9.71428585e+00, 4.60714293e+00, 2.65000000e+01, + 4.63035698e+01, 9.35714245e+00, 3.33928561e+00, 8.49285736e+01, + 1.34357147e+02, 4.23214293e+00, 3.78571439e+00, 1.93035717e+01, + 2.77500000e+01, 8.01785755e+00, 2.01785707e+00, 2.87500000e+00, + 4.10714293e+00, 1.94642854e+00, 3.83928561e+00, 7.57831335e+00, + 1.12626503e+02, 3.14216862e+01, 3.46987963e+00, 1.14578314e+01, + 3.48915672e+01, 1.50602407e+01, 3.78313255e+00, 6.86746979e+00, + 137., 1.09855423e+02, 3.26506019e+00, 5.57831335e+00, + 1.04337349e+02, 6.19638557e+01, 4.02409649e+00, 5.15662670e+00, + 1.05072289e+02, 1.17096382e+02, 5.62650585e+00, 2.95180726e+00, + 1.03867470e+02, 1.29253006e+02, 5.30120468e+00, 2.85542178e+00, + 2.63012047e+01, 9.52771072e+01, 1.66265068e+01, 2.66265059e+00, + 4.26867485e+01, 1.23265060e+02, 1.28915663e+01, 2.80722880e+00, + 6.10843372e+00, 3.84337354e+00, 3.13253021e+00, 1.55060244e+01, + 5.78192787e+01, 2.96024094e+01, 6.32530117e+00, 4.45783138e+00, + 6.33493958e+01, 5.12891579e+01, 3.73493981e+00, 1.10240965e+01, + 44., 3.99156609e+01, 1.25542173e+01, 4.69879532e+00, + 9.60481949e+01, 1.28662643e+02, 5.51807213e+00, 6.27710867e+00, + 33., 5.24096375e+01, 1.60843372e+01, 5.01204824e+00, + 4.37831306e+01, 1.31385544e+02, 1.39277105e+01, 4.07228899e+00, + 2.26144581e+01, 6.59518051e+01, 1.69518070e+01, 2.08433723e+00, + 1.26506019e+00, 1.24096382e+00, 1.81927717e+00, 8.30120468e+00, + 4.53855438e+01, 3.22409630e+01, 5.08433723e+00, 2.66265059e+00, + 1.27710843e+00, 1.27710843e+00, 1.77108431e+00, 6.80722904e+00, + 4.89759026e+01, 5.09518089e+01, 1.19638557e+01, 3.27710843e+00, + 1.80722892e+00, 2.20481920e+00, 1.93975902e+00, 5.14457846e+00, + 3.31445770e+01, 5.56626511e+01, 1.88795185e+01, 4.21686745e+00, + 2.34939766e+00, 5.07228899e+00, 1.91566265e+00, 3.69879508e+00, + 1.68554211e+01, 3.92891579e+01, 2.13132534e+01, 5.54216862e-01, + 4.21686739e-01, 4.21686739e-01, 4.45783138e-01, 1.61445785e+00, + 8.56626511e+00, 6.15662670e+00, 1.18072283e+00, 8.91566277e-01, + 3.85542154e-01, 4.57831323e-01, 5.30120492e-01, 1.54216862e+00, + 1.02650604e+01, 1.10722895e+01, 2.77108431e+00, 7.46987939e-01, + 2.16867477e-01, 3.13253015e-01, 5.30120492e-01, 1.25301206e+00, + 8.04819298e+00, 1.40722895e+01, 3.21686745e+00, 7.34939754e-01, + 3.13253015e-01, 1.08433738e-01, 2.77108431e-01, 6.74698770e-01, + 4.30120468e+00, 1.23734941e+01, 3.90361452e+00, 2.63492060e+00, + 5.53968239e+00, 2.84126987e+01, 2.52857151e+01, 4.09523821e+00, + 2.55555558e+00, 2.34920645e+00, 2.03174615e+00, 2.34920645e+00, + 9.09523773e+00, 4.89365082e+01, 2.64761906e+01, 3.31746030e+00, + 3.44444442e+00, 3.44444442e+00, 1.87301588e+00, 2.25396824e+00, + 1.53968258e+01, 5.38095245e+01, 1.50317459e+01, 2.74603176e+00, + 2.80952382e+00, 2.73015881e+00, 1.63492060e+00, 3.12698412e+00, + 1.82698421e+01, 3.42539673e+01, 6.30158710e+00, 1.96825397e+00, + 2., 2.06349206e+00, 1.95238090e+00, 2.17460322e+00, + 9.04761887e+00, 1.09507935e+02, 8.47936478e+01, 5.63492060e+00, + 2.25396824e+00, 3.98412704e+00, 3.33333325e+00, 1.71428573e+00, + 2.14444447e+01, 1.29507935e+02, 6.28253975e+01, 3.47619057e+00, + 3.49206352e+00, 8.17460346e+00, 3.36507940e+00, 3.38095236e+00, + 5.27460327e+01, 1.29253967e+02, 2.38571434e+01, 2.66666675e+00, + 4.80952358e+00, 9.77777767e+00, 2.76190472e+00, 4.69841290e+00, + 6.34126968e+01, 1.01142860e+02, 1.19523811e+01, 2.58730149e+00, + 4.50793648e+00, 5.58730173e+00, 2.60317469e+00, 2.39682531e+00, + 3.87301588e+00, 1.22063492e+02, 9.83174591e+01, 1.49206352e+00, + 1.15873015e+00, 1.55079365e+01, 17., 2.65079355e+00, + 1.33650789e+01, 1.26523811e+02, 4.69206352e+01, 9.04761910e-01, + 2.47619057e+00, 4.51746025e+01, 2.48412704e+01, 2.22222233e+00, + 5.51587296e+01, 1.24857140e+02, 7.04761887e+00, 5.87301612e-01, + 8.85714245e+00, 6.18571434e+01, 1.49206352e+01, 2.30158734e+00, + 9.46984100e+01, 1.09365082e+02, 2.66666675e+00, 1.26984131e+00, + 1.77619057e+01, 3.45555573e+01, 4.82539701e+00, 7.17460299e+00, + 1.41269839e+00, 2.56666660e+01, 3.09365082e+01, 3.96825403e-01, + 3.17460328e-01, 3.05238094e+01, 7.44444427e+01, 5.09523821e+00, + 1.79365075e+00, 2.15079365e+01, 8.34920597e+00, 2.22222224e-01, + 3.09523821e+00, 8.65079346e+01, 7.82698441e+01, 2.49206352e+00, + 5.95238113e+00, 1.94603176e+01, 2.01587296e+00, 3.33333343e-01, + 2.25555553e+01, 1.10555557e+02, 3.70317459e+01, 1.41269839e+00, + 2.46031742e+01, 1.87142849e+01, 5.87301612e-01, 7.30158746e-01, + 4.91111107e+01, 7.41904755e+01, 9.82539654e+00, 8.02499962e+00, + 2.79500008e+01, 4.83750000e+01, 3.15000010e+00, 6.94999981e+00, + 1.90750008e+01, 1.89750004e+01, 3.34999990e+00, 5.34999990e+00, + 1.16525002e+02, 7.12750015e+01, 2.65000010e+00, 6.65000010e+00, + 3.45750008e+01, 2.36000004e+01, 2.62500000e+00, 1.66499996e+01, + 1.23849998e+02, 33., 1.39999998e+00, 1.03500004e+01, + 1.09250000e+02, 2.32250004e+01, 1.64999998e+00, 1.12500000e+01, + 4.19749985e+01, 8.94999981e+00, 1.87500000e+00, 1.97000008e+01, + 8.76999969e+01, 8.39999962e+00, 2.59999990e+00, 5.37500000e+00, + 1.85000002e+00, 5.00000000e-01, 1.64999998e+00, 1.77500000e+01, + 4.91500015e+01, 38., 6.34999990e+00, 1.03000002e+01, + 2.25750008e+01, 5.72499990e+00, 4.42500019e+00, 1.97250004e+01, + 3.99000015e+01, 2.94750004e+01, 7.94999981e+00, 5.66500015e+01, + 123., 9.77499962e+00, 3.12500000e+00, 1.97000008e+01, + 4.43250008e+01, 1.23000002e+01, 7.09999990e+00, 7.72750015e+01, + 1.11074997e+02, 3.54999995e+00, 1.67499995e+00, 6.23499985e+01, + 1.10099998e+02, 4.17500019e+00, 3.09999990e+00, 2., + 1.04999995e+00, 1.60000002e+00, 3.29999995e+00, 2.92250004e+01, + 8.95500031e+01, 5.95750008e+01, 10., 1.57500005e+00, + 6.75000012e-01, 4.49999988e-01, 3.25000000e+00, 3.33499985e+01, + 7.54250031e+01, 4.44000015e+01, 5.92500019e+00, 3.47500000e+01, + 3.12500000e+01, 1.12500000e+00, 4.75000000e+00, 2.77500000e+01, + 3.75250015e+01, 2.09249992e+01, 1.10749998e+01, 1.23275002e+02, + 1.04625000e+02, 1.57500005e+00, 2.42499995e+00, 6.45250015e+01, + 4.99249992e+01, 3.59999990e+00, 6.32499981e+00, 1.08000002e+01, + 8.02499962e+00, 7.30000019e+00, 9., 3.42750015e+01, + 5.24000015e+01, 3.18999996e+01, 1.67749996e+01, 1.29999995e+00, + 8.50000024e-01, 1.54999995e+00, 9.02499962e+00, 6.63499985e+01, + 7.91750031e+01, 2.37500000e+01, 5.22499990e+00, 1.12500000e+01, + 2.70000005e+00, 8.75000000e-01, 7.37500000e+00, 3.85999985e+01, + 3.44500008e+01, 1.43500004e+01, 4.59999990e+00, 1.19324997e+02, + 2.69750004e+01, 1.52499998e+00, 5.55000019e+00, 5.14249992e+01, + 1.40249996e+01, 4.44999981e+00, 1.46499996e+01, 3.14782600e+01, + 7.81521759e+01, 2.22826080e+01, 3.47826076e+00, 2.17391300e+01, + 3.57173920e+01, 1., 6.08695626e-01, 5.78260851e+00, + 4.12826080e+01, 5.45000000e+01, 1.69565220e+01, 1.05217390e+01, + 1.04782610e+01, 1.82608700e+00, 4.34782594e-01, 1.17391300e+00, + 1.02826090e+01, 4.70652161e+01, 3.54347839e+01, 1.50217390e+01, + 3.80434775e+00, 2.30434775e+00, 8.04347813e-01, 1.30434787e+00, + 4.93478251e+00, 3.19347820e+01, 3.18695660e+01, 1.15434780e+01, + 3.39130425e+00, 2.73913050e+00, 2.23913050e+00, 2.18913040e+01, + 8.87608719e+01, 2.37826080e+01, 2.73913050e+00, 2.73043480e+01, + 1.08413040e+02, 1.66521740e+01, 3.34782600e+00, 4.86956501e+00, + 7.75217361e+01, 8.88260880e+01, 1.19130430e+01, 1.23260870e+01, + 8.37608719e+01, 2.08043480e+01, 6.95652187e-01, 5.43478251e-01, + 2.73695660e+01, 1.14717392e+02, 3.39565201e+01, 8.08695698e+00, + 3.21304359e+01, 2.56086960e+01, 9.78260875e-01, 1.28260875e+00, + 5.10869551e+00, 8.46739120e+01, 6.03695641e+01, 4.84782600e+00, + 6.06521749e+00, 2.17391300e+01, 5.28260851e+00, 9.67391300e+00, + 3.78043480e+01, 1.13478260e+01, 4.41304350e+00, 1.45434780e+01, + 9.62608719e+01, 3.66739120e+01, 8.30434799e+00, 8.86956501e+00, + 6.56086960e+01, 4.28260880e+01, 4.41304350e+00, 6.89130449e+00, + 1.09913040e+02, 7.48478241e+01, 7.58695650e+00, 3.60869575e+00, + 4.26304359e+01, 7.60434799e+01, 1.11304350e+01, 3.32608700e+00, + 1.02760872e+02, 1.03521736e+02, 3.65217400e+00, 1.45652175e+00, + 9.13043499e+00, 63., 2.74347820e+01, 2.69565225e+00, + 4.18260880e+01, 1.03804344e+02, 5.84782600e+00, 4.28260851e+00, + 4.23913050e+00, 3.32608700e+00, 2.76086950e+00, 1.11956520e+01, + 8.04782639e+01, 4.29782600e+01, 5.97826099e+00, 7.69565201e+00, + 1.24347830e+01, 1.01304350e+01, 3.89130425e+00, 6.63043499e+00, + 6.74782639e+01, 6.39130440e+01, 1.06956520e+01, 8.17391300e+00, + 1.59130430e+01, 1.61304340e+01, 4.23913050e+00, 4.78260851e+00, + 5.63260880e+01, 8.44130402e+01, 1.41956520e+01, 5.78260851e+00, + 7.60869551e+00, 1.56304350e+01, 5.23913050e+00, 3.36956525e+00, + 3.00652180e+01, 8.72391281e+01, 1.52391300e+01, 3.93548393e+00, + 5.12903214e+00, 6.12903214e+00, 3.41935492e+00, 1.58064520e+00, + 1.85483873e+00, 4.54838705e+00, 4.48387098e+00, 5.56774178e+01, + 5.65161285e+01, 6.10483856e+01, 4.62096786e+01, 2.71451607e+01, + 2.99838715e+01, 4.18387108e+01, 4.61290321e+01, 6.35000000e+01, + 6.41451645e+01, 7.16128998e+01, 6.88225784e+01, 4.75161285e+01, + 4.27580643e+01, 5.22580643e+01, 5.63548393e+01, 5.09677429e+01, + 5.30483856e+01, 5.53548393e+01, 5.55806465e+01, 4.98225822e+01, + 4.78064499e+01, 4.17258072e+01, 3.97903214e+01, 5.43548393e+00, + 5.82258081e+00, 7.53225803e+00, 4.64516115e+00, 2.16129041e+00, + 2.35483861e+00, 5.16129017e+00, 5.90322590e+00, 62., + 6.09516144e+01, 7.32903214e+01, 6.15000000e+01, 3.64838715e+01, + 3.96774178e+01, 5.20161285e+01, 5.94032249e+01, 7.37741928e+01, + 7.53225784e+01, 8.95322571e+01, 8.16290359e+01, 5.89516144e+01, + 5.21612892e+01, 5.78709679e+01, 7.18709641e+01, 6.03709679e+01, + 5.87419357e+01, 6.76128998e+01, 6.79677429e+01, 5.48709679e+01, + 4.67741928e+01, 4.59838715e+01, 5.97258072e+01, 4.22580624e+00, + 3.64516139e+00, 5.35483885e+00, 4.30645180e+00, 2.12903237e+00, + 1.98387098e+00, 3.67741942e+00, 3.61290312e+00, 4.39516144e+01, + 3.84838715e+01, 5.85806465e+01, 5.55806465e+01, 3.01774197e+01, + 2.70806446e+01, 3.51290321e+01, 4.17419357e+01, 6.18709679e+01, + 5.63709679e+01, 7.43548355e+01, 6.77096786e+01, 4.08870964e+01, + 3.21290321e+01, 3.85161285e+01, 5.25967751e+01, 4.77903214e+01, + 4.38709679e+01, 5.42258072e+01, 5.70483856e+01, 3.61451607e+01, + 2.78870964e+01, 3.39677429e+01, 4.54516144e+01, 2.90322572e-01, + 1.77419350e-01, 7.58064508e-01, 7.74193525e-01, 1.93548381e-01, + 1.29032254e-01, 2.58064508e-01, 2.74193555e-01, 5.45161295e+00, + 3.27419353e+00, 6., 6.48387098e+00, 3.16129041e+00, + 2.27419353e+00, 2.40322590e+00, 3.62903237e+00, 7.66129017e+00, + 4.91935492e+00, 5.32258081e+00, 6.69354820e+00, 5.04838705e+00, + 3., 3.62903237e+00, 7.16129017e+00, 5.87096786e+00, + 4.64516115e+00, 5.14516115e+00, 6.54838705e+00, 5.01612902e+00, + 2.54838705e+00, 3.45161295e+00, 5.37096786e+00, 1.13793099e+00, + 1.96551728e+00, 7.39655161e+00, 1.40344830e+01, 5.05172396e+00, + 1.22413790e+00, 8.96551728e-01, 7.75862098e-01, 1.34482753e+00, + 2.36206889e+00, 1.29482756e+01, 1.62758617e+01, 4.77586222e+00, + 1.48275864e+00, 7.24137902e-01, 9.31034505e-01, 1.48275864e+00, + 3.39655161e+00, 1.47931032e+01, 1.14482756e+01, 3.31034493e+00, + 1.56896555e+00, 1.86206901e+00, 1.27586210e+00, 1.25862074e+00, + 3.96551728e+00, 1.17758617e+01, 6.72413778e+00, 2.87931037e+00, + 1.63793099e+00, 5.13793087e+00, 1.87931037e+00, 2., + 3.22413802e+00, 1.78275871e+01, 3.05517235e+01, 1.23620691e+01, + 2.82758617e+00, 3., 4.56896544e+00, 3.10344839e+00, + 5.17241383e+00, 2.37241383e+01, 2.68103447e+01, 8.72413826e+00, + 3.63793111e+00, 3.47413788e+01, 5.22931023e+01, 2.96551728e+00, + 5.79310322e+00, 3.46724129e+01, 2.40689659e+01, 5.05172396e+00, + 5.20689678e+00, 1.15965515e+02, 8.93965530e+01, 2.05172420e+00, + 5.34482765e+00, 5.81034470e+01, 2.09137936e+01, 4.67241383e+00, + 1.27586203e+01, 1.28517242e+02, 4.20517235e+01, 7.13793087e+00, + 2.36206889e+00, 1.35172415e+01, 3.47413788e+01, 1.02586203e+01, + 2.86206889e+00, 1.83620682e+01, 1.00310349e+02, 5.84482765e+00, + 2.63793111e+00, 6.38103447e+01, 1.16913795e+02, 6.10344839e+00, + 2.51724148e+00, 8.76896515e+01, 1.30948273e+02, 5.48275852e+00, + 5.50000000e+00, 1.28568970e+02, 1.23241379e+02, 3.34482765e+00, + 4.22413778e+00, 9.77586212e+01, 9.35517273e+01, 4.08620691e+00, + 1.08793106e+01, 1.22896553e+02, 5.17241364e+01, 3.15517235e+00, + 1.19310341e+01, 7.06206894e+01, 2.11206894e+01, 2.93103447e+01, + 1.60344827e+00, 9.63793087e+00, 1.08344826e+02, 1.94827595e+01, + 1.41379309e+00, 8.22413826e+00, 1.20465515e+02, 1.18103447e+01, + 5.32758617e+00, 3.83793106e+01, 1.25172417e+02, 1.17586203e+01, + 2.39655161e+00, 1.88448277e+01, 5.78793106e+01, 1.59137936e+01, + 5.55172396e+00, 2.60344830e+01, 3.56379318e+01, 2.05172420e+00, + 6.31034470e+00, 3.23103447e+01, 3.08620682e+01, 9., + 2.67241383e+00, 6., 2., 1.37931037e+00, 1.33793106e+01, + 3.39137917e+01, 2.26896553e+01, 1.06800003e+01, 9.22000027e+00, + 4.44000006e+00, 3.77999997e+00, 5.15999985e+00, 6., + 8.35999966e+00, 1.00600004e+01, 7.67999983e+00, 4.28000021e+00, + 4.61999989e+00, 7.09999990e+00, 7.94000006e+00, 8.14000034e+00, + 1.15200005e+01, 1.54799995e+01, 6.51999998e+00, 4.01999998e+00, + 5.67999983e+00, 8.06000042e+00, 9.89999962e+00, 1.13000002e+01, + 1.34399996e+01, 1.26199999e+01, 6.40000010e+00, 4.55999994e+00, + 4.01999998e+00, 4.17999983e+00, 5.09999990e+00, 5.42000008e+00, + 6.28000021e+00, 8.03999996e+00, 3.53600006e+01, 6.33600006e+01, + 2.38799992e+01, 7.13999987e+00, 8.56000042e+00, 1.06000004e+01, + 8.46000004e+00, 1.24799995e+01, 2.11200008e+01, 2.18600006e+01, + 1.37200003e+01, 1.51800003e+01, 1.44600000e+01, 1.39399996e+01, + 1.91599998e+01, 2.52000008e+01, 1.18999996e+01, 7.32000017e+00, + 1.06000004e+01, 1.77600002e+01, 1.70799999e+01, 1.56199999e+01, + 2.29400005e+01, 2.63999996e+01, 8.02000046e+00, 3.75999999e+00, + 5.11999989e+00, 9.50000000e+00, 9.64000034e+00, 1.01599998e+01, + 1.38800001e+01, 1.70599995e+01, 4.05000000e+01, 1.39679993e+02, + 6.70599976e+01, 6.48000002e+00, 2.48799992e+01, 8.83600006e+01, + 4.75600014e+01, 1.14799995e+01, 4.17799988e+01, 1.04300003e+02, + 4.28800011e+01, 1.10400000e+01, 9.26000023e+00, 1.60799999e+01, + 1.67600002e+01, 1.54399996e+01, 1.96599998e+01, 2.63400002e+01, + 1.83600006e+01, 1.72999992e+01, 1.55200005e+01, 1.36199999e+01, + 2.12999992e+01, 2.32800007e+01, 7.48000002e+00, 5.19999981e+00, + 7.40000010e+00, 1.21199999e+01, 10., 6.82000017e+00, + 1.32600002e+01, 1.82399998e+01, 1.94799995e+01, 1.14300003e+02, + 7.58199997e+01, 1.08999996e+01, 5.44399986e+01, 1.61279999e+02, + 149., 4.16800003e+01, 3.49599991e+01, 1.39940002e+02, + 5.85000000e+01, 5.07999992e+00, 1.43000002e+01, 1.53559998e+02, + 9.98600006e+01, 1.72000008e+01, 3.22000008e+01, 9.69000015e+01, + 4.06800003e+01, 8.15999985e+00, 6.84000015e+00, 3.85800018e+01, + 1.65400009e+01, 9.02000046e+00, 8.97999954e+00, 1.75200005e+01, + 1.20400000e+01, 8.57999992e+00, 5.69999981e+00, 5.11999989e+00, + 7.82000017e+00, 1.00200005e+01, 1.41076927e+01, 4.31692314e+01, + 1.02307692e+01, 3.12307692e+00, 1.78307686e+01, 1.08953850e+02, + 1.53538465e+01, 3.64615393e+00, 2.20307693e+01, 3.62153854e+01, + 1.35384617e+01, 4.26153851e+00, 8.66153812e+00, 1.72461548e+01, + 6.26153851e+00, 5.69230747e+00, 1.81846161e+01, 2.46769238e+01, + 9.90769196e+00, 3.36923075e+00, 3.61538458e+00, 1.60000002e+00, + 3.61538458e+00, 5.86153841e+00, 3.98461533e+00, 4.09230757e+00, + 1.52307689e+00, 7.38461554e-01, 7.53846169e-01, 6.61538482e-01, + 7.53846169e-01, 1.18461537e+00, 7.03538437e+01, 1.32615387e+02, + 9.32307720e+00, 3., 5.99230766e+01, 1.26830772e+02, + 1.10615387e+01, 4.76923084e+00, 3.13999996e+01, 4.02769241e+01, + 9.35384655e+00, 4.15384626e+00, 6.85692291e+01, 1.07784615e+02, + 8.21538448e+00, 7.29230785e+00, 3.10615387e+01, 3.58153839e+01, + 9.58461571e+00, 3.07692313e+00, 3.55384612e+00, 2.86153841e+00, + 5.36923075e+00, 7.80000019e+00, 8.63076878e+00, 7.84615374e+00, + 1.92307687e+00, 5.53846180e-01, 5.23076952e-01, 6.30769253e-01, + 6.61538482e-01, 1.81538463e+00, 1.27707695e+02, 1.26246155e+02, + 3.29230762e+00, 5.36923075e+00, 5.74615402e+01, 5.95692291e+01, + 4.86153841e+00, 4.80000019e+00, 8.76307678e+01, 6.78307724e+01, + 4.44615364e+00, 4.19999981e+00, 1.33830765e+02, 1.25553848e+02, + 4.76923084e+00, 6.18461561e+00, 3.35076904e+01, 2.73692303e+01, + 6.29230785e+00, 2.33846164e+00, 1.54615383e+01, 1.00769234e+01, + 4.55384636e+00, 8.47692299e+00, 1.17692308e+01, 7.35384607e+00, + 1.44615388e+00, 4.15384620e-01, 4.76923078e-01, 4.61538464e-01, + 6.61538482e-01, 2.07692313e+00, 1.16199997e+02, 4.61076927e+01, + 1.64615381e+00, 8.83076954e+00, 3.73230782e+01, 1.89384613e+01, + 5.61538458e+00, 8.87692261e+00, 1.27430771e+02, 5.03538475e+01, + 2.46153855e+00, 8.47692299e+00, 1.37538467e+02, 6.54000015e+01, + 2.50769234e+00, 9.27692318e+00, 2.46923084e+01, 1.53999996e+01, + 3.40000010e+00, 2.90769219e+00, 4.27076912e+01, 1.34769230e+01, + 3.44615388e+00, 9.15384579e+00, 9.73846149e+00, 4.72307682e+00, + 8.00000012e-01, 3.07692319e-01, 3.69230777e-01, 3.69230777e-01, + 5.07692337e-01, 2.35384607e+00, 1.27333336e+01, 1.57333338e+00, + 4.94666672e+00, 3.96266670e+01, 1.29733334e+01, 6., + 1.06000004e+01, 8.98933334e+01, 1.63066673e+01, 4.66666669e-01, + 2.85333323e+00, 8.64266663e+01, 2.07066669e+01, 3.46666670e+00, + 1.56666670e+01, 1.28839996e+02, 1.43066664e+01, 7.33333349e-01, + 5.90666676e+00, 1.36973328e+02, 4.07200012e+01, 4.96000004e+00, + 9.88000011e+00, 8.48266678e+01, 8.13333321e+00, 1.74666667e+00, + 5.85333347e+00, 4.82666664e+01, 1.31333332e+01, 5.89333344e+00, + 7.11999989e+00, 4.48933334e+01, 1.75066662e+01, 3.38666677e+00, + 4.62666655e+00, 7.53866653e+01, 1.73999996e+01, 3.78666663e+00, + 1.79866657e+01, 1.31106674e+02, 1.78933334e+01, 8.00000012e-01, + 5.25333357e+00, 140., 5.16399994e+01, 2.38666677e+00, + 1.02266665e+01, 1.08933334e+02, 1.97466660e+01, 2.26666665e+00, + 7.21333313e+00, 1.08133331e+02, 2.82666664e+01, 7.54666662e+00, + 1.15066671e+01, 9.83466644e+01, 4.38666677e+00, 3.77333331e+00, + 6.63999987e+00, 1.36400003e+01, 1.41066666e+01, 1.06133337e+01, + 7.53333330e+00, 1.56133337e+01, 1.40266666e+01, 5.41333342e+00, + 7.50666666e+00, 1.27093330e+02, 4.81066666e+01, 7.49333334e+00, + 9.18666649e+00, 8.03466644e+01, 3.05466671e+01, 2.13333344e+00, + 5.62666655e+00, 1.26239998e+02, 4.62933350e+01, 8.56000042e+00, + 1.12933331e+01, 1.04599998e+02, 9.37333298e+00, 4.78666687e+00, + 9.74666691e+00, 2.42399998e+01, 2.08533325e+01, 1.39866667e+01, + 9.66666698e+00, 3.38666649e+01, 3.77333331e+00, 3.45333338e+00, + 6.07999992e+00, 1.05066671e+01, 1.03199997e+01, 1.06266670e+01, + 9.37333298e+00, 7.34666681e+00, 1.93999996e+01, 2.53333330e+00, + 5.33333349e+00, 9.98533325e+01, 4.17200012e+01, 9.15999985e+00, + 7.03999996e+00, 6.36266670e+01, 1.86533337e+01, 2.74666667e+00, + 6.77333355e+00, 2.89066658e+01, 2.26666660e+01, 1.07466669e+01, + 7.29333353e+00, 4.38800011e+01, 4.98666668e+00, 3.37333322e+00, + 6.28000021e+00, 1.33599997e+01, 1.30933332e+01, 1.14666662e+01, + 1.05600004e+01, 9.62666702e+00, 2.82666659e+00, 2.46666670e+00, + 4.58666658e+00, 6.17333317e+00, 7.84000015e+00, 9.33333302e+00, + 6.65333319e+00, 4.82666683e+00, 2.74509817e-01, 5.29411793e-01, + 5.09803951e-01, 9.01960790e-01, 6.86274529e-01, 1.96078435e-01, + 4.11764711e-01, 4.11764711e-01, 9.29411793e+00, 7.19607830e+00, + 7.82352924e+00, 1.19411764e+01, 1.24117651e+01, 7.62745094e+00, + 9.19607830e+00, 1.24509802e+01, 1.46862745e+01, 6.64705896e+00, + 9.45098019e+00, 1.55490198e+01, 1.52156858e+01, 1.24705887e+01, + 1.43333330e+01, 2.02941170e+01, 1.13137255e+01, 5.76470566e+00, + 8.70588207e+00, 1.21568632e+01, 1.20196075e+01, 9.37254906e+00, + 1.06470585e+01, 1.26666670e+01, 2.27450991e+00, 2.45098042e+00, + 3.25490189e+00, 3.92156863e+00, 3., 2.39215684e+00, + 3.03921580e+00, 3.62745094e+00, 4.27647057e+01, 3.20392151e+01, + 3.55686264e+01, 3.96274529e+01, 3.41372566e+01, 3.05490189e+01, + 3.93137245e+01, 5.10196075e+01, 5.48431358e+01, 3.65098038e+01, + 4.58823547e+01, 5.99215698e+01, 5.23921585e+01, 4.90980377e+01, + 5.91960793e+01, 6.69215698e+01, 3.97450981e+01, 3.07254906e+01, + 4.37058830e+01, 5.77254906e+01, 4.61960793e+01, 3.63137245e+01, + 4.01372566e+01, 4.11176453e+01, 3.35294127e+00, 4.58823538e+00, + 4.84313726e+00, 3.52941179e+00, 3.27450991e+00, 3.27450991e+00, + 4.66666651e+00, 4.74509811e+00, 5.04901962e+01, 4.43725471e+01, + 4.51176453e+01, 4.82352943e+01, 3.85294113e+01, 3.35686264e+01, + 4.68823547e+01, 5.60588226e+01, 5.75098038e+01, 5.22549019e+01, + 6.26862755e+01, 8.07450943e+01, 6.43921585e+01, 4.91372566e+01, + 5.64509811e+01, 6.75490189e+01, 2.85294113e+01, 3.19607849e+01, + 6.95882339e+01, 1.12156860e+02, 7.52156830e+01, 4.02549019e+01, + 3.48627434e+01, 3.65686264e+01, 3.62745094e+00, 4.13725471e+00, + 4.01960802e+00, 3.39215684e+00, 3.49019599e+00, 3.05882359e+00, + 3.52941179e+00, 2.96078420e+00, 38., 40., 4.27450981e+01, + 5.32156868e+01, 3.90392151e+01, 3.00784321e+01, 3.51372566e+01, + 3.36470604e+01, 4.40196075e+01, 4.18627434e+01, 6.69607849e+01, + 1.06882355e+02, 6.93529434e+01, 3.33725471e+01, 3.31176453e+01, + 4.05098038e+01, 1.87647057e+01, 1.37058821e+01, 8.11764679e+01, + 1.35254898e+02, 9.75686264e+01, 1.81568623e+01, 1.74117641e+01, + 2.94117641e+01, 1.05892859e+01, 3.82500000e+01, 8.57142830e+00, + 2.39285707e+00, 1.33392859e+01, 4.01607132e+01, 1.19285717e+01, + 3., 5.63214302e+01, 1.32053574e+02, 3.48392868e+01, + 5.33928585e+00, 2.16607151e+01, 6.96071396e+01, 2.30357151e+01, + 8.39285755e+00, 4.16785698e+01, 1.09446426e+02, 6.19107132e+01, + 1.42857141e+01, 1.28928576e+01, 3.42500000e+01, 3.45178566e+01, + 2.28392849e+01, 3.06785717e+01, 3.88571434e+01, 4.70535698e+01, + 2.64642849e+01, 2.04642849e+01, 2.20892849e+01, 3.07678566e+01, + 3.44107132e+01, 8.19642830e+00, 1.15714283e+01, 7.92857122e+00, + 4.42857122e+00, 6.55357122e+00, 2.56964283e+01, 1.00714283e+01, + 6.32142878e+00, 1.81785717e+01, 9.20178604e+01, 3.43035698e+01, + 6.57142878e+00, 2.13928566e+01, 1.10821426e+02, 4.40535698e+01, + 8.66071415e+00, 1.68750000e+01, 1.31857147e+02, 1.17071426e+02, + 1.76785717e+01, 1.58928576e+01, 1.03750000e+02, 7.32857132e+01, + 7.55357122e+00, 2.60892849e+01, 1.15214287e+02, 1.29321426e+02, + 4.22500000e+01, 1.26964283e+01, 5.82500000e+01, 6.57678604e+01, + 1.62678566e+01, 7.19642878e+00, 7.17857122e+00, 8.32142830e+00, + 6.55357122e+00, 3.53571439e+00, 3.96428561e+00, 5.35714293e+00, + 6.44642878e+00, 17., 2.07321434e+01, 2.00178566e+01, + 1.26428576e+01, 1.10178576e+01, 28., 1.59821424e+01, + 1.24642859e+01, 1.38392859e+01, 2.91071434e+01, 3.13571434e+01, + 1.41071424e+01, 1.43750000e+01, 7.49464264e+01, 5.09107132e+01, + 9.96428585e+00, 17., 5.78571434e+01, 4.77857132e+01, + 1.59107141e+01, 1.53928576e+01, 7.46428604e+01, 7.23928604e+01, + 8.85714245e+00, 4.30357122e+00, 3.76785707e+00, 5.48214293e+00, + 5.44642878e+00, 3.37500000e+00, 2.75000000e+00, 3.12500000e+00, + 3.85714293e+00, 1.04107141e+01, 9.83928585e+00, 1.32321424e+01, + 1.42142859e+01, 8.39285755e+00, 6.03571415e+00, 6.21428585e+00, + 8.91071415e+00, 1.01428576e+01, 1.24285717e+01, 17., + 1.64107151e+01, 1.12857141e+01, 8.80357170e+00, 6.46428585e+00, + 6.42857122e+00, 9.75000000e+00, 1.59464283e+01, 1.49821424e+01, + 1.20892859e+01, 1.54642859e+01, 2.22142849e+01, 6.41071415e+00, + 4.25000000e+00, 1.03389835e+00, 9.01694870e+00, 2.80338974e+01, + 3.36271172e+01, 1.28474579e+01, 4.22033882e+00, 4.54237270e+00, + 1.15254235e+00, 1.88135588e+00, 5.38983059e+00, 2.29322033e+01, + 3.45084763e+01, 1.76779652e+01, 5.72881365e+00, 1.17288132e+01, + 2.31355934e+01, 1.99322033e+01, 1.74576271e+00, 1.28813562e+01, + 4.68474579e+01, 1.24406776e+01, 3.61016941e+00, 2.14237289e+01, + 1.25406776e+02, 2.91694908e+01, 1.30508471e+00, 5.23728800e+00, + 1.15694916e+02, 3.55254250e+01, 1.28813565e+00, 5.25423717e+00, + 1.06949150e+02, 1.89830506e+00, 8.10169506e+00, 3.79322052e+01, + 2.42033901e+01, 6.89830494e+00, 7.30508471e+00, 1.14016953e+02, + 4.86271172e+01, 2.77966094e+00, 2.98305082e+00, 6.16779671e+01, + 7.95423737e+01, 7.33898306e+00, 5.08474588e+00, 1.24610168e+02, + 1.26864410e+02, 6.81355953e+00, 1.76271188e+00, 5.98474579e+01, + 1.30084747e+02, 7.76271200e+00, 2.49152541e+00, 5.98135605e+01, + 1.28118637e+02, 9.67796612e+00, 2.45762706e+00, 1.28983049e+01, + 1.03372879e+02, 9.98305130e+00, 2.50847459e+00, 1.19152546e+01, + 3.91694908e+01, 2.30508471e+00, 7.01694918e+00, 1.26525421e+02, + 5.35932198e+01, 2.01694918e+00, 6.61016941e+00, 9.61864395e+01, + 3.49491539e+01, 5.05084753e+00, 3.35593224e+00, 1.17389832e+02, + 1.12101692e+02, 3.25423717e+00, 5.83050871e+00, 5.87118645e+01, + 4.31186447e+01, 9.23728848e+00, 2.54237294e+00, 3.91525421e+01, + 7.37796631e+01, 3.18644071e+00, 6.01694918e+00, 2.94406776e+01, + 3.28813553e+01, 9.98305130e+00, 2.18644071e+00, 2.54237294e+00, + 5.86440659e+00, 2.01694918e+00, 3.91525435e+00, 2.13728809e+01, + 3.34237289e+01, 2.67796612e+00, 1.50847459e+00, 1.57796612e+01, + 4.91525412e+00, 1.67796612e+00, 6., 1.98983059e+01, + 1.24915257e+01, 5.22033882e+00, 1.47457623e+00, 3.89830518e+00, + 2.96610165e+00, 2.16949153e+00, 5.22033882e+00, 2.52372875e+01, + 22., 6.42372894e+00, 1.91525424e+00, 1.30508471e+00, + 1.55932200e+00, 2.03389835e+00, 4.13559341e+00, 2.17457619e+01, + 2.46949158e+01, 5.93220329e+00, 1.66101694e+00, 1.57627118e+00, + 1.74576271e+00, 1.89830506e+00, 3.11864400e+00, 1.16610174e+01, + 1.94915257e+01, 3.55263162e+00, 3.15789485e+00, 7.15789461e+00, + 1.46052628e+01, 1.06315794e+01, 7.44736862e+00, 7.92105246e+00, + 5.84210539e+00, 7.26315784e+00, 5.44736862e+00, 1.36842108e+01, + 3.49473686e+01, 1.95263157e+01, 1.04210529e+01, 1.28421049e+01, + 1.13157892e+01, 4.50000000e+00, 4.84210539e+00, 2.56578941e+01, + 7.48157883e+01, 2.43157902e+01, 4.18421030e+00, 6.28947353e+00, + 6.68421030e+00, 2.50000000e+00, 4.10526323e+00, 3.95526314e+01, + 8.82105255e+01, 1.46315794e+01, 1.39473689e+00, 3.60526323e+00, + 4.65789461e+00, 4.92105246e+00, 4.02631569e+00, 9.78947353e+00, + 2.72894745e+01, 1.76052628e+01, 8.50000000e+00, 9.13157940e+00, + 8.55263138e+00, 5.28947353e+00, 4.23684216e+00, 2.13947372e+01, + 9.75789490e+01, 4.87631569e+01, 7.81578970e+00, 8.21052647e+00, + 1.05000000e+01, 4., 2.84210515e+00, 3.97105255e+01, + 1.30210526e+02, 5.12368431e+01, 2.63157892e+00, 4.55263138e+00, + 1.67631588e+01, 7., 4.68421030e+00, 5.21578941e+01, + 1.15236839e+02, 1.79210529e+01, 1.97368419e+00, 1.62631588e+01, + 4.49736824e+01, 3.57894731e+00, 2.92105269e+00, 1.00526314e+01, + 4.85789490e+01, 2.92631588e+01, 6.05263138e+00, 4.94736862e+00, + 5.34210539e+00, 4.47368431e+00, 1.42105258e+00, 1.46052628e+01, + 1.27157898e+02, 8.51315765e+01, 4.34210539e+00, 2.44736838e+00, + 1.35000000e+01, 1.94473686e+01, 2.94736838e+00, 2.23157902e+01, + 1.29947372e+02, 5.93157883e+01, 3.05263162e+00, 9.39473724e+00, + 7.71842117e+01, 1.58947372e+01, 3.23684216e+00, 2.30789471e+01, + 9.63421021e+01, 15., 2.05263162e+00, 3.46578941e+01, + 1.12394737e+02, 2.39473677e+00, 1.07894742e+00, 4.02631569e+00, + 5.71315804e+01, 5.17368431e+01, 4.89473677e+00, 2.02631569e+00, + 2.89473677e+00, 1.75526314e+01, 1.18421054e+00, 4.68421030e+00, + 1.22526314e+02, 1.01447365e+02, 4.63157892e+00, 2.15789485e+00, + 2.78684216e+01, 5.95263176e+01, 2.31578946e+00, 5.44736862e+00, + 1.00631577e+02, 5.56315804e+01, 2.15789485e+00, 7.13157892e+00, + 1.05947365e+02, 3.45263176e+01, 2.42105269e+00, 4.31578970e+00, + 3.71578941e+01, 1.20263157e+01, 1.07894742e+00, 2.24210529e+01, + 9.76842117e+01, 9.24615383e+00, 9.26153851e+00, 3.57692299e+01, + 2.86461544e+01, 3.58461547e+00, 3.49230766e+00, 8.03076935e+00, + 1.32461538e+01, 7.23076916e+00, 2.13846159e+00, 3.29692307e+01, + 1.05030769e+02, 2.52153854e+01, 2.43076921e+00, 4.38461542e+00, + 2.19846153e+01, 4.87230759e+01, 1.86153841e+00, 9.30769253e+00, + 1.08292305e+02, 5.04769249e+01, 1.16923082e+00, 3.58461547e+00, + 7.29076920e+01, 7.16153870e+01, 6.32307673e+00, 2.30769229e+00, + 3.02615376e+01, 2.71076927e+01, 3.20000005e+00, 4.86153841e+00, + 6.24769249e+01, 3.55384612e+00, 6.10769224e+00, 1.05753845e+02, + 8.08153839e+01, 1.55384612e+00, 5.84615409e-01, 1.95538464e+01, + 3.12153854e+01, 1.22153845e+01, 2.50769234e+00, 6.48307724e+01, + 1.15569229e+02, 1.00153847e+01, 1.60000002e+00, 2.04615383e+01, + 8.35384598e+01, 5.40769234e+01, 4.21538448e+00, 1.32307692e+01, + 8.17384644e+01, 1.93846149e+01, 3.47692299e+00, 1.39538460e+01, + 1.13953850e+02, 6.18307686e+01, 9.06153870e+00, 2.96923065e+00, + 1.62307701e+01, 1.19076920e+01, 6.30769253e+00, 1.21999998e+01, + 7.23384628e+01, 5.09230757e+00, 5.13846159e+00, 6.57230759e+01, + 4.73384628e+01, 2.33846164e+00, 2.72307682e+00, 5.93538475e+01, + 7.11538467e+01, 1.60923080e+01, 4.90769243e+00, 2.79846153e+01, + 5.57538452e+01, 5.58461523e+00, 6.92307711e+00, 4.62153854e+01, + 1.02800003e+02, 3.90153847e+01, 7.92307711e+00, 8.39999962e+00, + 2.72307701e+01, 8.61538506e+00, 8.86153889e+00, 2.86923084e+01, + 9.43538437e+01, 5.39076920e+01, 7.26153851e+00, 2.56923079e+00, + 3.29230762e+00, 3.79999995e+00, 7.41538477e+00, 2.25076923e+01, + 8.25538483e+01, 6.63076925e+00, 3.29230762e+00, 1.06307688e+01, + 9.03076935e+00, 3.79999995e+00, 9.80000019e+00, 5.30923080e+01, + 5.05846138e+01, 1.45538464e+01, 5.01538467e+00, 4.93846130e+00, + 8.92307663e+00, 5.09230757e+00, 1.13999996e+01, 4.80923080e+01, + 6.62307663e+01, 2.61692314e+01, 4.23076916e+00, 1.93846154e+00, + 2.92307687e+00, 3.36923075e+00, 8.44615364e+00, 4.74000015e+01, + 8.53230743e+01, 2.93076916e+01, 2.76923084e+00, 1.29230773e+00, + 1.69230771e+00, 2.58461547e+00, 4.43076944e+00, 3.10923080e+01, + 8.45692291e+01, 3.62068963e+00, 2.95747128e+01, 1.13793106e+02, + 2.14827595e+01, 2.78160930e+00, 2.49885063e+01, 1.29080460e+02, + 3.26206894e+01, 3.44827580e+00, 1.09540234e+01, 1.28103455e+02, + 8.58965530e+01, 4.73563242e+00, 8.03448296e+00, 1.29666672e+02, + 8.92413788e+01, 5., 4., 1.23436783e+02, 1.33643677e+02, + 5.54022980e+00, 4.27586222e+00, 8.66321869e+01, 1.02563217e+02, + 7.90804577e+00, 3., 5.12528725e+01, 1.20827583e+02, + 5.24137926e+00, 3.09195399e+00, 2.20689659e+01, 4.33333321e+01, + 4.78160906e+00, 2.55632191e+01, 1.35160919e+02, 2.80574703e+01, + 3.66666675e+00, 1.21494255e+01, 5.57126427e+01, 2.26781616e+01, + 7.88505745e+00, 9.54022980e+00, 1.33195404e+02, 7.63793106e+01, + 4.77011490e+00, 1.01724138e+01, 4.60229874e+01, 3.19080467e+01, + 1.22528734e+01, 5.08045959e+00, 7.02873535e+01, 6.12873573e+01, + 5.04597712e+00, 8.70114899e+00, 3.37471275e+01, 3.58965530e+01, + 1.36206894e+01, 4.57471275e+00, 9.39080429e+00, 1.06091957e+01, + 2.78160930e+00, 5.08045959e+00, 2.36206894e+01, 3.81494255e+01, + 4.13793087e+00, 2.08045983e+00, 2.51724148e+00, 2.03448272e+00, + 3.56321836e+00, 1.71724129e+01, 4.08620682e+01, 1.75517235e+01, + 7.18390799e+00, 3.52873564e+00, 2.66666675e+00, 2.81609201e+00, + 4.08045959e+00, 1.35862064e+01, 4.45862083e+01, 2.76321831e+01, + 8.95402336e+00, 3.96551728e+00, 2.57471275e+00, 2.98850584e+00, + 3.44827580e+00, 8.02298832e+00, 4.30919533e+01, 3.62758636e+01, + 9.21839046e+00, 2.82758617e+00, 1.62068963e+00, 1.65517247e+00, + 2.28735638e+00, 4.18390799e+00, 2.89195404e+01, 3.77356339e+01, + 1.01149428e+00, 4.59770113e-01, 3.44827592e-01, 5.05747139e-01, + 7.12643683e-01, 4.50574732e+00, 1.24942532e+01, 3.57471275e+00, + 1.43678164e+00, 8.96551728e-01, 5.40229857e-01, 6.89655185e-01, + 1.03448272e+00, 2.86206889e+00, 1.57011490e+01, 7.43678141e+00, + 2.19540238e+00, 8.73563230e-01, 4.25287366e-01, 4.36781615e-01, + 5.63218415e-01, 1.91954029e+00, 1.38045979e+01, 1.07931032e+01, + 2.29885054e+00, 6.09195411e-01, 3.67816091e-01, 3.79310340e-01, + 6.32183909e-01, 1.37931037e+00, 7.78160906e+00, 9.50574684e+00, + 2.28169022e+01, 5.46478891e+00, 2.60563374e+00, 1.53239441e+01, + 2.75492954e+01, 1.63239441e+01, 1.11971827e+01, 6.94366217e+00, + 1.22154930e+02, 2.22957745e+01, 1.71830988e+00, 1.42112675e+01, + 9.96619720e+01, 2.16760559e+01, 5.15492964e+00, 2.77746487e+01, + 2.59859161e+01, 7.67605639e+00, 2.70422530e+00, 1.36478872e+01, + 1.03985916e+02, 1.43098593e+01, 3.39436626e+00, 8.77464771e+00, + 7.98591566e+00, 3.47887325e+00, 1.04225349e+00, 5.49295783e-01, + 5.63380301e-01, 5.07042229e-01, 7.32394338e-01, 3.07042265e+00, + 3.96619720e+01, 3.46478868e+00, 7.05633783e+00, 2.95915489e+01, + 2.97746487e+01, 1.26056337e+01, 7.28169012e+00, 2.94929581e+01, + 1.29788727e+02, 6.56338024e+00, 2.78873229e+00, 7.47323914e+01, + 1.22971832e+02, 7.52112675e+00, 3.28169012e+00, 9.62957764e+01, + 2.82816906e+01, 1.05774651e+01, 3.43661976e+00, 4.96760559e+01, + 1.09478874e+02, 4.91549301e+00, 3.49295783e+00, 1.47464790e+01, + 1.16056337e+01, 3.76056337e+00, 8.87323916e-01, 6.47887349e-01, + 5.91549277e-01, 4.92957741e-01, 1.01408446e+00, 6.33802795e+00, + 5.95070419e+01, 2.88732386e+00, 1.02394361e+01, 4.32535210e+01, + 2.25211277e+01, 6.35211277e+00, 7.87323952e+00, 1.07929581e+02, + 9.10845108e+01, 4.11267614e+00, 3.84507036e+00, 1.28591553e+02, + 1.23042252e+02, 2.70422530e+00, 3.77464795e+00, 1.09422539e+02, + 3.12112675e+01, 9.22535229e+00, 2.53521132e+00, 4.05915489e+01, + 4.46901398e+01, 2.32394361e+00, 4.80281687e+00, 2.39577465e+01, + 1.16197186e+01, 2.66197181e+00, 5.77464759e-01, 3.23943675e-01, + 2.25352108e-01, 3.38028163e-01, 1.46478868e+00, 8.46478844e+00, + 2.38028164e+01, 1.67605639e+00, 1.67746487e+01, 1.14816902e+02, + 2.13521118e+01, 1.95774651e+00, 1.57323942e+01, 1.23154930e+02, + 2.15774651e+01, 3.54929566e+00, 4.49295759e+00, 1.21183098e+02, + 4.99154930e+01, 2.15492964e+00, 6.66197205e+00, 46., 24., + 4.74647903e+00, 1.53521132e+00, 5.22535229e+00, 3.73239446e+00, + 2.09859157e+00, 6.47887325e+00, 2.82535210e+01, 7.08450699e+00, + 1.32394361e+00, 4.36619729e-01, 3.09859157e-01, 3.38028163e-01, + 5.49295783e-01, 1.33802819e+00, 7.22535229e+00, 7.15000010e+00, + 29., 2.24833336e+01, 4.50000000e+00, 1.60000002e+00, + 9.49999988e-01, 1.26666665e+00, 2.09999990e+00, 8.18333340e+00, + 2.07000008e+01, 1.51166668e+01, 5.31666660e+00, 3.90000010e+00, + 3.53333330e+00, 3.93333340e+00, 4.40000010e+00, 3.98333335e+00, + 5.50000000e+00, 7.19999981e+00, 4.96666670e+00, 5.66666651e+00, + 6.90000010e+00, 6.28333330e+00, 3.70000005e+00, 1.08333337e+00, + 1.46666670e+00, 1.83333337e+00, 1.35000002e+00, 1.98333335e+00, + 2.53333330e+00, 2.13333344e+00, 1.21666670e+00, 1.71166668e+01, + 8.26666641e+01, 7.09499969e+01, 1.59333334e+01, 4.16666651e+00, + 8.11666679e+00, 7.34999990e+00, 6.69999981e+00, 3.11499996e+01, + 1.15183334e+02, 6.78499985e+01, 1.13166666e+01, 3.56666660e+00, + 2.61666656e+00, 4.28333330e+00, 7.21666670e+00, 2.32666664e+01, + 5.75999985e+01, 3.84500008e+01, 1.27833338e+01, 7.69999981e+00, + 8.76666641e+00, 1.01333332e+01, 1.06666670e+01, 5.53333330e+00, + 1.00500002e+01, 9.58333302e+00, 5.34999990e+00, 5.68333340e+00, + 7.33333349e+00, 7.44999981e+00, 4.81666660e+00, 1.90333328e+01, + 5.59666672e+01, 3.92666664e+01, 1.46999998e+01, 1.73999996e+01, + 1.51483337e+02, 7.34333344e+01, 9.78333378e+00, 48., + 1.01099998e+02, 5.62666664e+01, 1.17833338e+01, 5.69999981e+00, + 2.98999996e+01, 1.06333332e+01, 1.28500004e+01, 5.06500015e+01, + 110., 4.76333351e+01, 7.63333321e+00, 2.66666675e+00, + 3.01666665e+00, 5.09999990e+00, 1.16333332e+01, 1.59833336e+01, + 3.30999985e+01, 1.72833328e+01, 4.33333349e+00, 2.18333340e+00, + 2.41666675e+00, 4.71666670e+00, 5.03333330e+00, 3.05000000e+01, + 1.55366669e+02, 5.26500015e+01, 6.91666651e+00, 5.80166664e+01, + 1.66649994e+02, 6.65000000e+01, 4.66666651e+00, 3.55000000e+01, + 6.34166679e+01, 2.65666676e+01, 9.05000019e+00, 5.57500000e+01, + 1.51566666e+02, 2.52999992e+01, 1.17666664e+01, 5.47500000e+01, + 6.82833328e+01, 2.31166668e+01, 5.46666670e+00, 5., + 1.25666666e+01, 5.91666651e+00, 1.21000004e+01, 2.26000004e+01, + 3.40333328e+01, 1.08833332e+01, 1.81666672e+00, 8.00000012e-01, + 8.16666663e-01, 1.71666670e+00, 3.81666660e+00, 1.96551728e+00, + 2.86206889e+00, 5.18965530e+00, 2.18965507e+00, 2.58620691e+00, + 3.98275852e+00, 2.94827580e+00, 2.79310346e+00, 2.05172420e+00, + 2.75862074e+00, 6., 3.41379309e+00, 3.56896544e+00, + 4.70689678e+00, 4.63793087e+00, 3.70689654e+00, 2.43103456e+00, + 2.46551728e+00, 6.10344839e+00, 4.08620691e+00, 3.36206889e+00, + 4.29310322e+00, 4.62068987e+00, 3.81034493e+00, 2.20689654e+00, + 1.96551728e+00, 5.37931013e+00, 3.62068963e+00, 3.03448272e+00, + 2.67241383e+00, 3.84482765e+00, 4.43103456e+00, 3.20689654e+00, + 6.74137926e+00, 2.48275871e+01, 6.25862074e+00, 4.82758617e+00, + 2.20689659e+01, 9.84827576e+01, 1.05344830e+01, 2.34482765e+00, + 7.03448296e+00, 3.58275871e+01, 8.17241383e+00, 3.82758617e+00, + 1.62068958e+01, 1.20620689e+02, 1.47413797e+01, 3.51724148e+00, + 6.51724148e+00, 3.41379318e+01, 9.84482765e+00, 4.08620691e+00, + 1.69482765e+01, 1.19879311e+02, 1.69827595e+01, 6.50000000e+00, + 5.32758617e+00, 2.19137936e+01, 1.03793106e+01, 5.65517235e+00, + 1.51551723e+01, 9.08103485e+01, 2.47241383e+01, 5.96551704e+00, + 1.30689659e+01, 1.15758621e+02, 1.70344830e+01, 1.94827580e+00, + 1.18448277e+01, 1.17655174e+02, 1.87931042e+01, 8.79310369e-01, + 1.13103447e+01, 1.31568970e+02, 1.86034489e+01, 7.58620679e-01, + 1.54310341e+01, 1.31948273e+02, 1.67068958e+01, 1.56896555e+00, + 1.17931032e+01, 1.29551727e+02, 2.03620682e+01, 2.34482765e+00, + 2.08620682e+01, 1.31172409e+02, 1.49310341e+01, 2.94827580e+00, + 1.20172415e+01, 1.00913795e+02, 2.35000000e+01, 1.19655170e+01, + 2.49655170e+01, 9.89655151e+01, 1.32241383e+01, 1.79310346e+00, + 7.84482765e+00, 1.04620689e+02, 2.17241383e+01, 3.05172420e+00, + 6.12068987e+00, 4.14482765e+01, 9., 1.37931037e+00, + 9.67241383e+00, 1.22448273e+02, 1.44827585e+01, 1.31034482e+00, + 6.82758617e+00, 5.91551743e+01, 1.08448277e+01, 2.43103456e+00, + 1.36724138e+01, 1.17931038e+02, 1.17068968e+01, 1.63793099e+00, + 6.84482765e+00, 5.29482765e+01, 1.14482756e+01, 3.70689654e+00, + 2.37068958e+01, 8.41724167e+01, 1.02241383e+01, 3.12068963e+00, + 6.55172396e+00, 3.13793106e+01, 7.74137926e+00, 4.64285707e+00, + 4.97619057e+00, 5.42857122e+00, 3.64285707e+00, 4.09523821e+00, + 4.21428585e+00, 4.97619057e+00, 2.95238090e+00, 3.22380943e+01, + 2.56190472e+01, 2.80952377e+01, 2.77142849e+01, 3.96666679e+01, + 3.58095245e+01, 2.94047623e+01, 3.09523811e+01, 3.13571434e+01, + 2.61428566e+01, 2.53333340e+01, 3.23571434e+01, 9.47380981e+01, + 9.60952377e+01, 4.37857132e+01, 3.19047623e+01, 1.67380943e+01, + 2.73333340e+01, 1.50476189e+01, 1.80476189e+01, 1.45619049e+02, + 1.48238098e+02, 2.82619057e+01, 6.04761887e+00, 5.73809528e+00, + 5.85714293e+00, 6.30952358e+00, 5.47619057e+00, 5.88095236e+00, + 6.23809528e+00, 6.69047642e+00, 5.97619057e+00, 4.34761887e+01, + 3.50476189e+01, 3.78333321e+01, 3.50238113e+01, 3.95000000e+01, + 4.06190491e+01, 41., 4.62857132e+01, 5.15476189e+01, + 3.84285698e+01, 3.85476189e+01, 40., 6.91190491e+01, + 7.57380981e+01, 5.53333321e+01, 5.35238113e+01, 1.36190472e+01, + 1.14761906e+01, 1.15476189e+01, 2.17857151e+01, 1.35357147e+02, + 1.49857147e+02, 6.15238113e+01, 1.76904755e+01, 5.04761887e+00, + 4.78571415e+00, 5.07142878e+00, 3.69047618e+00, 4.21428585e+00, + 5.33333349e+00, 7.26190472e+00, 6.54761887e+00, 3.90714302e+01, + 3.12857151e+01, 2.66904755e+01, 2.55238094e+01, 2.92619057e+01, + 3.96190491e+01, 4.00952377e+01, 4.09761887e+01, 5.05714302e+01, + 4.25000000e+01, 3.57142868e+01, 3.65476189e+01, 4.34761887e+01, + 5.07142868e+01, 4.79047623e+01, 4.88571434e+01, 2.50952377e+01, + 2.17619057e+01, 1.91428566e+01, 2.73095245e+01, 6.90952377e+01, + 9.84523773e+01, 4.99285698e+01, 2.87380943e+01, 3.02380943e+00, + 3.07142854e+00, 2.80952382e+00, 1.52380955e+00, 2.59523821e+00, + 3.54761910e+00, 3.97619057e+00, 2.69047618e+00, 2.14047623e+01, + 1.72142849e+01, 9.83333302e+00, 1.00238094e+01, 1.66666660e+01, + 1.89523811e+01, 1.48809528e+01, 1.52857141e+01, 2.01428566e+01, + 1.72142849e+01, 1.42142859e+01, 1.53095236e+01, 2.02142849e+01, + 18., 1.67619057e+01, 1.97142849e+01, 1.42857141e+01, + 1.25476189e+01, 1.15714283e+01, 1.28809528e+01, 1.78333340e+01, + 2.09285717e+01, 1.54523811e+01, 1.44285717e+01, 3.17741942e+00, + 2.15322590e+01, 3.68870964e+01, 1.75967751e+01, 3.22580647e+00, + 5.66129017e+00, 2.31774197e+01, 3.69354844e+00, 1.85483873e+00, + 1.02741938e+01, 3.77903214e+01, 2.98870964e+01, 9.46774197e+00, + 4.58064508e+00, 4.19677429e+01, 2.83548393e+01, 4.14516115e+00, + 3.01612902e+00, 2.61774197e+01, 5.04516144e+01, 1.05322580e+01, + 5.19354820e+00, 6.03548393e+01, 1.10096771e+02, 1.16774197e+01, + 1.64516127e+00, 1.97741928e+01, 1.13467743e+02, 1.47741938e+01, + 1.90322578e+00, 2.29516125e+01, 1.13403229e+02, 2.20967746e+00, + 2.01290321e+01, 1.16129036e+02, 1.87258072e+01, 1.70967746e+00, + 2.24032249e+01, 1.29483871e+02, 2.50483875e+01, 2.72580647e+00, + 7.48387098e+00, 1.24290321e+02, 8.08871002e+01, 2.98387098e+00, + 5.59677410e+00, 1.26064514e+02, 9.14193573e+01, 4.24193525e+00, + 2.75806451e+00, 1.16645164e+02, 1.28838715e+02, 4.33870983e+00, + 3.67741942e+00, 8.32258072e+01, 9.67903214e+01, 9.35483837e+00, + 2.56451607e+00, 4.07903214e+01, 1.10451614e+02, 4.75806475e+00, + 2.95161295e+00, 1.67741928e+01, 3.60645180e+01, 2.95161295e+00, + 14., 1.16564514e+02, 1.75806446e+01, 2.75806451e+00, + 9.30645180e+00, 3.22096786e+01, 1.33225803e+01, 5.29032278e+00, + 4.30645180e+00, 1.12145164e+02, 5.06935501e+01, 3.08064508e+00, + 7.61290312e+00, 2.82580643e+01, 2.11774197e+01, 7.37096786e+00, + 2.35483861e+00, 3.93548393e+01, 3.67258072e+01, 3.61290312e+00, + 6.69354820e+00, 2.45806446e+01, 2.53387089e+01, 9.79032230e+00, + 2.33870959e+00, 3.40322590e+00, 4.30645180e+00, 2.64516139e+00, + 4.16129017e+00, 1.89354839e+01, 2.98548393e+01, 1.77419353e+00, + 6.93548381e-01, 6.12903237e-01, 7.25806475e-01, 1.51612902e+00, + 7.85483885e+00, 1.91129036e+01, 9.62903214e+00, 2.96774197e+00, + 1.14516127e+00, 9.83870983e-01, 9.51612890e-01, 1.45161295e+00, + 6.33870983e+00, 2.17419357e+01, 1.27580643e+01, 3.53225803e+00, + 1.30645156e+00, 7.41935492e-01, 8.38709652e-01, 1.43548381e+00, + 3.83870959e+00, 2.04354839e+01, 1.75806446e+01, 3.85483861e+00, + 1.01612902e+00, 5.64516127e-01, 5.16129017e-01, 9.35483873e-01, + 2.29032254e+00, 1.31774197e+01, 1.76774197e+01, 2.81290321e+01, + 71., 5.77903214e+01, 1.51451616e+01, 3.20967746e+00, + 1.90322578e+00, 2.58064508e+00, 6.79032278e+00, 4.12096786e+01, + 5.78064499e+01, 3.45967751e+01, 1.22419357e+01, 7.67741919e+00, + 5.85483885e+00, 8.58064556e+00, 1.70322590e+01, 2.04193554e+01, + 2.14193554e+01, 1.73548393e+01, 8.96774197e+00, 6.72580624e+00, + 1.02258062e+01, 1.33225803e+01, 1.61935482e+01, 1.43548381e+00, + 2.16129041e+00, 2.50000000e+00, 1.22580647e+00, 1.51612902e+00, + 2.54838705e+00, 2.69354844e+00, 2.16129041e+00, 6.02096786e+01, + 1.03629036e+02, 7.65161285e+01, 3.04193554e+01, 9., 7., + 1.32903223e+01, 2.28387089e+01, 9.12741928e+01, 1.15612900e+02, + 6.43548355e+01, 1.25806456e+01, 5.54838705e+00, 3.98387098e+00, + 8.62903214e+00, 2.75000000e+01, 53., 5.94677429e+01, + 2.70967751e+01, 9.35483837e+00, 4.87096786e+00, 6.19354820e+00, + 1.26451616e+01, 2.97096767e+01, 4.29032278e+00, 3.95161295e+00, + 2.95161295e+00, 1.50000000e+00, 1., 1.43548381e+00, + 2.95161295e+00, 3.79032254e+00, 6.91290359e+01, 9.48709641e+01, + 6.96935501e+01, 4.37419357e+01, 2.28387089e+01, 3.64677429e+01, + 4.58870964e+01, 4.63709679e+01, 1.17467743e+02, 1.13112900e+02, + 4.20967751e+01, 1.06774197e+01, 5.91935492e+00, 1.13225803e+01, + 2.05483875e+01, 5.13548393e+01, 9.10161285e+01, 7.47258072e+01, + 1.78709679e+01, 4.80645180e+00, 1.77419353e+00, 1.77419353e+00, + 7.87096786e+00, 3.85645180e+01, 6.98387098e+00, 6.17741919e+00, + 3.06451607e+00, 1.72580647e+00, 8.70967746e-01, 1.03225803e+00, + 1.90322578e+00, 4.40322590e+00, 6.19354820e+01, 9.13709641e+01, + 6.81935501e+01, 2.56935482e+01, 2.39838715e+01, 4.12741928e+01, + 5.31451607e+01, 5.49838715e+01, 1.08548386e+02, 8.74032288e+01, + 2.24677410e+01, 6.19354820e+00, 7.22580624e+00, 1.75161285e+01, + 3.06451607e+01, 7.43871002e+01, 8.57903214e+01, 4.70161285e+01, + 7.64516115e+00, 1.53225803e+00, 9.03225780e-01, 1.37096775e+00, + 1.13064518e+01, 4.91290321e+01, 7.54838705e+00, 4.45161295e+00, + 1.53225803e+00, 5.00000000e-01, 2.09677413e-01, 5.16129017e-01, + 1.62903225e+00, 4.41935492e+00, 5.45833349e+00, 7.75000000e+00, + 2.39166660e+01, 2.42916660e+01, 9.64583302e+00, 4.41666651e+00, + 3.43750000e+00, 4.47916651e+00, 5.39583349e+00, 1.07083330e+01, + 7.73125000e+01, 5.05000000e+01, 5.22916651e+00, 2.54166675e+00, + 3.47916675e+00, 5.43750000e+00, 4.68750000e+00, 2.46875000e+01, + 1.05979164e+02, 3.21041679e+01, 3.70833325e+00, 2.16666675e+00, + 3.56250000e+00, 3.02083325e+00, 3.75000000e+00, 4.07500000e+01, + 6.94375000e+01, 1.10625000e+01, 2.89583325e+00, 2.77083325e+00, + 2.39583325e+00, 1.93750000e+00, 5.75000000e+00, 8.56250000e+00, + 6.13958321e+01, 1.29875000e+02, 1.71250000e+01, 2.95833325e+00, + 4.41666651e+00, 6.93750000e+00, 3.41666675e+00, 7.20833349e+00, + 1.40729172e+02, 1.40791672e+02, 5.25000000e+00, 1.70833337e+00, + 4.54166651e+00, 5.52083349e+00, 2.50000000e+00, 4.18333321e+01, + 1.40791672e+02, 5.56250000e+01, 2.47916675e+00, 2.97916675e+00, + 6.37500000e+00, 4.02083349e+00, 4.35416651e+00, 1.29395828e+02, + 1.31458328e+02, 5.14583349e+00, 2.62500000e+00, 6.31250000e+00, + 5., 1.93750000e+00, 8.10416698e+00, 4.06250000e+00, + 1.52500000e+01, 1.37541672e+02, 7.74166641e+01, 3.72916675e+00, + 6.14583349e+00, 1.24375000e+01, 6.45833349e+00, 4., + 3.49166679e+01, 8.01041641e+01, 1.70416660e+01, 9.70833302e+00, + 2.43750000e+01, 2.26041660e+01, 8.25000000e+00, 1.55833330e+01, + 3.37916679e+01, 1.48541670e+01, 7.18750000e+00, 2.10416660e+01, + 3.47916679e+01, 1.90833340e+01, 1.28750000e+01, 5.73125000e+01, + 2.40208340e+01, 3.06250000e+00, 5.45833349e+00, 2.31250000e+01, + 1.81041660e+01, 7.12500000e+00, 1.88750000e+01, 4.50000000e+00, + 2.62500000e+00, 4.50625000e+01, 9.04791641e+01, 1.40625000e+01, + 7.20833349e+00, 19., 3.02083340e+01, 1.04791670e+01, + 1.28958330e+01, 2.32291660e+01, 2.96250000e+01, 2.09583340e+01, + 2.80208340e+01, 4.31875000e+01, 2.94791660e+01, 2.04166660e+01, + 1.16875000e+01, 1.78541660e+01, 2.45625000e+01, 3.10416660e+01, + 32., 2.87708340e+01, 2.94166660e+01, 2.64375000e+01, + 8.77083302e+00, 9.52083302e+00, 3.54166679e+01, 4.28541679e+01, + 1.77708340e+01, 1.42916670e+01, 8.70967746e-01, 3.87096763e-01, + 2.25806445e-01, 3.54838699e-01, 1.58064520e+00, 3.35483861e+00, + 3.32258058e+00, 1.83870971e+00, 4.58064508e+00, 2.80645156e+00, + 7.09677398e-01, 5.87096786e+00, 2.21612911e+01, 2.26451607e+01, + 7.35483885e+00, 4.58064508e+00, 9.56128998e+01, 5.71612892e+01, + 1.83870971e+00, 1.05483875e+01, 5.65806465e+01, 4.23548393e+01, + 9.77419376e+00, 1.93548393e+01, 127., 8.48064499e+01, + 9.19354820e+00, 1.49354839e+01, 1.01903229e+02, 6.74516144e+01, + 1.61612911e+01, 2.76774197e+01, 1.51612902e+00, 8.06451619e-01, + 6.77419364e-01, 9.35483873e-01, 2.32258058e+00, 2.87096763e+00, + 3.29032254e+00, 2.03225803e+00, 5.90322590e+00, 3.41935492e+00, + 3.25806451e+00, 1.16129036e+01, 3.88387108e+01, 1.58387098e+01, + 4.48387098e+00, 5.77419376e+00, 1.00064514e+02, 2.52903233e+01, + 3.41935492e+00, 2.64838715e+01, 6.59677429e+01, 1.85806446e+01, + 9.77419376e+00, 9.29677429e+01, 1.18838707e+02, 5.84838715e+01, + 2.38709679e+01, 4.39354820e+01, 5.85806465e+01, 2.26774197e+01, + 2.00967751e+01, 1.02032257e+02, 2.41935492e+00, 1.67741930e+00, + 1.22580647e+00, 1.32258070e+00, 1.80645156e+00, 2., + 2.54838705e+00, 2.51612902e+00, 9.74193573e+00, 4.03225803e+00, + 3.22580647e+00, 8.03225803e+00, 4.39354820e+01, 2.16451607e+01, + 5.61290312e+00, 7.64516115e+00, 1.41516129e+02, 3.21612892e+01, + 2.45161295e+00, 1.82903233e+01, 7.02258072e+01, 2.41612911e+01, + 4.83870983e+00, 7.18387070e+01, 1.00258064e+02, 2.64838715e+01, + 1.14838705e+01, 3.15806446e+01, 5.73548393e+01, 2.00967751e+01, + 1.05806456e+01, 6.70322571e+01, 1.80645156e+00, 1.67741930e+00, + 1.25806451e+00, 9.67741907e-01, 8.70967746e-01, 1.67741930e+00, + 2.35483861e+00, 2.48387098e+00, 8.16129017e+00, 5.54838705e+00, + 2.51612902e+00, 3.80645156e+00, 2.58064518e+01, 1.60967751e+01, + 6., 6.90322590e+00, 1.34709671e+02, 4.50645180e+01, + 1.51612902e+00, 7.74193525e+00, 5.52258072e+01, 3.54516144e+01, + 4.06451607e+00, 8.51612949e+00, 9.98064499e+01, 5.13225822e+01, + 6.22580624e+00, 1.41290321e+01, 4.60645180e+01, 2.60322590e+01, + 4.48387098e+00, 5.51612902e+00, 2.78253975e+01, 7.25396824e+00, + 4.88888884e+00, 1.67777786e+01, 1.47460318e+01, 6.04761887e+00, + 6.41269827e+00, 4.65555573e+01, 4.34285698e+01, 3.46031737e+00, + 8.92063522e+00, 1.07365082e+02, 4.77142868e+01, 4.49206352e+00, + 1.15714283e+01, 1.03269844e+02, 1.96507931e+01, 5.87301588e+00, + 2.20476189e+01, 1.03365082e+02, 1.73809528e+01, 4.14285707e+00, + 1.51269846e+01, 4.52539673e+01, 1.59682541e+01, 3.61904764e+00, + 1.01111107e+01, 1.41904764e+01, 1.90476191e+00, 5.38095236e+00, + 1.92063484e+01, 2.76825390e+01, 1.02285713e+02, 5.23809528e+00, + 3.47619057e+00, 3.78253975e+01, 5.48095245e+01, 5.06349230e+00, + 5.42857122e+00, 8.39206314e+01, 5.64920616e+01, 5.90476179e+00, + 5.88888884e+00, 1.18825394e+02, 1.14063492e+02, 4.76190472e+00, + 7.90476179e+00, 6.43968277e+01, 4.50952377e+01, 1.27936506e+01, + 7.19047642e+00, 25., 8.88888931e+00, 3.15873027e+00, + 1.50634918e+01, 3.88730164e+01, 3.81904755e+01, 7.66666651e+00, + 3.49206352e+00, 1.60317457e+00, 1.30158734e+00, 4.82539701e+00, + 2.33968258e+01, 4.85873032e+01, 1.20968254e+02, 8.09523773e+00, + 1.85714281e+00, 3.93809509e+01, 1.03682541e+02, 5.80952358e+00, + 1.33333337e+00, 4.33174591e+01, 5.22857132e+01, 1.21587305e+01, + 3.57142854e+00, 5.83650780e+01, 1.18444443e+02, 6.28571415e+00, + 3.77777767e+00, 2.30158730e+01, 6.30952377e+01, 2.30952377e+01, + 3.98412704e+00, 2.85714293e+00, 1.63492060e+00, 1.46031749e+00, + 9.90476227e+00, 3.91269836e+01, 6.00793648e+01, 1.89206352e+01, + 4.65079355e+00, 3.42857146e+00, 2.74603176e+00, 4.36507940e+00, + 1.93650799e+01, 4.91746025e+01, 1.11301590e+02, 2.34444447e+01, + 1.20634925e+00, 1.16666670e+01, 9.75238113e+01, 1.63333340e+01, + 1.11111116e+00, 9.52380943e+00, 4.02380943e+01, 1.62539692e+01, + 2.71428561e+00, 1.10793648e+01, 1.07476189e+02, 2.74126987e+01, + 1.77777779e+00, 1.12539682e+01, 5.15079384e+01, 3.02222214e+01, + 4.73015881e+00, 1.01587307e+00, 7.46031761e-01, 6.19047642e-01, + 1.53968251e+00, 1.97460308e+01, 5.32857132e+01, 3.81111107e+01, + 8.33333302e+00, 3.41269851e+00, 2.38095236e+00, 1.87301588e+00, + 4.20634937e+00, 1.89047623e+01, 2.63888884e+00, 7.47222233e+00, + 8.72222233e+00, 9.16666698e+00, 1.31388893e+01, 5.44444466e+00, + 4.05555534e+00, 2.16666675e+00, 5.69444466e+00, 8.52777767e+00, + 1.16111107e+01, 8.27777767e+00, 1.28888893e+01, 6.02777767e+00, + 1.34722223e+01, 4.61111116e+00, 3., 4.91666651e+00, + 6.83333349e+00, 7.13888884e+00, 7.25000000e+00, 4.91666651e+00, + 1.36111107e+01, 4.25000000e+00, 3.61111104e-01, 7.50000000e-01, + 1.50000000e+00, 1.75000000e+00, 1.63888884e+00, 1.25000000e+00, + 2.41666675e+00, 1., 4.66666651e+00, 1.95833340e+01, + 2.96111107e+01, 1.18333330e+01, 1.23888893e+01, 4.92777786e+01, + 4.98611107e+01, 7.19444466e+00, 1.06388893e+01, 1.95555553e+01, + 2.71666660e+01, 1.13888893e+01, 1.21666670e+01, 2.10833340e+01, + 2.99722214e+01, 1.17777777e+01, 5.72222233e+00, 1.21388893e+01, + 1.54166670e+01, 1.21111107e+01, 1.36111107e+01, 9.19444466e+00, + 1.38888893e+01, 5.94444466e+00, 1., 3.16666675e+00, + 4.83333349e+00, 2.86111116e+00, 2.38888884e+00, 2.13888884e+00, + 2.88888884e+00, 1.25000000e+00, 1.52777779e+00, 5.59722214e+01, + 8.16388855e+01, 5.72222233e+00, 3.33333325e+00, 1.10305557e+02, + 1.40944443e+02, 4.50000000e+00, 6., 2.73055553e+01, + 5.39722214e+01, 1.85000000e+01, 2.23888893e+01, 1.26972221e+02, + 1.43361115e+02, 6.25000000e+00, 6.47222233e+00, 1.68333340e+01, + 2.57777786e+01, 2.16388893e+01, 3.44722214e+01, 7.58333359e+01, + 5.51944427e+01, 1.79722214e+01, 1.33333337e+00, 4.30555534e+00, + 6.75000000e+00, 4.19444466e+00, 5.16666651e+00, 1.01111107e+01, + 1.63888893e+01, 4.72222233e+00, 2.30555558e+00, 9.46111145e+01, + 1.39888885e+02, 8., 2.22222233e+00, 3.88888893e+01, + 7.49444427e+01, 3.66666675e+00, 4.91666651e+00, 7.60833359e+01, + 1.46916672e+02, 5.67222214e+01, 3.62777786e+01, 8.28333359e+01, + 7.54444427e+01, 6.69444466e+00, 9.38888931e+00, 1.53888893e+01, + 5.45555573e+01, 6.48055573e+01, 6.31666679e+01, 60., + 3.09444447e+01, 1.73333340e+01, 2.63888884e+00, 2.58333325e+00, + 3.72222233e+00, 7.25000000e+00, 7.52777767e+00, 5.58333349e+00, + 5.69444466e+00, 3.58333325e+00, 1.81206894e+01, 1.75344830e+01, + 1.17241383e+01, 6.08620691e+00, 7.06896544e+00, 9.82758617e+00, + 8.29310322e+00, 1.15000000e+01, 1.58275862e+01, 1.85862064e+01, + 1.71034489e+01, 1.07068968e+01, 8.68965530e+00, 1.18275862e+01, + 1.29655170e+01, 1.11379309e+01, 1.37413797e+01, 9.58620644e+00, + 8.68965530e+00, 1.70172405e+01, 2.29482765e+01, 1.45344830e+01, + 1.43965521e+01, 1.29655170e+01, 7.31034470e+00, 1.31034482e+00, + 1.15517247e+00, 4.58965530e+01, 8.60172424e+01, 1.56896553e+01, + 5.41379309e+00, 8.36206913e+00, 1.44827585e+01, 2.96379318e+01, + 2.26379318e+01, 4.43103456e+00, 5.24137926e+00, 1.04482756e+01, + 1.53448277e+01, 1.35862064e+01, 1.55000000e+01, 1.53448277e+01, + 2.77758617e+01, 1.58448277e+01, 7.41379309e+00, 9.60344791e+00, + 1.68448277e+01, 2.23793106e+01, 1.13965521e+01, 5.86206913e+00, + 2.97931042e+01, 8.83965530e+01, 2.59137936e+01, 5.41379309e+00, + 8., 1.66551723e+01, 1.39137936e+01, 1.08620691e+00, + 1.01724138e+01, 1.18086205e+02, 6.86379318e+01, 3.29310346e+00, + 4.06896544e+00, 3.61379318e+01, 4.72413778e+00, 6.78965530e+01, + 114., 6.29310322e+00, 5.68965495e-01, 3.36206889e+00, + 1.81896553e+01, 8.41379356e+00, 4.53448296e+00, 1.74827595e+01, + 1.24241379e+02, 6.93103485e+01, 1.79310346e+00, 2.44827580e+00, + 1.80517235e+01, 1.61206894e+01, 4.79310322e+00, 2.55172420e+00, + 1.04982758e+02, 1.24724136e+02, 7.60344839e+00, 1.17241383e+00, + 22., 4.64310341e+01, 1.85517235e+01, 1.65517247e+00, + 2.26206894e+01, 1.00327583e+02, 1.69655170e+01, 1.18965518e+00, + 1.99655170e+01, 1.07637932e+02, 1.77586210e+00, 2.59310341e+01, + 8.67586212e+01, 7.62068987e+00, 1.51724136e+00, 1.31724138e+01, + 8.31896515e+01, 1.25344830e+01, 2.48275852e+00, 7.63793087e+00, + 9.62586212e+01, 3.85689659e+01, 1.18965518e+00, 3.67241383e+00, + 9.32758636e+01, 5.29137917e+01, 4.82758617e+00, 2.82758617e+00, + 5.23103447e+01, 5.62068977e+01, 2.12068963e+00, 2.29310346e+00, + 8.50862045e+01, 1.08931038e+02, 1.08103447e+01, 2.22413802e+00, + 1.23965521e+01, 3.47758636e+01, 3.81034493e+00, 2.91379309e+00, + 4.96206894e+01, 1.07379311e+02, 1.13793106e+02, 3.12241383e+01, + 1.00172415e+01, 5.72758636e+01, 1.22241379e+02, 1.79827595e+01, + 5.17241383e+00, 3.65517235e+01, 1.16258621e+02, 3.83103447e+01, + 1.47758617e+01, 2.87758617e+01, 5.75689659e+01, 1.54482756e+01, + 1.41206894e+01, 5.94655190e+01, 3.23103447e+01, 2.66551723e+01, + 1.78448277e+01, 1.28275862e+01, 1.18103447e+01, 1.23448277e+01, + 1.67758617e+01, 2.16379318e+01, 2.27586198e+00, 3.13793111e+00, + 2.72413802e+00, 1.29310346e+00, 1.22413790e+00, 1.50000000e+00, + 2.15517235e+00, 1.68965518e+00, 1.26086205e+02, 3.63793106e+01, + 1.30862064e+01, 5.44482765e+01, 1.23051727e+02, 1.77413788e+01, + 3.77586198e+00, 4.68275871e+01, 1.18241379e+02, 5.36724129e+01, + 2.91551723e+01, 2.79482765e+01, 4.98103447e+01, 1.70172405e+01, + 1.45862064e+01, 5.34310341e+01, 2.99655170e+01, 3.14482765e+01, + 3.10172405e+01, 1.99482765e+01, 1.32586203e+01, 1.28103447e+01, + 1.45517244e+01, 1.78793106e+01, 2.10344839e+00, 3.15517235e+00, + 4.75862074e+00, 2.60344839e+00, 1.67241383e+00, 1.27586210e+00, + 1.65517247e+00, 1.34482753e+00, 1.18327583e+02, 4.31896553e+01, + 2.32931042e+01, 4.29655190e+01, 9.66551743e+01, 3.14655170e+01, + 1.56551723e+01, 49., 1.09913795e+02, 5.80862083e+01, + 3.48448257e+01, 2.69482765e+01, 3.31206894e+01, 1.87586212e+01, + 2.06551723e+01, 4.86206894e+01, 2.76034489e+01, 3.03275871e+01, + 2.80862064e+01, 2.32413788e+01, 1.41034479e+01, 10., + 1.45517244e+01, 1.93620682e+01, 1.48275864e+00, 2.70689654e+00, + 3.62068963e+00, 3.72413802e+00, 1.84482753e+00, 1.01724136e+00, + 1.32758617e+00, 1.06896555e+00, 8.51896515e+01, 2.72758617e+01, + 1.43275862e+01, 2.49310341e+01, 5.40344810e+01, 2.17758617e+01, + 1.46379309e+01, 4.13448257e+01, 6.95517273e+01, 4.18448257e+01, + 2.40344830e+01, 1.94655170e+01, 2.15517235e+01, 1.33793106e+01, + 1.58965521e+01, 3.37068977e+01, 1.93275871e+01, 2.15517235e+01, + 1.99482765e+01, 1.81034489e+01, 9.72413826e+00, 7.15517235e+00, + 9.29310322e+00, 1.51206894e+01, 8.79310369e-01, 1.74137926e+00, + 2.68965507e+00, 3.25862074e+00, 1.27586210e+00, 6.37931049e-01, + 7.58620679e-01, 5.51724136e-01, 4.57746458e+00, 1.11267602e+00, + 2.97183108e+00, 1.50845070e+01, 1.15070419e+01, 3.60563374e+00, + 2.57746482e+00, 1.57746482e+00, 1.40281687e+01, 2.39436626e+00, + 6.94366217e+00, 2.37042255e+01, 1.93943653e+01, 1.00140848e+01, + 5.80281687e+00, 1.79577465e+01, 6.38028183e+01, 2.08450699e+00, + 4.83098602e+00, 6.43098602e+01, 3.17464790e+01, 5.22535229e+00, + 1.12957745e+01, 1.25070419e+02, 1.70563374e+01, 3.85915494e+00, + 1.16478872e+01, 1.12211266e+02, 3.03943653e+01, 5.07042265e+00, + 1.41408453e+01, 69., 2.30985904e+00, 1.29577470e+00, + 3.19718313e+00, 1.47464790e+01, 1.84366188e+01, 6.84507036e+00, + 2.67605639e+00, 1.42253518e+00, 8.28732376e+01, 3.29577470e+00, + 6.16901398e+00, 2.00845070e+01, 2.50422535e+01, 9.22535229e+00, + 4.18309879e+00, 6.12676048e+01, 1.16802818e+02, 4.02816916e+00, + 3.61971831e+00, 1.18746475e+02, 1.15042252e+02, 4.61971807e+00, + 6.12676048e+00, 1.13591553e+02, 2.48873234e+01, 8.66197205e+00, + 5.47887325e+00, 7.19014053e+01, 4.32535210e+01, 3.49295783e+00, + 1.52253523e+01, 3.54084511e+01, 2.26760554e+00, 1.59154928e+00, + 2.76056337e+00, 1.04366198e+01, 1.87323952e+01, 9.64788723e+00, + 2.50704217e+00, 1.70422530e+00, 1.27591553e+02, 7.83098602e+00, + 4.92957735e+00, 1.84084511e+01, 4.20704231e+01, 1.04507046e+01, + 3.53521132e+00, 4.62957764e+01, 1.11690140e+02, 9.05633831e+00, + 2.87323952e+00, 7.67042236e+01, 1.31535217e+02, 9.97183132e+00, + 3.45070434e+00, 4.79718323e+01, 3.70704231e+01, 1.56619720e+01, + 3.90140843e+00, 1.13802814e+01, 1.92253513e+01, 2.52112675e+00, + 9.84507084e+00, 3.58028183e+01, 1.07042253e+00, 8.30985904e-01, + 1.63380277e+00, 6.47887325e+00, 1.59577465e+01, 8.40845108e+00, + 2.21126771e+00, 1.07042253e+00, 1.18507042e+02, 2.49295769e+01, + 2.83098602e+00, 9.12676048e+00, 3.97746468e+01, 1.13802814e+01, + 3.08450699e+00, 1.11126757e+01, 9.24647903e+01, 2.29718304e+01, + 2.91549301e+00, 1.43098593e+01, 1.29464783e+02, 3.72253532e+01, + 1.91549301e+00, 1.27042255e+01, 3.34647903e+01, 2.04366188e+01, + 5.08450699e+00, 2.59154940e+00, 12., 4.38028193e+00, + 2.81690145e+00, 1.92535210e+01, 2.17936516e+01, 5.66984138e+01, + 8.74603176e+00, 4.93650770e+00, 2.58412704e+01, 7.25079346e+01, + 1.46507940e+01, 8.66666698e+00, 2.95079365e+01, 8.05873032e+01, + 9.63492107e+00, 5., 2.68730164e+01, 8.34126968e+01, + 1.18888893e+01, 6.15873003e+00, 4.43015862e+01, 1.04777779e+02, + 1.25873013e+01, 7.61904764e+00, 2.05238094e+01, 5.38571434e+01, + 1.33174601e+01, 8.30158710e+00, 1.43333330e+01, 2.76825390e+01, + 1.09523811e+01, 9.90476227e+00, 1.31111107e+01, 1.42222223e+01, + 1.46984129e+01, 1.10158730e+01, 1.62698421e+01, 4.18095245e+01, + 1.25714283e+01, 8.71428585e+00, 3.55555573e+01, 9.14603195e+01, + 1.93809528e+01, 9.41269875e+00, 3.84761887e+01, 9.73968277e+01, + 1.01111107e+01, 3.98412704e+00, 3.68571434e+01, 1.03619049e+02, + 1.46190472e+01, 5.88888884e+00, 4.59206352e+01, 1.09380951e+02, + 1.04603176e+01, 4.71428585e+00, 3.64126968e+01, 1.02619049e+02, + 1.34444447e+01, 5.66666651e+00, 3.51904755e+01, 9.33968277e+01, + 1.56349211e+01, 7.68253946e+00, 1.62539692e+01, 4.24603157e+01, + 1.70952377e+01, 1.01587305e+01, 1.17936506e+01, 1.30317459e+01, + 1.28095236e+01, 1.21111107e+01, 2.08571434e+01, 4.64761887e+01, + 1.88730164e+01, 1.40952377e+01, 3.73968239e+01, 7.36190491e+01, + 1.09682541e+01, 7.80952358e+00, 5.16666679e+01, 1.11412697e+02, + 1.85714283e+01, 1.03174601e+01, 4.28412704e+01, 9.87777786e+01, + 7.60317469e+00, 4.76190472e+00, 3.56666679e+01, 1.03634918e+02, + 1.74285717e+01, 9.50793648e+00, 3.95873032e+01, 9.29047623e+01, + 1.17619047e+01, 6.41269827e+00, 2.42539692e+01, 7.73650818e+01, + 2.23333340e+01, 1.00158730e+01, 1.01904764e+01, 8.66666698e+00, + 9.22222233e+00, 9.36507893e+00, 9.52380943e+00, 1.18888893e+01, + 1.34761906e+01, 1.28730154e+01, 1.99682541e+01, 2.07142849e+01, + 1.05555553e+01, 1.08095236e+01, 3.91111107e+01, 6.64761887e+01, + 1.71904755e+01, 1.57619047e+01, 4.15873032e+01, 6.54444427e+01, + 8.80952358e+00, 6.95238113e+00, 4.05079384e+01, 9.16825409e+01, + 1.56507940e+01, 1.22222223e+01, 2.62380943e+01, 5.55873032e+01, + 8.50793648e+00, 7.25396824e+00, 2.34603176e+01, 6.65555573e+01, + 1.80952377e+01, 1.04761906e+01, 4.33333349e+00, 3.52820511e+01, + 7.67435913e+01, 2.87179494e+00, 2.46153855e+00, 2.66153851e+01, + 7.41282043e+01, 6.41025639e+00, 5.35897446e+00, 4.93076935e+01, + 9.77948685e+01, 3.48717952e+00, 2.56410265e+00, 3.86923065e+01, + 9.17692337e+01, 9.69230747e+00, 8.82051277e+00, 4.81538467e+01, + 9.83333359e+01, 8.05128193e+00, 3.89743590e+00, 3.39230766e+01, + 8.25384598e+01, 2.12564106e+01, 1.18205128e+01, 2.68717957e+01, + 6.81794891e+01, 1.28717947e+01, 4.97435904e+00, 1.77948723e+01, + 5.01538467e+01, 2.78205128e+01, 4.58974361e+00, 4.42564087e+01, + 7.48205109e+01, 3.74358964e+00, 2.10256410e+00, 4.22564087e+01, + 9.35384598e+01, 9.12820530e+00, 8.58974361e+00, 6.88717957e+01, + 9.93076935e+01, 1.89743590e+00, 1.35897434e+00, 4.88717957e+01, + 1.07358971e+02, 1.07692308e+01, 1.35897436e+01, 7.28205109e+01, + 9.44358978e+01, 3.33333325e+00, 4.76923084e+00, 4.69230766e+01, + 9.68974380e+01, 1.63846149e+01, 1.87948723e+01, 4.34615402e+01, + 6.08974342e+01, 9.76923084e+00, 10., 3.57435913e+01, + 7.44615402e+01, 2.69487171e+01, 1.07948713e+01, 1.19743586e+01, + 1.78461533e+01, 6.48717928e+00, 6.79487181e+00, 2.64358978e+01, + 6.53846130e+01, 1.72820511e+01, 1.21794872e+01, 2.64871788e+01, + 4.28717957e+01, 6.43589735e+00, 5.17948723e+00, 5.54358978e+01, + 1.02794868e+02, 2.18205128e+01, 1.50769234e+01, 6.25384598e+01, + 6.81538467e+01, 4.05128193e+00, 6.10256433e+00, 8.13333359e+01, + 1.04871796e+02, 1.47948713e+01, 1.96923084e+01, 7.48205109e+01, + 6.98974380e+01, 5.56410265e+00, 7.71794891e+00, 6.00256424e+01, + 7.68461533e+01, 1.18205128e+01, 1.05384617e+01, 7.23076916e+00, + 4.02564096e+00, 3.84615374e+00, 4.58974361e+00, 6.64102554e+00, + 9.07692337e+00, 1.04871798e+01, 1.33333330e+01, 9.07692337e+00, + 5.66666651e+00, 5.35897446e+00, 5.17948723e+00, 7.87179470e+00, + 1.45128202e+01, 1.48461542e+01, 1.11794872e+01, 9.33333302e+00, + 7.10256433e+00, 7.20512819e+00, 6.66666651e+00, 2.01282043e+01, + 2.37435894e+01, 1.35641022e+01, 8., 1.78717957e+01, + 1.51282053e+01, 4.43589735e+00, 5.46153831e+00, 3.25897446e+01, + 4.11794853e+01, 8.12820530e+00, 4.80454559e+01, 1.22924240e+02, + 2.63181820e+01, 4.68181801e+00, 2.90909100e+00, 5., + 3.60606050e+00, 5.25757599e+00, 4.79090919e+01, 6.30757561e+01, + 1.71818180e+01, 7.57575750e+00, 6.03030300e+00, 5.48484850e+00, + 6.31818199e+00, 1.02878790e+01, 1.60909100e+01, 1.68484840e+01, + 9.53030300e+00, 8.53030300e+00, 7.78787899e+00, 7.98484850e+00, + 8.24242401e+00, 8.60606098e+00, 1.30303025e+00, 2.07575750e+00, + 1.16666663e+00, 8.18181813e-01, 1.24242425e+00, 1.19696975e+00, + 9.54545438e-01, 8.03030312e-01, 1.12984848e+02, 1.43454544e+02, + 1.62424240e+01, 3.10606050e+00, 6.60606050e+00, 1.01666670e+01, + 3.84848475e+00, 6.54545450e+00, 1.21439392e+02, 1.33409088e+02, + 1.60757580e+01, 5.09090900e+00, 6.12121201e+00, 6.30303049e+00, + 6.34848499e+00, 1.47727270e+01, 4.02121201e+01, 3.53333321e+01, + 1.21212120e+01, 8.51515198e+00, 9.16666698e+00, 9.12121201e+00, + 1.12878790e+01, 1.41666670e+01, 3., 3.15151525e+00, + 1.78787875e+00, 6.96969688e-01, 8.33333313e-01, 1.30303025e+00, + 1.90909088e+00, 1.96969700e+00, 1.28227280e+02, 1.03606064e+02, + 4.72727251e+00, 5.18181801e+00, 1.75757580e+01, 1.98484840e+01, + 4.09090900e+00, 1.30909090e+01, 1.49787872e+02, 1.28666672e+02, + 1.00151520e+01, 2.77272725e+00, 5.45454550e+00, 4.68181801e+00, + 3.77272725e+00, 1.97727280e+01, 6.94242401e+01, 5.01363640e+01, + 1.02121210e+01, 5.01515150e+00, 5.09090900e+00, 5.45454550e+00, + 9.03030300e+00, 1.81060600e+01, 3.25757575e+00, 2.87878799e+00, + 1.13636363e+00, 4.69696969e-01, 4.69696969e-01, 9.39393938e-01, + 2.15151525e+00, 2.33333325e+00, 1.17363640e+02, 2.96060600e+01, + 3., 7.46969700e+00, 27., 1.38636360e+01, 4.87878799e+00, + 4.42272720e+01, 1.47560608e+02, 5.54848480e+01, 5.06060600e+00, + 3.34848475e+00, 6.50000000e+00, 3.27272725e+00, 3.53030300e+00, + 4.79696960e+01, 7.18333359e+01, 3.59848480e+01, 6.81818199e+00, + 3.36363626e+00, 3.22727275e+00, 3.37878799e+00, 5.31818199e+00, + 1.83030300e+01, 3.06060600e+00, 3.28787875e+00, 1.09090912e+00, + 4.24242437e-01, 4.54545468e-01, 7.12121189e-01, 1.25757575e+00, + 1.18181813e+00, 3.01525421e+01, 9.42372894e+01, 6.53559341e+01, + 1.20338984e+01, 1.12542372e+01, 4.38135605e+01, 4.70847473e+01, + 1.21355934e+01, 2.91355934e+01, 1.08355934e+02, 7.77966080e+01, + 1.57457628e+01, 1.87627125e+01, 4.30847473e+01, 4.32372894e+01, + 1.69152546e+01, 1.49661016e+01, 5.56440697e+01, 6.61355896e+01, + 2.35762711e+01, 1.41016951e+01, 2.67288132e+01, 3.67118645e+01, + 1.85593224e+01, 1.16610174e+01, 1.82372875e+01, 5.86101685e+01, + 4.33050842e+01, 1.24406776e+01, 1.50847454e+01, 2.75762711e+01, + 2.06949158e+01, 1.14915257e+01, 5.31186447e+01, 4.93050842e+01, + 9.44067764e+00, 9.22033882e+00, 5.51525421e+01, 5.77796593e+01, + 1.39491529e+01, 1.55084743e+01, 1.16542374e+02, 1.14016953e+02, + 1.03898306e+01, 9.22033882e+00, 7.04406815e+01, 8.36440659e+01, + 12., 6.06779671e+00, 8.53898315e+01, 136., 2.91694908e+01, + 7.42372894e+00, 4.99152527e+01, 9.78644104e+01, 1.57288132e+01, + 4.33898306e+00, 2.73728809e+01, 1.28644073e+02, 6.84406815e+01, + 6.67796612e+00, 2.22711868e+01, 8.26610184e+01, 3.16101704e+01, + 7.62711859e+00, 6.38983059e+00, 5.50847435e+00, 7.25423717e+00, + 1.01694918e+01, 2.25762711e+01, 2.27796612e+01, 1.01186438e+01, + 9.69491482e+00, 1.41525421e+01, 1.68644066e+01, 9.15254211e+00, + 1.02542372e+01, 3.39661026e+01, 4.98474579e+01, 1.35932207e+01, + 7.81355953e+00, 1.76440678e+01, 4.12542381e+01, 9.06779671e+00, + 7.15254259e+00, 3.72711868e+01, 7.75423737e+01, 1.76440678e+01, + 5.25423717e+00, 9.35593224e+00, 36., 1.05084743e+01, + 4.64406776e+00, 2.20338974e+01, 6.99830475e+01, 2.99152546e+01, + 1.23728812e+00, 5.59322059e-01, 4.91525412e-01, 1.01694918e+00, + 2.42372870e+00, 6.05084753e+00, 3.30508471e+00, 1.37288141e+00, + 2.10169482e+00, 1.20338988e+00, 1., 1.59322035e+00, + 2.18644071e+00, 3.18644071e+00, 3.89830518e+00, 2.61016941e+00, + 1.91525424e+00, 1.20338988e+00, 1.28813565e+00, 1.72881353e+00, + 1.74576271e+00, 3.44067788e+00, 6.25423717e+00, 3.93220329e+00, + 1.30508471e+00, 1.01694918e+00, 1.13559318e+00, 1.37288141e+00, + 1.27118647e+00, 2.54237294e+00, 8.81355953e+00, 5.59322023e+00, + 9.73469353e+00, 9.10408173e+01, 5.17755089e+01, 2.87755108e+00, + 2.67346931e+00, 4.24489784e+01, 3.39795914e+01, 8.63265324e+00, + 6.51020432e+00, 5.34081650e+01, 2.99183674e+01, 2.65306115e+00, + 5.81632662e+00, 1.11510201e+02, 8.28163300e+01, 6.55102062e+00, + 4.69387770e+00, 2.38367348e+01, 1.69591827e+01, 4.20408154e+00, + 1.07551022e+01, 1.18204079e+02, 8.24489822e+01, 6.44897938e+00, + 4.26530600e+00, 1.78163261e+01, 1.45714283e+01, 4.42857122e+00, + 7.34693861e+00, 4.39795914e+01, 4.05306129e+01, 9.36734676e+00, + 6.34693861e+00, 9.04489822e+01, 6.15306129e+01, 8.44897938e+00, + 4.36734676e+00, 3.56938782e+01, 2.82244892e+01, 5.77551031e+00, + 8.44897938e+00, 1.24163269e+02, 1.08306122e+02, 6.24489784e+00, + 4.61224508e+00, 4.66530609e+01, 3.26122437e+01, 4.20408154e+00, + 1.15714283e+01, 1.18571426e+02, 8.13469391e+01, 5.67346954e+00, + 8.16326523e+00, 9.68163300e+01, 6.44897995e+01, 5.81632662e+00, + 4.14285707e+00, 3.93877563e+01, 2.58571434e+01, 6.63265324e+00, + 1.15510206e+01, 111., 8.32653046e+01, 7.59183693e+00, + 6.51020432e+00, 9.46938801e+00, 9.34693909e+00, 5.40816307e+00, + 5.57142878e+00, 1.62244892e+01, 1.57551022e+01, 8.18367386e+00, + 1.00408163e+01, 4.45102043e+01, 2.96530609e+01, 7.73469400e+00, + 8.93877506e+00, 4.36122437e+01, 3.07346935e+01, 8.04081631e+00, + 2.03877544e+01, 1.20081635e+02, 7.65510178e+01, 4.79591846e+00, + 8.14285755e+00, 4.96938782e+01, 2.90204086e+01, 4.48979568e+00, + 1.34693880e+01, 1.08224487e+02, 7.81224518e+01, 1.15102043e+01, + 1.21428576e+01, 3.96734695e+01, 2.09591827e+01, 3.42857146e+00, + 4.30612230e+00, 3.81632662e+00, 4.10204077e+00, 3.79591846e+00, + 4.02040815e+00, 4.73469400e+00, 4.85714293e+00, 5.26530600e+00, + 5.81632662e+00, 5.65306139e+00, 5.89795923e+00, 5.18367338e+00, + 6.22448969e+00, 9.51020432e+00, 8.36734676e+00, 7.20408154e+00, + 8.20408154e+00, 2.02244892e+01, 9.34693909e+00, 4.42857122e+00, + 7.61224508e+00, 2.44285717e+01, 1.31836739e+01, 5.40816307e+00, + 1.29591837e+01, 5.52653046e+01, 2.24081631e+01, 3.36734700e+00, + 6.18367338e+00, 2.66122456e+01, 1.37755098e+01, 2.89795923e+00, + 3.01923084e+00, 4.67307711e+00, 1.48461542e+01, 2.83076916e+01, + 1.08269234e+01, 3.19230771e+00, 3.53846145e+00, 3.71153855e+00, + 3.71153855e+00, 7.88461542e+00, 3.48653831e+01, 4.48461533e+01, + 1.19615383e+01, 4.50000000e+00, 4.48076916e+00, 5.80769253e+00, + 3.34615374e+00, 1.10192308e+01, 9.33846130e+01, 6.22307701e+01, + 7.01923084e+00, 3.17307687e+00, 5.42307711e+00, 5.44230747e+00, + 2.73076916e+00, 2.33076916e+01, 1.10461540e+02, 2.19807701e+01, + 2.28846145e+00, 2.28846145e+00, 5.61538458e+00, 2.42307687e+00, + 4.23076916e+00, 6.73076916e+00, 2.07307701e+01, 5.98461533e+01, + 2.47884617e+01, 4.73076916e+00, 4.48076916e+00, 7.05769253e+00, + 3.94230771e+00, 6.38461542e+00, 6.46346130e+01, 1.37115387e+02, + 2.92307701e+01, 3.63461542e+00, 6.55769253e+00, 1.26730766e+01, + 2.25000000e+00, 4.67307711e+00, 1.32596161e+02, 1.36038467e+02, + 4.57692289e+00, 2.32692313e+00, 9.34615421e+00, 1.03269234e+01, + 2.30769229e+00, 3.52884598e+01, 1.30673080e+02, 2.57115383e+01, + 1.19230771e+00, 4.69230747e+00, 1.05769234e+01, 4.50000000e+00, + 1.10576925e+01, 4.98076916e+00, 1.09230766e+01, 1.06307693e+02, + 9.55000000e+01, 7.07692289e+00, 4.13461542e+00, 9.17307663e+00, + 1.36153851e+01, 2.44230771e+00, 1.31538458e+01, 1.37019226e+02, + 9.99615402e+01, 4.01923084e+00, 6.38461542e+00, 2.16538467e+01, + 1.79038467e+01, 8.25000000e+00, 2.57115383e+01, 5.87692299e+01, + 2.00384617e+01, 1.22115383e+01, 3.57692299e+01, 4.60384598e+01, + 1.06153851e+01, 1.63461533e+01, 2.44038467e+01, 1.44038458e+01, + 1.09615383e+01, 2.21730766e+01, 3.44615402e+01, 1.99807701e+01, + 1.52884617e+01, 4.73076916e+00, 3.57692313e+00, 4.26538467e+01, + 1.29788467e+02, 1.84615383e+01, 3.17307687e+00, 6.46153831e+00, + 3.52692299e+01, 1.04807692e+01, 4.28846169e+00, 4.03461533e+01, + 1.06057693e+02, 1.65769234e+01, 6.76923084e+00, 2.12115383e+01, + 4.27500000e+01, 1.96538467e+01, 1.44038458e+01, 3.41538467e+01, + 3.62500000e+01, 1.87115383e+01, 1.87692299e+01, 39., + 2.27115383e+01, 1.48653851e+01, 1.26923075e+01, 1.50192308e+01, + 1.84423084e+01, 1.68269234e+01, 1.69038467e+01, 2.03269234e+01, + 3.20781250e+01, 8.62500000e+00, 3.90468750e+01, 1.12671875e+02, + 6.92968750e+01, 2.92968750e+01, 3.96406250e+01, 1.11906250e+02, + 1.66093750e+01, 1.93437500e+01, 3.93281250e+01, 7.78281250e+01, + 6.99218750e+01, 5.07968750e+01, 3.50625000e+01, 4.60625000e+01, + 1.65625000e+01, 1.90781250e+01, 3.28281250e+01, 4.01718750e+01, + 4.51093750e+01, 5.05156250e+01, 3.38593750e+01, 2.12968750e+01, + 6.51562500e+00, 7.98437500e+00, 1.19062500e+01, 1.24062500e+01, + 1.73125000e+01, 2.02812500e+01, 1.29531250e+01, 7.70312500e+00, + 2.41406250e+01, 1.20625000e+01, 3.43437500e+01, 8.37656250e+01, + 7.44375000e+01, 5.68593750e+01, 5.07968750e+01, 6.67187500e+01, + 2.17500000e+01, 1.81250000e+01, 3.09375000e+01, 6.12656250e+01, + 7.01093750e+01, 7.98281250e+01, 6.24375000e+01, 4.57031250e+01, + 1.98593750e+01, 2.07343750e+01, 3.38593750e+01, 3.98281250e+01, + 5.84531250e+01, 7.44062500e+01, 4.81562500e+01, 2.62812500e+01, + 7.64062500e+00, 1.07812500e+01, 1.47656250e+01, 1.52187500e+01, + 2.29062500e+01, 2.78593750e+01, 1.61718750e+01, 8.68750000e+00, + 1.59062500e+01, 1.44531250e+01, 2.71875000e+01, 5.04218750e+01, + 6.44531250e+01, 6.13906250e+01, 4.40625000e+01, 3.11875000e+01, + 2.11562500e+01, 2.72656250e+01, 3.87500000e+01, 5.41875000e+01, + 7.44062500e+01, 7.66562500e+01, 4.47031250e+01, 2.41250000e+01, + 1.91875000e+01, 2.65000000e+01, 3.81250000e+01, 5.36875000e+01, + 6.52343750e+01, 7.06718750e+01, 4.72031250e+01, 1.96406250e+01, + 6.26562500e+00, 1.00781250e+01, 1.83437500e+01, 26., + 2.69687500e+01, 2.77031250e+01, 1.77812500e+01, 6.57812500e+00, + 1.07500000e+01, 1.42656250e+01, 2.06406250e+01, 3.22187500e+01, + 5.07812500e+01, 5.29687500e+01, 2.24218750e+01, 1.12656250e+01, + 1.90468750e+01, 2.21562500e+01, 3.51718750e+01, 5.30781250e+01, + 6.21562500e+01, 6.42968750e+01, 3.45937500e+01, 1.95625000e+01, + 2.24375000e+01, 1.97187500e+01, 3.59843750e+01, 5.45625000e+01, + 5.62187500e+01, 5.29218750e+01, 3.85781250e+01, 2.57656250e+01, + 8.81250000e+00, 7.14062500e+00, 1.07343750e+01, 1.33281250e+01, + 1.58750000e+01, 2.05937500e+01, 1.70468750e+01, 9.28125000e+00, + 8.75728130e+00, 5.22330093e+00, 2.37184467e+01, 4.70970879e+01, + 1.32233009e+01, 8.36893177e+00, 3.33592224e+01, 4.38349533e+01, + 5.32912636e+01, 4.17475748e+00, 5.89320374e+00, 1.13786411e+01, + 5.08737850e+00, 3.71844649e+00, 4.30485420e+01, 1.54135925e+02, + 9.95339813e+01, 5.09708738e+00, 2.43689322e+00, 4.09708738e+00, + 4.72815514e+00, 3.80582523e+00, 2.60873795e+01, 1.59563110e+02, + 2.79223309e+01, 5.57281542e+00, 3.14563107e+00, 3.68932033e+00, + 4.63106775e+00, 5.10679626e+00, 14., 5.06699028e+01, + 5.70873785e+00, 2.09708738e+00, 5.33009720e+00, 6.10679626e+00, + 2.74757290e+00, 7.31067944e+00, 1.56631073e+02, 1.49611649e+02, + 2.37864075e+01, 2.95145631e+00, 3.02912617e+00, 4., + 3.69902921e+00, 5.87378645e+00, 1.36427185e+02, 1.60776703e+02, + 3.32912636e+01, 7.55339813e+00, 6.71844673e+00, 9.03883457e+00, + 9.44660187e+00, 1.25533981e+01, 4.96601944e+01, 1.30077667e+02, + 1.59902916e+01, 7.83495140e+00, 6.49514580e+00, 7.18446589e+00, + 7.26213598e+00, 8.55339813e+00, 1.62912617e+01, 2.91553402e+01, + 1.11456308e+01, 3.41747570e+00, 3.91262126e+00, 5.95145655e+00, + 4.47572803e+00, 8.67961121e+00, 1.14174759e+02, 1.05533981e+02, + 2.00776691e+01, 7.66990280e+00, 7.79611635e+00, 1.02330093e+01, + 1.13203888e+01, 1.36019421e+01, 5.80873795e+01, 8.10679626e+01, + 1.69708729e+01, 9.94174767e+00, 1.17184467e+01, 1.38058252e+01, + 1.38640776e+01, 1.66990299e+01, 2.78058262e+01, 3.48932037e+01, + 9.69902897e+00, 6.91262150e+00, 8.24271870e+00, 8.39805794e+00, + 7.49514580e+00, 8.67961121e+00, 1.40097084e+01, 1.64563103e+01, + 6.45631075e+00, 4.14563084e+00, 2.94174767e+00, 4.12621355e+00, + 3.32038832e+00, 5.09708738e+00, 1.40970869e+01, 1.88252430e+01, + 7.20388365e+00, 4., 4.25242710e+00, 5.12621355e+00, + 6.79611635e+00, 7.54368925e+00, 1.20776701e+01, 1.49029131e+01, + 7.92232990e+00, 4.65048552e+00, 5.34951448e+00, 5.84466028e+00, + 6.55339813e+00, 6.63106775e+00, 9.18446636e+00, 1.20776701e+01, + 4.66019440e+00, 2.76699018e+00, 4.04854345e+00, 4.25242710e+00, + 4.28155327e+00, 3.93203878e+00, 6.16504860e+00, 7.07767010e+00, + 3.77464795e+00, 5.83098602e+00, 5.60563374e+00, 6.39436626e+00, + 2.90563374e+01, 4.95211258e+01, 1.12394361e+01, 3.18309855e+00, + 4.33802795e+00, 4.38028193e+00, 2.28169012e+00, 4.90140867e+00, + 1.19943665e+02, 1.51971832e+02, 1.42816906e+01, 2.53521132e+00, + 1.13661976e+01, 2.34647884e+01, 4.12676048e+00, 3.09859157e+00, + 7.53521118e+01, 1.49211273e+02, 1.96901417e+01, 4.07042265e+00, + 1.89436626e+01, 80., 2.42112675e+01, 6.26760578e+00, + 9.63380241e+00, 2.85633812e+01, 1.36197186e+01, 6.69014072e+00, + 8.11267567e+00, 1.02394361e+01, 9.83098602e+00, 8.60563374e+00, + 1.83802814e+01, 2.93098583e+01, 1.42957745e+01, 7.87323952e+00, + 6.66197205e+00, 8.19718266e+00, 8.84507084e+00, 9.01408482e+00, + 4.87042236e+01, 1.35521133e+02, 3.65774651e+01, 7.61971807e+00, + 2.14084506e+00, 3.80281687e+00, 2.78873229e+00, 2.63380289e+00, + 4.54225349e+01, 1.55281693e+02, 8.68591537e+01, 3.26760554e+00, + 4.38028193e+00, 1.56619720e+01, 9.05633831e+00, 2.87323952e+00, + 9.28169060e+00, 1.44492950e+02, 1.14619720e+02, 6.21126747e+00, + 9.54929543e+00, 1.06197186e+01, 9.91549301e+00, 7.66197205e+00, + 1.25774651e+01, 1.66478882e+01, 1.14788733e+01, 9.11267567e+00, + 1.14929581e+01, 1.51690140e+01, 1.47042255e+01, 1.08732395e+01, + 2.14647884e+01, 4.35492973e+01, 2.50140839e+01, 1.12253523e+01, + 5.59154940e+00, 8.05633831e+00, 8.32394409e+00, 7.23943663e+00, + 2.64366188e+01, 1.20859154e+02, 5.34225349e+01, 7.53521109e+00, + 1.78873241e+00, 2.50704217e+00, 4.63380289e+00, 3.94366193e+00, + 1.60140839e+01, 1.39323944e+02, 1.10535210e+02, 4.78873253e+00, + 5.46478891e+00, 5.67605639e+00, 4.70422554e+00, 3.56338024e+00, + 6.38028193e+00, 8.67605591e+00, 5.08450699e+00, 3.98591542e+00, + 6.64788723e+00, 7.70422554e+00, 7.52112675e+00, 6.47887325e+00, + 9.66197205e+00, 1.39859152e+01, 9.50704193e+00, 5.88732386e+00, + 5.43661976e+00, 7.70422554e+00, 7.90140867e+00, 5.15492964e+00, + 9.77464771e+00, 2.30985909e+01, 1.33943663e+01, 5.77464771e+00, + 2.49295783e+00, 3.59154940e+00, 4.50704241e+00, 3.08450699e+00, + 8.61971855e+00, 3.21126747e+01, 2.02676048e+01, 4.60563374e+00, + 4.57894754e+00, 5.44736862e+00, 5.76315784e+00, 6.22368431e+00, + 4.50000000e+00, 4.77631569e+00, 4.78947353e+00, 3.82894731e+00, + 6.02631569e+00, 7.76315784e+00, 1.04342108e+01, 1.40526314e+01, + 9.31578922e+00, 7.67105246e+00, 6.63157892e+00, 5.27631569e+00, + 5.26315784e+00, 6.56578970e+00, 1.55263157e+01, 2.61052628e+01, + 1.27500000e+01, 6.72368431e+00, 5.06578970e+00, 4.69736862e+00, + 3.03947377e+00, 5.52631569e+00, 3.13157902e+01, 3.98552628e+01, + 9.22368431e+00, 3.13157892e+00, 2.35526323e+00, 3.50000000e+00, + 6.17105246e+00, 7.57894754e+00, 1.42105265e+01, 1.76973686e+01, + 1.16578951e+01, 8.68421078e+00, 7.42105246e+00, 5.92105246e+00, + 9.76315784e+00, 1.36315794e+01, 2.76315784e+01, 4.94078941e+01, + 2.58421059e+01, 1.27105265e+01, 1.07105265e+01, 9.17105293e+00, + 8.05263138e+00, 1.02500000e+01, 5.21973686e+01, 1.38328949e+02, + 3.67368431e+01, 7.53947353e+00, 7.23684216e+00, 7.34210539e+00, + 2.21052623e+00, 4.84210539e+00, 1.20144737e+02, 1.47802628e+02, + 1.39868422e+01, 3.03947377e+00, 4.35526323e+00, 5.03947353e+00, + 5.40789461e+00, 7.03947353e+00, 1.43552628e+01, 2.77368412e+01, + 2.05921059e+01, 1.03421049e+01, 9.34210491e+00, 5.52631569e+00, + 9.36842060e+00, 1.05000000e+01, 2.83289471e+01, 1.09236839e+02, + 7.55131607e+01, 1.32631578e+01, 9.19736862e+00, 8.10526276e+00, + 6.34210539e+00, 4.76315784e+00, 3.45921059e+01, 1.51763153e+02, + 1.10697365e+02, 4.97368431e+00, 4.48684216e+00, 6.59210539e+00, + 6.69736862e+00, 3.81578946e+00, 5.84342117e+01, 1.37171051e+02, + 2.15657902e+01, 4.76315784e+00, 8.67105293e+00, 1.45263157e+01, + 4.28947353e+00, 6.28947353e+00, 9.02631569e+00, 2.85263157e+01, + 3.05657902e+01, 1.15657892e+01, 4.84210539e+00, 3.68421054e+00, + 1.27236843e+01, 7.92105246e+00, 1.21578951e+01, 1.07539474e+02, + 1.33684204e+02, 1.37500000e+01, 5.26315784e+00, 6.26315784e+00, + 1.42631578e+01, 3.69736838e+00, 5.38157892e+00, 1.26894737e+02, + 1.39960526e+02, 1.12236843e+01, 5.23684216e+00, 1.35131578e+01, + 2.69078941e+01, 7.02631569e+00, 1.08026314e+01, 3.74210510e+01, + 2.26578941e+01, 1.15263157e+01, 1.77631588e+01, 4.94605255e+01, + 1.20483875e+01, 7.25806475e+00, 5.83870983e+00, 5.11290312e+00, + 6.27419376e+00, 1.14677420e+01, 1.97258072e+01, 1.75483875e+01, + 2.09838715e+01, 1.04354839e+01, 9.62903214e+00, 1.27741938e+01, + 1.67580643e+01, 3.34838715e+01, 4.94838715e+01, 3.78387108e+01, + 2.33870964e+01, 2.91612911e+01, 1.11290321e+01, 1.66612911e+01, + 6.27903214e+01, 1.03854836e+02, 5.88709679e+01, 2.91774197e+01, + 9.74516144e+01, 1.00725807e+02, 6.50000000e+00, 5.69354820e+00, + 8.83548355e+01, 1.22870964e+02, 2.93548393e+01, 2.11935482e+01, + 1.69354839e+01, 1.14354839e+01, 1.03225803e+01, 7.87096786e+00, + 7.38709688e+00, 1.34032259e+01, 2.36774197e+01, 2.08225803e+01, + 3.11451607e+01, 1.94677410e+01, 1.83548393e+01, 1.92258072e+01, + 1.90967751e+01, 3.32580643e+01, 5.46935501e+01, 4.41774178e+01, + 3.04838715e+01, 2.06129036e+01, 1.62419357e+01, 2.11290321e+01, + 4.69193535e+01, 7.86774216e+01, 6.73709641e+01, 4.72258072e+01, + 7.98871002e+01, 7.63871002e+01, 7.91935492e+00, 1.26774197e+01, + 1.20145164e+02, 1.27322578e+02, 3.67741928e+01, 2.90645161e+01, + 1.65806446e+01, 1.43064518e+01, 1.08548384e+01, 7.38709688e+00, + 7.91935492e+00, 1.35645161e+01, 2.19032249e+01, 1.95645161e+01, + 3.39516144e+01, 2.60483875e+01, 2.22258072e+01, 1.97903233e+01, + 1.89838715e+01, 2.47903233e+01, 4.62258072e+01, 4.57258072e+01, + 3.77419357e+01, 2.93225803e+01, 2.11935482e+01, 2.33709679e+01, + 3.11290321e+01, 4.22419357e+01, 5.40161285e+01, 4.97096786e+01, + 4.88064499e+01, 3.69193535e+01, 1.22258062e+01, 2.24032249e+01, + 1.04935486e+02, 1.13709679e+02, 3.64193535e+01, 3.25322571e+01, + 1.24677420e+01, 1.26451616e+01, 8.51612949e+00, 5.62903214e+00, + 5.62903214e+00, 9.19354820e+00, 1.43225803e+01, 1.22580643e+01, + 2.50483875e+01, 2.04193554e+01, 1.73548393e+01, 1.52903223e+01, + 1.49032259e+01, 1.94516125e+01, 3.44354820e+01, 3.05161285e+01, + 3.02903233e+01, 2.64032249e+01, 1.98387089e+01, 1.84354839e+01, + 1.97741928e+01, 2.32741928e+01, 3.50967751e+01, 3.84193535e+01, + 3.21612892e+01, 2.10806446e+01, 1.38064518e+01, 1.99677410e+01, + 6.10645180e+01, 5.94354820e+01, 2.87741928e+01, 2.97741928e+01, + 1.32826090e+01, 3.13260860e+01, 1.33478260e+01, 7.15217400e+00, + 3.79782600e+01, 1.07434784e+02, 6.01304359e+01, 7.82608700e+00, + 1.88695660e+01, 3.05869560e+01, 1.32173910e+01, 6.54347849e+00, + 2.01739140e+01, 4.43913040e+01, 1.34782610e+01, 6.28260851e+00, + 7.54347849e+00, 8.91304302e+00, 7.15217400e+00, 7.63043499e+00, + 9.28260899e+00, 1.11304350e+01, 9.80434799e+00, 6.67391300e+00, + 3.06521749e+00, 3.13043475e+00, 3.56521749e+00, 3.78260875e+00, + 5.32608700e+00, 6.34782600e+00, 4., 3.71739125e+00, + 2.72826080e+01, 3.99130440e+01, 1.91739140e+01, 8.89130402e+00, + 5.06521721e+01, 1.24282608e+02, 6.42826080e+01, 15., + 3.42391319e+01, 5.31304359e+01, 1.43043480e+01, 6.58695650e+00, + 1.11304344e+02, 1.44543472e+02, 2.50652180e+01, 7.30434799e+00, + 2.32173920e+01, 3.19565220e+01, 1.01956520e+01, 1.11521740e+01, + 2.16086960e+01, 2.12391300e+01, 8.65217400e+00, 7.19565201e+00, + 4.15217400e+00, 4.93478251e+00, 4.91304350e+00, 6.15217400e+00, + 6.78260851e+00, 9.63043499e+00, 6.28260851e+00, 3.50000000e+00, + 3.28260880e+01, 2.75434780e+01, 1.32608700e+01, 1.24130430e+01, + 3.06521740e+01, 4.73260880e+01, 3.16304340e+01, 2.15000000e+01, + 5.46304359e+01, 3.52608681e+01, 6.91304350e+00, 2.80217400e+01, + 1.44891312e+02, 1.33673920e+02, 1.41086960e+01, 1.87608700e+01, + 4.20869560e+01, 3.98043480e+01, 7.60869551e+00, 1.29565220e+01, + 7.66956558e+01, 4.24130440e+01, 6.23913050e+00, 9.71739101e+00, + 6., 6.93478251e+00, 4.45652151e+00, 6.86956501e+00, + 6.69565201e+00, 7.28260851e+00, 5.86956501e+00, 4.80434799e+00, + 2.68478260e+01, 3.58695641e+01, 3.43260880e+01, 3.06739140e+01, + 2.01956520e+01, 1.92173920e+01, 2.88913040e+01, 3.32391319e+01, + 4.59782600e+01, 2.36304340e+01, 1.11086960e+01, 7.73478241e+01, + 1.39891312e+02, 7.29782639e+01, 1.81739140e+01, 3.29782600e+01, + 3.94565201e+01, 2.39782600e+01, 4.04347849e+00, 2.34347820e+01, + 8.65434799e+01, 3.40434799e+01, 7.26086950e+00, 1.41956520e+01, + 7.69565201e+00, 8.04347801e+00, 4.06521749e+00, 4.84782600e+00, + 4.71739149e+00, 4.86956501e+00, 3.50000000e+00, 4.43478251e+00, + 6.28571415e+00, 6.28571415e+00, 6.63265324e+00, 6.32653046e+00, + 7.42857122e+00, 1.04285717e+01, 1.02857141e+01, 7.38775492e+00, + 1.11836739e+01, 1.21428576e+01, 9.46938801e+00, 8.59183693e+00, + 2.76122456e+01, 5.66530609e+01, 2.31632652e+01, 1.28571424e+01, + 7.67755127e+01, 1.08653061e+02, 5.75510216e+00, 4.65306139e+00, + 6.26122437e+01, 1.48571426e+02, 2.83469391e+01, 8.18367386e+00, + 1.55387756e+02, 1.71591843e+02, 7.71428585e+00, 6.16326523e+00, + 7.71428604e+01, 1.43734695e+02, 1.81836739e+01, 5.93877554e+00, + 8.87755108e+00, 8.20408154e+00, 8.81632614e+00, 8.40816307e+00, + 8.71428585e+00, 1.26122446e+01, 1.33061228e+01, 8.93877506e+00, + 1.67755108e+01, 1.44081631e+01, 1.53877554e+01, 1.29591837e+01, + 1.87755108e+01, 3.36122437e+01, 2.77142849e+01, 2.02244892e+01, + 2.30816326e+01, 2.54489803e+01, 1.62653065e+01, 1.21836739e+01, + 3.18163261e+01, 102., 4.21224480e+01, 1.90204086e+01, + 1.12469391e+02, 1.57469391e+02, 2.13265305e+01, 5.65306139e+00, + 3.30816345e+01, 1.37653061e+02, 5.14081650e+01, 1.04693880e+01, + 7.48979568e+00, 5.81632662e+00, 6.55102062e+00, 6., + 5.48979568e+00, 7.38775492e+00, 8.08163261e+00, 8.10204124e+00, + 1.48163261e+01, 9.46938801e+00, 9.89795876e+00, 1.14897957e+01, + 1.41224489e+01, 1.82448978e+01, 1.95102043e+01, 1.67551022e+01, + 1.50408163e+01, 8.69387722e+00, 1.14693880e+01, 1.15510206e+01, + 1.61632652e+01, 2.74897957e+01, 2.68163261e+01, 2.16734695e+01, + 1.44489794e+01, 3.08571434e+01, 1.08163261e+01, 6.79591846e+00, + 2.14489803e+01, 5.19387741e+01, 3.04897957e+01, 1.54693880e+01, + 1., 7.34693885e-01, 1.30612242e+00, 8.97959173e-01, + 7.95918345e-01, 1.30612242e+00, 1.87755108e+00, 1.38775516e+00, + 3.93877554e+00, 2.57142854e+00, 2.75510216e+00, 2.63265300e+00, + 3.53061223e+00, 5.93877554e+00, 6.06122446e+00, 4.79591846e+00, + 3.69387746e+00, 2.63265300e+00, 2.10204077e+00, 2.06122446e+00, + 5.06122446e+00, 9.12244892e+00, 8.57142830e+00, 5.30612230e+00, + 4.42857122e+00, 2.22448969e+00, 1.28571427e+00, 1.51020408e+00, + 8.02040863e+00, 1.35714283e+01, 5.85714293e+00, 3.77551031e+00, + 8.92857170e+00, 4.52857132e+01, 4.21071434e+01, 3.36785698e+01, + 5.19285698e+01, 4.87500000e+01, 2.51428566e+01, 8.39285755e+00, + 1.26071424e+01, 3.95000000e+01, 2.40357151e+01, 1.91428566e+01, + 8.54285736e+01, 1.15571426e+02, 3.28928566e+01, 5.14285707e+00, + 3.78214302e+01, 4.87857132e+01, 1.14285717e+01, 8.21428585e+00, + 8.47857132e+01, 1.12035713e+02, 1.65357151e+01, 5.82142878e+00, + 5.21428585e+00, 7.82142878e+00, 1.67857146e+00, 1.14285719e+00, + 4.57142878e+00, 6.03571415e+00, 2.39285707e+00, 1.07142854e+00, + 1.48214283e+01, 9.05000000e+01, 7.71428604e+01, 3.76785698e+01, + 4.25357132e+01, 5.40357132e+01, 1.12500000e+01, 4.32142878e+00, + 2.21785717e+01, 7.76428604e+01, 8.73928604e+01, 5.81071434e+01, + 5.86785698e+01, 6.86071396e+01, 3.16071434e+01, 1.67500000e+01, + 2.52142849e+01, 2.74285717e+01, 2.77500000e+01, 7.58214264e+01, + 1.25964287e+02, 9.22857132e+01, 1.37500000e+01, 1.88928566e+01, + 7.96428585e+00, 5.14285707e+00, 1.64285719e+00, 5.21428585e+00, + 2.12500000e+01, 9.25000000e+00, 1.25000000e+00, 4., + 1.33928576e+01, 1.05178574e+02, 7.33214264e+01, 1.76428566e+01, + 1.71428566e+01, 5.48214302e+01, 2.41071434e+01, 5.39285707e+00, + 1.19285717e+01, 5.07857132e+01, 1.04821426e+02, 9.69642868e+01, + 2.38214283e+01, 2.68571434e+01, 2.96071434e+01, 2.45357151e+01, + 2.07500000e+01, 1.25714283e+01, 3.67857132e+01, 9.52500000e+01, + 5.77500000e+01, 1.63571434e+01, 1.76428566e+01, 5.06785698e+01, + 5.42857122e+00, 7.50000000e-01, 1.07142854e+00, 7.64285707e+00, + 7.89285707e+00, 1.82142854e+00, 2.67857146e+00, 1.10357141e+01, + 2.28571439e+00, 1.79285717e+01, 1.10714283e+01, 2.71428561e+00, + 1.85714281e+00, 6.10714293e+00, 6.03571415e+00, 1.67857146e+00, + 1.28571427e+00, 8.60714245e+00, 2.37857151e+01, 22., + 2.53571439e+00, 2.85714293e+00, 5.46428585e+00, 4.85714293e+00, + 2.17857146e+00, 6.07142866e-01, 5.46428585e+00, 1.38214283e+01, + 2.78571439e+00, 1.96428573e+00, 6.85714293e+00, 1.32142859e+01, + 6.42857134e-01, 1.07142858e-01, 2.14285716e-01, 2.85714298e-01, + 3.21428567e-01, 4.64285702e-01, 6.42857134e-01, 1.67857146e+00, + 1.13953483e+00, 1.23255813e+00, 1.62790692e+00, 4.96511650e+00, + 1.58837214e+01, 9.87209320e+00, 2.56976748e+00, 1.22093022e+00, + 1.09453491e+02, 4.52906990e+01, 4.06976748e+00, 8.15116310e+00, + 3.05930233e+01, 1.81860466e+01, 3.98837209e+00, 5.66279078e+00, + 1.16313957e+02, 5.68139534e+01, 3.18604660e+00, 7.17441845e+00, + 1.24941864e+02, 8.43953476e+01, 3.13953495e+00, 1.04418602e+01, + 2.83953495e+01, 2.17209301e+01, 6.24418592e+00, 3.43023252e+00, + 3.02674427e+01, 2.01627903e+01, 4.25581408e+00, 1.63139534e+01, + 1.17441857e+00, 1.27906978e+00, 1.76744187e+00, 4.66279078e+00, + 1.82325573e+01, 1.50581398e+01, 4.18604660e+00, 1.86046517e+00, + 5.71744194e+01, 5.07790680e+01, 4.39534903e+00, 1.07906981e+01, + 2.83372097e+01, 2.78837204e+01, 7.93023252e+00, 3.60465121e+00, + 1.27546509e+02, 1.34511627e+02, 4.33720922e+00, 4.50000000e+00, + 1.00616280e+02, 1.14813957e+02, 5.31395340e+00, 4.56976748e+00, + 3.20348854e+01, 3.87441864e+01, 8.27906990e+00, 3.51162791e+00, + 5.92093010e+01, 1.09267441e+02, 6.63953495e+00, 8.68604660e+00, + 9.41860437e-01, 1.13953483e+00, 1.38372087e+00, 3.16279078e+00, + 1.53837214e+01, 1.82209301e+01, 6., 1.65116274e+00, + 6.77906990e+00, 9.59302330e+00, 3.30232549e+00, 7.97674417e+00, + 3.11511631e+01, 3.70232544e+01, 1.06279068e+01, 3.79069757e+00, + 7.16976776e+01, 1.36139542e+02, 9., 5.23255825e+00, + 2.65116272e+01, 5.77674408e+01, 9.62790680e+00, 3.43023252e+00, + 3.04069767e+01, 1.28988373e+02, 2.54302330e+01, 2.79069757e+00, + 3.12558136e+01, 1.31151169e+02, 2.33720932e+01, 3., + 8.83720934e-01, 7.67441869e-01, 1.22093022e+00, 2.08139539e+00, + 8.32558155e+00, 1.49651165e+01, 4.97674417e+00, 1.46511626e+00, + 1.82558143e+00, 1.66279066e+00, 2.13953495e+00, 3.74418616e+00, + 1.97558136e+01, 3.45581398e+01, 1.03604650e+01, 3.03488374e+00, + 5.87209320e+00, 3.36279068e+01, 4.26744175e+00, 3.76744175e+00, + 1.54302330e+01, 3.40813942e+01, 1.44651165e+01, 3.02325583e+00, + 8.05813980e+00, 1.19476746e+02, 3.67325592e+01, 2.40697670e+00, + 7.31395340e+00, 4.10232544e+01, 1.43953485e+01, 2.61627913e+00, + 1.24561405e+00, 7.71929801e-01, 1.54385960e+00, 4.63157892e+00, + 6.61403513e+00, 2.07017541e+00, 1.52631581e+00, 7.36842096e-01, + 4.71929836e+00, 3.61403513e+00, 7.05263138e+00, 2.50701752e+01, + 25., 1.11228065e+01, 4.82456160e+00, 3.24561405e+00, + 1.26491232e+01, 3.77192974e+00, 1.10350876e+01, 3.21754379e+01, + 2.41578941e+01, 1.26315794e+01, 7.17543840e+00, 2.23333340e+01, + 3.97368431e+01, 2.24561405e+00, 7.56140327e+00, 5.58771935e+01, + 1.70877190e+01, 3.64912271e+00, 1.53508768e+01, 1.24719299e+02, + 6.31578922e-01, 6.14035070e-01, 1.36842108e+00, 7.19298267e+00, + 1.00877190e+01, 3.31578946e+00, 1.52631581e+00, 5.78947365e-01, + 3.78947377e+00, 3.49122810e+00, 6.85964918e+00, 3.17894745e+01, + 3.83684196e+01, 1.30526314e+01, 4.73684216e+00, 3.10526323e+00, + 9.29649124e+01, 4.05263138e+00, 8.35087681e+00, 3.82456131e+01, + 3.73859634e+01, 1.10350876e+01, 7.19298267e+00, 1.03333336e+02, + 8.97192993e+01, 3.28070164e+00, 5.24561405e+00, 1.24245613e+02, + 9.35438614e+01, 4., 1.14385967e+01, 1.23666664e+02, + 8.94736826e-01, 1.01754391e+00, 9.12280679e-01, 6.14035082e+00, + 1.28245611e+01, 4.73684216e+00, 1.10526311e+00, 5.61403513e-01, + 9.24561405e+00, 3.42105269e+00, 5.56140327e+00, 2.93333340e+01, + 4.29649124e+01, 1.57719297e+01, 3.64912271e+00, 4.63157892e+00, + 1.34842102e+02, 6.54385948e+00, 4.50877190e+00, 5.19473686e+01, + 8.16140366e+01, 9.61403465e+00, 3.10526323e+00, 1.01929825e+02, + 8.33157883e+01, 8.36842060e+00, 4.15789461e+00, 1.09245613e+02, + 1.29736847e+02, 4.91228056e+00, 5.17543840e+00, 55., + 4.38596487e-01, 3.50877196e-01, 5.61403513e-01, 4.28070164e+00, + 1.25614033e+01, 4.31578970e+00, 8.94736826e-01, 4.38596487e-01, + 1.74035091e+01, 2.63157892e+00, 4.40350866e+00, 1.76315784e+01, + 3.41228065e+01, 1.41578951e+01, 3.38596487e+00, 4.29824543e+00, + 1.34438599e+02, 1.79824562e+01, 2.70175433e+00, 2.44561405e+01, + 9.98947372e+01, 1.34035091e+01, 2.85964918e+00, 3.55614052e+01, + 5.31403503e+01, 1.43157892e+01, 3.38596487e+00, 3.03508778e+01, + 1.25543861e+02, 1.52456141e+01, 3.68421054e+00, 1.61228065e+01, + 1.76739140e+01, 1.02826090e+01, 2.43913040e+01, 2.06521740e+01, + 5.04347849e+00, 9.10869598e+00, 1.87826080e+01, 1.76521740e+01, + 1.83043480e+01, 9.04347801e+00, 6.38695641e+01, 7.04347839e+01, + 7.04347849e+00, 8.36956501e+00, 2.84347820e+01, 3.09347820e+01, + 2.10434780e+01, 8.13043499e+00, 7.92826080e+01, 8.85217361e+01, + 7.21739149e+00, 5.30434799e+00, 4.20217400e+01, 5.92391319e+01, + 1.72608700e+01, 6.28260851e+00, 5.71739120e+01, 5.61304359e+01, + 5.95652151e+00, 7.19565201e+00, 4.96956520e+01, 5.94565201e+01, + 9.02173901e+00, 6.21739149e+00, 9.54782639e+01, 8.68478241e+01, + 4.06521749e+00, 3.65217400e+00, 5.11086960e+01, 4.94782600e+01, + 1.13478260e+01, 6.95652151e+00, 9.73260880e+01, 8.78478241e+01, + 2.78260875e+00, 2.08695650e+00, 8.23695679e+01, 9.24782639e+01, + 2.81956520e+01, 1.43478260e+01, 7.50217361e+01, 5.41956520e+01, + 3.78260875e+00, 4.86956501e+00, 7.16304321e+01, 9.55217361e+01, + 1.77391300e+01, 1.62391300e+01, 5.89782600e+01, 3.61521721e+01, + 8.80434799e+00, 1.24347830e+01, 5.76304359e+01, 5.74565201e+01, + 7.86956501e+00, 8.65217400e+00, 5.07173920e+01, 3.64782600e+01, + 3.91304350e+00, 4.76086950e+00, 6.74565201e+01, 6.12391319e+01, + 1.10217390e+01, 8.63043499e+00, 7.05217361e+01, 4.19782600e+01, + 1.93478262e+00, 4.02173901e+00, 8.99565201e+01, 8.29347839e+01, + 1.32826090e+01, 2.26086960e+01, 7.41956558e+01, 3.71956520e+01, + 5.13043499e+00, 1.27608700e+01, 8.81086960e+01, 7.63913040e+01, + 1.48478260e+01, 2.32173920e+01, 5.11086960e+01, 2.13913040e+01, + 7.56521749e+00, 1.48043480e+01, 7.48478241e+01, 5.23695641e+01, + 9.65217400e+00, 5.82608700e+00, 2.15652180e+01, 1.42173910e+01, + 3.06521749e+00, 6.86956501e+00, 5.06086960e+01, 4.18478279e+01, + 1.62173920e+01, 9.52173901e+00, 2.02826080e+01, 1.22608700e+01, + 3.84782600e+00, 8.47826099e+00, 6.12608681e+01, 4.78043480e+01, + 1.47826090e+01, 1.48478260e+01, 1.46304350e+01, 7.02173901e+00, + 5.86956501e+00, 1.51956520e+01, 4.91304359e+01, 3.11956520e+01, + 1.15652170e+01, 1.20434780e+01, 1.60652180e+01, 6.50000000e+00, + 4.80434799e+00, 1.12608700e+01, 2.73695660e+01, 1.80217400e+01, + 1.17714281e+01, 3.22857141e+00, 3.31428576e+00, 9.97142887e+00, + 1.27714281e+01, 8.82857132e+00, 1.38571424e+01, 9.22857189e+00, + 2.92857151e+01, 4., 3.94285703e+00, 2.64571438e+01, + 2.16000004e+01, 7.88571405e+00, 1.20857143e+01, 7.10285721e+01, + 3.64857140e+01, 8.14285755e+00, 3.40000010e+00, 4.77428589e+01, + 3.24857140e+01, 1.91714287e+01, 3.31142845e+01, 9.50285721e+01, + 1.00285711e+01, 4.48571444e+00, 1.13999996e+01, 4.98285713e+01, + 30., 1.35142860e+01, 1.37142859e+01, 2.43428574e+01, + 1.45714283e+01, 3.22857141e+00, 4.51428556e+00, 3.58571434e+01, + 1.94285717e+01, 7.28571415e+00, 1.00571432e+01, 4.58285713e+01, + 5.73714294e+01, 1.11428571e+00, 2.97142863e+00, 6.19714279e+01, + 2.50571423e+01, 3.59999990e+00, 1.27714281e+01, 1.30800003e+02, + 3.18571434e+01, 1.60000002e+00, 3.05714297e+00, 1.26314285e+02, + 7.96857147e+01, 8.45714283e+00, 1.64571438e+01, 9.78857117e+01, + 1.38285713e+01, 2.94285703e+00, 1.11428576e+01, 4.73714294e+01, + 2.53999996e+01, 7.74285698e+00, 8.65714264e+00, 3.49142876e+01, + 3.41142845e+01, 1.31428576e+00, 2.31428576e+00, 4.16285706e+01, + 1.73714294e+01, 3.71428561e+00, 8.80000019e+00, 1.18542854e+02, + 4.49142876e+01, 7.42857158e-01, 1.94285715e+00, 1.23971428e+02, + 60., 1.48571432e+00, 5.85714293e+00, 1.21885712e+02, + 2.56285706e+01, 1.60000002e+00, 4.22857141e+00, 1.23342857e+02, + 5.45142860e+01, 4.82857132e+00, 5.59999990e+00, 7.31428604e+01, + 7.34285736e+00, 3.45714283e+00, 6.82857132e+00, 1.26571426e+01, + 8.88571453e+00, 6.80000019e+00, 6.80000019e+00, 1.64571438e+01, + 3.17714291e+01, 3.51428580e+00, 4.25714302e+00, 7.78000031e+01, + 2.39142857e+01, 2.08571434e+00, 6.77142859e+00, 9.77428589e+01, + 2.39428577e+01, 1.65714288e+00, 3.74285722e+00, 1.30457138e+02, + 5.60857124e+01, 2.40000010e+00, 3.45714283e+00, 7.23142853e+01, + 1.31428576e+01, 2.85714293e+00, 4., 3.15142860e+01, + 1.82857151e+01, 7.77142859e+00, 4.65714264e+00, 3.65428581e+01, + 3.88571429e+00, 2.94285703e+00, 3.34285712e+00, 4.14285707e+00, + 6.37142849e+00, 5.34285736e+00, 4.51428556e+00, 5.40000010e+00, + 1.02379997e+02, 5.12799988e+01, 8.39999974e-01, 1.75999999e+00, + 8.52000046e+00, 1.08800001e+01, 1.79999995e+00, 1.13000002e+01, + 4.08600006e+01, 2.00799999e+01, 2.90000010e+00, 4.48000002e+00, + 8.52000046e+00, 1.39399996e+01, 1.08599997e+01, 1.55600004e+01, + 1.87999992e+01, 1.40799999e+01, 8.64000034e+00, 4.73999977e+00, + 5.84000015e+00, 9.64000034e+00, 1.17600002e+01, 1.80599995e+01, + 1.52399998e+01, 1.42600002e+01, 9.06000042e+00, 5.01999998e+00, + 6.30000019e+00, 1.06199999e+01, 8.07999992e+00, 1.16000004e+01, + 7.35800018e+01, 1.22440002e+02, 4.96000004e+00, 8.60000014e-01, + 7.44000006e+00, 3.20400009e+01, 7.46000004e+00, 3.22000003e+00, + 4.24000015e+01, 1.17879997e+02, 2.26599998e+01, 1.86000001e+00, + 5.28000021e+00, 1.79599991e+01, 1.25200005e+01, 6.36000013e+00, + 1.29799995e+01, 4.17599983e+01, 2.97399998e+01, 4.98000002e+00, + 5.36000013e+00, 1.39600000e+01, 2.02000008e+01, 16., + 1.06800003e+01, 1.14600000e+01, 2.72000008e+01, 1.66000004e+01, + 5.53999996e+00, 7.30000019e+00, 1.25000000e+01, 1.58599997e+01, + 1.39600000e+01, 7.70800018e+01, 1.21599998e+01, 1.10000002e+00, + 6.57999992e+00, 9.08600006e+01, 4.11399994e+01, 3.20000005e+00, + 1.01400003e+01, 1.27680000e+02, 8.05199966e+01, 8.00000012e-01, + 1.51999998e+00, 3.99199982e+01, 3.85200005e+01, 3.05999994e+00, + 3.44000006e+00, 106., 1.26180000e+02, 6.17999983e+00, + 1.17999995e+00, 1.50600004e+01, 30., 5.19999981e+00, + 1.75999999e+00, 2.08999996e+01, 1.23040001e+02, 4.45999985e+01, + 1.86000001e+00, 5.28000021e+00, 2.53600006e+01, 1.04799995e+01, + 2.98000002e+00, 8.72000027e+00, 5.07999992e+00, 2.24000001e+00, + 7.21999979e+00, 9.46600037e+01, 7.12399979e+01, 4.55999994e+00, + 3.57999992e+00, 3.05599995e+01, 2.45799999e+01, 1.79999995e+00, + 3.64000010e+00, 8.40199966e+01, 1.05220001e+02, 5.36000013e+00, + 2.35999990e+00, 3.42200012e+01, 6.77799988e+01, 3.74000001e+00, + 1.91999996e+00, 3.83600006e+01, 1.05400002e+02, 1.09399996e+01, + 1.62000000e+00, 1.16599998e+01, 6.75599976e+01, 1.54799995e+01, + 1.60000002e+00, 1.17200003e+01, 8.95599976e+01, 2.99599991e+01, + 5.54945040e+00, 3., 8.53846169e+00, 1.06483517e+01, + 3.87912083e+00, 6.20879126e+00, 1.60769234e+01, 1.34725275e+01, + 5.85714293e+00, 2.14285707e+00, 1.56593409e+01, 2.59120884e+01, + 4.86813164e+00, 5.63736248e+00, 5.12747269e+01, 6.11758232e+01, + 7.04395628e+00, 1.75824177e+00, 1.64505501e+01, 2.59120884e+01, + 3.57142854e+00, 4.68131876e+00, 8.95384598e+01, 1.04791206e+02, + 6.06593418e+00, 2.07692313e+00, 2.51538467e+01, 3.79670334e+01, + 7.63736248e+00, 1.00549450e+01, 7.18022003e+01, 7.57472534e+01, + 8.24175835e+00, 4.89011002e+00, 1.99560432e+01, 2.51538467e+01, + 2.65934062e+00, 5.45054960e+00, 8.34505463e+01, 1.02307693e+02, + 3.25274730e+00, 3.08791208e+00, 6.03846169e+01, 7.62637329e+01, + 2.04395604e+00, 2.57142854e+00, 1.06659340e+02, 1.12384613e+02, + 2.37362647e+00, 2.70329666e+00, 1.07824173e+02, 1.13406593e+02, + 2.08791208e+00, 4.36263752e+00, 6.68241730e+01, 8.27033005e+01, + 2.74725270e+00, 7.23076916e+00, 9.72637329e+01, 1.08472527e+02, + 6.38461542e+00, 5.48351669e+00, 2.66813183e+01, 3.06703300e+01, + 1.22307692e+01, 1.27252750e+01, 8.20219803e+01, 8.70659332e+01, + 6.28571415e+00, 3.13186812e+00, 3.64285698e+01, 5.78351631e+01, + 3.91208792e+00, 4.42857122e+00, 1.14142860e+02, 1.19461540e+02, + 5.30769253e+00, 2.59340668e+00, 3.48571434e+01, 4.75824165e+01, + 4.41758251e+00, 5.18681335e+00, 7.50549469e+01, 9.04175797e+01, + 4.92307711e+00, 3.39560437e+00, 3.72857132e+01, 4.64615402e+01, + 4.54945040e+00, 6.89011002e+00, 2.29890118e+01, 2.16153851e+01, + 5.56043959e+00, 4.50549459e+00, 2.22857151e+01, 2.43406601e+01, + 3.93406582e+00, 4.37362623e+00, 3.42747269e+01, 4.90769234e+01, + 1.09120874e+01, 3.10989022e+00, 1.75164833e+01, 2.24725266e+01, + 4.52747250e+00, 4.23076916e+00, 1.41208792e+01, 2.19780216e+01, + 7.86813164e+00, 3.85714293e+00, 1.78571434e+01, 2.50549450e+01, + 4.79120874e+00, 4.80219793e+00, 6.13186836e+00, 8.29670334e+00, + 6.48351669e+00, 4.67032957e+00, 1.07802200e+01, 1.25054941e+01, + 3.64835167e+00, 3.53846145e+00, 4., 4.46153831e+00, + 4.16483498e+00, 3.94505501e+00, 5.74725294e+00, 5.27472544e+00, + 3.66808510e+01, 1.40425527e+00, 3.82978737e-01, 2.70851059e+01, + 9.30212784e+01, 7.25531912e+00, 3.46808505e+00, 2.52765961e+01, + 105., 2.08510637e+00, 3.61702114e-01, 7.74468088e+00, + 1.23404255e+01, 2.17021275e+00, 4.31914902e+00, 9.96382980e+01, + 3.16595745e+01, 3.68085098e+00, 2.97872329e+00, 1.17872343e+01, + 1.37021275e+01, 7.63829803e+00, 1.39361706e+01, 7.34680862e+01, + 1.11489363e+01, 7.21276617e+00, 6.70212746e+00, 8.76595783e+00, + 1.15957451e+01, 9.65957451e+00, 1.41914892e+01, 2.09574471e+01, + 7.58723373e+01, 9.93617058e+00, 6.59574449e-01, 8.23404217e+00, + 1.04723404e+02, 3.69148941e+01, 3.61702132e+00, 1.95531921e+01, + 1.32531921e+02, 2.79787235e+01, 6.17021263e-01, 3.36170220e+00, + 1.36595745e+01, 6.57446814e+00, 3.48936176e+00, 6.00425529e+01, + 4.98510628e+01, 1.21489363e+01, 5.23404264e+00, 1.45319147e+01, + 2.08723412e+01, 2.04255314e+01, 1.54042549e+01, 3.32340431e+01, + 1.81489353e+01, 1.11702127e+01, 6.19148922e+00, 9.25531960e+00, + 1.02765961e+01, 1.57234039e+01, 1.89787235e+01, 1.88936176e+01, + 5.41702118e+01, 2.61063824e+01, 9.57446814e-01, 3.48936176e+00, + 1.06638298e+02, 1.04106384e+02, 3.74468088e+00, 5.97872353e+00, + 1.31617020e+02, 1.02702126e+02, 8.93617034e-01, 1.25531912e+00, + 1.40638294e+01, 2.17872334e+01, 3.14893627e+00, 1.06170216e+01, + 6.11489372e+01, 5.85744667e+01, 5.23404264e+00, 6.27659559e+00, + 1.30212765e+01, 2.15106392e+01, 1.43829784e+01, 1.04893618e+01, + 1.38510637e+01, 1.28085108e+01, 5.25531912e+00, 6.06382990e+00, + 8.38297844e+00, 1.63404255e+01, 2.19361706e+01, 1.60851059e+01, + 1.55957451e+01, 3.04893608e+01, 2.78723407e+00, 3.76595736e+00, + 6.85744705e+01, 1.16978722e+02, 7.04255342e+00, 2.55319142e+00, + 6.35106392e+01, 1.08702126e+02, 3.91489363e+00, 4.89361703e-01, + 1.51914892e+01, 8.24042587e+01, 1.28085108e+01, 3.51063824e+00, + 3.57446823e+01, 1.16829788e+02, 2.42553196e+01, 1.68085110e+00, + 3.42553186e+00, 1.57872343e+01, 9.82978725e+00, 2.78723407e+00, + 5.87234020e+00, 4.31914902e+01, 3.58297882e+01, 5.63829803e+00, + 4.46808529e+00, 8.02127647e+00, 1.16595745e+01, 6.51063824e+00, + 3.02048187e+01, 8.20481968e+00, 1.98554211e+01, 2.00602417e+01, + 6.77108431e+00, 7.08433723e+00, 8.20722885e+01, 1.19506027e+02, + 4.96385536e+01, 1.07349396e+01, 1.16746988e+01, 2.07228909e+01, + 1.73373489e+01, 1.49879522e+01, 7.83614426e+01, 1.34144577e+02, + 5.03975906e+01, 1.73132534e+01, 1.12289152e+01, 1.21566267e+01, + 1.40481930e+01, 1.55903616e+01, 8.14096375e+01, 1.26012047e+02, + 4.73012047e+01, 1.45903616e+01, 8.45783138e+00, 4.95180702e+00, + 5.14457846e+00, 7.33734941e+00, 4.34939766e+01, 9.66867447e+01, + 1.55542173e+01, 3.28915668e+00, 4.50602388e+00, 8.31325340e+00, + 7.32530117e+00, 2.60722885e+01, 1.37746994e+02, 1.28481934e+02, + 2.53373489e+01, 6.92771101e+00, 6.25301218e+00, 1.06987953e+01, + 1.05662651e+01, 2.93614464e+01, 1.33325302e+02, 1.30734940e+02, + 3.45421677e+01, 1.44337349e+01, 1.03734941e+01, 8.13253021e+00, + 9.67469883e+00, 2.33855419e+01, 1.11012047e+02, 1.18614456e+02, + 2.63132534e+01, 1.65180721e+01, 1.45783129e+01, 9.15662670e+00, + 9.39759064e+00, 1.50722895e+01, 4.80481911e+01, 6.58915634e+01, + 1.14337349e+01, 6.66265059e+00, 7.44578314e+00, 5.09638548e+00, + 6.98795176e+00, 2.36385536e+01, 7.24216843e+01, 4.41325302e+01, + 1.80481930e+01, 1.18554220e+01, 1.16746988e+01, 8.06024075e+00, + 8.87951851e+00, 2.55783138e+01, 6.66867447e+01, 4.85421677e+01, + 1.98674698e+01, 1.51807232e+01, 1.55180721e+01, 1.21807232e+01, + 1.18313255e+01, 1.97108440e+01, 4.17469864e+01, 3.97228928e+01, + 1.43734941e+01, 1.29518070e+01, 1.39156628e+01, 9.72289181e+00, + 8.65060234e+00, 1.13734941e+01, 2.17469883e+01, 2.53975906e+01, + 1.38554215e+00, 1.39759040e+00, 2., 1.49397588e+00, + 1.74698794e+00, 1.68674695e+00, 2.07228923e+00, 1.50602412e+00, + 2.25301194e+00, 4.02409649e+00, 2.91566277e+00, 1.81927717e+00, + 1.79518068e+00, 2.07228923e+00, 2.56626511e+00, 1.90361440e+00, + 4.18072271e+00, 4.12048197e+00, 2.68674707e+00, 1.54216862e+00, + 2.48192763e+00, 2.43373489e+00, 2.84337354e+00, 2.80722880e+00, + 1.87951803e+00, 1.77108431e+00, 2.04819274e+00, 1.26506019e+00, + 1.97590363e+00, 1.73493981e+00, 2.21686745e+00, 2.24096394e+00, + 2.77380943e+00, 3.85714293e+00, 3.05952382e+00, 5.07142878e+00, + 3.79047623e+01, 8.29404755e+01, 1.71666660e+01, 3.02380943e+00, + 1.20833330e+01, 2.79166660e+01, 7.26190472e+00, 6.90476179e+00, + 5.36547623e+01, 1.06583336e+02, 1.88452377e+01, 5.42857122e+00, + 1.42142859e+01, 5.80476189e+01, 2.02976189e+01, 6.13095236e+00, + 4.58571434e+01, 1.14261902e+02, 1.76547623e+01, 2.73809528e+00, + 8.47619057e+00, 6.01309509e+01, 4.89404755e+01, 9.29761887e+00, + 1.05238094e+01, 4.34523811e+01, 1.63571434e+01, 2.90476179e+00, + 2.64285707e+00, 2.77380943e+00, 2.51190472e+00, 4.34523821e+00, + 2.80357151e+01, 1.02511902e+02, 3.80238113e+01, 5.05952358e+00, + 3.14285707e+00, 7.60714293e+00, 4.57142878e+00, 3.73809528e+00, + 2.84404755e+01, 1.26309525e+02, 6.65833359e+01, 8.07142830e+00, + 5.95238113e+00, 3.49523811e+01, 1.44642859e+01, 2.69047618e+00, + 1.86666660e+01, 132., 8.68809509e+01, 6.65476179e+00, + 3.05952382e+00, 3.80952377e+01, 2.99404755e+01, 3.45238090e+00, + 6.17857122e+00, 1.22357140e+02, 9.89523773e+01, 4.84523821e+00, + 5.69047642e+00, 5.51190472e+00, 5.89285707e+00, 6.14285707e+00, + 1.47738094e+01, 5.02619057e+01, 3.33690491e+01, 9.07142830e+00, + 3.61904764e+00, 3.36904764e+00, 3.09523821e+00, 4.08333349e+00, + 1.59523811e+01, 1.07380951e+02, 7.74761887e+01, 9.38095284e+00, + 2.58333325e+00, 4.04761887e+00, 2.39285707e+00, 1.60714281e+00, + 7.91666651e+00, 1.16726189e+02, 1.18309525e+02, 1.19166670e+01, + 3., 7.26190472e+00, 5.22619057e+00, 6.90476179e-01, + 3.48809528e+00, 1.00571426e+02, 1.27273811e+02, 1.60238094e+01, + 3.85714293e+00, 3.78571439e+00, 3.02380943e+00, 3.33333325e+00, + 5.76190472e+00, 1.03571424e+01, 9.46428585e+00, 5.63095236e+00, + 4.45238113e+00, 3.10714293e+00, 2.86904764e+00, 4.63095236e+00, + 8.57142830e+00, 2.27738094e+01, 1.93690472e+01, 6.36904764e+00, + 4.38095236e+00, 2.89285707e+00, 2.09523821e+00, 3.02380943e+00, + 7.39285707e+00, 3.08571434e+01, 3.60714302e+01, 7.60714293e+00, + 2.86904764e+00, 1.45238090e+00, 9.76190448e-01, 1.32142854e+00, + 4.39285707e+00, 2.71785717e+01, 4.25476189e+01, 9.55952358e+00, + 4.34999990e+00, 4.84999990e+00, 7.10999985e+01, 7.74749985e+01, + 5.65000010e+00, 3., 2.18250008e+01, 2.38250008e+01, + 4.40000010e+00, 1.02500000e+01, 1.02099998e+02, 5.37999992e+01, + 3.70000005e+00, 5.30000019e+00, 4.51749992e+01, 2.09249992e+01, + 5.09999990e+00, 2.34500008e+01, 1.02949997e+02, 2.23750000e+01, + 4.17500019e+00, 1.07500000e+01, 4.10499992e+01, 1.03000002e+01, + 5.05000019e+00, 4.00250015e+01, 8.30500031e+01, 1.04250002e+01, + 3.87500000e+00, 1.23750000e+01, 1.97000008e+01, 6., + 2.07500005e+00, 9.49999988e-01, 4.43750000e+01, 6.31500015e+01, + 3.04999995e+00, 3.87500000e+00, 9.69749985e+01, 7.96999969e+01, + 9.25000012e-01, 2.32500005e+00, 5.25250015e+01, 2.97999992e+01, + 1.70000005e+00, 2.51000004e+01, 1.21300003e+02, 4.35999985e+01, + 1.20000005e+00, 1.02749996e+01, 5.88499985e+01, 9.75000000e+00, + 3.07500005e+00, 7.93499985e+01, 1.14250000e+02, 7.62500000e+00, + 8.99999976e-01, 3.53499985e+01, 5.70499992e+01, 5.47499990e+00, + 6.40000010e+00, 6.58000031e+01, 4.05250015e+01, 2.32500005e+00, + 9.47500038e+00, 3.47499990e+00, 9.87500000e+00, 1.51250000e+01, + 2.27500010e+00, 3.70000005e+00, 7.29749985e+01, 8.58249969e+01, + 7.27500010e+00, 8.19999981e+00, 1.62999992e+01, 8.27499962e+00, + 2.67499995e+00, 3.01250000e+01, 1.04250000e+02, 4.27999992e+01, + 2.67499995e+00, 5.65000010e+00, 1.77999992e+01, 7.67500019e+00, + 8.17500019e+00, 1.07849998e+02, 1.03875000e+02, 9.37500000e+00, + 4.00000006e-01, 6.92500019e+00, 1.19750004e+01, 3.50000000e+00, + 19., 1.22324997e+02, 3.94249992e+01, 2.24999994e-01, + 1.71250000e+01, 1.11000004e+01, 1.54250002e+01, 9.52499962e+00, + 3.09999990e+00, 1.52499998e+00, 9.10000038e+00, 2.17999992e+01, + 1.86499996e+01, 2.28750000e+01, 3.08500004e+01, 1.73750000e+01, + 8.44999981e+00, 8.89999962e+00, 2.20750008e+01, 2.00499992e+01, + 1.67250004e+01, 2.28250008e+01, 3.12500000e+01, 2.42250004e+01, + 1.83750000e+01, 4.42000008e+01, 2.94500008e+01, 1.04750004e+01, + 3.52500010e+00, 8.02499962e+00, 9.87500000e+00, 1.09250002e+01, + 3.82000008e+01, 7.85749969e+01, 8.64999962e+00, 1.02499998e+00, + 2.51388884e+00, 2.41666675e+00, 1.12361107e+01, 1.49166670e+01, + 6.77777767e+00, 5.70833349e+00, 3.32222214e+01, 3.75694427e+01, + 5.70833349e+00, 4.11111116e+00, 2.75694447e+01, 1.97916660e+01, + 5.69444466e+00, 8.90277767e+00, 9.91250000e+01, 6.33194427e+01, + 8.81944466e+00, 8.45833302e+00, 5.70277786e+01, 1.84861107e+01, + 4.70833349e+00, 1.79444447e+01, 1.05083336e+02, 3.14583340e+01, + 6.37500000e+00, 1.29583330e+01, 4.60277786e+01, 7.19444466e+00, + 2.81944442e+00, 2.74305553e+01, 9.01527786e+01, 8.18055534e+00, + 7.40277767e+00, 2.22222233e+00, 6.60416641e+01, 1.05847221e+02, + 4.88888884e+00, 3.83333325e+00, 8.35277786e+01, 1.18819443e+02, + 5.48611116e+00, 5.62500000e+00, 1.20125000e+02, 1.14638885e+02, + 5.50000000e+00, 1.01944447e+01, 9.06250000e+01, 6.80694427e+01, + 6.19444466e+00, 2.30555553e+01, 1.22888885e+02, 53., + 5.02777767e+00, 25., 7.61527786e+01, 1.67083340e+01, + 3.69444442e+00, 5.65000000e+01, 1.18527779e+02, 1.15277777e+01, + 4.31944466e+00, 3.25416679e+01, 6.04444427e+01, 6.70833349e+00, + 16., 5.52777767e+00, 4.46527786e+01, 1.12569443e+02, + 7.75000000e+00, 3.01388884e+00, 1.80416660e+01, 4.26388893e+01, + 1.81944447e+01, 5.68055534e+00, 2.53472214e+01, 2.93055553e+01, + 3.62500000e+00, 1.31250000e+01, 4.05416679e+01, 3.80555573e+01, + 9.48611069e+00, 4.72222233e+00, 9.08333302e+00, 3.76388884e+00, + 5.37500000e+00, 3.77222214e+01, 5.09861107e+01, 2.64305553e+01, + 4.73611116e+00, 1.13611107e+01, 1.19305553e+01, 1.79166663e+00, + 9.34722233e+00, 4.05416679e+01, 3.13750000e+01, 1.21805553e+01, + 2.31666660e+01, 5.66666651e+00, 2.38888884e+00, 9.50000000e+00, + 3.59722233e+00, 1.63888884e+00, 1.29861107e+01, 3.38194427e+01, + 2.31388893e+01, 5.61111116e+00, 2.18055558e+00, 1.44444442e+00, + 1.81944442e+00, 6.98611116e+00, 3.64027786e+01, 5.05555573e+01, + 1.24027777e+01, 4.44444466e+00, 2.91666675e+00, 4.90277767e+00, + 7.62500000e+00, 2.91944447e+01, 5.96527786e+01, 3.56944427e+01, + 3.50000000e+00, 2.15277767e+00, 1.88888884e+00, 4.40277767e+00, + 1.25000000e+01, 4.34444427e+01, 4.11388893e+01, 1.05833330e+01, + 1.31111109e+00, 8.44444454e-01, 1.37555552e+01, 5.82222223e+00, + 2.44444442e+00, 2.06222229e+01, 5.34888878e+01, 1.51777782e+01, + 2.75555563e+00, 13., 2.10222225e+01, 1.97777772e+00, + 6.88888884e+00, 4.00222206e+01, 6.07333336e+01, 1.21111107e+01, + 1.55333338e+01, 7.59111099e+01, 3.69333344e+01, 2.26666665e+00, + 1.13111115e+01, 4.60888901e+01, 4.12000008e+01, 1.36888885e+01, + 3.54444427e+01, 1.16333336e+02, 2.51555557e+01, 1.62222219e+00, + 1.21111107e+01, 6.80444412e+01, 2.29777775e+01, 8.66666698e+00, + 1.22222221e+00, 6.66666701e-02, 1.11111112e-01, 4.22222227e-01, + 2.22222233e+00, 3.21555557e+01, 1.11711113e+02, 4.26444435e+01, + 1.17777777e+00, 5.77777803e-01, 1.11111112e-01, 2.66666681e-01, + 9.46666622e+00, 7.28888855e+01, 1.16933334e+02, 2.63555565e+01, + 1.01555557e+01, 7.71111107e+00, 1.37777781e+00, 1.04444444e+00, + 2.22888889e+01, 7.99555588e+01, 8.97777786e+01, 2.76000004e+01, + 4.06888885e+01, 6.19111099e+01, 3.57777786e+00, 2.55555558e+00, + 2.41111107e+01, 4.83777771e+01, 4.38666649e+01, 2.36222229e+01, + 8.26666641e+00, 4.77777767e+00, 7.73333311e+00, 9.13333321e+00, + 1.07333336e+01, 3.93777771e+01, 9.99333344e+01, 5.32000008e+01, + 1.10222225e+01, 2.17777777e+00, 2.51111102e+00, 3.64444447e+00, + 14., 8.44444427e+01, 1.14533333e+02, 4.33333321e+01, + 6.06666660e+00, 1.51111114e+00, 5.11111140e-01, 2.64444447e+00, + 4.07999992e+01, 1.13088890e+02, 1.05355553e+02, 3.07333336e+01, + 1.21555557e+01, 6.64444447e+00, 2.22222224e-01, 5.64444447e+00, + 4.15111122e+01, 7.46444473e+01, 5.32888870e+01, 1.52222223e+01, + 1.01777782e+01, 8.17777824e+00, 1.09555559e+01, 1.27333336e+01, + 1.54222221e+01, 2.03777771e+01, 2.90888882e+01, 21., 35., + 1.87333336e+01, 1.44888887e+01, 1.29777775e+01, 1.44222221e+01, + 3.08444443e+01, 4.03333321e+01, 3.36444435e+01, 2.10444450e+01, + 1.63111115e+01, 1.83555565e+01, 3.68888893e+01, 7.93333359e+01, + 7.74222260e+01, 4.10444450e+01, 20., 5.19999981e+00, + 8.88888896e-01, 1.62222219e+00, 2.45555553e+01, 6.39555550e+01, + 4.81555557e+01, 2.17333336e+01, 4.82222223e+00, 2.83950627e-01, + 3.08641970e-01, 9.01234567e-01, 6.04938269e+00, 1.20493832e+01, + 5.03703690e+00, 2.09876537e+00, 3.70370358e-01, 3.39135818e+01, + 3.56790113e+00, 3.92592597e+00, 1.68148155e+01, 2.72716045e+01, + 1.32716045e+01, 4.60493851e+00, 7.19753075e+00, 1.31148148e+02, + 9.20987701e+00, 2.50617290e+00, 3.27407417e+01, 9.95185165e+01, + 1.31975307e+01, 3.61728406e+00, 5.92345695e+01, 3.32345695e+01, + 7.61728382e+00, 3.24691367e+00, 4.83456802e+01, 1.03518517e+02, + 8.86419773e+00, 8.34567928e+00, 2.65061722e+01, 2.83950627e-01, + 5.06172836e-01, 9.62962985e-01, 5.23456812e+00, 1.52962961e+01, + 7.22222233e+00, 1.62962961e+00, 5.43209851e-01, 4.41358032e+01, + 9.43209839e+00, 4.27160501e+00, 1.49382715e+01, 3.37160492e+01, + 1.96790123e+01, 4.85185194e+00, 4.74074078e+00, 1.35913574e+02, + 5.05679016e+01, 2.88888884e+00, 1.70740738e+01, 1.22641975e+02, + 3.87654305e+01, 3.38271594e+00, 2.00987663e+01, 4.11358032e+01, + 1.58641977e+01, 3.98765421e+00, 1.52098770e+01, 1.15283951e+02, + 3.26049385e+01, 4.70370388e+00, 2.08271599e+01, 4.19753075e-01, + 5.06172836e-01, 9.38271582e-01, 3.51851845e+00, 1.35061731e+01, + 8.44444466e+00, 2.07407403e+00, 9.01234567e-01, 1.83333340e+01, + 8.18518543e+00, 3.56790113e+00, 1.12345676e+01, 3.31975327e+01, + 2.40246906e+01, 6.72839499e+00, 3.11111116e+00, 1.32851852e+02, + 1.07098763e+02, 3.09876537e+00, 6.27160501e+00, 8.53580246e+01, + 5.69012337e+01, 4.75308657e+00, 5.93827152e+00, 5.21358032e+01, + 4.09382706e+01, 5.60493851e+00, 4.18518496e+00, 1.14962959e+02, + 9.81481476e+01, 2.90123463e+00, 8.65432072e+00, 2.83950627e-01, + 2.83950627e-01, 6.04938269e-01, 1.77777779e+00, 8.77777767e+00, + 8.17283916e+00, 2.11111116e+00, 7.16049373e-01, 3.20987654e+00, + 2.54320979e+00, 2.17283940e+00, 6., 2.56543217e+01, + 2.36049385e+01, 6.43209887e+00, 2.60493827e+00, 7.62716064e+01, + 9.74444427e+01, 3.34567904e+00, 5.23456812e+00, 2.94691353e+01, + 2.90617275e+01, 5.83950615e+00, 2.97530866e+00, 4.89629631e+01, + 1.01592590e+02, 6.11111116e+00, 2.48148155e+00, 6.18271599e+01, + 1.21395065e+02, 5.90123463e+00, 2.67901230e+00, 4.30000019e+00, + 2.20000005e+00, 3.63333344e+00, 4.56666660e+00, 1.30333338e+01, + 4.38833351e+01, 3.29500008e+01, 1.16833334e+01, 3.08333325e+00, + 2.20000005e+00, 3.66666675e-01, 9.33333337e-01, 2.54666672e+01, + 9.88333359e+01, 3.44666672e+01, 5.34999990e+00, 2.04833336e+01, + 4.06666660e+00, 1.33333340e-01, 1.06666672e+00, 4.55833321e+01, + 8.68000031e+01, 1.70833340e+01, 3.81666660e+00, 1.04300003e+02, + 1.65499992e+01, 6.49999976e-01, 2.20000005e+00, 3.75333328e+01, + 3.01000004e+01, 4.25000000e+00, 1.61833324e+01, 1.20333338e+01, + 6.31666660e+00, 5.13333321e+00, 6.16666651e+00, 1.33166666e+01, + 2.72333336e+01, 2.81166668e+01, 1.90499992e+01, 5.43333340e+00, + 2.86666656e+00, 2.25000000e+00, 1.17166662e+01, 5.13666649e+01, + 8.10999985e+01, 2.88166676e+01, 8.26666641e+00, 1.61499996e+01, + 8.33333313e-01, 9.83333349e-01, 1.48500004e+01, 9.48499985e+01, + 8.63499985e+01, 1.81333332e+01, 1.18500004e+01, 1.12316666e+02, + 3.08333325e+00, 9.33333337e-01, 1.76166668e+01, 6.82333298e+01, + 2.58166676e+01, 8.25000000e+00, 7.55500031e+01, 1.42833338e+01, + 1.40666666e+01, 1.62500000e+01, 1.72500000e+01, 1.39333334e+01, + 1.47500000e+01, 2.09166660e+01, 2.02500000e+01, 5.16666651e+00, + 3.33333325e+00, 1.09333334e+01, 4.72833328e+01, 6.19333344e+01, + 3.60166664e+01, 1.53000002e+01, 1.35500002e+01, 1.93500004e+01, + 2.83333331e-01, 3.88333344e+00, 6.20333328e+01, 9.99333344e+01, + 3.71166649e+01, 1.14333334e+01, 5.00833321e+01, 1.03383331e+02, + 1.91666663e+00, 1.98333335e+00, 6.57500000e+01, 6.84333344e+01, + 9.98333359e+00, 6.75000000e+00, 1.19150002e+02, 4.76666689e+00, + 1.30833330e+01, 3.93499985e+01, 2.38500004e+01, 7., + 3.98333335e+00, 8.43333340e+00, 8.71666622e+00, 2.06666660e+00, + 2.98333335e+00, 2.89166660e+01, 7.23499985e+01, 3.25499992e+01, + 8.50000000e+00, 1.44333334e+01, 2.74166660e+01, 1.99666672e+01, + 7.16666639e-01, 1.12666664e+01, 8.94166641e+01, 4.45499992e+01, + 1.03999996e+01, 1.99666672e+01, 1.12833336e+02, 4.85833321e+01, + 1.60000002e+00, 4.73333311e+00, 8.62833328e+01, 3.63333321e+01, + 2.18333340e+00, 6.51666689e+00, 1.07416664e+02, 5.87142849e+00, + 1.93142853e+01, 5.20999985e+01, 5.04285717e+00, 1.61428571e+00, + 2.47428570e+01, 9.07142868e+01, 7.61428595e+00, 4.92857122e+00, + 2.37857151e+01, 3.08857136e+01, 4.68571424e+00, 3.51428580e+00, + 5.88428574e+01, 8.25000000e+01, 4.62857151e+00, 6.84285736e+00, + 1.76285706e+01, 1.27285719e+01, 5.64285707e+00, 1.13285713e+01, + 4.64285698e+01, 2.99571438e+01, 3.11428571e+00, 6.54285717e+00, + 1.56714287e+01, 8.89999962e+00, 3.25714278e+00, 6.45714283e+00, + 7.35714293e+00, 6.88571405e+00, 2.71428561e+00, 5., + 4.29571419e+01, 1.14128571e+02, 1.10857143e+01, 3.65714288e+00, + 2.45428562e+01, 4.69571419e+01, 7.08571434e+00, 6.02857161e+00, + 1.15471428e+02, 1.21585716e+02, 7.15714264e+00, 4.94285727e+00, + 6.31714287e+01, 6.56571426e+01, 5., 8., 1.19714287e+02, + 6.35714302e+01, 3.70000005e+00, 9.01428604e+00, 1.23142860e+02, + 6.78142853e+01, 3.14285707e+00, 8.12857151e+00, 3.60999985e+01, + 1.35000000e+01, 2.87142849e+00, 1.24857140e+01, 1.05199997e+02, + 2.37142849e+01, 2.70000005e+00, 5.19999981e+00, 3.57142854e+00, + 5.74285698e+00, 2.54285717e+00, 9.35714245e+00, 4.00285721e+01, + 3.45285721e+01, 1.18714285e+01, 7.95714283e+00, 3.57999992e+01, + 2.07000008e+01, 3.48571420e+00, 1.79428577e+01, 5.15571442e+01, + 2.60857143e+01, 8.04285717e+00, 1.98714294e+01, 1.23714287e+02, + 3.64571419e+01, 2.97142863e+00, 1.80714283e+01, 5.70428581e+01, + 1.39285717e+01, 3.78571439e+00, 2.97142849e+01, 1.15442856e+02, + 1.32714281e+01, 1.84285712e+00, 3.41142845e+01, 1.20542854e+02, + 9.15714264e+00, 1.94285715e+00, 3.25714278e+00, 2.81428576e+00, + 2.40000010e+00, 3.71428561e+00, 1.15714283e+01, 3.69571419e+01, + 4.11714287e+01, 1.14571428e+01, 2.71428561e+00, 1.44285715e+00, + 1.94285715e+00, 3.62857151e+00, 2.46857147e+01, 5.27714272e+01, + 3.15000000e+01, 5.95714283e+00, 1.12285719e+01, 2.28285713e+01, + 2.25714278e+00, 5.44285727e+00, 3.13999996e+01, 3.66857147e+01, + 1.46714287e+01, 5.12857151e+00, 6.02857132e+01, 9.88571396e+01, + 2.82857132e+00, 2.70000005e+00, 3.07000008e+01, 3.71428566e+01, + 3.87142849e+00, 3.38571429e+00, 8.33333313e-01, 8.33333313e-01, + 1.05555558e+00, 6.59259272e+00, 3.62962952e+01, 2.12962971e+01, + 3.07407403e+00, 1.01851857e+00, 3.29629636e+00, 5.92592573e+00, + 4.16666651e+00, 1.73888893e+01, 7.74444427e+01, 5.33148155e+01, + 8.55555534e+00, 2.88888884e+00, 7.51481476e+01, 1.32814819e+02, + 1.14444447e+01, 13., 3.68888893e+01, 4.91111107e+01, + 1.58333330e+01, 6.90740728e+00, 8.45740738e+01, 1.46185181e+02, + 2.27777786e+01, 3.66666675e+00, 5.55185204e+01, 1.45555557e+02, + 2.61111107e+01, 5.14814806e+00, 1.79629624e+00, 1.85185182e+00, + 2.20370364e+00, 7.16666651e+00, 2.81666660e+01, 2.83518524e+01, + 6.16666651e+00, 1.90740740e+00, 1.74074078e+00, 2.01851845e+00, + 3.12962961e+00, 1.13703699e+01, 8.77407379e+01, 1.06296295e+02, + 1.45555553e+01, 2.70370364e+00, 1.17777777e+01, 3.48518524e+01, + 8.77777767e+00, 1.42037039e+01, 5.58333321e+01, 6.71666641e+01, + 2.15925922e+01, 9.53703690e+00, 3.45925941e+01, 1.45555557e+02, + 5.11296310e+01, 1.00740738e+01, 2.59074078e+01, 6.60555573e+01, + 1.80740738e+01, 7.29629612e+00, 3., 3.59259248e+00, + 4.24074078e+00, 5.05555534e+00, 1.23703699e+01, 1.85370369e+01, + 7.77777767e+00, 3.53703713e+00, 3.09259248e+00, 2.96296287e+00, + 3.64814806e+00, 6.92592573e+00, 5.37962952e+01, 1.15203705e+02, + 2.56851845e+01, 4.16666651e+00, 2.50000000e+00, 1.83333337e+00, + 2.79629636e+00, 5.98148155e+00, 4.70555573e+01, 1.24129631e+02, + 4.02407417e+01, 4.90740728e+00, 4.64814806e+00, 2.51851845e+01, + 1.02037039e+01, 7.35185194e+00, 2.49814816e+01, 6.30370369e+01, + 3.38703690e+01, 8.22222233e+00, 2.57407403e+00, 3.48148155e+00, + 3.83333325e+00, 2.62962961e+00, 4.05555534e+00, 4.14814806e+00, + 3.24074078e+00, 2.88888884e+00, 5.51851845e+00, 7.01851845e+00, + 7.29629612e+00, 5.90740728e+00, 1.58703699e+01, 3.73703690e+01, + 1.53888893e+01, 5.33333349e+00, 2.38888884e+00, 2.51851845e+00, + 2.42592597e+00, 3.07407403e+00, 1.98703709e+01, 8.92407379e+01, + 3.42592583e+01, 3.33333325e+00, 1.31481481e+00, 9.25925910e-01, + 9.44444418e-01, 1.51851857e+00, 9.33333302e+00, 7.17592621e+01, + 4.89444427e+01, 4.68518496e+00, 1.73913047e-01, 2.24347820e+01, + 3.62391319e+01, 3.34782600e+00, 6.58695650e+00, 5.49347839e+01, + 1.73260860e+01, 2.17391297e-01, 3.15217400e+00, 1.04260872e+02, + 5.23478279e+01, 3.80434775e+00, 6.45652151e+00, 1.98260860e+01, + 4.76086950e+00, 9.34782624e-01, 2.83043480e+01, 1.24956520e+02, + 2.43043480e+01, 4.02173901e+00, 3.56521749e+00, 7.73913050e+00, + 4.43478251e+00, 4.28260851e+00, 3.24130440e+01, 5.72826080e+01, + 1.64565220e+01, 4.95652151e+00, 3.21739125e+00, 4.36956501e+00, + 4.89130449e+00, 8.26086998e+00, 1.28260875e+00, 4.17391300e+00, + 3.34782600e+00, 1.82608700e+00, 2.68478260e+01, 1.28217392e+02, + 2.97826080e+01, 4.78260875e-01, 8.26086938e-01, 3.13260860e+01, + 1.14347830e+01, 5.02173901e+00, 4.80652161e+01, 8.91086960e+01, + 5.30434799e+00, 1.08695649e-01, 4.66521721e+01, 1.25304344e+02, + 1.28478260e+01, 5.56521749e+00, 1.06956520e+01, 1.03478260e+01, + 2.02173924e+00, 1., 8.02826080e+01, 1.13282608e+02, + 1.11086960e+01, 4.43478251e+00, 4.73913050e+00, 6.08695650e+00, + 5.43478251e+00, 7.56521749e+00, 9.08695698e+00, 1.25217390e+01, + 6.84782600e+00, 7.69565201e+00, 5.66304359e+01, 8.76956558e+01, + 1.08695650e+01, 3.19565225e+00, 7.17391312e-01, 1.63043475e+00, + 1.10869563e+00, 6.08695650e+00, 1.13978264e+02, 1.09108696e+02, + 1.58695650e+00, 4.34782617e-02, 3.63913040e+01, 5.09782600e+01, + 4.80434799e+00, 1.18695650e+01, 4.42608681e+01, 1.93260860e+01, + 6.73913062e-01, 2.82608688e-01, 1.16826088e+02, 1.11021736e+02, + 5.86956501e+00, 3.17391300e+00, 4.73913050e+00, 4.10869551e+00, + 2.93478251e+00, 5.02173901e+00, 1.29782610e+01, 1.53260870e+01, + 1.63478260e+01, 2.20217400e+01, 4.64347839e+01, 2.36739140e+01, + 3.30434775e+00, 6.89130449e+00, 1.95652175e+00, 1.50000000e+00, + 1.76086962e+00, 2.56739140e+01, 1.27456520e+02, 3.97391319e+01, + 2.17391297e-01, 2.60869563e-01, 1.88695660e+01, 7.69565201e+00, + 3.50000000e+00, 1.51956520e+01, 6.73043442e+01, 1.26739130e+01, + 2.82608688e-01, 8.47826064e-01, 1.19891304e+02, 4.29782600e+01, + 2.93478251e+00, 2.69565225e+00, 4.15217400e+00, 2., + 1.17391300e+00, 7.08695650e+00, 6.62500000e+00, 1.92500000e+01, + 4.55499992e+01, 3.52500000e+01, 7.27500010e+00, 9.49999988e-01, + 5.50000012e-01, 1.79999995e+00, 2.17500000e+01, 5.27000008e+01, + 5.39000015e+01, 2.09500008e+01, 3.20000005e+00, 8.75000000e-01, + 1.45000005e+00, 4.65000010e+00, 2.46250000e+01, 5.11749992e+01, + 3.59500008e+01, 1.16499996e+01, 3.75000000e+00, 1.47500002e+00, + 1.77499998e+00, 5.12500000e+00, 1.84249992e+01, 2.41499996e+01, + 1.45249996e+01, 6.40000010e+00, 3.32500005e+00, 2.34999990e+00, + 2.59999990e+00, 5., 2.02500000e+01, 2.47000008e+01, + 5.61250000e+01, 4.98499985e+01, 2.42000008e+01, 1.01750002e+01, + 2.08999996e+01, 1.74500008e+01, 4.55250015e+01, 7.09499969e+01, + 6.31250000e+01, 4.52000008e+01, 1.52500000e+01, 1.13750000e+01, + 3.22750015e+01, 3.08750000e+01, 5.74000015e+01, 8.95500031e+01, + 4.77999992e+01, 2.52999992e+01, 5.97499990e+00, 7.30000019e+00, + 1.23999996e+01, 1.68999996e+01, 4.50499992e+01, 5.15250015e+01, + 1.95499992e+01, 7.32499981e+00, 3.02500010e+00, 3.20000005e+00, + 5.40000010e+00, 1.14750004e+01, 1.28500004e+01, 4.94249992e+01, + 1.10324997e+02, 3.18750000e+01, 1.40249996e+01, 2.34750004e+01, + 5.84749985e+01, 2.17999992e+01, 2.76000004e+01, 9.67249985e+01, + 1.03175003e+02, 3.75499992e+01, 1.65249996e+01, 5.18499985e+01, + 7.41250000e+01, 3.03500004e+01, 6.49000015e+01, 1.02974998e+02, + 5.52999992e+01, 2.37000008e+01, 8.77499962e+00, 3.64749985e+01, + 4.23499985e+01, 3.37750015e+01, 6.47750015e+01, 56., 14., + 5.65000010e+00, 3.09999990e+00, 5.84999990e+00, 1.00500002e+01, + 2.03250008e+01, 1.02500000e+01, 4.63499985e+01, 8.42750015e+01, + 20., 5.52500010e+00, 2.81000004e+01, 4.51250000e+01, + 1.56999998e+01, 9.60000038e+00, 9.65500031e+01, 9.33750000e+01, + 1.62000008e+01, 1.53500004e+01, 5.27249985e+01, 3.77750015e+01, + 7.69999981e+00, 5.10499992e+01, 1.15824997e+02, 4.56749992e+01, + 7.75000000e+00, 1.04250002e+01, 3.01499996e+01, 1.98250008e+01, + 1.51999998e+01, 6.50999985e+01, 6.33750000e+01, 6.67500019e+00, + 2.65000010e+00, 3.50000000e+00, 7.25000000e+00, 8.87500000e+00, + 2.19249992e+01, 1.97222214e+01, 1.98148143e+00, 3.27777767e+00, + 6.75000000e+01, 7.40740738e+01, 2.98148155e+00, 4.57407427e+00, + 2.52962971e+01, 4.58888893e+01, 2.27777767e+00, 3.88888884e+00, + 2.11296291e+01, 1.47592592e+01, 2.03703713e+00, 1.53703699e+01, + 1.03259262e+02, 3.05555553e+01, 3.77777767e+00, 2.38888884e+00, + 8.42592621e+00, 3.87037039e+00, 2.72222233e+00, 4.14259262e+01, + 1.13944443e+02, 1.24444447e+01, 8.07407379e+00, 9.12963009e+00, + 1.12777777e+01, 7.85185194e+00, 1.03888893e+01, 5.52222214e+01, + 5.54259262e+01, 6.32777786e+01, 4.11111116e+00, 1.27777779e+00, + 3.14814816e+01, 9.22592621e+01, 8.16666698e+00, 4.20370388e+00, + 4.27407417e+01, 1.22092590e+02, 3.62962961e+00, 1., + 6.70370388e+00, 2.00925922e+01, 2.92592597e+00, 6.98148155e+00, + 1.22833336e+02, 6.45555573e+01, 1.02592592e+01, 7.33333349e+00, + 1.64814816e+01, 1.34444447e+01, 9.25925922e+00, 2.13703709e+01, + 1.04518517e+02, 1.67407398e+01, 1.18888893e+01, 1.55370369e+01, + 2.31111107e+01, 2.18888893e+01, 16., 2.30185184e+01, + 3.10740738e+01, 9.14814835e+01, 1.56666670e+01, 9.62962985e-01, + 6.98148155e+00, 8.67222214e+01, 3.47962952e+01, 3.20370364e+00, + 2.55740738e+01, 1.27907410e+02, 2.51296291e+01, 1.68518519e+00, + 2.98148155e+00, 1.72592602e+01, 6.61111116e+00, 3.64814806e+00, + 6.71851883e+01, 6.38333321e+01, 2.57592602e+01, 1.12222223e+01, + 1.47592592e+01, 1.72037029e+01, 1.60185184e+01, 1.24074078e+01, + 3.48703690e+01, 1.96851845e+01, 1.63333340e+01, 1.37037039e+01, + 1.75740738e+01, 1.72222214e+01, 1.82407398e+01, 1.65925922e+01, + 1.78333340e+01, 6.35370369e+01, 39., 1.03703701e+00, + 2.20370364e+00, 6.77592621e+01, 7.06851883e+01, 4.42592573e+00, + 6.57407427e+00, 1.17777779e+02, 8.38888855e+01, 3.50000000e+00, + 1.74074078e+00, 1.39629631e+01, 1.90740738e+01, 2.64814806e+00, + 9.70370388e+00, 5.02407417e+01, 5.27592583e+01, 1.32962961e+01, + 6.68518496e+00, 1.17037039e+01, 1.27222223e+01, 7.74074078e+00, + 9.68518543e+00, 1.27222223e+01, 1.52407408e+01, 1.50370369e+01, + 1.35370369e+01, 1.16851854e+01, 1.05555553e+01, 1.28518515e+01, + 1.31296301e+01, 4.12820530e+00, 1.76923072e+00, 8.58974361e+00, + 3.11794872e+01, 9.43589783e+00, 5.25641012e+00, 2.37692299e+01, + 3.53589745e+01, 5.64102554e+00, 3.41025639e+00, 2.59743595e+01, + 4.02051277e+01, 6.51282072e+00, 6.82051277e+00, 8.24358978e+01, + 9.16666641e+01, 7.97435904e+00, 1.04615383e+01, 3.51794853e+01, + 2.55897427e+01, 7.30769253e+00, 3.78717957e+01, 1.11384613e+02, + 7.79743576e+01, 1.25128202e+01, 1.51538458e+01, 2.54615383e+01, + 6.32307701e+01, 2.08205128e+01, 26., 62., 9.77435913e+01, + 1.46666670e+01, 2.66666675e+00, 1.43589745e+01, 4.43589745e+01, + 1.59230766e+01, 3.79487181e+00, 4.76666679e+01, 1.07153847e+02, + 2.24615383e+01, 1.12307692e+01, 4.31282043e+01, 4.91794853e+01, + 9.82051277e+00, 6.53846169e+00, 5.71538467e+01, 9.49487152e+01, + 3.04871788e+01, 2.94871788e+01, 4.79743576e+01, 2.97948723e+01, + 2.24102573e+01, 3.45128212e+01, 5.39230766e+01, 3.93846169e+01, + 3.17692299e+01, 2.66666660e+01, 4.04615402e+01, 8.52820511e+01, + 8.23076935e+01, 4.18717957e+01, 3.16153851e+01, 4.59487190e+01, + 3.17948723e+01, 8.76923084e+00, 9.71794891e+00, 3.31025658e+01, + 2.39487171e+01, 7.69230747e+00, 1.16923075e+01, 4.83333321e+01, + 2.76410255e+01, 9.35897446e+00, 1.70512829e+01, 2.89230766e+01, + 1.61794872e+01, 1.15384617e+01, 1.15641022e+01, 3.07179489e+01, + 3.24102554e+01, 1.43076925e+01, 3.18717957e+01, 5.89743576e+01, + 2.58205128e+01, 1.20769234e+01, 1.08461542e+01, 2.93076916e+01, + 3.42820511e+01, 5.87179470e+00, 1.70512829e+01, 1.04641029e+02, + 8.74102554e+01, 1.78717957e+01, 9.23076916e+00, 4.45128212e+01, + 1.84358978e+01, 4.47435913e+01, 1.79743595e+01, 8.15384579e+00, + 1.43589745e+01, 1.95897427e+01, 1.01794872e+01, 7.05128193e+00, + 1.45384617e+01, 1.32564106e+01, 3.48974342e+01, 4.61025658e+01, + 1.21538458e+01, 1.16666670e+01, 1.86666660e+01, 1.77692299e+01, + 1.08974361e+01, 2.79487181e+00, 3.52564087e+01, 1.16358971e+02, + 1.51794872e+01, 3.33333325e+00, 1.81025639e+01, 4.49230766e+01, + 1.17179489e+01, 1.79487181e+00, 1.63846149e+01, 8.53333359e+01, + 1.77692299e+01, 1.89743590e+00, 13., 5.93846169e+01, + 1.34022989e+01, 9.66666698e+00, 8.35632229e+00, 1.23103447e+01, + 1.44252872e+01, 2.14712639e+01, 3.37816086e+01, 2.27011490e+01, + 1.52758617e+01, 8.88505745e+00, 1.16666670e+01, 1.70229893e+01, + 1.83793106e+01, 2.12298851e+01, 3.77816086e+01, 2.95057468e+01, + 1.45517244e+01, 7.48275852e+00, 1.03448277e+01, 1.51494255e+01, + 1.63103447e+01, 1.71494255e+01, 3.17471256e+01, 3.00804596e+01, + 7.37931013e+00, 3.18390799e+00, 5.06896544e+00, 8.21839046e+00, + 8.32183933e+00, 9.95402336e+00, 1.62298851e+01, 1.48045979e+01, + 5.17471275e+01, 5.90804596e+01, 1.81149426e+01, 1.95632191e+01, + 3.52068977e+01, 4.45057487e+01, 5.01494255e+01, 3.45402298e+01, + 3.27126427e+01, 2.34597702e+01, 1.93908043e+01, 2.44712639e+01, + 3.81264381e+01, 4.28735619e+01, 6.04022980e+01, 4.93103447e+01, + 2.46666660e+01, 1.61609192e+01, 1.84482765e+01, 2.33793106e+01, + 2.89540234e+01, 3.46666679e+01, 6.10919533e+01, 5.41379318e+01, + 1.24137936e+01, 7.68965530e+00, 1.31379309e+01, 1.47586203e+01, + 1.55402298e+01, 2.08850574e+01, 3.33678169e+01, 2.94252872e+01, + 1.12712646e+02, 1.27770119e+02, 1.36206894e+01, 1.15287352e+01, + 7.06321869e+01, 9.42873535e+01, 3.35632172e+01, 2.23793106e+01, + 4.85402298e+01, 3.71954041e+01, 1.80689659e+01, 2.23793106e+01, + 4.96206894e+01, 5.45172424e+01, 6.42298813e+01, 5.25747108e+01, + 3.20229874e+01, 21., 1.99655170e+01, 2.41034489e+01, + 3.22528725e+01, 3.84367828e+01, 5.92298851e+01, 5.21954041e+01, + 1.23793106e+01, 9.10344791e+00, 1.49195404e+01, 1.77931042e+01, + 1.79770107e+01, 2.26321831e+01, 3.47931023e+01, 2.75172405e+01, + 1.11689651e+02, 1.28264374e+02, 1.28735628e+01, 6.63218403e+00, + 1.03275864e+02, 1.22402298e+02, 1.65747128e+01, 1.09080458e+01, + 7.58850555e+01, 9.30804596e+01, 2.12298851e+01, 1.33908043e+01, + 3.85287361e+01, 5.70229874e+01, 4.66781616e+01, 3.17241383e+01, + 2.52758617e+01, 2.08390808e+01, 1.58275862e+01, 1.78620682e+01, + 2.94137936e+01, 3.74597702e+01, 5.02873573e+01, 3.70114937e+01, + 9.37931061e+00, 6.81609201e+00, 1.03333330e+01, 1.41839085e+01, + 1.55402298e+01, 1.75747128e+01, 2.75057468e+01, 2.07011490e+01, + 1.41379309e+00, 1.06896555e+00, 3.12068963e+00, 2.06206894e+01, + 4.68965530e+01, 2.88620682e+01, 7.67241383e+00, 2.53448272e+00, + 3.16724129e+01, 1.33620691e+01, 2.43103456e+00, 1.98965511e+01, + 4.25000000e+01, 2.16206894e+01, 6.60344839e+00, 5.44827604e+00, + 1.25379311e+02, 4.36551743e+01, 1.67241383e+00, 8.63793087e+00, + 9.93275833e+01, 2.95172405e+01, 2.03448272e+00, 1.26379309e+01, + 2.03965511e+01, 8.67241383e+00, 2.39655161e+00, 6.87931013e+00, + 8.80862045e+01, 1.69827595e+01, 1.87931037e+00, 5.31034470e+00, + 1.46551728e+00, 2.44827580e+00, 9.51724148e+00, 4.72931023e+01, + 5.09827576e+01, 2.08103447e+01, 6.10344839e+00, 2.79310346e+00, + 4.15000000e+01, 3.41379309e+00, 5.62068987e+00, 4.19482765e+01, + 4.68965530e+01, 1.83965511e+01, 8.08620644e+00, 1.83103447e+01, + 1.27500000e+02, 1.15689659e+01, 2.22413802e+00, 4.09137917e+01, + 1.16224136e+02, 9.63793087e+00, 2.68965507e+00, 6.46379318e+01, + 2.36206894e+01, 7.74137926e+00, 2.27586198e+00, 2.82758617e+01, + 1.05086205e+02, 5.98275852e+00, 2.25862074e+00, 1.05862064e+01, + 1.84482753e+00, 2.48275852e+00, 2.16551723e+01, 4.85344810e+01, + 3.12241383e+01, 1.05689659e+01, 5.91379309e+00, 3.60344839e+00, + 6.31896553e+01, 2.34482765e+00, 1.03275862e+01, 4.39137917e+01, + 3.06206894e+01, 1.05862064e+01, 8.70689678e+00, 8.62241364e+01, + 1.15086205e+02, 3.70689654e+00, 2.68965507e+00, 1.05241379e+02, + 1.18034485e+02, 3.51724148e+00, 3.68965507e+00, 109., + 1.74482765e+01, 6.18965530e+00, 1.84482753e+00, 3.55689659e+01, + 5.76034470e+01, 2.17241383e+00, 3.93103456e+00, 1.49827585e+01, + 3.24137926e+00, 2.36206889e+00, 1.87068958e+01, 2.71034489e+01, + 1.16206894e+01, 5.22413778e+00, 1.36206894e+01, 3.89827576e+01, + 4.42586212e+01, 1.84482753e+00, 9.67241383e+00, 8.23965530e+01, + 2.15862064e+01, 3.72413802e+00, 1.21379309e+01, 1.26275864e+02, + 2.91551723e+01, 2.36206889e+00, 3.25862074e+00, 1.22879311e+02, + 7.35172424e+01, 2.03448272e+00, 4.56896544e+00, 6.00344810e+01, + 1.45000000e+01, 3.94827580e+00, 1.31034482e+00, 8.65517235e+00, + 7.91379309e+00, 1.60344827e+00, 5.13793087e+00, 1.70862064e+01, + 1.33725491e+01, 5.94117641e+00, 7.74509811e+00, 1.10588234e+02, + 2.77058830e+01, 5.72549009e+00, 2.36274509e+01, 133., + 1.85882359e+01, 1.76470590e+00, 8.49019623e+00, 1.48411758e+02, + 6.03921585e+01, 1.13333330e+01, 2.33529415e+01, 1.15901962e+02, + 1.42156858e+01, 4.19607830e+00, 8.98039246e+00, 7.58627472e+01, + 3.22941170e+01, 1.45294113e+01, 1.54901962e+01, 8.34509811e+01, + 2.80392146e+00, 4.29411745e+00, 7.45098019e+00, 1.35686274e+01, + 1.25882349e+01, 1.04117651e+01, 6.68627453e+00, 9.07843113e+00, + 2.19019604e+01, 7.27450991e+00, 1.14509802e+01, 1.52137253e+02, + 8.10588226e+01, 1.25098038e+01, 1.52745094e+01, 1.11588234e+02, + 3.64705887e+01, 3.88235283e+00, 1.24117651e+01, 1.26705879e+02, + 5.16274529e+01, 1.56078434e+01, 1.94901962e+01, 1.23843140e+02, + 6.78431368e+00, 5.72549009e+00, 1.57254906e+01, 3.44509811e+01, + 3.17058830e+01, 2.34313717e+01, 1.59803925e+01, 2.63921566e+01, + 4.09803915e+00, 4.66666651e+00, 7.29411745e+00, 1.06274509e+01, + 1.10588236e+01, 1.31372547e+01, 1.12745094e+01, 8.03921604e+00, + 3.63137245e+01, 3.62745094e+00, 9.60784340e+00, 1.27705879e+02, + 6.80784302e+01, 1.69607849e+01, 1.38235292e+01, 1.06529411e+02, + 1.95490189e+01, 6.33333349e+00, 1.48627453e+01, 4.03529396e+01, + 4.09803925e+01, 2.51176472e+01, 1.53921566e+01, 4.63725471e+01, + 6.05882359e+00, 5.19607830e+00, 1.26470585e+01, 2.04901962e+01, + 2.26666660e+01, 2.33137264e+01, 1.93921566e+01, 1.41764708e+01, + 4.01960802e+00, 4.54901981e+00, 6.88235283e+00, 9., + 1.22549019e+01, 1.59607840e+01, 8.60784340e+00, 4.68627453e+00, + 1.88039207e+01, 4.25490189e+00, 9.90196037e+00, 4.77058830e+01, + 2.87450981e+01, 1.25882349e+01, 9.01960754e+00, 5.35098038e+01, + 7.27450991e+00, 6.37254906e+00, 1.18431368e+01, 1.94901962e+01, + 2.43725491e+01, 1.94117641e+01, 1.25098038e+01, 1.22745094e+01, + 4.90196085e+00, 6.47058821e+00, 9.92156887e+00, 1.11176472e+01, + 1.79607849e+01, 1.92941170e+01, 1.09215689e+01, 6., + 3.39215684e+00, 4.31372547e+00, 5.62745094e+00, 7.15686274e+00, + 1.11568632e+01, 1.33725491e+01, 6.74509811e+00, 2.86274505e+00, + 5.70434799e+01, 4.54347849e+00, 7.41304350e+00, 8.72391281e+01, + 4.55869560e+01, 6.23913050e+00, 1.78043480e+01, 1.06260872e+02, + 3.21304359e+01, 6.95652151e+00, 1.62826080e+01, 8.75869598e+01, + 2.10217400e+01, 4.23913050e+00, 3.33260880e+01, 8.38260880e+01, + 1.33260870e+01, 5.67391300e+00, 8.13043499e+00, 1.49782610e+01, + 4.58695650e+00, 1.90869560e+01, 7.30434799e+01, 5.13260880e+01, + 3.56521749e+00, 2.91304350e+00, 4.78260851e+00, 4.34782600e+00, + 8.21739101e+00, 4.33913040e+01, 6.87391281e+01, 1.36086960e+01, + 9.58695679e+01, 1.42391300e+01, 6.28260851e+00, 1.00456520e+02, + 9.76521759e+01, 4.43478251e+00, 5.67391300e+00, 8.29782639e+01, + 8.45217361e+01, 2.88043480e+01, 7.65217400e+00, 2.49565220e+01, + 1.37826090e+01, 1.45652175e+00, 1.43043480e+01, 7.58260880e+01, + 3.80217400e+01, 1.62826080e+01, 1.52608700e+01, 1.40652170e+01, + 1.18478260e+01, 1.75869560e+01, 4.57391319e+01, 6.11304359e+01, + 1.07391300e+01, 1.26086960e+01, 1.68695660e+01, 2.35434780e+01, + 2.96086960e+01, 3.82391319e+01, 3.87173920e+01, 1.94130440e+01, + 9.68695679e+01, 3.49782600e+01, 6.80434799e+00, 4.74130440e+01, + 1.01282608e+02, 6.69565201e+00, 1.65217388e+00, 3.04782600e+01, + 1.02043480e+02, 7.20869598e+01, 1.59347830e+01, 8.26086998e+00, + 1.03478260e+01, 9.56521749e-01, 2.82608700e+00, 3.28478279e+01, + 4.81739120e+01, 4.29130440e+01, 4.44130440e+01, 2.88695660e+01, + 1.43043480e+01, 1.28260870e+01, 1.59565220e+01, 3.23260880e+01, + 1.02173910e+01, 1.44565220e+01, 2.46739140e+01, 3.39130440e+01, + 2.77173920e+01, 2.43260860e+01, 1.65652180e+01, 8.95652199e+00, + 7.02608719e+01, 4.93913040e+01, 6.91304350e+00, 1.02826090e+01, + 9.76086960e+01, 2.86086960e+01, 8.91304374e-01, 5.43478251e+00, + 5.57826080e+01, 1.00913040e+02, 2.03913040e+01, 3.19565225e+00, + 1.28478260e+01, 4., 1.52173907e-01, 4.08695650e+00, + 2.57826080e+01, 7.63260880e+01, 3.77608681e+01, 9.69565201e+00, + 3.89130425e+00, 3.91304350e+00, 4.23913050e+00, 5.97826099e+00, + 5.56521749e+00, 2.18695660e+01, 2.93043480e+01, 1.60217400e+01, + 9.45652199e+00, 1.01521740e+01, 1.08695650e+01, 5.82608700e+00, + 7.70199966e+01, 2.51599998e+01, 9.21000004e+00, 1.96700001e+01, + 9.20500031e+01, 2.33700008e+01, 8.26000023e+00, 1.45100002e+01, + 9.80699997e+01, 2.73899994e+01, 1.12399998e+01, 2.75699997e+01, + 8.19199982e+01, 1.48199997e+01, 9.38000011e+00, 2.55699997e+01, + 7.96999969e+01, 2.19699993e+01, 1.41000004e+01, 2.65000000e+01, + 3.69000015e+01, 1.15000000e+01, 1.21899996e+01, 3.42999992e+01, + 9.84000015e+00, 7.32999992e+00, 7.23000002e+00, 7.55000019e+00, + 7.82999992e+00, 5.73000002e+00, 6.53999996e+00, 9.01000023e+00, + 1.03220001e+02, 2.52000008e+01, 6.28000021e+00, 2.42800007e+01, + 1.14760002e+02, 2.59599991e+01, 5.01999998e+00, 1.88500004e+01, + 1.16489998e+02, 2.75499992e+01, 8.14999962e+00, 2.88299999e+01, + 1.03449997e+02, 1.84799995e+01, 4.90999985e+00, 2.76499996e+01, + 9.69499969e+01, 2.93099995e+01, 1.52799997e+01, 2.08400002e+01, + 3.83899994e+01, 1.68199997e+01, 1.45200005e+01, 3.58199997e+01, + 1.04200001e+01, 9.85000038e+00, 8.48999977e+00, 7.71000004e+00, + 8.96000004e+00, 6.88999987e+00, 8.07999992e+00, 8.68000031e+00, + 1.03760002e+02, 1.82399998e+01, 5.09000015e+00, 2.29699993e+01, + 1.17150002e+02, 2.50200005e+01, 4.28000021e+00, 2.05400009e+01, + 1.14949997e+02, 2.68799992e+01, 6.09999990e+00, 2.13500004e+01, + 9.96299973e+01, 2.04099998e+01, 4.69000006e+00, 2.49400005e+01, + 9.36200027e+01, 3.02000008e+01, 1.56999998e+01, 1.67299995e+01, + 3.04400005e+01, 1.69500008e+01, 1.50900002e+01, 3.05200005e+01, + 8.72000027e+00, 8.17000008e+00, 9.05000019e+00, 7.42000008e+00, + 7.34000015e+00, 6.88999987e+00, 9.10000038e+00, 9.35000038e+00, + 8.03700027e+01, 1.45600004e+01, 6.19999981e+00, 1.71000004e+01, + 1.03010002e+02, 2.28700008e+01, 5.15000010e+00, 1.87800007e+01, + 9.16800003e+01, 2.16200008e+01, 8.80000019e+00, 1.59300003e+01, + 7.38099976e+01, 2.18400002e+01, 7.34999990e+00, 2.16900005e+01, + 7.28799973e+01, 2.80300007e+01, 1.41300001e+01, 1.16800003e+01, + 1.93500004e+01, 1.40299997e+01, 1.25900002e+01, 2.24699993e+01, + 6.40999985e+00, 6.71000004e+00, 7.23000002e+00, 6.40000010e+00, + 5.21999979e+00, 5.38000011e+00, 6.84000015e+00, 7.25000000e+00, + 2.83214283e+01, 1.21535713e+02, 1.00178576e+01, 2.19642854e+00, + 2.30892849e+01, 1.03767860e+02, 8.92857170e+00, 1.73214281e+00, + 1.28214283e+01, 4.27678566e+01, 2.52321434e+01, 7.35714293e+00, + 1.19285717e+01, 1.08553574e+02, 2.55892849e+01, 2.21428561e+00, + 9.85714245e+00, 3.02500000e+01, 4.41250000e+01, 1.61964283e+01, + 5.05357122e+00, 1.99107151e+01, 1.04821424e+01, 1.75000000e+00, + 4.51785707e+00, 2.09285717e+01, 3.75357132e+01, 2.47857151e+01, + 4.50000000e+00, 1.71428573e+00, 2.42857146e+00, 1.75000000e+00, + 8.32142830e+00, 1.18875000e+02, 2.68571434e+01, 2.44642854e+00, + 8.64285755e+00, 39., 1.43928576e+01, 3.64285707e+00, + 5.92857122e+00, 1.29500000e+02, 9.21428604e+01, 3.07142854e+00, + 5.57142878e+00, 1.22071426e+02, 6.82142868e+01, 3.16071439e+00, + 3.64285707e+00, 7.25000000e+01, 9.14642868e+01, 8.42857170e+00, + 3.46428561e+00, 1.19357140e+02, 1.27178574e+02, 3.16071439e+00, + 2.87500000e+00, 1.75535717e+01, 5.75892868e+01, 1.62857151e+01, + 4.17857122e+00, 4.03392868e+01, 1.23196426e+02, 9.53571415e+00, + 1.41071427e+00, 7.07142878e+00, 3.28571439e+00, 1.80357146e+00, + 1.00892859e+01, 3.55357132e+01, 2.51607151e+01, 5.55357122e+00, + 3.16071439e+00, 7.21428604e+01, 4.92857132e+01, 2.55357146e+00, + 7.14285707e+00, 2.53750000e+01, 2.92678566e+01, 1.03392859e+01, + 3.82142854e+00, 9.22857132e+01, 1.20500000e+02, 4.42857122e+00, + 3.67857146e+00, 2.75357151e+01, 4.48214302e+01, 1.08035717e+01, + 3.10714293e+00, 3.44107132e+01, 1.18678574e+02, 1.12857141e+01, + 2.28571439e+00, 1.89107151e+01, 7.37142868e+01, 9.60714245e+00, + 9.64285731e-01, 5.71428597e-01, 5.89285731e-01, 8.92857134e-01, + 3.85714293e+00, 2.03392849e+01, 1.38571424e+01, 2.48214293e+00, + 1.42857146e+00, 9.10714269e-01, 9.82142866e-01, 1.12500000e+00, + 3.44642854e+00, 2.01071434e+01, 2.01428566e+01, 5.64285707e+00, + 1.85714281e+00, 1.07142854e+00, 1.57142854e+00, 1.37500000e+00, + 2.73214293e+00, 1.15892859e+01, 1.90714283e+01, 1.01607141e+01, + 2.26785707e+00, 1.53571427e+00, 4.12500000e+00, 1.03571427e+00, + 1.67857146e+00, 6.17857122e+00, 1.46250000e+01, 8.67857170e+00, + 3.46052623e+00, 1.43552628e+01, 1.30131578e+01, 2.81578946e+00, + 9.43421078e+00, 5.25789490e+01, 3.47894745e+01, 3.50000000e+00, + 3.64473677e+00, 1.57894735e+01, 1.34078951e+01, 4.11842108e+00, + 6.47368431e+00, 2.04473686e+01, 1.64736843e+01, 5.27631569e+00, + 4.21052647e+00, 7.78947353e+00, 7.85526323e+00, 4.05263138e+00, + 6.97368431e+00, 9.67105293e+00, 8.01315784e+00, 6.05263138e+00, + 3.48684216e+00, 3.75000000e+00, 4.53947353e+00, 3.59210515e+00, + 3.76315784e+00, 4.80263138e+00, 5.77631569e+00, 4.10526323e+00, + 5.93421030e+00, 7.35000000e+01, 5.46842117e+01, 2., + 3.65789485e+00, 1.00131577e+02, 8.96842117e+01, 6.56578970e+00, + 3.14473677e+00, 3.72500000e+01, 3.04473686e+01, 2.17105269e+00, + 3.50000000e+00, 1.22421051e+02, 1.14157898e+02, 4.69736862e+00, + 4.10526323e+00, 2.69736843e+01, 2.53289471e+01, 5.63157892e+00, + 7.81578970e+00, 8.99605255e+01, 6.99473648e+01, 1.05526314e+01, + 4.71052647e+00, 1.27236843e+01, 1.52105265e+01, 6.31578970e+00, + 6.59210539e+00, 2.03552628e+01, 2.75263157e+01, 1.07236843e+01, + 4.30263138e+00, 1.18368423e+02, 9.32894745e+01, 2.40789485e+00, + 2.18421054e+00, 3.21315804e+01, 2.99342098e+01, 2.98684216e+00, + 4.39473677e+00, 1.23276314e+02, 1.10539474e+02, 2.27631569e+00, + 2.65789485e+00, 7.86447372e+01, 5.98421059e+01, 2.14473677e+00, + 5.32894754e+00, 8.00526352e+01, 6.17236824e+01, 1.37236843e+01, + 1.63026314e+01, 1.14815788e+02, 9.17368393e+01, 6.28947353e+00, + 4.27631569e+00, 1.84605255e+01, 1.84210529e+01, 9.32894707e+00, + 1.27236843e+01, 8.69342117e+01, 6.78947372e+01, 1.38947372e+01, + 3.17105269e+00, 1.00921049e+01, 8.88157940e+00, 2.92105269e+00, + 2.93421054e+00, 2.07500000e+01, 1.85921059e+01, 3.60526323e+00, + 6.38157892e+00, 6.49736862e+01, 4.19868431e+01, 3.28947377e+00, + 4.03947353e+00, 3.23289490e+01, 2.59868412e+01, 3.65789485e+00, + 1.64868412e+01, 1.04486839e+02, 7.39078979e+01, 7.02631569e+00, + 6.03947353e+00, 2.59210529e+01, 1.86578941e+01, 3.68421054e+00, + 9.39473724e+00, 6.37236824e+01, 4.07105255e+01, 9.94736862e+00, + 9.94736862e+00, 3.92105255e+01, 2.27105255e+01, 4.11842108e+00, + 6.87543869e+01, 1.70526314e+01, 1.26315784e+00, 2.65087719e+01, + 1.14578949e+02, 3.25964928e+01, 1.43859649e+00, 9.47368431e+00, + 1.20649124e+02, 4.65614052e+01, 4.14035082e+00, 8.14035130e+00, + 5.37719307e+01, 1.58596487e+01, 3.94736838e+00, 2.26666660e+01, + 8.49473648e+01, 5.21578941e+01, 6.70175457e+00, 2.75438595e+00, + 6.12280703e+00, 3.85964918e+00, 5.40350866e+00, 2.15614033e+01, + 9.98245621e+00, 8.36842060e+00, 1.19298244e+00, 4.56140339e-01, + 3.50877196e-01, 2.63157904e-01, 1.07017541e+00, 3.33333325e+00, + 8.27719269e+01, 7.03508759e+00, 1.80701756e+00, 7.62456131e+01, + 1.17315788e+02, 1.01754389e+01, 1.92982459e+00, 4.12631569e+01, + 1.23684212e+02, 2.15263157e+01, 5.52631569e+00, 1.89649124e+01, + 5.29298248e+01, 1.07368422e+01, 8.82456112e+00, 6.55614014e+01, + 92., 4.05438614e+01, 7.43859673e+00, 4.36842108e+00, + 7.92982435e+00, 6.14035082e+00, 1.11754389e+01, 4.33684196e+01, + 1.28596487e+01, 7.98245621e+00, 1.15789473e+00, 3.15789461e-01, + 3.33333343e-01, 4.73684222e-01, 2.08771920e+00, 6.05263138e+00, + 8.40877228e+01, 3.82456136e+00, 4.10526323e+00, 8.61754379e+01, + 6.43859634e+01, 2.57894731e+00, 3.24561405e+00, 8.94210510e+01, + 1.07947365e+02, 1.54385967e+01, 5.78947353e+00, 2.17894745e+01, + 2.64736843e+01, 8.49122810e+00, 1.19122810e+01, 9.41929855e+01, + 7.90526352e+01, 2.61578941e+01, 5.78947353e+00, 3.54385972e+00, + 4.85964918e+00, 5.61403513e+00, 1.58947372e+01, 6.69649124e+01, + 1.28421049e+01, 4.45614052e+00, 5.96491218e-01, 3.85964900e-01, + 2.63157904e-01, 2.45614037e-01, 2.35087729e+00, 1.04736843e+01, + 5.19298248e+01, 3.75438595e+00, 4.91228056e+00, 4.22982445e+01, + 1.68245621e+01, 2.77192974e+00, 1.04736843e+01, 1.04789474e+02, + 6.75614014e+01, 1.17543859e+01, 4.71929836e+00, 1.01578951e+01, + 8.57894707e+00, 7.91228056e+00, 1.93508778e+01, 8.92807007e+01, + 5.92280693e+01, 1.24035091e+01, 3.73684216e+00, 2.22807026e+00, + 2.59649134e+00, 4.14035082e+00, 1.67192974e+01, 7.30526352e+01, + 8.38596535e+00, 1.98245609e+00, 4.21052635e-01, 1.75438598e-01, + 4.21052635e-01, 3.85964900e-01, 2.40350866e+00, 1.07192984e+01, + 1.00877190e+01, 8.45614052e+00, 6.68421030e+00, 1.01403513e+01, + 2.38245621e+01, 1.71228065e+01, 1.26140347e+01, 1.19649124e+01, + 1.07894737e+02, 4.99298248e+01, 5.82456160e+00, 2.49298248e+01, + 8.00701752e+01, 4.06491241e+01, 1.14385967e+01, 5.40701752e+01, + 1.04649124e+02, 5.88070183e+01, 2.65263157e+01, 3.80877190e+01, + 3.04561405e+01, 4.34912262e+01, 2.95438595e+01, 5.04912262e+01, + 1.25614033e+01, 2.04912281e+01, 2.01929817e+01, 2.83859653e+01, + 5.15964928e+01, 8.45263138e+01, 5.45087738e+01, 1.44561405e+01, + 1.39649124e+01, 1.10350876e+01, 9.61403465e+00, 1.32982454e+01, + 2.73508778e+01, 1.65789471e+01, 1.31403513e+01, 1.60526314e+01, + 1.16438599e+02, 5.88070183e+01, 6.78947353e+00, 2.21754379e+01, + 8.64561386e+01, 5.56491241e+01, 9.49122810e+00, 3.62280693e+01, + 1.09473686e+02, 8.49824524e+01, 3.72456131e+01, 3.69298248e+01, + 5.02807007e+01, 2.65438595e+01, 1.56315794e+01, 3.76491241e+01, + 1.51228065e+01, 3.74912262e+01, 3.95087738e+01, 4.40175438e+01, + 5.34912262e+01, 3.29649124e+01, 2.46140347e+01, 1.44035091e+01, + 1.49298248e+01, 1.46315794e+01, 1.08421049e+01, 9.19298267e+00, + 1.38421049e+01, 1.17368422e+01, 1.31929827e+01, 1.88771935e+01, + 7.28596497e+01, 5.49473686e+01, 8.08771896e+00, 1.04385967e+01, + 6.35789490e+01, 7.24210510e+01, 1.70701752e+01, 1.69298248e+01, + 8.76140366e+01, 1.14298248e+02, 2.55438595e+01, 1.49473686e+01, + 5.94385948e+01, 5.70877190e+01, 1.16315794e+01, 7.08771944e+00, + 2.03684216e+01, 6.39649124e+01, 4.30350876e+01, 3.08947372e+01, + 3.96842117e+01, 3.02982464e+01, 1.23508768e+01, 1.23508768e+01, + 7.71929836e+00, 7.63157892e+00, 6.70175457e+00, 4.01754379e+00, + 3.75438595e+00, 4.70175457e+00, 8.22807026e+00, 1.05263157e+01, + 1.78070183e+01, 1.54912281e+01, 9.05263138e+00, 6.19298267e+00, + 1.63333340e+01, 2.64035091e+01, 1.14561405e+01, 1.07192984e+01, + 2.88771935e+01, 6.31228065e+01, 2.03859653e+01, 5.36842108e+00, + 2.28070183e+01, 4.46140366e+01, 1.62982464e+01, 5.63157892e+00, + 1.23859653e+01, 4.38421059e+01, 3.34561386e+01, 2.10526314e+01, + 1.48421049e+01, 2.16315784e+01, 1.31052628e+01, 8.57894707e+00, + 8.12745132e+01, 5.38627434e+01, 1.56274509e+01, 9.25490189e+00, + 8.62745094e+00, 5.76470566e+00, 2.37254906e+00, 1.54509802e+01, + 2.74901962e+01, 3.89411774e+01, 3.00392151e+01, 1.38235292e+01, + 5.62745094e+00, 6.80392170e+00, 6.41176462e+00, 1.12156858e+01, + 3.28235283e+01, 4.31960793e+01, 3.67450981e+01, 1.69607849e+01, + 3.43137264e+00, 3.74509811e+00, 7.56862736e+00, 1.26078434e+01, + 2.38823528e+01, 3.59607849e+01, 3.54901962e+01, 2.65294113e+01, + 1.22156858e+01, 5.88235283e+00, 4.66666651e+00, 8.21568584e+00, + 8.71372528e+01, 1.16196075e+02, 1.80196075e+01, 5.39215708e+00, + 1.33725491e+01, 1.19803925e+01, 3.35294127e+00, 4.45098019e+00, + 3.35098038e+01, 6.96862717e+01, 4.55098038e+01, 1.75686283e+01, + 6.25490189e+00, 1.20784311e+01, 1.20392160e+01, 1.09215689e+01, + 2.71372547e+01, 4.58039207e+01, 5.71372566e+01, 2.88431377e+01, + 6.13725471e+00, 4.64705896e+00, 1.03725491e+01, 1.46274509e+01, + 2.15882359e+01, 3.10588226e+01, 4.80392151e+01, 3.88235283e+01, + 9.98039246e+00, 2.60784316e+00, 3.39215684e+00, 8.25490189e+00, + 5.03921585e+01, 1.30470581e+02, 2.93725491e+01, 2.03921580e+00, + 1.74313717e+01, 3.35882339e+01, 4.11764717e+00, 2.11764717e+00, + 2.65294113e+01, 1.26352943e+02, 7.37254868e+01, 8.76470566e+00, + 4.68627453e+00, 1.67450981e+01, 1.05882349e+01, 5.94117641e+00, + 1.41764708e+01, 6.57058792e+01, 8.14313736e+01, 2.11176472e+01, + 7.76470566e+00, 9.45098019e+00, 1.53333330e+01, 1.45294113e+01, + 1.14705887e+01, 1.68823528e+01, 6.20980377e+01, 5.27058830e+01, + 7.72549009e+00, 4.76470566e+00, 8.66666698e+00, 1.91176472e+01, + 1.16078434e+01, 1.06372551e+02, 3.86666679e+01, 1.43137252e+00, + 1.79607849e+01, 4.41960793e+01, 6.68627453e+00, 1.64705884e+00, + 9.96078396e+00, 1.25450981e+02, 1.04039215e+02, 1.41176474e+00, + 2.19607854e+00, 2.19803925e+01, 1.03725491e+01, 3.60784316e+00, + 8.19607830e+00, 7.87254868e+01, 1.17941177e+02, 1.32352943e+01, + 1.11764705e+00, 6.05882359e+00, 1.04117651e+01, 7.80392170e+00, + 4.58823538e+00, 1.97450981e+01, 1.13627449e+02, 5.48627434e+01, + 1.23529410e+00, 1.62745094e+00, 7.09803915e+00, 1.19215689e+01, + 3.90476179e+00, 4.50793648e+00, 3.36984138e+01, 5.27301598e+01, + 8.36507893e+00, 3.36507940e+00, 3.25396824e+00, 4.09523821e+00, + 3.36507940e+00, 6.55555534e+00, 8.45079346e+01, 7.76031723e+01, + 6.26984119e+00, 2.52380943e+00, 3.65079355e+00, 3.47619057e+00, + 2.14285707e+00, 1.03809528e+01, 1.07714287e+02, 5.83015862e+01, + 3.88888884e+00, 2.71428561e+00, 5.82539701e+00, 2.49206352e+00, + 1.66666663e+00, 2.12063484e+01, 9.97142868e+01, 2.36825390e+01, + 1.82539678e+00, 2.44444442e+00, 5.09523821e+00, 1.53968251e+00, + 2.07936502e+00, 2.26984119e+00, 7.60793686e+01, 1.21571426e+02, + 1.02380953e+01, 1.85714281e+00, 4.55555534e+00, 7.36507940e+00, + 1.96825397e+00, 3.36507940e+00, 1.24238098e+02, 1.22158730e+02, + 3.38095236e+00, 1.53968251e+00, 1.20317459e+01, 1.30634918e+01, + 2.11111116e+00, 9.96825409e+00, 1.28365082e+02, 6.22063484e+01, + 1.41269839e+00, 2.39682531e+00, 2.62857151e+01, 1.36825399e+01, + 1.92063487e+00, 3.46507950e+01, 1.21761902e+02, 1.11904764e+01, + 9.20634925e-01, 4.88888884e+00, 3.10793648e+01, 8.49206352e+00, + 4.79365063e+00, 1.33333337e+00, 4.92539673e+01, 1.21920631e+02, + 8.46031761e+00, 5.87301612e-01, 4.26984119e+00, 2.09365082e+01, + 6.50793648e+00, 2.03174615e+00, 5.88253975e+01, 6.79523773e+01, + 1.01587307e+00, 3.49206358e-01, 2.69365082e+01, 7.06190491e+01, + 4., 3.26984119e+00, 4.19523811e+01, 1.49047623e+01, + 3.49206358e-01, 1.36507940e+00, 8.09047623e+01, 8.23333359e+01, + 1.95238090e+00, 1.00476189e+01, 3.02222214e+01, 2.07936502e+00, + 2.22222224e-01, 1.06666670e+01, 9.75079346e+01, 3.92857132e+01, + 2.06825390e+01, 1.26984131e+00, 4.28571415e+00, 4.51428566e+01, + 8.39682579e+00, 1.42857149e-01, 3.03174615e+00, 57., + 2.24603176e+01, 1.53968251e+00, 4.01587296e+00, 1.24920635e+01, + 1.79365075e+00, 7.30158746e-01, 2.24920635e+01, 1.14317459e+02, + 1.17301588e+01, 3.09523821e+00, 8.87301540e+00, 9.33333302e+00, + 1.66666663e+00, 2.61904764e+00, 4.41904755e+01, 7.64285736e+01, + 6.42857122e+00, 4.57142878e+00, 8.60317421e+00, 2.96825385e+00, + 7.93650806e-01, 7.60317469e+00, 4.69523811e+01, 3.20634918e+01, + 6.31868124e+00, 1.72527468e+00, 1.75824177e+00, 7.50549459e+00, + 1.64835167e+01, 8.20879078e+00, 2.08791208e+00, 1.50549448e+00, + 1.23461540e+02, 1.55384617e+01, 2.18681312e+00, 1.23186817e+01, + 6.17912102e+01, 1.34065933e+01, 2.79120874e+00, 2.08131866e+01, + 7.23406601e+01, 9.95604420e+00, 2.36263728e+00, 2.69560432e+01, + 1.21659340e+02, 1.83736267e+01, 3.24175835e+00, 2.29010983e+01, + 3.09780216e+01, 1.27032967e+01, 3.30769229e+00, 4.43956041e+00, + 8.52747250e+00, 4.71428585e+00, 6.51648331e+00, 2.99450550e+01, + 3.83516479e+00, 2.28571439e+00, 2.23076916e+00, 7.02197790e+00, + 1.86923084e+01, 1.09450550e+01, 3.45054936e+00, 1.53846157e+00, + 1.25934067e+02, 6.05384598e+01, 3.24175835e+00, 7.81318665e+00, + 5.34615402e+01, 2.70879116e+01, 4.63736248e+00, 7.14285707e+00, + 9.55824203e+01, 4.06373634e+01, 4.01098919e+00, 6.38461542e+00, + 1.25714287e+02, 9.07802200e+01, 3.69230771e+00, 1.18241758e+01, + 3.97142868e+01, 2.79560432e+01, 9.26373672e+00, 3.56043959e+00, + 1.39890108e+01, 1.12087908e+01, 4.89011002e+00, 2.06153851e+01, + 1.31868136e+00, 1.49450552e+00, 1.96703291e+00, 4.54945040e+00, + 1.85164833e+01, 1.35934067e+01, 3.78021979e+00, 1.79120874e+00, + 8.54065933e+01, 7.79011002e+01, 4.02197790e+00, 7.60439539e+00, + 2.67032967e+01, 2.10329666e+01, 5.60439539e+00, 3.36263728e+00, + 1.03593407e+02, 1.19703300e+02, 4.63736248e+00, 3.47252750e+00, + 1.08901100e+02, 1.25230766e+02, 4.48351669e+00, 4.18681335e+00, + 2.85604401e+01, 3.20549469e+01, 1.27692308e+01, 3.28571439e+00, + 3.42087898e+01, 7.39340668e+01, 3.50549459e+00, 7.09890127e+00, + 6.59340680e-01, 1.06593406e+00, 1.29670334e+00, 2.28571439e+00, + 1.33846149e+01, 1.53516483e+01, 4.13186836e+00, 1.20879126e+00, + 1.13846149e+01, 2.15054951e+01, 3.01098895e+00, 5.34065914e+00, + 2.09450550e+01, 2.23516483e+01, 7.06593418e+00, 2.61538458e+00, + 5.38901100e+01, 1.29252747e+02, 6.97802210e+00, 2.98901105e+00, + 2.37912083e+01, 6.35934067e+01, 5.65934086e+00, 2.18681312e+00, + 1.40439558e+01, 8.53516464e+01, 1.28021975e+01, 1.80219781e+00, + 2.08901100e+01, 1.28010986e+02, 1.67582417e+01, 1.73626375e+00, + 4.62264156e+00, 3.60377359e+00, 2.49056602e+00, 2.30188680e+00, + 5.77358484e+00, 5.62264156e+00, 4.07547188e+00, 3.66037726e+00, + 4.67547188e+01, 2.49433956e+01, 3.86792445e+00, 9.71698093e+00, + 6.42452850e+01, 3.11320763e+01, 9.33962250e+00, 7.56603765e+00, + 1.34660370e+02, 64., 7.84905672e+00, 1.54339619e+01, + 4.41886787e+01, 2.26037731e+01, 1.14905663e+01, 5.16981125e+01, + 2.83018875e+01, 1.92641506e+01, 1.46603775e+01, 1.86037731e+01, + 2.12641506e+01, 2.53396225e+01, 2.36792450e+01, 2.01698112e+01, + 5.15094328e+00, 4.98113203e+00, 4.01886797e+00, 3.54716992e+00, + 5.11320734e+00, 4.50943375e+00, 3.88679242e+00, 4.71698093e+00, + 3.92830200e+01, 1.96981125e+01, 5.54716969e+00, 1.05849056e+01, + 7.30566025e+01, 3.98301888e+01, 6.66037750e+00, 9.73584938e+00, + 1.33150940e+02, 1.15433960e+02, 1.69056606e+01, 1.18490562e+01, + 7.26226425e+01, 5.00943413e+01, 6.50943375e+00, 2.19245281e+01, + 5.04339638e+01, 6.13018875e+01, 2.52075462e+01, 1.60188675e+01, + 3.30566025e+01, 3.31132088e+01, 1.99811325e+01, 1.62830181e+01, + 5.28301907e+00, 4.94339609e+00, 4.81132078e+00, 3.62264156e+00, + 3.18867922e+00, 3.64150953e+00, 4.32075453e+00, 5.71698093e+00, + 1.48679247e+01, 1.26603775e+01, 7.98113203e+00, 9.84905624e+00, + 4.38301888e+01, 3.00943394e+01, 6.94339609e+00, 8.67924500e+00, + 1.10132072e+02, 1.21113205e+02, 19., 8.84905624e+00, + 7.87358475e+01, 7.70566025e+01, 8.94339657e+00, 6., + 8.69056625e+01, 1.16886795e+02, 3.43396225e+01, 1.04528303e+01, + 4.68867912e+01, 5.53207550e+01, 1.83584900e+01, 1.33018866e+01, + 2.33962274e+00, 2.43396235e+00, 3.03773594e+00, 2.77358484e+00, + 2.22641516e+00, 2.94339633e+00, 4.15094328e+00, 3.67924523e+00, + 9.20754719e+00, 9.47169781e+00, 8., 7.86792469e+00, + 1.68301888e+01, 1.04905663e+01, 5.39622641e+00, 6.28301907e+00, + 4.88867912e+01, 4.20566025e+01, 9.92452812e+00, 8.92452812e+00, + 6.28867912e+01, 4.63584900e+01, 9.43396187e+00, 9.66037750e+00, + 8.97735825e+01, 1.00490562e+02, 2.87547169e+01, 8.75471687e+00, + 5.24716988e+01, 4.10943413e+01, 1.30754719e+01, 1.59622641e+01, + 3.48648643e+00, 4.19819832e+00, 4.03603601e+00, 4.85585594e+00, + 1.32072077e+01, 1.20540543e+01, 4.87387371e+00, 2.94594598e+00, + 3.92792797e+00, 4.30630636e+00, 4.14414406e+00, 1.24684687e+01, + 1.29468475e+02, 9.91891861e+01, 6.16216230e+00, 3., + 5.80180168e+00, 7.36936951e+00, 1.73873878e+00, 9.93693733e+00, + 1.44198196e+02, 1.29198196e+02, 8.14414406e+00, 3.14414406e+00, + 4.28108101e+01, 5.37207222e+01, 8.79279232e+00, 5.27027035e+00, + 1.97027035e+01, 4.13693695e+01, 1.59099102e+01, 1.08828831e+01, + 5.73873854e+00, 6.90990973e+00, 6.35135126e+00, 5.92792797e+00, + 1.04954958e+01, 1.00900898e+01, 6.11711693e+00, 5.21621609e+00, + 8.90991020e+00, 9.83783817e+00, 9.17117119e+00, 1.48918915e+01, + 8.62072067e+01, 8.75945969e+01, 1.29189186e+01, 6.85585594e+00, + 3.72972965e+00, 4.92792797e+00, 3.52252245e+00, 7.48648643e+00, + 1.39486481e+02, 1.51576584e+02, 1.74954948e+01, 3.01801801e+00, + 1.52252254e+01, 2.74324322e+01, 1.02432432e+01, 4.47747755e+00, + 3.28378372e+01, 1.24090088e+02, 4.32702713e+01, 8.59459496e+00, + 5.47747755e+00, 5.94594574e+00, 5.94594574e+00, 5.63963985e+00, + 1.02252254e+01, 9.72072029e+00, 6.37837839e+00, 5.11711693e+00, + 1.35675678e+01, 1.26936941e+01, 1.19099102e+01, 1.44954958e+01, + 4.07567558e+01, 4.05135117e+01, 1.54954958e+01, 1.19639635e+01, + 5.20720720e+00, 6.59459448e+00, 6.13513517e+00, 1.01531534e+01, + 8.21801834e+01, 1.41936935e+02, 2.58198204e+01, 5.80180168e+00, + 4.67567587e+00, 8.57657623e+00, 1.00450449e+01, 5.25225210e+00, + 3.31801796e+01, 1.45954956e+02, 7.42522507e+01, 5.52252245e+00, + 4.37837839e+00, 4.65765762e+00, 4.45945930e+00, 3.83783793e+00, + 6.25225210e+00, 6.74774790e+00, 4.81081104e+00, 4.19819832e+00, + 1.04594593e+01, 1.01801805e+01, 9.27927971e+00, 9.68468475e+00, + 1.82522526e+01, 2.00900898e+01, 1.27657661e+01, 9.63963985e+00, + 6.43243265e+00, 6.83783770e+00, 6.71171188e+00, 8.09909916e+00, + 3.33783798e+01, 5.37567558e+01, 1.91891899e+01, 7.87387371e+00, + 2.80180192e+00, 3.56756759e+00, 4.75675678e+00, 4.55855846e+00, + 2.63513508e+01, 8.47207184e+01, 3.44864883e+01, 4.63063049e+00, + 4.25000000e+00, 1.52777779e+00, 9.16666687e-01, 8.33333313e-01, + 8.05555582e-01, 1.44444442e+00, 2.61111116e+00, 4.27777767e+00, + 9.19444466e+00, 2.19444442e+00, 1.50000000e+00, 1.97222221e+00, + 2.75000000e+00, 2.55555558e+00, 4.63888884e+00, 8.91666698e+00, + 8., 1.80555558e+00, 1.02777779e+00, 2.11111116e+00, + 4.69444466e+00, 3.11111116e+00, 4.25000000e+00, 9.69444466e+00, + 5.63888884e+00, 1., 7.22222209e-01, 2.11111116e+00, + 4.52777767e+00, 4.33333349e+00, 5.80555534e+00, 6.22222233e+00, + 1.22500000e+01, 6.86111116e+00, 9.77777767e+00, 9.25000000e+00, + 3.58333325e+00, 4.77777767e+00, 1.13611107e+01, 1.58611107e+01, + 2.97222214e+01, 2.08333340e+01, 6.21111107e+01, 4.26111107e+01, + 1.63888893e+01, 1.53055553e+01, 2.96666660e+01, 4.13333321e+01, + 2.90833340e+01, 4.22500000e+01, 9.50555573e+01, 3.15277786e+01, + 2.03055553e+01, 2.47222214e+01, 4.13888893e+01, 4.43055573e+01, + 2.13333340e+01, 4.33055573e+01, 7.31944427e+01, 1.35277777e+01, + 1.72777786e+01, 2.58611107e+01, 3.58055573e+01, 3.10833340e+01, + 1.27222223e+01, 7.22222233e+00, 1.42500000e+01, 2.07777786e+01, + 2.09444447e+01, 1.13055553e+01, 1.44166670e+01, 1.62500000e+01, + 4.02222214e+01, 3.17777786e+01, 7.63333359e+01, 7.59166641e+01, + 4.62777786e+01, 4.24444427e+01, 6.46666641e+01, 5.07777786e+01, + 3.07500000e+01, 6.62777786e+01, 1.14805557e+02, 4.66388893e+01, + 2.12222214e+01, 5.80833321e+01, 1.01527779e+02, 4.56388893e+01, + 1.56944447e+01, 9.14444427e+01, 1.20972221e+02, 1.21388893e+01, + 1.15277777e+01, 7.03611145e+01, 1.02361115e+02, 2.22222214e+01, + 9.58333302e+00, 6.69444466e+00, 5.83333349e+00, 5.19444466e+00, + 9.55555534e+00, 1.62222214e+01, 1.70555553e+01, 1.40277777e+01, + 2.68888893e+01, 2.56944447e+01, 2.73888893e+01, 1.95833340e+01, + 3.00833340e+01, 6.51944427e+01, 7.63888855e+01, 4.13055573e+01, + 3.38888893e+01, 4.32222214e+01, 4.95000000e+01, 1.75000000e+01, + 2.07222214e+01, 6.96666641e+01, 1.01027779e+02, 46., + 2.08888893e+01, 5.49444427e+01, 6.28888893e+01, 1.57500000e+01, + 1.51944447e+01, 7.23055573e+01, 8.88611145e+01, 2.41111107e+01, + 1.24366198e+01, 8.98591518e+00, 6.12676048e+00, 4.19718313e+00, + 6.71830988e+00, 9.32394409e+00, 1.00985918e+01, 9.14084530e+00, + 2.05211277e+01, 1.44084511e+01, 1.40140848e+01, 1.02676058e+01, + 9.12676048e+00, 1.40704222e+01, 2.00704231e+01, 1.73802814e+01, + 1.84366188e+01, 1.63943653e+01, 1.62112675e+01, 1.14084511e+01, + 1.12957745e+01, 1.51126757e+01, 2.20845070e+01, 1.80281696e+01, + 1.42676058e+01, 1.48169012e+01, 1.29014082e+01, 9.90140820e+00, + 9.70422554e+00, 1.48450708e+01, 1.89436626e+01, 1.23239441e+01, + 2.38732395e+01, 1.53380280e+01, 1.12394361e+01, 8.53521156e+00, + 1.10845070e+01, 1.57042255e+01, 1.92253513e+01, 1.91126766e+01, + 3.38450699e+01, 2.49154930e+01, 2.26760559e+01, 1.58309860e+01, + 1.66619720e+01, 2.47323952e+01, 3.77605629e+01, 3.42676048e+01, + 3.67746468e+01, 2.70281696e+01, 2.49154930e+01, 1.94084511e+01, + 2.02957745e+01, 2.48028164e+01, 4.23380280e+01, 3.79718323e+01, + 31., 1.71126766e+01, 3.41408463e+01, 4.41267624e+01, + 1.87887325e+01, 2.01267605e+01, 3.60845070e+01, 3.42112694e+01, + 2.82957745e+01, 18., 2.27887325e+01, 1.51690140e+01, + 1.03239441e+01, 1.49859152e+01, 2.11126766e+01, 2.48169022e+01, + 3.60563393e+01, 2.38450699e+01, 6.48732376e+01, 5.37464790e+01, + 1.58591547e+01, 2.36197186e+01, 4.60845070e+01, 3.85915489e+01, + 2.89436626e+01, 1.89154930e+01, 1.06183098e+02, 1.05211266e+02, + 1.47183094e+01, 1.84366188e+01, 6.53098602e+01, 5.95211258e+01, + 2.04788723e+01, 1.11690140e+01, 1.08830986e+02, 1.14971832e+02, + 1.35915489e+01, 1.00563383e+01, 7.48309860e+01, 8.67323914e+01, + 1.49718313e+01, 1.03521128e+01, 6.14366188e+01, 5.00845070e+01, + 7.61971807e+00, 7.36619711e+00, 2.98028164e+01, 2.70422535e+01, + 1.49154930e+01, 1.15633802e+01, 9.80281677e+01, 9.84647903e+01, + 1.45492954e+01, 9.64788723e+00, 7.45070419e+01, 7.16197205e+01, + 1.28732395e+01, 9.92957783e+00, 1.01535210e+02, 8.90422516e+01, + 6.50704241e+00, 7.45070410e+00, 1.03154930e+02, 1.03492958e+02, + 1.66760559e+01, 1.15070419e+01, 6.04225349e+01, 4.85633812e+01, + 7.61971807e+00, 1.06901407e+01, 8.19014053e+01, 8.57183075e+01, + 1.19310341e+01, 4.68965530e+00, 6.37931049e-01, 4.13793087e+00, + 1.03896553e+02, 4.29310341e+01, 1.48275864e+00, 3.82758617e+00, + 9.91724167e+01, 5.25862083e+01, 7.24137902e-01, 7.41379321e-01, + 7.55172396e+00, 3.48275852e+00, 7.75862098e-01, 6.22413778e+00, + 8.56896515e+01, 5.36551743e+01, 1.01724136e+00, 7.06896544e-01, + 7.96551704e+00, 1.05000000e+01, 3.70689654e+00, 9.79310322e+00, + 2.14827595e+01, 1.38793106e+01, 1.87931037e+00, 1.39655173e+00, + 4.12068987e+00, 1.02758617e+01, 1.05172415e+01, 1.06896553e+01, + 6., 4.65517235e+00, 9.65517223e-01, 1.70689654e+00, + 1.13775864e+02, 1.28482758e+02, 3.41379309e+00, 2.60344839e+00, + 5.20689659e+01, 6.43620682e+01, 1.86206901e+00, 8.96551728e-01, + 2.09655170e+01, 3.89655190e+01, 3.18965507e+00, 5.31034470e+00, + 7.07413788e+01, 1.30620697e+02, 9.58620644e+00, 1.89655170e-01, + 2.41379309e+00, 8.17241383e+00, 2.12068963e+00, 2.74137926e+00, + 2.26724129e+01, 7.85000000e+01, 1.96896553e+01, 5.51724136e-01, + 2.25862074e+00, 9.48275852e+00, 8.63793087e+00, 6.22413778e+00, + 4.32758617e+00, 6.44827604e+00, 3.03448272e+00, 3.20689654e+00, + 6.95517273e+01, 1.28379303e+02, 9.25862026e+00, 2.75862074e+00, + 9.81034470e+00, 1.64827595e+01, 2.44827580e+00, 8.96551728e-01, + 3.12068958e+01, 1.29879303e+02, 2.58620682e+01, 3.68965507e+00, + 2.11034489e+01, 1.01844826e+02, 1.65172405e+01, 3.44827592e-01, + 7.75862098e-01, 3.03965511e+01, 1.63620682e+01, 3.77586198e+00, + 8.31034470e+00, 1.17862068e+02, 6.42931061e+01, 1.72413796e-01, + 1.72413796e-01, 3.63793111e+00, 4.25862074e+00, 1.50000000e+00, + 3.74137926e+00, 5.67241383e+00, 3.96551728e+00, 3.87931037e+00, + 2.14137936e+01, 6.03965530e+01, 1.35172415e+01, 4.51724148e+00, + 2.84482765e+00, 8.25862026e+00, 4.68965530e+00, 2.62068963e+00, + 1.46206894e+01, 1.20068962e+02, 4.48448257e+01, 3.79310346e+00, + 3.87931037e+00, 1.10517244e+01, 6.18965530e+00, 1.03448272e+00, + 2.48275852e+00, 1.11051727e+02, 9.22068939e+01, 3.15517235e+00, + 3.22413802e+00, 2.43965511e+01, 1.75000000e+01, 3.79310340e-01, + 3.10344815e-01, 2.91896553e+01, 7.57931061e+01, 3.37931037e+00, + 7.04918051e+00, 1.30983610e+01, 7.40983629e+00, 3.55737710e+00, + 1.15409832e+01, 2.82622948e+01, 1.18196726e+01, 4.75409842e+00, + 5.85245895e+00, 9.18032742e+00, 6.34426212e+00, 5.39344263e+00, + 8.18032742e+00, 1.06229506e+01, 7.67213106e+00, 5.65573788e+00, + 5.08196735e+00, 4.73770475e+00, 4.95081949e+00, 5.65573788e+00, + 5.47540998e+00, 6.06557369e+00, 6.44262314e+00, 6., + 3.11475420e+00, 3.18032789e+00, 3.59016395e+00, 4.29508209e+00, + 4.32786894e+00, 5.57377052e+00, 6.22950840e+00, 4.42622948e+00, + 1.07213116e+01, 2.82295074e+01, 1.74426231e+01, 3.14754105e+00, + 1.44098358e+01, 1.10426231e+02, 8.13934402e+01, 1.36229506e+01, + 8.63934422e+00, 3.35245895e+01, 2.06721306e+01, 4.81967211e+00, + 1.29180326e+01, 9.88360672e+01, 5.96557388e+01, 8.32786846e+00, + 6.31147528e+00, 2.05245895e+01, 1.58688526e+01, 7.45901632e+00, + 9.73770523e+00, 2.59836063e+01, 2.14918041e+01, 9.14754105e+00, + 4.59016371e+00, 7.04918051e+00, 7.50819683e+00, 6.65573788e+00, + 7.83606577e+00, 8.39344215e+00, 9.86885262e+00, 7.63934422e+00, + 1.18852463e+01, 1.17639343e+02, 8.51147537e+01, 4.52459002e+00, + 3.77049184e+00, 7.05901642e+01, 4.49344254e+01, 8.95081997e+00, + 5.93442631e+00, 9.49016418e+01, 5.49672127e+01, 1.72131145e+00, + 6.57377052e+00, 1.28213120e+02, 1.03180328e+02, 3.90163946e+00, + 4.32786894e+00, 4.09672127e+01, 2.80491810e+01, 4.86885262e+00, + 8.19672108e+00, 1.27524590e+02, 9.97377014e+01, 6.98360634e+00, + 3.39344263e+00, 2.08688526e+01, 2.02131157e+01, 6.24590158e+00, + 8.01639366e+00, 5.77049179e+01, 4.69016380e+01, 1.01475410e+01, + 3.34426236e+00, 6.86229477e+01, 4.60327873e+01, 6.13114738e+00, + 3.70491815e+00, 35., 2.38688526e+01, 4.18032789e+00, + 5.29508209e+00, 1.28114761e+02, 9.66393433e+01, 3.37704921e+00, + 3.95081973e+00, 4.17049179e+01, 2.72295074e+01, 3.24590158e+00, + 5.52459002e+00, 1.08885246e+02, 7.80655746e+01, 10., + 1.04590168e+01, 8.63606567e+01, 5.07213097e+01, 3.93442631e+00, + 2.98360658e+00, 3.04426231e+01, 2.58688526e+01, 8.88524628e+00, + 1.14590168e+01, 9.35409851e+01, 6.14918022e+01, 7.83606577e+00, + 3.06944442e+00, 5.99861107e+01, 5.21805573e+01, 5.79166651e+00, + 3.48611116e+00, 1.05583336e+02, 9.24722214e+01, 1.59722221e+00, + 3.04166675e+00, 2.50416660e+01, 5.08888893e+01, 1.35000000e+01, + 5.01388884e+00, 5.66944427e+01, 1.21888885e+02, 5.54166651e+00, + 2.12500000e+00, 1.20416670e+01, 4.77916679e+01, 2.47916660e+01, + 5.54166651e+00, 1.21944447e+01, 1.23472221e+02, 3.42916679e+01, + 1.63888884e+00, 3.31944442e+00, 4.34861107e+01, 4.26666679e+01, + 5.52777767e+00, 3.81944442e+00, 1.12180557e+02, 9.09027786e+01, + 2.66666675e+00, 1.01569443e+02, 1.15680557e+02, 3.18055558e+00, + 3.63888884e+00, 3.99861107e+01, 4.89444427e+01, 4.91666651e+00, + 2.72222233e+00, 6.72083359e+01, 1.36180557e+02, 1.10138893e+01, + 2.76388884e+00, 4.16388893e+01, 1.09902779e+02, 9.80555534e+00, + 3.58333325e+00, 1.62916660e+01, 1.34416672e+02, 4.72361107e+01, + 2.76388884e+00, 1.43750000e+01, 1.16569443e+02, 3.18194447e+01, + 3.61111116e+00, 3.54166675e+00, 1.22125000e+02, 8.88888855e+01, + 2.93055558e+00, 4.52777767e+00, 6.69027786e+01, 3.99861107e+01, + 2.27777767e+00, 4.08333349e+00, 6.93055534e+00, 1.84722221e+00, + 4.33333349e+00, 2.13333340e+01, 2.86250000e+01, 1.03888893e+01, + 3.50000000e+00, 6.29166651e+00, 2.71944447e+01, 3.80555558e+00, + 4.13888884e+00, 1.70972214e+01, 3.74583321e+01, 1.63194447e+01, + 5.26388884e+00, 3.13888884e+00, 2.91944447e+01, 6.09722233e+00, + 3.25000000e+00, 1.17500000e+01, 3.64444427e+01, 2.09861107e+01, + 4.97222233e+00, 1.44444442e+00, 8.70833302e+00, 4.27777767e+00, + 2.09722233e+00, 5.97222233e+00, 31., 2.63611107e+01, + 6.11111104e-01, 3.47222209e-01, 2.63888896e-01, 2.91666657e-01, + 7.63888896e-01, 6.88888884e+00, 1.08055553e+01, 2.56944442e+00, + 8.47222209e-01, 3.05555552e-01, 2.91666657e-01, 4.30555552e-01, + 9.44444418e-01, 5.98611116e+00, 1.55694447e+01, 4.33333349e+00, + 1.13888884e+00, 4.16666657e-01, 2.77777791e-01, 4.16666657e-01, + 7.22222209e-01, 3.81944442e+00, 1.47500000e+01, 6.56944466e+00, + 1.34722221e+00, 5.00000000e-01, 1.52777776e-01, 2.91666657e-01, + 5.00000000e-01, 1.80555558e+00, 1.04583330e+01, 7.70833349e+00, + 6.39069786e+01, 3.17906971e+01, 2.93023262e+01, 4.13488388e+01, + 2.73488369e+01, 1.09767447e+01, 2.53488369e+01, 6.61162796e+01, + 7.72093048e+01, 6.94883728e+01, 25., 1.01627903e+01, + 8.39534855e+00, 9.11627865e+00, 15., 3.63720932e+01, + 9.33255844e+01, 7.02325592e+01, 1.03953485e+01, 1.62790692e+00, + 7.67441869e-01, 1.95348835e+00, 6.48837233e+00, 3.05116272e+01, + 2.33953495e+01, 1.88837204e+01, 3.95348835e+00, 9.76744175e-01, + 3.95348847e-01, 7.20930219e-01, 3.30232549e+00, 9.86046505e+00, + 7.44651184e+01, 5.64418602e+01, 4.91860466e+01, 5.38139534e+01, + 4.87209320e+01, 4.27441864e+01, 6.15348854e+01, 8.08837204e+01, + 9.75116272e+01, 6.34186058e+01, 2.35116272e+01, 1.05813951e+01, + 1.25348835e+01, 1.99534893e+01, 3.76744194e+01, 8.47209320e+01, + 1.05511627e+02, 4.36046524e+01, 4.79069757e+00, 8.83720934e-01, + 8.37209284e-01, 3.79069757e+00, 1.87209301e+01, 8.11395340e+01, + 3.49767456e+01, 1.38837214e+01, 1.97674417e+00, 5.11627913e-01, + 1.39534891e-01, 5.58139563e-01, 5.95348835e+00, 2.23953495e+01, + 5.00465126e+01, 2.16279068e+01, 1.83023262e+01, 2.10697670e+01, + 2.85348835e+01, 4.15813942e+01, 8.58837204e+01, 8.79069748e+01, + 7.98372116e+01, 1.99767437e+01, 6.93023252e+00, 4.83720922e+00, + 8.44186020e+00, 1.69302330e+01, 6.92790680e+01, 1.09767441e+02, + 8.42558136e+01, 1.80465107e+01, 2.13953495e+00, 8.37209284e-01, + 1.13953483e+00, 6.55813932e+00, 3.68837204e+01, 1.00023254e+02, + 2.45348835e+01, 6.27906990e+00, 1.72093022e+00, 4.18604642e-01, + 3.48837197e-01, 2.32558131e+00, 9.20930195e+00, 26., + 1.46511631e+01, 2.58139539e+00, 1.41860461e+00, 2.16279078e+00, + 3.60465121e+00, 2.02790699e+01, 8.03023224e+01, 6.64883728e+01, + 3.59069786e+01, 3.27906966e+00, 6.74418628e-01, 4.41860467e-01, + 1.34883726e+00, 1.13488369e+01, 6.71162796e+01, 9.60930252e+01, + 3.26976738e+01, 8.04651165e+00, 3.06976748e+00, 1.88372087e+00, + 3.44186044e+00, 1.00232553e+01, 3.44418602e+01, 6.29302330e+01, + 8.04651165e+00, 4.30232573e+00, 2.46511626e+00, 8.60465109e-01, + 9.30232584e-01, 2.95348835e+00, 7.25581408e+00, 1.07674417e+01, + 2.88292675e+01, 1.62439022e+01, 4.80487823e+00, 3.48780489e+00, + 9.41463375e+00, 1.04390240e+01, 6.29268312e+00, 5.90243912e+00, + 5.45121956e+01, 2.06585369e+01, 5.41463423e+00, 3.80487800e+00, + 3.37804871e+01, 3.79512177e+01, 2.46341457e+01, 2.18048782e+01, + 1.70975609e+01, 1.16829271e+01, 3.51219511e+00, 9.39024353e+00, + 4.55121956e+01, 3.92682915e+01, 1.91219521e+01, 1.13170729e+01, + 7.85365868e+00, 3.53658533e+00, 1.73170733e+00, 5.14634132e+00, + 8.29268265e+00, 7.43902445e+00, 1.23902435e+01, 6.48780489e+00, + 3.81951218e+01, 1.81951218e+01, 4.53658533e+00, 4.60975599e+00, + 1.97560978e+01, 1.42439022e+01, 9.39024353e+00, 9.63414669e+00, + 1.30560974e+02, 6.05609741e+01, 5.85365868e+00, 4.12195110e+00, + 6.10731697e+01, 5.59756088e+01, 2.62195129e+01, 3.37560959e+01, + 4.98780479e+01, 2.36341457e+01, 3.92682934e+00, 1.04878044e+01, + 1.20219513e+02, 9.61219482e+01, 2.35121956e+01, 17., + 1.92195129e+01, 1.01951218e+01, 2.97560978e+00, 4.85365868e+00, + 1.48780489e+01, 1.67317066e+01, 1.56585369e+01, 9.29268265e+00, + 2.12195129e+01, 9.92682934e+00, 2.48780489e+00, 3.48780489e+00, + 2.29024391e+01, 1.83414631e+01, 1.05609760e+01, 6.39024401e+00, + 1.38707321e+02, 7.84634171e+01, 1.19512200e+00, 2.87804890e+00, + 5.75609741e+01, 3.56341476e+01, 6.12195110e+00, 1.04146338e+01, + 8.77073135e+01, 3.57317085e+01, 1.19512200e+00, 3.43902445e+00, + 1.35317078e+02, 9.84878082e+01, 3.90243912e+00, 7.26829290e+00, + 3.56829262e+01, 1.57073174e+01, 2.21951222e+00, 3.14634156e+00, + 2.77317066e+01, 1.93658543e+01, 1.18780489e+01, 9.17073154e+00, + 6.09756088e+00, 4.24390221e+00, 1.46341467e+00, 2.53658533e+00, + 1.87560978e+01, 1.24390240e+01, 5.75609779e+00, 4., + 1.29609756e+02, 5.72926826e+01, 1.73170733e+00, 2.82926822e+00, + 3.88292694e+01, 2.00243912e+01, 2.82926822e+00, 4.92682934e+00, + 1.00829269e+02, 4.01463432e+01, 8.04878056e-01, 2.07317066e+00, + 1.32756104e+02, 7.57317047e+01, 2.31707311e+00, 3.75609756e+00, + 3.92195129e+01, 1.90975609e+01, 1.58536589e+00, 2.58536577e+00, + 4.42195129e+01, 2.42926826e+01, 6.90243912e+00, 4.87804890e+00, + 2.45242710e+01, 1.28932037e+01, 4.14077682e+01, 4.18543701e+01, + 2.13689327e+01, 2.80485439e+01, 8.61456299e+01, 8.27766953e+01, + 4.57669907e+01, 3.28737869e+01, 2.97281551e+01, 3.67669907e+01, + 2.23980579e+01, 3.04174767e+01, 6.97087402e+01, 8.90582504e+01, + 56., 2.35922337e+01, 1.25436897e+01, 1.64563103e+01, + 1.29805822e+01, 1.65048542e+01, 4.11844673e+01, 7.85145645e+01, + 8.24563141e+01, 1.36504850e+01, 2.58252430e+00, 1.90291262e+00, + 3.26213598e+00, 6.10679626e+00, 1.77378635e+01, 8.19805832e+01, + 1.71650486e+01, 1.10388346e+01, 1.11456308e+01, 1.34854364e+01, + 1.93009701e+01, 6.51067963e+01, 9.56504822e+01, 5.03203888e+01, + 3.78834953e+01, 2.20485439e+01, 1.07184467e+01, 1.42621355e+01, + 1.79126205e+01, 4.34660187e+01, 9.83592224e+01, 8.77184448e+01, + 6.09029121e+01, 1.33980579e+01, 3.73786402e+00, 4.62135935e+00, + 8.13592243e+00, 1.94660187e+01, 8.91262131e+01, 1.14067963e+02, + 7.10388336e+01, 8.88349533e+00, 2.38834953e+00, 1.45631063e+00, + 2.87378645e+00, 8.54368973e+00, 4.49126205e+01, 1.06640778e+02, + 5.81553411e+00, 2.61165047e+00, 1.05825245e+00, 8.54368925e-01, + 7., 6.22135925e+01, 9.86019440e+01, 3.19514561e+01, + 1.64077663e+01, 2.68932033e+00, 8.54368925e-01, 6.69902921e-01, + 3.93203878e+00, 3.81262131e+01, 1.12320389e+02, 9.10097122e+01, + 3.01650486e+01, 3.89320397e+00, 8.73786390e-01, 7.18446612e-01, + 2.99029136e+00, 2.09514561e+01, 9.52718430e+01, 1.03184464e+02, + 2.86310673e+01, 9.07767010e+00, 4.55339813e+00, 3.29126215e+00, + 5.57281542e+00, 1.41747570e+01, 4.14368935e+01, 6.06893196e+01, + 1.12621355e+00, 3.00970882e-01, 1.06796116e-01, 1.84466019e-01, + 1.66019416e+00, 1.02621355e+01, 1.56699028e+01, 5.11650467e+00, + 2.82524276e+00, 2.42718443e-01, 9.70873795e-03, 5.82524277e-02, + 8.73786390e-01, 8.14563084e+00, 2.12718449e+01, 1.53689318e+01, + 5.01941729e+00, 1.36893201e+00, 3.30097079e-01, 4.27184463e-01, + 1.10679615e+00, 4.33980560e+00, 1.33203888e+01, 1.42912617e+01, + 3.29126215e+00, 2.21359229e+00, 1., 8.25242698e-01, + 1.76699030e+00, 3.06796122e+00, 5.27184486e+00, 5.42718458e+00, + 1.04576273e+01, 5.05423737e+01, 6.37288141e+00, 2.35593224e+00, + 2.15254230e+01, 2.45593224e+01, 8.79660988e+00, 4.18644047e+00, + 7.00338974e+01, 1.25186440e+02, 7.03389835e+00, 2.18644071e+00, + 4.41016960e+01, 8.57627106e+01, 4.72881365e+00, 3., + 2.62203388e+01, 3.06271191e+01, 4.27118635e+00, 4.91525412e+00, + 7.70338974e+01, 9.81186447e+01, 4.71186447e+00, 4.84745741e+00, + 1.39152546e+01, 1.23220339e+01, 4.22033882e+00, 4.59322023e+00, + 5.20338964e+00, 2.52542377e+00, 3.20338988e+00, 4.62711859e+00, + 3.66101694e+00, 3.45762706e+00, 1.54237282e+00, 9.79660988e+00, + 4.64237289e+01, 3.32372894e+01, 1.24576273e+01, 3.98305082e+00, + 1.12169495e+02, 9.86440659e+01, 3.55932212e+00, 7.13559341e+00, + 4.58983040e+01, 3.25593224e+01, 7.22033882e+00, 7.55932188e+00, + 1.00508476e+02, 6.33050842e+01, 2.76271176e+00, 4.42372894e+00, + 1.27576271e+02, 1.02203392e+02, 7.25423717e+00, 6.44067812e+00, + 1.75254230e+01, 1.15762711e+01, 3.42372870e+00, 2.52542377e+00, + 2.54745770e+01, 1.15084743e+01, 6.50847435e+00, 7.13559341e+00, + 2.23728824e+00, 9.49152529e-01, 2.71186447e+00, 2.53050842e+01, + 5.54915237e+01, 2.65932198e+01, 8.06779671e+00, 4.66101694e+00, + 1.07694916e+02, 2.90677967e+01, 3.16949153e+00, 1.66610165e+01, + 4.20508461e+01, 1.73389835e+01, 6.94915247e+00, 1.44576273e+01, + 1.27983047e+02, 3.82033882e+01, 2.22033906e+00, 1.40338984e+01, + 1.28016953e+02, 4.23559303e+01, 5.28813553e+00, 1.62372875e+01, + 1.64576263e+01, 1.05593224e+01, 2.50847459e+00, 3.98305082e+00, + 5.71186447e+01, 1.15932207e+01, 6.11864424e+00, 7.35593224e+00, + 9.32203412e-01, 1.10169494e+00, 5.71186447e+00, 2.95423737e+01, + 3.32542381e+01, 1.30508471e+01, 4.44067812e+00, 2.77966094e+00, + 9.44745789e+01, 5.45762730e+00, 3.62711859e+00, 2.19830513e+01, + 3.06101704e+01, 9.20339012e+00, 4.50847435e+00, 3.84067802e+01, + 1.12966103e+02, 9.38983059e+00, 2.03389835e+00, 4.63728828e+01, + 1.23796608e+02, 7.11864424e+00, 1.89830506e+00, 3.95932198e+01, + 1.37966099e+01, 6.86440659e+00, 1.59322035e+00, 8.11864376e+00, + 3.98644066e+01, 3.89830518e+00, 3.40677977e+00, 7.54237270e+00, + 9.10487823e+01, 1.17560978e+01, 3.26829267e+00, 1.16219511e+01, + 2.02682934e+01, 6.68292665e+00, 1.23780489e+01, 7.68170700e+01, + 3.67926826e+01, 1.90975609e+01, 1.77804871e+01, 2.25975609e+01, + 2.19634151e+01, 2.00975609e+01, 3.30609741e+01, 5.14634132e+01, + 1.14390240e+01, 1.88170738e+01, 1.79634151e+01, 1.90487804e+01, + 3.95487823e+01, 5.79024391e+01, 2.86707325e+01, 1.18902435e+01, + 1.11341467e+01, 1.26829271e+01, 4.35365868e+00, 1.11951218e+01, + 6.76097565e+01, 7.32804871e+01, 1.00975609e+01, 2.96341467e+00, + 1.10426826e+02, 4.09390259e+01, 7.71951199e+00, 1.16097565e+01, + 2.76829262e+01, 1.20487804e+01, 5.06097555e+00, 4.05365868e+01, + 3.94878044e+01, 2.61097565e+01, 1.99756088e+01, 2.53048782e+01, + 2.68170738e+01, 2.04390240e+01, 1.48902435e+01, 2.26585369e+01, + 1.66951218e+01, 1.67804871e+01, 1.63048782e+01, 2.06463413e+01, + 3.61097565e+01, 3.30975609e+01, 1.86951218e+01, 1.49756098e+01, + 13., 7.91463423e+00, 4.50000000e+00, 3.00609760e+01, + 1.01121948e+02, 5.28658524e+01, 7.98780489e+00, 6.80487823e+00, + 1.06719513e+02, 8.77560959e+01, 6.79268312e+00, 5.28048801e+00, + 2.21463413e+01, 2.44024391e+01, 5.29268312e+00, 1.29634142e+01, + 4.86341476e+01, 5.13170738e+01, 1.93170738e+01, 1.18902435e+01, + 1.93902435e+01, 3.15000000e+01, 2.25365849e+01, 2.19146347e+01, + 1.94756088e+01, 1.67439022e+01, 2.50243912e+01, 4.70487823e+01, + 3.78414650e+01, 2.91097565e+01, 2.97804871e+01, 2.58902435e+01, + 1.28658533e+01, 4.58536577e+00, 1.09756098e+01, 8.48536606e+01, + 1.04463417e+02, 2.62073174e+01, 6.68292665e+00, 1.15731707e+01, + 5.09146347e+01, 9.46707306e+01, 2.05853653e+01, 2.24390244e+00, + 1.27804880e+01, 3.15975609e+01, 8.75609779e+00, 4.87804890e+00, + 3.06707325e+01, 9.43170700e+01, 8.14512177e+01, 1.64390240e+01, + 1.09878044e+01, 2.84390240e+01, 1.69878044e+01, 1.17560978e+01, + 1.09390240e+01, 1.93048782e+01, 8.44146347e+01, 9.39146347e+01, + 3.01829262e+01, 1.40609760e+01, 1.73292675e+01, 1.72804871e+01, + 6.32926846e+00, 2.63414645e+00, 2.85487804e+01, 1.02597565e+02, + 5.16951218e+01, 6.40243912e+00, 7.26829290e+00, 1.19756098e+01, + 6.88235283e+00, 3.97058821e+00, 1.51029415e+01, 1.22794113e+01, + 3.38235283e+00, 1.48529410e+00, 1.54705887e+01, 8.17647076e+00, + 1.17647057e+01, 8.23529434e+00, 1.93382359e+01, 1.19411764e+01, + 3.05882359e+00, 3.63235283e+00, 4.88970604e+01, 1.31176472e+01, + 3.58823538e+00, 1.26911764e+01, 1.96470585e+01, 8.22058868e+00, + 2.47058821e+00, 1.00882349e+01, 4.95294113e+01, 4.44117641e+00, + 4.97058821e+00, 1.34558821e+01, 1.57794113e+01, 5.02941179e+00, + 1.69117641e+00, 7.25000000e+00, 1.62794113e+01, 4.02941179e+00, + 6.85294104e+00, 3.38235283e+00, 7.05000000e+01, 4.93529396e+01, + 3.88235283e+00, 8.69117641e+00, 1.18147057e+02, 8.99117661e+01, + 9.91176510e+00, 1.35588236e+01, 1.23617645e+02, 4.64117661e+01, + 3.75000000e+00, 1.52352943e+01, 1.27029411e+02, 5.06617661e+01, + 2.44117641e+00, 4.37352943e+01, 1.23926468e+02, 1.34117651e+01, + 3.02941179e+00, 5.04558830e+01, 1.28426468e+02, 1.08382349e+01, + 3.63235283e+00, 5.34411774e+01, 7.05588226e+01, 5.75000000e+00, + 2.38235283e+00, 8.72058792e+01, 1.12044121e+02, 3.79411769e+00, + 5.04411745e+00, 3.27941179e+00, 9.71470566e+01, 9.31911774e+01, + 3.58823538e+00, 9.89705849e+00, 3.92647057e+01, 3.32647057e+01, + 6.91176462e+00, 9.35294151e+00, 1.04808823e+02, 3.87058830e+01, + 3.42647052e+00, 2.45588226e+01, 4.13823547e+01, 1.91323528e+01, + 4.50000000e+00, 4.19411774e+01, 1.06102943e+02, 7.95588255e+00, + 5.85294104e+00, 3.40441170e+01, 3.58382339e+01, 1.05147057e+01, + 3.72058821e+00, 9.83382339e+01, 9.51176453e+01, 3.32352948e+00, + 5.04411745e+00, 4.05735283e+01, 3.27058830e+01, 5.36764717e+00, + 1.05147057e+01, 2.85294127e+00, 3.11764717e+00, 6.54411745e+00, + 1.79411769e+00, 7.52941179e+00, 2.67058830e+01, 2.67058830e+01, + 7.29411745e+00, 1.32352936e+00, 9.26470578e-01, 1.97058821e+00, + 3.70588231e+00, 2.48823528e+01, 4.31617661e+01, 3.01764698e+01, + 3.35294127e+00, 1.05882359e+00, 6.47058845e-01, 2., + 9.67647076e+00, 4.06470604e+01, 4.28088226e+01, 1.75441170e+01, + 3.58823538e+00, 9.04411793e+00, 2.85294127e+00, 1.85294116e+00, + 1.20294113e+01, 3.03823528e+01, 2.52352943e+01, 7.27941179e+00, + 4.85789490e+01, 2.56140351e+00, 5.56140327e+00, 1.94912281e+01, + 1.72982464e+01, 4.01754379e+00, 2.40350866e+00, 3.60175438e+01, + 8.24561386e+01, 2.29824567e+00, 2.70175433e+00, 9.63508759e+01, + 9.33333359e+01, 5.75438595e+00, 5.61403513e+00, 9.50526352e+01, + 1.43684206e+01, 4.08771944e+00, 6.31578970e+00, 6.75789490e+01, + 4.01052628e+01, 9.26315784e+00, 2.17192974e+01, 3.62280693e+01, + 1.15263157e+01, 3.98245621e+00, 4.19298267e+00, 3.84210515e+00, + 1.89473689e+00, 7.63157892e+00, 3.38421059e+01, 3.33333321e+01, + 1.14684212e+02, 5.84210539e+00, 4.52631569e+00, 1.94561405e+01, + 3.95263176e+01, 6.26315784e+00, 2.15789485e+00, 4.13859634e+01, + 9.87368393e+01, 5.21052647e+00, 2.28070164e+00, 7.48947372e+01, + 1.24280701e+02, 9.33333302e+00, 5.01754379e+00, 5.83508759e+01, + 3.01578941e+01, 8.70175457e+00, 4.47368431e+00, 1.77017536e+01, + 2.40526314e+01, 5.08771944e+00, 2.27543869e+01, 61., + 2.82456131e+01, 5.91228056e+00, 3.66666675e+00, 2.36842108e+00, + 2.47368431e+00, 6.40350866e+00, 3.38947372e+01, 7.34035110e+01, + 1.23719299e+02, 2.25964909e+01, 2.57894731e+00, 9.19298267e+00, + 4.63333321e+01, 1.26842108e+01, 3.29824567e+00, 1.42105265e+01, + 1.00614037e+02, 1.82456131e+01, 2.17543864e+00, 1.98771935e+01, + 1.24701752e+02, 3.92807007e+01, 4.26315784e+00, 2.62280693e+01, + 5.25964928e+01, 2.01052628e+01, 3.87719297e+00, 3.71929836e+00, + 1.41929827e+01, 4.98245621e+00, 8.73684216e+00, 5.27719307e+01, + 5.65087738e+01, 2.30701752e+01, 6.85964918e+00, 4.33333349e+00, + 3.94736838e+00, 5.94736862e+00, 1.33684206e+01, 5.13333321e+01, + 9.58070145e+01, 4.42807007e+01, 1.96491230e+00, 3.82456136e+00, + 2.04736843e+01, 1.37719297e+01, 3.77192974e+00, 3.07017541e+00, + 9.49824524e+01, 5.77192993e+01, 2.57894731e+00, 3.75438595e+00, + 1.12122810e+02, 8.05789490e+01, 3.08771920e+00, 8., + 4.22631569e+01, 2.98596497e+01, 8.52631569e+00, 3.89473677e+00, + 2.17368412e+01, 1.93684216e+01, 2.33333325e+00, 1.61754379e+01, + 3.90350876e+01, 3.90350876e+01, 1.23157892e+01, 3.75438595e+00, + 2.94736838e+00, 2.08771920e+00, 3.26315784e+00, 1.21228065e+01, + 6.40909100e+00, 2.04545450e+00, 2.10227280e+01, 1.97045460e+01, + 2.45454550e+00, 3.77272725e+00, 5.37954559e+01, 9.73636398e+01, + 4.63636351e+00, 4.47727251e+00, 3.32272720e+01, 1.46590910e+01, + 1.72727275e+00, 4.31818199e+00, 1.16795456e+02, 1.00636360e+02, + 3.79545450e+00, 1.50227270e+01, 3.82272720e+01, 6.20454550e+00, + 9.31818187e-01, 2.01590900e+01, 1.29045456e+02, 4.40227280e+01, + 6.22727251e+00, 4.36818199e+01, 2.16590900e+01, 7.72727251e-01, + 7.27272749e-01, 4.78409081e+01, 102., 1.25909090e+01, + 1.52045450e+01, 1.65909088e+00, 9.77272701e+00, 1.33181820e+01, + 7.63636351e+00, 4.84090900e+00, 7.55227280e+01, 1.26954544e+02, + 1.11818180e+01, 5.79545450e+00, 2.59090900e+01, 1.77500000e+01, + 4.54545450e+00, 1.05909090e+01, 1.22840912e+02, 1.07863640e+02, + 1.32727270e+01, 9., 2.60909100e+01, 8.52272701e+00, + 3.02272725e+00, 2.60454540e+01, 1.27068184e+02, 6.71136398e+01, + 1.08863640e+01, 1.32272730e+01, 1.10454550e+01, 1.54545450e+00, + 2.31818175e+00, 6.37272720e+01, 1.19295456e+02, 3.21136360e+01, + 3.57500000e+01, 6.36363649e+00, 6.18181801e+00, 8.84090900e+00, + 1.60681820e+01, 1.17045450e+01, 3.33863640e+01, 9.26818161e+01, + 3.69545441e+01, 1.25909090e+01, 1.03636360e+01, 9.68181801e+00, + 1.03636360e+01, 1.19772730e+01, 5.33863640e+01, 6.79772720e+01, + 3.40454559e+01, 9.54545498e+00, 7.65909100e+00, 5.31818199e+00, + 4.88636351e+00, 1.84772720e+01, 6.65681839e+01, 6.35681801e+01, + 1.78636360e+01, 7.38636351e+00, 3.97727275e+00, 3.93181825e+00, + 7.31818199e+00, 3.17727280e+01, 5.65909081e+01, 3.42727280e+01, + 4.12272720e+01, 1.51363640e+01, 3.86363626e+00, 5.22727251e+00, + 1.54090910e+01, 1.43409090e+01, 7.88636351e+00, 2.48863640e+01, + 4.66136360e+01, 1.48409090e+01, 4.20454550e+00, 3.15909100e+00, + 6.61363649e+00, 1.10454550e+01, 1.80227280e+01, 4.11363640e+01, + 4.06363640e+01, 1.06590910e+01, 4.97727251e+00, 6.56818199e+00, + 6., 1.28636360e+01, 2.78636360e+01, 4.57727280e+01, + 1.45227270e+01, 5.79545450e+00, 4.38636351e+00, 8.04545498e+00, + 9.40909100e+00, 1.65454540e+01, 2.27954540e+01, 2.33863640e+01, + 1.43855419e+01, 9.06746979e+01, 4.15060234e+01, 3.19277120e+00, + 3.45783138e+00, 6.45783138e+00, 4.13253021e+00, 1.92771089e+00, + 5.78674698e+01, 1.21421684e+02, 2.46144581e+01, 4.98795176e+00, + 4.74698782e+00, 7.12048197e+00, 4.89156628e+00, 6.04819298e+00, + 4.46626511e+01, 5.59036140e+01, 1.50481930e+01, 6.01204824e+00, + 4.37349415e+00, 5.03614473e+00, 5.43373489e+00, 1.44457827e+01, + 1.16987953e+01, 1.16265059e+01, 6.75903606e+00, 3.60240960e+00, + 3.77108431e+00, 3.21686745e+00, 4.51807213e+00, 5.97590351e+00, + 1.88915653e+01, 3.69638557e+01, 1.22771082e+01, 6.75903606e+00, + 1.66626511e+01, 2.71325302e+01, 1.34457827e+01, 6.22891569e+00, + 1.35240967e+02, 1.32855423e+02, 9.01204777e+00, 5.37349415e+00, + 9.03614426e+00, 1.11686745e+01, 5.01204824e+00, 6.79518080e+00, + 1.29566269e+02, 1.10228912e+02, 1.47349396e+01, 6.65060234e+00, + 8.28915691e+00, 7.72289133e+00, 6.55421686e+00, 2.02891560e+01, + 2.30481930e+01, 2.44939766e+01, 9.31325340e+00, 4.09638548e+00, + 3.40963864e+00, 3.55421686e+00, 5.09638548e+00, 1.15783129e+01, + 2.13734932e+01, 1.45301208e+01, 9.07228947e+00, 1.37349396e+01, + 5.11927719e+01, 4.00722885e+01, 1.40843372e+01, 1.15542173e+01, + 1.39433731e+02, 5.26144562e+01, 5.03614473e+00, 6.38554239e+00, + 19., 1.31927710e+01, 4.83132553e+00, 2.61325302e+01, + 1.40951813e+02, 6.37590370e+01, 8.68674660e+00, 7.14457846e+00, + 1.16987953e+01, 6.31325293e+00, 5.91566277e+00, 3.93975906e+01, + 3.28915672e+01, 2.43734932e+01, 7.65060234e+00, 3.39759040e+00, + 3.75903606e+00, 3.10843372e+00, 5.60240984e+00, 1.50843372e+01, + 1.76626511e+01, 6.37349415e+00, 9.26506042e+00, 2.48072281e+01, + 4.73493958e+01, 1.62289162e+01, 1.18433733e+01, 2.31084347e+01, + 1.25144577e+02, 7.87951803e+00, 3.73493981e+00, 9.80722904e+00, + 1.82771091e+01, 6.67469883e+00, 5.96385527e+00, 9.78072281e+01, + 1.24867470e+02, 2.19397583e+01, 8., 8.42168713e+00, + 1.06626511e+01, 5.10843372e+00, 9.59036160e+00, 7.56506042e+01, + 2.81084347e+01, 1.52530117e+01, 6.53012037e+00, 2.97590351e+00, + 4.12048197e+00, 3.46987963e+00, 7.40963840e+00, 1.75421696e+01, + 1.57894735e+01, 2.50000000e+00, 1.11842108e+01, 4.77894745e+01, + 1.16842108e+01, 3.44736838e+00, 1.26052628e+01, 5.35789490e+01, + 1.87631588e+01, 4.34210539e+00, 1.48947372e+01, 3.54736824e+01, + 9.18421078e+00, 5.86842108e+00, 3.35000000e+01, 8.58157883e+01, + 1.47894735e+01, 9.68421078e+00, 1.25526314e+01, 1.51578951e+01, + 1.21578951e+01, 1.83947372e+01, 4.63684196e+01, 4.47894745e+01, + 7.07894754e+00, 10., 7.84210539e+00, 8.26315784e+00, + 1.93157902e+01, 3.30789490e+01, 2.36578941e+01, 7.68421030e+00, + 6.74210510e+01, 9.21052647e+00, 8.34210491e+00, 4.23684196e+01, + 2.43157902e+01, 5.55263138e+00, 2.65789471e+01, 1.04578949e+02, + 2.78421059e+01, 1.03421049e+01, 7.97368431e+00, 1.86842098e+01, + 2.11578941e+01, 3.37631569e+01, 5.90789490e+01, 7.63421021e+01, + 1.64736843e+01, 1.05526314e+01, 1.33421049e+01, 3.62105255e+01, + 3.81052628e+01, 2.91052628e+01, 2.89473686e+01, 3.44210510e+01, + 1.57105265e+01, 7.68421030e+00, 1.06315794e+01, 4.66578941e+01, + 4.15263176e+01, 1.96052628e+01, 1.03157892e+01, 2.58421059e+01, + 1.09342102e+02, 3.24736824e+01, 1.06842108e+01, 2.40789471e+01, + 3.11052628e+01, 1.75000000e+01, 2.05526314e+01, 8.57631607e+01, + 3.44473686e+01, 2.69473686e+01, 2.99736843e+01, 3.58684196e+01, + 3.56842117e+01, 3.68421059e+01, 3.70263176e+01, 3.14473686e+01, + 1.06578951e+01, 6.63157892e+00, 2.81052628e+01, 8.88157883e+01, + 50., 2.06052628e+01, 3.45789490e+01, 45., 1.85789471e+01, + 3.39473677e+00, 1.81052628e+01, 9.23157883e+01, 2.89473686e+01, + 4.44736862e+00, 1.46315794e+01, 5.45000000e+01, 5.68684196e+01, + 2.25000000e+01, 46., 7.35526352e+01, 1.94473686e+01, + 2.19736843e+01, 3.50789490e+01, 7.77894745e+01, 1.35263157e+01, + 2.48684216e+01, 9.79473648e+01, 8.81842117e+01, 1.55263157e+01, + 1.43947372e+01, 4.05526314e+01, 3.29736824e+01, 1.22368422e+01, + 7., 6.72368393e+01, 1.10236839e+02, 1.50789471e+01, + 5.23684216e+00, 3.51315804e+01, 6.28947372e+01, 1.20789471e+01, + 4.47368431e+00, 2.09210529e+01, 5.03947372e+01, 6.39473677e+00, + 3.55263162e+00, 1.74210529e+01, 4.33421059e+01, 4.11290312e+00, + 3.45161295e+00, 3.80645156e+00, 1.61451607e+01, 2.63548393e+01, + 6.08064508e+00, 2.95161295e+00, 3.03225803e+00, 8.08064556e+00, + 2.82258058e+00, 3.61290312e+00, 8.30806427e+01, 1.16290321e+02, + 7.29032278e+00, 2.25806451e+00, 4.46774197e+00, 2.59193554e+01, + 1.74193549e+00, 2.16129041e+00, 8.99032288e+01, 1.04435486e+02, + 2.06451607e+00, 2., 2.19193554e+01, 5.33709679e+01, + 1.54838705e+00, 1.09677422e+00, 1.13225803e+01, 8.56451607e+00, + 8.22580636e-01, 2.59677410e+00, 7.15806427e+01, 3.95161295e+00, + 4.62903214e+00, 4.54838705e+00, 1.78709679e+01, 4.50806465e+01, + 1.29516125e+01, 3.59677410e+00, 3.19354844e+00, 1.49032259e+01, + 3.67741942e+00, 2.77419353e+00, 6.11290321e+01, 1.33870972e+02, + 2.16451607e+01, 2.74193549e+00, 5.62903214e+00, 6.43064499e+01, + 5.33870983e+00, 1., 3.86612892e+01, 112., 1.13709679e+01, + 2.74193549e+00, 2.79838715e+01, 1.15403229e+02, 7.25806475e+00, + 1.11290324e+00, 2.95161295e+00, 6.90322590e+00, 2.24193549e+00, + 2.03225803e+00, 5.81129036e+01, 3., 5.09677410e+00, + 5.14516115e+00, 1.21451616e+01, 4.75322571e+01, 1.90645161e+01, + 4.12903214e+00, 2.38709688e+00, 1.33548384e+01, 5.85483885e+00, + 2.38709688e+00, 1.90161285e+01, 1.32516129e+02, 5.95000000e+01, + 3.77419353e+00, 3.46774197e+00, 6.88064499e+01, 1.65000000e+01, + 6.61290348e-01, 6.12903214e+00, 1.07693550e+02, 4.88225822e+01, + 2.64516139e+00, 1.18387098e+01, 1.19225807e+02, 3.85483856e+01, + 1.88709676e+00, 1.82258070e+00, 6.59677410e+00, 4.19354820e+00, + 1.51612902e+00, 1.34354839e+01, 3.46774197e+00, 4.25806475e+00, + 3.24193549e+00, 6.17741919e+00, 2.95161285e+01, 2.16290321e+01, + 5.06451607e+00, 2.61290312e+00, 5.96774197e+00, 5.38709688e+00, + 2.41935492e+00, 8.06451607e+00, 1.13258064e+02, 8.14838715e+01, + 5.41935492e+00, 2.48387098e+00, 3.18548393e+01, 2.02096767e+01, + 9.67741907e-01, 1.59677422e+00, 9.20322571e+01, 9.81774216e+01, + 4., 4.24193525e+00, 6.16935501e+01, 6.55967712e+01, + 3.51612902e+00, 9.51612890e-01, 1.05645161e+01, 1.64032249e+01, + 1.46774197e+00, 2.37096763e+00, 2.41132069e+01, 9., + 6.62264156e+00, 7.64150953e+00, 6.67924547e+00, 1.14716978e+01, + 3.44339638e+01, 5.54150925e+01, 1.28113203e+01, 6.56603765e+00, + 5.69811344e+00, 6.60377359e+00, 9.37735844e+00, 3.14339619e+01, + 6.12452812e+01, 5.05283012e+01, 8.84905624e+00, 6.33962250e+00, + 3.26415086e+00, 3.09433961e+00, 2.30188675e+01, 7.64905624e+01, + 5.98301888e+01, 2.52830181e+01, 1.53396225e+01, 7.13207531e+00, + 6.98113203e-01, 1.83018863e+00, 7.72641525e+01, 1.12679245e+02, + 2.02641506e+01, 5.33962250e+00, 3.48113213e+01, 1.26792450e+01, + 8.22641468e+00, 8.69811344e+00, 1.30754719e+01, 1.56226416e+01, + 3.53584900e+01, 6.21509438e+01, 2.20377350e+01, 1.66226406e+01, + 1.51886797e+01, 1.60566044e+01, 1.83207550e+01, 2.61320763e+01, + 4.18490562e+01, 4.28301888e+01, 1.80943394e+01, 1.11698112e+01, + 7.79245281e+00, 1.22641506e+01, 3.87169800e+01, 4.09811325e+01, + 31., 2.45849056e+01, 1.55471697e+01, 3.09433961e+00, + 1.18867922e+00, 2.13018875e+01, 1.13207550e+02, 7.43773575e+01, + 1.17924528e+01, 1.37924528e+01, 3.49056587e+01, 3.67169800e+01, + 1.64339619e+01, 9.39622688e+00, 1.43018866e+01, 2.00188675e+01, + 2.94528294e+01, 3.06037731e+01, 1.96415100e+01, 2.10377350e+01, + 2.31320763e+01, 1.90943394e+01, 1.68490562e+01, 2.70377350e+01, + 4.31698112e+01, 3.36981125e+01, 1.53773584e+01, 6.47169828e+00, + 1.80377350e+01, 5.23962250e+01, 3.95849075e+01, 2.13207550e+01, + 2.89811325e+01, 3.34716988e+01, 1.89056606e+01, 1.67924523e+00, + 6.18867922e+00, 1.06849060e+02, 1.16150940e+02, 2.43584900e+01, + 1.55471697e+01, 3.89811325e+01, 1.33584909e+01, 7.81698151e+01, + 8.20943375e+01, 6.54716969e+00, 3.52830195e+00, 1.27735853e+01, + 2.52452831e+01, 1.22075472e+01, 8.28301907e+00, 2.59811325e+01, + 1.02018867e+02, 4.55283012e+01, 6.26415110e+00, 8.52830219e+00, + 2.76981125e+01, 2.15849056e+01, 7.09433985e+00, 4.75471687e+00, + 8.96415100e+01, 1.20207550e+02, 1.80377350e+01, 4.58490562e+00, + 2.33018875e+01, 3.88679237e+01, 1.88867931e+01, 1.83018863e+00, + 2.79056606e+01, 1.19452827e+02, 4.86603775e+01, 4.35849047e+00, + 2.18679237e+01, 8.64716949e+01, 1.01612902e+00, 2.61290312e+00, + 1.85806446e+01, 4.23225822e+01, 2.17903233e+01, 5.51612902e+00, + 3.69354844e+00, 2.37096763e+00, 5.05967751e+01, 1.75806451e+00, + 1.05645161e+01, 3.61451607e+01, 1.95161285e+01, 5.20967722e+00, + 6.16129017e+00, 7.94838715e+01, 1.02935486e+02, 3.77419353e+00, + 3.12903237e+00, 1.01919357e+02, 9.55161285e+01, 2.88709688e+00, + 4.83870983e+00, 1.00258064e+02, 1.47741938e+01, 5.01612902e+00, + 1.80645156e+00, 4.01451607e+01, 4.57258072e+01, 1.80645156e+00, + 3.72580647e+00, 1.54516125e+01, 4.30645180e+00, 2.95161295e+00, + 2.26290321e+01, 3.65967751e+01, 1.35322580e+01, 5.80645180e+00, + 2.41451607e+01, 6.93709641e+01, 5.05806465e+01, 1.72580647e+00, + 1.26774197e+01, 1.19129036e+02, 2.61451607e+01, 3.12903237e+00, + 2.18064518e+01, 1.37112900e+02, 3.18870964e+01, 3.32258058e+00, + 5.46774197e+00, 1.34548386e+02, 7.75806427e+01, 2.17741942e+00, + 7.20967722e+00, 8.22419357e+01, 2.11935482e+01, 5.19354820e+00, + 1.70967746e+00, 1.32258062e+01, 7.88709688e+00, 1.62903225e+00, + 6.85483885e+00, 3.19838715e+01, 4.35483885e+00, 2.61290312e+00, + 5.83709679e+01, 1.03806450e+02, 4.09677410e+00, 3.12903237e+00, + 8.73387070e+01, 1.30112900e+02, 1.13225803e+01, 2.08064508e+00, + 4.30322571e+01, 1.37741928e+02, 1.41290321e+01, 2.38709688e+00, + 2.66451607e+01, 1.06403229e+02, 1.89838715e+01, 3.43548393e+00, + 4.53225803e+00, 6.86451645e+01, 1.04516125e+01, 3.14516139e+00, + 1.64838715e+01, 4.65806465e+01, 1.71612911e+01, 3.67741942e+00, + 1.61290324e+00, 1.33870971e+00, 1.51612902e+00, 2.51612902e+00, + 9.14516163e+00, 3.15483875e+01, 3.04838705e+00, 1.67741930e+00, + 5.77419357e+01, 8.22096786e+01, 2.30645156e+00, 3.77419353e+00, + 2.21935482e+01, 2.40645161e+01, 9.40322590e+00, 2.20967746e+00, + 1.07419357e+01, 3.35000000e+01, 2.22580647e+00, 3.85483861e+00, + 2.20322590e+01, 2.98387089e+01, 1.33709679e+01, 2.70967746e+00, + 1.30645156e+00, 1.59677422e+00, 1.56451619e+00, 3.46774197e+00, + 1.59354839e+01, 3.24193535e+01, 8.62903214e+00, 2.67741942e+00, + 2.12903237e+00, 1.72580647e+00, 1.98387098e+00, 2.88709688e+00, + 7.61290312e+00, 1.71290321e+01, 5.65789461e-01, 5.78947365e-01, + 9.47368443e-01, 2.13157892e+00, 9.38157940e+00, 6.93421030e+00, + 2.14473677e+00, 7.36842096e-01, 1.49078951e+01, 1.13289471e+01, + 3.98684216e+00, 9.60526276e+00, 3.27105255e+01, 2.58815784e+01, + 7.32894754e+00, 3.10526323e+00, 1.43434204e+02, 1.27697365e+02, + 3.84210515e+00, 6.34210539e+00, 7.24605255e+01, 6.14473686e+01, + 5.55263138e+00, 5.25000000e+00, 7.10657883e+01, 7.00131607e+01, + 5.72368431e+00, 3.97368431e+00, 1.23407898e+02, 1.26776314e+02, + 3.69736838e+00, 6.13157892e+00, 6.71052635e-01, 5.92105269e-01, + 1.03947365e+00, 1.90789473e+00, 9.10526276e+00, 11., + 3.44736838e+00, 8.68421078e-01, 3.35526323e+00, 3.72368431e+00, + 3.89473677e+00, 8.61842060e+00, 3.81578941e+01, 4.70789490e+01, + 1.51578951e+01, 3.39473677e+00, 9.39868393e+01, 1.27973686e+02, + 6.11842108e+00, 8.31578922e+00, 3.82236824e+01, 5.07631569e+01, + 1.48947372e+01, 5.84210539e+00, 9.33552628e+01, 1.43105270e+02, + 1.10526314e+01, 3.67105269e+00, 8.67500000e+01, 1.42355270e+02, + 1.07894735e+01, 3.61842108e+00, 6.31578922e-01, 5.26315808e-01, + 1., 1.85526311e+00, 6.92105246e+00, 1.14342108e+01, + 3.72368431e+00, 1.11842108e+00, 2.36842108e+00, 2.59210515e+00, + 3.71052623e+00, 6.60526323e+00, 2.92105255e+01, 5.13815804e+01, + 2.07236843e+01, 4.60526323e+00, 1.17105265e+01, 2.74736843e+01, + 5.63157892e+00, 7.35526323e+00, 3.39868431e+01, 6.57500000e+01, + 2.92894745e+01, 6.15789461e+00, 3.44736824e+01, 1.40750000e+02, + 2.70789471e+01, 6.06578970e+00, 2.32631588e+01, 74., + 1.91447372e+01, 4.05263138e+00, 7.23684192e-01, 7.76315808e-01, + 1.21052635e+00, 1.14473689e+00, 3.21052623e+00, 7.10526323e+00, + 2.92105269e+00, 1.14473689e+00, 2.82894731e+00, 2.96052623e+00, + 4.27631569e+00, 5.50000000e+00, 1.44078951e+01, 3.44868431e+01, + 1.34736843e+01, 5.07894754e+00, 2.31578946e+00, 2.43421054e+00, + 3.43421054e+00, 5.15789461e+00, 1.87105255e+01, 4.90921059e+01, + 2.24210529e+01, 5.84210539e+00, 2.61842108e+00, 2.06052628e+01, + 5.77631569e+00, 3.27631569e+00, 1.51315794e+01, 4.32894745e+01, + 2.17631588e+01, 4.09210539e+00, 9.97586212e+01, 5.41206894e+01, + 1.60344827e+00, 6.46551704e+00, 2.78275871e+01, 1.91206894e+01, + 7.05172396e+00, 8.22413826e+00, 8.26206894e+01, 3.73448257e+01, + 3.10344839e+00, 5.50000000e+00, 1.07327583e+02, 6.23793106e+01, + 5.87931013e+00, 9.06896591e+00, 1.86724129e+01, 1.26379309e+01, + 4.13793087e+00, 2.20689654e+00, 2.22413788e+01, 7.22413778e+00, + 4.32758617e+00, 7.93103456e+00, 5.05172396e+00, 2.03448272e+00, + 5.68965495e-01, 1.20689653e-01, 6.89655170e-02, 1.37931034e-01, + 2.41379306e-01, 1.20689654e+00, 1.20258621e+02, 1.69655170e+01, + 2.39655161e+00, 1.42931032e+01, 3.41206894e+01, 1.50517244e+01, + 9.75862026e+00, 2.92068958e+01, 1.20741379e+02, 2.07413788e+01, + 2.86206889e+00, 3.17068958e+01, 1.32758621e+02, 3.37413788e+01, + 7.94827604e+00, 3.50862083e+01, 2.62931042e+01, 1.30689659e+01, + 3.89655161e+00, 9.37931061e+00, 5.07931023e+01, 7.87931013e+00, + 4.27586222e+00, 1.25000000e+01, 6.70689678e+00, 2.01724148e+00, + 5.17241359e-01, 1.72413796e-01, 1.72413796e-01, 3.79310340e-01, + 4.31034476e-01, 2.37931037e+00, 1.21379311e+02, 4.41379309e+00, + 3.81034493e+00, 3.06551723e+01, 4.05172424e+01, 8.68965530e+00, + 9.55172443e+00, 8.49137955e+01, 1.08775864e+02, 8.10344791e+00, + 3.12068963e+00, 9.81034470e+01, 1.36500000e+02, 8.03448296e+00, + 4.01724148e+00, 6.61034470e+01, 3.17241383e+01, 1.07413797e+01, + 3.15517235e+00, 15., 3.34137917e+01, 3.86206889e+00, + 4.68965530e+00, 1.80517235e+01, 6.05172396e+00, 1.51724136e+00, + 3.10344815e-01, 2.93103456e-01, 2.41379306e-01, 3.79310340e-01, + 6.89655185e-01, 3.36206889e+00, 8.17586212e+01, 2.13793111e+00, + 5., 7.74137955e+01, 4.53275871e+01, 4.06896544e+00, + 8.03448296e+00, 1.19637932e+02, 4.16034470e+01, 6.55172396e+00, + 3.37931037e+00, 1.12879311e+02, 1.02017242e+02, 3.06896544e+00, + 3.89655161e+00, 4.36206894e+01, 2.45517235e+01, 6.84482765e+00, + 2.05172420e+00, 4.86206913e+00, 5.51724148e+00, 1.86206901e+00, + 4.77586222e+00, 2.07931042e+01, 3.63793111e+00, 8.96551728e-01, + 1.72413796e-01, 1.20689653e-01, 1.37931034e-01, 1.37931034e-01, + 5.34482777e-01, 2.58620691e+00, 1.62083340e+01, 5.40625000e+01, + 8.97916698e+00, 2.58333325e+00, 2.91875000e+01, 1.21937500e+02, + 8.27083302e+00, 1.93750000e+00, 1.95625000e+01, 3.00208340e+01, + 2.14583340e+01, 5.47916651e+00, 5.52083349e+00, 4.01250000e+01, + 9.08333302e+00, 4.37500000e+00, 1.67500000e+01, 4.11041679e+01, + 3.51666679e+01, 9.64583302e+00, 1.35416663e+00, 1.77083337e+00, + 2.66666675e+00, 3.31250000e+00, 5.12500000e+00, 2.79375000e+01, + 3.84375000e+01, 1.75833340e+01, 3.29166675e+00, 1.75000000e+00, + 2.52083325e+00, 2.20833325e+00, 1.06458330e+01, 1.27770836e+02, + 3.75416679e+01, 1.85416663e+00, 1.00833330e+01, 1.01770836e+02, + 2.26458340e+01, 1.54166663e+00, 7.79166651e+00, 9.56458359e+01, + 5.43541679e+01, 2.68750000e+00, 4.08333349e+00, 1.26583336e+02, + 1.06333336e+02, 3.16666675e+00, 8.93750000e+00, 3.33333321e+01, + 3.52916679e+01, 5.79166651e+00, 2.77083325e+00, 7.94166641e+01, + 1.13666664e+02, 4.58333349e+00, 4.93750000e+00, 1.89375000e+01, + 2.69583340e+01, 1.03333330e+01, 3.06250000e+00, 1.16666670e+01, + 9.19166641e+01, 1.27708330e+01, 1.47916663e+00, 4.99166679e+01, + 2.09583340e+01, 1.95833337e+00, 1.14375000e+01, 3.19375000e+01, + 1.50625000e+01, 3.18750000e+00, 2.52083325e+00, 1.20229164e+02, + 1.07666664e+02, 2.47916675e+00, 5.81250000e+00, 4.80833321e+01, + 4.20833321e+01, 4.87500000e+00, 2.45833325e+00, 8.82083359e+01, + 1.24791664e+02, 4.31250000e+00, 2.25000000e+00, 5.55416679e+01, + 1.05062500e+02, 6.45833349e+00, 2.06250000e+00, 2.10833340e+01, + 1.21625000e+02, 1.77916660e+01, 1.37500000e+00, 1.67708340e+01, + 1.13729164e+02, 1.49166670e+01, 6.45833313e-01, 5.83333313e-01, + 8.12500000e-01, 1.31250000e+00, 5.41666651e+00, 2.25000000e+01, + 1.49166670e+01, 3.10416675e+00, 7.29166687e-01, 2.77083325e+00, + 3.89583325e+00, 1.12500000e+00, 5.41666651e+00, 2.88750000e+01, + 2.23958340e+01, 5.83333349e+00, 1.33333337e+00, 9.83333302e+00, + 2.52500000e+01, 1.87500000e+00, 3.02083325e+00, 1.50625000e+01, + 2.12083340e+01, 8.60416698e+00, 1.43750000e+00, 5.29166651e+00, + 3.95000000e+01, 3.87500000e+00, 1.66666663e+00, 6.12500000e+00, + 1.40625000e+01, 7.22916651e+00, 6.97916651e+00, 1.02083337e+00, + 1.33333337e+00, 2.14583325e+00, 2.37500000e+00, 1.77083337e+00, + 1.43750000e+00, 1.58333337e+00, 4.45833349e+00, 1.22916663e+00, + 2.79166675e+00, 9.12500000e+00, 4.06250000e+00, 2.12500000e+00, + 1.25000000e+00, 2.06250000e+00, 1.41458330e+01, 3.52083325e+00, + 3.75000000e+00, 1.23333330e+01, 5.95833349e+00, 2.39583325e+00, + 2.83333325e+00, 1.40416670e+01, 1.00416670e+01, 3.79166675e+00, + 1.77083337e+00, 3.52083325e+00, 6.16666651e+00, 3.25000000e+00, + 4.06250000e+00, 1.48541670e+01, 1.29583330e+01, 2.77083325e+00, + 5.27083349e+00, 1.34375000e+01, 1.02916670e+01, 6.87500000e+00, + 1.11250000e+01, 9.97916698e+00, 1.10625000e+01, 4.75000000e+00, + 1.07708330e+01, 3.59791679e+01, 1.69166660e+01, 8.83333302e+00, + 1.02500000e+01, 3.22291679e+01, 2.76041660e+01, 1.18333330e+01, + 1.16458330e+01, 3.26250000e+01, 2.33750000e+01, 2.20416660e+01, + 5.28541679e+01, 9.82708359e+01, 1.87916660e+01, 1.18750000e+01, + 9.83333302e+00, 2.28958340e+01, 3.26041679e+01, 3.01041660e+01, + 3.29583321e+01, 33., 1.04791670e+01, 3., 1.03541670e+01, + 4.04375000e+01, 1.28958330e+01, 7.27083349e+00, 1.71041660e+01, + 4.35416679e+01, 1.53750000e+01, 1.83333337e+00, 1.23750000e+01, + 6.49583359e+01, 1.39791670e+01, 5.18750000e+00, 3.95625000e+01, + 1.47604172e+02, 1.44166670e+01, 2.54166675e+00, 2.02291660e+01, + 1.29916672e+02, 5.12916679e+01, 2.41041660e+01, 6.68541641e+01, + 1.40395828e+02, 1.24166670e+01, 8.39583302e+00, 2.55416660e+01, + 9.35208359e+01, 4.85208321e+01, 2.26875000e+01, 2.11250000e+01, + 3.44791679e+01, 7.89583349e+00, 1.29166663e+00, 8.52083302e+00, + 4.94375000e+01, 9.70833302e+00, 4.77083349e+00, 27., + 1.35375000e+02, 11., 2.91666657e-01, 2.19166660e+01, + 1.35125000e+02, 1.49791670e+01, 1.56250000e+00, 2.30833340e+01, + 1.41500000e+02, 1.28125000e+01, 1.12500000e+00, 2.34166660e+01, + 1.48833328e+02, 2.55416660e+01, 2.50000000e+00, 1.01250000e+01, + 7.29375000e+01, 7.77083349e+00, 2.54166675e+00, 7.81250000e+00, + 3.67500000e+01, 9.85416698e+00, 4.72916651e+00, 7.45833349e+00, + 2.98958340e+01, 2.36764698e+01, 1.29411764e+01, 7.67647076e+00, + 1.04117651e+01, 2.24705887e+01, 1.93235302e+01, 1.64117641e+01, + 1.41470585e+01, 1.51470585e+01, 1.23235292e+01, 9.94117641e+00, + 7.55882359e+00, 1.37058821e+01, 2.82647057e+01, 2.05882359e+01, + 1.61470585e+01, 2.19117641e+01, 1.32058821e+01, 5.02941179e+00, + 1.62352943e+01, 1.28558823e+02, 1.04647057e+02, 1.34117651e+01, + 1.37647057e+01, 1.99117641e+01, 8.97058868e+00, 1.17647064e+00, + 5., 5.71470604e+01, 2.62058830e+01, 1.79411769e+00, + 4.67647076e+00, 3.12941170e+01, 5.96470604e+01, 3.57647057e+01, + 1.04705887e+01, 2.26176472e+01, 5.93235283e+01, 3.61176453e+01, + 1.25294113e+01, 1.68529415e+01, 1.75000000e+01, 4.63529396e+01, + 5.40882339e+01, 1.95882359e+01, 1.82941170e+01, 4.33823547e+01, + 4.32941170e+01, 2.15000000e+01, 8.44117641e+00, 2.30882359e+01, + 1.31970581e+02, 133., 2.22647057e+01, 1.56470585e+01, + 4.13235283e+01, 1.30294113e+01, 5.11764717e+00, 2.02941179e+00, + 3.20294113e+01, 6.40882339e+01, 7.38235283e+00, 3.14705873e+00, + 1.08235292e+01, 1.06176472e+01, 1.06500000e+02, 1.38470581e+02, + 2.39117641e+01, 6.50000000e+00, 4.19411774e+01, 5.13823547e+01, + 1.23529415e+01, 6.47058821e+00, 2.43529415e+01, 1.43058823e+02, + 1.21323532e+02, 9.76470566e+00, 1.82352943e+01, 5.83823547e+01, + 3.57941170e+01, 1.08529415e+01, 5.11764717e+00, 6.36176453e+01, + 1.37205887e+02, 4.65588226e+01, 9., 2.95882359e+01, + 4.20294113e+01, 8.14705849e+00, 1.79411769e+00, 1.44117641e+00, + 1.36176472e+01, 9.29411793e+00, 2.29411769e+00, 7.29411745e+00, + 2.16764698e+01, 1.41176474e+00, 1.15294113e+01, 3.62941170e+01, + 5.08823538e+00, 1.61764705e+00, 4.85294104e+00, 1.95588226e+01, + 1.02352943e+01, 3.44117641e+00, 5.26470566e+00, 4.12647057e+01, + 1.34411764e+01, 2.17647052e+00, 6.47058821e+00, 1.80588226e+01, + 1.37941179e+01, 3.47058821e+00, 2.26470590e+00, 8.14705849e+00, + 9.02941132e+00, 2.85294127e+00, 5.38235283e+00, 1.44705887e+01, + 1.35000000e+01, 1.55882359e+00, 9.41176474e-01, 1.23529410e+00, + 6.76470578e-01, 9.41176474e-01, 1.35294116e+00, 3.08823538e+00, + 4.97058821e+00, 2.20612240e+01, 1.62653065e+01, 2.12244892e+01, + 2.60816326e+01, 2.11632652e+01, 2.26734695e+01, 2.63469391e+01, + 25., 1.77142849e+01, 8.71428585e+00, 3.22857132e+01, + 1.21877548e+02, 8.25510178e+01, 2.73673477e+01, 2.36326523e+01, + 3.45102043e+01, 2.63877544e+01, 5.16326523e+00, 1.84081631e+01, + 1.23836731e+02, 1.06081635e+02, 1.93469391e+01, 1.54897957e+01, + 5.23265305e+01, 7.91836739e+00, 1.48979592e+00, 4.65306139e+00, + 1.64693871e+01, 1.47755098e+01, 4.32653046e+00, 9.28571415e+00, + 2.30408173e+01, 1.27142859e+01, 31., 1.25204079e+02, + 1.36326538e+02, 2.35714283e+01, 2.74693871e+01, 5.51428566e+01, + 32., 1.45102043e+01, 5.77551031e+00, 1.05081635e+02, + 1.50591843e+02, 4.45102043e+01, 8.28571415e+00, 4.60204086e+01, + 8.28571396e+01, 2.38163261e+01, 7.18367338e+00, 2.55714283e+01, + 1.00020409e+02, 2.72653065e+01, 6.36734676e+00, 2.43673477e+01, + 8.44897995e+01, 4.79591846e+00, 3.18367338e+00, 5.44897938e+00, + 7.55102062e+00, 8.32653046e+00, 5.36734676e+00, 7.14285707e+00, + 1.04285717e+01, 7.26530600e+00, 1.21632652e+01, 1.06938774e+02, + 9.84285736e+01, 1.42040815e+01, 8.63265324e+00, 4.61224480e+01, + 4.77346954e+01, 1.32244902e+01, 9., 3.76122437e+01, + 6.01428566e+01, 9.79591846e+00, 9.20408154e+00, 4.30612259e+01, + 7.10408173e+01, 1.24081631e+01, 9.46938801e+00, 1.52448978e+01, + 1.64081631e+01, 1.21428576e+01, 8.97959137e+00, 1.36734695e+01, + 2.44897957e+01, 3.38775516e+00, 3.46938777e+00, 5., + 5.08163261e+00, 5.53061247e+00, 5.18367338e+00, 3.08163261e+00, + 2.55102038e+00, 5.71428585e+00, 4.16326523e+00, 7.61224508e+00, + 1.07142859e+01, 4.77551031e+00, 4.12244892e+00, 1.01020412e+01, + 1.47551022e+01, 4.61224508e+00, 7., 8.06122494e+00, + 9.04081631e+00, 6.44897938e+00, 6.36734676e+00, 7.93877554e+00, + 7.83673477e+00, 4.65306139e+00, 5.63265324e+00, 6.79591846e+00, + 7.08163261e+00, 6.24489784e+00, 4.57142878e+00, 4.57142878e+00, + 4.89795923e+00, 1.24489796e+00, 1.22448981e+00, 1.06122446e+00, + 1.36734688e+00, 1.36734688e+00, 1.46938777e+00, 1.14285719e+00, + 1.10204077e+00, 2.54285717e+00, 1.51428568e+00, 7.14285731e-01, + 3.25714278e+00, 1.28000002e+01, 6.54285717e+00, 7.68571424e+00, + 4.31428576e+00, 1.13714285e+01, 1.31142855e+01, 3.17142868e+00, + 5.77142859e+00, 2.42285709e+01, 2.70285721e+01, 1.97714291e+01, + 1.39714289e+01, 1.48857145e+01, 1.01142855e+01, 4.11428595e+00, + 5.65714264e+00, 1.37428570e+01, 2.82571430e+01, 4.18285713e+01, + 2.90857143e+01, 2.26571426e+01, 4.14285707e+00, 6.08571434e+00, + 1.31714287e+01, 8.22857189e+00, 1.06285715e+01, 1.95428562e+01, + 2.04857140e+01, 3.51428580e+00, 2.51428580e+00, 3.02857137e+00, + 8.37142849e+00, 1.77714291e+01, 9.68571472e+00, 1.31142855e+01, + 6.25714302e+00, 6.82571411e+01, 1.37142859e+01, 6.28571415e+00, + 1.81428566e+01, 3.11428566e+01, 2.31714287e+01, 2.65428562e+01, + 5.20571442e+01, 7.75142822e+01, 1.34857140e+01, 6.82857132e+00, + 3.47999992e+01, 8.92571411e+01, 5.47999992e+01, 5.51714287e+01, + 8.01142883e+01, 2.34285717e+01, 8.74285698e+00, 9.17142868e+00, + 2.58857136e+01, 4.53142853e+01, 2.91714287e+01, 2.61142864e+01, + 2.28857136e+01, 7.85714293e+00, 3.17142868e+00, 4.08571434e+00, + 1.47428570e+01, 2.36285706e+01, 9.22857189e+00, 6.25714302e+00, + 5.42857122e+00, 1.21714287e+02, 6.97142839e+00, 4.45714283e+00, + 3.00285721e+01, 4.79142876e+01, 9.57142830e+00, 7.59999990e+00, + 7.55999985e+01, 1.15285713e+02, 9.17142868e+00, 3.51428580e+00, + 8.02571411e+01, 1.32199997e+02, 2.61714287e+01, 1.66000004e+01, + 7.59714279e+01, 3.41142845e+01, 7.82857132e+00, 6.54285717e+00, + 2.72000008e+01, 52., 1.28000002e+01, 1.26571426e+01, + 2.21428566e+01, 1.40285711e+01, 4.02857161e+00, 2.62857151e+00, + 1.40571432e+01, 2.64285717e+01, 9.42857170e+00, 9.19999981e+00, + 11., 1.27457146e+02, 5.62857151e+00, 1.77142859e+00, + 3.07714291e+01, 6.13142853e+01, 5.14285707e+00, 6.57142878e+00, + 7.65428543e+01, 9.55999985e+01, 5.97142839e+00, 1.74285710e+00, + 7.12571411e+01, 1.26228569e+02, 8.71428585e+00, 2.54285717e+00, + 4.49428558e+01, 3.49714279e+01, 5.22857141e+00, 2.08571434e+00, + 1.03142853e+01, 2.74571438e+01, 4.34285736e+00, 5.88571405e+00, + 2.03428574e+01, 6.55172408e-01, 4.65517253e-01, 6.55172408e-01, + 1.22413790e+00, 8.79310369e-01, 3.62068951e-01, 4.65517253e-01, + 8.96551728e-01, 6.86206913e+00, 7.58620691e+00, 8.18965530e+00, + 1.47931032e+01, 2.34655170e+01, 1.06034479e+01, 7.31034470e+00, + 6.72413778e+00, 6.75862074e+00, 5.39655161e+00, 6.41379309e+00, + 8.38620682e+01, 1.09482758e+02, 1.33620691e+01, 4.34482765e+00, + 5.37931013e+00, 6.24137926e+00, 1.89655173e+00, 5.93103456e+00, + 1.32827591e+02, 1.14482758e+02, 3.89655161e+00, 2.37931037e+00, + 1.02586203e+01, 9.13793087e-01, 9.48275864e-01, 1.03448272e+00, + 1.36206901e+00, 8.79310369e-01, 7.58620679e-01, 1.01724136e+00, + 1.67241383e+00, 7.51724148e+00, 8.82758617e+00, 1.04137936e+01, + 2.07931042e+01, 3.66034470e+01, 1.73448277e+01, 8.53448296e+00, + 8.75862026e+00, 7.01724148e+00, 4.68965530e+00, 4.93103456e+00, + 9.80862045e+01, 1.53793106e+02, 2.18448277e+01, 4.48275852e+00, + 5.10344839e+00, 1.68965511e+01, 2.82758617e+00, 1.79310346e+00, + 9.73448257e+01, 145., 7.72413778e+00, 3.55172420e+00, + 1.38448277e+01, 8.44827592e-01, 1.01724136e+00, 1.22413790e+00, + 1.29310346e+00, 1.01724136e+00, 9.13793087e-01, 1.25862074e+00, + 1.08620691e+00, 6.67241383e+00, 9.98275852e+00, 1.02241383e+01, + 2.25172405e+01, 4.51551743e+01, 1.82241383e+01, 7.96551704e+00, + 6.43103456e+00, 5.60344839e+00, 5.29310322e+00, 4.81034470e+00, + 5.01379318e+01, 1.56568970e+02, 5.11724129e+01, 3.25862074e+00, + 3.25862074e+00, 2.53965511e+01, 4.72413778e+00, 1.24137926e+00, + 2.94655170e+01, 1.40344833e+02, 3.23965530e+01, 3.03448272e+00, + 9.56896591e+00, 6.55172408e-01, 5.86206913e-01, 7.93103456e-01, + 1.13793099e+00, 1.75862074e+00, 1.25862074e+00, 9.82758641e-01, + 1.05172420e+00, 5.70689678e+00, 7.12068987e+00, 8.41379356e+00, + 1.73448277e+01, 3.91551743e+01, 1.89827595e+01, 7.34482765e+00, + 5.37931013e+00, 4.94827604e+00, 7.05172396e+00, 5.63793087e+00, + 2.19655170e+01, 1.45206894e+02, 7.59310379e+01, 5.36206913e+00, + 2.98275852e+00, 1.58103447e+01, 7.67241383e+00, 1.36206901e+00, + 5.34482765e+00, 1.27706894e+02, 9.54655151e+01, 4.86206913e+00, + 4.27586222e+00, 6.19999981e+00, 1.15824997e+02, 5.16500015e+01, + 1.97500002e+00, 1.82500005e+00, 1.96000004e+01, 7.09999990e+00, + 1.25000000e+00, 2.74249992e+01, 1.18500000e+02, 2.97999992e+01, + 2.04999995e+00, 2.02500010e+00, 6.90000010e+00, 2.59999990e+00, + 1.89999998e+00, 2.25750008e+01, 6.10499992e+01, 1.83999996e+01, + 4.69999981e+00, 6.47499990e+00, 7.07499981e+00, 4.05000019e+00, + 4.07499981e+00, 9.27499962e+00, 1.77749996e+01, 9.89999962e+00, + 4.72499990e+00, 5.67500019e+00, 6.67500019e+00, 4.52500010e+00, + 4.55000019e+00, 1.24250002e+01, 9.58249969e+01, 1.82000008e+01, + 1.20000005e+00, 7.62500000e+00, 89., 3.22500000e+01, + 2.20000005e+00, 5.65499992e+01, 1.28399994e+02, 1.85499992e+01, + 1.47500002e+00, 1.01999998e+01, 4.05000000e+01, 5., + 2.02500010e+00, 6.04500008e+01, 1.21474998e+02, 1.95499992e+01, + 2.17499995e+00, 5.07499981e+00, 6.77500010e+00, 2.67499995e+00, + 3.15000010e+00, 1.97749996e+01, 3.87000008e+01, 1.14499998e+01, + 3.75000000e+00, 5.90000010e+00, 6.22499990e+00, 4.25000000e+00, + 5.62500000e+00, 9.52499962e+00, 2.84750004e+01, 1.52499998e+00, + 2.24999994e-01, 2.68999996e+01, 1.16699997e+02, 3.29000015e+01, + 2.97499990e+00, 7.19250031e+01, 1.05175003e+02, 2.95000005e+00, + 1.45000005e+00, 5.34749985e+01, 9.82500000e+01, 6.02500010e+00, + 2.22499990e+00, 1.02599998e+02, 1.25425003e+02, 9.42500019e+00, + 1.79999995e+00, 1.50500002e+01, 1.48999996e+01, 1.64999998e+00, + 2.92499995e+00, 4.58250008e+01, 6.91750031e+01, 9.07499981e+00, + 1.60000002e+00, 3.52500010e+00, 3.47499990e+00, 2.90000010e+00, + 5.09999990e+00, 8.77499962e+00, 7.77500010e+00, 8.00000012e-01, + 2.50000000e+00, 4.14500008e+01, 4.67750015e+01, 1.04499998e+01, + 4.44999981e+00, 5.27000008e+01, 3.18750000e+01, 5.50000012e-01, + 3.87500000e+00, 1.02224998e+02, 7.64749985e+01, 2.37500000e+00, + 3., 1.07125000e+02, 6.86250000e+01, 2.77500010e+00, + 2.20000005e+00, 3.47750015e+01, 1.89500008e+01, 1.47500002e+00, + 7.07499981e+00, 5.91500015e+01, 5.00999985e+01, 3.95000005e+00, + 9.49999988e-01, 3.54999995e+00, 2.34999990e+00, 1.60000002e+00, + 7.12500000e+00, 1.29344263e+01, 4.21147537e+01, 2.33934422e+01, + 2.15245895e+01, 4.13278694e+01, 7.96229477e+01, 2.15245895e+01, + 9.42622948e+00, 3.00819664e+01, 8.20491791e+01, 3.92295074e+01, + 1.67540989e+01, 2.88688526e+01, 1.09065575e+02, 6.17213097e+01, + 1.95901642e+01, 1.18032789e+01, 5.32786903e+01, 5.91147537e+01, + 2.39508190e+01, 2.73278694e+01, 9.57868881e+01, 7.88688507e+01, + 1.15409832e+01, 3.93442631e+00, 6.36065578e+00, 1.86885242e+01, + 1.54426231e+01, 1.37049179e+01, 2.29016399e+01, 6.30655746e+01, + 4.01803284e+01, 1.13278685e+01, 2.94426231e+01, 2.69508190e+01, + 3.04262295e+01, 3.44262314e+01, 5.61803284e+01, 4.79508209e+01, + 2.98852463e+01, 1.61967220e+01, 6.20983620e+01, 5.11311493e+01, + 2.10655746e+01, 2.04098358e+01, 8.72131119e+01, 7.97049179e+01, + 3.36885262e+01, 9.14754105e+00, 3.49180336e+01, 6.32295074e+01, + 1.62131157e+01, 1.32459021e+01, 7.70163956e+01, 1.04557381e+02, + 3.15409832e+01, 1.67377052e+01, 6.42622948e+00, 2.36065578e+01, + 1.03442621e+01, 3.47540975e+00, 16., 9.40655746e+01, + 7.29836044e+01, 3.24590158e+00, 3.67213106e+00, 6.57377052e+00, + 1.39508200e+01, 2.37377052e+01, 5.48524590e+01, 5.48360672e+01, + 2.11475410e+01, 7.96721315e+00, 9.40983582e+00, 1.32950821e+01, + 1.83770485e+01, 1.84918041e+01, 4.40163918e+01, 68., + 3.99344254e+01, 1.68032780e+01, 7.39344263e+00, 1.71639347e+01, + 6., 6.67213106e+00, 2.59508190e+01, 7.88852463e+01, + 6.85409851e+01, 2.57704926e+01, 3.21311474e+00, 6.98360634e+00, + 1.62295079e+00, 1., 6.04918051e+00, 5.73770485e+01, + 8.46557388e+01, 1., 3.27868849e-01, 7.04918027e-01, + 2.65573764e+00, 1.04754095e+01, 3.89836082e+01, 4.51639328e+01, + 8.68852425e+00, 1.98360658e+00, 4.75409836e-01, 9.34426248e-01, + 2.40983605e+00, 6.27868843e+00, 3.04262295e+01, 7.21967239e+01, + 2.65901642e+01, 8.39344215e+00, 1.06557381e+00, 8.68852437e-01, + 1.06557381e+00, 3.03278685e+00, 1.17049179e+01, 6.28852463e+01, + 4.96721306e+01, 1.35573769e+01, 1.40983605e+00, 6.55737698e-01, + 7.86885262e-01, 1.98360658e+00, 3.50819683e+00, 2.65245895e+01, + 4.68032799e+01, 7.06739120e+01, 4.82826080e+01, 8.63043499e+00, + 1.40434780e+01, 4.72608681e+01, 3.50000000e+00, 1.08695650e+00, + 1.77173920e+01, 4.17608681e+01, 4.65869560e+01, 2.43478260e+01, + 1.31739130e+01, 5.15217400e+00, 2.65217400e+00, 4.67391300e+00, + 1.89130440e+01, 1.66956520e+01, 2.38260860e+01, 3.05000000e+01, + 2.73695660e+01, 1.54130430e+01, 1.20217390e+01, 1.36521740e+01, + 1.28043480e+01, 6.17391300e+00, 1.06086960e+01, 1.78913040e+01, + 2.41739140e+01, 1.58260870e+01, 9.02173901e+00, 1.06086960e+01, + 7.10869551e+00, 5.31304359e+01, 9.31304321e+01, 1.98260860e+01, + 7.41304350e+00, 7.76304321e+01, 3.20869560e+01, 5.00000000e-01, + 3.19565225e+00, 3.55217400e+01, 1.06717392e+02, 5.31304359e+01, + 1.25000000e+01, 3.28260875e+00, 3.58695650e+00, 1.63043475e+00, + 4.02173901e+00, 1.30652170e+01, 59., 6.67608719e+01, + 2.74565220e+01, 8.73913002e+00, 5.58695650e+00, 6.97826099e+00, + 5.32608700e+00, 7.30434799e+00, 2.02173920e+01, 4.82391319e+01, + 3.30869560e+01, 1.31521740e+01, 6.34782600e+00, 7.47826099e+00, + 6.45652151e+00, 3.59130440e+01, 9.10652161e+01, 1.57608700e+01, + 4.32608700e+00, 1.00956520e+02, 1.13304344e+02, 1.08695650e+00, + 1.04347825e+00, 1.26956520e+01, 1.10478264e+02, 7.94782639e+01, + 5.95652151e+00, 1.06521740e+01, 2.74782600e+01, 1.76086962e+00, + 4.13043469e-01, 4.73913050e+00, 8.03695679e+01, 1.10978264e+02, + 1.71304340e+01, 2.73913050e+00, 4.04347849e+00, 3.30434775e+00, + 1.23913038e+00, 3.86956525e+00, 3.14565220e+01, 1.04108696e+02, + 3.35000000e+01, 3.97826076e+00, 1.91304350e+00, 4.47826099e+00, + 2.54347825e+00, 2.32391300e+01, 7.68913040e+01, 8.84782600e+00, + 2.73913050e+00, 4.97826080e+01, 1.21478264e+02, 9.60869598e+00, + 2.58695650e+00, 3.58695650e+00, 6.91086960e+01, 4.43478279e+01, + 3.82608700e+00, 1.95652180e+01, 112., 27., 3.04347813e-01, + 1.06521738e+00, 4.83478279e+01, 9.05652161e+01, 7.82608700e+00, + 1.26086962e+00, 3.43913040e+01, 2.43043480e+01, 2.17391297e-01, + 1.60869563e+00, 2.13478260e+01, 8.82391281e+01, 1.66956520e+01, + 4.56521749e-01, 3.65217400e+00, 1.30869570e+01, 1.86956525e+00, + 2.59999990e+00, 1.31666672e+00, 8.37500000e+01, 1.24300003e+02, + 5.43333340e+00, 1.50000000e+00, 1.96000004e+01, 4.15666656e+01, + 1.85000002e+00, 2.63333344e+00, 1.20683334e+02, 1.13833336e+02, + 3.18333340e+00, 4.81666660e+00, 28., 1.92666664e+01, + 3.25000000e+00, 1.32166662e+01, 1.12916664e+02, 3.29166679e+01, + 1.50000000e+00, 7.18333340e+00, 3.66166649e+01, 1.56499996e+01, + 4.05000019e+00, 4.70999985e+01, 1.05800003e+02, 2.78333330e+00, + 5.50000012e-01, 9.76666641e+00, 3.49666672e+01, 9.26666641e+00, + 4.56666660e+00, 8.99999976e-01, 2.84666672e+01, 1.03183334e+02, + 1.30833330e+01, 2.88333344e+00, 1.54666662e+01, 3.00666676e+01, + 4.94999981e+00, 1.95000005e+00, 2.06833324e+01, 2.30499992e+01, + 1.28333330e+00, 5.69999981e+00, 4.91333351e+01, 6.47333298e+01, + 3.96666670e+00, 2.83333325e+00, 1.41000004e+01, 5.15000010e+00, + 7.33333349e-01, 7.06666660e+00, 8.94666672e+01, 6.95000000e+01, + 2.26666665e+00, 6.96666670e+00, 1.36666670e+01, 1.96666670e+00, + 5.66666663e-01, 1.51666670e+01, 9.61833344e+01, 3.36166649e+01, + 17., 5.16666651e-01, 1.04999995e+00, 1.35500002e+01, + 5.93333340e+00, 3.38333344e+00, 2.18833332e+01, 7.10833359e+01, + 1.00166664e+01, 5.50000012e-01, 4.41666651e+00, 6.50000000e+00, + 1.85000002e+00, 4.15000010e+00, 6.42500000e+01, 1.15783333e+02, + 5.55000019e+00, 1.46666670e+00, 9.83333302e+00, 7.55000019e+00, + 1.51666665e+00, 9.60000038e+00, 1.06949997e+02, 9.59833298e+01, + 5.43333340e+00, 3.28333330e+00, 8.43333340e+00, 2.41666675e+00, + 1.29999995e+00, 2.06166668e+01, 1.06266670e+02, 4.43666649e+01, + 4.27833328e+01, 2.79999995e+00, 7.50000000e-01, 1.61666667e+00, + 1.16666663e+00, 1.26666665e+00, 1.38000002e+01, 8.62666702e+01, + 3.03333340e+01, 5.33333349e+00, 3.71666670e+00, 6.08333349e+00, + 6.56666660e+00, 8.64999962e+00, 4.36333351e+01, 1.06016670e+02, + 1.38999996e+01, 5.55000019e+00, 4.78333330e+00, 6.56666660e+00, + 8.50000000e+00, 1.42666664e+01, 5.23499985e+01, 5.28666649e+01, + 1.26833334e+01, 5.76666689e+00, 4.01666689e+00, 2.38333344e+00, + 3.93333340e+00, 1.47500000e+01, 4.39833336e+01, 2.70833340e+01, + 6.31578922e-01, 4.73684222e-01, 4.39473677e+00, 3.60263176e+01, + 2.93157902e+01, 2.89473677e+00, 7.89473712e-01, 5.26315808e-01, + 8.21052647e+00, 2.28947377e+00, 7.26315784e+00, 6.35789490e+01, + 6.05263176e+01, 4.86842108e+00, 1.31578946e+00, 8.97368431e+00, + 2.11052628e+01, 2.65789485e+00, 6.84210539e+00, 7.80263138e+01, + 5.94736824e+01, 2.73684216e+00, 2.57894731e+00, 3.95526314e+01, + 1.10263157e+01, 1.10526311e+00, 2.71052623e+00, 4.20263176e+01, + 1.67105255e+01, 1.63157892e+00, 1.59736843e+01, 7.89210510e+01, + 2.89473677e+00, 1.44736838e+00, 4.52631569e+00, 3.38947372e+01, + 5.28684196e+01, 1.27105265e+01, 2.39473677e+00, 2.05263162e+00, + 3.62894745e+01, 3.84210515e+00, 5.68421030e+00, 67., + 1.11526314e+02, 1.29473686e+01, 2.44736838e+00, 1.95526314e+01, + 8.03157883e+01, 2.07894731e+00, 2.97368431e+00, 6.82105255e+01, + 1.00631577e+02, 4.44736862e+00, 3.52631569e+00, 9.18684235e+01, + 5.27631569e+01, 1.05263162e+00, 1.10526311e+00, 1.63684216e+01, + 1.55526314e+01, 3.13157892e+00, 1.05526314e+01, 1.14973686e+02, + 6.55263138e+00, 1.76315784e+00, 4.18421030e+00, 2.78684216e+01, + 63., 1.72894745e+01, 3.55263162e+00, 2.44736838e+00, + 6.22368431e+01, 5.81578970e+00, 3.42105269e+00, 4.07894745e+01, + 1.21789474e+02, 2.47631588e+01, 3.34210515e+00, 18., + 1.24315788e+02, 7.18421030e+00, 5.52631557e-01, 2.26315784e+01, + 9.58157883e+01, 1.33157892e+01, 2.55263162e+00, 7.47631607e+01, + 7.33684235e+01, 6.94736862e+00, 3.05263162e+00, 7.52631569e+00, + 1.34473686e+01, 7.73684216e+00, 5., 5.44210510e+01, + 4.63157892e+00, 1.71052635e+00, 2.02631569e+00, 1.23421049e+01, + 5.16842117e+01, 1.76842098e+01, 4., 1.97368419e+00, + 5.30789490e+01, 1.29210529e+01, 1.52631581e+00, 1.00789471e+01, + 1.07184212e+02, 4.62105255e+01, 4.34210539e+00, 7.86842108e+00, + 1.17315788e+02, 3.26578941e+01, 7.63157904e-01, 4.07894754e+00, + 8.42368393e+01, 3.70263176e+01, 1.78947365e+00, 1.73157902e+01, + 6.13157883e+01, 2.67368412e+01, 4.73684216e+00, 4.78947353e+00, + 8.10526276e+00, 6.71052647e+00, 2.97368431e+00, 1.03684206e+01, + 2.08695650e+00, 1.52173913e+00, 1.53623188e+00, 1.84057975e+00, + 1.46376812e+00, 8.69565189e-01, 7.82608688e-01, 1.43478262e+00, + 2.71014500e+00, 1.37681162e+00, 1.81159425e+00, 3.17391300e+00, + 2.72463775e+00, 1.05797100e+00, 9.13043499e-01, 1.92753625e+00, + 2.30434775e+00, 1.28985512e+00, 2.07246375e+00, 2.28985500e+00, + 2.30434775e+00, 1.17391300e+00, 8.11594188e-01, 1.65217388e+00, + 1.52173913e+00, 1.60869563e+00, 1.84057975e+00, 1.56521738e+00, + 1.47826087e+00, 9.42028999e-01, 6.23188376e-01, 9.71014500e-01, + 1.66521740e+01, 1.32753620e+01, 1.70289860e+01, 2.22898560e+01, + 1.46521740e+01, 1.01014490e+01, 1.07536230e+01, 1.58260870e+01, + 2.09420280e+01, 1.87536240e+01, 2.69275360e+01, 34., + 2.33623180e+01, 1.31159420e+01, 1.35072460e+01, 1.78550720e+01, + 1.89420280e+01, 1.99420280e+01, 3.46376801e+01, 3.63623199e+01, + 2.16811600e+01, 1.37536230e+01, 1.35217390e+01, 1.53623190e+01, + 1.13043480e+01, 1.65942020e+01, 5.58405800e+01, 5.22753639e+01, + 1.35217390e+01, 7.79710150e+00, 8.39130402e+00, 8.84057999e+00, + 1.86811600e+01, 1.69420280e+01, 2.08695660e+01, 2.97391300e+01, + 2.14637680e+01, 1.44202900e+01, 1.77681160e+01, 2.03768120e+01, + 2.01594200e+01, 2.16521740e+01, 4.07391319e+01, 6.37246361e+01, + 3.43768120e+01, 2.02463760e+01, 2.27101440e+01, 2.24927540e+01, + 1.51159420e+01, 2.08115940e+01, 9.66231918e+01, 1.38666672e+02, + 3.53913040e+01, 13., 1.44637680e+01, 1.49565220e+01, + 5.10144949e+00, 1.30434780e+01, 152., 1.50188400e+02, + 1.88260860e+01, 5.75362301e+00, 7.79710150e+00, 6.47826099e+00, + 1.39710140e+01, 1.19275360e+01, 2.00724640e+01, 3.93333321e+01, + 2.08260860e+01, 1.11304350e+01, 1.13043480e+01, 1.40579710e+01, + 9.63768101e+00, 9.23188400e+00, 5.17536240e+01, 1.52115936e+02, + 5.14927521e+01, 9.43478298e+00, 9.18840599e+00, 1.13623190e+01, + 5.27536249e+00, 5.50724649e+00, 1.26289856e+02, 1.66275360e+02, + 3.37681160e+01, 2.98550725e+00, 4.92753601e+00, 9.89855099e+00, + 3.69565225e+00, 8.28985500e+00, 1.52217392e+02, 1.51884064e+02, + 7.34782600e+00, 2.14492750e+00, 1.08405800e+01, 1.54927540e+01, + 1.77529411e+01, 1.67176476e+01, 3.93529396e+01, 5.05882339e+01, + 2.01411762e+01, 2.07411766e+01, 4.42000008e+01, 4.05411758e+01, + 1.46705885e+01, 9.35294151e+00, 6.08470573e+01, 9.87058792e+01, + 3.18588238e+01, 1.78941174e+01, 5.80235291e+01, 6.93176498e+01, + 2.09882355e+01, 6.82352924e+00, 5.89176483e+01, 1.02352943e+02, + 2.35529404e+01, 1.05882349e+01, 6.26588249e+01, 1.04952942e+02, + 7.55294132e+00, 3.02352953e+00, 2.66705875e+01, 4.01058807e+01, + 7.85882330e+00, 5.35294104e+00, 4.48941193e+01, 6.61058807e+01, + 8.43529415e+00, 2.09529419e+01, 1.03588234e+02, 1.05576469e+02, + 1.21882353e+01, 1.31176472e+01, 8.74588242e+01, 8.76705856e+01, + 1.26470585e+01, 1.10705881e+01, 8.89176483e+01, 1.10599998e+02, + 1.65058823e+01, 1.19882355e+01, 1.08717644e+02, 1.21270592e+02, + 1.61882362e+01, 9.68235302e+00, 3.06235294e+01, 5.11882362e+01, + 2.23529415e+01, 1.59176474e+01, 7.05294113e+01, 1.04988235e+02, + 6.38823509e+00, 5.72941160e+00, 1.08352938e+01, 1.45764704e+01, + 1.62588234e+01, 1.06941175e+01, 1.80235291e+01, 2.09647064e+01, + 1.25176468e+01, 1.01058826e+01, 3.35294113e+01, 4.38470573e+01, + 1.32823534e+01, 1.17058821e+01, 9.01529388e+01, 9.67176437e+01, + 1.32941179e+01, 1.26470585e+01, 2.18235302e+01, 2.83529415e+01, + 2.46588230e+01, 1.99411774e+01, 5.66588249e+01, 6.05647049e+01, + 1.00588236e+01, 1.27882357e+01, 1.97411766e+01, 2.51529408e+01, + 2.56705875e+01, 2.04117641e+01, 2.18941174e+01, 1.59882355e+01, + 5.01176453e+00, 4.98823547e+00, 8.08235264e+00, 1.14117651e+01, + 1.39411764e+01, 1.22235298e+01, 9.10588264e+00, 5.82352924e+00, + 9.08235264e+00, 9.32941151e+00, 1.28705883e+01, 1.30588236e+01, + 1.12352943e+01, 1.00235291e+01, 1.01411762e+01, 1.39058819e+01, + 9.24705887e+00, 10., 1.39411764e+01, 1.71058826e+01, + 1.74588242e+01, 1.41294117e+01, 1.17882357e+01, 9.29411793e+00, + 7.22352934e+00, 8.08235264e+00, 10., 1.36823530e+01, + 1.73647060e+01, 1.39411764e+01, 1.08352938e+01, 8.51764679e+00, + 3.82352948e+00, 3.78823519e+00, 4.55294132e+00, 6.36470604e+00, + 8.56470585e+00, 6.65882349e+00, 4.47058821e+00, 3.68235302e+00, + 3.86597943e+00, 3.12371135e+00, 3.70103097e+00, 4.12371111e+00, + 6.07216501e+00, 6.31958771e+00, 5.67010307e+00, 4.60824728e+00, + 1.18350515e+01, 7.84536076e+00, 1.13917522e+01, 2.66701031e+01, + 7.97525787e+01, 8.97525787e+01, 3.48350525e+01, 1.32989693e+01, + 8.61855698e+00, 6.83505154e+00, 8.75257778e+00, 2.45360832e+01, + 1.18216492e+02, 1.35185562e+02, 5.89484520e+01, 1.49896908e+01, + 1.53195877e+01, 3.46804123e+01, 2.65670109e+01, 1.91958771e+01, + 6.79381409e+01, 1.07886597e+02, 6.37422676e+01, 2.19587631e+01, + 5.21649504e+00, 4.48453617e+00, 5.96907234e+00, 4.97938156e+00, + 6.77319574e+00, 8.83505154e+00, 8.74226761e+00, 7.22680426e+00, + 24., 2.04845352e+01, 2.61237106e+01, 3.10206184e+01, + 4.47525787e+01, 6.28969078e+01, 5.45154648e+01, 3.16804123e+01, + 1.57628870e+01, 1.12577324e+01, 1.27938147e+01, 2.46597939e+01, + 9.05257721e+01, 1.40371140e+02, 1.13855667e+02, 2.98969078e+01, + 9.06185532e+00, 6.58762884e+00, 7.78350496e+00, 1.22577324e+01, + 6.17422676e+01, 1.40896912e+02, 1.30350510e+02, 2.40618553e+01, + 4.18556690e+00, 3.89690733e+00, 5.03092766e+00, 4.38144350e+00, + 7.26804113e+00, 6.73195887e+00, 6.03092766e+00, 5.44329882e+00, + 2.08041229e+01, 2.15773201e+01, 2.64845352e+01, 2.17628860e+01, + 2.16494846e+01, 2.66907215e+01, 3.37113419e+01, 2.93608246e+01, + 2.41030922e+01, 2.26494846e+01, 2.67010307e+01, 3.06082478e+01, + 3.87835045e+01, 5.63195877e+01, 5.44123726e+01, 3.51340218e+01, + 1.14845362e+01, 8.05154610e+00, 1.15154638e+01, 1.77628860e+01, + 3.86804123e+01, 9.73092804e+01, 9.85154648e+01, 2.78144321e+01, + 1.14432991e+00, 7.62886584e-01, 8.55670094e-01, 1.52577317e+00, + 2.09278345e+00, 1.46391749e+00, 1.54639173e+00, 1.15463912e+00, + 4.29896927e+00, 3.44329906e+00, 5.22680426e+00, 5.96907234e+00, + 5.69072151e+00, 5.98969078e+00, 6.65979385e+00, 6.93814421e+00, + 6.63917542e+00, 5.57731962e+00, 7.22680426e+00, 1.02783508e+01, + 7.70103073e+00, 6.23711348e+00, 8.75257778e+00, 9.71133995e+00, + 6.30927849e+00, 4.52577305e+00, 5.78350496e+00, 1.01649485e+01, + 8.38144302e+00, 8.13402081e+00, 8.08247375e+00, 9.94845390e+00, + 2.75308633e+00, 2.45679021e+00, 3.07407403e+00, 5.69135809e+00, + 3.41975307e+00, 1.93827164e+00, 2.51851845e+00, 2.04938269e+00, + 3.39506173e+00, 4.03703690e+00, 7.49382734e+00, 1.03827162e+01, + 5.55555534e+00, 4.87654305e+00, 5.18518496e+00, 2.51851845e+00, + 3.38271594e+00, 4.32098770e+00, 1.24444447e+01, 1.17037039e+01, + 4.65432119e+00, 4.69135809e+00, 5.16049385e+00, 2.45679021e+00, + 3.25925922e+00, 3.55555558e+00, 1.52222223e+01, 1.10617285e+01, + 3.08641982e+00, 2.20987654e+00, 3.18518519e+00, 3.29629636e+00, + 5.37037039e+00, 6.38271618e+00, 1.06543207e+01, 1.92716045e+01, + 9.96296310e+00, 5.46913576e+00, 5.90123463e+00, 4.41975307e+00, + 6.17283964e+00, 7.85185194e+00, 2.36913586e+01, 3.91851845e+01, + 1.56790123e+01, 7.88888884e+00, 7.13580227e+00, 4.77777767e+00, + 5.17283964e+00, 7.11111116e+00, 3.73703690e+01, 5.42098770e+01, + 1.55308638e+01, 7.51851845e+00, 9.04938316e+00, 7.12345695e+00, + 5.95061731e+00, 6.75308657e+00, 3.84938278e+01, 4.08888893e+01, + 9.23456764e+00, 4.20987654e+00, 2.95802460e+01, 3.23086433e+01, + 4.32098770e+00, 5.35802460e+00, 1.36419754e+01, 3.18148155e+01, + 1.61975307e+01, 6.53086424e+00, 4.71604919e+00, 3.83950615e+00, + 5.64197540e+00, 5.77777767e+00, 2.60987663e+01, 6.38888893e+01, + 2.37037029e+01, 6.80246925e+00, 1.13580246e+01, 2.79506168e+01, + 5.87654305e+00, 4.12345695e+00, 3.56296310e+01, 7.36543198e+01, + 1.58148146e+01, 5.17283964e+00, 7.81604919e+01, 1.36209869e+02, + 4.16049385e+00, 3.29629636e+00, 8.23456802e+01, 9.71851883e+01, + 6.48148155e+00, 5.02469158e+00, 1.40839508e+02, 1.43543213e+02, + 5.41975307e+00, 3.11111116e+00, 9.58024693e+00, 3.21358032e+01, + 1.76296291e+01, 5.25925922e+00, 4.20987654e+00, 1.25061731e+01, + 3.28395081e+01, 6.62962961e+00, 1.75185184e+01, 6.56172867e+01, + 2.01358032e+01, 4.74074078e+00, 2.68271599e+01, 1.35320984e+02, + 1.82962971e+01, 5.02469158e+00, 6.98888855e+01, 1.42518524e+02, + 1.51728392e+01, 2.76543212e+00, 6.54691391e+01, 1.44629623e+02, + 7.27160501e+00, 5.35802460e+00, 1.07925926e+02, 1.38160492e+02, + 5.11111116e+00, 4.14814806e+00, 4.32222214e+01, 7.19506149e+01, + 2.51999998e+00, 3.75999999e+00, 4.44000006e+00, 4.15999985e+00, + 9.03999996e+00, 3.42599983e+01, 2.72000008e+01, 4.28000021e+00, + 7.40000010e+00, 4.59399986e+01, 3.22400017e+01, 8.65999985e+00, + 2.37000008e+01, 1.03519997e+02, 6.28800011e+01, 6.13999987e+00, + 9.52000046e+00, 1.50600006e+02, 1.38240005e+02, 8.69999981e+00, + 1.85599995e+01, 1.28039993e+02, 9.11800003e+01, 5.09999990e+00, + 8.23999977e+00, 1.51240005e+02, 1.56020004e+02, 11., + 8.26000023e+00, 1.07860001e+02, 1.07699997e+02, 6.67999983e+00, + 5.73999977e+00, 5.03999996e+00, 5.82000017e+00, 6.23999977e+00, + 8.14000034e+00, 1.43400002e+01, 1.36599998e+01, 7.13999987e+00, + 9.38000011e+00, 8.14000034e+00, 7.80000019e+00, 8.73999977e+00, + 1.71599998e+01, 5.24799995e+01, 3.96599998e+01, 1.27799997e+01, + 5.65999985e+00, 1.00600004e+01, 1.11400003e+01, 6.61999989e+00, + 1.79599991e+01, 1.09940002e+02, 9.08000031e+01, 1.11999998e+01, + 5.11999989e+00, 4.14599991e+01, 4.42400017e+01, 3.72000003e+00, + 1.29799995e+01, 1.24959999e+02, 1.12160004e+02, 7.40000010e+00, + 4.71999979e+00, 5.30000019e+00, 5.03999996e+00, 5.17999983e+00, + 5.34000015e+00, 1.10400000e+01, 1.05400000e+01, 4.73999977e+00, + 9.14000034e+00, 7.34000015e+00, 8.15999985e+00, 8.77999973e+00, + 1.10200005e+01, 1.81800003e+01, 1.98999996e+01, 1.27799997e+01, + 8.34000015e+00, 7.23999977e+00, 8.47999954e+00, 1.04200001e+01, + 1.26999998e+01, 2.62999992e+01, 2.79200001e+01, 1.63400002e+01, + 5.15999985e+00, 4.90000010e+00, 6.28000021e+00, 6.59999990e+00, + 1.03199997e+01, 4.41599998e+01, 4.44399986e+01, 1.03000002e+01, + 1.98000002e+00, 2.01999998e+00, 1.77999997e+00, 1.75999999e+00, + 1.63999999e+00, 2.77999997e+00, 2.51999998e+00, 1.84000003e+00, + 4.84000015e+00, 4.67999983e+00, 3.98000002e+00, 3.83999991e+00, + 2.96000004e+00, 5.78000021e+00, 6.48000002e+00, 4.71999979e+00, + 4.03999996e+00, 3.35999990e+00, 3.79999995e+00, 5.19999981e+00, + 4.84000015e+00, 5.15999985e+00, 7.86000013e+00, 5.57999992e+00, + 3.33999991e+00, 2.51999998e+00, 2.79999995e+00, 4.13999987e+00, + 3.81999993e+00, 4.07999992e+00, 7.32000017e+00, 5.53999996e+00, + 3.81296310e+01, 4.76851845e+01, 2.18888893e+01, 9.94444466e+00, + 1.25370369e+01, 1.43888893e+01, 1.74259262e+01, 1.39074078e+01, + 2.65925922e+01, 3.16666660e+01, 2.22037029e+01, 1.53888893e+01, + 1.40555553e+01, 1.77037029e+01, 2.83518524e+01, 2.68703709e+01, + 2.58148155e+01, 2.66481476e+01, 2.22222214e+01, 1.87962971e+01, + 1.88148155e+01, 2.37037029e+01, 3.24814796e+01, 2.97592602e+01, + 2.59444447e+01, 2.62407398e+01, 1.77222214e+01, 1.54814816e+01, + 4.43518524e+01, 5.64259262e+01, 2.76481476e+01, 1.81296291e+01, + 2.16851845e+01, 9.21296310e+01, 5.89444427e+01, 6.29629612e+00, + 9.27777767e+00, 4.65555573e+01, 2.97777786e+01, 5.38888884e+00, + 1.72962971e+01, 1.07240738e+02, 1.12111115e+02, 1.58518515e+01, + 1.14444447e+01, 5.20555573e+01, 53., 1.36111107e+01, + 1.51111107e+01, 7.11851883e+01, 1.17481483e+02, 5.29444427e+01, + 1.32592592e+01, 2.86666660e+01, 5.82592583e+01, 2.35555553e+01, + 2.06666660e+01, 6.15185204e+01, 1.10111115e+02, 6.12777786e+01, + 2.00740738e+01, 3.25370369e+01, 5.11851845e+01, 2.98703709e+01, + 7.07407427e+00, 2.59814816e+01, 2.20370369e+01, 5.46296310e+00, + 6.27777767e+00, 3.97407417e+01, 3.16111107e+01, 6., + 7.55555534e+00, 6.38148155e+01, 7.91296310e+01, 1.05555553e+01, + 6.75925922e+00, 6.99259262e+01, 7.83148117e+01, 8.01851845e+00, + 4.46296310e+00, 4.83333321e+01, 1.10055557e+02, 3.52777786e+01, + 7.12962961e+00, 5.79259262e+01, 9.23703690e+01, 1.40370369e+01, + 4.14814806e+00, 5.55740738e+01, 9.59074097e+01, 4.25000000e+01, + 7.11111116e+00, 4.11111107e+01, 8.70370407e+01, 2.29814816e+01, + 4.70370388e+00, 4.40740728e+00, 4.90740728e+00, 4.59259272e+00, + 3.51851845e+00, 4.09259272e+00, 4.44444466e+00, 3.46296287e+00, + 5.50000000e+00, 7.64814806e+00, 8.38888931e+00, 7.01851845e+00, + 5.12962961e+00, 1.06111107e+01, 1.25925922e+01, 4.25925922e+00, + 4.44444466e+00, 6.98148155e+00, 9.14814854e+00, 7.55555534e+00, + 5.68518496e+00, 1.59629631e+01, 2.29074078e+01, 4.31481504e+00, + 2.48148155e+00, 6., 7.59259272e+00, 7.16666651e+00, + 4.74074078e+00, 1.83333340e+01, 2.26851845e+01, 4.38888884e+00, + 4.79268312e+00, 9.84146309e+00, 1.42560978e+01, 3.29268289e+00, + 2.26829267e+00, 3.18536587e+01, 6.46341476e+01, 3.19512200e+00, + 6.58536577e+00, 1.51829271e+01, 1.46463413e+01, 4.54878044e+00, + 2.75609756e+00, 2.76097565e+01, 2.60853653e+01, 2.59756088e+00, + 7.25609779e+00, 1.85121956e+01, 1.46585369e+01, 5.46341467e+00, + 6.96341467e+00, 4.97560978e+00, 5.07317066e+00, 3.18292689e+00, + 4.68292665e+00, 1.34756098e+01, 8.85365868e+00, 3.32926822e+00, + 6.85365868e+00, 1.25609756e+00, 4.96341467e+00, 3.35365844e+00, + 7.13414621e+00, 8.65975647e+01, 1.22353661e+02, 3.95121956e+00, + 3.04878044e+00, 5.64268303e+01, 8.66097565e+01, 5.74390221e+00, + 5.78048801e+00, 1.04280487e+02, 7.38658524e+01, 3.30487800e+00, + 4.81707335e+00, 1.24853661e+02, 1.01634148e+02, 3.65853667e+00, + 8.93902397e+00, 4.05243912e+01, 2.08536587e+01, 5.15853643e+00, + 1.29268293e+01, 1.13207314e+02, 4.09024391e+01, 3.60975599e+00, + 9.37804890e+00, 2.58658543e+01, 1.45243902e+01, 4.73170710e+00, + 1.02317076e+01, 1.62926826e+01, 7.75609779e+00, 4.04878044e+00, + 8.46341419e+00, 3.28902435e+01, 3.89878044e+01, 2.40243912e+00, + 9.54878044e+00, 3.11829262e+01, 2.52560978e+01, 1.32195120e+01, + 1.10609760e+01, 1.22719513e+02, 6.25365868e+01, 2.84146333e+00, + 1.27439022e+01, 5.54390259e+01, 2.58902435e+01, 8.30487823e+00, + 2.71707325e+01, 1.28707321e+02, 2.63902435e+01, 2.97560978e+00, + 2.91829262e+01, 1.30560974e+02, 2.41585369e+01, 3.29268289e+00, + 1.33292685e+01, 3.38658524e+01, 9.78048801e+00, 3.04878044e+00, + 3.39268303e+01, 1.02243904e+02, 9.87804890e+00, 3.24390244e+00, + 4.92682934e+00, 1.70731711e+00, 7.56097555e-01, 2.23170733e+00, + 1.62439022e+01, 4.03048782e+01, 3.10487804e+01, 1.19512196e+01, + 7.58536577e+00, 1.58292685e+01, 2.12195110e+00, 3.97560978e+00, + 2.58292675e+01, 3.53292694e+01, 2.31097565e+01, 9.71951199e+00, + 5.54390259e+01, 1.10621948e+02, 5.09756088e+00, 3.30487800e+00, + 2.93414631e+01, 4.14024391e+01, 8.23170757e+00, 6.13414621e+00, + 4.46951218e+01, 6.94268265e+01, 3.46341467e+00, 2.02439022e+00, + 6.88292694e+01, 1.03597565e+02, 4.89024401e+00, 2.73170733e+00, + 5.28571415e+00, 7.67857122e+00, 6.92857122e+00, 2.67857146e+00, + 2.51785707e+00, 5.73214293e+00, 7.76785707e+00, 6.42857122e+00, + 1.89821434e+01, 2.26250000e+01, 1.77857151e+01, 1.16607141e+01, + 1.14285717e+01, 1.56964283e+01, 2.20714283e+01, 1.92500000e+01, + 3.27857132e+01, 2.78392849e+01, 1.61785717e+01, 2.41785717e+01, + 3.21785698e+01, 20., 2.25714283e+01, 3.33392868e+01, + 5.37500000e+01, 2.35535717e+01, 1.15892859e+01, 7.66785736e+01, + 7.09821396e+01, 1.14821424e+01, 1.28571424e+01, 5.01785698e+01, + 6.58928585e+00, 9.55357170e+00, 8.64285755e+00, 4.66071415e+00, + 5.01785707e+00, 6.64285707e+00, 9.51785755e+00, 8.19642830e+00, + 2.51785717e+01, 2.94285717e+01, 2.11250000e+01, 1.77142849e+01, + 1.76071434e+01, 2.08571434e+01, 2.46428566e+01, 2.36785717e+01, + 4.81250000e+01, 4.02500000e+01, 1.77500000e+01, 5.56607132e+01, + 5.94107132e+01, 2.40714283e+01, 2.66607151e+01, 4.34107132e+01, + 8.46607132e+01, 2.05000000e+01, 1.24285717e+01, 1.15214287e+02, + 1.07017860e+02, 8.96428585e+00, 9.82142830e+00, 9.00178604e+01, + 7.10714293e+00, 9.66071415e+00, 8.08928585e+00, 5.85714293e+00, + 6.35714293e+00, 7.08928585e+00, 1.03928576e+01, 8.10714245e+00, + 3.20535698e+01, 3.34464302e+01, 2.17321434e+01, 18., + 1.75357151e+01, 2.25000000e+01, 2.31785717e+01, 3.18035717e+01, + 5.55714302e+01, 2.82678566e+01, 1.64285717e+01, 1.15035713e+02, + 1.01107140e+02, 1.89642849e+01, 2.02857151e+01, 5.88750000e+01, + 9.44464264e+01, 1.13392859e+01, 9.37500000e+00, 1.05303574e+02, + 9.02321396e+01, 4.08928585e+00, 6.28571415e+00, 1.11589287e+02, + 6.55357122e+00, 8.73214245e+00, 6.12500000e+00, 5.80357122e+00, + 4.80357122e+00, 5.55357122e+00, 7.94642878e+00, 6.50000000e+00, + 2.41607151e+01, 2.92500000e+01, 1.80535717e+01, 3.06785717e+01, + 2.62678566e+01, 1.21785717e+01, 1.47678576e+01, 2.33392849e+01, + 5.99464302e+01, 1.85357151e+01, 1.38035717e+01, 1.15392860e+02, + 1.09928574e+02, 1.25535717e+01, 1.22142859e+01, 7.39821396e+01, + 6.72142868e+01, 1.20178576e+01, 1.02678576e+01, 5.39107132e+01, + 3.81428566e+01, 6.17857122e+00, 8.85714245e+00, 9.01071396e+01, + 4.84313726e+00, 9.19607830e+00, 1.83725491e+01, 4.14313736e+01, + 3.55294113e+01, 1.75294113e+01, 3.33333325e+00, 1.78431368e+00, + 2.52352943e+01, 1.97647057e+01, 2.40588226e+01, 7.11568604e+01, + 6.33529396e+01, 2.06666660e+01, 8.07843113e+00, 1.35098038e+01, + 2.00980396e+01, 9.68627453e+00, 1.07254906e+01, 1.01431374e+02, + 8.02156830e+01, 1.51960783e+01, 1.04117651e+01, 2.51176472e+01, + 8.15686321e+00, 4.90196085e+00, 1.27647057e+01, 5.75490189e+01, + 2.66666660e+01, 1.28235292e+01, 18., 2.51568623e+01, + 8.78431416e+00, 1.35686274e+01, 2.12156868e+01, 3.95490189e+01, + 6.09607849e+01, 4.00588226e+01, 1.09411764e+01, 3.76470590e+00, + 4.37647057e+01, 2.92941170e+01, 2.13725491e+01, 5.07647057e+01, + 9.95882339e+01, 3.86274529e+01, 1.39215689e+01, 1.51764708e+01, + 4.10196075e+01, 1.21960783e+01, 7.13725471e+00, 5.91764717e+01, + 1.09960785e+02, 2.61372547e+01, 1.13137255e+01, 2.65294113e+01, + 3.90392151e+01, 1.32745094e+01, 1.71176472e+01, 4.87843132e+01, + 5.26470604e+01, 2.51568623e+01, 2.86078434e+01, 5.09411774e+01, + 6.50980377e+00, 1.04705887e+01, 1.35098038e+01, 1.57843142e+01, + 5.11176453e+01, 7.14313736e+01, 2.75098038e+01, 3.52941179e+00, + 3.91764717e+01, 3.04117641e+01, 1.50980396e+01, 1.35490198e+01, + 9.17254868e+01, 9.28431396e+01, 3.53137245e+01, 1.11568632e+01, + 4.47450981e+01, 2.67254906e+01, 7.64705896e+00, 1.64705887e+01, + 1.12411766e+02, 9.06470566e+01, 9.50980377e+00, 1.25098038e+01, + 37., 2.76470585e+01, 1.98039207e+01, 2.92745094e+01, + 5.46078415e+01, 3.46862755e+01, 8.31372547e+00, 1.53333330e+01, + 2.15686274e+00, 3.33333325e+00, 5.74509811e+00, 7.37254906e+00, + 2.34705887e+01, 5.32352943e+01, 2.32549019e+01, 3.33333325e+00, + 1.25686274e+01, 1.70980396e+01, 7.05882359e+00, 5.94117641e+00, + 3.73725471e+01, 8.76862717e+01, 3.74901962e+01, 7.11764717e+00, + 1.26666670e+01, 2.55098038e+01, 6.13725471e+00, 3.68627453e+00, + 5.29607849e+01, 1.19313728e+02, 3.01960793e+01, 4.90196085e+00, + 6.27450991e+00, 1.10980396e+01, 9.49019623e+00, 8.31372547e+00, + 2.03529415e+01, 8.38039246e+01, 4.07450981e+01, 2.66666675e+00, + 4.92682934e+00, 3.65853667e-01, 1., 1.19512200e+00, + 1.63414631e+01, 4.24390259e+01, 2.60731716e+01, 2.03170738e+01, + 6.21951199e+00, 1.21951222e-01, 5.36585391e-01, 1.68292677e+00, + 3.13414631e+01, 6.88536606e+01, 2.33414631e+01, 2.53414631e+01, + 7.31707335e+00, 8.04878056e-01, 2.19512194e-01, 8.53658557e-01, + 7.36585379e+00, 1.67073174e+01, 1.12926826e+01, 2.07317066e+00, + 6.72926865e+01, 5.36585379e+00, 3.70731711e+00, 8.78048778e-01, + 3.90243888e-01, 6.82926834e-01, 3.92682934e+00, 9.04878044e+00, + 1.20243902e+01, 4.51219511e+00, 8.43902397e+00, 1.30975609e+01, + 1.81219521e+01, 3.22682915e+01, 3.37317085e+01, 2.60975609e+01, + 1.01951218e+01, 3.90243912e+00, 6.46341467e+00, 13., + 8.37317047e+01, 1.37682922e+02, 9.18780518e+01, 3.96097565e+01, + 1.13170729e+01, 1., 2.51219511e+00, 3.51219511e+00, + 3.92439041e+01, 1.26048782e+02, 1.27707314e+02, 1.64878044e+01, + 1.19048782e+02, 8.26829243e+00, 3.78048778e+00, 1.29268289e+00, + 1.39024389e+00, 2.56585369e+01, 1.05048782e+02, 6.22682915e+01, + 1.96341457e+01, 1.01951218e+01, 6.53658533e+00, 1.79024391e+01, + 1.64878044e+01, 1.88536587e+01, 1.22439022e+01, 2.38780479e+01, + 1.67560978e+01, 1.09756098e+01, 1.20731707e+01, 2.80243912e+01, + 2.44878044e+01, 5.07073174e+01, 4.15365868e+01, 3.10731716e+01, + 1.24390240e+01, 6.48780489e+00, 1.28536587e+01, 2.14634151e+01, + 1.97073174e+01, 7.88780518e+01, 1.25682930e+02, 2.79756088e+01, + 3.31951218e+01, 6.19512177e+00, 7.68292665e+00, 1.12682924e+01, + 7.78048801e+00, 3.73170738e+01, 1.05048782e+02, 4.58536568e+01, + 1.84390240e+01, 1.69756088e+01, 6.31707335e+00, 1.75609760e+01, + 2.23902435e+01, 2.17317066e+01, 10., 1.60731716e+01, + 1.57560978e+01, 1.83658543e+01, 11., 2.08048782e+01, + 1.86097565e+01, 2.25121956e+01, 1.73658543e+01, 1.66585369e+01, + 2.20975609e+01, 1.23658533e+01, 1.14146338e+01, 1.47073174e+01, + 1.62926826e+01, 1.67804871e+01, 1.98292675e+01, 2.37317066e+01, + 1.63170738e+01, 6.56097555e+00, 1.05609760e+01, 1.82195129e+01, + 1.46585369e+01, 1.27073174e+01, 2.16097565e+01, 3.05609760e+01, + 2.85714293e+00, 4.42857122e+00, 1.61428566e+01, 7.08571434e+00, + 4.91428566e+00, 4.31428576e+00, 7.14285707e+00, 4.28571415e+00, + 3.45714283e+00, 6.59999990e+00, 1.66000004e+01, 6.42857122e+00, + 6.45714283e+00, 5.48571444e+00, 7.71428585e+00, 3.42857146e+00, + 1.68571424e+00, 5.17142868e+00, 9.68571472e+00, 5.54285717e+00, + 6.51428556e+00, 5.82857132e+00, 5.68571424e+00, 1.74285710e+00, + 2.57142872e-01, 7.14285731e-01, 9.42857146e-01, 8.28571439e-01, + 9.14285719e-01, 8.57142866e-01, 6.85714304e-01, 1.71428576e-01, + 2.25714278e+00, 9.65714264e+00, 5.43714294e+01, 1.38000002e+01, + 5.45714283e+00, 3.66285706e+01, 1.34885712e+02, 1.59714289e+01, + 4.37142849e+00, 1.52285719e+01, 4.48285713e+01, 20., + 1.93999996e+01, 6.42571411e+01, 1.38828568e+02, 1.91142864e+01, + 9.82857132e+00, 1.48000002e+01, 20., 1.66285706e+01, + 3.08571434e+01, 5.75714302e+01, 4.92000008e+01, 9.77142811e+00, + 2.85714293e+00, 2.05714297e+00, 1.68571424e+00, 1.31428576e+00, + 3.85714293e+00, 4.14285707e+00, 1.88571429e+00, 1.94285715e+00, + 4.85714287e-01, 2.63999996e+01, 1.44657150e+02, 2.86857147e+01, + 3.94285703e+00, 2.98857136e+01, 1.33628571e+02, 2.33142853e+01, + 4., 1.93999996e+01, 1.50914291e+02, 8.60571442e+01, + 3.64857140e+01, 6.87142868e+01, 1.26771431e+02, 2.74857140e+01, + 1.16285715e+01, 8.85714245e+00, 5.40571442e+01, 8.04000015e+01, + 7.37428589e+01, 5.87428589e+01, 4.82285728e+01, 1.94285717e+01, + 2.02857137e+00, 1.62857139e+00, 1.45714283e+00, 4.57142878e+00, + 7.34285736e+00, 4.31428576e+00, 1.79999995e+00, 2.42857146e+00, + 8.85714293e-01, 9.05714321e+00, 9.41714249e+01, 2.73142853e+01, + 5.59999990e+00, 9.17142868e+00, 7.29142838e+01, 1.31428576e+01, + 3.02857137e+00, 1.12857141e+01, 9.41142883e+01, 3.70857124e+01, + 9.45714283e+00, 8.02857113e+00, 5.93428574e+01, 2.41714287e+01, + 4.62857151e+00, 4.25714302e+00, 2.56000004e+01, 2.81142864e+01, + 1.63142853e+01, 7.88571405e+00, 1.94571438e+01, 1.52857141e+01, + 8.00000012e-01, 3.71428579e-01, 1.02857149e+00, 2.34285712e+00, + 2.48571420e+00, 1.48571432e+00, 1.82857144e+00, 1.48571432e+00, + 9.65454578e+00, 3.63636374e+00, 4.42000008e+01, 8.58181839e+01, + 1.03272724e+01, 5.85454559e+00, 7.65636368e+01, 1.08672729e+02, + 3.54545450e+00, 4.47272730e+00, 8.91454544e+01, 9.72727280e+01, + 1.30181818e+01, 1.81272736e+01, 9.42545471e+01, 5.77090912e+01, + 1.61818182e+00, 8.56363678e+00, 9.52363663e+01, 4.13454552e+01, + 1.34181814e+01, 4.20727272e+01, 8.43272705e+01, 1.33818178e+01, + 1.34545457e+00, 2.75272732e+01, 8.69272690e+01, 1.09818182e+01, + 1.10181818e+01, 4.57454529e+01, 5.88727264e+01, 7.34545469e+00, + 1.86000004e+01, 5.49090910e+00, 2.54545460e+01, 8.54181824e+01, + 1.47272730e+01, 7.61818171e+00, 6.17454529e+01, 7.35090942e+01, + 1.26181822e+01, 5.16363621e+00, 1.77818184e+01, 2.36545448e+01, + 6.61818171e+00, 3.88727264e+01, 9.41090927e+01, 4.74727287e+01, + 2.90909100e+00, 3.78181815e+00, 1.22909088e+01, 7.67272711e+00, + 1.29636364e+01, 8.82909088e+01, 9.03636398e+01, 1.37818184e+01, + 1.78181815e+00, 9.76363659e+00, 1.30181818e+01, 3.67272735e+00, + 2.27999992e+01, 9.47272720e+01, 5.07454529e+01, 3.74545455e+00, + 3.72727280e+01, 1.33090906e+01, 6.87272739e+00, 1.40727272e+01, + 6.61818171e+00, 5.41818190e+00, 3.69454536e+01, 6.66545486e+01, + 2.07818184e+01, 1.27454548e+01, 1.20727272e+01, 1.06000004e+01, + 1.47636366e+01, 3.22000008e+01, 7.34727249e+01, 5.21454544e+01, + 4.65454531e+00, 5.18181801e+00, 1.25272732e+01, 2.27818184e+01, + 3.83454552e+01, 6.97454529e+01, 66., 1.83272724e+01, + 1.70909095e+00, 4.41818190e+00, 7.96363640e+00, 1.26545458e+01, + 4.18363647e+01, 8.66545486e+01, 3.14909096e+01, 3.10909081e+00, + 4.74181824e+01, 2.31636372e+01, 1.04727268e+01, 6.30909109e+00, + 5.54545450e+00, 4.27272749e+00, 9.50909138e+00, 3.10181828e+01, + 2.51818180e+01, 2.54181824e+01, 3.25636368e+01, 2.27454548e+01, + 2.03090916e+01, 2.09636364e+01, 2.43454552e+01, 2.66181812e+01, + 6.10909081e+00, 1.02909088e+01, 2.52000008e+01, 3.52727280e+01, + 4.51636353e+01, 2.56363640e+01, 1.83818188e+01, 8.81818199e+00, + 4.74545431e+00, 6.29090929e+00, 9.50909138e+00, 1.92000008e+01, + 3.81454544e+01, 3.28545456e+01, 1.56727276e+01, 7.19999981e+00, + 8.68484879e+01, 9.60606098e+00, 1.51666670e+01, 1.41378784e+02, + 1.45590912e+02, 1.13787880e+01, 7.28787899e+00, 8.06969681e+01, + 5.37424240e+01, 2.26969700e+01, 3.27121201e+01, 1.08787880e+02, + 1.01742424e+02, 1.51515150e+01, 1.53333330e+01, 6.38484840e+01, + 2.29242420e+01, 2.30757580e+01, 2.61818180e+01, 2.19393940e+01, + 1.69696960e+01, 1.47727270e+01, 1.75606060e+01, 2.82272720e+01, + 7.77272749e+00, 9.51515198e+00, 1.12121210e+01, 1.12424240e+01, + 9.13636398e+00, 6.78787899e+00, 7.40909100e+00, 8.34848499e+00, + 6.41515121e+01, 1.91969700e+01, 2.47727280e+01, 1.47500000e+02, + 151., 1.88333340e+01, 9.56060600e+00, 4.71363640e+01, + 5.22575760e+01, 3.24848480e+01, 3.15000000e+01, 5.13636360e+01, + 62., 2.36969700e+01, 2.22121220e+01, 4.76818199e+01, + 2.35151520e+01, 2.83030300e+01, 2.73181820e+01, 2.01515160e+01, + 1.82121220e+01, 1.71515160e+01, 1.95454540e+01, 2.15909100e+01, + 8.77272701e+00, 1.12272730e+01, 1.37727270e+01, 1.38484850e+01, + 1.36212120e+01, 9.86363602e+00, 7.21212101e+00, 7.31818199e+00, + 4.13636360e+01, 2.70454540e+01, 3.93030319e+01, 1.22621216e+02, + 9.88030319e+01, 1.28181820e+01, 1.16818180e+01, 3.56212120e+01, + 3.35606079e+01, 3.33181801e+01, 3.34545441e+01, 2.67272720e+01, + 2.48030300e+01, 1.57575760e+01, 1.82575760e+01, 2.77575760e+01, + 1.74696960e+01, 2.69090900e+01, 2.75303040e+01, 2.13939400e+01, + 1.80909100e+01, 1.57727270e+01, 1.43939390e+01, 1.30303030e+01, + 7.31818199e+00, 1.30606060e+01, 1.34696970e+01, 1.05757580e+01, + 1.07878790e+01, 1.11969700e+01, 6.89393950e+00, 5.75757599e+00, + 2.21818180e+01, 1.58030300e+01, 2.21969700e+01, 4.23030319e+01, + 3.35454559e+01, 8.71212101e+00, 1.04848480e+01, 2.05303040e+01, + 1.55000000e+01, 1.91666660e+01, 1.87424240e+01, 1.43030300e+01, + 1.14242420e+01, 9.10606098e+00, 1.03939390e+01, 1.13333330e+01, + 9.81818199e+00, 1.51818180e+01, 1.75151520e+01, 1.40151520e+01, + 1.16818180e+01, 9.28787899e+00, 8.19696999e+00, 6.59090900e+00, + 4.24242401e+00, 8.33333302e+00, 7.36363649e+00, 4.56060600e+00, + 5.34848499e+00, 6.33333349e+00, 4.56060600e+00, 2.48484850e+00, + 7.46666670e-01, 4.66666669e-01, 7.59999990e-01, 1.53333330e+00, + 2., 1.65333331e+00, 1.33333337e+00, 8.26666653e-01, + 1.46266670e+01, 9.45333290e+00, 4.42666674e+00, 5.23999977e+00, + 2.43333340e+01, 1.44133329e+01, 7.30666685e+00, 7.69333315e+00, + 1.29026672e+02, 3.67999992e+01, 4.34666681e+00, 7.34666681e+00, + 7.08933334e+01, 2.25466671e+01, 4.07999992e+00, 1.22266665e+01, + 1.12693336e+02, 2.19866657e+01, 2.11999989e+00, 8.82666683e+00, + 1.20559998e+02, 3.09599991e+01, 5.54666662e+00, 1.20266666e+01, + 1.58666670e+00, 7.33333349e-01, 1.03999996e+00, 1.22666669e+00, + 1.67999995e+00, 1.96000004e+00, 2.30666661e+00, 1.69333339e+00, + 1.34933329e+01, 9.82666683e+00, 5.90666676e+00, 6.58666658e+00, + 2.75333328e+01, 1.53066664e+01, 1.13599997e+01, 1.02133331e+01, + 1.37906662e+02, 3.32000008e+01, 3.77333331e+00, 11., + 9.15199966e+01, 2.55866661e+01, 4.76000023e+00, 1.49600000e+01, + 1.34639999e+02, 2.69333324e+01, 1.38666666e+00, 1.20133333e+01, + 1.37026672e+02, 3.34799995e+01, 2.26666665e+00, 1.10799999e+01, + 1.61333334e+00, 9.73333359e-01, 1.27999997e+00, 1.26666665e+00, + 1.48000002e+00, 1.74666667e+00, 2.31999993e+00, 1.74666667e+00, + 1.04533329e+01, 9.01333332e+00, 6.70666647e+00, 7.93333340e+00, + 2.52000008e+01, 1.29866667e+01, 1.01199999e+01, 8.86666679e+00, + 1.34759995e+02, 2.60400009e+01, 4.01333332e+00, 1.25066671e+01, + 8.55466690e+01, 2.35466671e+01, 5.44000006e+00, 2.04133339e+01, + 1.33933334e+02, 2.91866665e+01, 4.26666689e+00, 1.67733326e+01, + 1.33173340e+02, 2.71466675e+01, 2.14666677e+00, 1.34133329e+01, + 1.29333329e+00, 8.93333316e-01, 9.20000017e-01, 9.59999979e-01, + 1.27999997e+00, 1.46666670e+00, 1.77333331e+00, 1.51999998e+00, + 7.76000023e+00, 6.85333347e+00, 5.13333321e+00, 7.10666656e+00, + 1.95599995e+01, 9.15999985e+00, 7.55999994e+00, 7.22666645e+00, + 1.08333336e+02, 1.96800003e+01, 5.05333328e+00, 1.18133335e+01, + 5.61199989e+01, 1.65466671e+01, 6.23999977e+00, 2.78400002e+01, + 9.95733337e+01, 2.60799999e+01, 1.23066664e+01, 2.11599998e+01, + 9.78399963e+01, 1.83199997e+01, 4.21333313e+00, 1.39866667e+01, + 7.62352905e+01, 1.73137264e+01, 1.21372547e+01, 2.00882359e+01, + 1.68137264e+01, 1.71274509e+01, 3.99411774e+01, 1.14294121e+02, + 1.24823532e+02, 2.08921566e+01, 6.62745094e+00, 7.06862736e+00, + 7.86274529e+00, 1.18235292e+01, 4.03431358e+01, 1.37382355e+02, + 1.02294121e+02, 2.12352943e+01, 7.89215708e+00, 4.51960802e+00, + 5.06862736e+00, 8.68627453e+00, 3.51372566e+01, 1.14980392e+02, + 1.35098038e+01, 6.98039198e+00, 3.95098042e+00, 2.11764717e+00, + 2.27450991e+00, 3.50000000e+00, 8.24509811e+00, 1.48725491e+01, + 5.93725471e+01, 8.66666698e+00, 5.16666651e+00, 6.29411745e+00, + 6.80392170e+00, 1.53333330e+01, 1.05774513e+02, 1.39460785e+02, + 1.03823532e+02, 1.68627453e+01, 6.63725471e+00, 5.25490189e+00, + 7.64705896e+00, 1.41960783e+01, 8.48039246e+01, 1.40588242e+02, + 6.66764679e+01, 2.62647057e+01, 1.72647057e+01, 1.18431368e+01, + 1.44313726e+01, 1.86078434e+01, 4.32549019e+01, 9.17745132e+01, + 9.14705849e+00, 6.56862736e+00, 6.54901981e+00, 4.41176462e+00, + 4.56862736e+00, 5.64705896e+00, 8.36274529e+00, 1.11078434e+01, + 3.09215679e+01, 6.70588255e+00, 4.91176462e+00, 3.93137264e+00, + 5.55882359e+00, 1.63039207e+01, 1.00323532e+02, 1.23039215e+02, + 4.76960793e+01, 2.16470585e+01, 1.80980396e+01, 1.16176472e+01, + 1.33333330e+01, 2.30392151e+01, 6.28431358e+01, 9.14607849e+01, + 3.34803925e+01, 2.47450981e+01, 2.05784321e+01, 1.57941179e+01, + 1.72058830e+01, 1.95098038e+01, 2.80392151e+01, 3.59509811e+01, + 6.95098019e+00, 5.47058821e+00, 5.23529434e+00, 4.39215708e+00, + 4.55882359e+00, 4.43137264e+00, 6.20588255e+00, 7.77450991e+00, + 8.39215660e+00, 4.76470566e+00, 5.07843161e+00, 4.73529434e+00, + 4.82352924e+00, 6.75490189e+00, 1.30784311e+01, 1.62058830e+01, + 1.12352943e+01, 8., 9.12745094e+00, 6.90196085e+00, + 6.05882359e+00, 8.07843113e+00, 1.22450981e+01, 1.51176472e+01, + 8.42156887e+00, 6.82352924e+00, 6.97058821e+00, 5.56862736e+00, + 6.22549009e+00, 6.70588255e+00, 8.66666698e+00, 1.16960783e+01, + 1.92156863e+00, 1.40196073e+00, 1.70588231e+00, 1.33333337e+00, + 1.45098042e+00, 1.70588231e+00, 1.97058821e+00, 2.32352948e+00, + 7.05555534e+00, 7.44444466e+00, 1.03333330e+01, 5.22222233e+00, + 1.04166670e+01, 3.80277786e+01, 5.20833321e+01, 1.35833330e+01, + 9.94444466e+00, 5.08888893e+01, 3.26944427e+01, 3.08333325e+00, + 1.34166670e+01, 9.87222214e+01, 8.84444427e+01, 1.54444447e+01, + 4.87777786e+01, 1.33944443e+02, 1.07138885e+02, 7.97222233e+00, + 2.83055553e+01, 1.09166664e+02, 6.92500000e+01, 1.28888893e+01, + 1.19722221e+02, 1.40666672e+02, 8.26944427e+01, 1.99722214e+01, + 3.85277786e+01, 7.13888855e+01, 3.25555573e+01, 2.04444447e+01, + 13., 8.47222233e+00, 7.50000000e+00, 8.50000000e+00, + 9.66666698e+00, 1.33055553e+01, 2.29722214e+01, 2.07777786e+01, + 1.38055553e+01, 1.15833330e+01, 1.07500000e+01, 8.94444466e+00, + 1.68333340e+01, 4.37222214e+01, 3.76111107e+01, 2.46388893e+01, + 2.24722214e+01, 2.58055553e+01, 1.19166670e+01, 1.22222223e+01, + 4.96666679e+01, 1.21888885e+02, 4.15833321e+01, 1.23888893e+01, + 9.06944427e+01, 1.40444443e+02, 4.76388893e+01, 6.22222233e+00, + 3.79444427e+01, 1.09500000e+02, 4.34444427e+01, 7.08333349e+00, + 1.17777777e+01, 1.08333330e+01, 9.47222233e+00, 8.33333302e+00, + 8.13888931e+00, 6.83333349e+00, 1.20555553e+01, 1.46944447e+01, + 1.21388893e+01, 1.68333340e+01, 1.58055553e+01, 1.14722223e+01, + 1.29166670e+01, 1.38333330e+01, 1.48333330e+01, 1.49444447e+01, + 1.02500000e+01, 1.03888893e+01, 1.00833330e+01, 1.39166670e+01, + 2.66666660e+01, 4.39444427e+01, 2.68055553e+01, 11., + 1.33055553e+01, 3.98888893e+01, 1.29444447e+01, 6.30555534e+00, + 3.03888893e+01, 8.66666641e+01, 4.71388893e+01, 7.88888884e+00, + 3.58333325e+00, 4.13888884e+00, 2.61111116e+00, 2.05555558e+00, + 2.77777767e+00, 2.41666675e+00, 3.75000000e+00, 5., + 3.80555558e+00, 3.80555558e+00, 4.19444466e+00, 3.94444442e+00, + 3.55555558e+00, 3.11111116e+00, 3.94444442e+00, 4.58333349e+00, + 4.22222233e+00, 2.77777767e+00, 3.66666675e+00, 5.38888884e+00, + 5.19444466e+00, 4.63888884e+00, 4., 3.41666675e+00, + 3.69444442e+00, 2.41666675e+00, 1.47222221e+00, 1.66666663e+00, + 7.52777767e+00, 1.53055553e+01, 7.16666651e+00, 2.77777767e+00, + 1.63508778e+01, 1.68596497e+01, 1.59298248e+01, 1.41929827e+01, + 20., 2.25614033e+01, 2.01929817e+01, 1.90877190e+01, + 3.05789471e+01, 2.62280693e+01, 1.52105265e+01, 1.68947372e+01, + 3.17719307e+01, 3.12280693e+01, 1.45438595e+01, 1.69649124e+01, + 1.06157898e+02, 2.31403503e+01, 4.36842108e+00, 8.75438595e+00, + 1.96491222e+01, 1.18596487e+01, 4.22807026e+00, 3.21403503e+01, + 1.21877190e+02, 2.16491222e+01, 4.47368431e+00, 4.33333349e+00, + 7.70175457e+00, 3.71929836e+00, 3.26315784e+00, 3.58421059e+01, + 1.55614033e+01, 1.80877190e+01, 2.61754379e+01, 3.15614033e+01, + 2.88947372e+01, 2.24912281e+01, 2.15263157e+01, 2.37192974e+01, + 2.53333340e+01, 1.32982454e+01, 1.48421049e+01, 2.67543869e+01, + 2.87368412e+01, 1.24385967e+01, 1.67017536e+01, 49., + 1.08578949e+02, 7.52631569e+00, 6.42105246e+00, 1.40526314e+01, + 1.53333330e+01, 6.91228056e+00, 1.24385967e+01, 1.33508774e+02, + 9.76842117e+01, 1.37017546e+01, 7.85964918e+00, 9.33333302e+00, + 9.43859673e+00, 5.40350866e+00, 1.13859653e+01, 9.49122772e+01, + 5.87719297e+00, 9.75438595e+00, 2.02982464e+01, 1.64912281e+01, + 7.66666651e+00, 2.54035091e+01, 1.13017548e+02, 3.28947372e+01, + 1.26842108e+01, 5.50877190e+00, 9.84210491e+00, 1.60877190e+01, + 6.12280703e+00, 6.45614052e+00, 1.14596489e+02, 1.32578949e+02, + 4.63157883e+01, 7.56140327e+00, 6.91228056e+00, 1.58245611e+01, + 7.38596487e+00, 7.63157892e+00, 5.25614052e+01, 1.36789474e+02, + 3.09298248e+01, 1.06140347e+01, 5.85964918e+00, 8.07017517e+00, + 6.08771944e+00, 6.85964918e+00, 2.17894745e+01, 6.18596497e+01, + 6.17543840e+00, 4.05263138e+00, 1.28421049e+01, 4.21052647e+00, + 3.63157892e+00, 2.09122810e+01, 1.17192986e+02, 4.19824562e+01, + 1.05087719e+01, 4.07017565e+00, 7.78947353e+00, 7.29824543e+00, + 3.22807026e+00, 1.10701752e+01, 9.36842117e+01, 98., + 1.83859653e+01, 7.24561405e+00, 5.08771944e+00, 7.29824543e+00, + 4.14035082e+00, 1.23684206e+01, 3.66666679e+01, 5.94912262e+01, + 1.51403513e+01, 5.92982435e+00, 3.77192974e+00, 3.56140351e+00, + 2.98245621e+00, 6.84210539e+00, 1.78947372e+01, 2.64561405e+01, + 1.05178576e+01, 1.44642854e+00, 9.30357170e+00, 1.11071426e+02, + 6.25714302e+01, 1.71428573e+00, 4.80357122e+00, 3.11250000e+01, + 1.16785717e+01, 3.32142854e+00, 1.71964283e+01, 5.98928566e+01, + 6.39285707e+00, 1.73214281e+00, 1.75178566e+01, 4.72500000e+01, + 1.25535717e+01, 1.94642854e+00, 5.41071415e+00, 5.67857122e+00, + 8.21428597e-01, 3.03571439e+00, 4.24285698e+01, 9.23928604e+01, + 8.32142830e+00, 1.14285719e+00, 3.25000000e+00, 3.07142854e+00, + 8.75000000e-01, 7.23214293e+00, 7.33571396e+01, 7.70892868e+01, + 1.72500000e+01, 1.76785719e+00, 1.35714281e+00, 8.05000000e+01, + 8.51250000e+01, 3.32142854e+00, 8.23214245e+00, 3.07500000e+01, + 5.06071434e+01, 2.10714293e+00, 2.50000000e+00, 9.35714245e+00, + 5.32142878e+00, 1.42857146e+00, 1.95892849e+01, 1.14392860e+02, + 3.91428566e+01, 2.08928561e+00, 3.66071439e+00, 9.62500000e+00, + 2.12500000e+00, 2.58928561e+00, 5.05714302e+01, 1.31482147e+02, + 2.40535717e+01, 9.21428585e+00, 1.01964283e+01, 9.25000000e+00, + 3.96428561e+00, 1.03928576e+01, 7.64464264e+01, 9.53928604e+01, + 3.70357132e+01, 1.82142854e+00, 3.03571433e-01, 1.68392849e+01, + 6.57678604e+01, 8.96428585e+00, 8.35714245e+00, 3.99464302e+01, + 1.08017860e+02, 2.53571439e+00, 2.85714298e-01, 2.85714293e+00, + 3.91071439e+00, 1.58928573e+00, 1.01428576e+01, 1.20767860e+02, + 6.40535736e+01, 4.82142878e+00, 3.17857146e+00, 7.76785707e+00, + 7.51785707e+00, 8.96428585e+00, 2.84464283e+01, 1.16928574e+02, + 2.12857151e+01, 9.87500000e+00, 7.46428585e+00, 1.12142859e+01, + 1.08928576e+01, 9., 2.68035717e+01, 4.34642868e+01, + 4.93750000e+01, 6.89285707e+00, 3.75000000e-01, 1.37500000e+00, + 5.09107132e+01, 2.62857151e+01, 6.01785707e+00, 2.68571434e+01, + 1.23839287e+02, 2.28928566e+01, 2.67857146e+00, 1.14285719e+00, + 2.80357146e+00, 2.25000000e+00, 5.67857122e+00, 6.87678604e+01, + 6.08750000e+01, 2.95714283e+01, 1.65178566e+01, 9.19642830e+00, + 1.39464283e+01, 2.14464283e+01, 1.92142849e+01, 4.78035698e+01, + 1.60178566e+01, 1.02500000e+01, 1.11785717e+01, 1.33214283e+01, + 1.34107141e+01, 1.46785717e+01, 1.49285717e+01, 1.79464283e+01, + 1.11999998e+01, 5.77500010e+00, 5.80000019e+00, 6.57499981e+00, + 7.55000019e+00, 10., 1.28500004e+01, 1.38750000e+01, + 8.42500019e+00, 7.67500019e+00, 9.69999981e+00, 9.30000019e+00, + 1.19499998e+01, 1.99750004e+01, 2.44249992e+01, 1.58000002e+01, + 6.55000019e+00, 5.80000019e+00, 8.82499981e+00, 1.02500000e+01, + 1.34250002e+01, 1.97000008e+01, 2.25249996e+01, 1.31750002e+01, + 6.42500019e+00, 3.65000010e+00, 7.12500000e+00, 1.07500000e+01, + 1.23750000e+01, 1.35500002e+01, 1.15000000e+01, 8.02499962e+00, + 9.32499981e+00, 1.11000004e+01, 3.86749992e+01, 2.65499992e+01, + 1.01250000e+01, 1.67749996e+01, 3.24749985e+01, 1.90499992e+01, + 1.12250004e+01, 2.31749992e+01, 6.95500031e+01, 3.10249996e+01, + 1.49250002e+01, 2.63250008e+01, 4.73750000e+01, 2.26749992e+01, + 8.02499962e+00, 2.46000004e+01, 6.45749969e+01, 4.03499985e+01, + 2.18750000e+01, 3.06250000e+01, 3.54500008e+01, 1.86000004e+01, + 4.69999981e+00, 8.82499981e+00, 5.19749985e+01, 4.72750015e+01, + 1.76000004e+01, 1.45749998e+01, 2.86000004e+01, 2.11749992e+01, + 7.67500019e+00, 1.56250000e+01, 7.70500031e+01, 5.38250008e+01, + 5.87500000e+00, 1.29499998e+01, 7.86500015e+01, 4.95499992e+01, + 1.73500004e+01, 4.29000015e+01, 9.02500000e+01, 4.43250008e+01, + 1.21499996e+01, 5.92750015e+01, 1.10099998e+02, 4.77750015e+01, + 1.01000004e+01, 4.16500015e+01, 8.57500000e+01, 5.58499985e+01, + 2.23750000e+01, 7.90500031e+01, 1.13199997e+02, 3.98499985e+01, + 5.44999981e+00, 1.47500000e+01, 8.47249985e+01, 6.51750031e+01, + 9.85000038e+00, 23., 1.01199997e+02, 6.21749992e+01, + 1.97250004e+01, 1.72000008e+01, 3.64749985e+01, 2.31250000e+01, + 9.97500038e+00, 1.18500004e+01, 3.61500015e+01, 4.36500015e+01, + 4.21250000e+01, 3.61250000e+01, 3.79500008e+01, 3.30499992e+01, + 3.25000000e+01, 3.39000015e+01, 3.80750008e+01, 3.73750000e+01, + 2.69500008e+01, 2.84750004e+01, 6.07500000e+01, 8.50999985e+01, + 5.11749992e+01, 4.26500015e+01, 5.75499992e+01, 37., + 9.80000019e+00, 1.16499996e+01, 9.88000031e+01, 9.70500031e+01, + 1.77250004e+01, 1.22500000e+01, 8.69000015e+01, 6.60250015e+01, + 1.32933331e+01, 1.39200001e+01, 7.27600021e+01, 8.91066666e+01, + 1.84133339e+01, 1.56800003e+01, 8.15733337e+01, 9.20400009e+01, + 3.03600006e+01, 9.30666637e+00, 1.92266674e+01, 6.53199997e+01, + 2.04799995e+01, 1.07866669e+01, 5.75466652e+01, 9.95599976e+01, + 9.09066696e+01, 2.36800003e+01, 5.92000008e+00, 8.26666641e+00, + 3.94666672e+00, 3.24000001e+00, 1.57066669e+01, 8.74400024e+01, + 7.09333344e+01, 1.95733337e+01, 1.91999996e+00, 5.33333361e-01, + 6.66666687e-01, 1.21333337e+00, 3.35999990e+00, 37., + 2.70799999e+01, 2.01200008e+01, 5.41599998e+01, 4.87200012e+01, + 1.67333336e+01, 2.52399998e+01, 7.82266693e+01, 6.81466675e+01, + 4.89866676e+01, 2.16000004e+01, 2.37333336e+01, 3.09599991e+01, + 1.49733334e+01, 1.62800007e+01, 5.49599991e+01, 8.59199982e+01, + 9.50933304e+01, 1.74666672e+01, 5.96000004e+00, 6.03999996e+00, + 4.26666689e+00, 6.76000023e+00, 2.00533333e+01, 1.00279999e+02, + 7.23600006e+01, 1.14933329e+01, 2.22666669e+00, 1.26666665e+00, + 2.03999996e+00, 3.01333332e+00, 8.62666702e+00, 5.62533340e+01, + 2.41200008e+01, 1.15600004e+01, 1.49733334e+01, 1.31866665e+01, + 1.50666666e+01, 3.21866684e+01, 6.09466667e+01, 4.53600006e+01, + 5.37599983e+01, 1.17466669e+01, 6.19999981e+00, 7.38666677e+00, + 9.90666676e+00, 1.48666668e+01, 5.76666679e+01, 9.85599976e+01, + 7.69733353e+01, 8.27999973e+00, 2.07999992e+00, 1.77333331e+00, + 3.72000003e+00, 8.52000046e+00, 4.00266685e+01, 111., + 4.24799995e+01, 6.85333347e+00, 3.65333343e+00, 3.29333329e+00, + 5.96000004e+00, 6.98666668e+00, 1.66399994e+01, 5.16533318e+01, + 8.02666664e+00, 1.98666668e+00, 1.17333329e+00, 1.18666661e+00, + 3.81333327e+00, 2.37066669e+01, 5.94000015e+01, 4.02933350e+01, + 2.28533325e+01, 1.93333328e+00, 5.86666644e-01, 8.26666653e-01, + 2.26666665e+00, 1.10533333e+01, 5.82666664e+01, 9.11066666e+01, + 3.21866684e+01, 6.44000006e+00, 2.66666675e+00, 2.09333324e+00, + 4.37333345e+00, 9.41333294e+00, 3.13333340e+01, 6.97600021e+01, + 1.39333334e+01, 6.50666666e+00, 4.06666660e+00, 3.79999995e+00, + 6.11999989e+00, 6.97333336e+00, 1.03466663e+01, 2.01599998e+01, + 3.51136374e+00, 4., 3.52272725e+00, 3.98863626e+00, + 2.59318180e+01, 1.27295456e+02, 4.33750000e+01, 4.82954550e+00, + 2.84090900e+00, 5.59090900e+00, 2.86363626e+00, 1.95454550e+00, + 2.31250000e+01, 1.48659088e+02, 1.10636360e+02, 8.23863602e+00, + 4.21590900e+00, 1.62045460e+01, 1.18181820e+01, 2.51136374e+00, + 1.24318180e+01, 1.41318176e+02, 1.34261368e+02, 9.61363602e+00, + 7.26136351e+00, 2.24090900e+01, 28., 6.01136351e+00, + 6.34090900e+00, 7.03409119e+01, 1.20534088e+02, 1.80909100e+01, + 9.47727299e+00, 1.06704550e+01, 1.32159090e+01, 1.00909090e+01, + 1.99772720e+01, 5.56250000e+01, 3.47954559e+01, 1.13409090e+01, + 6.67045450e+00, 8.02272701e+00, 1.07727270e+01, 8.17045498e+00, + 2.19318180e+01, 1.19750000e+02, 8.98409119e+01, 1.31136360e+01, + 4.96590900e+00, 5.75000000e+00, 7.69318199e+00, 4.95454550e+00, + 1.18863640e+01, 1.36795456e+02, 1.41284088e+02, 1.50113640e+01, + 5.68181801e+00, 5.29545450e+00, 8.21590900e+00, 3.88636374e+00, + 5.62500000e+00, 9.88181839e+01, 1.45738632e+02, 2.08977280e+01, + 1.03181820e+01, 9.98863602e+00, 9.64772701e+00, 9.17045498e+00, + 1.29090910e+01, 2.15113640e+01, 1.72045460e+01, 1.00681820e+01, + 1.03295450e+01, 1.11818180e+01, 1.23409090e+01, 1.10340910e+01, + 1.72840900e+01, 3.88522720e+01, 2.80568180e+01, 1.20454550e+01, + 9.29545498e+00, 8.46590900e+00, 9.63636398e+00, 8.42045498e+00, + 1.35681820e+01, 4.72159081e+01, 4.66250000e+01, 1.48522730e+01, + 8.18181801e+00, 5.57954550e+00, 6.14772749e+00, 5.87500000e+00, + 7.82954550e+00, 4.11363640e+01, 6.21022720e+01, 1.97954540e+01, + 1.17045450e+00, 1.09090912e+00, 5.79545438e-01, 5.90909064e-01, + 1.57954550e+00, 2.26136374e+00, 1.63636363e+00, 1.04545450e+00, + 1.44318187e+00, 1.38636363e+00, 9.31818187e-01, 9.20454562e-01, + 2.07954550e+00, 3.93181825e+00, 2.51136374e+00, 1.20454550e+00, + 1.44318187e+00, 1.01136363e+00, 9.65909064e-01, 1., + 1.88636363e+00, 4.03409100e+00, 4.60227251e+00, 1.98863637e+00, + 1.92045450e+00, 5.90909064e-01, 5.90909064e-01, 9.65909064e-01, + 1.35227275e+00, 4.12500000e+00, 5.56818199e+00, 4.06818199e+00, + 1.36086960e+01, 1.12753620e+01, 1.05362320e+01, 1.81449280e+01, + 4.00434799e+01, 3.83768120e+01, 2.14057980e+01, 1.23623190e+01, + 2.69565225e+00, 2.65217400e+00, 2.73913050e+00, 2.74202900e+01, + 1.01536232e+02, 4.70579720e+01, 1.05217390e+01, 2.89855075e+00, + 8.39130402e+00, 8.23188400e+00, 1.95652175e+00, 2.30869560e+01, + 6.78840561e+01, 1.74347820e+01, 3.15942025e+00, 1.94202900e+00, + 1.00521736e+02, 4.84492760e+01, 2.37681150e+00, 8.02898598e+00, + 4.25362320e+01, 1.54782610e+01, 2.95652175e+00, 4.14492750e+00, + 1.38840580e+01, 1.36666670e+01, 2.04202900e+01, 5.36666679e+01, + 5.35362320e+01, 2.44492760e+01, 1.30724640e+01, 1.12753620e+01, + 2.46376801e+00, 2.84057975e+00, 9.57971001e+00, 8.93623199e+01, + 1.13652176e+02, 1.83188400e+01, 2.42028975e+00, 1.75362325e+00, + 6.75362301e+00, 2.40579700e+00, 6.63768101e+00, 5.48115959e+01, + 7.37681122e+01, 9.39130402e+00, 3.40579700e+00, 4.79710150e+00, + 1.14652176e+02, 1.67681160e+01, 2.97101450e+00, 1.78405800e+01, + 4.43768120e+01, 6.34782600e+00, 5.46376801e+00, 3.50434799e+01, + 5.21739149e+00, 7.34782600e+00, 4.08840561e+01, 1.07014496e+02, + 5.77391319e+01, 1.70144920e+01, 8.21739101e+00, 6.20289850e+00, + 1.36231887e+00, 1., 2.25507240e+01, 1.08536232e+02, + 7.81449280e+01, 8.44927502e+00, 4.52173901e+00, 3.94202900e+00, + 1.66956520e+01, 3.69565225e+00, 1.68260860e+01, 5.57246361e+01, + 4.21449280e+01, 8.73913002e+00, 1.03768120e+01, 3.08260860e+01, + 1.18246376e+02, 4.01449299e+00, 3.55072474e+00, 3.36811600e+01, + 4.24347839e+01, 4.13043499e+00, 6.94202900e+00, 1.07188408e+02, + 5.65217376e-01, 3.52173924e+00, 3.59275360e+01, 7.98695679e+01, + 2.29275360e+01, 2.89855075e+00, 2.10144925e+00, 1.46376812e+00, + 1.36231887e+00, 1.75362325e+00, 1.65362320e+01, 5.94637680e+01, + 2.88985500e+01, 7., 1.45362320e+01, 1.63043480e+01, + 2.54782600e+01, 2.37681150e+00, 9.55072498e+00, 3.39710159e+01, + 1.75362320e+01, 6.79710150e+00, 2.31449280e+01, 1.07318840e+02, + 6.66086960e+01, 1.63768113e+00, 3.10144925e+00, 7.74927521e+01, + 3.94057961e+01, 2.57971025e+00, 7.49275351e+00, 1.19623192e+02, + 2.87179494e+00, 4.48717928e+00, 1.22564106e+01, 5.34358978e+01, + 1.97179489e+01, 4.53846169e+00, 3.56410265e+00, 2.92307687e+00, + 2.07692313e+00, 3.43589735e+00, 4.13333321e+01, 1.12846153e+02, + 1.73589745e+01, 2.84615374e+00, 2.92307687e+00, 4.97435904e+00, + 1.79487181e+00, 2.61538458e+00, 9.40769196e+01, 1.19923080e+02, + 4.74358988e+00, 1.46153843e+00, 4.76923084e+00, 7.12820530e+00, + 1.35897434e+00, 2.66666675e+00, 1.08692307e+02, 6.57692337e+01, + 1.28205132e+00, 1.15384614e+00, 8.69230747e+00, 9.76923084e+00, + 2.20512819e+00, 2.02564096e+00, 1.37692308e+01, 1.16692307e+02, + 5.24615402e+01, 3.28205132e+00, 1.71794868e+00, 5.15384626e+00, + 2.87179494e+00, 1.46153843e+00, 3.78461533e+01, 133., + 2.81538467e+01, 1.30769229e+00, 2.76923084e+00, 1.22564106e+01, + 1.06153851e+01, 2.30769229e+00, 6.58461533e+01, 1.12410255e+02, + 1.35897434e+00, 3.33333343e-01, 6.05128193e+00, 4.20769234e+01, + 7.41025639e+00, 1.82051277e+00, 3.78205147e+01, 24., + 3.07692319e-01, 1.53846160e-01, 2.90769234e+01, 7.49230804e+01, + 3.10256410e+00, 8.20512831e-01, 4.17948723e+00, 1.31948715e+02, + 1.00384613e+02, 2.97435904e+00, 1.30769229e+00, 9.10256386e+00, + 1.77179489e+01, 2.71794868e+00, 7.61538458e+00, 1.18179489e+02, + 4.27179489e+01, 3.07692319e-01, 1., 2.56923084e+01, + 4.64358978e+01, 2.43589735e+00, 4.71794891e+00, 2.09743595e+01, + 2.46153855e+00, 2.82051295e-01, 7.17948723e+00, 1.05948715e+02, + 2.42051277e+01, 2.51282048e+00, 4.61538458e+00, 8.79487133e+00, + 1.76923072e+00, 4.87179488e-01, 2.23076916e+01, 9.40769196e+01, + 4.43589735e+00, 9.23076928e-01, 1.17948723e+00, 9.34102554e+01, + 1.17512817e+02, 1.92307687e+00, 5.12820542e-01, 3.89743590e+00, + 5.33589745e+01, 3.17948723e+00, 1.43589747e+00, 2.57948723e+01, + 2.34871788e+01, 4.61538464e-01, 7.69230783e-01, 3.48205147e+01, + 7.39487152e+01, 4.69230747e+00, 1.92307687e+00, 12., + 6.64102554e+00, 6.92307711e-01, 2.84615374e+00, 7.03333359e+01, + 3.07692299e+01, 7.43589735e+00, 3.20512819e+00, 4.94871807e+00, + 2.20512819e+00, 8.20512831e-01, 6.23076916e+00, 4.20512810e+01, + 1.15151520e+01, 5.31818199e+00, 8.66666698e+00, 1.77575760e+01, + 7.53030300e+00, 2.69545460e+01, 1.05030304e+02, 5.62727280e+01, + 1.68181813e+00, 2.21212125e+00, 6.68181801e+00, 9.10606098e+00, + 1.16969700e+01, 7.23181839e+01, 1.16136360e+02, 2.44242420e+01, + 9.09090936e-01, 1.28787875e+00, 3.75757575e+00, 2.33333325e+00, + 1.49393940e+01, 1.08666664e+02, 9.24696960e+01, 5.80303049e+00, + 4.71212101e+00, 7.62121201e+00, 5.28787899e+00, 2.12121201e+00, + 1.72575760e+01, 8.09242401e+01, 4.36363640e+01, 3.10606050e+00, + 3.15757580e+01, 1.92878780e+01, 1.97424240e+01, 1.72727280e+01, + 1.68939400e+01, 2.98181820e+01, 6.79242401e+01, 6.30909081e+01, + 1.22727270e+01, 1.26212120e+01, 1.82424240e+01, 2.03636360e+01, + 2.34393940e+01, 7.33787842e+01, 8.95303040e+01, 3.31818199e+01, + 6.72727251e+00, 6.15151501e+00, 8.93939400e+00, 1.20606060e+01, + 4.17424240e+01, 1.10681816e+02, 8.55757599e+01, 1.75000000e+01, + 1.40909088e+00, 1.95454550e+00, 2.92424250e+00, 8.78787899e+00, + 6.09696960e+01, 1.11727272e+02, 4.83939400e+01, 3.83333325e+00, + 3.52424240e+01, 3.95909081e+01, 3.21666679e+01, 23., + 1.51060610e+01, 1.57121210e+01, 1.75000000e+01, 2.44242420e+01, + 2.45909100e+01, 2.95757580e+01, 3.84393921e+01, 2.94242420e+01, + 2.02121220e+01, 2.47121220e+01, 2.85757580e+01, 2.71060600e+01, + 2.26818180e+01, 2.25151520e+01, 3.28333321e+01, 5.29090919e+01, + 7.24848480e+01, 5.42424240e+01, 3.99545441e+01, 3.21818199e+01, + 4.24242401e+00, 4.34848499e+00, 8., 4.08181801e+01, + 9.25757599e+01, 6.90303040e+01, 2.55303040e+01, 6.80303049e+00, + 2.02272720e+01, 5.40454559e+01, 3.31818199e+01, 1.03484850e+01, + 7.46969700e+00, 6.53030300e+00, 5.66666651e+00, 7.33333349e+00, + 1.41515150e+01, 3.25303040e+01, 5.08939400e+01, 2.83787880e+01, + 1.34545450e+01, 6.33333349e+00, 9.92424202e+00, 1.13787880e+01, + 1.10454550e+01, 2.03484840e+01, 4.53484840e+01, 6.84545441e+01, + 4.10909081e+01, 1.05151520e+01, 9.06060600e+00, 1.10757580e+01, + 7.75757599e+00, 6.43939400e+00, 1.62878780e+01, 6.45757599e+01, + 5.31969681e+01, 1.64696960e+01, 8.16666698e+00, 1.41363640e+01, + 4.90384626e+00, 5.69230747e+00, 3.82692313e+00, 3.80769229e+00, + 9.03846169e+00, 1.44038458e+01, 8.46153831e+00, 5.92307711e+00, + 1.17346153e+02, 7.59038467e+01, 8.28846169e+00, 8.19230747e+00, + 43., 5.35384598e+01, 9.80769253e+00, 1.28076925e+01, + 1.39750000e+02, 1.20942307e+02, 1.50192308e+01, 1.84615383e+01, + 5.87115402e+01, 5.56346169e+01, 1.03846149e+01, 2.38461533e+01, + 1.63269234e+01, 2.61730766e+01, 2.27115383e+01, 2.10192299e+01, + 2.72500000e+01, 2.90384617e+01, 1.71923084e+01, 9.78846169e+00, + 6.88461542e+00, 6.40384626e+00, 5.80769253e+00, 3.73076916e+00, + 5.34615374e+00, 1.33269234e+01, 1.19230766e+01, 7.38461542e+00, + 3.95000000e+01, 5.23461533e+01, 6.63461542e+00, 7.51923084e+00, + 3.35769234e+01, 6.32884598e+01, 2.33269234e+01, 1.02500000e+01, + 1.13865387e+02, 1.51980774e+02, 5.93846169e+01, 6.30769253e+00, + 3.72884598e+01, 9.06538467e+01, 2.46346149e+01, 6.55769253e+00, + 1.97692299e+01, 1.27384613e+02, 1.14865387e+02, 2.27307701e+01, + 2.11153851e+01, 7.32115402e+01, 4.46538467e+01, 9.28846169e+00, + 4.73076916e+00, 3.57692313e+00, 3.65384626e+00, 3.07692313e+00, + 2.67307687e+00, 5.71153831e+00, 7.19230747e+00, 5.44230747e+00, + 9.36538506e+00, 8.01923084e+00, 6.48076916e+00, 5.75000000e+00, + 1.14423075e+01, 2.43076916e+01, 1.49807692e+01, 9.84615421e+00, + 1.15000000e+01, 7.98269196e+01, 3.06730766e+01, 3.92307687e+00, + 1.83653851e+01, 6.10769234e+01, 2.91538467e+01, 7.61538458e+00, + 9.59615421e+00, 1.04846153e+02, 1.26211540e+02, 1.83461533e+01, + 9.17307663e+00, 3.68076935e+01, 3.30769234e+01, 7.65384626e+00, + 6.34615362e-01, 3.26923072e-01, 4.80769217e-01, 6.92307711e-01, + 8.26923072e-01, 1.51923072e+00, 7.30769217e-01, 5.76923072e-01, + 2.38461542e+00, 1.67307687e+00, 2.05769229e+00, 2.13461542e+00, + 1.57692313e+00, 2.36538458e+00, 2.03846145e+00, 1.96153843e+00, + 1.92307687e+00, 1.57692313e+00, 1.71153843e+00, 1.84615386e+00, + 3.82692313e+00, 8., 4.53846169e+00, 2.01923084e+00, + 1.71153843e+00, 4.53846169e+00, 3.26923084e+00, 1.03846157e+00, + 4.82692289e+00, 1.39615383e+01, 7.59615374e+00, 1.61538458e+00, + 1.07581398e+02, 3.38837204e+01, 1.26279068e+01, 1.77674427e+01, + 6.95348835e+00, 2.44186044e+00, 7.30232573e+00, 8.97674408e+01, + 5.27441864e+01, 3.86976738e+01, 1.72325573e+01, 1.08604650e+01, + 9.06976700e+00, 8.67441845e+00, 1.79069767e+01, 5.60930214e+01, + 3.07906971e+01, 2.58372097e+01, 2.02790699e+01, 8.02325535e+00, + 6.39534903e+00, 1.27209301e+01, 2.80465107e+01, 3.09302330e+01, + 3.78372078e+01, 2.96046505e+01, 1.22093019e+01, 6.97674417e+00, + 1.91627903e+01, 5.03255806e+01, 3.52093010e+01, 2.65813961e+01, + 1.12069771e+02, 6.59302292e+01, 2.38372097e+01, 1.11395350e+01, + 7.39534903e+00, 2.18604660e+00, 5.48837233e+00, 5.19302330e+01, + 7.58837204e+01, 8.76046524e+01, 4.22790680e+01, 1.28372097e+01, + 8.11627865e+00, 7.48837233e+00, 1.13255816e+01, 3.31860466e+01, + 4.49534874e+01, 6.32093010e+01, 5.07441864e+01, 1.62558136e+01, + 1.31162786e+01, 1.72558136e+01, 2.18837204e+01, 3.20232544e+01, + 5.92325592e+01, 5.21860466e+01, 4.26511612e+01, 2.88837204e+01, + 2.38372097e+01, 2.09302330e+01, 1.91627903e+01, 3.40232544e+01, + 9.97906952e+01, 7.40465088e+01, 1.75116272e+01, 9.79069805e+00, + 1.39069767e+01, 9.81395340e+00, 6.95348835e+00, 2.16744194e+01, + 5.20697670e+01, 1.01348839e+02, 6.41627884e+01, 1.70232563e+01, + 8.90697670e+00, 7.72093010e+00, 9.13953495e+00, 1.43953485e+01, + 3.72790680e+01, 9.08372116e+01, 8.43953476e+01, 2.06976738e+01, + 5.51162767e+00, 5.90697670e+00, 8.20930195e+00, 1.63023262e+01, + 4.69069786e+01, 5.80930214e+01, 6.57906952e+01, 4.93023262e+01, + 1.49767447e+01, 2.97674417e+00, 3.88372087e+00, 1.59302330e+01, + 7.17674408e+01, 9.42558136e+01, 1.34883718e+01, 4., + 1.18837214e+01, 1.75348835e+01, 1.28837214e+01, 7.53488350e+00, + 2.19767437e+01, 6.86976776e+01, 3.91162796e+01, 7.69767427e+00, + 6.76744175e+00, 1.47906981e+01, 2.75813961e+01, 1.75581398e+01, + 2.26744194e+01, 5.09069786e+01, 6.05348854e+01, 1.77674427e+01, + 2.46511626e+00, 3.46511626e+00, 1.62325573e+01, 2.85581398e+01, + 2.32790699e+01, 2.47906971e+01, 5.53023262e+01, 6.36046524e+01, + 7.02325583e+00, 1.58139539e+00, 5.30232573e+00, 2.17906971e+01, + 5.42592573e+00, 8.94444466e+00, 1.15555553e+01, 4.59259272e+00, + 5.22222233e+00, 2.72037029e+01, 3.65000000e+01, 7.50000000e+00, + 5.70370388e+00, 1.21296301e+01, 1.86666660e+01, 8.88888931e+00, + 8.37036991e+00, 3.89814796e+01, 4.97407417e+01, 13., + 2.92592597e+00, 7.14814806e+00, 2.99444447e+01, 1.19074078e+01, + 4.12962961e+00, 1.49074078e+01, 8.39814835e+01, 1.93703709e+01, + 1.37037039e+00, 3.48148155e+00, 2.67962971e+01, 9.55555534e+00, + 2.62962961e+00, 6.74074078e+00, 8.70740738e+01, 1.91111107e+01, + 1.72592602e+01, 1.49814816e+01, 2.00925922e+01, 1.24814816e+01, + 8.64814854e+00, 1.82777786e+01, 4.72777786e+01, 3.46481476e+01, + 2.32962971e+01, 2.06851845e+01, 8.09259262e+01, 3.48333321e+01, + 1.18148146e+01, 2.56666660e+01, 1.05185188e+02, 5.97407417e+01, + 5.44444466e+00, 1.12962961e+01, 1.26518517e+02, 3.95555573e+01, + 2.96296287e+00, 1.27037039e+01, 1.29759262e+02, 4.86666679e+01, + 6.11111104e-01, 4.70370388e+00, 1.26703705e+02, 3.65000000e+01, + 2., 10., 1.22611115e+02, 2.69259262e+01, 9.59259224e+00, + 1.41111107e+01, 78., 5.18703690e+01, 1.23703699e+01, + 5.75925922e+00, 2.42407398e+01, 2.05370369e+01, 1.11111107e+01, + 1.44629631e+01, 1.19500000e+02, 8.75555573e+01, 2.17592602e+01, + 8.44444466e+00, 4.96111107e+01, 3.00925922e+01, 2.27777767e+00, + 6.70370388e+00, 1.30555557e+02, 5.23148155e+01, 5.05555534e+00, + 9.37036991e+00, 7.60925903e+01, 2.47777786e+01, 1.66666663e+00, + 5.03703690e+00, 1.20055557e+02, 2.57222214e+01, 1.37037039e+00, + 6.38888884e+00, 6.89629593e+01, 1.57037039e+01, 1.31481481e+00, + 1.59259260e+00, 2.90185184e+01, 1.81666660e+01, 3.61111116e+00, + 4.98148155e+00, 3.15370369e+01, 1.13888893e+01, 1.61111116e+00, + 1.66666663e+00, 8.94444466e+00, 1.30925922e+01, 5.96296310e+00, + 5.92592573e+00, 3.39074059e+01, 1.69259262e+01, 1.75925922e+00, + 2., 4.90740728e+00, 4.90740728e+00, 3.77777767e+00, + 5.87037039e+00, 2.95555553e+01, 1.05555553e+01, 1.46296299e+00, + 2.48148155e+00, 4.92592573e+00, 3.59259248e+00, 2.48148155e+00, + 4.57407427e+00, 2.12407398e+01, 5.24074078e+00, 7.49532700e+00, + 7.29906559e+00, 7.17756987e+00, 6.79439259e+00, 7.53271008e+00, + 8.37383175e+00, 7.12149525e+00, 6.86915874e+00, 1.75794392e+01, + 2.69439259e+01, 1.48971958e+01, 8.14953232e+00, 1.96355133e+01, + 3.90747681e+01, 1.69065418e+01, 1.66728973e+01, 1.19953270e+02, + 1.43551407e+02, 1.21028042e+01, 4.56074762e+00, 4.50934563e+01, + 8.52523346e+01, 1.29252338e+01, 1.14485979e+01, 1.12476639e+02, + 1.41252335e+02, 4.16822433e+00, 4.52336454e+00, 7.70373840e+01, + 1.20813087e+02, 6.65420580e+00, 6., 9.65420532e+00, + 8.73831749e+00, 9.53271008e+00, 9.23364449e+00, 6.92523384e+00, + 6.83177567e+00, 9.17757034e+00, 9.46728992e+00, 1.86074772e+01, + 1.67943916e+01, 1.62523365e+01, 1.19906540e+01, 1.44299068e+01, + 1.97757015e+01, 1.94299068e+01, 2.02429905e+01, 5.66261673e+01, + 8.39345779e+01, 1.58878508e+01, 8.97196293e+00, 4.16822433e+01, + 8.11495361e+01, 1.89532719e+01, 1.70093460e+01, 1.44065414e+02, + 1.50616821e+02, 6.85046721e+00, 4.90654182e+00, 5.21308403e+01, + 9.41495361e+01, 9.13084126e+00, 8.57943916e+00, 9.24299049e+00, + 8.14018726e+00, 9.20560741e+00, 9.26168251e+00, 6.76635504e+00, + 7.12149525e+00, 8.55140209e+00, 9.41121483e+00, 1.69345798e+01, + 1.50560751e+01, 1.44112148e+01, 1.23457947e+01, 1.17009344e+01, + 1.37850466e+01, 1.79532719e+01, 1.75514011e+01, 2.15607471e+01, + 2.02616825e+01, 1.71121502e+01, 1.28224297e+01, 2.17383175e+01, + 3.11869164e+01, 1.90186920e+01, 2.08504677e+01, 9.54953308e+01, + 1.41953278e+02, 1.43551397e+01, 6.58878517e+00, 3.65887833e+01, + 6.88785019e+01, 1.44299068e+01, 1.14485979e+01, 5.13084126e+00, + 5.04672909e+00, 5.94392538e+00, 5.67289734e+00, 3.69158888e+00, + 4.28037405e+00, 5.72897196e+00, 5.71962595e+00, 1.15607481e+01, + 1.00934582e+01, 9.65420532e+00, 8.65420532e+00, 7.09345818e+00, + 9.70093441e+00, 1.18598127e+01, 1.09439249e+01, 1.33364487e+01, + 1.12429905e+01, 1.09719629e+01, 8.26168251e+00, 1.05140190e+01, + 1.13177567e+01, 1.22242994e+01, 1.45700932e+01, 3.04579449e+01, + 3.19906540e+01, 8.38317776e+00, 6.05607462e+00, 1.93364487e+01, + 2.78971958e+01, 1.03084116e+01, 1.54392519e+01, 2.05507240e+01, + 3.86086960e+01, 1.98115940e+01, 3.66666675e+00, 8.52173901e+00, + 1.07681160e+01, 2.49275351e+00, 4.50724649e+00, 1.99275360e+01, + 6.43043442e+01, 5.04202881e+01, 1.01014490e+01, 4.31884050e+00, + 3.01449275e+00, 2.18840575e+00, 3.55072474e+00, 8.13043499e+00, + 3.58115959e+01, 6.85507278e+01, 3.34057961e+01, 9.50724602e+00, + 4.57971001e+00, 4.27536249e+00, 4.02898550e+00, 2.72463775e+00, + 1.03768120e+01, 4.50724640e+01, 5.16376801e+01, 1.38695650e+01, + 3.23188400e+00, 2.50724649e+00, 2.50724649e+00, 1.22753620e+01, + 4.44782600e+01, 2.01594200e+01, 5.49275351e+00, 1.86956520e+01, + 9.33188400e+01, 1.26811590e+01, 1.68115938e+00, 9.82608700e+00, + 44., 5.84492760e+01, 1.51739130e+01, 4.34782600e+00, + 1.90289860e+01, 5.47826099e+00, 1.31884062e+00, 3.43478251e+00, + 3.35942039e+01, 7.38985519e+01, 3.16811600e+01, 4.72463751e+00, + 1.91304350e+00, 9.42028999e-01, 6.95652187e-01, 8.84057999e-01, + 1.11304350e+01, 4.67681160e+01, 3.92753639e+01, 7.46376801e+00, + 1.76811600e+00, 1.57971013e+00, 1.24637675e+00, 5.78260851e+00, + 1.12565216e+02, 5.11159439e+01, 2., 6.07246399e+00, + 1.19086960e+02, 5.16086960e+01, 1.69565213e+00, 3.01449275e+00, + 5.67826080e+01, 5.72463760e+01, 6.50724649e+00, 5.07246399e+00, + 1.12434784e+02, 1.12434784e+02, 2., 2.21739125e+00, + 2.08695660e+01, 5.07246361e+01, 1.34637680e+01, 4.92753601e+00, + 5.20289841e+01, 1.14217392e+02, 7.49275351e+00, 1.31884062e+00, + 7.69565201e+00, 3.96811600e+01, 2.02028980e+01, 3.66666675e+00, + 7.97101450e+00, 1.04507248e+02, 3.50434799e+01, 1.24637675e+00, + 6.02898560e+01, 3.99565201e+01, 1.52173913e+00, 4., + 1.98405800e+01, 1.55217390e+01, 3.47826076e+00, 1.43478262e+00, + 8.76811600e+01, 1.08594200e+02, 2.49275351e+00, 2.24637675e+00, + 4.02318840e+01, 55., 4.26086950e+00, 1.26086962e+00, + 3.59130440e+01, 1.19463768e+02, 9.24637699e+00, 1.60869563e+00, + 3.51304359e+01, 1.03188408e+02, 7.72463751e+00, 1.31884062e+00, + 5.88405800e+00, 1.06840576e+02, 2.92608700e+01, 1.27536237e+00, + 8.89855099e+00, 8.79710159e+01, 1.89130440e+01, 3.94489784e+01, + 9.89795876e+00, 1.18979588e+01, 3.13469391e+01, 2.59387760e+01, + 7.79591846e+00, 1.40612249e+01, 6.64489822e+01, 2.27142849e+01, + 1.52244902e+01, 1.89183674e+01, 1.86530609e+01, 1.26938772e+01, + 1.29387751e+01, 1.84693871e+01, 2.77959175e+01, 2.29387760e+01, + 1.49795914e+01, 2.58571434e+01, 5.46734695e+01, 2.67959175e+01, + 1.39795914e+01, 15., 2.57346935e+01, 2.86122456e+01, + 8.91836739e+00, 2.33877544e+01, 1.07224487e+02, 8.93469391e+01, + 1.82653065e+01, 1.49387751e+01, 3.93673477e+01, 4.04693871e+01, + 5.34897957e+01, 3.01224499e+01, 1.66530609e+01, 2.42448978e+01, + 3.06938782e+01, 2.38367348e+01, 3.11632652e+01, 1.60816326e+01, + 1.71632652e+01, 5.67142868e+01, 7.03265305e+01, 1.97959175e+01, + 2.16530609e+01, 3.18775501e+01, 3.00816326e+01, 1.33877554e+01, + 6.06122446e+00, 7.00612259e+01, 1.32979599e+02, 2.63061218e+01, + 6.89795923e+00, 2.94285717e+01, 5.77142868e+01, 1.81224499e+01, + 3.26530623e+00, 3.42857132e+01, 1.24163269e+02, 3.85714302e+01, + 4.08163261e+00, 1.93061218e+01, 7.03061218e+01, 8.26530647e+00, + 9.54285736e+01, 1.14204079e+02, 3.76122437e+01, 1.27551022e+01, + 2.54897957e+01, 2.30816326e+01, 10., 4.95918369e+00, + 2.97142849e+01, 1.32469391e+02, 1.17265305e+02, 7.44897938e+00, + 1.11836739e+01, 3.83673477e+01, 3.23877563e+01, 7.61224508e+00, + 2.48979592e+00, 7.76326523e+01, 1.25877548e+02, 7.87755108e+00, + 2.97959185e+00, 4.26938782e+01, 7.29387741e+01, 1.05918369e+01, + 4.02040815e+00, 1.66734695e+01, 3.23265305e+01, 8.04081631e+00, + 4.06122446e+00, 19., 4.43469391e+01, 1.20408165e+00, + 6.85714293e+00, 1.82857151e+01, 6.97959185e+00, 2.87755108e+00, + 8.63265324e+00, 1.36530609e+01, 7.20408154e+00, 2.67346931e+00, + 3.73469377e+00, 2.18775501e+01, 9.04081631e+00, 9.38775539e-01, + 3.48979592e+00, 1.78367348e+01, 1.81428566e+01, 3.57142854e+00, + 1.87755108e+00, 4.85714293e+00, 5.16326523e+00, 1.87755108e+00, + 1.46938777e+00, 1.11428576e+01, 1.92448978e+01, 2.06122446e+00, + 2.14285707e+00, 2.87755108e+00, 2.89795923e+00, 2.59183669e+00, + 1.81632650e+00, 2.79591846e+00, 4.40816307e+00, 2.13857136e+01, + 1.40857143e+01, 2.61428566e+01, 4.92142868e+01, 5.65571442e+01, + 6.15142860e+01, 6.03571434e+01, 4.93714294e+01, 2.33428574e+01, + 2.31428566e+01, 3.22999992e+01, 4.40142860e+01, 6.78857117e+01, + 8.44428558e+01, 5.93285713e+01, 3.43571434e+01, 1.67571430e+01, + 2.25428562e+01, 3.21714287e+01, 3.78714294e+01, 4.70428581e+01, + 6.56142883e+01, 4.22000008e+01, 1.96857147e+01, 2.01428580e+00, + 3.98571420e+00, 5.42857122e+00, 5.24285698e+00, 5.80000019e+00, + 7.18571424e+00, 5.08571434e+00, 2.65714288e+00, 2.21428566e+01, + 2.77714291e+01, 4.10571442e+01, 5.32714272e+01, 7.71571426e+01, + 7.58714294e+01, 4.03714294e+01, 2.36571426e+01, 3.05285721e+01, + 3.86571426e+01, 5.78571434e+01, 7.83285751e+01, 9.13857117e+01, + 8.64142838e+01, 5.33571434e+01, 2.91428566e+01, 2.49714279e+01, + 2.85142860e+01, 4.90571442e+01, 7.14285736e+01, 7.23714294e+01, + 6.71857147e+01, 5.02857132e+01, 2.53571434e+01, 2.64285707e+00, + 4.12857151e+00, 8.34285736e+00, 8.10000038e+00, 8.04285717e+00, + 9.15714264e+00, 7.51428556e+00, 3.12857151e+00, 2.23428574e+01, + 2.99857140e+01, 4.45142860e+01, 5.74142876e+01, 7.91857147e+01, + 8.00714264e+01, 4.16142845e+01, 2.13571434e+01, 3.77999992e+01, + 3.57714272e+01, 5.72999992e+01, 7.80857162e+01, 9.13000031e+01, + 8.51142883e+01, 7.06142883e+01, 4.40428581e+01, 3.36571426e+01, + 2.51857147e+01, 3.77571411e+01, 5.22714272e+01, 6.12285728e+01, + 7.10714264e+01, 6.98285751e+01, 3.83857155e+01, 2.91428566e+00, + 3.18571424e+00, 5.81428576e+00, 5.48571444e+00, 6.07142878e+00, + 1.15714283e+01, 9.92857170e+00, 3.87142849e+00, 1.34714289e+01, + 1.37428570e+01, 2.12857151e+01, 2.72428570e+01, 3.96428566e+01, + 4.00571442e+01, 2.45714283e+01, 1.47428570e+01, 1.90571423e+01, + 1.62428570e+01, 2.03999996e+01, 2.82714291e+01, 4.34000015e+01, + 5.42428589e+01, 4.00857124e+01, 2.54714279e+01, 1.49857140e+01, + 1.46857147e+01, 1.47571430e+01, 1.67999992e+01, 2.91857147e+01, + 3.90714302e+01, 3.21571426e+01, 1.71285706e+01, 1.38571429e+00, + 1.67142856e+00, 2.58571434e+00, 2.04285717e+00, 3.20000005e+00, + 4.85714293e+00, 3.52857137e+00, 1.61428571e+00, 1.93888893e+01, + 1.65277786e+01, 1.37222223e+01, 6.05555534e+00, 2.27777767e+00, + 3.80555558e+00, 1.42500000e+01, 2.43333340e+01, 3.88055573e+01, + 4.15555573e+01, 1.80833340e+01, 5.22222233e+00, 5.08333349e+00, + 3.01388893e+01, 4.20555573e+01, 2.76111107e+01, 2.68333340e+01, + 3.18888893e+01, 7.55555534e+00, 4.02777767e+00, 5.04166679e+01, + 116., 4.39722214e+01, 1.19722223e+01, 8.47222233e+00, + 2.37500000e+01, 1.88888884e+00, 1.63888884e+00, 9.92777786e+01, + 1.21444443e+02, 7.50000000e+00, 7.77777791e-01, 3.19444447e+01, + 3.80555573e+01, 2.26666660e+01, 8.97222233e+00, 3.58333325e+00, + 6.33333349e+00, 9.44444466e+00, 1.61944447e+01, 5.44722214e+01, + 6.54166641e+01, 3.79722214e+01, 1.84444447e+01, 9.86111069e+00, + 1.22777777e+01, 1.49444447e+01, 2.66111107e+01, 5.96388893e+01, + 7.21388855e+01, 3.54166679e+01, 3.10555553e+01, 7.18611145e+01, + 5.83611107e+01, 1.46388893e+01, 1.69444447e+01, 1.25833330e+01, + 1.97500000e+01, 9.55555534e+00, 2.29166660e+01, 1.33222229e+02, + 9.14166641e+01, 2.83333325e+00, 1.66666663e+00, 2.42777786e+01, + 5.63333321e+01, 4.60277786e+01, 1.39166670e+01, 3.52777767e+00, + 3.25000000e+00, 4.52777767e+00, 8.75000000e+00, 3.09722214e+01, + 6.38055573e+01, 6.76111145e+01, 2.87222214e+01, 6.88888884e+00, + 4.30555534e+00, 4.75000000e+00, 1.24444447e+01, 3.95555573e+01, + 6.60833359e+01, 5.74444427e+01, 5.74166679e+01, 3.98888893e+01, + 5.88888884e+00, 2.83333325e+00, 9., 1.28611107e+01, + 1.66111107e+01, 1.61388893e+01, 9.06666641e+01, 1.26416664e+02, + 14., 5.55555582e-01, 1., 1.56388893e+01, 4.29722214e+01, + 2.74722214e+01, 8.27777767e+00, 4.11111116e+00, 6.36111116e+00, + 1.08333330e+01, 1.10833330e+01, 2.29444447e+01, 2.84166660e+01, + 4.18611107e+01, 2.12222214e+01, 5.08333349e+00, 4.30555534e+00, + 6.61111116e+00, 2.18333340e+01, 2.56388893e+01, 2.04444447e+01, + 3.61666679e+01, 7.51388855e+01, 1.77777786e+01, 1.02777779e+00, + 1.97222221e+00, 1.37777777e+01, 9.27777767e+00, 5.83333349e+00, + 1.01111107e+01, 1.16777779e+02, 7.86388855e+01, 5.00000000e-01, + 3.05555552e-01, 3.77777767e+00, 9.70588207e+00, 1.55764704e+01, + 6.97647047e+00, 5.91764688e+00, 4.95294094e+00, 3.42352939e+00, + 2.69411755e+00, 4.04705906e+00, 6.59999990e+00, 7.34117651e+00, + 6.15294123e+00, 6.62352943e+00, 7.50588226e+00, 6.02352953e+00, + 5.27058840e+00, 7., 4.21176481e+00, 3.74117637e+00, + 4.82352924e+00, 6.51764727e+00, 5.50588226e+00, 4.89411783e+00, + 5.36470604e+00, 6.69411755e+00, 1.01176476e+00, 1.03529418e+00, + 1.45882356e+00, 1.97647059e+00, 2.02352953e+00, 1.79999995e+00, + 1.78823531e+00, 1.64705884e+00, 2.60352936e+01, 7.15411758e+01, + 2.94941177e+01, 1.03411760e+01, 9.36470604e+00, 2.46823521e+01, + 1.06000004e+01, 6.45882368e+00, 2.07882347e+01, 3.37882347e+01, + 2.19058819e+01, 1.41764708e+01, 1.16705885e+01, 9.71764660e+00, + 1.11529408e+01, 1.43176470e+01, 1.12588234e+01, 1.19411764e+01, + 1.28352938e+01, 1.45058823e+01, 1.20470591e+01, 1.01647062e+01, + 1.13529415e+01, 1.35647058e+01, 3.30588245e+00, 3.28235292e+00, + 3.55294108e+00, 4.88235283e+00, 5.23529434e+00, 4.37647057e+00, + 5.34117651e+00, 5.30588245e+00, 2.21058826e+01, 1.25482353e+02, + 4.30588226e+01, 7.25882339e+00, 2.31411762e+01, 1.80952942e+02, + 5.41764717e+01, 4.54117632e+00, 3.18235302e+01, 1.11588234e+02, + 4.92588234e+01, 1.21764708e+01, 1.01411762e+01, 5.67294121e+01, + 9.42352962e+00, 7.19999981e+00, 1.93764706e+01, 3.90235291e+01, + 2.67294121e+01, 1.37294121e+01, 8.07058811e+00, 6.56470585e+00, + 8.54117680e+00, 1.05176468e+01, 5.18823528e+00, 6.74117661e+00, + 6.19999981e+00, 5.51764727e+00, 4.11764717e+00, 3.83529401e+00, + 5.12941170e+00, 5.25882339e+00, 3.93058815e+01, 1.66823532e+02, + 3.59058838e+01, 4.34117651e+00, 4.88117638e+01, 1.79352936e+02, + 3.31058807e+01, 3.75294113e+00, 3.41764717e+01, 1.25576469e+02, + 3.25411758e+01, 8.39999962e+00, 6.80823517e+01, 1.78635300e+02, + 2.55294113e+01, 6.51764727e+00, 2.79294109e+01, 7.74117661e+01, + 3.02470589e+01, 6.16470575e+00, 8.32941151e+00, 2.57999992e+01, + 1.58470592e+01, 8.69411755e+00, 6.36470604e+00, 1.55176468e+01, + 9.19999981e+00, 3.31764698e+00, 1.77647054e+00, 4.63529396e+00, + 3.78823519e+00, 2.97647047e+00, 2.54354839e+01, 5.36612892e+01, + 2.88387089e+01, 2.07419357e+01, 2.13064518e+01, 2.32580643e+01, + 9.85483837e+00, 1.06935482e+01, 1.92096767e+01, 2.73064518e+01, + 2.64193554e+01, 2.46774197e+01, 2.31612911e+01, 1.79354839e+01, + 1.36451616e+01, 1.24677420e+01, 1.10322580e+01, 1.52580643e+01, + 2.08709679e+01, 2.40806446e+01, 2.44032249e+01, 2.01612911e+01, + 1.34032259e+01, 9.74193573e+00, 6.32258081e+00, 8.45161247e+00, + 1.41290321e+01, 1.65645161e+01, 1.35645161e+01, 1.09032259e+01, + 8.66129017e+00, 6.33870983e+00, 3.57903214e+01, 1.19451614e+02, + 4.87258072e+01, 1.89032249e+01, 2.69516125e+01, 7.56935501e+01, + 1.66774197e+01, 1.04516125e+01, 2.99193554e+01, 7.91290359e+01, + 4.65483856e+01, 3.12258072e+01, 2.43870964e+01, 3.81935501e+01, + 1.64354839e+01, 1.38709679e+01, 1.91612911e+01, 3.28064499e+01, + 3.45161285e+01, 3.41935501e+01, 2.79032249e+01, 2.33709679e+01, + 1.46129036e+01, 1.43709679e+01, 9.53225803e+00, 1.24838705e+01, + 1.68548393e+01, 1.91774197e+01, 2.06774197e+01, 2.04032249e+01, + 1.13064518e+01, 7.59677410e+00, 2.19677410e+01, 1.28225800e+02, + 4.44032249e+01, 9.72580624e+00, 2.99354839e+01, 1.23629036e+02, + 2.63064518e+01, 5.80645180e+00, 3.48064499e+01, 1.24370964e+02, + 6.01290321e+01, 2.69354839e+01, 2.41774197e+01, 8.12580643e+01, + 2.09516125e+01, 9.35483837e+00, 2.84677410e+01, 7.22741928e+01, + 4.77258072e+01, 3.42580643e+01, 2.24032249e+01, 2.85483875e+01, + 1.35967741e+01, 1.55000000e+01, 1.29838705e+01, 2.14193554e+01, + 2.34838715e+01, 2.10645161e+01, 1.68548393e+01, 1.55483875e+01, + 8.96774197e+00, 7.91935492e+00, 1.20806456e+01, 1.00209679e+02, + 3.71290321e+01, 1.17903223e+01, 2.02903233e+01, 1.20725807e+02, + 2.99032249e+01, 4.11290312e+00, 2.04032249e+01, 1.22306450e+02, + 4.60806465e+01, 15., 2.73064518e+01, 1.12096771e+02, + 3.16935482e+01, 6.96774197e+00, 2.96935482e+01, 1.03935486e+02, + 4.42419357e+01, 2.14838715e+01, 1.83548393e+01, 4.95806465e+01, + 1.84677410e+01, 1.64032249e+01, 1.36290321e+01, 3.08548393e+01, + 2.30483875e+01, 1.55483875e+01, 1.05483875e+01, 1.84516125e+01, + 8.87096786e+00, 8.50000000e+00, 2.07931042e+01, 1.50000000e+00, + 4.48275864e-01, 8.44827592e-01, 8.51724148e+00, 2.23275871e+01, + 1.66896553e+01, 2.77586198e+00, 1.47051727e+02, 1.10172415e+01, + 2.58620691e+00, 1.12068963e+00, 7.06896544e-01, 2.50000000e+00, + 1.18965521e+01, 2.30172405e+01, 1.00344826e+02, 1.39482756e+01, + 1.42241383e+01, 6.93103456e+00, 9.22413826e+00, 1.11206894e+01, + 1.28448277e+01, 2.26034489e+01, 6.12068987e+00, 8.46551704e+00, + 1.42413797e+01, 9.24137974e+00, 1.40172415e+01, 1.53103447e+01, + 1.04482756e+01, 6.39655161e+00, 1.81551723e+01, 1.89655173e+00, + 3.96551728e-01, 1.50000000e+00, 1.53275862e+01, 8.73448257e+01, + 1.26396553e+02, 1.37931032e+01, 1.47603455e+02, 1.15517244e+01, + 3.46551728e+00, 3.08620691e+00, 3.56896544e+00, 4.00172424e+01, + 1.30448273e+02, 9.15172424e+01, 1.06413795e+02, 1.58448277e+01, + 1.40517244e+01, 1.45000000e+01, 1.90689659e+01, 1.59482756e+01, + 3.05344830e+01, 5.33620682e+01, 1.06206894e+01, 1.33275862e+01, + 1.36034479e+01, 1.77758617e+01, 2.91379318e+01, 1.82068958e+01, + 12., 1.58275862e+01, 1.63275871e+01, 1.03275862e+01, + 2.94827580e+00, 4.89655161e+00, 9.41379356e+00, 3.43620682e+01, + 7.73275833e+01, 1.70344830e+01, 4.96206894e+01, 1.82586212e+01, + 7.50000000e+00, 1.10517244e+01, 1.41379309e+01, 3.72758636e+01, + 1.00637932e+02, 5.23103447e+01, 3.78275871e+01, 1.56206894e+01, + 1.40862064e+01, 2.37068958e+01, 2.59482765e+01, 1.99137936e+01, + 3.47586212e+01, 4.06551743e+01, 1.53103447e+01, 1.20344830e+01, + 9.91379356e+00, 2.59655170e+01, 2.86206894e+01, 1.84137936e+01, + 1.88103447e+01, 3.53965530e+01, 1.66034489e+01, 1.27241383e+01, + 4.87931013e+00, 4.98275852e+00, 1.01896553e+01, 1.32068968e+01, + 1.60689659e+01, 1.69655170e+01, 2.50517235e+01, 1.53620691e+01, + 1.02241383e+01, 1.68448277e+01, 1.73103447e+01, 1.51034479e+01, + 2.73448277e+01, 2.43448277e+01, 2.35517235e+01, 1.32068968e+01, + 1.43103447e+01, 2.88620682e+01, 2.56896553e+01, 1.85172405e+01, + 2.86724129e+01, 2.97758617e+01, 2.33620682e+01, 1.16379309e+01, + 10., 2.88965511e+01, 2.14310341e+01, 1.48275862e+01, + 2.17586212e+01, 4.13793106e+01, 5.84210539e+00, 9.64912295e-01, + 7.89473712e-01, 10., 2.78947372e+01, 2.15087719e+01, + 7.38596487e+00, 3.26315784e+00, 1.11315788e+02, 2.74912281e+01, + 1.59649122e+00, 8.26315784e+00, 3.41403503e+01, 1.48596487e+01, + 3.40350866e+00, 1.07894735e+01, 1.00052635e+02, 2.18596497e+01, + 1.73684216e+00, 9.08771896e+00, 1.12192986e+02, 2.83859653e+01, + 1.54385960e+00, 9.49122810e+00, 1.03859653e+01, 7., + 2.42105269e+00, 2.94736838e+00, 1.88947372e+01, 3.24561405e+00, + 1.84210527e+00, 3.85964918e+00, 4.05263138e+00, 8.59649122e-01, + 3.57894731e+00, 2.40350876e+01, 4.14736824e+01, 2.32807026e+01, + 6.94736862e+00, 2.85964918e+00, 1.24754387e+02, 8.38596535e+00, + 2.28070164e+00, 1.92456131e+01, 4.68947372e+01, 1.21228065e+01, + 6.26315784e+00, 6.32280693e+01, 1.11736839e+02, 9.43859673e+00, + 3.61403513e+00, 4.89824562e+01, 1.27052635e+02, 1.12105265e+01, + 3.96491218e+00, 4.47894745e+01, 1.56666670e+01, 8.52631569e+00, + 6.96491241e+00, 8.57894707e+00, 2.21403503e+01, 2.42105269e+00, + 3.87719297e+00, 7.33333349e+00, 7.87719297e+00, 1.26315784e+00, + 7.59649134e+00, 3.11929817e+01, 3.43859634e+01, 1.50877190e+01, + 9.92982483e+00, 19., 1.22210526e+02, 2.89473677e+00, + 3.35087729e+00, 6.01754379e+01, 5.78245621e+01, 6.33333349e+00, + 6.85964918e+00, 1.25333336e+02, 6.16666679e+01, 5.94736862e+00, + 4.71929836e+00, 1.06684212e+02, 1.24631577e+02, 5.96491241e+00, + 5.91228056e+00, 5.01228065e+01, 1.91403503e+01, 6.50877190e+00, + 4.54385948e+00, 5.42105246e+00, 7.85964918e+00, 1.89473689e+00, + 7.35087729e+00, 1.38421049e+01, 1.63157902e+01, 2.12280703e+00, + 7.29824543e+00, 3.15263157e+01, 1.66842098e+01, 6.17543840e+00, + 1.57368422e+01, 1.03385963e+02, 4.66491241e+01, 1.70175433e+00, + 4.77192974e+00, 1.21456139e+02, 5.43333321e+01, 2.63157892e+00, + 8.19298267e+00, 1.20017548e+02, 1.92456131e+01, 6.26315784e+00, + 2.87719297e+00, 7.08771896e+01, 4.23508759e+01, 6., + 6.56140327e+00, 26., 1.45087719e+01, 3.36842108e+00, + 8.24561417e-01, 1., 1.70175433e+00, 2.26315784e+00, + 5.22807026e+00, 1.67719307e+01, 4.72727251e+00, 2.90909100e+00, + 4.00000006e-01, 1.65454543e+00, 1.08272728e+02, 1.05654549e+02, + 1.72727275e+00, 1.56363642e+00, 4.80545464e+01, 4.75090904e+01, + 7.63636351e-01, 6.18181825e-01, 1.88363628e+01, 2.57090912e+01, + 1.72727275e+00, 4.41818190e+00, 7.46545486e+01, 1.04163635e+02, + 4.25454569e+00, 2.18181819e-01, 2.49090910e+00, 5.27272749e+00, + 1.41818178e+00, 3.36363626e+00, 1.84727268e+01, 4.32545471e+01, + 8.85454559e+00, 6.72727287e-01, 2.70909095e+00, 8.01818180e+00, + 6.34545469e+00, 4.92727280e+00, 2.67272735e+00, 3.72727275e+00, + 1.90909088e+00, 3.05454540e+00, 8.30545425e+01, 1.32509094e+02, + 6.90909100e+00, 1.96363640e+00, 1.36727276e+01, 2.11636372e+01, + 2.01818180e+00, 6.18181825e-01, 3.64181824e+01, 1.26618179e+02, + 1.55272732e+01, 3.96363640e+00, 3.40363655e+01, 1.14909088e+02, + 1.48363638e+01, 3.09090912e-01, 1.10909092e+00, 2.17999992e+01, + 8.78181839e+00, 3.03636360e+00, 1.17636366e+01, 1.13363640e+02, + 5.19636345e+01, 3.27272713e-01, 7.27272749e-01, 4.05454540e+00, + 2.96363640e+00, 1.54545450e+00, 3.03636360e+00, 4.80000019e+00, + 4., 4., 3.09818172e+01, 1.02381821e+02, 1.71090908e+01, + 3.74545455e+00, 3.52727270e+00, 6.59999990e+00, 3.10909081e+00, + 2.85454535e+00, 2.29454536e+01, 1.35727280e+02, 5.06545448e+01, + 4.29090929e+00, 6.58181810e+00, 2.36727276e+01, 7.81818199e+00, + 1.10909092e+00, 3.14545465e+00, 1.19527275e+02, 8.47636337e+01, + 4.05454540e+00, 4.56363630e+00, 5.29272728e+01, 3.25999985e+01, + 4.54545468e-01, 2.90909082e-01, 2.71454544e+01, 5.75636368e+01, + 3.45454550e+00, 4.78181839e+00, 5.56363630e+00, 6.47272730e+00, + 3.49090910e+00, 1.34909086e+01, 3.39454536e+01, 1.49636364e+01, + 4.61818171e+00, 2.61818171e+00, 4.74545431e+00, 5.89090919e+00, + 4.03636360e+00, 1.64909096e+01, 8.18545456e+01, 3.47636375e+01, + 5.23636341e+00, 2.05454540e+00, 4.21818161e+00, 5.10909081e+00, + 3.63636374e+00, 9.21818161e+00, 9.86909103e+01, 7.98181839e+01, + 4.92727280e+00, 2.23636365e+00, 4.72727251e+00, 6.81818199e+00, + 1.76363635e+00, 2.76363635e+00, 5.74909096e+01, 9.81818161e+01, + 4.32727289e+00, 5.12121201e+00, 2.57575750e+00, 3.06060600e+00, + 3.82878799e+01, 1.01257576e+02, 1.09393940e+01, 1.86363637e+00, + 2.19696975e+00, 1.37121210e+01, 2.37878799e+00, 1.53030300e+00, + 6.31666679e+01, 1.23621216e+02, 4.96969700e+00, 1.72727275e+00, + 5.59090900e+00, 8.22878799e+01, 5.90909100e+00, 8.18181813e-01, + 1.20757580e+01, 1.51666670e+01, 9.09090936e-01, 1.68181813e+00, + 3.78636360e+01, 5.95000000e+01, 6.25757599e+00, 1.09090912e+00, + 3.42424250e+00, 6.50000000e+00, 1.89393938e+00, 2.54545450e+00, + 4.54090919e+01, 6.68181801e+00, 3.95454550e+00, 3.53030300e+00, + 2.20303040e+01, 1.21196968e+02, 3.49696960e+01, 3., + 2.71212125e+00, 2.03030300e+01, 6.12121201e+00, 1.48484850e+00, + 2.16969700e+01, 1.32696976e+02, 3.62272720e+01, 2.27272725e+00, + 5.37878799e+00, 1.15575760e+02, 2.83939400e+01, 1.03030300e+00, + 3.36363626e+00, 1.54696970e+01, 3.40909100e+00, 1.86363637e+00, + 2.09393940e+01, 9.10151520e+01, 2.55454540e+01, 1.63636363e+00, + 2.77272725e+00, 1.06969700e+01, 5.51515150e+00, 2.92424250e+00, + 2.13939400e+01, 4.34848499e+00, 4.95454550e+00, 4.21212101e+00, + 1.29696970e+01, 1.05060608e+02, 6.40151520e+01, 4.80303049e+00, + 1.93939400e+00, 1.26818180e+01, 8.46969700e+00, 1.81818187e+00, + 5.12121201e+00, 1.32984848e+02, 1.05757576e+02, 2.89393950e+00, + 3.37878799e+00, 8.52272720e+01, 5.77727280e+01, 9.69696999e-01, + 8.03030312e-01, 2.19696960e+01, 2.15909100e+01, 2.16666675e+00, + 5.83333349e+00, 8.18333359e+01, 7.85757599e+01, 1.54545450e+00, + 7.72727251e-01, 6.56060600e+00, 8.68181801e+00, 2.92424250e+00, + 4.77272749e+00, 2.46969700e+00, 3.71212125e+00, 3.43939400e+00, + 7.60606050e+00, 5.73181801e+01, 5.14848480e+01, 5.68181801e+00, + 2.19696975e+00, 5.16666651e+00, 9.90909100e+00, 2.18181825e+00, + 3.84848475e+00, 1.01560608e+02, 1.18333336e+02, 4.30303049e+00, + 2.10606050e+00, 2.19545460e+01, 34., 1.56060600e+00, + 4.84848499e-01, 2.67121220e+01, 7.64090881e+01, 5.51515150e+00, + 2.39393950e+00, 3.38636360e+01, 9.48030319e+01, 5.63636351e+00, + 1.06060609e-01, 1.25757575e+00, 8.30303001e+00, 2.89393950e+00, + 1.33333337e+00, 7.03125000e+01, 5.41666651e+00, 1.02916670e+01, + 56., 4.74791679e+01, 3.18333340e+01, 7.82500000e+01, + 1.26208336e+02, 2.23125000e+01, 6.29166651e+00, 1.52916670e+01, + 3.43125000e+01, 3.61666679e+01, 4.81041679e+01, 9.42916641e+01, + 1.01062500e+02, 1.25625000e+01, 7.31250000e+00, 1.67500000e+01, + 2.45625000e+01, 3.76666679e+01, 5.99583321e+01, 5.10625000e+01, + 3.75625000e+01, 7.75000000e+00, 6.41666651e+00, 12., + 1.29583330e+01, 2.13750000e+01, 4.70208321e+01, 3.00833340e+01, + 1.02500000e+01, 4.77291679e+01, 6.33333349e+00, 1.33125000e+01, + 3.41041679e+01, 4.87500000e+01, 4.80625000e+01, 7.63541641e+01, + 9.96041641e+01, 1.49375000e+01, 1.27916670e+01, 2.36458340e+01, + 4.45416679e+01, 6.72916641e+01, 6.71875000e+01, 5.39375000e+01, + 3.92291679e+01, 1.93333340e+01, 2.17500000e+01, 2.78750000e+01, + 3.87291679e+01, 5.69583321e+01, 7.26875000e+01, 4.17500000e+01, + 2.04791660e+01, 1.12291670e+01, 1.08958330e+01, 1.98333340e+01, + 3.32500000e+01, 3.61041679e+01, 4.56666679e+01, 2.78125000e+01, + 1.23541670e+01, 2.66041660e+01, 1.38958330e+01, 2.22500000e+01, + 3.58958321e+01, 6.07083321e+01, 5.63958321e+01, 3.02708340e+01, + 3.76666679e+01, 1.73541660e+01, 1.91875000e+01, 2.97083340e+01, + 4.72083321e+01, 6.65000000e+01, 8.01666641e+01, 4.86666679e+01, + 2.08958340e+01, 2.25625000e+01, 2.05625000e+01, 4.12291679e+01, + 7.18541641e+01, 6.76041641e+01, 6.93333359e+01, 5.90833321e+01, + 3.49375000e+01, 1.98125000e+01, 9.08333302e+00, 2.16875000e+01, + 3.84166679e+01, 3.88541679e+01, 3.89166679e+01, 3.90625000e+01, + 3.00416660e+01, 1.43958330e+01, 1.02708330e+01, 1.45416670e+01, + 1.69166660e+01, 2.62083340e+01, 3.21875000e+01, 1.76041660e+01, + 1.27083330e+01, 1.12500000e+01, 8.95833302e+00, 1.67083340e+01, + 2.70208340e+01, 3.51041679e+01, 3.92083321e+01, 3.71666679e+01, + 1.98125000e+01, 1.27500000e+01, 6.37500000e+00, 1.15625000e+01, + 1.96458340e+01, 3.45833321e+01, 4.49166679e+01, 4.55416679e+01, + 2.78333340e+01, 6.87500000e+00, 3.62500000e+00, 4.02083349e+00, + 6.14583349e+00, 1.83958340e+01, 2.69583340e+01, 2.33958340e+01, + 1.32500000e+01, 5.62295103e+00, 6.73278656e+01, 6.65901642e+01, + 4.96721315e+00, 1.73770487e+00, 2.65573764e+00, 2.44262290e+00, + 1.34426224e+00, 1.02950821e+01, 6.20983620e+01, 4.19508209e+01, + 6.08196735e+00, 5.06557369e+00, 5.78688526e+00, 3.98360658e+00, + 3.47540975e+00, 1.26557379e+01, 3.39836082e+01, 2.00491810e+01, + 7.26229525e+00, 7.81967211e+00, 7.37704897e+00, 6.93442631e+00, + 6.60655737e+00, 8.57377052e+00, 1.46557379e+01, 1.05245905e+01, + 6.57377052e+00, 6.32786894e+00, 5.85245895e+00, 6.01639366e+00, + 5.34426212e+00, 4.85245895e+00, 1.28377045e+02, 1.00590164e+02, + 4.63934422e+00, 2.75409842e+00, 1.88196716e+01, 9.86885262e+00, + 1.39344263e+00, 1.87049179e+01, 1.31672134e+02, 8.18360672e+01, + 5.18032789e+00, 3.09836054e+00, 8.67213154e+00, 3.91803288e+00, + 2.93442631e+00, 3.22622948e+01, 1.06754097e+02, 4.25409851e+01, + 6.95081949e+00, 6.37704897e+00, 5.65573788e+00, 4.70491791e+00, + 6.36065578e+00, 1.97049179e+01, 3.77540970e+01, 1.80327873e+01, + 7.88524580e+00, 8.36065578e+00, 7.13114738e+00, 5.75409842e+00, + 7.11475420e+00, 8.70491791e+00, 1.08901642e+02, 4.01803284e+01, + 1.47540987e+00, 4.16393423e+00, 6.50983582e+01, 3.81803284e+01, + 2.91803288e+00, 3.95081978e+01, 1.35163940e+02, 3.26557388e+01, + 3., 8.73770523e+00, 4.64426231e+01, 9.19672108e+00, + 3.13114762e+00, 6.94918060e+01, 1.32524597e+02, 2.74098358e+01, + 2.83606553e+00, 5.90163946e+00, 1.06557379e+01, 2.63934422e+00, + 4.93442631e+00, 3.93934441e+01, 7.40327835e+01, 1.69672127e+01, + 4.08196735e+00, 5.52459002e+00, 5.67213106e+00, 4.08196735e+00, + 6.31147528e+00, 7.06557369e+00, 2.99672127e+01, 3.36065578e+00, + 6.06557369e-01, 1.49836063e+01, 8.82131119e+01, 4.86065559e+01, + 4.80327892e+00, 5.36557388e+01, 9.93606567e+01, 2.83606553e+00, + 1.16393447e+00, 2.68852463e+01, 8.50327835e+01, 1.36229506e+01, + 2.83606553e+00, 9.35245895e+01, 1.19885246e+02, 7.22950840e+00, + 2.13114762e+00, 1.53606558e+01, 2.48852463e+01, 2.13114762e+00, + 3.91803288e+00, 5.51147537e+01, 7.86885223e+01, 9.16393471e+00, + 1.86885250e+00, 3.37704921e+00, 3.47540975e+00, 1.62295079e+00, + 4.96721315e+00, 3.96551728e-01, 6.72413766e-01, 2.44827580e+00, + 6.77586222e+00, 6.15517235e+00, 2.31034493e+00, 1.63793099e+00, + 7.24137902e-01, 1.98275864e+00, 2.87931037e+00, 1.42413797e+01, + 6.37586212e+01, 5.88448257e+01, 1.52586203e+01, 4.63793087e+00, + 2.06896544e+00, 5.62068987e+00, 1.20344830e+01, 3.23793106e+01, + 9.52586212e+01, 8.33448257e+01, 3.04482765e+01, 5.51724148e+00, + 3.05172420e+00, 2.12586212e+01, 3.14482765e+01, 3.96896553e+01, + 5.53793106e+01, 6.57931061e+01, 4.61551743e+01, 1.43275862e+01, + 7.62068987e+00, 5.17241396e-02, 2.93103456e-01, 2.68965507e+00, + 1.07241383e+01, 1.33620691e+01, 6.60344839e+00, 2.12068963e+00, + 5.34482777e-01, 3.44827592e-01, 1.56896555e+00, 1.28103447e+01, + 7.34482727e+01, 1.00379311e+02, 4.16206894e+01, 6.77586222e+00, + 7.41379321e-01, 9.06896591e+00, 2.61551723e+01, 3.40344810e+01, + 9.15862045e+01, 1.12103447e+02, 6.55000000e+01, 1.87068958e+01, + 6.65517235e+00, 3.90862083e+01, 6.71896515e+01, 5.53103447e+01, + 5.37068977e+01, 7.69482727e+01, 8.31551743e+01, 4.73965530e+01, + 2.14137936e+01, 1.89655170e-01, 4.48275864e-01, 1.60344827e+00, + 5.84482765e+00, 1.31551723e+01, 1.31379309e+01, 3.84482765e+00, + 4.65517253e-01, 2.41379306e-01, 1.12068963e+00, 6.03448296e+00, + 4.05689659e+01, 1.04758621e+02, 85., 1.55000000e+01, + 1.32758617e+00, 4.65517235e+00, 1.23793106e+01, 1.87931042e+01, + 4.66034470e+01, 1.03965515e+02, 9.74655151e+01, 3.55000000e+01, + 9.36206913e+00, 2.51206894e+01, 3.78793106e+01, 3.79827576e+01, + 3.62413788e+01, 5.13965530e+01, 7.20172424e+01, 5.83965530e+01, + 3.20862083e+01, 5.86206913e-01, 9.31034505e-01, 1.79310346e+00, + 2.87931037e+00, 6.56896544e+00, 7.58620691e+00, 3.32758617e+00, + 1.05172420e+00, 1.94827580e+00, 2.46551728e+00, 5.39655161e+00, + 1.71896553e+01, 6.07413788e+01, 7.48448257e+01, 2.08965511e+01, + 3.82758617e+00, 1.84482753e+00, 1.51724136e+00, 3.98275852e+00, + 1.37586203e+01, 7.30344849e+01, 1.05051727e+02, 4.05000000e+01, + 4.44827604e+00, 9.89655209e+00, 7.46551704e+00, 1.07413797e+01, + 1.55862064e+01, 3.19310341e+01, 6.44137955e+01, 4.58965530e+01, + 1.54827585e+01, 5.78947365e-01, 1.63157892e+00, 4.17543840e+00, + 5.19298267e+00, 3.87719297e+00, 9.85964870e+00, 7.98245621e+00, + 4.56140339e-01, 4.94736862e+00, 2.05263162e+00, 8.01754379e+00, + 7.12280703e+00, 2.47368431e+00, 5.94736862e+00, 1.14035091e+01, + 2.14035082e+00, 8.80701733e+00, 3.52631569e+00, 1.27017546e+01, + 7.19298267e+00, 1.66666663e+00, 1.31578946e+00, 4.17543840e+00, + 3.66666675e+00, 5.78947365e-01, 4.59649134e+00, 1.37719297e+01, + 4.78947353e+00, 6.84210539e-01, 3.15789461e-01, 1.75438598e-01, + 1.92982450e-01, 2.19298244e+00, 3.43859649e+00, 1.51052628e+01, + 2.82280693e+01, 1.16140347e+01, 9.15789509e+00, 8.92982483e+00, + 1.84210527e+00, 5.07017565e+00, 5.45614052e+00, 2.41052628e+01, + 3.19473686e+01, 1.11228065e+01, 8.36842060e+00, 1.64736843e+01, + 7.84210539e+00, 6.19298267e+00, 8.05263138e+00, 2.42982464e+01, + 21., 7.21052647e+00, 5.47368431e+00, 3.82105255e+01, + 2.25964909e+01, 2.89473677e+00, 7.66666651e+00, 1.85964909e+01, + 1.25614033e+01, 4.89473677e+00, 9.50877190e+00, 6.81578979e+01, + 1.60350876e+01, 2.64912271e+00, 2.98245621e+00, 1.68771935e+01, + 3.60877190e+01, 1.38947372e+01, 3.73684216e+00, 1.52807016e+01, + 4.03859634e+01, 3.92982459e+00, 4.42105246e+00, 3.53157883e+01, + 5.11228065e+01, 8.31578922e+00, 4.78947353e+00, 9.60175476e+01, + 1.26947365e+02, 3.40350866e+00, 5.57894754e+00, 1.02561401e+02, + 8.04385986e+01, 4.05263138e+00, 6.54385948e+00, 1.35157898e+02, + 1.22877190e+02, 2.89473677e+00, 1.21754389e+01, 1.21192986e+02, + 4.27894745e+01, 3.19298244e+00, 1.93157902e+01, 131., + 4.76315804e+01, 1.66666660e+01, 1.73684216e+00, 1.59473686e+01, + 7.26315765e+01, 9.54385948e+00, 1.80701756e+00, 2.38421059e+01, + 1.29842102e+02, 8.50877190e+00, 3.05263162e+00, 7.33333359e+01, + 1.30368423e+02, 7.94736862e+00, 3.12280703e+00, 5.50701752e+01, + 1.11754387e+02, 8.84210491e+00, 5.36842108e+00, 1.04087723e+02, + 1.00228073e+02, 3.38596487e+00, 8.35087681e+00, 3.97017555e+01, + 3.65263176e+01, 6.45614052e+00, 7.98245621e+00, 7.92807007e+01, + 2.38245621e+01, 3.15789485e+00, 1.48947372e+01, 2.86140347e+01, + 1.57543859e+01, 2.75925922e+00, 1.61481476e+01, 9.07407379e+00, + 1.87037039e+00, 1.45370369e+01, 2.81666660e+01, 1.59259262e+01, + 6.48148155e+00, 2.59074078e+01, 1.09870369e+02, 1.67592602e+01, + 2.12962961e+00, 1.46666670e+01, 4.13148155e+01, 1.36851854e+01, + 6.20370388e+00, 5.09074059e+01, 1.13370369e+02, 6.83333349e+00, + 1.87037039e+00, 4.43888893e+01, 1.08203705e+02, 1.18703699e+01, + 4.38888884e+00, 1.34259262e+01, 1.73703709e+01, 5.18518496e+00, + 2.55555558e+00, 2.45000000e+01, 4.38703690e+01, 7.09259272e+00, + 5.24074078e+00, 1.29629624e+00, 5.55555582e-01, 5.37037015e-01, + 3.50000000e+00, 3.15185184e+01, 5.45000000e+01, 2.98888893e+01, + 6.64814806e+00, 1.69074078e+01, 2.72777786e+01, 2.29629636e+00, + 5.79629612e+00, 3.64814796e+01, 4.02777786e+01, 2.14259262e+01, + 8.50000000e+00, 1.18166664e+02, 1.24518517e+02, 6.09259272e+00, + 3.59259248e+00, 5.82777786e+01, 6.38703690e+01, 7.38888884e+00, + 6.20370388e+00, 4.68888893e+01, 3.47777786e+01, 3.66666675e+00, + 4.16666651e+00, 9.31111145e+01, 8.14074097e+01, 6.53703690e+00, + 5.94444466e+00, 3.01851845e+00, 1.61111116e+00, 2.96296287e+00, + 1.19074078e+01, 5.55555573e+01, 6.70370407e+01, 2.28703709e+01, + 6.64814806e+00, 3.70370364e+00, 1.37037039e+00, 1.87037039e+00, + 1.50740738e+01, 5.61666679e+01, 4.37962952e+01, 1.49629631e+01, + 5.92592573e+00, 1.18833336e+02, 5.25555573e+01, 1.51851857e+00, + 8.77777767e+00, 5.33703690e+01, 2.41851845e+01, 7.29629612e+00, + 1.19259262e+01, 9.77407379e+01, 3.34629631e+01, 2.20370364e+00, + 7.37037039e+00, 1.17314812e+02, 4.59814796e+01, 2.42592597e+00, + 7.01851845e+00, 4.59259272e+00, 3.85185194e+00, 7.33333349e+00, + 2.65740738e+01, 5.86296310e+01, 2.87962971e+01, 6.37037039e+00, + 3.09259248e+00, 2.57407403e+00, 9.25925910e-01, 2.79629636e+00, + 2.51851845e+01, 5.47222214e+01, 2.35000000e+01, 6.42592573e+00, + 4.62962961e+00, 1.08481483e+02, 7.25925922e+00, 1.72222221e+00, + 1.88888893e+01, 4.63703690e+01, 9.57407379e+00, 3.53703713e+00, + 3.67222214e+01, 8.98888855e+01, 1.10185184e+01, 1.70370376e+00, + 2.47407398e+01, 1.13074074e+02, 8.12963009e+00, 1.16666663e+00, + 1.76851845e+01, 4.25714302e+01, 7.78095245e+01, 2.53968263e+00, + 3.50793648e+00, 1.62539692e+01, 2.10317459e+01, 6.49206352e+00, + 2.52380943e+00, 5.59206352e+01, 1.23253967e+02, 5.63492060e+00, + 2.01587296e+00, 5.57936516e+01, 1.30841263e+02, 9.79365063e+00, + 2.87301588e+00, 2.34603176e+01, 4.40793648e+01, 1.49365082e+01, + 3.33333325e+00, 1.82063484e+01, 1.05238098e+02, 1.26349211e+01, + 3.47619057e+00, 1.75873013e+01, 4.14126968e+01, 2.83333340e+01, + 6.06349230e+00, 1.76190472e+00, 5.52380943e+00, 2.58730149e+00, + 2.63492060e+00, 5.50793648e+00, 2.08571434e+01, 3.22222233e+00, + 4.79365063e+00, 1.90634918e+01, 2.53650799e+01, 1.23333330e+01, + 3.42857146e+00, 2.70634918e+01, 1.34825394e+02, 2.68095245e+01, + 3.88888884e+00, 1.61746025e+01, 6.76825409e+01, 1.65238094e+01, + 3.15873027e+00, 1.04285717e+01, 1.34603180e+02, 6.41428604e+01, + 2.95238090e+00, 1.10793648e+01, 1.34285721e+02, 6.94920654e+01, + 2.53968263e+00, 7.95238113e+00, 5.02698402e+01, 3.99841270e+01, + 4.87301588e+00, 2.84126973e+00, 1.10634918e+02, 1.01714287e+02, + 3.28571439e+00, 1.96825397e+00, 1.77777779e+00, 2.31746030e+00, + 4.19047642e+00, 1.60476189e+01, 3.11904755e+01, 1.35714283e+01, + 3.93650794e+00, 2.71428561e+00, 2.70952377e+01, 8.93650818e+00, + 4.76190472e+00, 1.95396824e+01, 3.69206352e+01, 1.88571434e+01, + 4.93650770e+00, 3.31746030e+00, 1.22349205e+02, 8.12698441e+01, + 3.74603176e+00, 1.22222223e+01, 4.19206352e+01, 2.30317459e+01, + 4.53968239e+00, 2.61904764e+00, 1.18142860e+02, 1.29333328e+02, + 2.77777767e+00, 3.77777767e+00, 6.27301598e+01, 69., + 4.47619057e+00, 1.41269839e+00, 9.52380955e-01, 1.44444442e+00, + 2.66666675e+00, 7.50793648e+00, 2.26666660e+01, 1.22380953e+01, + 2.87301588e+00, 1.66666663e+00, 1.15873015e+00, 1.41269839e+00, + 2.57142854e+00, 9.42857170e+00, 3.03333340e+01, 1.88571434e+01, + 3.79365087e+00, 1.39682543e+00, 2.47619057e+00, 2.58730149e+00, + 2.04761910e+00, 9.03174591e+00, 3.18730164e+01, 2.31904755e+01, + 5.36507940e+00, 1.20634925e+00, 1.11269846e+01, 1.74603176e+01, + 1.66666663e+00, 4.74603176e+00, 1.98888893e+01, 2.04126987e+01, + 8.04761887e+00, 3.84444427e+01, 3.66444435e+01, 1.44444447e+01, + 4.42222214e+00, 6.15555573e+00, 1.35333338e+01, 1.60444450e+01, + 1.59555559e+01, 1.68666668e+01, 1.21999998e+01, 3.35555553e+00, + 1.21111107e+01, 5.23777771e+01, 6.43555527e+01, 2.36000004e+01, + 1.32888889e+01, 1.68222218e+01, 1.14222221e+01, 2., + 9.73333359e+00, 6.02444458e+01, 3.85111122e+01, 1.16666670e+01, + 7.44444466e+00, 8.48888874e+00, 5.62222242e+00, 2.97777772e+00, + 4.46666670e+00, 1.12888889e+01, 9.35555553e+00, 1.02666664e+01, + 5.04444456e+00, 5.44888878e+01, 9.47777786e+01, 3.35777779e+01, + 5.33333349e+00, 1.24888887e+01, 2.79333324e+01, 1.52444448e+01, + 1.29111109e+01, 5.38222237e+01, 75., 1.26000004e+01, + 1.48666668e+01, 64., 7.68444443e+01, 2.07333336e+01, + 2.12444439e+01, 2.15777779e+01, 2.00888882e+01, 3.66666675e+00, + 2.37111111e+01, 9.52888870e+01, 8.14666672e+01, 6.33333349e+00, + 1.01777782e+01, 1.43777781e+01, 1.10888891e+01, 3.79999995e+00, + 5.48888874e+00, 1.50222225e+01, 1.02222223e+01, 7.35555553e+00, + 6.66666651e+00, 2.60666676e+01, 6.91999969e+01, 3.03333340e+01, + 4.55555534e+00, 2.42444439e+01, 4.40444450e+01, 1.04888887e+01, + 3.91111112e+00, 1.00377777e+02, 125., 1.70222225e+01, + 4.80000019e+00, 3.92222214e+01, 6.65555573e+01, 9.04444408e+00, + 1.05777779e+01, 3.05777779e+01, 5.10444450e+01, 2.93333340e+00, + 5.84444427e+00, 1.10977776e+02, 1.22644447e+02, 5.11111116e+00, + 5.68888903e+00, 1.76222229e+01, 2.18888893e+01, 4.15555573e+00, + 4.31111097e+00, 2.39777775e+01, 3.48222237e+01, 6.84444427e+00, + 4.68888903e+00, 8.11111069e+00, 1.18000002e+01, 6.59999990e+00, + 3.02222228e+00, 1.65777779e+01, 2.74222221e+01, 5.66666651e+00, + 2.93333340e+00, 8.13777771e+01, 1.17955559e+02, 3.66666675e+00, + 1.20000005e+00, 3.06666660e+01, 5.42000008e+01, 3.35555553e+00, + 1.95555556e+00, 6.67333298e+01, 1.03111115e+02, 1.79999995e+00, + 1.20000005e+00, 6.95555573e+01, 9.79333344e+01, 1.37777781e+00, + 1.06666672e+00, 1.28222218e+01, 2.10222225e+01, 2.97777772e+00, + 2.62222219e+00, 4.78666649e+01, 8.22666702e+01, 2.24444437e+00, + 1.62222219e+00, 5.27826071e+00, 1.87826085e+00, 2.42608690e+00, + 4.80000019e+00, 6.32173920e+00, 4.36521721e+00, 6.55652189e+00, + 7.26086950e+00, 5.67826080e+00, 3.03478265e+00, 3.11304355e+00, + 6.30434799e+00, 8.25217438e+00, 6.75652170e+00, 7.15652180e+00, + 8.77391338e+00, 5.71304369e+00, 2.31304359e+00, 2.49565220e+00, + 5.21739149e+00, 7.93913031e+00, 6.88695669e+00, 7.04347849e+00, + 1.03739128e+01, 3.21739125e+00, 1.77391303e+00, 2.26956511e+00, + 3.45217395e+00, 4.61739111e+00, 4.53043461e+00, 5.10434771e+00, + 6.00869560e+00, 2.84347820e+01, 1.38956518e+01, 1.91043472e+01, + 3.15217400e+01, 3.97652168e+01, 3.81478271e+01, 5.87217407e+01, + 5.83043480e+01, 3.45217400e+01, 1.87043476e+01, 2.38347836e+01, + 4.02347832e+01, 4.96260872e+01, 4.99043465e+01, 7.49304352e+01, + 7.02608719e+01, 4.06869583e+01, 2.19304352e+01, 2.68869572e+01, + 3.86434784e+01, 4.85826073e+01, 5.11739120e+01, 6.41478271e+01, + 7.03217392e+01, 2.78782616e+01, 1.61043472e+01, 2.12000008e+01, + 2.87043476e+01, 3.50608711e+01, 3.48086967e+01, 4.32434769e+01, + 4.86695671e+01, 3.87217407e+01, 2.64260864e+01, 2.54173908e+01, + 3.53043480e+01, 4.16782608e+01, 4.37304344e+01, 7.03565216e+01, + 7.08608704e+01, 4.11217384e+01, 2.60695648e+01, 3.14086952e+01, + 4.43739128e+01, 5.71217384e+01, 6.54347839e+01, 9.05478287e+01, + 7.95217361e+01, 4.21217384e+01, 2.56521740e+01, 3.29391289e+01, + 4.93826103e+01, 6.14347839e+01, 6.95478287e+01, 8.73913040e+01, + 7.69130402e+01, 3.74695663e+01, 2.12173920e+01, 2.47999992e+01, + 3.63130417e+01, 4.58782616e+01, 5.01217384e+01, 6.50173950e+01, + 6.34347839e+01, 3.98782616e+01, 4.50260887e+01, 2.80347824e+01, + 2.23043480e+01, 3.36173897e+01, 4.82869568e+01, 5.82782593e+01, + 5.05826073e+01, 3.55913048e+01, 3.23217392e+01, 2.93130436e+01, + 3.33130417e+01, 4.60260887e+01, 6.12260857e+01, 7.18869553e+01, + 6.08695641e+01, 3.21217384e+01, 2.40260868e+01, 2.56173916e+01, + 3.56956520e+01, 4.37565231e+01, 5.64347839e+01, 7.65478287e+01, + 6.75478287e+01, 2.77913036e+01, 1.67478256e+01, 1.77304344e+01, + 2.79478264e+01, 3.42869568e+01, 4.53130417e+01, 5.74434776e+01, + 5.61043472e+01, 1.92083340e+01, 1.22083330e+01, 8.79166698e+00, + 4.95833349e+00, 5.02083349e+00, 7.10416651e+00, 1.33125000e+01, + 2.23333340e+01, 1.73750000e+01, 1.73541660e+01, 9.70833302e+00, + 6.27083349e+00, 9.27083302e+00, 1.42708330e+01, 1.55833330e+01, + 1.44791670e+01, 1.70208340e+01, 1.02500000e+01, 2.79166675e+00, + 9.43750000e+00, 6.62708359e+01, 4.53125000e+01, 1.06250000e+01, + 8.39583302e+00, 5.77291679e+01, 1.94375000e+01, 1.29166663e+00, + 1.41666670e+01, 1.21395836e+02, 4.11250000e+01, 1.70833337e+00, + 4.52083349e+00, 2.28333340e+01, 2.85625000e+01, 1.93958340e+01, + 9.66666698e+00, 6.29166651e+00, 7.37500000e+00, 1.01041670e+01, + 1.55416670e+01, 2.87708340e+01, 2.41250000e+01, 1.56458330e+01, + 1.15833330e+01, 1.01458330e+01, 1.06666670e+01, 1.65625000e+01, + 2.27083340e+01, 1.92291660e+01, 8.33333302e+00, 5.20833349e+00, + 6.37500000e+01, 8.83333359e+01, 1.45416670e+01, 8.60416698e+00, + 1.39583330e+01, 7.53333359e+01, 7.64583349e+00, 2.04166675e+00, + 8.20416641e+01, 1.25145836e+02, 8.97916698e+00, 1.47916663e+00, + 2.15208340e+01, 2.18958340e+01, 2.26875000e+01, 1.75833340e+01, + 6.22916651e+00, 3.20833325e+00, 6.70833349e+00, 1.68541660e+01, + 2.44583340e+01, 2.32708340e+01, 1.69583340e+01, 3.29166679e+01, + 5.56875000e+01, 9., 5.87500000e+00, 1.18125000e+01, + 2.31666660e+01, 1.31250000e+01, 4.10416651e+00, 2.03125000e+01, + 1.29041672e+02, 7.51458359e+01, 2.87500000e+00, 3.89583325e+00, + 1.54375000e+01, 8.98333359e+01, 3.72916675e+00, 4.72916651e+00, + 1.03958336e+02, 7.53333359e+01, 1.20833337e+00, 2.75000000e+00, + 7.93333359e+01, 5.77083349e+00, 1.87916660e+01, 1.01687500e+02, + 2.72291660e+01, 5.83333313e-01, 1.43750000e+00, 9.79166698e+00, + 1.13750000e+01, 6.18750000e+00, 5.22916651e+00, 1.09791664e+02, + 1.22500000e+02, 2.83333325e+00, 8.12500000e-01, 8.87500000e+00, + 1.93333340e+01, 1.82500000e+01, 2.54166675e+00, 4.11041679e+01, + 1.24333336e+02, 1.95000000e+01, 6.66666687e-01, 1.18750000e+01, + 7.58750000e+01, 6.22291679e+01, 2.60416675e+00, 5.04166651e+00, + 4.62916679e+01, 1.97083340e+01, 1.87500000e+00, 9.25000000e+00, + 1.15854164e+02, 1.41558444e+00, 1.42857146e+00, 2.98701310e+00, + 3.29870129e+00, 2.19480515e+00, 2.49350643e+00, 2.55844164e+00, + 1.79220784e+00, 7.96103907e+00, 8.80519485e+00, 9.67532444e+00, + 9.05194759e+00, 9.40259743e+00, 1.00129871e+01, 1.16233768e+01, + 9.02597427e+00, 6.72727251e+00, 9.85714245e+00, 1.80909100e+01, + 1.89220772e+01, 1.18961039e+01, 8.23376656e+00, 8.51948071e+00, + 7.75324678e+00, 4.09090900e+00, 9.37662315e+00, 2.71948051e+01, + 2.94805202e+01, 1.02077923e+01, 3.67532468e+00, 5.09090900e+00, + 5.33766222e+00, 3.20779228e+00, 4.18181801e+00, 6.97402620e+00, + 5.74025965e+00, 5.19480515e+00, 6.81818199e+00, 6.75324678e+00, + 3.48051953e+00, 1.01168833e+01, 2.06883125e+01, 3.24025955e+01, + 4.27792206e+01, 3.75454559e+01, 2.54805202e+01, 2.13246746e+01, + 9.57142830e+00, 5.49350643e+00, 2.03116875e+01, 7.76883087e+01, + 1.04155846e+02, 5.98441544e+01, 1.55714283e+01, 7.19480515e+00, + 4.09090900e+00, 1.03506489e+01, 3.15844154e+01, 9.78441544e+01, + 1.06532471e+02, 4.06363640e+01, 4.70129871e+00, 2.63636374e+00, + 3.53246760e+00, 1.55844152e+00, 3.09090900e+00, 8.85714245e+00, + 1.47532463e+01, 1.33116884e+01, 8.45454502e+00, 5.49350643e+00, + 2.05194807e+00, 2.88311696e+00, 1.20519476e+01, 4.82207794e+01, + 1.10194809e+02, 8.47402573e+01, 2.43506489e+01, 9.33766270e+00, + 2.88311696e+00, 1.09480524e+01, 2.23376617e+01, 8.11818161e+01, + 1.25155846e+02, 9.83376617e+01, 1.96233768e+01, 6.05194807e+00, + 3.48051953e+00, 3.03116875e+01, 4.16233749e+01, 8.56363602e+01, + 1.14298698e+02, 9.32077942e+01, 2.62727280e+01, 1.34545450e+01, + 1.31038961e+01, 2.98701286e-01, 1.11688316e+00, 6.03896093e+00, + 1.62077923e+01, 2.41428566e+01, 1.01298704e+01, 2.92207789e+00, + 9.87012982e-01, 1.33766234e+00, 4.35064936e+00, 2.24025974e+01, + 9.14285736e+01, 1.07168831e+02, 3.84545441e+01, 5.93506479e+00, + 2.09090900e+00, 1.91948051e+01, 2.45844154e+01, 3.48571434e+01, + 9.14805222e+01, 9.91298676e+01, 4.98961029e+01, 2.03896103e+01, + 9.72727299e+00, 4.57662354e+01, 4.29610405e+01, 3.84545441e+01, + 7.01948090e+01, 9.87142868e+01, 6.21298714e+01, 3.29480515e+01, + 3.05454540e+01, 6.03999996e+00, 2.88000011e+00, 2.48000002e+00, + 2.92000008e+00, 1.63999999e+00, 1.60000002e+00, 1.39999998e+00, + 5., 5.50800018e+01, 2.07199993e+01, 1.93600006e+01, + 2.03600006e+01, 7.96000004e+00, 5.63999987e+00, 3.43199997e+01, + 8.25199966e+01, 3.56399994e+01, 2.07600002e+01, 7.34800034e+01, + 4.88800011e+01, 3.48000002e+00, 4.11999989e+00, 1.29160004e+02, + 1.35240005e+02, 3.75999999e+00, 6.11999989e+00, 1.05040001e+02, + 68., 8.39999974e-01, 3.07999992e+00, 1.17120003e+02, + 8.70800018e+01, 1.19600000e+01, 8.84000015e+00, 2.03999996e+00, + 2.31999993e+00, 5.19999981e+00, 6.59999990e+00, 2.51999998e+00, + 3.59999990e+00, 7.44400024e+01, 8.35199966e+01, 6.37999992e+01, + 3.17999992e+01, 2.04799995e+01, 2.60799999e+01, 2.02800007e+01, + 4.46399994e+01, 4.50400009e+01, 6.77200012e+01, 1.50720001e+02, + 9.04000015e+01, 7.55999994e+00, 1.77199993e+01, 5.90400009e+01, + 6.07999992e+01, 6.32000017e+00, 1.15200005e+01, 1.31240005e+02, + 8.41600037e+01, 3.16000009e+00, 7.55999994e+00, 6.76399994e+01, + 4.87999992e+01, 2.24000001e+00, 2.55999994e+00, 8.79999995e-01, + 7.59999990e-01, 4., 4.59999990e+00, 2.24000001e+00, + 1.20000005e+00, 8.64000034e+00, 1.63600006e+01, 1.55200005e+01, + 7.40000010e+00, 1.41999998e+01, 2.35200005e+01, 2.03999996e+01, + 11., 1.09200001e+01, 1.38400002e+01, 2.97999992e+01, + 1.65200005e+01, 7.36000013e+00, 2.09200001e+01, 5.05999985e+01, + 2.26800003e+01, 5.63999987e+00, 3.72000003e+00, 1.77999992e+01, + 1.18000002e+01, 6.63999987e+00, 9.52000046e+00, 4.49199982e+01, + 2.95599995e+01, 1.19999997e-01, 0., 0., 0., 2.80000001e-01, + 3.19999993e-01, 1.19999997e-01, 7.99999982e-02, 5.19999981e-01, + 2.39999995e-01, 1.19999997e-01, 3.99999991e-02, 1.24000001e+00, + 2.11999989e+00, 1.88000000e+00, 1.55999994e+00, 7.20000029e-01, + 1.59999996e-01, 3.99999991e-02, 3.99999991e-02, 5.19999981e-01, + 2., 5.51999998e+00, 2.72000003e+00, 8.00000012e-01, + 1.59999996e-01, 3.99999991e-02, 1.19999997e-01, 6.39999986e-01, + 9.20000017e-01, 3.35999990e+00, 2.44000006e+00, 1.37254906e+00, + 2.15686277e-01, 5.88235296e-02, 3.52941185e-01, 6.86274529e-01, + 5.09803951e-01, 7.45098054e-01, 6.86274529e-01, 4.32352943e+01, + 2.15686274e+00, 2.35294119e-01, 1.96078435e-01, 2.35294119e-01, + 5.88235296e-02, 7.84313753e-02, 3.09803915e+00, 2.94313717e+01, + 2.23529410e+00, 2.39215684e+00, 1.21568632e+00, 1.41176474e+00, + 1.19607842e+00, 1.47058821e+00, 3.58823538e+00, 1.56862748e+00, + 1.33333337e+00, 3.05882359e+00, 1.05882359e+00, 1.52941179e+00, + 2.25490189e+00, 2.17647052e+00, 3.07843137e+00, 7.70588255e+00, + 1.37254906e+00, 5.68627477e-01, 1.90196073e+00, 1.01764708e+01, + 2.11176472e+01, 1.15098038e+01, 3.03921580e+00, 1.44901962e+02, + 1.14509802e+01, 1.29411769e+00, 1.17647064e+00, 9.80392158e-01, + 2.25490189e+00, 9.39215660e+00, 2.56274509e+01, 1.31980392e+02, + 1.70196075e+01, 8.25490189e+00, 6.47058821e+00, 1.07058821e+01, + 1.08039217e+01, 1.44313726e+01, 3.86470604e+01, 1.41960783e+01, + 9.96078396e+00, 1.21960783e+01, 1.36470585e+01, 12., + 1.44901962e+01, 1.79803925e+01, 2.69607849e+01, 8.94117641e+00, + 1.88235295e+00, 1.05882359e+00, 3.19607854e+00, 2.36274509e+01, + 8.87647095e+01, 1.03431374e+02, 8.37254906e+00, 1.49686279e+02, + 1.19215689e+01, 1.86274505e+00, 1.86274505e+00, 2.29411769e+00, + 3.50196075e+01, 1.11450981e+02, 7.62156830e+01, 1.30431366e+02, + 2.20784321e+01, 1.81764698e+01, 1.69215679e+01, 1.98627453e+01, + 1.82549019e+01, 4.11176453e+01, 7.07058792e+01, 2.04313717e+01, + 1.52745094e+01, 1.92549019e+01, 2.41176472e+01, 2.44705887e+01, + 2.34901962e+01, 2.95098038e+01, 3.18823528e+01, 1.15882349e+01, + 9.58823490e+00, 7.21568632e+00, 1.30392160e+01, 1.14117651e+01, + 5.25882339e+01, 8.58823547e+01, 1.48039217e+01, 6.22745094e+01, + 1.50980396e+01, 8.01960754e+00, 1.27647057e+01, 1.09215689e+01, + 3.86666679e+01, 1.12784317e+02, 5.88627434e+01, 6.23333321e+01, + 2.21764698e+01, 2.12745094e+01, 2.28823528e+01, 2.13921566e+01, + 1.76274509e+01, 3.53137245e+01, 4.65686264e+01, 1.71764698e+01, + 1.68235302e+01, 2.40196075e+01, 1.96078434e+01, 2.43137264e+01, + 1.46862745e+01, 1.56862745e+01, 2.94509811e+01, 1.90769231e+00, + 3.61538458e+00, 5.21538448e+00, 4.33846140e+00, 4.89230776e+00, + 3.40000010e+00, 1.75384617e+00, 1.35384619e+00, 1.63076925e+00, + 5.15384626e+00, 1.08000002e+01, 1.15384617e+01, 6.75384617e+00, + 3.50769234e+00, 1.24615383e+00, 5.38461566e-01, 2.50769234e+00, + 1.02153845e+01, 1.79076920e+01, 1.16615381e+01, 2.66153836e+00, + 9.23076928e-01, 3.23076934e-01, 2.15384617e-01, 2.38461542e+00, + 8.49230766e+00, 1.45076923e+01, 6.55384636e+00, 1.36923075e+00, + 4.92307693e-01, 2.76923090e-01, 5.53846180e-01, 6.33846140e+00, + 1.51384611e+01, 3.82769241e+01, 4.71538467e+01, 2.99538460e+01, + 1.39076920e+01, 6.67692327e+00, 4.81538439e+00, 5.56923056e+00, + 2.48923073e+01, 8.21692276e+01, 92., 3.16615391e+01, + 9.73846149e+00, 3.69230771e+00, 2.32307696e+00, 9.52307701e+00, + 4.68769226e+01, 1.12384613e+02, 8.37230759e+01, 1.61538467e+01, + 2.52307701e+00, 1.21538460e+00, 2.43076921e+00, 1.36153851e+01, + 5.90153847e+01, 9.99076920e+01, 4.62153854e+01, 5.61538458e+00, + 1.15384614e+00, 1.46153843e+00, 4., 4.43076944e+00, + 9.36923122e+00, 3.85230751e+01, 9.36923065e+01, 6.40769196e+01, + 1.40615387e+01, 5.66153860e+00, 4.16923094e+00, 1.37692308e+01, + 2.41846161e+01, 7.38307724e+01, 1.07138458e+02, 6.13692322e+01, + 1.64307690e+01, 6.32307673e+00, 7.29230785e+00, 3.55692291e+01, + 4.44769249e+01, 8.93076935e+01, 9.88615417e+01, 4.46769218e+01, + 2.05230770e+01, 1.31230774e+01, 2.22461548e+01, 37., + 5.67230759e+01, 9.29230804e+01, 8.29692307e+01, 2.51384621e+01, + 7.10769224e+00, 1.34307690e+01, 2.51846161e+01, 4.36923075e+00, + 5.03076935e+00, 1.69384613e+01, 6.96615372e+01, 7.75076904e+01, + 17., 4.72307682e+00, 4.76923084e+00, 1.70461540e+01, + 2.00923080e+01, 3.68307686e+01, 7.78769226e+01, 6.07538452e+01, + 2.62769222e+01, 2.01230774e+01, 2.37538452e+01, 2.99384613e+01, + 2.76615391e+01, 5.98153839e+01, 9.09538498e+01, 5.34615402e+01, + 3.23384628e+01, 3.85076904e+01, 4.09230766e+01, 3.04769230e+01, + 2.80461540e+01, 6.04153862e+01, 8.40153809e+01, 3.72461548e+01, + 2.08923073e+01, 4.63692322e+01, 4.92769241e+01, 3.36721306e+01, + 2.51967220e+01, 1.49180326e+01, 2.01803284e+01, 4.10655746e+01, + 3.95901642e+01, 2.56557369e+01, 2.09836063e+01, 20., + 1.72622948e+01, 1.89508190e+01, 2.77704926e+01, 3.60327873e+01, + 3.98688507e+01, 3.29836082e+01, 2.29344254e+01, 1.50983610e+01, + 19., 1.82295074e+01, 1.89180336e+01, 2.32950821e+01, + 2.96065578e+01, 2.60491810e+01, 1.91967220e+01, 4.54098368e+00, + 5.91803265e+00, 5.45901632e+00, 6.13114738e+00, 9.16393471e+00, + 1.02786884e+01, 7.19672108e+00, 4.19672108e+00, 7.34262314e+01, + 6.39836082e+01, 2.33770485e+01, 3.68688507e+01, 9.96885223e+01, + 8.51639328e+01, 2.88524590e+01, 2.72622948e+01, 3.29672127e+01, + 3.08196716e+01, 3.37868843e+01, 4.84098358e+01, 5.48032799e+01, + 5.42786903e+01, 4.44590149e+01, 3.62786903e+01, 2.22459011e+01, + 3.02295074e+01, 3.12622948e+01, 3.15901642e+01, 3.95081978e+01, + 4.44262314e+01, 3.75409851e+01, 2.60983601e+01, 6.78688526e+00, + 1.00491800e+01, 1.09508200e+01, 1.00819674e+01, 1.53934422e+01, + 1.89508190e+01, 13., 6.81967211e+00, 9.69672165e+01, + 7.90819702e+01, 2.18196716e+01, 4.38360672e+01, 1.32557373e+02, + 1.14262299e+02, 1.95737705e+01, 3.01967220e+01, 4.03114738e+01, + 3.43278694e+01, 3.91475410e+01, 4.84426231e+01, 5.17540970e+01, + 5.21475410e+01, 3.87868843e+01, 3.91639328e+01, 1.76721306e+01, + 2.32786884e+01, 3.27540970e+01, 3.92459030e+01, 4.28524590e+01, + 4.41147537e+01, 3.16721306e+01, 2.20819664e+01, 6.77049160e+00, + 1.04426231e+01, 1.20491800e+01, 1.21639347e+01, 1.25737705e+01, + 1.58524590e+01, 1.19508200e+01, 7.09836054e+00, 9.05409851e+01, + 7.42950821e+01, 1.21967211e+01, 3.14918041e+01, 1.38918030e+02, + 1.19950821e+02, 1.20163937e+01, 2.07213116e+01, 3.72459030e+01, + 3.95245895e+01, 3.57540970e+01, 3.95409851e+01, 4.92622948e+01, + 4.89836082e+01, 2.68196716e+01, 2.41147537e+01, 1.36065578e+01, + 1.78032780e+01, 2.88852463e+01, 3.17540989e+01, 3.44098358e+01, + 2.77049179e+01, 2.06885242e+01, 1.88360653e+01, 5., + 7.32786894e+00, 9.01639366e+00, 1.06393442e+01, 1.19672127e+01, + 9.08196735e+00, 6.72131157e+00, 4.67213106e+00, 4.76097565e+01, + 2., 7.31707290e-02, 9.75609720e-02, 1.21951222e-01, + 9.75609720e-02, 1.95121944e-01, 3.58536577e+00, 6.66341476e+01, + 3.75609756e+00, 8.29268277e-01, 6.34146333e-01, 1.12195122e+00, + 1.68292677e+00, 9.26829278e-01, 5.97560978e+00, 4.36585379e+00, + 3.46341467e+00, 2., 1.65853655e+00, 2.12195110e+00, + 2.63414645e+00, 1.73170733e+00, 2.24390244e+00, 1.63414633e+00, + 1.12195122e+00, 1.29268289e+00, 2.26829267e+00, 1.85365856e+00, + 1.31707323e+00, 1.36585367e+00, 2.29268289e+00, 1.60585373e+02, + 8.78048801e+00, 9.02438998e-01, 9.75609779e-01, 1.02439022e+00, + 1.03902435e+01, 3.95121956e+01, 3.09268284e+01, 1.56487808e+02, + 2.10731716e+01, 8.46341419e+00, 6.43902445e+00, 6.78048801e+00, + 1.06341467e+01, 1.46829271e+01, 4.24878044e+01, 1.98048782e+01, + 1.71707325e+01, 1.21219511e+01, 1.42439022e+01, 1.51463413e+01, + 1.54878044e+01, 1.39756098e+01, 1.57073174e+01, 9., + 9.85365868e+00, 1.17317076e+01, 1.82195129e+01, 1.27073174e+01, + 1.12439022e+01, 9.26829243e+00, 1.19268293e+01, 1.37170731e+02, + 9.31707287e+00, 1.68292677e+00, 1.41463411e+00, 2.41463423e+00, + 4.43658524e+01, 1.44756104e+02, 8.01463394e+01, 1.46634140e+02, + 2.30731716e+01, 7.92682934e+00, 1.07804880e+01, 1.67317066e+01, + 2.34634151e+01, 5.80731697e+01, 8.23414612e+01, 2.39268284e+01, + 1.86097565e+01, 1.43658533e+01, 2.45365849e+01, 2.76341457e+01, + 2.27317066e+01, 2.03902435e+01, 2.78048782e+01, 1.41219511e+01, + 1.47317076e+01, 1.09756098e+01, 2.47560978e+01, 2.02439022e+01, + 1.78048782e+01, 1.31707315e+01, 2.44390240e+01, 4.21951218e+01, + 1.62439022e+01, 5.39024401e+00, 6.43902445e+00, 7.63414621e+00, + 3.21463432e+01, 9.18780518e+01, 3.64634132e+01, 5.50487823e+01, + 2.03658543e+01, 1.24634142e+01, 1.93902435e+01, 2.07560978e+01, + 2.22439022e+01, 3.59268303e+01, 4.33170738e+01, 2.07317066e+01, + 1.76341457e+01, 1.40487804e+01, 2.48536587e+01, 3.03414631e+01, + 1.92926826e+01, 1.87560978e+01, 2.84878044e+01, 1.50731707e+01, + 1.03414631e+01, 1.00487804e+01, 2.81219521e+01, 1.93414631e+01, + 1.49756098e+01, 1.61951218e+01, 3.98780479e+01, 8.87500000e+00, + 7.96875000e+00, 9.56250000e+00, 1.10937500e+01, 1.09375000e+01, + 2.56875000e+01, 5.44062500e+01, 2.74687500e+01, 1.09687500e+01, + 1.71562500e+01, 7.68750000e+00, 5.78125000e+00, 2.74687500e+01, + 97., 6.86250000e+01, 1.24687500e+01, 2.31250000e+01, + 2.62187500e+01, 5.28125000e+00, 3.37500000e+00, 6.50312500e+01, + 1.17843750e+02, 2.61562500e+01, 4.50000000e+00, 1.35312500e+01, + 1.09375000e+01, 2.28125000e+00, 7.18750000e-01, 6.75000000e+00, + 7.43750000e+00, 1.78125000e+00, 2.71875000e+00, 1.20937500e+01, + 1.29375000e+01, 1.12812500e+01, 1.27812500e+01, 1.58125000e+01, + 1.85000000e+01, 1.64687500e+01, 1.31875000e+01, 2.13437500e+01, + 1.39687500e+01, 1.20312500e+01, 1.35937500e+01, 2.13750000e+01, + 3.03125000e+01, 2.08437500e+01, 2.41562500e+01, 2.15312500e+01, + 1.03750000e+01, 4.53125000e+00, 3.73437500e+01, 1.30968750e+02, + 1.02687500e+02, 1.08437500e+01, 1.54062500e+01, 1.43125000e+01, + 6.87500000e+00, 1.50000000e+00, 6.37500000e+00, 3.96875000e+01, + 1.64687500e+01, 2.25000000e+00, 4.75000000e+00, 1.29062500e+01, + 5.66250000e+01, 6.01562500e+01, 1.24062500e+01, 1.05937500e+01, + 5.27812500e+01, 5.58125000e+01, 1.23750000e+01, 1.65000000e+01, + 1.44687500e+01, 6.81250000e+01, 8.72187500e+01, 2.06250000e+01, + 13., 4.91562500e+01, 5.36250000e+01, 1.62812500e+01, + 5.18750000e+00, 1.91875000e+01, 1.31625000e+02, 1.24062500e+02, + 1.45312500e+01, 1.27500000e+01, 3.63750000e+01, 8.43750000e+00, + 2.93750000e+00, 1.78125000e+00, 1.45625000e+01, 2.50937500e+01, + 2.75000000e+00, 3.28125000e+00, 1.14062500e+01, 4.15625000e+00, + 7.31250000e+01, 1.29781250e+02, 2.42187500e+01, 2.25000000e+00, + 2.38750000e+01, 4.32812500e+01, 1.15312500e+01, 4.93750000e+00, + 1.07812500e+01, 1.28343750e+02, 114., 6.34375000e+00, + 9.25000000e+00, 3.95937500e+01, 2.82187500e+01, 6.90625000e+00, + 2.96875000e+00, 2.67812500e+01, 8.75000000e+01, 1.91250000e+01, + 4.96875000e+00, 1.91562500e+01, 2.65625000e+01, 3.56250000e+00, + 1.12500000e+00, 1.43750000e+00, 3.06250000e+00, 1.87500000e+00, + 1.18750000e+00, 3.56250000e+00, 9.56250000e+00, 8.70862045e+01, + 3.65689659e+01, 1.67241383e+00, 3.96551728e+00, 2.18103447e+01, + 1.32413797e+01, 2.43103456e+00, 2.55172420e+00, 8.91551743e+01, + 4.42068977e+01, 2.34482765e+00, 4.10344839e+00, 118., + 7.60344849e+01, 2.15517235e+00, 5.74137926e+00, 3.17413788e+01, + 2.62758617e+01, 9.17241383e+00, 3.41379309e+00, 2.35689659e+01, + 1.51896553e+01, 2.62068963e+00, 1.43965521e+01, 3.93103447e+01, + 4.10689659e+01, 1.22758617e+01, 2.67241383e+00, 1.31034482e+00, + 1.46551728e+00, 2.31034493e+00, 1.34655170e+01, 3.91551743e+01, + 4.09310341e+01, 2.48275852e+00, 5.39655161e+00, 1.78275871e+01, + 1.73275871e+01, 4.53448296e+00, 1.87931037e+00, 1.05689651e+02, + 1.25379311e+02, 3.89655161e+00, 3.27586198e+00, 8.55517273e+01, + 1.07258621e+02, 4.06896544e+00, 3.03448272e+00, 2.87241383e+01, + 4.20862083e+01, 1.26551723e+01, 4.94827604e+00, 5.38448257e+01, + 1.11051727e+02, 4.96551704e+00, 5.39655161e+00, 2.88620682e+01, + 4.67068977e+01, 2.51724129e+01, 5.91379309e+00, 3., + 4.31034470e+00, 1.13793099e+00, 5.56896544e+00, 3.94827580e+00, + 6.31034470e+00, 1.84482753e+00, 4.46551704e+00, 2.00517235e+01, + 2.49482765e+01, 6.68965530e+00, 2.17241383e+00, 4.80344810e+01, + 1.28293106e+02, 7.44827604e+00, 3.75862074e+00, 2.21034489e+01, + 4.96724129e+01, 6.44827604e+00, 2.18965507e+00, 2.36206894e+01, + 1.27517242e+02, 2.25862064e+01, 2.32758617e+00, 2.86206894e+01, + 1.29224136e+02, 2.48448277e+01, 1.94827580e+00, 1.26034479e+01, + 3.88448257e+01, 2.09827595e+01, 5.34482765e+00, 6.44827604e+00, + 9.92413788e+01, 4.03965530e+01, 2.55172420e+00, 1.06896555e+00, + 1.01724136e+00, 1.39655173e+00, 2.46551728e+00, 1.21034479e+01, + 2.36724129e+01, 8.34482765e+00, 1.77586210e+00, 2.77586198e+00, + 2.45862064e+01, 3.25862074e+00, 2.70689654e+00, 1.50517244e+01, + 3.43620682e+01, 1.12758617e+01, 1.81034482e+00, 5.17241383e+00, + 1.20775864e+02, 3.98620682e+01, 2.03448272e+00, 7.56896544e+00, + 4.68103447e+01, 1.32586203e+01, 2.01724148e+00, 2.27586198e+00, + 1.04155174e+02, 7.17413788e+01, 1.46551728e+00, 2.79310346e+00, + 8.46896515e+01, 5.11379318e+01, 1.68965518e+00, 4.86075926e+00, + 6.37974701e+01, 4.33670883e+01, 1.32911396e+00, 4.54430389e+00, + 4.73417740e+01, 2.10632915e+01, 2.77215195e+00, 4.01265812e+00, + 7.95316467e+01, 1.06063293e+02, 3.87341762e+00, 1.26582277e+00, + 1.26835442e+01, 2.24303799e+01, 6.48101282e+00, 3.93670893e+00, + 3.34683533e+01, 1.26860756e+02, 2.62784805e+01, 1.11392403e+00, + 3.63291144e+00, 1.99367085e+01, 1.31898737e+01, 5.51898718e+00, + 7.11392403e+00, 9.45443039e+01, 5.02531662e+01, 1.56962025e+00, + 1.55696201e+00, 1.47974682e+01, 2.15316448e+01, 2.46835446e+00, + 1.07848101e+01, 7.35443020e+00, 1.17721522e+00, 4.70886087e+00, + 1.17936707e+02, 1.08873421e+02, 4.82278490e+00, 3.91139245e+00, + 1.81645565e+01, 2.31012650e+01, 2.53164554e+00, 2.02531648e+00, + 7.82151871e+01, 1.27708862e+02, 1.64430370e+01, 4.83544302e+00, + 1.28101263e+01, 3.58860741e+01, 5.94936705e+00, 1.70886075e+00, + 2.24936714e+01, 1.22151901e+02, 4.44810143e+01, 5.79746819e+00, + 5.29113913e+00, 2.33164558e+01, 8.21518993e+00, 1.93670881e+00, + 5.30379725e+00, 1.00050636e+02, 7.22278519e+01, 2.88607597e+00, + 5.74683523e+00, 4.40506315e+00, 2.54430389e+00, 7.27848101e+00, + 7.68480988e+01, 8.79240494e+01, 9.51898766e+00, 3.72151899e+00, + 4.56962013e+00, 5.39240503e+00, 2.73417711e+00, 5.45569611e+00, + 7.73037949e+01, 1.28240509e+02, 1.88227844e+01, 5.50632906e+00, + 4.31645584e+00, 6.40506315e+00, 4.13924074e+00, 4.43037987e+00, + 3.91518974e+01, 1.26303795e+02, 3.61265831e+01, 5.36708879e+00, + 3.89873409e+00, 5.82278490e+00, 5.36708879e+00, 3.97468352e+00, + 1.27974682e+01, 1.04620255e+02, 5.07468338e+01, 2.55696201e+00, + 3.40506339e+00, 2.79746842e+00, 1.67088604e+00, 4.54430389e+00, + 1.72278481e+01, 1.92531643e+01, 4.92405081e+00, 2.18987346e+00, + 1.92405069e+00, 2.56962037e+00, 3.12658238e+00, 4.82278490e+00, + 2.07594929e+01, 3.32911377e+01, 8.39240551e+00, 3.07594943e+00, + 1.72151899e+00, 2.87341762e+00, 4.58227825e+00, 3.97468352e+00, + 1.54936705e+01, 3.69113922e+01, 12., 3.59493661e+00, + 2.16455698e+00, 2.46835446e+00, 3.20253158e+00, 2.73417711e+00, + 7.70886087e+00, 2.75949364e+01, 1.37215185e+01, 3.01724148e+00, + 6.46551704e+00, 9.87241364e+01, 7.89827576e+01, 3.27586198e+00, + 3.98275852e+00, 1.19655170e+01, 8.58620644e+00, 4.55172396e+00, + 5.85344810e+01, 1.14465515e+02, 1.54137936e+01, 3.55172420e+00, + 1.30172415e+01, 1.84827595e+01, 6.79310322e+00, 1.02413797e+01, + 1.25827583e+02, 94., 3.48275852e+00, 5.37931013e+00, + 1.85517235e+01, 1.23620691e+01, 3.72413802e+00, 2.95862064e+01, + 1.14103447e+02, 2.88965511e+01, 4.60344839e+00, 6.29310322e+00, + 1.67931042e+01, 1.41724138e+01, 7.53448296e+00, 1.64137936e+01, + 1.68103447e+01, 3.43965530e+01, 3.80344810e+01, 1.51379309e+01, + 2.03275871e+01, 5.04655190e+01, 4.08103447e+01, 1.57068968e+01, + 4.16551743e+01, 4.05344810e+01, 2.04310341e+01, 2.37586212e+01, + 4.98448257e+01, 4.38793106e+01, 1.66724129e+01, 2.93620682e+01, + 8.76379318e+01, 2.79137936e+01, 9.43103409e+00, 2.03448277e+01, + 3.13275871e+01, 1.23965521e+01, 5.56896544e+00, 1.08293106e+02, + 1.23931038e+02, 9.25862026e+00, 3.27586198e+00, 9.08620644e+00, + 1.02241383e+01, 4.24137926e+00, 4.55172396e+00, 3.17068958e+01, + 3.00172405e+01, 4.12241364e+01, 3.18448277e+01, 2.16034489e+01, + 2.63620682e+01, 3.65000000e+01, 3.48103447e+01, 1.64482765e+01, + 2.58275871e+01, 3.40344810e+01, 2.96551723e+01, 4.06724129e+01, + 4.72413788e+01, 3.08965511e+01, 1.67931042e+01, 3.66724129e+01, + 2.51896553e+01, 1.44655170e+01, 1.70689659e+01, 28., + 2.28965511e+01, 8.18965530e+00, 1.26034479e+01, 1.19500000e+02, + 4.59655190e+01, 3.74137926e+00, 6.27586222e+00, 1.25689659e+01, + 5.72413778e+00, 2.62068963e+00, 2.22758617e+01, 1.97931042e+01, + 3.52586212e+01, 2.91896553e+01, 1.54827585e+01, 1.44137936e+01, + 2.93275871e+01, 2.40344830e+01, 1.73103447e+01, 1.48448277e+01, + 1.74655170e+01, 3.42068977e+01, 4.38793106e+01, 3.46206894e+01, + 2.44827595e+01, 3.46551743e+01, 3.58965530e+01, 2.63103447e+01, + 5.72413778e+00, 8.87931061e+00, 2.26724129e+01, 2.54482765e+01, + 1.16724138e+01, 1.16551723e+01, 4.15689659e+01, 1.07137932e+02, + 6.74137926e+00, 3.56896544e+00, 7.91379309e+00, 6.34482765e+00, + 1.75862074e+00, 3.03448272e+00, 9.40689621e+01, 1.51052628e+01, + 5.61754379e+01, 2.24035091e+01, 5.26315784e+00, 7.77192974e+00, + 9.92456131e+01, 4.60701752e+01, 7.19298267e+00, 1.22280703e+01, + 4.39649124e+01, 2.58596497e+01, 8.43859673e+00, 4.63157892e+00, + 3.58245621e+01, 3.92105255e+01, 5.40350866e+00, 4.71929836e+00, + 3.30350876e+01, 4.07192993e+01, 1.65263157e+01, 5.14035082e+00, + 5.92982435e+00, 2.20350876e+01, 4.84210539e+00, 2., + 1.18421049e+01, 3.23508759e+01, 2.21754379e+01, 8.57894707e+00, + 2.91228080e+00, 2.04561405e+01, 1.22631578e+01, 8.47368431e+00, + 1.28666672e+02, 9.57192993e+01, 3.91228080e+00, 4.29824543e+00, + 6.35964928e+01, 4.48421059e+01, 3.35087729e+00, 5.73684216e+00, + 1.07789474e+02, 1.26298248e+02, 3.82456136e+00, 2.64912271e+00, + 8.93859634e+01, 1.18491226e+02, 6.12280703e+00, 3.40350866e+00, + 3.88070183e+01, 1.25526314e+02, 1.43157892e+01, 3.21052623e+00, + 4.36491241e+01, 1.27140350e+02, 1.71228065e+01, 2.35087729e+00, + 9.21052647e+00, 1.15280701e+02, 4.67192993e+01, 3.08771920e+00, + 8.33333302e+00, 1.18350876e+02, 5.17368431e+01, 2., + 2.32456131e+01, 2.15263157e+01, 1.80701756e+00, 6.47368431e+00, + 2.80526314e+01, 2.51754379e+01, 7.22807026e+00, 2.80701756e+00, + 5.97894745e+01, 1.06789474e+02, 3.15789485e+00, 4.28070164e+00, + 1.96666660e+01, 3.35087738e+01, 1.00701752e+01, 3.29824567e+00, + 3.34035072e+01, 1.28210526e+02, 1.11929827e+01, 2.73684216e+00, + 1.37368422e+01, 3.98245621e+01, 1.23333330e+01, 3.38596487e+00, + 8.10526276e+00, 1.13368423e+02, 3.27017555e+01, 2.22807026e+00, + 7.07017565e+00, 2.93684216e+01, 1.51228065e+01, 8.07017565e-01, + 6.14035070e-01, 6.31578922e-01, 6.31578922e-01, 2.82456136e+00, + 1.75263157e+01, 1.48947372e+01, 3.26315784e+00, 1.31578946e+00, + 5.96491218e-01, 7.19298244e-01, 1., 2.57894731e+00, + 1.40526314e+01, 2.17543869e+01, 5.78947353e+00, 1.70175433e+00, + 6.31578922e-01, 8.07017565e-01, 9.12280679e-01, 1.96491230e+00, + 9.35087681e+00, 2.26842098e+01, 8.75438595e+00, 2.08771920e+00, + 5.26315808e-01, 4.03508782e-01, 5.96491218e-01, 1.42105258e+00, + 4.91228056e+00, 1.58070173e+01, 1.11578951e+01, 1.07937500e+02, + 8.06250000e+00, 5.87500000e+00, 5.15625000e+01, 2.60625000e+01, + 6.25000000e-01, 8.75000000e-01, 8.24687500e+01, 1.19468750e+02, + 3.43437500e+01, 1.22187500e+01, 8.21875000e+00, 3.34375000e+00, + 5.31250000e-01, 4.84375000e+00, 8.52187500e+01, 5.05312500e+01, + 3.42812500e+01, 1.37187500e+01, 4.21875000e+00, 2.65625000e+00, + 5.28125000e+00, 1.57500000e+01, 3.60937500e+01, 1.63437500e+01, + 1.55625000e+01, 1.16250000e+01, 4.93750000e+00, 4.46875000e+00, + 1.09062500e+01, 1.77812500e+01, 1.70625000e+01, 1.29656250e+02, + 2.86875000e+01, 2.09375000e+00, 2.18750000e+01, 4.55000000e+01, + 5.71875000e+00, 1.43750000e+00, 5.01875000e+01, 1.24375000e+02, + 5.75937500e+01, 1.60937500e+01, 7.06250000e+00, 8.93750000e+00, + 1.90625000e+00, 4.37500000e+00, 4.63125000e+01, 5.94375000e+01, + 7.49687500e+01, 3.87500000e+01, 6.28125000e+00, 2.62500000e+00, + 4.59375000e+00, 6., 2.23125000e+01, 2.72187500e+01, + 4.48437500e+01, 3.75625000e+01, 9.71875000e+00, 6.90625000e+00, + 1.04687500e+01, 1.03437500e+01, 1.88125000e+01, 129., + 8.63750000e+01, 1.53125000e+00, 4.43750000e+00, 3.29062500e+01, + 1.32187500e+01, 4.50000000e+00, 1.69375000e+01, 1.17343750e+02, + 6.91250000e+01, 1.11875000e+01, 8.81250000e+00, 1.97187500e+01, + 13., 7.59375000e+00, 2.25937500e+01, 3.93437500e+01, + 6.75937500e+01, 4.35937500e+01, 1.25937500e+01, 8.03125000e+00, + 7.96875000e+00, 1.04062500e+01, 1.46250000e+01, 2.64375000e+01, + 5.90937500e+01, 4.76250000e+01, 1.02812500e+01, 2.81250000e+00, + 3.96875000e+00, 5., 1.17812500e+01, 9.88437500e+01, + 1.19406250e+02, 3., 9.37500000e-01, 1.26250000e+01, + 8.84375000e+00, 2.25000000e+00, 3.81250000e+00, 8.32500000e+01, + 1.10187500e+02, 1.31562500e+01, 2.96875000e+00, 1.15625000e+01, + 1.42812500e+01, 1.10312500e+01, 9.56250000e+00, 2.46562500e+01, + 5.31875000e+01, 2.70937500e+01, 6.12500000e+00, 6.84375000e+00, + 1.26250000e+01, 2.35937500e+01, 1.59375000e+01, 1.43125000e+01, + 2.12812500e+01, 32., 1.17187500e+01, 3.25000000e+00, + 3.93750000e+00, 1.36562500e+01, 2.05312500e+01, 8.96923065e+00, + 8.84615421e+00, 1.86461544e+01, 3.91846161e+01, 3.02615376e+01, + 1.61384621e+01, 1.15846157e+01, 9.63076878e+00, 2.12307692e+00, + 3.95384622e+00, 1.52615385e+01, 7.63692322e+01, 7.02461548e+01, + 1.52615385e+01, 3.52307701e+00, 1.53846157e+00, 2.78461528e+00, + 1.38461542e+00, 7.12307692e+00, 4.37846146e+01, 4.11230774e+01, + 1.02769232e+01, 5.01538467e+00, 3.09230781e+00, 7.56769257e+01, + 3.81538463e+00, 3.63076925e+00, 1.73692303e+01, 2.58769226e+01, + 3.95384622e+00, 3.78461528e+00, 3.10615387e+01, 2.58461547e+00, + 8.03076935e+00, 5.85999985e+01, 8.98000031e+01, 2.49384613e+01, + 4.90769243e+00, 3.69230771e+00, 2.83076930e+00, 5.23076952e-01, + 2.50769234e+00, 2.73999996e+01, 8.93230743e+01, 4.48307686e+01, + 6.43076944e+00, 2.83076930e+00, 1.06153846e+00, 1.10615387e+01, + 2.58461547e+00, 15., 4.80307693e+01, 2.81538467e+01, + 8.23076916e+00, 9., 2.47846146e+01, 9.02153854e+01, + 2.04615378e+00, 4.24615383e+00, 4.36461525e+01, 3.62769241e+01, + 2.56923079e+00, 4.16923094e+00, 1.15276924e+02, 8.00000012e-01, + 7.03076935e+00, 43., 4.89076920e+01, 1.09384613e+01, + 2.06153846e+00, 4.52307701e+00, 1.26153851e+00, 1.30769229e+00, + 4.06153870e+00, 2.85692310e+01, 4.88615379e+01, 2.02923069e+01, + 5.55384636e+00, 2.02153854e+01, 2.50769234e+01, 1.79230766e+01, + 2.21538472e+00, 1.57538462e+01, 5.23230782e+01, 1.33846149e+01, + 5.23076916e+00, 3.62615395e+01, 1.23276924e+02, 36., + 1.36923075e+00, 6.89230776e+00, 1.15123077e+02, 3.91076927e+01, + 1.92307687e+00, 1.18923073e+01, 1.19507690e+02, 1.27692306e+00, + 4.63076925e+00, 3.75846138e+01, 1.74923077e+01, 3.27692318e+00, + 8.67692280e+00, 1.05461540e+02, 3.04153843e+01, 1.81538463e+00, + 2.20000005e+00, 4.98769226e+01, 5.35076904e+01, 4.49230766e+00, + 4.72307682e+00, 1.15723076e+02, 1.11492310e+02, 5.32307673e+00, + 1.61538458e+00, 5.13692322e+01, 1.17553848e+02, 5.16923094e+00, + 2.06153846e+00, 6.00307693e+01, 1.18246155e+02, 7.01538467e+00, + 1.50769234e+00, 1.29538460e+01, 9.56769257e+01, 8.60000038e+00, + 1.73846149e+00, 1.15230770e+01, 4.10153847e+01, 2.69090915e+00, + 1.09454546e+01, 5.29090929e+00, 1.43636358e+00, 1.01636362e+01, + 1.46472733e+02, 8.80909119e+01, 2.81818175e+00, 2.67272735e+00, + 1.64727268e+01, 2.13454552e+01, 4.94545460e+00, 3.87272716e+00, + 1.33109085e+02, 1.36672729e+02, 3.90909100e+00, 3.63636374e+00, + 1.10363636e+01, 3.44909096e+01, 1.32181816e+01, 4.19999981e+00, + 4.43636360e+01, 1.34472733e+02, 2.30727272e+01, 4.14545441e+00, + 5.83636379e+00, 2.33272724e+01, 1.57272730e+01, 3.47272730e+00, + 7.69090891e+00, 1.21363640e+02, 7.76181793e+01, 5.10909081e+00, + 6.41818190e+00, 5.56363630e+00, 4.63636351e+00, 8.63636398e+00, + 7.66727295e+01, 8.02909088e+01, 1.05636368e+01, 4.36363649e+00, + 4.58181810e+00, 4.74545431e+00, 3.05454540e+00, 7.10909081e+00, + 1.20581818e+02, 1.45690903e+02, 1.79636364e+01, 3.05454540e+00, + 2.23636365e+00, 5.96363640e+00, 4.85454559e+00, 4.96363640e+00, + 7.79454575e+01, 1.49072723e+02, 3.39454536e+01, 6.43636370e+00, + 2.63636374e+00, 4.47272730e+00, 5.43636370e+00, 3.21818185e+00, + 2.19818172e+01, 1.45890915e+02, 7.76181793e+01, 6.07272720e+00, + 4.63636351e+00, 5.38181829e+00, 5.01818180e+00, 7.69090891e+00, + 1.96181812e+01, 2.73272724e+01, 1.08181820e+01, 7.29090929e+00, + 4.30909109e+00, 5.87272739e+00, 5.32727289e+00, 7.23636341e+00, + 2.64363632e+01, 4.57999992e+01, 1.82000008e+01, 5.45454550e+00, + 3., 5.10909081e+00, 5.72727251e+00, 6.41818190e+00, + 3.36909103e+01, 6.22000008e+01, 2.19818172e+01, 6.29090929e+00, + 2.52727270e+00, 3.70909095e+00, 5.78181839e+00, 4.89090919e+00, + 1.83272724e+01, 5.07090912e+01, 2.50181828e+01, 4.18181807e-01, + 1.81818187e-01, 2.36363634e-01, 3.27272713e-01, 5.81818163e-01, + 1.36363637e+00, 1.72727275e+00, 7.27272749e-01, 6.54545426e-01, + 3.27272713e-01, 4.00000006e-01, 4.90909100e-01, 5.09090900e-01, + 2.14545465e+00, 2.69090915e+00, 9.81818199e-01, 5.27272701e-01, + 2.72727281e-01, 2.90909082e-01, 3.63636374e-01, 5.63636363e-01, + 1.90909088e+00, 3.16363645e+00, 1.94545460e+00, 5.63636363e-01, + 2.18181819e-01, 2.18181819e-01, 4.90909100e-01, 4.18181807e-01, + 8.18181813e-01, 2.25454545e+00, 2.05454540e+00, 7.84883738e+00, + 3.33720922e+00, 1.38720932e+01, 2.31395340e+01, 4.27906990e+00, + 5.84883738e+00, 5.73255806e+01, 7.39302292e+01, 7.74418592e+00, + 3.02325583e+00, 2.25348835e+01, 3.72441864e+01, 4.01162767e+00, + 4.45348835e+00, 9.93488388e+01, 1.21581398e+02, 4.04651165e+00, + 3.20930243e+00, 6.04883728e+01, 8.46627884e+01, 5.68604660e+00, + 7.69767427e+00, 8.05813980e+01, 9.89534912e+01, 3.54651165e+00, + 3.82558131e+00, 7.38720932e+01, 9.70232544e+01, 7.82558155e+00, + 6.95348835e+00, 3.32674408e+01, 3.52674408e+01, 1.41860466e+01, + 1.13372097e+01, 6.14767456e+01, 8.17441864e+01, 5.13953495e+00, + 4.31395340e+00, 7.10697708e+01, 1.02674416e+02, 4.22093010e+00, + 5.94186068e+00, 1.16500000e+02, 1.27651161e+02, 4.38372087e+00, + 3.46511626e+00, 5.15465126e+01, 7.42790680e+01, 4.26744175e+00, + 8.23255825e+00, 1.10034882e+02, 1.22860466e+02, 4.91860485e+00, + 4.43023252e+00, 3.74069786e+01, 4.86395340e+01, 4.75581408e+00, + 7.96511650e+00, 5.19186058e+01, 5.67093010e+01, 5.58139515e+00, + 4.12790680e+00, 2.66162796e+01, 3.46976738e+01, 7.24418592e+00, + 8.27906990e+00, 7.91627884e+01, 1.06418602e+02, 1.57674417e+01, + 4.18604660e+00, 2.40116272e+01, 3.77441864e+01, 7.29069757e+00, + 5.75581408e+00, 5.16627922e+01, 7.91279068e+01, 1.01511631e+01, + 5.46511650e+00, 3.75348854e+01, 4.87093010e+01, 7., + 7.03488350e+00, 1.59883718e+01, 1.92558136e+01, 8.84883690e+00, + 6.86046505e+00, 2.67325573e+01, 3.22558136e+01, 5.91860485e+00, + 5.52325583e+00, 8.08139515e+00, 7.55813932e+00, 5.90697670e+00, + 5.46511650e+00, 1.18139534e+01, 1.34186049e+01, 5.08139515e+00, + 3.12790704e+00, 9.51162815e+00, 2.12906971e+01, 9.22093010e+00, + 3.43023252e+00, 1.04534883e+01, 1.83720932e+01, 5.18604660e+00, + 4.43023252e+00, 5.20930243e+00, 7.24418592e+00, 6.29069757e+00, + 4.94186068e+00, 8.47674465e+00, 1.19883718e+01, 4.40697670e+00, + 3.95348835e+00, 4.44186068e+00, 5.12790680e+00, 5.63953495e+00, + 5.62790680e+00, 6.03488350e+00, 6.55813932e+00, 3.13953495e+00, + 3.12790704e+00, 3.38372087e+00, 3.55813956e+00, 4.30232573e+00, + 4.20930243e+00, 3.41860461e+00, 3.16279078e+00, 9.63636398e+00, + 2.17954540e+01, 3.65909100e+00, 4.61363649e+00, 4.73409081e+01, + 8.95454559e+01, 9.06818199e+00, 3.61363626e+00, 3.35000000e+01, + 7.10227280e+01, 5.47727251e+00, 1.13636363e+00, 1.46363640e+01, + 8.96590881e+01, 2.26136360e+01, 4.93181801e+00, 3.55909081e+01, + 1.09931816e+02, 2.35681820e+01, 3.34090900e+00, 5., 30., + 1.49545450e+01, 2.86363626e+00, 8.43181801e+00, 6.22272720e+01, + 4.04318199e+01, 7.31818199e+00, 3.09090900e+00, 8.18181801e+00, + 1.01590910e+01, 3.43181825e+00, 3.75000000e+00, 8.97727299e+00, + 4.59090900e+00, 7.84090900e+00, 5.09545441e+01, 9.02727280e+01, + 2.89772720e+01, 8.27272701e+00, 1.15454550e+01, 6.18863640e+01, + 1.72272720e+01, 6.43181801e+00, 2.02272720e+01, 1.13954544e+02, + 6.72045441e+01, 1.06590910e+01, 1.36818180e+01, 9.44090881e+01, + 4.30227280e+01, 2.79545450e+00, 6.90909100e+00, 9.52045441e+01, + 8.88409119e+01, 8., 5.81818199e+00, 7.96590881e+01, + 7.38636398e+01, 3.68181825e+00, 1.75000000e+00, 3.70909081e+01, + 7.11818161e+01, 5.34090900e+00, 1.56818187e+00, 1.29545450e+00, + 1.54545450e+00, 4.52272749e+00, 4.96590919e+01, 1.08659088e+02, + 4.23181801e+01, 5.95454550e+00, 4.11363649e+00, 1.15227270e+01, + 6.75000000e+00, 8.95454502e+00, 3.64318199e+01, 9.58409119e+01, + 6.24090919e+01, 1.22954550e+01, 9.47727299e+00, 3.58636360e+01, + 3.16818180e+01, 9.34090900e+00, 1.55909090e+01, 7.08181839e+01, + 7.75000000e+01, 1.57272730e+01, 6.59090900e+00, 3.00681820e+01, + 5.45909081e+01, 7.38636351e+00, 6.20454550e+00, 4.41818199e+01, + 8.82045441e+01, 1.51363640e+01, 2.68181825e+00, 1.59090912e+00, + 1.93181813e+00, 3.09090900e+00, 2.31136360e+01, 6.27045441e+01, + 2.22045460e+01, 5.25000000e+00, 1.79545450e+00, 9.09090936e-01, + 1.02272725e+00, 4.20454550e+00, 2.67954540e+01, 8.67272720e+01, + 4.32272720e+01, 7.31818199e+00, 4.84090900e+00, 2.79545450e+00, + 2.93181825e+00, 5.50000000e+00, 1.50227270e+01, 4.78863640e+01, + 4.33181801e+01, 1.16590910e+01, 5.52272749e+00, 4.72727251e+00, + 6.50000000e+00, 4.31818199e+00, 7.54545450e+00, 2.01136360e+01, + 3.30909081e+01, 1.36363640e+01, 2.88461542e+00, 9.90384579e+00, + 1.55192308e+01, 9.78846169e+00, 2.40384626e+00, 1.88461542e+00, + 3.26923072e-01, 2.50000000e-01, 6.34615374e+00, 1.74615383e+01, + 2.03461533e+01, 7.90384626e+00, 1.17307687e+00, 3.07692319e-01, + 2.69230783e-01, 1.03846157e+00, 7., 9.76923084e+00, + 8.80769253e+00, 4.21153831e+00, 2.26923084e+00, 1., + 1.59615386e+00, 3.88461542e+00, 3.17307687e+00, 2.61538458e+00, + 3.59615374e+00, 3.07692313e+00, 2.40384626e+00, 1.57692313e+00, + 2.21153855e+00, 3.23076916e+00, 8., 3.77115402e+01, + 8.51346130e+01, 5.33653831e+01, 1.23461542e+01, 3.67307687e+00, + 9.61538434e-01, 1.46153843e+00, 2.60576916e+01, 8.54423065e+01, + 9.65000000e+01, 3.90769234e+01, 4.26923084e+00, 1.28846157e+00, + 5.38461566e-01, 2.78846145e+00, 3.65192299e+01, 7.98269196e+01, + 7.21153870e+01, 1.77307701e+01, 4.96153831e+00, 1.63461542e+00, + 3.01923084e+00, 9.09615421e+00, 2.01923084e+01, 2.80961533e+01, + 2.39230766e+01, 1.20961542e+01, 7.75000000e+00, 5.44230747e+00, + 7.90384626e+00, 1.16730766e+01, 1.97500000e+01, 3.83461533e+01, + 7.67692337e+01, 72., 2.96923084e+01, 9.63461494e+00, + 7.09615374e+00, 1.32115383e+01, 4.38076935e+01, 8.71538467e+01, + 1.04903847e+02, 7.54807663e+01, 2.40769234e+01, 6.28846169e+00, + 1.28653851e+01, 2.55961533e+01, 7.43269196e+01, 1.13750000e+02, + 9.05961533e+01, 2.53653851e+01, 4.07692289e+00, 2.30769229e+00, + 8.59615421e+00, 2.25576916e+01, 5.24807701e+01, 7.65576935e+01, + 40., 8.75000000e+00, 3.07692313e+00, 3.21153855e+00, + 4.82692289e+00, 1.40769234e+01, 25., 4.10384598e+01, + 5.61730766e+01, 5.41153831e+01, 3.50384598e+01, 2.42884617e+01, + 3.13653851e+01, 3.12692299e+01, 4.99423065e+01, 5.69038467e+01, + 7.53846130e+01, 8.05192337e+01, 4.46538467e+01, 3.73846169e+01, + 6.03846169e+01, 6.88269196e+01, 7.74807663e+01, 8.64038467e+01, + 7.55576935e+01, 3.89615402e+01, 1.34423075e+01, 1.52884617e+01, + 3.87307701e+01, 5.52307701e+01, 6.90769196e+01, 7.95769196e+01, + 3.89038467e+01, 8.46153831e+00, 3.44230771e+00, 3., + 7.26923084e+00, 1.91538467e+01, 3.34838715e+01, 1.41612902e+01, + 4.41935492e+00, 28., 3.69032249e+01, 5.03225803e+00, + 3.16129041e+00, 1.58387098e+01, 8.87419357e+01, 3.06451607e+01, + 5.80645180e+00, 1.90322590e+01, 2.51290321e+01, 8.93548393e+00, + 1.03870964e+01, 5.98709679e+01, 2.08064518e+01, 1.39032259e+01, + 8.48387051e+00, 1.42258062e+01, 2.20645161e+01, 2.29677410e+01, + 2.65161285e+01, 2.75806446e+01, 8.80645180e+00, 2.70967746e+00, + 7.16129017e+00, 3.66129036e+01, 3.13548393e+01, 1.38709679e+01, + 1.21935482e+01, 2.03548393e+01, 5.55483856e+01, 1.57096777e+01, + 5.51612902e+00, 5.38709679e+01, 5.71612892e+01, 6.29032278e+00, + 4.96774197e+00, 61., 1.07096771e+02, 3.79354820e+01, 15., + 5.36774178e+01, 2.76774197e+01, 1.54838705e+01, 1.95161285e+01, + 9.66774216e+01, 2.31290321e+01, 2.01290321e+01, 6.25161285e+01, + 8.04193573e+01, 2.45806446e+01, 1.87096767e+01, 3.16451607e+01, + 3.40322571e+01, 1.09032259e+01, 3.03225803e+00, 3.48709679e+01, + 9.67741928e+01, 2.22903233e+01, 8.67741966e+00, 2.13870964e+01, + 3.72903214e+01, 7.38709641e+01, 3.45161295e+00, 4., + 7.65161285e+01, 4.30645180e+01, 1.83870971e+00, 3.06451607e+00, + 1.17935486e+02, 6.11935501e+01, 8.03225803e+00, 1.24516125e+01, + 1.13935486e+02, 5.10967751e+01, 4.90322590e+00, 1.09032259e+01, + 9.92258072e+01, 2.06451607e+01, 1.21612902e+01, 5.24193535e+01, + 9.76128998e+01, 3.06451607e+01, 5.74193525e+00, 2.77419357e+01, + 6.02580643e+01, 8.45161247e+00, 5.67741919e+00, 2.45806446e+01, + 3.66451607e+01, 6.35483885e+00, 7.70967722e+00, 2.38387089e+01, + 3.74516144e+01, 5.29677429e+01, 2.09677410e+00, 2., + 7.05161285e+01, 2.86451607e+01, 6.12903237e-01, 1.19354844e+00, + 98., 2.72903233e+01, 2.96774197e+00, 4.45161295e+00, + 1.02096771e+02, 4.56774178e+01, 9.03225780e-01, 5.41935492e+00, + 6.10322571e+01, 2.15483875e+01, 6.67741919e+00, 7.45161295e+00, + 2.97419357e+01, 1.24193544e+01, 3.32258058e+00, 1.49677420e+01, + 4.89032249e+01, 5.80645180e+00, 5.22580624e+00, 4.96774197e+00, + 5.80645180e+00, 5.80645180e+00, 5.93548393e+00, 1.11935482e+01, + 1.15161295e+01, 4.44444466e+00, 2.27777767e+00, 1.90740740e+00, + 1.01851854e+01, 118., 4.03888893e+01, 2.90740752e+00, + 1.59259260e+00, 1.87592602e+01, 9.51851845e+00, 1.22222221e+00, + 7.20370388e+00, 1.15462959e+02, 3.68518524e+01, 1.46296299e+00, + 3.96296287e+00, 1.00185188e+02, 44., 8.70370388e-01, + 1.01851857e+00, 6.66666651e+00, 3.81481481e+00, 8.14814806e-01, + 1.03148146e+01, 6.23518524e+01, 2.65000000e+01, 1.33333337e+00, + 1.83333337e+00, 5.98148155e+00, 5.83333349e+00, 2.35185194e+00, + 1.06296301e+01, 4.24074078e+00, 4.12962961e+00, 3.68518519e+00, + 9.14814854e+00, 1.08185188e+02, 8.20740738e+01, 5.94444466e+00, + 2.33333325e+00, 9.11111069e+00, 8.25925922e+00, 1.75925922e+00, + 2.94444442e+00, 1.25500000e+02, 1.20370369e+02, 3.22222233e+00, + 2.96296287e+00, 7.22037048e+01, 7.70740738e+01, 1.35185182e+00, + 6.29629612e-01, 1.14629631e+01, 2.35185184e+01, 3.33333325e+00, + 4.35185194e+00, 6.60740738e+01, 9.76296310e+01, 5.22222233e+00, + 1.03703701e+00, 3.53703713e+00, 8.68518543e+00, 2.96296287e+00, + 3.24074078e+00, 3.74074078e+00, 5.03703690e+00, 5.14814806e+00, + 9.18518543e+00, 5.86111107e+01, 6.64444427e+01, 9.94444466e+00, + 3.61111116e+00, 3.87037039e+00, 7.01851845e+00, 2.92592597e+00, + 4.29629612e+00, 1.03981483e+02, 1.34074081e+02, 8.64814854e+00, + 3.46296287e+00, 1.77592602e+01, 3.59074059e+01, 2.88888884e+00, + 7.03703701e-01, 2.26481476e+01, 1.03481483e+02, 1.54444447e+01, + 4.12962961e+00, 2.67962971e+01, 1.08259262e+02, 1.50925922e+01, + 2.59259254e-01, 9.07407403e-01, 1.37222223e+01, 8.12963009e+00, + 2.37037039e+00, 3.51851845e+00, 4.61111116e+00, 4.59259272e+00, + 4.94444466e+00, 2.13518524e+01, 3.15555553e+01, 1.04629631e+01, + 4.03703690e+00, 2.64814806e+00, 5.35185194e+00, 4.11111116e+00, + 4.61111116e+00, 3.81296310e+01, 1.00722221e+02, 1.66851845e+01, + 3.85185194e+00, 2.88888884e+00, 9.38888931e+00, 4.61111116e+00, + 2.38888884e+00, 1.67037029e+01, 1.21555557e+02, 3.45555573e+01, + 3.12962961e+00, 4., 2.29629631e+01, 9.09259224e+00, + 1.09259260e+00, 1.51851857e+00, 6.73888855e+01, 4.72407417e+01, + 2.20370364e+00, 9.23333359e+00, 2.29999995e+00, 2.83333325e+00, + 3.96666670e+00, 4.23333311e+00, 9.50000000e+00, 1.44666662e+01, + 6.30000019e+00, 1.28666668e+01, 3.66666675e+00, 8.10000038e+00, + 9.13333321e+00, 5.13333321e+00, 7.03333330e+00, 1.38333330e+01, + 8.73333359e+00, 3.96666670e+00, 3.90000010e+00, 1.26666670e+01, + 1.31333332e+01, 6.33333349e+00, 5.19999981e+00, 6.83333349e+00, + 4.59999990e+00, 1., 2.36666656e+00, 9.33333302e+00, + 2.15333328e+01, 8.89999962e+00, 4.43333340e+00, 6.43333340e+00, + 9.63333321e+00, 7.73333311e+00, 2.26666665e+00, 1.18000002e+01, + 2.32000008e+01, 6.80000019e+00, 6.93333340e+00, 2.80333328e+01, + 2.04333324e+01, 3.56666660e+00, 3.23333335e+00, 3.15000000e+01, + 3.64000015e+01, 5.86666679e+00, 9., 6.82333298e+01, + 4.62999992e+01, 3.09999990e+00, 9.50000000e+00, 4.00666656e+01, + 2.68999996e+01, 4.73333311e+00, 3.90999985e+01, 6.98000031e+01, + 3.53333321e+01, 4.46666670e+00, 6.09999990e+00, 2.58333340e+01, + 3.94333344e+01, 6.66666651e+00, 1.66333332e+01, 7.74000015e+01, + 1.12466667e+02, 3.53333330e+00, 2.86666656e+00, 1.88333340e+01, + 3.50666656e+01, 8.46666622e+00, 3.40000010e+00, 7.75000000e+01, + 1.05599998e+02, 1.06666670e+01, 1.01999998e+01, 4.66333351e+01, + 3.61333351e+01, 5.86666679e+00, 2.22666664e+01, 1.19699997e+02, + 1.06033333e+02, 2.07999992e+01, 3.20333328e+01, 5.05000000e+01, + 25., 9.83333302e+00, 7.67666702e+01, 1.16500000e+02, + 7.90333328e+01, 2.48666668e+01, 2.42666664e+01, 6.82666702e+01, + 1.11733330e+02, 2.59333324e+01, 2.07333336e+01, 79., + 1.13133331e+02, 7.96666670e+00, 3.70000005e+00, 1.72999992e+01, + 2.82999992e+01, 1.14333334e+01, 4.03333330e+00, 3.20666656e+01, + 6.59333344e+01, 1.60666676e+01, 1.17333336e+01, 3.08333340e+01, + 2.79666672e+01, 1.07333336e+01, 1.03000002e+01, 2.14666672e+01, + 3.24333344e+01, 3.55999985e+01, 2.57333336e+01, 3.57666664e+01, + 5.37000008e+01, 4.88666649e+01, 2.07999992e+01, 1.79666672e+01, + 2.96333332e+01, 2.56666660e+01, 1.06999998e+01, 4.87999992e+01, + 1.17666664e+02, 9.86666641e+01, 1.75333328e+01, 1.61666660e+01, + 3.57000008e+01, 2.84090900e+00, 9.54545498e+00, 2.94090900e+01, + 1.45000000e+01, 2.29545450e+00, 1.53409088e+00, 1.76136363e+00, + 1.45454550e+00, 3.93181825e+00, 1.73068180e+01, 3.73295441e+01, + 1.13977270e+01, 2.48863626e+00, 1.57954550e+00, 1.60227275e+00, + 1.86363637e+00, 5.73863649e+00, 2.00909100e+01, 2.64886360e+01, + 6.30681801e+00, 2.09090900e+00, 1.84090912e+00, 1.71590912e+00, + 2.05681825e+00, 5.36363649e+00, 1.16931820e+01, 1.00227270e+01, + 3.56818175e+00, 2.84090900e+00, 2.37500000e+00, 2.05681825e+00, + 2.21590900e+00, 5.29545450e+00, 2.93068180e+01, 1.15931816e+02, + 3.72386360e+01, 4.12500000e+00, 3.78409100e+00, 9.80681801e+00, + 5., 8.26136398e+00, 6.70227280e+01, 1.18147728e+02, + 2.55909100e+01, 5.37500000e+00, 6.57954550e+00, 1.07500000e+01, + 5.62500000e+00, 1.31477270e+01, 8.98068161e+01, 1.03045456e+02, + 1.53181820e+01, 4.35227251e+00, 5.59090900e+00, 6.75000000e+00, + 6.01136351e+00, 1.85113640e+01, 7.16704559e+01, 5.48977280e+01, + 8.48863602e+00, 4.09090900e+00, 4.69318199e+00, 4.29545450e+00, + 5.06818199e+00, 2.64772725e+00, 3.08181820e+01, 1.23397728e+02, + 2.39431820e+01, 2.62500000e+00, 1.15340910e+01, 4.60227280e+01, + 9.12500000e+00, 4.55681801e+00, 8.91477280e+01, 1.24840912e+02, + 8.86363602e+00, 3.89772725e+00, 2.58068180e+01, 4.06250000e+01, + 5.06818199e+00, 1.02272730e+01, 1.20545456e+02, 1.08750000e+02, + 9.13636398e+00, 5.98863649e+00, 2.81590900e+01, 2.07500000e+01, + 5.47727251e+00, 2.37613640e+01, 1.11806816e+02, 6.63295441e+01, + 9.75000000e+00, 3.79545450e+00, 1.06704550e+01, 6.94318199e+00, + 6.70454550e+00, 2.65909100e+00, 8.72727299e+00, 3.56704559e+01, + 4.31818199e+00, 8.97727251e-01, 3.12500000e+01, 9.48863602e+01, + 2.63750000e+01, 2.87500000e+00, 4.13181801e+01, 4.52159081e+01, + 3.10227275e+00, 4.44318199e+00, 6.97500000e+01, 8.87386398e+01, + 1.10795450e+01, 7.28409100e+00, 8.77272720e+01, 4.15795441e+01, + 3.28409100e+00, 6.03409100e+00, 6.47840881e+01, 3.81704559e+01, + 3.04545450e+00, 2.19318180e+01, 1.07488640e+02, 2.58977280e+01, + 3.67045450e+00, 5.37500000e+00, 3.38409081e+01, 9.09090900e+00, + 4.55681801e+00, 4.46417923e+01, 6.41343307e+01, 2.40597019e+01, + 7.28358221e+00, 7.26865673e+00, 8.04477596e+00, 8.32835865e+00, + 1.47313433e+01, 2.42985077e+01, 2.97014923e+01, 3.39104462e+01, + 2.19402981e+01, 1.62089558e+01, 1.86865673e+01, 2.31791039e+01, + 2.38656712e+01, 1.72686558e+01, 1.58059702e+01, 4.23134346e+01, + 5.42537308e+01, 3.82686577e+01, 2.09253731e+01, 1.80149250e+01, + 2.07761192e+01, 2.70149255e+00, 3.44776130e+00, 1.96417904e+01, + 7.48806000e+01, 5.22388077e+01, 1.42089548e+01, 5.08955240e+00, + 3.50746274e+00, 3.04477615e+01, 9.41641769e+01, 6.32089539e+01, + 8.31343269e+00, 2.65671635e+00, 1.47761190e+00, 1.62686563e+00, + 4.68656731e+00, 2.00746269e+01, 7.13731308e+01, 1.13029854e+02, + 4.59403000e+01, 1.18656721e+01, 6.98507452e+00, 8.14925385e+00, + 8.98507500e+00, 6.47761202e+00, 2.02985077e+01, 1.04238808e+02, + 9.06119385e+01, 2.82089558e+01, 5.95522404e+00, 4.01492548e+00, + 4.01492548e+00, 1.44776118e+00, 3.85074615e+00, 4.83880615e+01, + 8.67313461e+01, 2.54328365e+01, 4.44776106e+00, 2.14925385e+00, + 1.73134327e+00, 1.14776115e+01, 5.08955231e+01, 4.45820885e+01, + 7.31343269e+00, 2.01492548e+00, 1.34328356e+01, 9.43283558e+00, + 1.68656719e+00, 4.77611923e+00, 4.66417923e+01, 8.49403000e+01, + 2.64477615e+01, 4.41791058e+00, 3.46268654e+00, 3.59701490e+00, + 8.80596995e-01, 2.11940289e+00, 1.76865673e+01, 8.06119385e+01, + 4.63134346e+01, 1.07462683e+01, 6.77611923e+00, 8.44776154e+00, + 4.19402981e+00, 4.34328365e+00, 7.40298510e+00, 4.20895538e+01, + 3.81044769e+01, 9.91044807e+00, 6.38805962e+00, 2.02238808e+01, + 4.30895538e+01, 3.97014928e+00, 3.28805962e+01, 3.66119385e+01, + 3.28358197e+00, 2.79104471e+00, 8.73582077e+01, 1.09179108e+02, + 2.71641803e+00, 4.04477596e+00, 1.92835827e+01, 4.53134346e+01, + 9.35820866e+00, 3.26865673e+00, 3.30298500e+01, 1.14029854e+02, + 1.50149250e+01, 2.61194038e+00, 7.62686586e+00, 4.78805962e+01, + 2.28059692e+01, 4.59701490e+00, 8.22388077e+00, 1.17074623e+02, + 6.51641769e+01, 3., 2.62686563e+00, 4.29253731e+01, + 5.72238808e+01, 2.95522380e+00, 3.44776130e+00, 9.98806000e+01, + 1.12671638e+02, 8.92394333e+01, 1.09859152e+01, 1.76056337e+00, + 1.77042255e+01, 1.11887321e+02, 1.91830978e+01, 3.95774651e+00, + 1.89577465e+01, 3.95352097e+01, 1.79014091e+01, 4.70422554e+00, + 8.36619759e+00, 3.25492973e+01, 4.77464771e+00, 6.83098602e+00, + 3.31126747e+01, 5.99154930e+01, 2.64929581e+01, 7.16901398e+00, + 3.92957735e+00, 2.98591542e+00, 3.46478868e+00, 1.13380280e+01, + 4.67605629e+01, 2.95915489e+01, 1.75915489e+01, 1.17464790e+01, + 1.21690140e+01, 1.17183094e+01, 1.27183094e+01, 1.84788723e+01, + 2.88028164e+01, 1.04126762e+02, 5.39577446e+01, 2.45070434e+00, + 5.35211277e+00, 1.14197182e+02, 7.21267624e+01, 2.61971831e+00, + 7.12676048e+00, 4.68309860e+01, 3.80704231e+01, 1.01408453e+01, + 4.18309879e+00, 50., 2.94366188e+01, 2.73239446e+00, + 2.00563374e+01, 6.19295769e+01, 6.63943634e+01, 1.91549301e+01, + 5.47887325e+00, 2.78873229e+00, 2.15492964e+00, 4.97183084e+00, + 2.06056347e+01, 3.47464790e+01, 5.30985909e+01, 3.04225349e+01, + 1.29436617e+01, 1.15070419e+01, 9.23943615e+00, 1.12957745e+01, + 1.52394361e+01, 9.87887344e+01, 1.14478874e+02, 2.83098602e+00, + 2.57746482e+00, 6.95070419e+01, 8.32676086e+01, 4.50704241e+00, + 2.94366193e+00, 3.78169022e+01, 5.89436607e+01, 1.14507046e+01, + 4., 7.07042236e+01, 1.11267609e+02, 5.54929590e+00, + 5.35211277e+00, 3.48873253e+01, 6.64647903e+01, 3.28732376e+01, + 7.47887325e+00, 4.95774651e+00, 1.09014082e+01, 1.97183096e+00, + 6.04225349e+00, 2.03802814e+01, 5.76197166e+01, 5.18732376e+01, + 1.19014082e+01, 3.32394361e+00, 1.71830988e+00, 2.16901398e+00, + 4.01408434e+00, 3.54366188e+01, 9.61971817e+01, 3.90140843e+00, + 2.04225349e+00, 1.35774651e+01, 2.79718304e+01, 6.90140867e+00, + 2., 2.53802814e+01, 1.15253525e+02, 1.72112675e+01, + 2.02816892e+00, 3.11408443e+01, 1.20464790e+02, 1.55915489e+01, + 1.80281687e+00, 1.07042255e+01, 4.80281677e+01, 2.50563374e+01, + 4.64788723e+00, 7.74647903e+00, 1.01098595e+02, 3.59295769e+01, + 2.57746482e+00, 7.36619711e+00, 3.04647884e+01, 3.19577465e+01, + 8.43661976e+00, 2.80281687e+00, 1.67464790e+01, 1.90845070e+01, + 1.61971831e+00, 5.59090900e+00, 2.43863640e+01, 2.99090900e+01, + 1.45000000e+01, 1.33409090e+01, 6.26818199e+01, 7.21590881e+01, + 9.45454502e+00, 4.50000000e+00, 2.07954540e+01, 3.18409100e+01, + 1.76590900e+01, 8.54545498e+00, 6.40681839e+01, 1.21250000e+02, + 2.50909100e+01, 3.95454550e+00, 8.13636398e+00, 2.01363640e+01, + 1.23409090e+01, 2.75000000e+00, 3.04772720e+01, 1.33909088e+02, + 8.63181839e+01, 7.25000000e+00, 2.27272725e+00, 6.59090900e+00, + 5.11363649e+00, 1.36363637e+00, 5.50000000e+00, 1.16772728e+02, + 1.36613632e+02, 4.63636351e+00, 7.40909100e+00, 7.27272749e+00, + 3.15909100e+00, 4.77272749e+00, 6.05681801e+01, 1.31022720e+02, + 3.36818199e+01, 1.15000000e+01, 6.75000000e+00, 6.09090900e+00, + 1.86363637e+00, 2.79545450e+00, 2.83636360e+01, 1.41727280e+02, + 8.97954559e+01, 1.08636360e+01, 4.38636351e+00, 4.18181801e+00, + 2.22727275e+00, 2.65909100e+00, 1.45454550e+01, 1.43704544e+02, + 1.28977280e+02, 1.15000000e+01, 5.43181801e+00, 4.20454550e+00, + 3.43181825e+00, 4.02272749e+00, 1.05454550e+01, 1.06068184e+02, + 1.02795456e+02, 2.36363626e+00, 1.59090912e+00, 1.97727275e+00, + 1.70454550e+00, 3.15909100e+00, 2.39545460e+01, 8.75000000e+01, + 2.60227280e+01, 7.06818199e+00, 2.47727275e+00, 3.15909100e+00, + 2.77272725e+00, 3.56818175e+00, 1.43181820e+01, 8.61818161e+01, + 5.32045441e+01, 1.11136360e+01, 4.22727251e+00, 4.56818199e+00, + 5.27272749e+00, 8.20454502e+00, 9.93181801e+00, 4.95909081e+01, + 4.56363640e+01, 1.29090910e+01, 6.02272749e+00, 5.31818199e+00, + 6.09090900e+00, 8.02272701e+00, 8.75000000e+00, 23., + 2.41136360e+01, 2.27272734e-01, 1.81818187e-01, 2.04545453e-01, + 2.72727281e-01, 2.72727281e-01, 7.27272749e-01, 2.54545450e+00, + 1.34090912e+00, 5.90909064e-01, 3.18181813e-01, 2.95454532e-01, + 3.40909094e-01, 4.31818187e-01, 5.90909064e-01, 2.31818175e+00, + 1.47727275e+00, 8.63636374e-01, 3.63636374e-01, 3.63636374e-01, + 3.63636374e-01, 6.13636374e-01, 6.36363626e-01, 1.25000000e+00, + 1.29545450e+00, 8.40909064e-01, 4.77272719e-01, 4.31818187e-01, + 5.00000000e-01, 6.59090936e-01, 5.00000000e-01, 7.04545438e-01, + 6.81818187e-01, 3.12264156e+01, 5.47169828e+00, 2.94339633e+00, + 9.28301907e+00, 2.10377350e+01, 5.11320734e+00, 1.51320753e+01, + 5.39245300e+01, 7.64716949e+01, 1.67547169e+01, 3.71698117e+00, + 2.54716992e+00, 2.28301883e+00, 3.33962274e+00, 3.08867931e+01, + 1.02207550e+02, 5.92075462e+01, 1.75849056e+01, 7.84905672e+00, + 9.03773594e+00, 1.59811325e+01, 1.99056606e+01, 5.68490562e+01, + 9.60566025e+01, 1.62075462e+01, 1.26226416e+01, 1.10754719e+01, + 8.92452812e+00, 1.09811325e+01, 1.63207550e+01, 3.73207550e+01, + 3.33207550e+01, 4.63773575e+01, 2.06415100e+01, 6.77358484e+00, + 3.77358484e+00, 2.82452831e+01, 1.70566044e+01, 5.58490562e+00, + 3.57358475e+01, 1.07962265e+02, 7.09245300e+01, 1.80754719e+01, + 3.05660367e+00, 2.33962274e+00, 2.13207555e+00, 4., + 4.69622650e+01, 9.15471725e+01, 8.01320724e+01, 4.28301888e+01, + 2.83207550e+01, 2.11698112e+01, 1.50188675e+01, 1.91320763e+01, + 4.87547188e+01, 2.57169819e+01, 2.17547169e+01, 2.03207550e+01, + 2.22641506e+01, 1.93773594e+01, 1.88113213e+01, 2.69811325e+01, + 2.91698112e+01, 3.88490562e+01, 3.70754700e+01, 9.01886749e+00, + 6.15094328e+00, 4.33396225e+01, 7.96981125e+01, 7.96226406e+00, + 9.90566063e+00, 7.98867950e+01, 8.20188675e+01, 2.36415100e+01, + 7.05660391e+00, 5.22641516e+00, 1.00754719e+01, 5.32075453e+00, + 1.49622641e+01, 7.97358475e+01, 1.04849060e+02, 4.18113213e+01, + 8.20754719e+00, 2.07547164e+00, 1.77358496e+00, 5.88679266e+00, + 1.82641506e+01, 3.89056587e+01, 5.90754700e+01, 5.37169800e+01, + 2.60754719e+01, 8.62264156e+00, 9.43396187e+00, 1.69811325e+01, + 2.51698112e+01, 2.18301888e+01, 8.94528275e+01, 1.85471706e+01, + 3.84905672e+00, 3.44528313e+01, 1.06452827e+02, 1.97169819e+01, + 3.01886797e+00, 3.54528313e+01, 6.23584900e+01, 2.22452831e+01, + 7.69811344e+00, 1.32830191e+01, 6.79245300e+01, 4.21132088e+01, + 1.10943394e+01, 4.06037750e+01, 9.06981125e+01, 3.56603775e+01, + 5.88679266e+00, 2.92452836e+00, 1.13773584e+01, 2.13962269e+01, + 11., 1.13018866e+01, 6.39433975e+01, 6.10943413e+01, + 2.11320763e+01, 3.88679242e+00, 3.22641516e+00, 1.02641506e+01, + 7.11320734e+00, 5.87142868e+01, 2.41071439e+00, 1.46428573e+00, + 8.85357132e+01, 1.10821426e+02, 4.07142878e+00, 3.67857146e+00, + 5.35535698e+01, 1.59285717e+01, 5.50000000e+00, 6.21428585e+00, + 4.85178566e+01, 4.06428566e+01, 5.64285707e+00, 1.83928566e+01, + 3.26250000e+01, 2.24821434e+01, 6.37500000e+00, 5.03571415e+00, + 3., 1.25000000e+00, 3.64285707e+00, 3.15357151e+01, + 5.41428566e+01, 2.31250000e+01, 4.92857122e+00, 2., + 7.85714269e-01, 8.57142866e-01, 6.50000000e+00, 5.11428566e+01, + 6.70357132e+01, 7.00535736e+01, 5.98214293e+00, 1.66071427e+00, + 4.86428566e+01, 1.18428574e+02, 1.75892849e+01, 5.23214293e+00, + 2.67500000e+01, 3.12142849e+01, 6.25000000e+00, 4.92857122e+00, + 1.27142859e+01, 2.63750000e+01, 7.17857122e+00, 2.52678566e+01, + 5.70535698e+01, 6.30178566e+01, 1.09285717e+01, 2.51785707e+00, + 1.32142854e+00, 9.28571403e-01, 3.82142854e+00, 4.31428566e+01, + 1.01517860e+02, 4.76607132e+01, 1.32142859e+01, 8.25000000e+00, + 6.78571415e+00, 9.17857170e+00, 1.52142859e+01, 6.00178566e+01, + 9.30178604e+01, 7.30892868e+01, 2.37857151e+01, 1.96428573e+00, + 1.07142859e+01, 1.16089287e+02, 5.88392868e+01, 5.76785707e+00, + 1.29107141e+01, 5.23750000e+01, 1.54464283e+01, 4.71428585e+00, + 3.51785707e+00, 20., 1.37857141e+01, 1.25535717e+01, + 4.99464302e+01, 1.00767860e+02, 4.15000000e+01, 1.00535717e+01, + 3.89285707e+00, 2.48214293e+00, 2.71428561e+00, 1.58035717e+01, + 7.51250000e+01, 6.08928566e+01, 3.86964302e+01, 2.12500000e+01, + 1.91964283e+01, 2.20892849e+01, 1.82857151e+01, 2.69821434e+01, + 5.35892868e+01, 6.97142868e+01, 6.12321434e+01, 2.37500000e+00, + 4.76785707e+00, 8.65178604e+01, 8.26964264e+01, 3.75000000e+00, + 4.83928585e+00, 3.94464302e+01, 2.44285717e+01, 7.03571415e+00, + 4.32142878e+00, 2.70714283e+01, 4.83571434e+01, 4.64285707e+00, + 1.75000000e+01, 6.75357132e+01, 5.34642868e+01, 1.53214283e+01, + 3.30357146e+00, 1.62500000e+00, 1.92857146e+00, 3.14285707e+00, + 1.96964283e+01, 3.97142868e+01, 5.75178566e+01, 30., + 1.14821424e+01, 9.66071415e+00, 5.51785707e+00, 6.39285707e+00, + 1.33392859e+01, 1.31410255e+01, 1.07692308e+01, 13., + 1.29615383e+01, 1.95384617e+01, 3.84615402e+01, 5.36923065e+01, + 2.85128212e+01, 3.98717952e+00, 6.66666651e+00, 1.14743586e+01, + 1.52179489e+01, 3.91153831e+01, 8.93846130e+01, 4.66153831e+01, + 8.21794891e+00, 3.55128217e+00, 6.94871807e+00, 5.98717928e+00, + 7.19230747e+00, 6.60128174e+01, 1.04474358e+02, 2.03333340e+01, + 2.85897446e+00, 7.85897446e+00, 1.53589745e+01, 4.48717928e+00, + 6.37179470e+00, 6.66538467e+01, 6.82948685e+01, 7.06410265e+00, + 2.78205132e+00, 1.46923075e+01, 1.37179489e+01, 2.07820511e+01, + 2.22948723e+01, 2.92692299e+01, 3.46410255e+01, 3.42435913e+01, + 21., 8.07692337e+00, 1.07564106e+01, 1.51153851e+01, + 2.49487171e+01, 6.01025658e+01, 7.32307663e+01, 3.66538467e+01, + 1.01794872e+01, 6.25641012e+00, 5.98717928e+00, 4.67948723e+00, + 2.09358978e+01, 1.06102562e+02, 9.57051315e+01, 1.87820511e+01, + 4.50000000e+00, 1.02435894e+01, 2.61538458e+00, 2.05128217e+00, + 2.13205128e+01, 1.11358971e+02, 6.53461533e+01, 4.85897446e+00, + 4.38461542e+00, 1.78974361e+01, 1.71538467e+01, 2.01153851e+01, + 1.93205128e+01, 2.53333340e+01, 2.81025639e+01, 2.35512829e+01, + 1.63205128e+01, 1.58333330e+01, 1.47948713e+01, 1.89102573e+01, + 3.31282043e+01, 5.67820511e+01, 5.27179489e+01, 3.53076935e+01, + 1.77179489e+01, 9.85897446e+00, 4.80769253e+00, 7.89743567e+00, + 6.46923065e+01, 1.16961540e+02, 6.43974380e+01, 1.41666670e+01, + 6.62820530e+00, 1.27948713e+01, 9.87179458e-01, 2.48717952e+00, + 6.28717957e+01, 1.16423080e+02, 3.16538467e+01, 4.06410265e+00, + 16., 1.32435894e+01, 3.15641022e+01, 3.20512810e+01, + 1.61666660e+01, 1.22948713e+01, 1.36153851e+01, 1.12948713e+01, + 1.05641022e+01, 1.18205128e+01, 1.23846149e+01, 3.78333321e+01, + 6.68076935e+01, 4.76794853e+01, 2.64615383e+01, 1.82948723e+01, + 1.59615383e+01, 6.37179470e+00, 3.57692313e+00, 2.02051277e+01, + 1.04474358e+02, 1.04038460e+02, 3.26282043e+01, 1.14615383e+01, + 1.16923075e+01, 1.06025639e+01, 6.66666687e-01, 6.84615374e+00, + 7.84743576e+01, 82., 1.67435894e+01, 1.08205128e+01, + 4.25512810e+01, 1.37346935e+01, 9.57142830e+00, 8.06122437e+01, + 9.35714264e+01, 6.22448969e+00, 5.53061247e+00, 7.13673477e+01, + 9.94489822e+01, 1.74897957e+01, 1.95918369e+01, 8.88775482e+01, + 9.14693909e+01, 7.46938753e+00, 1.25918369e+01, 1.08428574e+02, + 1.16387756e+02, 2.34897957e+01, 2.63673477e+01, 6.84489822e+01, + 6.24897957e+01, 1.14081631e+01, 1.67346935e+01, 1.08591835e+02, + 1.14673470e+02, 2.16530609e+01, 2.08979588e+01, 3.94897957e+01, + 3.71224480e+01, 1.05918369e+01, 1.88163261e+01, 8.36122437e+01, + 8.62653046e+01, 3.95102043e+01, 2.61428566e+01, 3.75714302e+01, + 4.69183655e+01, 1.05714283e+01, 1.50612249e+01, 8.95306091e+01, + 1.12693878e+02, 5.03469391e+01, 3.61428566e+01, 3.34081650e+01, + 3.11632652e+01, 1.79387760e+01, 2.49183674e+01, 8.78979568e+01, + 1.00306122e+02, 4.08571434e+01, 3.36326523e+01, 3.27346954e+01, + 3.06326523e+01, 2.63469391e+01, 3.25510216e+01, 6.40816345e+01, + 6.46938782e+01, 2.90612240e+01, 2.54081631e+01, 2.95714283e+01, + 2.91428566e+01, 24., 2.30816326e+01, 30., 3.06122456e+01, + 3.08367348e+01, 2.36938782e+01, 1.64693871e+01, 1.01836739e+01, + 1.18163261e+01, 1.77551022e+01, 2.77346935e+01, 3.92040825e+01, + 3.75306129e+01, 3.48163261e+01, 2.77142849e+01, 1.81632652e+01, + 1.59795914e+01, 1.75510197e+01, 1.77346935e+01, 2.47142849e+01, + 3.07551022e+01, 3.11836739e+01, 3.31428566e+01, 2.78979588e+01, + 1.96734695e+01, 1.69795914e+01, 1.65306129e+01, 2.14693871e+01, + 2.27755108e+01, 2.05306129e+01, 2.19591827e+01, 2.29795914e+01, + 1.77755108e+01, 1.61836739e+01, 1.60408173e+01, 1.78367348e+01, + 8.26530647e+00, 9., 8.89795876e+00, 5., 6.28571415e+00, + 7.14285707e+00, 5.42857122e+00, 6.44897938e+00, 1.12448978e+01, + 1.34081631e+01, 1.26938772e+01, 8.63265324e+00, 6.59183693e+00, + 6.08163261e+00, 5.51020432e+00, 7.38775492e+00, 1.33469391e+01, + 1.20816326e+01, 9.61224461e+00, 8.28571415e+00, 7.73469400e+00, + 7.79591846e+00, 6.69387770e+00, 8.77550983e+00, 1.18775511e+01, + 8.91836739e+00, 8.26530647e+00, 8.93877506e+00, 7.87755108e+00, + 6.04081631e+00, 5.44897938e+00, 7., 1.10833330e+01, + 5.80555534e+00, 2.21666660e+01, 7.08333349e+00, 9.72222233e+00, + 5.11944427e+01, 5.46388893e+01, 2.77777786e+01, 6.41666651e+00, + 2.43611107e+01, 3.91111107e+01, 3.69444442e+00, 1.88888893e+01, + 7.46944427e+01, 4.17777786e+01, 1.63333340e+01, 6.30555534e+00, + 1.10305557e+02, 6.30833321e+01, 5.30555534e+00, 2.75555553e+01, + 7.42500000e+01, 2.77500000e+01, 7.83333349e+00, 1.94444447e+01, + 1.10666664e+02, 3.23333321e+01, 3.27777767e+00, 2.53333340e+01, + 1.09694443e+02, 2.40277786e+01, 3., 1.90833340e+01, + 8.44444466e+00, 5.08333349e+00, 1.21666670e+01, 2.07777786e+01, + 60., 7.85833359e+01, 3.97500000e+01, 4.19444466e+00, + 3.69444442e+00, 5.02777767e+00, 1.30277777e+01, 6.15277786e+01, + 1.08388885e+02, 4.74722214e+01, 1.06944447e+01, 4.61111116e+00, + 1.73333340e+01, 7.30555534e+00, 8.72222233e+00, 9.27500000e+01, + 8.73888855e+01, 9.80555534e+00, 2.50000000e+00, 4.79166679e+01, + 1.13083336e+02, 1.20555553e+01, 6.75000000e+00, 5.65000000e+01, + 5.36388893e+01, 2.91666675e+00, 1.25000000e+00, 2.27777786e+01, + 3.21666679e+01, 3.53055573e+01, 3.73055573e+01, 3.71666679e+01, + 3.18055553e+01, 2.86111107e+01, 2.19166660e+01, 4.44444466e+00, + 1.11388893e+01, 2.39444447e+01, 4.49722214e+01, 8.30555573e+01, + 7.10277786e+01, 2.20555553e+01, 4.97222233e+00, 1.63888884e+00, + 2.02777767e+00, 7.75000000e+00, 2.74166660e+01, 1.12527779e+02, + 6.25277786e+01, 4.47222233e+00, 1.05555558e+00, 3.56388893e+01, + 3.36944427e+01, 2.77777767e+00, 2.11111107e+01, 7.80833359e+01, + 25., 2.38888884e+00, 1.27777779e+00, 8.66666698e+00, + 1.11388893e+01, 1.58888893e+01, 1.82222214e+01, 2.05000000e+01, + 1.70833340e+01, 1.03333330e+01, 7.02777767e+00, 1.00277777e+01, + 10., 1.59166670e+01, 5.22500000e+01, 6.55555573e+01, + 2.67222214e+01, 9.97222233e+00, 7.61111116e+00, 1.44444442e+00, + 8.61111104e-01, 5.30555534e+00, 6.92500000e+01, 1.02527779e+02, + 1.95000000e+01, 2.05555558e+00, 1.91666663e+00, 2.58888893e+01, + 4.77777767e+00, 3.88888884e+00, 4.08055573e+01, 59., + 8.58333302e+00, 2.91666675e+00, 8.58333302e+00, 5.90697670e+00, + 1.76279068e+01, 6.99534912e+01, 1.78604660e+01, 9.88372135e+00, + 2.29534893e+01, 40., 9.90697670e+00, 5.93023252e+00, + 2.33255806e+01, 8.83720932e+01, 2.53488369e+01, 9.81395340e+00, + 1.96976738e+01, 5.02325592e+01, 1.20697670e+01, 7.34883738e+00, + 1.79302330e+01, 7.40697708e+01, 2.68837204e+01, 1.23255816e+01, + 1.35116282e+01, 4.13488388e+01, 1.43953485e+01, 7.46511650e+00, + 1.41860466e+01, 4.99767456e+01, 1.83720932e+01, 7.74418592e+00, + 1.06046515e+01, 2.75813961e+01, 1.05348835e+01, 4.11627913e+00, + 1.22093019e+01, 1.00488373e+02, 2.62790699e+01, 9.51162815e+00, + 1.57441864e+01, 7.47209320e+01, 1.11627903e+01, 4.04651165e+00, + 1.63255806e+01, 1.23302322e+02, 2.52325573e+01, 5.83720922e+00, + 2.08604660e+01, 9.64883728e+01, 1.48837214e+01, 6.02325583e+00, + 1.82093029e+01, 1.18581398e+02, 2.53720932e+01, 8.30232525e+00, + 2.49534893e+01, 9.57674408e+01, 1.94186039e+01, 1.21395350e+01, + 1.63255806e+01, 7.92325592e+01, 1.83953495e+01, 9.09302330e+00, + 1.96976738e+01, 6.36511612e+01, 1.96046505e+01, 3.32558131e+00, + 1.03488369e+01, 9.39767456e+01, 2.75348835e+01, 1.01395350e+01, + 2.11162796e+01, 1.18209305e+02, 2.89069767e+01, 4.53488350e+00, + 1.69767437e+01, 1.12883720e+02, 2.33023262e+01, 7.09302330e+00, + 2.86511631e+01, 1.26953491e+02, 3.28837204e+01, 5.51162767e+00, + 2.29302330e+01, 1.07372093e+02, 1.94418602e+01, 8.44186020e+00, + 3.28372078e+01, 1.25558136e+02, 2.70697670e+01, 6.46511650e+00, + 2.01627903e+01, 7.52093048e+01, 1.62558136e+01, 8.79069805e+00, + 2.48372097e+01, 1.01348839e+02, 1.96976738e+01, 6.62790680e+00, + 7.74418592e+00, 1.16046515e+01, 13., 9.90697670e+00, + 8.09302330e+00, 2.52093029e+01, 1.12325583e+01, 9.04651165e+00, + 1.00697670e+01, 1.29302330e+01, 1.63023262e+01, 1.21627903e+01, + 1.09534883e+01, 2.71860466e+01, 1.18837214e+01, 8.27906990e+00, + 1.07441864e+01, 1.30232553e+01, 1.59767447e+01, 1.26279068e+01, + 1.57441864e+01, 2.81627903e+01, 9.27906990e+00, 5.72093010e+00, + 7.58139515e+00, 1.01395350e+01, 1.25348835e+01, 1.09534883e+01, + 1.45581398e+01, 2.52790699e+01, 6.30232573e+00, 2.22571430e+01, + 8.45428543e+01, 5.69428558e+01, 8.08571434e+00, 1.74285717e+01, + 7.33142853e+01, 5.32857132e+01, 2.26571426e+01, 1.98571434e+01, + 8.85142822e+01, 5.85999985e+01, 8.34285736e+00, 1.43999996e+01, + 4.76285706e+01, 4.86285706e+01, 2.26285706e+01, 1.08000002e+01, + 3.96285706e+01, 1.91428566e+01, 9.19999981e+00, 1.83142853e+01, + 2.73714294e+01, 32., 1.73999996e+01, 1.51428568e+00, + 2.31428576e+00, 2.20000005e+00, 3.25714278e+00, 6.42857122e+00, + 6.42857122e+00, 8.57142830e+00, 5.05714273e+00, 2.77999992e+01, + 3.60571442e+01, 3.49428558e+01, 2.35714283e+01, 2.55428562e+01, + 7.79142838e+01, 9.21714249e+01, 5.94857140e+01, 2.56857147e+01, + 7.69714279e+01, 4.92000008e+01, 2.07999992e+01, 4.07999992e+01, + 1.05571426e+02, 8.41142883e+01, 3.52000008e+01, 3.85142860e+01, + 1.05971428e+02, 3.95999985e+01, 8.80000019e+00, 2.16857147e+01, + 8.38857117e+01, 4.12571411e+01, 1.05714283e+01, 5.14285707e+00, + 2.81428566e+01, 1.04857140e+01, 2.97142863e+00, 5.14285707e+00, + 1.51714287e+01, 1.03428574e+01, 2.85714293e+00, 4.33714294e+01, + 4.40571442e+01, 4.92000008e+01, 5.12857132e+01, 4.58571434e+01, + 3.51428566e+01, 3.45428581e+01, 3.67428589e+01, 2.61714287e+01, + 3.62571411e+01, 5.94285698e+01, 6.24857140e+01, 5.51142845e+01, + 5.49428558e+01, 4.12857132e+01, 3.32571411e+01, 3.97999992e+01, + 6.52285690e+01, 2.51142864e+01, 1.63999996e+01, 3.48285713e+01, + 7.73714294e+01, 3.93142853e+01, 1.77428570e+01, 1.18285713e+01, + 2.99428577e+01, 6.11428595e+00, 1.94285715e+00, 5.31428576e+00, + 2.52571430e+01, 1.23714285e+01, 2.85714293e+00, 2.59714279e+01, + 7.93428574e+01, 3.87428589e+01, 1.57428570e+01, 3.75999985e+01, + 7.27428589e+01, 2.35142860e+01, 6.05714273e+00, 2.46285706e+01, + 5.55142860e+01, 5.25428581e+01, 2.39142857e+01, 2.20571423e+01, + 5.46571426e+01, 4.04857140e+01, 2.47714291e+01, 2.98571434e+01, + 3.57999992e+01, 3.44000015e+01, 2.08571434e+01, 2.59714279e+01, + 3.91142845e+01, 3.45142860e+01, 2.65714283e+01, 8.68571472e+00, + 9.11428547e+00, 6.88571405e+00, 7.02857161e+00, 9.62857151e+00, + 1.23142853e+01, 6.62857151e+00, 5.31428576e+00, 1.25588236e+01, + 5.58823538e+00, 2.64705873e+00, 1.65441170e+01, 6.52205887e+01, + 2.08676472e+01, 3.69117641e+00, 4.14705896e+00, 6.67794113e+01, + 18., 1.76470590e+00, 1.33529415e+01, 1.01720589e+02, + 3.77941170e+01, 3.98529410e+00, 1.23970585e+01, 9.85735321e+01, + 4.41470604e+01, 4., 4.88235283e+00, 3.35441170e+01, + 1.24852943e+01, 1.67647064e+00, 1.65147057e+01, 2.73823528e+01, + 2.17794113e+01, 1.10147057e+01, 8.23529434e+00, 7.05882359e+00, + 5.29411745e+00, 3.44117641e+00, 8.36764717e+00, 1.04852943e+01, + 7.54411745e+00, 2.98529410e+00, 1.23235292e+01, 67., + 4.17647057e+01, 7.38235283e+00, 5.05882359e+00, 5.76911774e+01, + 4.15294113e+01, 3.02941179e+00, 6.77941179e+00, 9.76176453e+01, + 8.38970566e+01, 5.48529434e+00, 6.41176462e+00, 8.84558792e+01, + 9.80294113e+01, 6.07352924e+00, 2.70588231e+00, 5.01323547e+01, + 5.58676453e+01, 3.11764717e+00, 4.01470566e+00, 3.10441170e+01, + 6.31323547e+01, 1.76911774e+01, 6.44117641e+00, 6.75000000e+00, + 1.10147057e+01, 4.55882359e+00, 3.47058821e+00, 4.27941179e+00, + 4.41176462e+00, 2.38235283e+00, 6.86764717e+00, 5.82794113e+01, + 7.75000000e+01, 1.17647057e+01, 3.88235283e+00, 2.54411774e+01, + 4.07058830e+01, 5.04411745e+00, 5.89705896e+00, 6.92941208e+01, + 9.75294113e+01, 1.33676472e+01, 6.73529434e+00, 4.04852943e+01, + 1.05102943e+02, 1.24852943e+01, 2.38235283e+00, 5.49117661e+01, + 1.05191177e+02, 9.50000000e+00, 2.14705873e+00, 1.68970585e+01, + 1.05661766e+02, 3.74852943e+01, 2.50000000e+00, 7.42647076e+00, + 4.05882339e+01, 9.39705849e+00, 9.55882370e-01, 1.86764705e+00, + 1.83823526e+00, 1.76470590e+00, 4.10294104e+00, 39., + 8.48823547e+01, 1.53088236e+01, 2.63235283e+00, 5.92647076e+00, + 1.37058821e+01, 3.69117641e+00, 4.98529434e+00, 3.86764717e+01, + 9.27352905e+01, 2.57058830e+01, 5.29411745e+00, 9.50000000e+00, + 5.19705887e+01, 1.18970585e+01, 3.11764717e+00, 2.88088226e+01, + 1.05897057e+02, 2.55588226e+01, 4.01470566e+00, 3.50000000e+00, + 6.91764679e+01, 3.29411774e+01, 1.51470590e+00, 7.41176462e+00, + 8.54852905e+01, 3.02205887e+01, 1.29411769e+00, 2.17777777e+00, + 2.22222233e+00, 2.11111116e+00, 1., 6.66666687e-01, + 5.33333361e-01, 9.77777779e-01, 1.86666667e+00, 1.52666664e+01, + 1.52888889e+01, 1.33111115e+01, 1.05777779e+01, 7.82222223e+00, + 8.73333359e+00, 1.18888893e+01, 1.35555553e+01, 1.78666668e+01, + 1.78444443e+01, 1.78444443e+01, 1.61777782e+01, 1.08222218e+01, + 1.26666670e+01, 1.52222223e+01, 1.64666672e+01, 1.36222219e+01, + 1.36888885e+01, 1.38000002e+01, 1.39111109e+01, 9.95555592e+00, + 8.82222176e+00, 9.77777767e+00, 1.17333336e+01, 5.02222204e+00, + 5.53333330e+00, 5.68888903e+00, 4.46666670e+00, 3.02222228e+00, + 3.93333340e+00, 4., 5.46666670e+00, 3.96444435e+01, + 4.03333321e+01, 3.79555550e+01, 3.34666672e+01, 2.16222229e+01, + 2.77999992e+01, 3.14888897e+01, 3.28444443e+01, 4.30888901e+01, + 4.47333336e+01, 4.45999985e+01, 4.15777779e+01, 2.80444450e+01, + 3.05333328e+01, 3.23111115e+01, 3.73111115e+01, 2.24666672e+01, + 2.86000004e+01, 4.28888893e+01, 6.44444427e+01, 3.77555542e+01, + 2.07111111e+01, 1.95555553e+01, 2.18888893e+01, 5.93333340e+00, + 6.68888903e+00, 6.44444466e+00, 4.26666689e+00, 3.15555549e+00, + 4.06666660e+00, 5.44444466e+00, 5.93333340e+00, 4.11333351e+01, + 4.43777771e+01, 4.42888870e+01, 3.75111122e+01, 2.52000008e+01, + 2.97333336e+01, 3.42444458e+01, 3.23111115e+01, 4.14444427e+01, + 5.01333351e+01, 6.08666649e+01, 7.85555573e+01, 4.15999985e+01, + 3.32222214e+01, 2.94222221e+01, 3.05111103e+01, 1.46222219e+01, + 1.94444447e+01, 8.13333359e+01, 1.79488892e+02, 8.12222214e+01, + 1.43999996e+01, 1.07111111e+01, 1.23555555e+01, 4.19999981e+00, + 5., 5.46666670e+00, 4.42222214e+00, 3.53333330e+00, + 3.73333335e+00, 4.26666689e+00, 3.13333344e+00, 2.57111111e+01, + 3.04888897e+01, 3.06444435e+01, 3.58222237e+01, 3.12666664e+01, + 2.53999996e+01, 2.42666664e+01, 2.17999992e+01, 2.22222214e+01, + 2.54222221e+01, 5.08666649e+01, 1.58022217e+02, 1.12755554e+02, + 2.00666676e+01, 1.70888882e+01, 1.79555550e+01, 6.19999981e+00, + 5.33333349e+00, 4.46222229e+01, 1.79666672e+02, 1.54311111e+02, + 5.77777767e+00, 4.08888912e+00, 8.66666698e+00, 3.55102043e+01, + 1.08979588e+01, 1.91224499e+01, 3.76122437e+01, 3.47755089e+01, + 1.66734695e+01, 2.86122456e+01, 5.12653046e+01, 2.12857151e+01, + 1.01428576e+01, 1.72244892e+01, 2.92857151e+01, 2.80816326e+01, + 2.65306129e+01, 31., 2.51632652e+01, 2.51224499e+01, + 1.98775501e+01, 6.91836739e+00, 7.10204077e+00, 2.46938782e+01, + 3.46122437e+01, 1.92040825e+01, 1.62040825e+01, 6.44693909e+01, + 3.63061218e+01, 2.36734700e+00, 2.71428561e+00, 1.29795914e+01, + 1.28367348e+01, 5.77551031e+00, 7.53061247e+00, 4.80204086e+01, + 3.72653046e+01, 2.66734695e+01, 4.08979607e+01, 4.36530609e+01, + 2.03673477e+01, 8.65306091e+00, 2.28163261e+01, 40., + 2.78163261e+01, 2.16326523e+01, 2.79183674e+01, 3.52244911e+01, + 1.98367348e+01, 1.42040815e+01, 2.65102043e+01, 5.75102043e+01, + 2.55714283e+01, 2.12653065e+01, 3.91836739e+01, 6.44081650e+01, + 3.41020393e+01, 1.75306129e+01, 4.02244911e+01, 8.80204086e+01, + 1.27142859e+01, 6.02040815e+00, 1.82244892e+01, 3.47551003e+01, + 1.45510206e+01, 5.40816307e+00, 4.83469391e+01, 1.04897957e+01, + 2.07959175e+01, 1.48163261e+01, 9.93877506e+00, 1.76734695e+01, + 7.36326523e+01, 2.32857151e+01, 3.81632662e+00, 2.23061218e+01, + 2.52448978e+01, 3.33673477e+01, 2.63469391e+01, 1.45510206e+01, + 1.16530609e+01, 2.72244892e+01, 2.68163261e+01, 3.45306129e+01, + 1.75510197e+01, 3.07551022e+01, 4.92857132e+01, 3.05510197e+01, + 6.65306139e+00, 2.82653065e+01, 7.57959213e+01, 5.78571434e+01, + 6.83673477e+00, 8.59183693e+00, 2.38571434e+01, 1.80816326e+01, + 3.79591846e+00, 1.74693871e+01, 1.21877548e+02, 2., + 5.16326523e+00, 3.40816331e+00, 1.73469388e+00, 4.38775492e+00, + 1.18285713e+02, 1.13918365e+02, 4.55102062e+00, 3.42857146e+00, + 4.71428585e+00, 9.85714245e+00, 6.30612230e+00, 2.89795923e+00, + 5.41020393e+01, 1.30163269e+02, 3.26938782e+01, 6.65306139e+00, + 3.36734700e+00, 9.42857170e+00, 1.30408163e+01, 3.69387746e+00, + 7.24489784e+00, 1.21510201e+02, 1.16020409e+02, 1.14693880e+01, + 6.38775492e+00, 6.95918369e+00, 1.66122456e+01, 9.20408154e+00, + 1.13673468e+01, 6.08367348e+01, 1.11653061e+02, 9.38181782e+00, + 8.49090862e+00, 8.50909138e+00, 9.92727280e+00, 6.59999990e+00, + 6.78181839e+00, 1.03818178e+01, 13., 1.94545460e+01, + 1.89818172e+01, 1.66727276e+01, 1.73272724e+01, 1.67999992e+01, + 1.36545458e+01, 1.95818176e+01, 2.42181816e+01, 3.30363655e+01, + 1.63818188e+01, 1.18000002e+01, 7.47818146e+01, 7.94363632e+01, + 1.76545448e+01, 1.33272724e+01, 3.53818169e+01, 7.14727249e+01, + 1.25090914e+01, 5.90909100e+00, 6.24909096e+01, 5.98545456e+01, + 1.08727274e+01, 9.92727280e+00, 7.07636337e+01, 1.44909086e+01, + 1.07818184e+01, 1.17454548e+01, 1.42727270e+01, 1.22727270e+01, + 8.94545460e+00, 1.06727276e+01, 1.45818186e+01, 3.01090908e+01, + 2.69090900e+01, 2.05454540e+01, 4.04909096e+01, 3.49454536e+01, + 1.76000004e+01, 2.23090916e+01, 3.34363632e+01, 6.10363655e+01, + 1.76909084e+01, 1.16727276e+01, 1.06654549e+02, 1.04800003e+02, + 1.49818182e+01, 1.39090910e+01, 7.11090927e+01, 8.72909088e+01, + 1.67999992e+01, 8.16363621e+00, 5.71636353e+01, 5.14363632e+01, + 1.25090914e+01, 1.18363638e+01, 8.76363602e+01, 1.55636368e+01, + 1.25454550e+01, 1.26909094e+01, 1.57636366e+01, 1.27636366e+01, + 1.03454542e+01, 1.51272726e+01, 1.80545464e+01, 3.49090919e+01, + 2.15272732e+01, 1.53818178e+01, 7.91090927e+01, 6.52909088e+01, + 1.26000004e+01, 2.07090912e+01, 4.61818199e+01, 8.08181839e+01, + 1.18000002e+01, 9.56363678e+00, 1.12563637e+02, 9.39818192e+01, + 6.89090919e+00, 1.27272730e+01, 1.05472725e+02, 6.58363647e+01, + 1.33272724e+01, 1.36363640e+01, 5.05090904e+01, 3.44000015e+01, + 1.19636364e+01, 1.14727268e+01, 8.23090897e+01, 1.16545458e+01, + 1.03454542e+01, 7.70909071e+00, 1.85272732e+01, 1.24545450e+01, + 7.80000019e+00, 1.23454542e+01, 1.48909092e+01, 3.36363640e+01, + 1.06181822e+01, 8.76363659e+00, 76., 7.22545471e+01, + 1.28363638e+01, 1.00727272e+01, 4.44181824e+01, 6.99454575e+01, + 1.07454548e+01, 8.38181782e+00, 7.08545456e+01, 5.53090897e+01, + 8.10909081e+00, 7.96363640e+00, 8.65272751e+01, 3.67636375e+01, + 1.06909094e+01, 13., 38., 2.00909100e+01, 9.27272701e+00, + 1.11999998e+01, 5.61272736e+01, 1.95156250e+01, 2.79531250e+01, + 5.05000000e+01, 6.69687500e+01, 7.56718750e+01, 6.12500000e+01, + 4.12187500e+01, 3.02656250e+01, 2.65781250e+01, 4.17656250e+01, + 5.54687500e+01, 7.17968750e+01, 8.58281250e+01, 7.56718750e+01, + 4.45625000e+01, 2.66875000e+01, 2.82500000e+01, 3.44218750e+01, + 5.02500000e+01, 7.04062500e+01, 7.88281250e+01, 6.49375000e+01, + 4.56406250e+01, 2.90937500e+01, 1.17187500e+01, 1.37031250e+01, + 2.04531250e+01, 2.73281250e+01, 3.13125000e+01, 2.87812500e+01, + 2.14843750e+01, 1.31875000e+01, 2.56875000e+01, 3.16562500e+01, + 4.88125000e+01, 5.84531250e+01, 8.53906250e+01, 8.94843750e+01, + 5.19531250e+01, 3.18125000e+01, 3.37812500e+01, 3.70468750e+01, + 5.46250000e+01, 7.30937500e+01, 9.96562500e+01, 1.00687500e+02, + 7.25781250e+01, 4.42968750e+01, 3.32343750e+01, 3.49687500e+01, + 5.05000000e+01, 6.77031250e+01, 8.48593750e+01, 8.79218750e+01, + 6.68906250e+01, 4.19218750e+01, 1.30468750e+01, 1.47812500e+01, + 1.95781250e+01, 2.35000000e+01, 3.37031250e+01, 3.41718750e+01, + 2.67656250e+01, 1.49687500e+01, 2.14843750e+01, 2.08750000e+01, + 3.19687500e+01, 4.14062500e+01, 5.80937500e+01, 4.75937500e+01, + 2.92656250e+01, 2.24375000e+01, 2.46250000e+01, 2.88906250e+01, + 3.24531250e+01, 4.58281250e+01, 7.80312500e+01, 7.08437500e+01, + 3.82343750e+01, 2.39375000e+01, 2.09843750e+01, 2.53437500e+01, + 2.57968750e+01, 3.24843750e+01, 6.56718750e+01, 7.10937500e+01, + 3.63593750e+01, 2.00468750e+01, 7.23437500e+00, 1.05937500e+01, + 1.41406250e+01, 1.47968750e+01, 2.32500000e+01, 2.25468750e+01, + 13., 6.46875000e+00, 9.06250000e-01, 7.81250000e-01, + 1.03125000e+00, 2.01562500e+00, 3.59375000e+00, 2.42187500e+00, + 1.79687500e+00, 1.12500000e+00, 1.18750000e+00, 1.79687500e+00, + 1.06250000e+00, 1.87500000e+00, 4.14062500e+00, 3.78125000e+00, + 2.07812500e+00, 1.21875000e+00, 1.03125000e+00, 1.40625000e+00, + 9.37500000e-01, 1.90625000e+00, 4.73437500e+00, 3.54687500e+00, + 1.51562500e+00, 7.65625000e-01, 2.96875000e-01, 3.75000000e-01, + 4.68750000e-01, 8.90625000e-01, 1.25000000e+00, 1.03125000e+00, + 5.00000000e-01, 3.12500000e-01, 2.30799999e+01, 2.75400009e+01, + 1.47399998e+01, 7.55999994e+00, 1.45200005e+01, 1.52399998e+01, + 1.30200005e+01, 1.12399998e+01, 4.37200012e+01, 4.71800003e+01, + 2.71000004e+01, 1.76399994e+01, 2.67999992e+01, 2.30400009e+01, + 2.57999992e+01, 3.06800003e+01, 4.61199989e+01, 3.75000000e+01, + 2.35200005e+01, 1.58000002e+01, 2.24200001e+01, 2.69200001e+01, + 3.35600014e+01, 4.52400017e+01, 3.72400017e+01, 2.97800007e+01, + 1.42399998e+01, 1.00600004e+01, 1.66200008e+01, 2.16399994e+01, + 2.28400002e+01, 2.78600006e+01, 4.34599991e+01, 4.42000008e+01, + 2.41800003e+01, 1.11999998e+01, 1.92800007e+01, 2.79400005e+01, + 3.35800018e+01, 34., 8.46600037e+01, 6.91399994e+01, + 3.35400009e+01, 2.11000004e+01, 3.20200005e+01, 4.64000015e+01, + 5.78600006e+01, 7.22799988e+01, 7.83399963e+01, 5.60600014e+01, + 2.81000004e+01, 1.93199997e+01, 3.20200005e+01, 4.52599983e+01, + 5.33600006e+01, 6.54599991e+01, 6.71399994e+01, 4.56399994e+01, + 2.34599991e+01, 1.49600000e+01, 2.09599991e+01, 3.24599991e+01, + 4.14199982e+01, 5.15200005e+01, 4.39000015e+01, 4.50999985e+01, + 1.98199997e+01, 8.92000008e+00, 13., 2.70200005e+01, + 3.42400017e+01, 3.13799992e+01, 7.18600006e+01, 7.49000015e+01, + 3.48800011e+01, 2.03799992e+01, 2.42600002e+01, 3.61199989e+01, + 4.85999985e+01, 5.32000008e+01, 6.70599976e+01, 6.49000015e+01, + 4.56199989e+01, 3.15799999e+01, 2.57600002e+01, 3.12399998e+01, + 4.21800003e+01, 5.23400002e+01, 6.00200005e+01, 49., + 5.73400002e+01, 3.96800003e+01, 2.53600006e+01, 2.11599998e+01, + 4.10800018e+01, 5.55200005e+01, 2.85400009e+01, 3.47999992e+01, + 1.96399994e+01, 1.08199997e+01, 1.27799997e+01, 2.11399994e+01, + 2.38999996e+01, 2.15799999e+01, 5.27999992e+01, 6.03600006e+01, + 3.36599998e+01, 2.22000008e+01, 2.06000004e+01, 2.53199997e+01, + 4.22400017e+01, 4.37000008e+01, 4.99799995e+01, 42., + 6.48799973e+01, 5.84599991e+01, 2.48199997e+01, 2.12800007e+01, + 4.63199997e+01, 6.21399994e+01, 4.78600006e+01, 2.95599995e+01, + 6.66200027e+01, 9.23799973e+01, 3.36599998e+01, 1.25799999e+01, + 5.72999992e+01, 7.64000015e+01, 1.32037039e+01, 2.27222214e+01, + 2.18518524e+01, 17., 1.37037039e+01, 7.22222233e+00, + 6.70370388e+00, 9.77777767e+00, 4.22222233e+00, 8.03703690e+00, + 2.53518524e+01, 2.93703709e+01, 2.64814816e+01, 1.22592592e+01, + 1.11296301e+01, 7.01851845e+00, 7.57407427e+00, 6.74074078e+00, + 2.28518524e+01, 4.15370369e+01, 30., 9.20370388e+00, + 6.48148155e+00, 5.72222233e+00, 7.48148155e+00, 6.48148155e+00, + 1.44444447e+01, 6.60555573e+01, 4.34629631e+01, 7.59259272e+00, + 4.18518496e+00, 5., 7.72222233e+00, 5.20370369e+01, + 7.54629593e+01, 2.18148155e+01, 9.37036991e+00, 6.87037039e+00, + 2.03703713e+00, 1.27777779e+00, 2.40740752e+00, 1.81111107e+01, + 9.54074097e+01, 6.05740738e+01, 1.70925922e+01, 4.61111116e+00, + 5.14814806e+00, 2.01851845e+00, 2.48148155e+00, 5.79629612e+00, + 7.43888855e+01, 9.64259262e+01, 1.91111107e+01, 3.37037039e+00, + 4.31481504e+00, 4.35185194e+00, 3.01851845e+00, 3.31481481e+00, + 3.33703690e+01, 1.02481483e+02, 2.57037029e+01, 1.09259260e+00, + 2.37037039e+00, 5.57407427e+00, 3.05555558e+00, 4.75185204e+01, + 8.14074097e+01, 1.88148155e+01, 1.02592592e+01, 7.38333359e+01, + 2.30370369e+01, 2.40740746e-01, 5.74074090e-01, 1.85555553e+01, + 1.09537041e+02, 5.49444427e+01, 5.70370388e+00, 2.57037029e+01, + 2.31111107e+01, 1.44444442e+00, 9.81481493e-01, 4.29629612e+00, + 8.99259262e+01, 8.93148117e+01, 5.88888884e+00, 4.27777767e+00, + 2.09074078e+01, 5.11111116e+00, 9.25925910e-01, 1.48148143e+00, + 40., 8.07592621e+01, 8.18518543e+00, 9.81481493e-01, + 2.31481476e+01, 1.79814816e+01, 2.74074078e+00, 6.58888855e+01, + 5.78148155e+01, 4.85185194e+00, 3.98148155e+00, 1.08796295e+02, + 7.87777786e+01, 2.40740752e+00, 1.24074078e+00, 2.45000000e+01, + 7.14259262e+01, 1.73333340e+01, 3.75925922e+00, 9.49444427e+01, + 1.19759262e+02, 2.66666675e+00, 4.44444448e-01, 4.37037039e+00, + 5.74444427e+01, 2.95925922e+01, 3.11111116e+00, 3.40370369e+01, + 1.19111115e+02, 2.09444447e+01, 8.70370388e-01, 1.24074078e+00, + 3.07037029e+01, 3.12777786e+01, 3.07407403e+00, 5.61111116e+00, + 1.18185188e+02, 6.59814835e+01, 1.92461548e+01, 2.07999992e+01, + 2.98923073e+01, 3.38461533e+01, 3.33384628e+01, 3.57076912e+01, + 2.60153847e+01, 1.99230766e+01, 1.94461536e+01, 2.70769234e+01, + 3.95538445e+01, 4.99538460e+01, 50., 4.35538445e+01, + 2.84153843e+01, 2.18615379e+01, 1.54615383e+01, 2.47076931e+01, + 3.73538475e+01, 4.71692314e+01, 4.29692307e+01, 3.09230766e+01, + 2.31230774e+01, 1.74153843e+01, 4.63076925e+00, 6.95384598e+00, + 1.28769226e+01, 1.64615383e+01, 1.52461538e+01, 1.30461540e+01, + 1.02461538e+01, 6.72307682e+00, 3.10307693e+01, 4.84769249e+01, + 5.37230759e+01, 5.05384598e+01, 3.81846161e+01, 3.37538452e+01, + 2.64307690e+01, 2.11538467e+01, 2.20461540e+01, 3.32307701e+01, + 5.46307678e+01, 6.65846176e+01, 7.14615402e+01, 5.77076912e+01, + 3.38153839e+01, 2.22000008e+01, 1.86769238e+01, 2.86769238e+01, + 4.79692307e+01, 6.06153831e+01, 6.77538452e+01, 5.01692314e+01, + 2.79384613e+01, 1.94461536e+01, 7.04615402e+00, 1.09846153e+01, + 2.11384621e+01, 2.38769226e+01, 1.66923084e+01, 1.42461538e+01, + 1.26153851e+01, 9.46153831e+00, 4.57230759e+01, 9.67384644e+01, + 8.24153824e+01, 5.31692314e+01, 3.32461548e+01, 5.08153839e+01, + 1.69692307e+01, 1.87076931e+01, 3.09846153e+01, 5.67692299e+01, + 7.83538437e+01, 7.75999985e+01, 5.41846161e+01, 34., + 1.97538452e+01, 2.28769226e+01, 2.29384613e+01, 3.58615379e+01, + 5.39846153e+01, 5.30769234e+01, 5.85999985e+01, 5.22461548e+01, + 2.82153854e+01, 1.70153847e+01, 6.89230776e+00, 1.13999996e+01, + 1.78769226e+01, 1.85076923e+01, 1.78769226e+01, 2.08153839e+01, + 1.44307690e+01, 7.03076935e+00, 3.35384598e+01, 1.14661537e+02, + 7.34461517e+01, 2.40307693e+01, 3.71538467e+01, 1.10430771e+02, + 3.39076920e+01, 9.04615402e+00, 3.39076920e+01, 9.39076920e+01, + 9.05230789e+01, 5.29538460e+01, 3.38769226e+01, 5.48153839e+01, + 2.39846153e+01, 1.73846149e+01, 2.50153847e+01, 5.07846146e+01, + 6.35384598e+01, 4.68307686e+01, 2.99538460e+01, 2.61384621e+01, + 1.41230774e+01, 1.43538465e+01, 8.43076897e+00, 1.34153843e+01, + 1.79230766e+01, 1.69076920e+01, 1.11538458e+01, 1.01692305e+01, + 6.75384617e+00, 5.16923094e+00, 2.04731178e+01, 2.03548393e+01, + 2.62365580e+00, 4.52688169e+00, 7.34085999e+01, 1.05774193e+02, + 1.28387098e+01, 7.94623661e+00, 1.68817196e+01, 1.94731178e+01, + 5.75268841e+00, 8.78494644e+00, 3.81505394e+01, 4.09677429e+01, + 1.01182795e+01, 6.60215044e+00, 8.11827946e+00, 8.89247322e+00, + 6.54838705e+00, 7.93548393e+00, 9.32258034e+00, 1.00107527e+01, + 1.01182795e+01, 6.74193525e+00, 5.54838705e+00, 3.01075268e+00, + 3.29032254e+00, 4.31182814e+00, 5.61290312e+00, 6.79569912e+00, + 8.20430088e+00, 5.34408617e+00, 5.58709679e+01, 6.61935501e+01, + 5.21505356e+00, 6.76344109e+00, 8.57526855e+01, 104., + 9.81720448e+00, 1.00537634e+01, 2.94193554e+01, 3.10322590e+01, + 5.55913973e+00, 1.44086018e+01, 9.86989212e+01, 1.08720428e+02, + 1.05806456e+01, 7.08602142e+00, 1.65268822e+01, 1.59462366e+01, + 7.88172054e+00, 9.75268841e+00, 1.68387089e+01, 1.92150536e+01, + 1.45161295e+01, 9.30107498e+00, 8.08602142e+00, 4.79569912e+00, + 4.69892454e+00, 5.18279552e+00, 7.16129017e+00, 9.15053749e+00, + 10., 7.54838705e+00, 9.71935501e+01, 1.16473122e+02, + 1.34516125e+01, 5.45161295e+00, 4.54301071e+01, 6.63548355e+01, + 9.22580624e+00, 1.15161295e+01, 3.59462357e+01, 4.73978500e+01, + 4.29032278e+00, 1.23978491e+01, 1.23354836e+02, 1.29892471e+02, + 9.10752678e+00, 6.61290312e+00, 2.35161285e+01, 2.78279572e+01, + 7.88172054e+00, 9.36559105e+00, 3.10860214e+01, 4.88172035e+01, + 1.45161295e+01, 7.45161295e+00, 7.32258081e+00, 6.49462366e+00, + 6.08602142e+00, 5.62365580e+00, 7.96774197e+00, 8.70967770e+00, + 8.12903214e+00, 7.56989241e+00, 8.60752716e+01, 1.20408600e+02, + 1.36021509e+01, 4.03225803e+00, 2.16344090e+01, 4.30752678e+01, + 6.03225803e+00, 4.80645180e+00, 5.61397858e+01, 9.46344070e+01, + 1.03655910e+01, 7.43010759e+00, 9.06451645e+01, 1.15881721e+02, + 8.04301071e+00, 3.26881719e+00, 1.90107536e+01, 3.44838715e+01, + 7.53763437e+00, 8.22580624e+00, 6.69247284e+01, 1.03344086e+02, + 1.12365589e+01, 3.88172054e+00, 6.06451607e+00, 1.08064518e+01, + 5.52688169e+00, 4.27957010e+00, 8.53763485e+00, 1.23118277e+01, + 7.41935492e+00, 4.92473125e+00, 1.69014084e+00, 1.33802819e+00, + 2.21126771e+00, 1.60845070e+01, 1.08084511e+02, 3.58169022e+01, + 2.64788723e+00, 1.54929578e+00, 6.07042265e+00, 3.08450699e+00, + 1.33802819e+00, 2.60985909e+01, 1.24676056e+02, 3.77746468e+01, + 1.87323940e+00, 4.15492964e+00, 2.32112675e+01, 1.35070419e+01, + 1.10704222e+01, 9.46478844e+00, 1.33661976e+01, 7.46478891e+00, + 8.21126747e+00, 1.93943653e+01, 1.42816906e+01, 1.35633802e+01, + 2.31690140e+01, 1.45352116e+01, 9.61971855e+00, 1.02253523e+01, + 2.33098583e+01, 2.42676048e+01, 3.54929566e+00, 3.30985904e+00, + 3.49295783e+00, 1.07746477e+01, 9.20140839e+01, 7.09295807e+01, + 5.50704241e+00, 2.98591542e+00, 6.09859133e+00, 5.11267614e+00, + 1.90140843e+00, 4.43661976e+00, 1.27633804e+02, 1.33901413e+02, + 8.14084530e+00, 2.91549301e+00, 3.08169022e+01, 2.79577465e+01, + 1.14225349e+01, 4.80281687e+00, 1.97042255e+01, 6.52957764e+01, + 2.73943653e+01, 1.90140839e+01, 2.51971836e+01, 3.56338043e+01, + 4.23802834e+01, 2.57605629e+01, 1.23380280e+01, 2.26056347e+01, + 5.36338043e+01, 4.16901398e+01, 4.60563374e+00, 5.16901398e+00, + 5.18309879e+00, 1.24225349e+01, 4.09436607e+01, 3.68591537e+01, + 8.69014072e+00, 4.02816916e+00, 4., 8.29577446e+00, + 7.12676048e+00, 1.01690140e+01, 7.48732376e+01, 1.35084503e+02, + 2.46197186e+01, 2.63380289e+00, 1.37323942e+01, 2.64084511e+01, + 1.94647884e+01, 5.14084530e+00, 1.49295778e+01, 1.34309860e+02, + 1.00845070e+02, 8.09859180e+00, 1.48873243e+01, 3.34929581e+01, + 5.08873253e+01, 1.90140839e+01, 8.63380241e+00, 4.74366188e+01, + 1.13577461e+02, 2.67887325e+01, 3.81690145e+00, 4.16901398e+00, + 3.85915494e+00, 8.04225349e+00, 2.28450699e+01, 2.18309860e+01, + 7.67605639e+00, 3.54929566e+00, 4.08450699e+00, 6.57746458e+00, + 7., 1.16760559e+01, 39., 5.80422554e+01, 1.58873243e+01, + 5.64788723e+00, 4.91549301e+00, 1.42676058e+01, 1.94507046e+01, + 9.36619759e+00, 2.24788723e+01, 9.49859161e+01, 6.97887344e+01, + 6.18309879e+00, 7.43661976e+00, 1.30140848e+01, 3.31408463e+01, + 1.05633802e+01, 1.02816906e+01, 4.81408463e+01, 1.05422539e+02, + 1.39718313e+01, 9., 1.38928576e+01, 1.93571434e+01, + 1.01428576e+01, 3.25000000e+00, 5.35714293e+00, 1.39642859e+01, + 1.58571424e+01, 2.58928566e+01, 3.29285698e+01, 3.76428566e+01, + 2.09642849e+01, 6.21428566e+01, 3.63928566e+01, 2.33214283e+01, + 2.16785717e+01, 1.04964287e+02, 4.95000000e+01, 1.78928566e+01, + 3.83571434e+01, 1.28857147e+02, 6.86785736e+01, 9.28571415e+00, + 2.78214283e+01, 1.06214287e+02, 4.62500000e+01, 1.65357151e+01, + 2.85714283e+01, 6.95714264e+01, 2.27500000e+01, 9.57142830e+00, + 2.53571434e+01, 1.02857141e+01, 1.84285717e+01, 3.02857151e+01, + 1.65714283e+01, 4.39285707e+00, 6.21428585e+00, 1.36428576e+01, + 15., 2.68928566e+01, 4.29642868e+01, 5.97500000e+01, + 3.06071434e+01, 4.72142868e+01, 3.21428566e+01, 2.38571434e+01, + 2.56428566e+01, 8.05000000e+01, 6.28214302e+01, 4.18214302e+01, + 3.81071434e+01, 1.30250000e+02, 1.09714287e+02, 2.36428566e+01, + 2.45000000e+01, 1.01035713e+02, 7.01071396e+01, 4.28571434e+01, + 3.38571434e+01, 7.59642868e+01, 5.30714302e+01, 31., + 3.23571434e+01, 9.71428585e+00, 1.88214283e+01, 3.08214283e+01, + 1.41428576e+01, 4.85714293e+00, 5.78571415e+00, 6.89285707e+00, + 9.96428585e+00, 2.44642849e+01, 4.36785698e+01, 5.20714302e+01, + 3.17500000e+01, 2.06428566e+01, 1.64642849e+01, 1.46071424e+01, + 1.85714283e+01, 3.06071434e+01, 4.44642868e+01, 5.08928566e+01, + 3.36428566e+01, 7.48928604e+01, 9.29285736e+01, 3.55000000e+01, + 1.96785717e+01, 4.13571434e+01, 3.85357132e+01, 4.72857132e+01, + 2.37142849e+01, 3.94285698e+01, 7.16428604e+01, 76., + 4.67500000e+01, 3.82142854e+00, 6.25000000e+00, 8.92857170e+00, + 4.17857122e+00, 1.82142854e+00, 1.64285719e+00, 1.89285719e+00, + 3.03571439e+00, 6.07142878e+00, 9.28571415e+00, 1.40714283e+01, + 9.50000000e+00, 3.85714293e+00, 3.42857146e+00, 3.57142854e+00, + 5.07142878e+00, 6.39285707e+00, 1.16785717e+01, 1.66071434e+01, + 9.85714245e+00, 6.35714293e+00, 1.04285717e+01, 5.07142878e+00, + 4.64285707e+00, 4.07142878e+00, 6.57142878e+00, 1.27857141e+01, + 7.14285707e+00, 4.03571415e+00, 1.40357141e+01, 1.60357151e+01, + 6.82142878e+00, 1.66071427e+00, 3.33928561e+00, 5.19642878e+00, + 7.23214293e+00, 7.41071415e+00, 5.62500000e+00, 4.21428585e+00, + 1.66071427e+00, 4.07142878e+00, 8.80357170e+00, 2.24107151e+01, + 4.39464302e+01, 3.09642849e+01, 1.26071424e+01, 8.12500000e+00, + 3.28571439e+00, 3.67857146e+00, 1.39642859e+01, 5.90892868e+01, + 7.50714264e+01, 3.10714283e+01, 7.89285707e+00, 4.50000000e+00, + 2.80357146e+00, 5.83928585e+00, 2.08214283e+01, 7.09464264e+01, + 5.61607132e+01, 1.36250000e+01, 3.35714293e+00, 3.07142854e+00, + 3.76785707e+00, 8.75000000e-01, 2.89285707e+00, 1.09107141e+01, + 2.54821434e+01, 1.93214283e+01, 8.01785755e+00, 3.78571439e+00, + 1.37500000e+00, 2.82142854e+00, 7.58928585e+00, 3.77678566e+01, + 1.12482140e+02, 7.67678604e+01, 1.53035717e+01, 5., + 1.89285719e+00, 1.28928576e+01, 2.05892849e+01, 6.29464302e+01, + 1.07357140e+02, 6.92321396e+01, 2.21785717e+01, 8.44642830e+00, + 8.50000000e+00, 2.58571434e+01, 3.40714302e+01, 6.61964264e+01, + 1.00839287e+02, 5.81428566e+01, 1.95535717e+01, 9.91071415e+00, + 2.55535717e+01, 3.03571433e-01, 1.01785719e+00, 7.48214293e+00, + 2.73928566e+01, 4.21250000e+01, 1.48392859e+01, 2.94642854e+00, + 1., 3.85714293e+00, 6.91071415e+00, 2.14821434e+01, + 9.09464264e+01, 1.01017860e+02, 3.69642868e+01, 8.41071415e+00, + 3.85714293e+00, 2.35714283e+01, 2.61250000e+01, 3.11607151e+01, + 8.23571396e+01, 7.51250000e+01, 3.89642868e+01, 2.33571434e+01, + 2.31071434e+01, 3.38928566e+01, 2.22857151e+01, 2.55714283e+01, + 1.05303574e+02, 9.79642868e+01, 3.64285698e+01, 2.12500000e+01, + 5.05178566e+01, 1.60714284e-01, 5.35714269e-01, 3.07142854e+00, + 1.45357141e+01, 4.36250000e+01, 1.84464283e+01, 2.62500000e+00, + 4.28571433e-01, 3.50000000e+00, 4.91071415e+00, 9.10714245e+00, + 3.57500000e+01, 8.99821396e+01, 5.04821434e+01, 1.10535717e+01, + 4., 2.33750000e+01, 1.76964283e+01, 1.88214283e+01, + 6.14285698e+01, 8.85892868e+01, 3.57142868e+01, 1.90178566e+01, + 19., 4.89285698e+01, 1.16250000e+01, 1.90892849e+01, + 8.72142868e+01, 8.94821396e+01, 2.03750000e+01, 1.45357141e+01, + 5.51428566e+01, 2.42622948e+00, 7.62295103e+00, 3.49836082e+01, + 3.77213097e+01, 1.62622948e+01, 4.08196735e+00, 1.77049184e+00, + 3.37704921e+00, 3.03278685e+00, 2.52459025e+00, 2.30491810e+01, + 4.17868843e+01, 2.42131157e+01, 7.98360634e+00, 4., + 1.21803274e+01, 5.19672127e+01, 1.49180329e+00, 7.24590158e+00, + 4.87049179e+01, 2.52459011e+01, 5.93442631e+00, 5.67213106e+00, + 1.13573769e+02, 4.26557388e+01, 1.85245907e+00, 2.03278685e+00, + 1.04786888e+02, 7.69344254e+01, 2.50819683e+00, 2.57377052e+00, + 6.75409851e+01, 2.86885238e+00, 9.83606529e+00, 3.37540970e+01, + 2.56885242e+01, 1.24590168e+01, 6.39344263e+00, 3.02622948e+01, + 2.53442631e+01, 7.47540998e+00, 3.54098368e+00, 2.91967220e+01, + 5.72295074e+01, 1.18852463e+01, 5.95081949e+00, 5.55245895e+01, + 1.22655739e+02, 2.28032780e+01, 1.68852460e+00, 2.18196716e+01, + 1.31163940e+02, 2.40163937e+01, 2.31147552e+00, 22., + 1.28360657e+02, 1.33442621e+01, 2.75409842e+00, 4.21311474e+00, + 1.05491806e+02, 2.95081959e+01, 2.08196712e+00, 5.88524580e+00, + 3.12131157e+01, 2.62295079e+00, 5.50819683e+00, 9.78360672e+01, + 6.19016380e+01, 3.93442631e+00, 5.01639366e+00, 1.15360657e+02, + 8.29508209e+01, 3.90163946e+00, 2.68852448e+00, 107., + 1.30983612e+02, 3.45901632e+00, 2.95081973e+00, 7.07049179e+01, + 1.03852463e+02, 8.13114738e+00, 2.36065578e+00, 3.86229515e+01, + 1.24098358e+02, 5.04918051e+00, 3.11475420e+00, 1.80819664e+01, + 4.08688507e+01, 1.17213116e+01, 2.44262290e+00, 2.68852448e+00, + 1.41639347e+01, 2.09836054e+00, 2.44262290e+00, 1.21967211e+01, + 2.89836063e+01, 2.68852448e+00, 2.63934422e+00, 8.02622986e+01, + 3.98196716e+01, 2.11475420e+00, 3.68852448e+00, 1.95409832e+01, + 1.32295084e+01, 5.18032789e+00, 1.80327868e+00, 3.11639347e+01, + 3.20163918e+01, 1.78688526e+00, 4.59016371e+00, 1.95573769e+01, + 2.08688526e+01, 7.52459002e+00, 1.60655737e+00, 2.49180317e+00, + 3.78688526e+00, 1.57377052e+00, 4.04918051e+00, 1.87704926e+01, + 2.67213116e+01, 7.34426212e+00, 1.59016395e+00, 1.03278685e+00, + 1.04918027e+00, 1.54098356e+00, 2.80327868e+00, 1.06393442e+01, + 2.14590168e+01, 1.12903225e+00, 1.12903225e+00, 2.01612902e+00, + 3.61290312e+00, 1.77419353e+00, 1.09677422e+00, 1.06451619e+00, + 8.87096763e-01, 6.69354820e+00, 5.80645180e+00, 5.79032278e+00, + 8.75806427e+00, 7.72580624e+00, 7.83870983e+00, 8., + 6.53225803e+00, 8.90322590e+00, 6.80645180e+00, 6.70967722e+00, + 9.56451607e+00, 1.01129036e+01, 1.04516125e+01, 1.22419357e+01, + 9.88709641e+00, 6.27419376e+00, 4.11290312e+00, 8.91935444e+00, + 1.65483875e+01, 1.20967741e+01, 7.85483885e+00, 8.08064556e+00, + 9.67741966e+00, 3.72580647e+00, 3.64516139e+00, 2.46774197e+00, + 3.93548393e+00, 3.12903237e+00, 3.12903237e+00, 3.27419353e+00, + 2.51612902e+00, 1.43225803e+01, 9.88709641e+00, 8.58064556e+00, + 1.18548384e+01, 1.23387098e+01, 1.42419357e+01, 1.50483875e+01, + 1.34193544e+01, 1.22903223e+01, 9.74193573e+00, 2.36129036e+01, + 5.07419357e+01, 2.28709679e+01, 1.46774197e+01, 2.43548393e+01, + 3.13225803e+01, 1.12741938e+01, 7.24193525e+00, 3.64354820e+01, + 6.65806427e+01, 1.56129036e+01, 9.50000000e+00, 7.57096786e+01, + 8.72258072e+01, 4.48387098e+00, 4.54838705e+00, 3.51612902e+00, + 3.74193549e+00, 3.37096763e+00, 3.46774197e+00, 4.70967722e+00, + 4.25806475e+00, 1.86290321e+01, 8.29032230e+00, 1.53064518e+01, + 4.50806465e+01, 2.73870964e+01, 1.16774197e+01, 1.51129036e+01, + 3.41612892e+01, 5.73709679e+01, 7.40322590e+00, 3.43064499e+01, + 9.84677429e+01, 3.65161285e+01, 8.37096786e+00, 8.00322571e+01, + 1.51983871e+02, 2.32419357e+01, 1.10322580e+01, 4.85322571e+01, + 7.65967712e+01, 1.66935482e+01, 1.33870964e+01, 1.35451614e+02, + 1.51354843e+02, 4.38709688e+00, 3.61290312e+00, 6.04838705e+00, + 7.22580624e+00, 3.75806451e+00, 2.77419353e+00, 3.51612902e+00, + 5.08064508e+00, 7.54838715e+01, 1.15322580e+01, 1.24354839e+01, + 5.72580643e+01, 4.13387108e+01, 8.74193573e+00, 1.33225803e+01, + 8.25322571e+01, 1.22241936e+02, 2.78548393e+01, 2.92741928e+01, + 8.26935501e+01, 4.55806465e+01, 8.04838753e+00, 3.85483856e+01, + 1.50290329e+02, 3.28387108e+01, 19., 3.40161285e+01, + 4.79838715e+01, 2.45161285e+01, 1.51129036e+01, 3.39193535e+01, + 5.73387108e+01, 1.23414631e+01, 2.36585355e+00, 6.07317066e+00, + 6.16097565e+01, 4.92926826e+01, 7.26829290e+00, 9.24390221e+00, + 1.75365849e+01, 1.19756098e+01, 8.90243912e+00, 1.22439022e+01, + 1.55121956e+01, 1.58780489e+01, 1.66829262e+01, 2.84146347e+01, + 2.30731716e+01, 2.46097565e+01, 3.05609760e+01, 1.68536587e+01, + 7.46341467e+00, 1.44878044e+01, 4.03902435e+01, 3.51707306e+01, + 1.80975609e+01, 2.57317066e+01, 4.34634132e+01, 9.82926846e+00, + 4.17073154e+00, 1.75853653e+01, 3.55365868e+01, 1.40243902e+01, + 6.65853643e+00, 7.49756088e+01, 3.54878044e+01, 6.24390221e+00, + 1.70243912e+01, 8.05365829e+01, 6.14634132e+01, 2.26341457e+01, + 4.02439041e+01, 4.41463432e+01, 3.11219521e+01, 1.73170738e+01, + 2.67804871e+01, 6.58048782e+01, 6.29756088e+01, 3.66829262e+01, + 3.29268303e+01, 4.91219521e+01, 3.87317085e+01, 2.10731716e+01, + 2.32439022e+01, 4.24390259e+01, 3.92439041e+01, 1.67073174e+01, + 1.80975609e+01, 5.66829262e+01, 3.11951218e+01, 1.51707315e+01, + 2.74146347e+01, 6.13414650e+01, 3.92926826e+01, 1.14878044e+01, + 2.07317066e+01, 5.21951218e+01, 7.97560959e+01, 2.76097565e+01, + 1.30975609e+01, 7.46097565e+01, 1.04560974e+02, 1.51707315e+01, + 8., 23., 6.41219482e+01, 5.79268303e+01, 3.92926826e+01, + 6.33170738e+01, 6.92195129e+01, 2.43658543e+01, 6.02439022e+00, + 1.91707325e+01, 2.06097565e+01, 2.90975609e+01, 33., + 3.04878044e+01, 1.49024391e+01, 1.33170729e+01, 1.32926826e+01, + 3.71463432e+01, 1.36097565e+01, 1.68292675e+01, 3.09756088e+01, + 2.42439022e+01, 4.80487823e+00, 1.24878044e+01, 5.40975609e+01, + 6., 2.78292675e+01, 1.15365858e+01, 3.63414645e+00, + 2.16097565e+01, 1.08878052e+02, 3.83170738e+01, 3.63414645e+00, + 2.43902445e+00, 1.90487804e+01, 2.56829262e+01, 8.58536625e+00, + 8.39024353e+00, 8.75609741e+01, 9.52926865e+01, 6.17073154e+00, + 3.95121956e+00, 5.65853643e+00, 1.19268293e+01, 8.95121956e+00, + 4.07317066e+00, 1.74390240e+01, 1.01902435e+02, 5.04634132e+01, + 1.28292685e+01, 1.43902445e+00, 2.53658533e+00, 3.31707311e+00, + 2.02439022e+00, 1.85365856e+00, 7.60731735e+01, 1.09780487e+02, + 1.06811590e+01, 8.58695679e+01, 9.33333359e+01, 9.76811600e+00, + 3.36231875e+00, 2.38115940e+01, 3.94927521e+01, 1.03188410e+01, + 9.78260899e+00, 1.28072464e+02, 1.33869568e+02, 6.23188400e+00, + 2.33333325e+00, 3.64927521e+01, 6.58405762e+01, 8.36231899e+00, + 8.40579700e+00, 1.24362320e+02, 1.36217392e+02, 6.44927549e+00, + 2.52173924e+00, 7.02173920e+01, 1.01608696e+02, 5.86956501e+00, + 5.63768101e+00, 7.90289841e+01, 9.74202881e+01, 7.28985500e+00, + 8.66666698e+00, 8.99855042e+01, 1.16260872e+02, 6.71014500e+00, + 1.08840580e+01, 1.09130430e+01, 1.60289860e+01, 7.89855051e+00, + 4.84057951e+00, 2.18260860e+01, 3.65942039e+01, 1.37246380e+01, + 1.11594200e+01, 3.43623199e+01, 4.68840561e+01, 8., + 5.53623199e+00, 41., 6.37971001e+01, 1.45217390e+01, + 9.18840599e+00, 9.23623199e+01, 1.08188408e+02, 7.18840599e+00, + 4.81159401e+00, 5.30869560e+01, 7.40434799e+01, 1.00579710e+01, + 1.51449280e+01, 1.12449272e+02, 1.26289856e+02, 4.21739149e+00, + 4.39130449e+00, 4.18985519e+01, 4.97391319e+01, 7.14492750e+00, + 9.18840599e+00, 6.53623199e+00, 5.40579700e+00, 4.46376801e+00, + 4.34782600e+00, 8.13043499e+00, 1.07826090e+01, 1.00724640e+01, + 1.16231880e+01, 8.81159401e+00, 8.13043499e+00, 5.72463751e+00, + 6.53623199e+00, 1.14202900e+01, 1.62898560e+01, 1.30579710e+01, + 1.15652170e+01, 1.02318840e+01, 8.44927502e+00, 5.92753601e+00, + 6.33333349e+00, 1.97971020e+01, 2.54202900e+01, 1.21594200e+01, + 9.56521702e+00, 1.89710140e+01, 1.22753620e+01, 4.28985500e+00, + 4.89855051e+00, 3.12898560e+01, 3.08405800e+01, 8.73913002e+00, + 4.79710150e+00, 3.13043475e+00, 2.37681150e+00, 2.10144925e+00, + 1.84057975e+00, 2.86956525e+00, 3.07246375e+00, 4.43478251e+00, + 5.79710150e+00, 3.91304350e+00, 3.39130425e+00, 2.33333325e+00, + 2.31884050e+00, 3.39130425e+00, 4.01449299e+00, 5.66666651e+00, + 5.75362301e+00, 3.50724649e+00, 2.79710150e+00, 2.24637675e+00, + 2.69565225e+00, 3.56521749e+00, 4.21739149e+00, 5.49275351e+00, + 4.37681150e+00, 3.44927526e+00, 2.66666675e+00, 2.14492750e+00, + 2.42028975e+00, 5., 5.04347849e+00, 4.62318850e+00, + 4.62790680e+00, 2.13953495e+00, 1.25116282e+01, 4.35581398e+01, + 4.53488350e+00, 3.18604660e+00, 6.76744156e+01, 1.38372086e+02, + 5.55813932e+00, 4.53488350e+00, 5.19069786e+01, 1.23139534e+02, + 1.92325573e+01, 1.43953485e+01, 9.08837204e+01, 1.28093018e+02, + 6.53488350e+00, 9.41860485e+00, 7.27209320e+01, 1.07348839e+02, + 2.13023262e+01, 1.31860466e+01, 3.25581398e+01, 4.25813942e+01, + 3.88372087e+00, 3.48837209e+00, 2.67441864e+01, 5.56046524e+01, + 5.97674417e+00, 2.83720922e+00, 1.03720932e+01, 2.14651165e+01, + 5.13953495e+00, 3.16279078e+00, 8.60930252e+01, 1.42581390e+02, + 8.74418640e+00, 1.97674417e+00, 5.09069786e+01, 1.17558136e+02, + 1.08139534e+01, 5.34883738e+00, 9.95116272e+01, 1.42558136e+02, + 9.34883690e+00, 2.88372087e+00, 2.90232563e+01, 6.86046524e+01, + 1.37441864e+01, 9.02325535e+00, 3.50930214e+01, 6.34186058e+01, + 6.48837233e+00, 3.16279078e+00, 2.52558136e+01, 6.66279068e+01, + 3.60465121e+00, 3.18604660e+00, 8.90697670e+00, 7.04651165e+00, + 2.81395340e+00, 2.65116286e+00, 1.24418602e+01, 2.58139534e+01, + 6.97674417e+00, 1.34883726e+00, 4.61162796e+01, 1.27209305e+02, + 1.88372097e+01, 3.62790704e+00, 2.79767437e+01, 6.48837204e+01, + 8.20930195e+00, 2.67441869e+00, 1.09069767e+01, 2.65116272e+01, + 7.44186068e+00, 3.04651165e+00, 3.14186039e+01, 8.70697708e+01, + 5.86046505e+00, 2.88372087e+00, 4.46511650e+00, 5.41860485e+00, + 3.95348835e+00, 4.46511650e+00, 1.74418602e+01, 3.85581398e+01, + 2.65116286e+00, 2.27906966e+00, 3.11627913e+00, 3.32558131e+00, + 2.76744175e+00, 3.46511626e+00, 5.25581408e+00, 7.09302330e+00, + 4.20930243e+00, 1.32558143e+00, 3.55813956e+00, 1.42790699e+01, + 5.81395340e+00, 2.37209296e+00, 1.94883728e+01, 3.85813942e+01, + 4.09302330e+00, 1.67441857e+00, 2.48837209e+00, 3.58139539e+00, + 3.60465121e+00, 4.27906990e+00, 1.17441864e+01, 2.16976738e+01, + 3.02325583e+00, 1.88372087e+00, 2.81395340e+00, 3.09302330e+00, + 4.18604660e+00, 5.65116262e+00, 5.20930243e+00, 5.48837233e+00, + 1.51162791e+00, 1.53488374e+00, 1.90697670e+00, 2.02325583e+00, + 2.67441869e+00, 2.86046505e+00, 2.16279078e+00, 1.62790692e+00, + 3.98043480e+01, 7.73913050e+00, 2.17391300e+00, 9.91304302e+00, + 2.41739140e+01, 5.04347849e+00, 5.52173901e+00, 1.59782610e+01, + 5.38260880e+01, 1.14130430e+01, 5.73913050e+00, 1.08913040e+01, + 1.86304340e+01, 7.06521749e+00, 9.28260899e+00, 3.56739120e+01, + 1.21086960e+01, 1.13913040e+01, 7.21739149e+00, 5.95652151e+00, + 1.79130440e+01, 1.89347820e+01, 1.36304350e+01, 9.02173901e+00, + 1.69565220e+01, 1.46304350e+01, 3.97826076e+00, 5.26086950e+00, + 3.33043480e+01, 2.28695660e+01, 4.39130449e+00, 4.04347849e+00, + 8.43913040e+01, 2.34347820e+01, 3.17391300e+00, 1.96739140e+01, + 7.36956558e+01, 1.49782610e+01, 3.65217400e+00, 1.66086960e+01, + 1.12021736e+02, 3.71956520e+01, 9.43478298e+00, 1.56086960e+01, + 3.97608681e+01, 1.87173920e+01, 1.40869570e+01, 4.69347839e+01, + 2.42391300e+01, 2.02391300e+01, 1.21086960e+01, 1.05434780e+01, + 3.05869560e+01, 4.68695641e+01, 2.99565220e+01, 1.99565220e+01, + 4.01521721e+01, 2.00869560e+01, 5.45652151e+00, 1.38695650e+01, + 8.36304321e+01, 4.16956520e+01, 1.14130430e+01, 1.89782600e+01, + 8.05000000e+01, 3.18695660e+01, 3.39130425e+00, 14., + 8.17826080e+01, 2.94130440e+01, 3.58695650e+00, 8.10869598e+00, + 1.18043480e+02, 8.94782639e+01, 1.86086960e+01, 9.91304302e+00, + 4.50434799e+01, 3.65217400e+01, 1.35217390e+01, 3.06521740e+01, + 3.44347839e+01, 3.43260880e+01, 2.39782600e+01, 2.18260860e+01, + 2.56956520e+01, 4.42173920e+01, 3.94782600e+01, 3.53695641e+01, + 4.02173920e+01, 1.14565220e+01, 7.63043499e+00, 52., + 9.94347839e+01, 3.64565201e+01, 1.58695650e+01, 3.33695641e+01, + 2.91739140e+01, 1.97608700e+01, 6.06521749e+00, 7.89130449e+00, + 5.57608681e+01, 2.93913040e+01, 2.65217400e+00, 3.50000000e+00, + 1.01521736e+02, 1.10521736e+02, 3.24130440e+01, 1.04565220e+01, + 5.32391319e+01, 4.94782600e+01, 9.82608700e+00, 1.35869570e+01, + 6.95217361e+01, 7.41304321e+01, 3.71086960e+01, 3.60652161e+01, + 4.35217400e+01, 3.20652161e+01, 3.33478279e+01, 3.23260880e+01, + 2.78260860e+01, 8.21739101e+00, 2.11086960e+01, 83., + 8.67173920e+01, 1.84130440e+01, 1.06086960e+01, 3.54347839e+01, + 2.12500000e+00, 0., 0., 0., 5.27500010e+00, 1.76000004e+01, + 6.77500010e+00, 7.12500000e+00, 1.20249996e+01, 1., + 1.00000001e-01, 3.00000012e-01, 8.00000012e-01, 2.15000010e+00, + 1.14999998e+00, 1.14999998e+00, 8.48000031e+01, 5.84999990e+00, + 6.00000024e-01, 3.00000012e-01, 1.42499995e+00, 1.62500000e+00, + 5.74999988e-01, 8.87500000e+00, 3.46500015e+01, 6.65000010e+00, + 5.55000019e+00, 2.70000005e+00, 4.84999990e+00, 5.72499990e+00, + 4.37500000e+00, 7.22499990e+00, 6.55000019e+00, 6.99999988e-01, + 1.07500005e+00, 1.89999998e+00, 6.35250015e+01, 1.26199997e+02, + 4.46250000e+01, 3.47500000e+01, 2.96000004e+01, 1.42499995e+00, + 6.99999988e-01, 1.67499995e+00, 20., 5.67249985e+01, + 4.30750008e+01, 4.55000019e+00, 1.45399994e+02, 1.51999998e+01, + 3.47499990e+00, 2.40000010e+00, 3.22499990e+00, 5.40000010e+00, + 2.28750000e+01, 3.45250015e+01, 9.19000015e+01, 1.89500008e+01, + 1.52749996e+01, 1.00749998e+01, 1.71250000e+01, 1.77500000e+01, + 2.12250004e+01, 2.22250004e+01, 1.27749996e+01, 6.72499990e+00, + 6.05000019e+00, 1.34250002e+01, 3.60499992e+01, 1.11300003e+02, + 5.75250015e+01, 2.22500000e+01, 1.69249992e+01, 3.12500000e+00, + 3.47499990e+00, 9.77499962e+00, 2.38500004e+01, 1.14525002e+02, + 1.44925003e+02, 1.99500008e+01, 1.30550003e+02, 1.36750002e+01, + 9.72500038e+00, 5.55000019e+00, 7.50000000e+00, 4.25000000e+01, + 1.33975006e+02, 7.85000000e+01, 7.37750015e+01, 2.28750000e+01, + 2.02500000e+01, 1.11250000e+01, 2.20249996e+01, 1.81000004e+01, + 2.78999996e+01, 4.11500015e+01, 1.80249996e+01, 1.30749998e+01, + 5.32499981e+00, 1.99249992e+01, 1.46999998e+01, 1.87999992e+01, + 1.09499998e+01, 1.62999992e+01, 2.05000000e+01, 9.32499981e+00, + 6.90000010e+00, 1.43750000e+01, 2.03999996e+01, 3.02000008e+01, + 3.95750008e+01, 1.73500004e+01, 1.99500008e+01, 6.97499990e+00, + 7.34999990e+00, 1.50500002e+01, 1.67500000e+01, 1.97500000e+01, + 4.92999992e+01, 2.70750008e+01, 3.36250000e+01, 1.19250002e+01, + 6.22499990e+00, 2.02749996e+01, 1.84249992e+01, 8.57499981e+00, + 1.56000004e+01, 3.49749985e+01, 7.91428566e+00, 7.45714283e+00, + 4.85714293e+00, 3.71428561e+00, 3.85714293e+00, 5.34285736e+00, + 8.02857113e+00, 1.09428568e+01, 1.13428574e+01, 9.48571396e+00, + 3.88571429e+00, 2.74285722e+00, 3.02857137e+00, 4.68571424e+00, + 6.48571444e+00, 8.45714283e+00, 1.08571424e+01, 9.45714283e+00, + 4.05714273e+00, 4.80000019e+00, 4.28571415e+00, 5.25714302e+00, + 5.88571405e+00, 6.05714273e+00, 6.77142859e+00, 4.77142859e+00, + 2.57142854e+00, 3.02857137e+00, 4.22857141e+00, 5.68571424e+00, + 6.77142859e+00, 7.71428585e+00, 3.66285706e+01, 3.32285728e+01, + 1.87142849e+01, 1.14857140e+01, 1.60857143e+01, 2.49428577e+01, + 2.90857143e+01, 3.67714272e+01, 5.04571419e+01, 4.30285721e+01, + 20., 1.27142859e+01, 1.64857140e+01, 2.51714287e+01, + 3.32857132e+01, 3.97428589e+01, 4.85999985e+01, 4.09428558e+01, + 2.22000008e+01, 2.22571430e+01, 2.16857147e+01, 2.82285709e+01, + 3.88857155e+01, 4.15999985e+01, 3.42571411e+01, 1.95142860e+01, + 2.32571430e+01, 6.70571442e+01, 2.51142864e+01, 2.19428577e+01, + 3.94571419e+01, 5.53714294e+01, 4.19714279e+01, 4.12285728e+01, + 2.76285706e+01, 1.48571424e+01, 1.45142860e+01, 2.19714279e+01, + 2.28285713e+01, 3.06571426e+01, 5.75714302e+01, 5.91428566e+01, + 3.80857124e+01, 1.87142849e+01, 1.69428577e+01, 25., 36., + 4.15142860e+01, 6.39714279e+01, 5.34000015e+01, 2.95428562e+01, + 4.33714294e+01, 3.49428558e+01, 2.45142860e+01, 4.14571419e+01, + 5.54285698e+01, 6.88857117e+01, 2.29142857e+01, 3.78571434e+01, + 1.36114288e+02, 7.79142838e+01, 1.43999996e+01, 3.40857124e+01, + 1.08400002e+02, 2.82857151e+01, 3.38285713e+01, 2.80285721e+01, + 1.54285717e+01, 1.17428570e+01, 1.56857147e+01, 2.36571426e+01, + 2.72285709e+01, 4.95999985e+01, 4.54571419e+01, 3.81142845e+01, + 2.39428577e+01, 1.26000004e+01, 1.56571426e+01, 4.13714294e+01, + 5.28285713e+01, 5.81142845e+01, 3.14571438e+01, 3.77714272e+01, + 1.13514282e+02, 5.87714272e+01, 1.21999998e+01, 2.98285713e+01, + 7.09142838e+01, 1.32114288e+02, 3.46571426e+01, 2.75142860e+01, + 1.21171425e+02, 8.22857132e+01, 1.04857140e+01, 2.02571430e+01, + 1.35942856e+02, 1.66216221e+01, 1.51621618e+01, 1.42972975e+01, + 1.41351347e+01, 1.22162161e+01, 1.43783779e+01, 1.94864864e+01, + 2.15675678e+01, 1.48378382e+01, 1.74594593e+01, 1.01351347e+01, + 9.21621609e+00, 3.28108101e+01, 6.91891861e+01, 2.01351357e+01, + 1.44594593e+01, 4.51351357e+00, 4.94594574e+00, 2.29729724e+00, + 6.45945930e+00, 1.11513512e+02, 1.20216217e+02, 7.78378391e+00, + 3.24324322e+00, 1.65135136e+01, 3.51351357e+01, 2.62162161e+00, + 5.78378391e+00, 6.29459457e+01, 3.43783798e+01, 1.70270276e+00, + 9.18918908e-01, 2.39459457e+01, 2.16486492e+01, 1.88648643e+01, + 2.11351357e+01, 1.82702694e+01, 6.48648643e+00, 1.01621618e+01, + 1.85135136e+01, 3.92972984e+01, 3.02162170e+01, 1.39729729e+01, + 1.54594593e+01, 3.60810814e+01, 2.79459457e+01, 1.33783779e+01, + 2.94054050e+01, 1.50540543e+01, 7.32432413e+00, 3.27027035e+00, + 3.78918915e+01, 1.33540543e+02, 70., 1.05945950e+01, + 1.31081085e+01, 12., 9.43243217e+00, 2.10810804e+00, + 1.88648643e+01, 1.10567566e+02, 2.81621628e+01, 4.89189196e+00, + 8.64864886e-01, 3.04864864e+01, 2.86756763e+01, 1.64324322e+01, + 1.42432432e+01, 1.80270271e+01, 1.28108110e+01, 8.94594574e+00, + 16., 5.45945930e+01, 2.97027035e+01, 1.93783779e+01, + 4.64324341e+01, 4.54054070e+01, 1.08378382e+01, 6.21621609e+00, + 3.98378372e+01, 1.50540543e+01, 7.18918896e+00, 8.62162209e+00, + 1.17054054e+02, 1.35216217e+02, 1.03243246e+01, 2.02702713e+00, + 1.12432432e+01, 1.20270271e+01, 2.54054046e+00, 3.64864874e+00, + 5.60270271e+01, 9.63243256e+01, 4.97297287e+00, 7.83783793e-01, + 3., 3.11891899e+01, 3.62162170e+01, 4.21351357e+01, + 1.88108101e+01, 6.75675678e+00, 1.27297297e+01, 9.37837791e+00, + 1.88378372e+01, 2.45135136e+01, 1.46756754e+01, 5.22162170e+01, + 1.11594597e+02, 3.37297287e+01, 6.16216230e+00, 6.72972965e+00, + 2.61621628e+01, 5.29729748e+00, 1.91891897e+00, 1.51081085e+01, + 1.34729736e+02, 8.61621628e+01, 8.10810804e-01, 1.35135138e+00, + 5.64864874e+00, 1.83243237e+01, 2.37837839e+00, 6., + 5.54864883e+01, 3.06486492e+01, 5.94594598e-01, 2.43243241e+00, + 2.20270271e+01, 7.17808199e+00, 6.47945213e+00, 8.45205498e+00, + 1.17123289e+01, 2.09452057e+01, 8.25205460e+01, 6.73424683e+01, + 1.96712322e+01, 2.24657536e+00, 4.42465734e+00, 3.53424668e+00, + 6.47945213e+00, 4.80273972e+01, 1.18232880e+02, 3.11095886e+01, + 3.65753436e+00, 1.54794526e+00, 1.04246578e+01, 5.73972607e+00, + 6.28767109e+00, 5.57534256e+01, 8.62876740e+01, 6.17808199e+00, + 1.39726031e+00, 3.21095886e+01, 8.00684967e+01, 9.54794502e+00, + 5.76712322e+00, 2.18356171e+01, 2.34794521e+01, 2.04109597e+00, + 5.75342476e-01, 1.37123289e+01, 2.19726028e+01, 3.89589043e+01, + 4.32054787e+01, 4.76849327e+01, 4.69863014e+01, 2.71369858e+01, + 1.26027393e+01, 5.67123270e+00, 1.16164379e+01, 1.50684929e+01, + 2.73561649e+01, 8.94520569e+01, 107., 1.57534246e+01, + 2.91780829e+00, 1.76712334e+00, 2.09589052e+00, 1.39726031e+00, + 1.30136986e+01, 1.21821915e+02, 1.09849312e+02, 3.38356161e+00, + 6.30136967e-01, 2.87397251e+01, 2.39726028e+01, 3.68493152e+00, + 1.62191772e+01, 6.32465744e+01, 2.97260265e+01, 1.65753424e+00, + 1.60273969e+00, 9.71232891e+00, 1.32876711e+01, 2.74931507e+01, + 3.75890427e+01, 3.94794502e+01, 2.09315071e+01, 1.26712332e+01, + 6.78082180e+00, 1.25068493e+01, 1.75068493e+01, 1.95205479e+01, + 4.68630142e+01, 8.05342484e+01, 3.79589043e+01, 9.67123318e+00, + 4.68493128e+00, 3.73972607e+00, 2.46575332e+00, 2.82191777e+00, + 4.90684929e+01, 1.27054794e+02, 5.74931488e+01, 1.53424656e+00, + 1.19178081e+00, 2.37260265e+01, 3.75342464e+00, 2.76712322e+00, + 3.00821915e+01, 8.77534256e+01, 2.06575336e+01, 2., + 1.00821915e+01, 1.24383564e+01, 1.22328768e+01, 2.19452057e+01, + 3.15753422e+01, 3.38493156e+01, 2.00547943e+01, 1.90547943e+01, + 1.66575336e+01, 1.38493147e+01, 8.24657536e+00, 1.91643829e+01, + 7.22191772e+01, 7.24931488e+01, 2.38904114e+01, 1.07534246e+01, + 1.12602739e+01, 4.57534266e+00, 1.90410960e+00, 8.47945213e+00, + 9.13150711e+01, 1.13739723e+02, 1.45890408e+01, 2.17808223e+00, + 3.64383554e+00, 2.61369858e+01, 1.82191777e+00, 5.60273981e+00, + 3.91095886e+01, 5.37260284e+01, 8.27397251e+00, 4.36986303e+00, + 3.08356171e+01, 3.54347825e+00, 3.47826076e+00, 4.36956501e+00, + 3.47391319e+01, 2.61521740e+01, 2.93478251e+00, 1.91304350e+00, + 2.28260875e+00, 2.32608700e+00, 1.04347825e+00, 4.63043499e+00, + 1.14152176e+02, 7.63478241e+01, 1.32608700e+00, 6.08695626e-01, + 2.47826076e+00, 3.89130425e+00, 8.91304374e-01, 9.50000000e+00, + 95., 2.27608700e+01, 8.69565189e-01, 2.28260875e+00, + 9.65217400e+00, 4.65217400e+00, 6.08695626e-01, 6.02173901e+00, + 1.25217390e+01, 1.56521738e+00, 7.17391312e-01, 9.43478298e+00, + 3.81739120e+01, 5.56521749e+00, 3.76086950e+00, 3.86956525e+00, + 7.98913040e+01, 8.88695679e+01, 4.97826099e+00, 2.08695650e+00, + 3.80434775e+00, 4.80434799e+00, 8.91304374e-01, 1.82608700e+00, + 1.33413040e+02, 1.33326080e+02, 3.34782600e+00, 2.52173924e+00, + 5.95652151e+00, 2.53043480e+01, 1.54347825e+00, 1.47826087e+00, + 3.75652161e+01, 1.92173920e+01, 2.28260875e+00, 7.50000000e+00, + 5.57391319e+01, 2.41521740e+01, 4.78260875e-01, 1.08695650e+00, + 4., 1.54347825e+00, 1.15217388e+00, 1.93695660e+01, + 1.11586960e+02, 3.89130425e+00, 2.54347825e+00, 2.58695650e+00, + 6.53913040e+01, 1.20847824e+02, 7.89130449e+00, 1.73913038e+00, + 2.89130425e+00, 1.35869570e+01, 1.06521738e+00, 9.34782624e-01, + 7.33695679e+01, 1.25717392e+02, 7.86956501e+00, 4.45652151e+00, + 1.27608700e+01, 8.20434799e+01, 1.47826087e+00, 3.91304344e-01, + 3.23913050e+00, 4.91304350e+00, 1.91304350e+00, 5.95652151e+00, + 8.07826080e+01, 5.72826080e+01, 8.26086938e-01, 1.02173913e+00, + 4.30434799e+00, 4.34782600e+00, 2.65217400e+00, 1.12608700e+01, + 9.88478241e+01, 2.71739125e+00, 2.15217400e+00, 1.84782612e+00, + 2.26739140e+01, 1.15500000e+02, 2.01086960e+01, 1.76086962e+00, + 1.52173913e+00, 1.95652180e+01, 2.21739125e+00, 6.95652187e-01, + 1.05869570e+01, 1.05956520e+02, 2.68478260e+01, 3.69565225e+00, + 1.06739130e+01, 1.10956520e+02, 7.43478251e+00, 1.52173907e-01, + 2.60869563e-01, 2.80434775e+00, 2.50000000e+00, 2.21739125e+00, + 4.39565201e+01, 6.63043442e+01, 6.47826099e+00, 4.34782594e-01, + 1.80434787e+00, 5.60869551e+00, 5.34782600e+00, 4.41304350e+00, + 3.76739120e+01, 1.17627115e+01, 7.84745741e+00, 3.28813553e+00, + 4.10169506e+00, 9.76271152e+00, 1.58813562e+01, 17., + 1.77457619e+01, 1.22033901e+01, 4.89830494e+00, 3.88135600e+00, + 7.55932188e+00, 1.27966099e+01, 1.41694918e+01, 2.06610165e+01, + 2.46271191e+01, 9.54237270e+00, 3.55932212e+00, 3.98305082e+00, + 9.40677929e+00, 1.32711868e+01, 1.08135595e+01, 1.76949158e+01, + 2.36610165e+01, 4.83050871e+00, 1.72881353e+00, 2.52542377e+00, + 5.83050871e+00, 7.06779671e+00, 5.20338964e+00, 1.09830513e+01, + 1.22372885e+01, 1.32203388e+01, 3.77457619e+01, 3.63220329e+01, + 8.91525459e+00, 1.20847454e+01, 3.99491539e+01, 3.75593224e+01, + 2.43559322e+01, 1.33050852e+01, 2.21864414e+01, 2.35254230e+01, + 1.11864405e+01, 1.73389835e+01, 2.77796612e+01, 4.01016960e+01, + 3.02881355e+01, 1.15932207e+01, 9.49152565e+00, 1.01864405e+01, + 1.42881355e+01, 2.11864414e+01, 2.31525421e+01, 2.97288132e+01, + 2.68644066e+01, 6.10169506e+00, 3.28813553e+00, 4.57627106e+00, + 8.42372894e+00, 1.10169487e+01, 8.81355953e+00, 1.28983049e+01, + 1.43220339e+01, 9.25423717e+00, 5.52542381e+01, 7.14745789e+01, + 14., 1.64576263e+01, 1.13491524e+02, 1.35627121e+02, + 4.69152527e+01, 1.10847454e+01, 6.91186447e+01, 7.87457657e+01, + 1.18813562e+01, 1.20169487e+01, 1.15898308e+02, 1.33694916e+02, + 3.22033882e+01, 1.26610174e+01, 6.12033882e+01, 49., + 9.86440659e+00, 1.70847454e+01, 8.56610184e+01, 7.32881393e+01, + 1.60169487e+01, 6., 1.71355934e+01, 1.28305082e+01, + 6.81355953e+00, 1.23559322e+01, 2.31694908e+01, 2.16779652e+01, + 1.06440678e+01, 2.26271191e+01, 3.90169487e+01, 2.23559322e+01, + 2.58474579e+01, 3.73220329e+01, 7.29322052e+01, 8.92542343e+01, + 3.62542381e+01, 1.13728809e+01, 1.86440678e+01, 1.98644066e+01, + 1.67627125e+01, 3.62881355e+01, 1.13949150e+02, 1.11474579e+02, + 3.31525421e+01, 1.21864405e+01, 3.75932198e+01, 2.07118645e+01, + 9.44067764e+00, 4.39152527e+01, 1.33593216e+02, 7.69322052e+01, + 9.33898258e+00, 8.47457600e+00, 2.68813553e+01, 1.16779661e+01, + 4.72881365e+00, 1.60847454e+01, 6.38474579e+01, 2.76271191e+01, + 4.13559341e+00, 9.80000019e+00, 1.41999996e+00, 2.27999997e+00, + 4.08400002e+01, 8.01600037e+01, 8.64000034e+00, 1.89999998e+00, + 6.40000010e+00, 5.66599998e+01, 1.65999997e+00, 1.15999997e+00, + 7.53399963e+01, 1.13480003e+02, 6.19999981e+00, 2.05999994e+00, + 4.24199982e+01, 1.01599998e+02, 4.50000000e+00, 1.88000000e+00, + 2.47800007e+01, 2.57800007e+01, 2.01999998e+00, 2.66000009e+00, + 9.64599991e+01, 1.95200005e+01, 6.13999987e+00, 6.40000010e+00, + 9.47999954e+00, 7.21999979e+00, 3.22000003e+00, 7.46000004e+00, + 3.66199989e+01, 1.84200001e+01, 4.26000023e+00, 2.05999994e+00, + 3.16000004e+01, 1.02919998e+02, 1.97999992e+01, 3.44000006e+00, + 6.46000004e+00, 9.65000000e+01, 1.05600004e+01, 1.01999998e+00, + 3.55800018e+01, 1.20080002e+02, 2.96200008e+01, 4.13999987e+00, + 3.43199997e+01, 1.19639999e+02, 3.16800003e+01, 5.07999992e+00, + 1.33599997e+01, 2.96200008e+01, 5.23999977e+00, 1.75999999e+00, + 4.29199982e+01, 1.95000000e+01, 1.81000004e+01, 1.16000004e+01, + 1.03999996e+01, 7.73999977e+00, 6.03999996e+00, 4.82000017e+00, + 8.15999985e+00, 1.80599995e+01, 7., 2.09999990e+00, + 1.44600000e+01, 9.14199982e+01, 3.29399986e+01, 5.01999998e+00, + 4.65999985e+00, 8.06999969e+01, 3.37799988e+01, 1.89999998e+00, + 1.07799997e+01, 1.11580002e+02, 6.60999985e+01, 5.69999981e+00, + 1.11999998e+01, 9.81200027e+01, 8.51800003e+01, 9.35999966e+00, + 7.42000008e+00, 4.24599991e+01, 1.85400009e+01, 1.84000003e+00, + 7.84000015e+00, 1.66200008e+01, 4.49799995e+01, 1.89599991e+01, + 7.92000008e+00, 6.73999977e+00, 5.11999989e+00, 3.11999989e+00, + 3.55999994e+00, 7.32000017e+00, 4.55999994e+00, 1.98000002e+00, + 6.63999987e+00, 6.15200005e+01, 4.70800018e+01, 7.46000004e+00, + 3.20000005e+00, 2.98600006e+01, 3.47999992e+01, 3.53999996e+00, + 5.23999977e+00, 8.34599991e+01, 8.34199982e+01, 7.88000011e+00, + 4.40000010e+00, 4.42000008e+01, 9.07799988e+01, 1.45000000e+01, + 3., 4.84399986e+01, 5.82999992e+01, 3.72000003e+00, + 2.70000005e+00, 9.14000034e+00, 7.13199997e+01, 38., + 5.36000013e+00, 7.65999985e+00, 12., 2.64000010e+00, + 1.03999996e+00, 3.92982459e+00, 4.71929836e+00, 2.77368412e+01, + 5.65087738e+01, 2.19824562e+01, 6.05263138e+00, 6.01754379e+00, + 3.22807026e+00, 2.52631569e+00, 2.07017541e+00, 1.55438595e+01, + 4.91929817e+01, 3.42280693e+01, 1.05263157e+01, 4.05263138e+00, + 1.85964918e+00, 2.90526314e+01, 1.73684216e+00, 7.80701733e+00, + 2.79473686e+01, 2.42631588e+01, 9.38596535e+00, 8.28070164e+00, + 4.72807007e+01, 8.42807007e+01, 1.43859649e+00, 1.40350878e+00, + 5.63508759e+01, 5.78245621e+01, 1.98245609e+00, 5.49122810e+00, + 9.90175476e+01, 1.29824567e+00, 8.12280655e+00, 3.44035072e+01, + 4.04210510e+01, 1.37192984e+01, 3.98245621e+00, 4.85964918e+00, + 2.05263162e+00, 2.40350866e+00, 2.61403513e+00, 2.15438595e+01, + 4.14736824e+01, 2.16315784e+01, 7.56140327e+00, 1.65438595e+01, + 4.55614052e+01, 3.57192993e+01, 1.64912283e+00, 9.57894707e+00, + 7.65438614e+01, 2.07368412e+01, 5.05263138e+00, 23., + 1.29157898e+02, 2.99122810e+01, 1.70175433e+00, 4.10526323e+00, + 1.21543861e+02, 5.69473686e+01, 1.61403513e+00, 4.19298267e+00, + 8.68070145e+01, 1.47368419e+00, 5.28070164e+00, 3.43157883e+01, + 2.40350876e+01, 5.98245621e+00, 6.28070164e+00, 1.03438599e+02, + 5.42280693e+01, 3.28070164e+00, 1.98245609e+00, 5.63508759e+01, + 8.95789490e+01, 5.59649134e+00, 4.24561405e+00, 1.06614037e+02, + 1.27035088e+02, 7.22807026e+00, 1.98245609e+00, 4.69122810e+01, + 1.28894730e+02, 1.06315794e+01, 2.28070164e+00, 3.37719307e+01, + 1.14473686e+02, 9.45614052e+00, 2.63157892e+00, 6.15789461e+00, + 7.49649124e+01, 9.92982483e+00, 2.40350866e+00, 9.84210491e+00, + 2.65087719e+01, 1.73684216e+00, 3.31578946e+00, 1.12526314e+02, + 5.21929817e+01, 1.28070176e+00, 3.19298244e+00, 7.11754379e+01, + 2.93859653e+01, 3.92982459e+00, 1.94736838e+00, 8.73333359e+01, + 9.63684235e+01, 2.14035082e+00, 3.08771920e+00, 2.97894745e+01, + 2.79473686e+01, 6.63157892e+00, 1.87719297e+00, 1.77894745e+01, + 4.17192993e+01, 2.26315784e+00, 3.31578946e+00, 1.56842108e+01, + 2.14912281e+01, 7.08771944e+00, 2.12280703e+00, 1.28070176e+00, + 1.64912283e+00, 1.29824567e+00, 2.40350866e+00, 1.08596487e+01, + 2.43508778e+01, 9.62500000e+00, 3.28472214e+01, 6.21666679e+01, + 4.31944466e+00, 2.83333325e+00, 3.82777786e+01, 9.65555573e+01, + 1.27916670e+01, 4.56944466e+00, 29., 6.15972214e+01, + 2.90277767e+00, 1.95833337e+00, 6.91805573e+01, 1.33527771e+02, + 8.61111069e+00, 1.41666663e+00, 1.83472214e+01, 4.48194427e+01, + 2.94444442e+00, 1.86111116e+00, 7.32500000e+01, 1.35986115e+02, + 4.01388884e+00, 1.65277779e+00, 1.13611107e+01, 2.81388893e+01, + 4.18055534e+00, 3.54166675e+00, 4.95833321e+01, 1.13944443e+02, + 4.88888884e+00, 9.06944466e+00, 6.02500000e+01, 1.16319443e+02, + 1.44722223e+01, 3.54166675e+00, 1.86111107e+01, 3.94166679e+01, + 8.65277767e+00, 5.31944466e+00, 9.64027786e+01, 1.36888885e+02, + 5.30555534e+00, 1.84722221e+00, 2.50694447e+01, 6.59722214e+01, + 6.56944466e+00, 2.01388884e+00, 9.31527786e+01, 1.36888885e+02, + 3.30555558e+00, 1.25000000e+00, 3.37777786e+01, 8.46666641e+01, + 4.06944466e+00, 1.88888884e+00, 6.19583321e+01, 1.25763885e+02, + 1.08055553e+01, 7.36111116e+00, 4.14027786e+01, 8.32777786e+01, + 3.97222233e+00, 6.37500000e+00, 8.61111069e+00, 1.24861107e+01, + 7.65277767e+00, 4.09722233e+00, 1.17083330e+01, 2.21250000e+01, + 7.68055534e+00, 7.61111116e+00, 1.61527786e+01, 3.21388893e+01, + 8.83333302e+00, 5.06944466e+00, 1.86388893e+01, 4.09444427e+01, + 8.02777767e+00, 7.34722233e+00, 3.11250000e+01, 6.17500000e+01, + 7.52777767e+00, 3.69444442e+00, 2.10833340e+01, 5.05138893e+01, + 8.55555534e+00, 7.44444466e+00, 4.31944427e+01, 7.38333359e+01, + 6.12500000e+00, 3.68055558e+00, 1.80694447e+01, 3.32500000e+01, + 7.84722233e+00, 3.34722233e+00, 2.54166675e+00, 2.15277767e+00, + 1.56944442e+00, 1.63888884e+00, 2.31944442e+00, 3.30555558e+00, + 3.55555558e+00, 3.88888884e+00, 3.23611116e+00, 2.88888884e+00, + 2.26388884e+00, 2.63888884e+00, 3.69444442e+00, 6.41666651e+00, + 4.44444466e+00, 4.90277767e+00, 3.80555558e+00, 3.19444442e+00, + 2.52777767e+00, 2.13888884e+00, 4.09722233e+00, 7.77777767e+00, + 4.90277767e+00, 4.25000000e+00, 4.25000000e+00, 2.91666675e+00, + 1.97222221e+00, 1.75000000e+00, 5.41666651e+00, 7.02777767e+00, + 3.38888884e+00, 9.88059711e+00, 8.02985096e+00, 2.70298500e+01, + 4.22388077e+01, 1.30149250e+01, 1.12238808e+01, 2.48955231e+01, + 2.80298500e+01, 1.54179106e+01, 1.20597019e+01, 3.35074615e+01, + 4.95223885e+01, 1.42835817e+01, 1.25074625e+01, 4.25373116e+01, + 4.66268654e+01, 8.44776154e+00, 7.65671635e+00, 4.56417923e+01, + 6.96268692e+01, 1.73432827e+01, 1.26417913e+01, 4.94626884e+01, + 4.85373116e+01, 5.14925385e+00, 2.22388053e+00, 4.68656731e+01, + 7.85074615e+01, 9.38805962e+00, 6.92537308e+00, 4.66865654e+01, + 6.15522385e+01, 9.34328365e+00, 7.97014904e+00, 4.02089539e+01, + 6.67611923e+01, 1.27462683e+01, 1.01940298e+01, 4.28208961e+01, + 5.12238808e+01, 8.79104519e+00, 8.49253750e+00, 8.32835846e+01, + 1.08014923e+02, 1.46268654e+01, 8.82089520e+00, 6.47611923e+01, + 7.85970154e+01, 8.55223846e+00, 7.65671635e+00, 8.32089539e+01, + 1.05044777e+02, 1.48358212e+01, 8.94029808e+00, 8.91492538e+01, + 1.09119400e+02, 6.26865673e+00, 2.97014928e+00, 3.68208961e+01, + 5.72835808e+01, 1.20447760e+01, 8.28358173e+00, 6.44179077e+01, + 9.26567154e+01, 5.92537308e+00, 4.11940289e+00, 6.58358231e+01, + 9.93283615e+01, 1.48656721e+01, 7.86567163e+00, 6.20746269e+01, + 8.38955231e+01, 9.83582115e+00, 5.94029856e+00, 5.89253731e+01, + 8.39253769e+01, 1.27014923e+01, 7.86567163e+00, 9.61641769e+01, + 1.15641792e+02, 8.11940289e+00, 7.28358221e+00, 2.71791039e+01, + 3.49552231e+01, 1.82238808e+01, 1.18358212e+01, 6.26268654e+01, + 7.83283615e+01, 5.04477596e+00, 5.73134327e+00, 1.30149250e+01, + 1.72089558e+01, 1.59104481e+01, 1.18955221e+01, 1.90746269e+01, + 1.83432827e+01, 6.40298510e+00, 2.94029856e+00, 1.55820894e+01, + 2.68656712e+01, 9.29850769e+00, 5.58208942e+00, 3.96716423e+01, + 6.83283615e+01, 7.49253750e+00, 6.05970144e+00, 1.33134327e+01, + 1.54029846e+01, 1.40149250e+01, 9.55223846e+00, 1.98805962e+01, + 3.01940308e+01, 5.61194038e+00, 6.02985096e+00, 1.17611942e+01, + 1.43731346e+01, 1.37313433e+01, 1.15373135e+01, 1.07313433e+01, + 7.35820913e+00, 3.97014928e+00, 4.43283606e+00, 6.68656731e+00, + 8.91044807e+00, 9.97014904e+00, 9.04477596e+00, 7.55223894e+00, + 5.10447741e+00, 6.29032278e+00, 2.48387098e+00, 5.09677410e+00, + 4.83870983e+00, 2.93548393e+00, 3.96774197e+00, 5.74193525e+00, + 4.32258081e+00, 2.90322590e+00, 3.19354844e+00, 8.54838753e+00, + 7.51612902e+00, 5.80645180e+00, 5.12903214e+00, 5.87096786e+00, + 4.03225803e+00, 2.16129041e+00, 2.70967746e+00, 9.77419376e+00, + 1.92903233e+01, 8., 5.06451607e+00, 5.51612902e+00, + 4.16129017e+00, 1.61290324e+00, 1.19354844e+00, 1.38709679e+01, + 2.92258072e+01, 4.87096786e+00, 3.12903237e+00, 1.25161295e+01, + 2.15483875e+01, 2.64516139e+00, 3.80645156e+00, 2.13870964e+01, + 1.65161285e+01, 2.64516139e+00, 8.70967770e+00, 4.52258072e+01, + 1.81290321e+01, 2.41935492e+00, 7.51612902e+00, 3.57419357e+01, + 2.65161285e+01, 4.93548393e+00, 2.75483875e+01, 5.21935501e+01, + 2.45806446e+01, 1.74193549e+00, 3.32258058e+00, 3.15806446e+01, + 4.75161285e+01, 5.51612902e+00, 9.58064556e+00, 8.91612930e+01, + 1.01806450e+02, 4.83870953e-01, 4.19354826e-01, 3.10322590e+01, + 6.24838715e+01, 2.19354844e+00, 2.03225803e+00, 113., + 1.20774193e+02, 7.06451607e+00, 1.01290321e+01, 2.95806446e+01, + 1.44516125e+01, 3.12903237e+00, 2.23548393e+01, 8.16774216e+01, + 4.18709679e+01, 2.32903233e+01, 2.64516125e+01, 3.99354820e+01, + 2.53225803e+01, 8.29032230e+00, 5.67419357e+01, 9.42258072e+01, + 7.52580643e+01, 1.99032249e+01, 1.67741928e+01, 8.99677429e+01, + 1.12032257e+02, 1.03225803e+01, 1.29032259e+01, 1.01483871e+02, + 1.16161293e+02, 1.54838705e+00, 1.32258070e+00, 1.09935486e+02, + 1.28064514e+02, 2.48387098e+00, 1.77419353e+00, 5.85806465e+01, + 7.24838715e+01, 9.67741966e+00, 8.70967770e+00, 1.44193544e+01, + 1.12258062e+01, 7., 6.87096786e+00, 8.06451607e+00, + 1.37096777e+01, 2.55806446e+01, 2.18387089e+01, 3.23548393e+01, + 5.27741928e+01, 4.61612892e+01, 1.36451616e+01, 1.17741938e+01, + 2.27419357e+01, 1.47741938e+01, 8.64516163e+00, 7.16774216e+01, + 1.07258064e+02, 5.85161285e+01, 9.90322590e+00, 2.40645161e+01, + 4.07419357e+01, 3.90322590e+00, 7.41935492e-01, 3.13225803e+01, + 5.04516144e+01, 6.38709688e+00, 2.51612902e+00, 3.54838715e+01, + 4.84838715e+01, 3.70563393e+01, 1.67042255e+01, 2.12112675e+01, + 3.37464790e+01, 1.34084511e+01, 7.63380289e+00, 1.29859152e+01, + 4.05070419e+01, 4.45070419e+01, 3.43380280e+01, 3.45915489e+01, + 4.40422554e+01, 3.86619720e+01, 2.77323952e+01, 2.16760559e+01, + 2.76197186e+01, 4.67746468e+01, 1.38450708e+01, 2.44225349e+01, + 1.17309860e+02, 1.19380280e+02, 4.10563393e+01, 1.49295778e+01, + 4.91690140e+01, 4.18873253e+01, 3.46478868e+00, 1.34647884e+01, + 5.19718323e+01, 4.64788742e+01, 1.61267605e+01, 1.68732395e+01, + 6.10845070e+01, 4.31971817e+01, 1.92676048e+01, 1.74929581e+01, + 3.43521118e+01, 2.43661976e+01, 1.86760559e+01, 2.10140839e+01, + 3.21408463e+01, 3.80563393e+01, 1.82394371e+01, 4.70140839e+01, + 1.21295776e+02, 4.43380280e+01, 1.25070419e+01, 2.14647884e+01, + 5.91408463e+01, 4.98450699e+01, 5.56338024e+00, 2.18732395e+01, + 1.33676056e+02, 8.11267624e+01, 1.03380280e+01, 1.75352116e+01, + 1.03732391e+02, 2.68732395e+01, 4.64788723e+00, 9.39436626e+00, + 2.83380280e+01, 2.55774651e+01, 1.34788733e+01, 1.46619720e+01, + 5.66478882e+01, 15., 2.41971836e+01, 7.14366226e+01, + 8.67887344e+01, 2.11549301e+01, 1.72676048e+01, 3.07042255e+01, + 2.73943653e+01, 1.54507046e+01, 6.23943663e+00, 5.05774651e+01, + 1.33718307e+02, 2.81830978e+01, 5.76056337e+00, 3.76619720e+01, + 9.07323914e+01, 2.50845070e+01, 6., 1.66197186e+01, + 7.25774612e+01, 2.37042255e+01, 6.59154940e+00, 2.28169022e+01, + 9.38450699e+01, 7.23943663e+00, 6.39436626e+00, 1.12394361e+01, + 1.40140848e+01, 1.75211277e+01, 1.17605639e+01, 8.08450699e+00, + 1.61408443e+01, 2.95774651e+00, 5.05633783e+00, 2.98309860e+01, + 3.44507027e+01, 7.04225349e+00, 3.29577470e+00, 1.09436617e+01, + 1.54084511e+01, 4.56338024e+00, 1.38028169e+00, 6.15492964e+00, + 1.91830978e+01, 4.73239422e+00, 1.64788735e+00, 1.37464790e+01, + 3.29295769e+01, 3.33802819e+00, 2.25352120e+00, 3.91549301e+00, + 5.73239422e+00, 5.49295759e+00, 2.81690145e+00, 4.35211277e+00, + 1.14225349e+01, 1.63380277e+00, 1.80281687e+00, 2.56338024e+00, + 3.18309855e+00, 4.63380289e+00, 3.56338024e+00, 1.63380277e+00, + 1.30985916e+00, 2.93333340e+01, 8.37333298e+00, 2.30133343e+01, + 6.46533356e+01, 2.56399994e+01, 4.90666676e+00, 1.93999996e+01, + 7.31866684e+01, 5.63199997e+01, 8.18666649e+00, 8.93333340e+00, + 3.28533325e+01, 2.30400009e+01, 7.46666670e+00, 2.19866657e+01, + 1.15239998e+02, 6.37333336e+01, 1.54533329e+01, 7.45333338e+00, + 1.15333338e+01, 9.76000023e+00, 8.15999985e+00, 2.04266663e+01, + 9.75066681e+01, 6.57733307e+01, 1.05600004e+01, 2.02666664e+00, + 1.33333337e+00, 1.49333334e+00, 2.85333323e+00, 1.49600000e+01, + 8.09733353e+01, 2.04400005e+01, 4.77333355e+00, 1.73866673e+01, + 3.33866653e+01, 7.66666651e+00, 5.21333313e+00, 7.75199966e+01, + 1.18466667e+02, 3.55466652e+01, 9.85333347e+00, 1.18266668e+01, + 2.26000004e+01, 9.73333359e+00, 9.42666626e+00, 6.50533371e+01, + 1.22279999e+02, 6.44133301e+01, 9.80000019e+00, 3.97333336e+00, + 4.81333351e+00, 3.73333335e+00, 7.22666645e+00, 5.33733330e+01, + 1.26466667e+02, 5.32133331e+01, 7.98666668e+00, 3.79999995e+00, + 2.41333342e+00, 2.92000008e+00, 4.74666643e+00, 2.62533340e+01, + 9.40133362e+01, 1.03733330e+01, 3.83999991e+00, 7.62666655e+00, + 7.92000008e+00, 4.14666653e+00, 1.22266665e+01, 1.09199997e+02, + 1.02320000e+02, 2.18933334e+01, 4.98666668e+00, 4.93333340e+00, + 4.42666674e+00, 3.62666678e+00, 9.93333340e+00, 1.09480003e+02, + 1.23959999e+02, 4.13733330e+01, 1.13599997e+01, 7.49333334e+00, + 4.90666676e+00, 4.54666662e+00, 8.54666710e+00, 6.46533356e+01, + 1.15466667e+02, 2.37466660e+01, 1.33066664e+01, 1.16800003e+01, + 7.11999989e+00, 5.89333344e+00, 9.15999985e+00, 1.79733334e+01, + 3.68800011e+01, 9.05333328e+00, 3.18666673e+00, 4.07999992e+00, + 2.62666678e+00, 2.21333337e+00, 8.84000015e+00, 5.19733315e+01, + 4.40666656e+01, 1.43199997e+01, 6.69333315e+00, 7.18666649e+00, + 4.28000021e+00, 4.61333323e+00, 9.15999985e+00, 4.04799995e+01, + 4.96399994e+01, 1.48266668e+01, 1.07733335e+01, 1.09733334e+01, + 7.28000021e+00, 6.77333355e+00, 1.00666666e+01, 2.05599995e+01, + 2.52800007e+01, 1.02133331e+01, 8.93333340e+00, 8.22666645e+00, + 5.48000002e+00, 4.57333326e+00, 6.26666689e+00, 7.37333345e+00, + 1.02799997e+01, 5.11475420e+00, 2.11475420e+00, 9.63934422e+00, + 2.05409832e+01, 1.01803274e+01, 2.52459025e+00, 4.42622948e+00, + 2.17704926e+01, 6.67213106e+00, 2., 2.04262295e+01, + 4.54754105e+01, 6.98360634e+00, 2.77049184e+00, 4.57049179e+01, + 1.13754097e+02, 2.55737710e+00, 2.54098368e+00, 8.58524628e+01, + 9.29836044e+01, 3.26229501e+00, 5.95081949e+00, 8.73934402e+01, + 1.01278687e+02, 3.06557369e+00, 4.67213106e+00, 1.08622948e+02, + 5.54262314e+01, 1.88524592e+00, 8.01639366e+00, 7.24098358e+01, + 2.72786884e+01, 3.11475410e+01, 1.83606553e+00, 7.73770475e+00, + 5.95409851e+01, 1.43114758e+01, 2.83606553e+00, 1.07049179e+01, + 1.12901642e+02, 1.77868843e+01, 3.49180317e+00, 4.29508209e+01, + 1.22098358e+02, 2.26885242e+01, 2.52459025e+00, 2.37213116e+01, + 1.10852463e+02, 1.16557379e+01, 6.18032789e+00, 6.39344254e+01, + 1.01540985e+02, 4.75409842e+00, 5.88524580e+00, 2.61639347e+01, + 3.38524590e+01, 9.73770523e+00, 5.45901632e+00, 3.20327873e+01, + 1.50983610e+01, 3.09836054e+00, 1.20327873e+01, 2.84918041e+01, + 2.33934422e+01, 6.29180336e+01, 2.11475420e+00, 4.08196735e+00, + 1.08409836e+02, 7.26393433e+01, 2.37704921e+00, 4.93442631e+00, + 9.60327835e+01, 2.11803284e+01, 6.18032789e+00, 8.40983582e+00, + 9.66721344e+01, 3.89508209e+01, 3.98360658e+00, 1.62295074e+01, + 3.95737686e+01, 2.55081959e+01, 6.49180317e+00, 4.90163946e+00, + 5.08196735e+00, 2.36065578e+00, 6.24590158e+00, 3.30983620e+01, + 4.96393433e+01, 1.65901642e+01, 3.09836054e+00, 1.59016395e+00, + 2.03278685e+00, 2.55737710e+00, 1.18032789e+01, 4.67049179e+01, + 4.70819664e+01, 5.09180336e+01, 3.80327868e+00, 1.54098356e+00, + 5.98852463e+01, 9.88360672e+01, 2.59016395e+00, 2.68852448e+00, + 2.68524590e+01, 2.87540989e+01, 9.08196735e+00, 4.55737686e+00, + 1.24754095e+01, 1.67868843e+01, 2.72131157e+00, 1.30983610e+01, + 3.33442612e+01, 3.98032799e+01, 7.54098368e+00, 3.34426236e+00, + 2.03278685e+00, 1.72131145e+00, 3.08196712e+00, 2.29016399e+01, + 6.03114738e+01, 2.51639347e+01, 9.39344215e+00, 6.21311474e+00, + 4.72131157e+00, 5.49180317e+00, 1.02295084e+01, 3.83114738e+01, + 5.06885262e+01, 1.13793099e+00, 4.65517253e-01, 1.13793099e+00, + 2.24137926e+00, 2.55172420e+00, 2.41379309e+00, 1.06896555e+00, + 1.18965518e+00, 4.34482765e+00, 1.94827580e+00, 2.44827580e+00, + 5.05172396e+00, 1.51551723e+01, 1.51379309e+01, 5.74137926e+00, + 6.55172396e+00, 5.18965530e+00, 2.58620691e+00, 2.22413802e+00, + 4.08620691e+00, 9.67241383e+00, 1.20862064e+01, 1.13965521e+01, + 1.07068968e+01, 3.53448272e+00, 1.48275864e+00, 1.46551728e+00, + 3.05172420e+00, 9.15517235e+00, 1.03275862e+01, 5.82758617e+00, + 5.13793087e+00, 6.58620691e+00, 6.39655161e+00, 7.29310322e+00, + 1.13965521e+01, 1.26724138e+01, 1.05344830e+01, 1.06724138e+01, + 8.70689678e+00, 2.86551723e+01, 1.75689659e+01, 2.19827595e+01, + 3.50862083e+01, 6.02241364e+01, 6.12758636e+01, 5.69482765e+01, + 4.75689659e+01, 3.65172424e+01, 1.87586212e+01, 1.79827595e+01, + 3.08448277e+01, 7.19482727e+01, 8.54655151e+01, 8.19655151e+01, + 7.44310379e+01, 2.40689659e+01, 1.45862064e+01, 1.53965521e+01, + 2.77586212e+01, 6.41551743e+01, 8.37931061e+01, 5.96724129e+01, + 4.51896553e+01, 1.01206894e+01, 8.34482765e+00, 1.00172415e+01, + 1.35689659e+01, 1.34310341e+01, 1.35517244e+01, 1.48275862e+01, + 1.20172415e+01, 4.72068977e+01, 3.28275871e+01, 3.04827595e+01, + 4.22068977e+01, 4.83620682e+01, 5.06896553e+01, 6.69655151e+01, + 6.88448257e+01, 5.35862083e+01, 3.08793106e+01, 2.91896553e+01, + 4.42068977e+01, 7.12586212e+01, 8.38448257e+01, 8.78275833e+01, + 8.12241364e+01, 2.78448277e+01, 2.26724129e+01, 2.45000000e+01, + 4.05344810e+01, 7.36034470e+01, 9.35000000e+01, 9.23275833e+01, + 5.95000000e+01, 9.60344791e+00, 6.27586222e+00, 6.75862074e+00, + 6.48275852e+00, 8.77586174e+00, 1.10344830e+01, 1.35000000e+01, + 1.28275862e+01, 4.18965530e+01, 2.66724129e+01, 2.53965511e+01, + 3.26896553e+01, 4.07241364e+01, 4.64482765e+01, 5.61551743e+01, + 6.28103447e+01, 4.77931023e+01, 2.96551723e+01, 3.17413788e+01, + 4.96724129e+01, 5.81724129e+01, 5.45689659e+01, 6.17586212e+01, + 7.09137955e+01, 2.55344830e+01, 2.04655170e+01, 3.59137917e+01, + 5.25517235e+01, 5.27068977e+01, 4.95862083e+01, 5.34137917e+01, + 5.15000000e+01, 3.14081631e+01, 1.57959185e+01, 3.07551022e+01, + 61., 6.58775482e+01, 4.46326523e+01, 5.77959175e+01, + 6.61428604e+01, 1.76326523e+01, 1.90612240e+01, 3.11224499e+01, + 5.27142868e+01, 7.36530609e+01, 7.21632690e+01, 5.41224480e+01, + 37., 1.87142849e+01, 2.28367348e+01, 2.96530609e+01, + 4.09183655e+01, 6.81632690e+01, 7.85306091e+01, 3.64897957e+01, + 1.94081631e+01, 1.33265305e+01, 1.76326523e+01, 2.80204086e+01, + 3.88163261e+01, 5.00816345e+01, 5.08571434e+01, 2.72040825e+01, + 1.36734695e+01, 2.21836739e+01, 2.73673477e+01, 4.72448997e+01, + 6.30204086e+01, 7.85102005e+01, 6.03877563e+01, 3.30816345e+01, + 2.78571434e+01, 2.95306129e+01, 4.23673477e+01, 5.85918350e+01, + 6.74489822e+01, 8.75918350e+01, 7.72040787e+01, 3.51428566e+01, + 2.10408173e+01, 3.24285698e+01, 3.86734695e+01, 5.74489784e+01, + 7.54081650e+01, 9.35918350e+01, 7.93061218e+01, 4.39591827e+01, + 2.55918369e+01, 2.36122456e+01, 2.27755108e+01, 4.18775520e+01, + 6.31836739e+01, 7.16530609e+01, 6.10408173e+01, 4.20408173e+01, + 2.38775501e+01, 1.66326523e+01, 2.16938782e+01, 3.18367348e+01, + 3.74693871e+01, 5.96734695e+01, 6.08775520e+01, 2.63061218e+01, + 1.51428576e+01, 2.54897957e+01, 2.67551022e+01, 4.22244911e+01, + 5.69591827e+01, 7.47551041e+01, 7.24081650e+01, 4.22653046e+01, + 2.62244892e+01, 3.68163261e+01, 2.69795914e+01, 4.22040825e+01, + 5.94897957e+01, 7.31224518e+01, 6.76938782e+01, 5.26530609e+01, + 3.81020393e+01, 2.61428566e+01, 1.80816326e+01, 1.95714283e+01, + 2.90408173e+01, 4.97959175e+01, 6.16122437e+01, 4.32653046e+01, + 2.68163261e+01, 2.95918369e+00, 2.93877554e+00, 3.14285707e+00, + 3.95918369e+00, 8.02040863e+00, 7.12244892e+00, 3.16326523e+00, + 1.93877554e+00, 3.55102038e+00, 2.59183669e+00, 3.02040815e+00, + 6.48979568e+00, 1.24897957e+01, 1.00612249e+01, 6.12244892e+00, + 3.71428561e+00, 4.69387770e+00, 3.59183669e+00, 3.65306115e+00, + 6.32653046e+00, 9.97959137e+00, 9.12244892e+00, 8.26530647e+00, + 5.08163261e+00, 3.32653069e+00, 3.42857146e+00, 2.16326523e+00, + 3.48979592e+00, 7.08163261e+00, 7.48979568e+00, 5.04081631e+00, + 2.67346931e+00, 2.47567558e+01, 1.83783779e+01, 1.74864864e+01, + 1.95540543e+01, 2.36621628e+01, 2.12162170e+01, 1.72162170e+01, + 1.93108101e+01, 2.50675678e+01, 2.12837830e+01, 1.77162170e+01, + 1.96621628e+01, 2.49324322e+01, 2.27432442e+01, 1.62162170e+01, + 1.69729729e+01, 3.48243256e+01, 2.26486492e+01, 1.45405407e+01, + 2.58648643e+01, 4.18378372e+01, 2.45270271e+01, 1.10945950e+01, + 1.87702694e+01, 9.63513489e+01, 1.45135136e+01, 3.10810804e+00, + 7.52702713e+00, 1.56081085e+01, 7.52702713e+00, 3.21621633e+00, + 2.70405407e+01, 1.98108101e+01, 3.58918915e+01, 2.80405407e+01, + 1.56756754e+01, 2.33243237e+01, 4.65000000e+01, 2.02972965e+01, + 1.01081085e+01, 1.79729729e+01, 2.17837830e+01, 3.32837830e+01, + 3.58513527e+01, 2.66351357e+01, 2.02837830e+01, 2.36486492e+01, + 2.53918915e+01, 2.75810814e+01, 1.27837839e+01, 1.90540543e+01, + 3.74864883e+01, 2.60945950e+01, 9.09459496e+00, 1.69189186e+01, + 5.78648643e+01, 9.11081085e+01, 4.91891909e+00, 4.95945930e+00, + 1.25675678e+01, 9.56756783e+00, 3.75675678e+00, 7.82432413e+00, + 1.23472977e+02, 4.71621609e+00, 1.47162161e+01, 1.58783779e+01, + 6.44594574e+00, 8.48648643e+00, 1.10472977e+02, 1.06878380e+02, + 5.27027035e+00, 5.44594574e+00, 9., 2.06621628e+01, + 1.79864864e+01, 7.59459448e+00, 3.13108101e+01, 1.26797295e+02, + 4.69324341e+01, 9.41891861e+00, 4.85135126e+00, 8.13513470e+00, + 1.21486483e+01, 4.97297287e+00, 4.17567587e+00, 1.20513512e+02, + 1.29405411e+02, 2.95810814e+01, 6.91891909e+00, 6.04054070e+00, + 1.20270271e+01, 6.97297287e+00, 7.13513517e+00, 4.44864883e+01, + 1.31418915e+02, 3.81081080e+00, 6.91891909e+00, 8.02702713e+00, + 2.39189196e+00, 5.77027035e+00, 6.00405388e+01, 9.18918915e+01, + 1.39324322e+01, 5.71621609e+00, 4.78378391e+00, 1.10135136e+01, + 5.66216230e+00, 5.58108091e+00, 3.09189186e+01, 1.25891891e+02, + 4.43243256e+01, 1.00135136e+01, 6.14864874e+00, 8.04054070e+00, + 8.16216183e+00, 5.28378391e+00, 1.30945950e+01, 9.59864883e+01, + 8.40135117e+01, 1.17027025e+01, 6.68918896e+00, 4.12162161e+00, + 6.27027035e+00, 5.16216230e+00, 1.11486483e+01, 3.11216221e+01, + 4.44594612e+01, 1.79999995e+00, 2.04615378e+00, 1.60923080e+01, + 4.11692314e+01, 2.97230778e+01, 1.10923080e+01, 4.38461542e+00, + 2.84615374e+00, 1.36307688e+01, 1.89230764e+00, 1.08461542e+01, + 3.31538467e+01, 2.74153843e+01, 1.23384619e+01, 6.49230766e+00, + 1.85076923e+01, 1.18046150e+02, 3.16923070e+00, 2.87692308e+00, + 4.74615402e+01, 6.50307693e+01, 6.01538467e+00, 3.30769229e+00, + 9.99846191e+01, 2.99692307e+01, 4.04615402e+00, 1.61538458e+00, + 5.38615379e+01, 9.28769226e+01, 3.12307692e+00, 2.09230781e+00, + 1.91846161e+01, 1.76923072e+00, 4.09230757e+00, 2.38461533e+01, + 3.66461525e+01, 2.08615379e+01, 8.19999981e+00, 5.46153831e+00, + 7.35384607e+00, 3.52461548e+01, 2.26153851e+00, 14., + 4.61846161e+01, 2.04769230e+01, 8.73846149e+00, 1.29384613e+01, + 1.18830772e+02, 7.56153870e+01, 2.43076921e+00, 4.63076925e+00, + 128., 8.63692322e+01, 2.46153855e+00, 5.35384607e+00, + 1.22538460e+02, 1.90307693e+01, 5.13846159e+00, 2.07692313e+00, + 5.72153854e+01, 4.27846146e+01, 2.35384607e+00, 6.27692318e+00, + 2.13692303e+01, 3.16923070e+00, 3.24615383e+00, 2.66769238e+01, + 3.61230774e+01, 8.03076935e+00, 5.43076944e+00, 6.77692337e+01, + 1.04153847e+02, 1.59230766e+01, 1.86153841e+00, 3.19230766e+01, + 1.29784622e+02, 1.40307693e+01, 3.21538472e+00, 4.14153862e+01, + 1.29507690e+02, 1.71846161e+01, 2.72307682e+00, 8.90769196e+00, + 1.29353851e+02, 3.40153847e+01, 2.33846164e+00, 9.75384617e+00, + 5.47076912e+01, 1.83846149e+01, 4.06153870e+00, 1.56923079e+00, + 8.52307701e+00, 3.84615374e+00, 2.29230762e+00, 8.24615383e+00, + 2.77538452e+01, 2.21538472e+00, 2.70769238e+00, 8.11230774e+01, + 9.55230789e+01, 2.04615378e+00, 1.98461533e+00, 5.02461548e+01, + 5.78461533e+01, 6.30769253e+00, 1.90769231e+00, 3.85692291e+01, + 1.05400002e+02, 4.78461552e+00, 3.50769234e+00, 1.56769228e+01, + 3.12000008e+01, 1.21538458e+01, 2.35384607e+00, 2.79999995e+00, + 1.74307690e+01, 2.52307701e+00, 3.21538472e+00, 1.29538460e+01, + 2.79846153e+01, 1.06769228e+01, 2.61538458e+00, 1.38461542e+00, + 1.16923082e+00, 1.55384612e+00, 2.76923084e+00, 6.70769215e+00, + 1.95846157e+01, 2.65000010e+00, 2.67499995e+00, 2.32500005e+00, + 9.75000024e-01, 1.52499998e+00, 3.15000010e+00, 2.70000005e+00, + 2.57500005e+00, 2.92000008e+01, 5.11500015e+01, 1.41250000e+01, + 6.62500000e+00, 3.97750015e+01, 8.42750015e+01, 1.64500008e+01, + 1.04499998e+01, 8.52750015e+01, 1.50574997e+02, 4.08750000e+01, + 6.22499990e+00, 5.31250000e+01, 1.27974998e+02, 2.66749992e+01, + 7.94999981e+00, 5.44749985e+01, 1.39350006e+02, 1.09099998e+02, + 2.12250004e+01, 1.55500002e+01, 4.21250000e+01, 3.22500000e+01, + 1.72500000e+01, 3.34999990e+00, 3.09999990e+00, 4.17500019e+00, + 2.59999990e+00, 1.37500000e+00, 1.60000002e+00, 3.32500005e+00, + 3.32500005e+00, 2.78500004e+01, 2.90750008e+01, 2.66250000e+01, + 1.59250002e+01, 1.45249996e+01, 2.69249992e+01, 1.60750008e+01, + 1.86000004e+01, 3.09750004e+01, 7.61250000e+01, 3.87500000e+01, + 1.73750000e+01, 4.12500000e+01, 1.25300003e+02, 4.69500008e+01, + 1.37749996e+01, 3.07999992e+01, 1.39475006e+02, 1.14750000e+02, + 1.99750004e+01, 4.46749992e+01, 1.33625000e+02, 6.58000031e+01, + 6.87500000e+00, 1.82500005e+00, 1.92499995e+00, 4.37500000e+00, + 3.45000005e+00, 1.50000000e+00, 1.17499995e+00, 2.22499990e+00, + 1.97500002e+00, 2.20499992e+01, 2.44750004e+01, 3.11749992e+01, + 2.28750000e+01, 1.01499996e+01, 8.42500019e+00, 1.13000002e+01, + 1.69500008e+01, 2.88500004e+01, 3.36500015e+01, 3.89000015e+01, + 3.17500000e+01, 2.14249992e+01, 2.18750000e+01, 1.49499998e+01, + 1.64500008e+01, 2.14500008e+01, 4.16749992e+01, 3.23250008e+01, + 2.04249992e+01, 3.40750008e+01, 8.59000015e+01, 2.93250008e+01, + 7.65000010e+00, 1.22500002e+00, 2.17499995e+00, 2.77500010e+00, + 1.82500005e+00, 8.24999988e-01, 4.25000012e-01, 1.50000000e+00, + 1.50000000e+00, 1.29250002e+01, 1.75249996e+01, 2.08750000e+01, + 1.67749996e+01, 9.42500019e+00, 6.19999981e+00, 1.13999996e+01, + 1.35000000e+01, 1.81000004e+01, 2.13250008e+01, 2.44500008e+01, + 2.32749996e+01, 1.77500000e+01, 9.57499981e+00, 1.01999998e+01, + 1.24250002e+01, 2.37250004e+01, 2.31499996e+01, 1.91749992e+01, + 2.02999992e+01, 2.39750004e+01, 1.44250002e+01, 6.77500010e+00, + 6.69999981e+00, 1.28888893e+00, 1.42222226e+00, 2.06666660e+00, + 5.57777786e+00, 2.93333340e+01, 2.68888893e+01, 7.88888884e+00, + 2.20000005e+00, 3.24444427e+01, 3.90444450e+01, 6.11111116e+00, + 7.35555553e+00, 1.82222214e+01, 3.07777786e+01, 1.58444443e+01, + 7., 1.35533340e+02, 1.60822220e+02, 1.14666662e+01, + 4.17777777e+00, 3.34222221e+01, 9.53111115e+01, 1.59555559e+01, + 8.48888874e+00, 47., 1.26955559e+02, 1.77111111e+01, + 3.28888893e+00, 4.62222214e+01, 1.56955551e+02, 2.73999996e+01, + 4.53333330e+00, 1.48888886e+00, 1.33333337e+00, 1.71111107e+00, + 4.13333321e+00, 2.92444439e+01, 3.88888893e+01, 1.33555555e+01, + 2.59999990e+00, 6.71111107e+00, 6.82222223e+00, 6.33333349e+00, + 6.95555544e+00, 2.49777775e+01, 4.61111107e+01, 3.13333340e+01, + 9.26666641e+00, 3.40444450e+01, 1.32600006e+02, 2.01111107e+01, + 9.71111107e+00, 1.59555559e+01, 3.60222206e+01, 2.85555553e+01, + 1.16444445e+01, 2.69111118e+01, 1.60822220e+02, 8.55777740e+01, + 5.82222223e+00, 1.86222229e+01, 126., 3.44000015e+01, + 4.17777777e+00, 1.62222219e+00, 1.22222221e+00, 1.39999998e+00, + 2.73333335e+00, 1.87999992e+01, 4.10888901e+01, 1.23333330e+01, + 3.42222214e+00, 2.42222214e+00, 1.84444439e+00, 3.35555553e+00, + 5.08888912e+00, 2.51555557e+01, 6.22000008e+01, 3.19333324e+01, + 6.57777786e+00, 5.59999990e+00, 8.13333321e+00, 6.53333330e+00, + 6.68888903e+00, 2.07999992e+01, 4.17333336e+01, 3.45333328e+01, + 1.08000002e+01, 5.66666651e+00, 8.14000015e+01, 3.38222237e+01, + 6.04444456e+00, 2.21111107e+01, 3.78666649e+01, 2.33555565e+01, + 8.77777767e+00, 1.82222223e+00, 1.57777774e+00, 2.02222228e+00, + 1.93333328e+00, 5.86666679e+00, 1.96444435e+01, 1.00888891e+01, + 4.82222223e+00, 1.28888893e+00, 1.11111116e+00, 1.26666665e+00, + 2.37777781e+00, 1.22222223e+01, 5.08222237e+01, 2.93555565e+01, + 3.95555544e+00, 2.53333330e+00, 1.33333337e+00, 1.26666665e+00, + 2.24444437e+00, 1.00666666e+01, 4.29555550e+01, 3.86888885e+01, + 6.75555563e+00, 2.84444451e+00, 2.04444456e+00, 1.79999995e+00, + 2.31111121e+00, 1.19555559e+01, 3.27555542e+01, 2.93999996e+01, + 7.08888912e+00, 6.15949364e+01, 2.86329117e+01, 3.78101273e+01, + 4.70886078e+01, 2.45822792e+01, 2.32911396e+01, 5.45822792e+01, + 1.02202530e+02, 9.25189896e+01, 4.64556961e+01, 2.30506325e+01, + 1.94430370e+01, 1.68227844e+01, 1.91518993e+01, 3.35443039e+01, + 9.33291168e+01, 1.04291138e+02, 3.63924065e+01, 8.68354416e+00, + 5.43037987e+00, 5., 6.08860779e+00, 2.28987350e+01, + 9.25696182e+01, 1.72405071e+01, 6.55696201e+00, 2.26582289e+00, + 1.60759497e+00, 1.25316453e+00, 1.65822780e+00, 5.51898718e+00, + 1.36075945e+01, 6.12151909e+01, 2.66835442e+01, 1.52658224e+01, + 2.10379753e+01, 2.60506325e+01, 3.48481026e+01, 6.73544312e+01, + 9.14556961e+01, 1.04075951e+02, 3.02278481e+01, 1.28987341e+01, + 7.39240503e+00, 1.04936705e+01, 1.90506325e+01, 7.47721481e+01, + 1.23202530e+02, 9.86582260e+01, 2.64303799e+01, 1.27088604e+01, + 6.48101282e+00, 6.54430389e+00, 1.13291140e+01, 4.51265831e+01, + 1.09987343e+02, 1.07215185e+01, 5.31645584e+00, 5.64556980e+00, + 2.96202540e+00, 2.21518993e+00, 4.15189886e+00, 8.89873409e+00, + 1.35189877e+01, 3.03037968e+01, 6.01265812e+00, 3.12658238e+00, + 4.27848101e+00, 7.59493685e+00, 2.86582279e+01, 1.10316452e+02, + 1.09177216e+02, 6.15949364e+01, 1.19113922e+01, 5.39240503e+00, + 4.82278490e+00, 8.24050617e+00, 2.08101273e+01, 9.75822754e+01, + 1.21405060e+02, 4.81898727e+01, 1.97594929e+01, 1.37468357e+01, + 9.41772175e+00, 1.41392403e+01, 2.28354435e+01, 4.83291130e+01, + 7.42911377e+01, 5.35443020e+00, 4.29113913e+00, 5.20253181e+00, + 2.69620252e+00, 3.07594943e+00, 5.62025309e+00, 9., + 6.37974691e+00, 1.00379744e+01, 2.16455698e+00, 2.32911396e+00, + 2.12658238e+00, 2.65822792e+00, 1.24936705e+01, 3.76835442e+01, + 4.10632896e+01, 1.71645565e+01, 7.25316477e+00, 5.01265812e+00, + 4.83544302e+00, 5.84810114e+00, 1.16835442e+01, 2.47721519e+01, + 3.28987350e+01, 1.22025318e+01, 8.78481007e+00, 6.46835423e+00, + 5.34177208e+00, 7.74683523e+00, 1.05949364e+01, 1.23164558e+01, + 1.44936705e+01, 1.94936705e+00, 1.20253170e+00, 1.53164554e+00, + 1.25316453e+00, 1.39240503e+00, 1.68354428e+00, 2.45569611e+00, + 2.21518993e+00, 1.67288132e+01, 1.66949158e+01, 5.08474588e+00, + 4.76271200e+00, 5.37288141e+00, 5.38983059e+00, 8.22033882e+00, + 5.67796612e+00, 1.05593224e+01, 7.71186447e+00, 5., + 5.38983059e+00, 5.38983059e+00, 5.03389835e+00, 7.59322023e+00, + 8.45762730e+00, 5.52542353e+00, 5.13559341e+00, 4.49152565e+00, + 5.45762730e+00, 5.20338964e+00, 5.23728800e+00, 7.62711859e+00, + 6.16949129e+00, 2.33898306e+00, 1.86440682e+00, 2.16949153e+00, + 2.18644071e+00, 2.54237294e+00, 3.61016941e+00, 3.49152541e+00, + 3.16949153e+00, 4.99152527e+01, 8.76610184e+01, 1.95423737e+01, + 8.54237270e+00, 2.68813553e+01, 42., 1.60169487e+01, + 8.32203388e+00, 2.67796612e+01, 2.77118645e+01, 1.33559322e+01, + 1.27118645e+01, 1.42372885e+01, 1.34406776e+01, 1.63559322e+01, + 1.57457628e+01, 1.38474579e+01, 1.32542372e+01, 1.16271191e+01, + 1.28305082e+01, 1.21186438e+01, 1.36610174e+01, 1.90677967e+01, + 1.53559322e+01, 5.67796612e+00, 5.06779671e+00, 6., + 6.61016941e+00, 7.27118635e+00, 8.96610165e+00, 1.18983049e+01, + 9.10169506e+00, 8.60169525e+01, 1.31118637e+02, 1.91525421e+01, + 7.77966118e+00, 1.30644073e+02, 1.54372879e+02, 2.54067802e+01, + 7.23728800e+00, 6.34576263e+01, 9.36949158e+01, 1.70677967e+01, + 9.28813553e+00, 1.65593224e+01, 1.85423737e+01, 13., + 1.31016951e+01, 1.87457619e+01, 1.75762711e+01, 1.33050852e+01, + 1.20677967e+01, 1.35932207e+01, 1.60508480e+01, 1.86271191e+01, + 1.70169487e+01, 6.61016941e+00, 6.83050871e+00, 7.61016941e+00, + 6.74576283e+00, 7.50847435e+00, 8.79660988e+00, 9.89830494e+00, + 9.23728848e+00, 1.14135590e+02, 1.17525421e+02, 1.04237289e+01, + 1.81016941e+01, 1.61711868e+02, 1.60966095e+02, 1.78305092e+01, + 6.61016941e+00, 1.02949150e+02, 1.22627121e+02, 1.34576273e+01, + 5.23728800e+00, 5.04237289e+01, 5.78305092e+01, 7.49152565e+00, + 8.47457600e+00, 2.90169487e+01, 2.93389835e+01, 1.31864405e+01, + 8.03389835e+00, 9.45762730e+00, 1.06779661e+01, 1.11694918e+01, + 1.16610174e+01, 4.84745741e+00, 5.74576283e+00, 6.69491529e+00, + 5.93220329e+00, 6.16949129e+00, 6.55932188e+00, 8.45762730e+00, + 6.69491529e+00, 1.68684216e+01, 1.62631588e+01, 1.30789471e+01, + 4.60526323e+00, 6.26315784e+00, 4.31315804e+01, 2.88684216e+01, + 9.15789509e+00, 1.33947372e+01, 2.90263157e+01, 1.41052628e+01, + 2.42105269e+00, 1.55789471e+01, 9.47368393e+01, 2.11315784e+01, + 3.02631569e+00, 8.26315784e+00, 2.78684216e+01, 1.22631578e+01, + 3.76315784e+00, 1.90263157e+01, 5.31578941e+01, 6.21052647e+00, + 2.36842108e+00, 5.07894754e+00, 10., 4.57894754e+00, + 4.07894754e+00, 5.81578970e+00, 7.57894754e+00, 5.15789461e+00, + 2.84210515e+00, 24., 1.98157902e+01, 1.40526314e+01, + 7.02631569e+00, 8.50000000e+00, 2.88947372e+01, 3.23947372e+01, + 1.73421059e+01, 3.15526314e+01, 3.52631569e+01, 1.23947372e+01, + 4.60526323e+00, 2.31315784e+01, 8.40263138e+01, 4.47105255e+01, + 1.88157902e+01, 3.25263176e+01, 4.95000000e+01, 1.13157892e+01, + 5.21052647e+00, 8.21578979e+01, 117., 1.59736843e+01, + 7.92105246e+00, 1.84473686e+01, 3.10526314e+01, 8.23684216e+00, + 6.65789461e+00, 2.71842098e+01, 2.75000000e+01, 5., + 5.36842108e+00, 3.60263176e+01, 7.03157883e+01, 2.47894745e+01, + 8.55263138e+00, 9.13157940e+00, 1.92894745e+01, 2.32105255e+01, + 1.79473686e+01, 3.26578941e+01, 3.03684216e+01, 3.45263176e+01, + 2.57105255e+01, 3.09473686e+01, 3.10789471e+01, 4.01315804e+01, + 3.78684196e+01, 4.72631569e+01, 3.14736843e+01, 1.53684206e+01, + 3.65789490e+01, 1.16078949e+02, 8.88684235e+01, 1.78421059e+01, + 2.26842098e+01, 3.18421059e+01, 3.61842117e+01, 1.18947372e+01, + 1.57105265e+01, 5.61052628e+01, 4.74210510e+01, 1.27368422e+01, + 6.86842108e+00, 1.26578951e+01, 1.08447365e+02, 6.44473648e+01, + 8.63157940e+00, 7., 4.11578941e+01, 2.60526314e+01, + 3.86842108e+00, 2.08421059e+01, 9.73421021e+01, 1.08236839e+02, + 4.24736824e+01, 1.39736843e+01, 2.87105255e+01, 3.82105255e+01, + 2.32368412e+01, 3.18684216e+01, 9.54736862e+01, 5.71052628e+01, + 2.86578941e+01, 4.97631569e+01, 8.99473648e+01, 2.95263157e+01, + 2.51315784e+01, 1.92105255e+01, 5.11842117e+01, 1.77631588e+01, + 6.57894754e+00, 2.93157902e+01, 1.05921051e+02, 2.57105255e+01, + 4.84210539e+00, 1.47887325e+01, 4.56619720e+01, 2.86338024e+01, + 4.81690121e+00, 3.32394361e+00, 3.61971831e+00, 3.42253518e+00, + 3.46478868e+00, 1.54507046e+01, 2.51408443e+01, 1.46619720e+01, + 6.02816916e+00, 7.22535229e+00, 6.50704241e+00, 5.28169012e+00, + 6.71830988e+00, 9.87323952e+00, 1.24084511e+01, 8.94366169e+00, + 7.15492964e+00, 9.30985928e+00, 9.12676048e+00, 8.70422554e+00, + 6.29577446e+00, 3.97183108e+00, 4.36619711e+00, 2.85915494e+00, + 2.23943663e+00, 2.71830988e+00, 2.94366193e+00, 5.83098602e+00, + 2.53521132e+00, 1.95070419e+01, 1.57929581e+02, 1.23253525e+02, + 4.85915470e+00, 3.94366193e+00, 8.21126747e+00, 1.01267605e+01, + 5.29577446e+00, 4.22957764e+01, 1.32605637e+02, 4.17323952e+01, + 7.28169012e+00, 7.52112675e+00, 9.11267567e+00, 1.35633802e+01, + 1.43380280e+01, 2.25352116e+01, 3.38873253e+01, 1.79859161e+01, + 9.61971855e+00, 1.04929581e+01, 1.36056337e+01, 1.75211277e+01, + 1.52535210e+01, 6.97183084e+00, 8.33802795e+00, 5.73239422e+00, + 3.38028169e+00, 3.71830988e+00, 4.84507036e+00, 9.16901398e+00, + 4.56338024e+00, 3.87323952e+01, 1.47394363e+02, 5.34225349e+01, + 3.66197181e+00, 6.64788723e+00, 1.00704222e+01, 4.11267614e+00, + 2.08450699e+00, 1.42028168e+02, 1.61901413e+02, 2.30704231e+01, + 3.42253518e+00, 6.38028193e+00, 7.53521109e+00, 4.61971807e+00, + 7.07042265e+00, 6.17605629e+01, 8.08873215e+01, 1.72676048e+01, + 6.88732386e+00, 8.04225349e+00, 9.23943615e+00, 9.70422554e+00, + 1.19014082e+01, 1.12394361e+01, 1.40845070e+01, 5.77464771e+00, + 2.74647880e+00, 3.11267614e+00, 3.73239446e+00, 4.54929590e+00, + 4.57746458e+00, 3.75915489e+01, 4.21408463e+01, 6.71830988e+00, + 5.43661976e+00, 1.93661976e+01, 2.43802814e+01, 9.45070457e+00, + 6.98591566e+00, 1.60507050e+02, 1.31873245e+02, 4.67605639e+00, + 2.77464795e+00, 6.70422554e+00, 5.84507036e+00, 2.84507036e+00, + 1.17042255e+01, 1.21704224e+02, 8.21267624e+01, 1.07042255e+01, + 3.77464795e+00, 5.78873253e+00, 4.87323952e+00, 5.32394361e+00, + 1.19014082e+01, 1.39859152e+01, 1.54507046e+01, 4.39436626e+00, + 1.90140843e+00, 2.16901398e+00, 2.15492964e+00, 2.69014096e+00, + 4.35211277e+00, 6.64516115e+00, 1.87096775e+00, 2.24193549e+00, + 5.20967722e+00, 5.46774197e+00, 4.48387098e+00, 8.83870983e+00, + 3.96774197e+00, 1.16774197e+01, 5.96774197e+00, 1.10967741e+01, + 3.11451607e+01, 2.45000000e+01, 8.69354820e+00, 6.85483885e+00, + 6.74193525e+00, 5.30645180e+00, 6.98387098e+00, 1.89032249e+01, + 4.58387108e+01, 2.63225803e+01, 1.04193544e+01, 5.14516115e+00, + 3.70967746e+00, 4.29032278e+00, 5.32258081e+00, 2.09838715e+01, + 3.69677429e+01, 1.96129036e+01, 1.30967741e+01, 8.88709641e+00, + 6.14516115e+00, 3.87096763e+00, 2.83870959e+00, 4.33870983e+00, + 1.16612902e+01, 1.20322580e+01, 5.45161295e+00, 7.12903214e+00, + 4.33870983e+00, 6.11290312e+00, 7.45161295e+00, 1.57258062e+01, + 58., 4.95000000e+01, 1.40967741e+01, 7.80645180e+00, + 5.66129017e+00, 5.83870983e+00, 8.24193573e+00, 2.87419357e+01, + 7.29516144e+01, 3.94677429e+01, 1.23064518e+01, 9.46774197e+00, + 7., 2.30967751e+01, 6.56451607e+00, 2.65161285e+01, + 5.27741928e+01, 2.59193554e+01, 1.09516125e+01, 1.59193544e+01, + 96., 3.14516139e+00, 2.66129041e+00, 3.80645156e+00, + 1.53064518e+01, 1.85645161e+01, 6.53225803e+00, 3.56451607e+00, + 2.95161295e+00, 3.98387098e+00, 5.74193525e+00, 1.62580643e+01, + 6.49193573e+01, 6.47580643e+01, 1.74516125e+01, 6.03225803e+00, + 3.67741942e+00, 3.15483875e+01, 7.91935492e+00, 2.70967751e+01, + 6.91128998e+01, 4.25967751e+01, 1.40483875e+01, 9.46774197e+00, + 5.41935501e+01, 1.00193550e+02, 5.46774197e+00, 1.48548384e+01, + 1.04258064e+02, 4.44354820e+01, 7.01612902e+00, 2.19677410e+01, + 1.50080643e+02, 1.40322578e+00, 1.32258070e+00, 3.85483861e+00, + 1.68709679e+01, 2.08225803e+01, 6.54838705e+00, 2.69354844e+00, + 1.80645156e+00, 3.91935492e+00, 4.45161295e+00, 1.07903223e+01, + 4.96129036e+01, 5.92903214e+01, 22., 7.01612902e+00, + 4.20967722e+00, 1.25548386e+02, 6.93548393e+00, 1.32580643e+01, + 4.69193535e+01, 4.21774178e+01, 1.45806456e+01, 7.29032278e+00, + 1.23806450e+02, 1.18435486e+02, 5.67741919e+00, 6.62903214e+00, + 1.33193542e+02, 1.18596771e+02, 5.51612902e+00, 9.11290359e+00, + 1.44790329e+02, 1.08599997e+01, 4.11999989e+00, 2.79999995e+00, + 3.31999993e+00, 2.79999995e+00, 4.78000021e+00, 9.52000046e+00, + 8.57999992e+00, 6.73999977e+00, 2.88000011e+00, 1.52799997e+01, + 2.60599995e+01, 5.30000019e+00, 4.32000017e+00, 1.05799999e+01, + 1.70400009e+01, 4.15999985e+00, 3.75999999e+00, 3.02999992e+01, + 3.27999992e+01, 5., 3.29999995e+00, 2.71399994e+01, + 3.76399994e+01, 4.19999981e+00, 7.59999990e+00, 1.71599998e+01, + 8.88000011e+00, 3.68000007e+00, 1.16800003e+01, 4.15200005e+01, + 2.28400002e+01, 1.97000008e+01, 7.98000002e+00, 1.89799995e+01, + 5.01599998e+01, 1.26000004e+01, 7.32000017e+00, 1.91399994e+01, + 3.59799995e+01, 2.04200001e+01, 4.51999998e+00, 4.65200005e+01, + 9.18199997e+01, 1.47799997e+01, 6.71999979e+00, 6.04000015e+01, + 1.15980003e+02, 1.89400005e+01, 7.82000017e+00, 3.82000008e+01, + 4.57000008e+01, 1.06999998e+01, 1.48999996e+01, 9.53000031e+01, + 1.11120003e+02, 1.51999998e+01, 1.58599997e+01, 2.45200005e+01, + 2.06599998e+01, 1.70200005e+01, 4.05600014e+01, 6.94599991e+01, + 4.35200005e+01, 6.09199982e+01, 1.18400002e+01, 2.91000004e+01, + 7.99000015e+01, 2.78600006e+01, 4.69999981e+00, 2.37399998e+01, + 9.46999969e+01, 7.48799973e+01, 1.55400000e+01, 1.22600002e+01, + 4.55600014e+01, 2.53400002e+01, 1.97999992e+01, 6.09399986e+01, + 1.19360001e+02, 23., 1.31999998e+01, 1.38599997e+01, + 3.29599991e+01, 3.58800011e+01, 4.21800003e+01, 5.34399986e+01, + 5.20800018e+01, 1.48599997e+01, 1.21400003e+01, 1.95400009e+01, + 4.39199982e+01, 3.50999985e+01, 2.09400005e+01, 1.72000008e+01, + 2.80799999e+01, 6.94199982e+01, 1.62199993e+01, 2.65000000e+01, + 4.71399994e+01, 2.23199997e+01, 1.19600000e+01, 3.95600014e+01, + 1.10779999e+02, 6.55999985e+01, 3.44799995e+01, 3.62999992e+01, + 3.13400002e+01, 2.63799992e+01, 3.08400002e+01, 3.18199997e+01, + 6.93799973e+01, 1.07399998e+01, 1.44799995e+01, 3.65600014e+01, + 5.46199989e+01, 3.97200012e+01, 3.26199989e+01, 3.76399994e+01, + 2.28999996e+01, 8.30000019e+00, 3.05999994e+00, 2.59200001e+01, + 8.30999985e+01, 2.51200008e+01, 8.42000008e+00, 2.93799992e+01, + 4.30600014e+01, 3.56756759e+00, 1.78378379e+00, 2.83783793e+00, + 6.83783770e+00, 3.04864864e+01, 6.14054070e+01, 2.81351357e+01, + 1.15135136e+01, 3.24324322e+00, 7.37837839e+00, 3.24324322e+00, + 8.02702713e+00, 5.74324341e+01, 5.36486473e+01, 1.03783779e+01, + 6.16216230e+00, 3.62972984e+01, 1.01837837e+02, 9.24324322e+00, + 7.94594574e+00, 4.47837830e+01, 3.97837830e+01, 4.10810804e+00, + 2.35135126e+00, 6.52702713e+01, 9.51081085e+01, 5.16216230e+00, + 3.08108115e+00, 7.88918915e+01, 9.81891861e+01, 3., 2., + 1.12972975e+01, 1.06486483e+01, 1.50270271e+01, 2.82162170e+01, + 6.15135117e+01, 5.78108101e+01, 2.01891899e+01, 9.54054070e+00, + 1.72972977e+00, 1.02702701e+00, 6.27027035e+00, 3.08108101e+01, + 1.01540543e+02, 5.26216202e+01, 6.40540552e+00, 2.72972965e+00, + 2.99729729e+01, 2.52972965e+01, 3.02702713e+00, 2.84864864e+01, + 7.92432404e+01, 2.20810814e+01, 3.05405402e+00, 3.21621633e+00, + 1.17054054e+02, 9.53513489e+01, 2.78378367e+00, 7.48648643e+00, + 8.91621628e+01, 4.61621628e+01, 1.75675678e+00, 3.16216207e+00, + 9.18918896e+00, 1.02432432e+01, 1.91081085e+01, 5.02162170e+01, + 5.65135117e+01, 2.57027035e+01, 1.00540543e+01, 7.70270252e+00, + 8.37837815e-01, 1.29729724e+00, 9.08108139e+00, 6.99459457e+01, + 1.00486488e+02, 2.30810814e+01, 2.91891885e+00, 1.59459460e+00, + 2.18648643e+01, 4.54054070e+00, 4.83783770e+00, 5.22972984e+01, + 7.43783798e+01, 1.12702703e+01, 3.89189196e+00, 9.27027035e+00, + 1.20432434e+02, 3.07027035e+01, 2.08108115e+00, 1.85945950e+01, + 7.91351318e+01, 1.18378382e+01, 1.94594598e+00, 2.30540543e+01, + 4.27027035e+00, 5.10810804e+00, 3.16486492e+01, 6.72702713e+01, + 4.75675659e+01, 1.68918915e+01, 9.89189148e+00, 6.32432413e+00, + 3.24324310e-01, 7.83783793e-01, 1.88378372e+01, 7.91891861e+01, + 5.64864883e+01, 9.81081104e+00, 2.72972965e+00, 1.45945942e+00, + 2.68918915e+01, 2.67567563e+00, 9.89189148e+00, 5.00810814e+01, + 3.54864883e+01, 5.75675678e+00, 5.37837839e+00, 2.57297306e+01, + 1.19243240e+02, 4.83783770e+00, 2.59459448e+00, 3.68378372e+01, + 6.26756744e+01, 3.02702713e+00, 1.91891897e+00, 6.55675659e+01, + 2.82926822e+00, 2., 2.65853667e+00, 8.19512177e+00, + 5.24390221e+00, 4.07317066e+00, 6.90243912e+00, 3.21951222e+00, + 6.97560978e+00, 3.09756088e+00, 1.17560978e+01, 2.10731716e+01, + 8.56097603e+00, 5.68292665e+00, 1.86097565e+01, 2.40975609e+01, + 3.65853667e+00, 4.39024401e+00, 1.64146347e+01, 2.43170738e+01, + 4.90243912e+00, 9.36585331e+00, 8.53902435e+01, 5.80975609e+01, + 1.90243900e+00, 4.63414621e+00, 2.47804871e+01, 1.44634142e+01, + 2.31707311e+00, 2.77073174e+01, 9.28048782e+01, 3.45365868e+01, + 1.34878044e+01, 3.04878044e+00, 5.68292665e+00, 1.71219521e+01, + 1.37073174e+01, 5.09756088e+00, 6.34146357e+00, 2.07560978e+01, + 6.21951218e+01, 5.75609779e+00, 1.58780489e+01, 3.60731697e+01, + 1.71463413e+01, 6.02439022e+00, 6.63414612e+01, 1.38560974e+02, + 1.32439022e+01, 1.15609760e+01, 4.44146347e+01, 4.33658524e+01, + 1.29268293e+01, 2.58292675e+01, 1.25170731e+02, 1.24414635e+02, + 7.34146357e+00, 2.89512196e+01, 4.39756088e+01, 2.19024391e+01, + 1.28536587e+01, 7.50975647e+01, 1.09195122e+02, 3.18536587e+01, + 7.70975647e+01, 1.42195120e+01, 4.14634132e+00, 1.54878044e+01, + 2.05609760e+01, 6.43902445e+00, 1.75609756e+00, 3.33902435e+01, + 1.32536591e+02, 4.35365868e+01, 1.25365858e+01, 3.49756088e+01, + 3.72195129e+01, 1.05853662e+01, 1.22926826e+01, 1.06634148e+02, + 2.24634151e+01, 1.79512196e+01, 2.52682934e+01, 3.65853653e+01, + 24., 1.48048782e+01, 1.71219521e+01, 2.60487804e+01, + 1.53414631e+01, 2.05365849e+01, 1.90975609e+01, 1.58048782e+01, + 17., 2.59024391e+01, 1.45365858e+01, 1.14146338e+01, + 5.27073174e+01, 3.30731697e+01, 2.92682934e+00, 8.07317066e+00, + 2.36585369e+01, 1.41951218e+01, 2.53658533e+00, 3.26829267e+00, + 1.12951218e+02, 1.23853661e+02, 1.75365849e+01, 11., + 3.20731697e+01, 2.64878044e+01, 6.51219511e+00, 7.87804890e+00, + 2.00243912e+01, 4.69024391e+01, 3.55609741e+01, 1.57073174e+01, + 1.58780489e+01, 2.13170738e+01, 1.63170738e+01, 8.56097603e+00, + 9.46341419e+00, 1.27073174e+01, 3.16341457e+01, 3.55121956e+01, + 1.32682924e+01, 8.75609779e+00, 1.28048782e+01, 1.27317076e+01, + 6.10389614e+00, 3.42337646e+01, 1.75194798e+01, 5.50649357e+00, + 6.83116865e+00, 3.67662354e+01, 1.24545450e+01, 3.10389614e+00, + 1.47402601e+01, 1.38922073e+02, 3.99480515e+01, 6.38961029e+00, + 1.01168833e+01, 7.86883087e+01, 1.67662334e+01, 4.93506479e+00, + 2.22857151e+01, 1.60259735e+02, 3.03116875e+01, 2.33766222e+00, + 1.18701296e+01, 1.24584419e+02, 1.48701296e+01, 5.92207813e+00, + 7.10389614e+00, 7.87922058e+01, 9.53246784e+00, 1.61038959e+00, + 1.91298695e+01, 1.59090912e+02, 1.37402601e+01, 1.16883111e+00, + 6.16883135e+00, 1.03246756e+01, 1.01168833e+01, 6.90909100e+00, + 7.58441544e+00, 1.45974026e+01, 8.68831158e+00, 4.90909100e+00, + 9.97402573e+00, 3.76233749e+01, 1.86623383e+01, 7.54545450e+00, + 1.12987013e+01, 5.85454559e+01, 1.51428576e+01, 6.36363649e+00, + 2.02207794e+01, 1.57064941e+02, 2.41168823e+01, 3.29870129e+00, + 1.38571424e+01, 1.08779221e+02, 1.52597399e+01, 2.35064936e+00, + 2.47402592e+01, 1.59896103e+02, 2.67532463e+01, 4.54545450e+00, + 1.85064926e+01, 1.25974030e+02, 9.46753216e+00, 1.37662339e+00, + 6.20779228e+00, 7., 7.93506479e+00, 8.14285755e+00, + 5.58441544e+00, 5.27272749e+00, 5.50649357e+00, 4.96103907e+00, + 7.61038971e+00, 1.00519476e+01, 1.15974026e+01, 9.58441544e+00, + 9.51948071e+00, 1.78831177e+01, 8.70129871e+00, 6.80519485e+00, + 1.00389614e+01, 3.64935074e+01, 1.58961039e+01, 6.55844164e+00, + 1.17922077e+01, 5.47662354e+01, 1.18051949e+01, 5.14285707e+00, + 2.80389614e+01, 1.34493500e+02, 2.11428566e+01, 5.61038971e+00, + 1.16493511e+01, 6.64935074e+01, 1.16623373e+01, 4.88311672e+00, + 4.31168842e+00, 4.14285707e+00, 4.20779228e+00, 5.24675322e+00, + 2.93506503e+00, 2.57142854e+00, 3.68831158e+00, 3.29870129e+00, + 4.62337685e+00, 4.97402620e+00, 5.62337685e+00, 6.29870129e+00, + 4.79220772e+00, 5.06493521e+00, 4.76623392e+00, 4., + 5.49350643e+00, 6.12986994e+00, 6.25974035e+00, 5.09090900e+00, + 7.02597380e+00, 1.38181820e+01, 5.77922058e+00, 4.06493521e+00, + 1.40129871e+01, 2.28311691e+01, 7.05194807e+00, 3.81818175e+00, + 7.80519485e+00, 2.38961048e+01, 6.46753263e+00, 4.15584421e+00, + 4.55999994e+00, 6.03999996e+00, 6.51999998e+00, 6.32999992e+00, + 1.17900000e+01, 1.32500000e+01, 7.05000019e+00, 4.21999979e+00, + 9.55000019e+00, 9.85999966e+00, 8.32999992e+00, 1.16099997e+01, + 7.70599976e+01, 1.09180000e+02, 1.91200008e+01, 7.44999981e+00, + 4.84000015e+00, 6.65000010e+00, 2.90000010e+00, 5.30000019e+00, + 1.45639999e+02, 1.68619995e+02, 1.89099998e+01, 3.01999998e+00, + 1.93400002e+01, 5.14099998e+01, 1.00299997e+01, 4.38000011e+00, + 5.59500008e+01, 1.35529999e+02, 2.69200001e+01, 5.42000008e+00, + 7.01000023e+00, 8.89000034e+00, 8.75000000e+00, 6.59999990e+00, + 1.07500000e+01, 1.32200003e+01, 9.53999996e+00, 6.86000013e+00, + 1.81800003e+01, 1.98799992e+01, 1.73299999e+01, 1.71599998e+01, + 3.90699997e+01, 6.07500000e+01, 2.60300007e+01, 1.66200008e+01, + 7.94000006e+00, 8.90999985e+00, 7.76000023e+00, 1.04300003e+01, + 8.94300003e+01, 1.67050003e+02, 4.37999992e+01, 8.36999989e+00, + 4.21999979e+00, 1.02799997e+01, 4.73999977e+00, 2.83999991e+00, + 50., 1.68869995e+02, 8.02799988e+01, 3.14000010e+00, + 7.57999992e+00, 8.26000023e+00, 8.92000008e+00, 6.11000013e+00, + 1.04300003e+01, 1.25600004e+01, 8.50000000e+00, 6.25000000e+00, + 1.92900009e+01, 2.16299992e+01, 2.15699997e+01, 1.63799992e+01, + 2.71599998e+01, 3.28699989e+01, 2.32000008e+01, 1.81200008e+01, + 1.61499996e+01, 1.94300003e+01, 1.74799995e+01, 1.45900002e+01, + 3.53100014e+01, 7.97799988e+01, 3.31500015e+01, 1.53100004e+01, + 4.61000013e+00, 6.13999987e+00, 6.15999985e+00, 5.51000023e+00, + 2.87299995e+01, 1.53649994e+02, 7.04800034e+01, 6.51000023e+00, + 5.32999992e+00, 4.50000000e+00, 3.75000000e+00, 2.71000004e+00, + 5.09999990e+00, 5.88999987e+00, 3.83999991e+00, 3.47000003e+00, + 1.05200005e+01, 1.08299999e+01, 9.90999985e+00, 7.03000021e+00, + 1.29600000e+01, 1.69300003e+01, 10., 7.92999983e+00, + 9.84000015e+00, 1.14600000e+01, 1.07600002e+01, 8.10999966e+00, + 1.28800001e+01, 1.96700001e+01, 1.34700003e+01, 8.89999962e+00, + 5.73999977e+00, 6.63999987e+00, 6.76000023e+00, 5.42000008e+00, + 1.14600000e+01, 2.87399998e+01, 1.68899994e+01, 7.13999987e+00, + 2.20833340e+01, 1.36875000e+01, 8.25000000e+00, 5.25000000e+00, + 6.83333349e+00, 9.33333302e+00, 1.45833330e+01, 1.61041660e+01, + 2.69375000e+01, 1.61458340e+01, 1.09583330e+01, 7.37500000e+00, + 1.12500000e+01, 1.48125000e+01, 1.98958340e+01, 2.03125000e+01, + 2.68333340e+01, 1.27500000e+01, 2.09583340e+01, 2.79166660e+01, + 1.09375000e+01, 1.48125000e+01, 2.19166660e+01, 2.56250000e+01, + 1.94791660e+01, 9.50000000e+00, 4.14583321e+01, 4.83541679e+01, + 8.54166698e+00, 1.17916670e+01, 2.53125000e+01, 3.08541660e+01, + 2.95625000e+01, 1.67500000e+01, 2.90416660e+01, 2.41666660e+01, + 7.68750000e+00, 1.09791670e+01, 1.96875000e+01, 2.50416660e+01, + 2.67916660e+01, 1.47916670e+01, 8.41250000e+01, 7.94375000e+01, + 1.07708330e+01, 1.47291670e+01, 3.57708321e+01, 3.88750000e+01, + 2.39166660e+01, 1.18333330e+01, 1.05312500e+02, 1.00562500e+02, + 8.25000000e+00, 9.10416698e+00, 55., 6.96458359e+01, + 2.37083340e+01, 9.87500000e+00, 8.06875000e+01, 7.39583359e+01, + 5.27083349e+00, 7.50000000e+00, 5.80208321e+01, 7.67500000e+01, + 1.53958330e+01, 1.21041670e+01, 8.41041641e+01, 8.32291641e+01, + 1.27916670e+01, 6.52083349e+00, 3.74375000e+01, 4.33541679e+01, + 1.34583330e+01, 12., 9.73333359e+01, 8.62916641e+01, + 5.14583349e+00, 5.25000000e+00, 7.40625000e+01, 8.12083359e+01, + 1.69791660e+01, 1.09583330e+01, 8.59583359e+01, 6.08125000e+01, + 2.14583325e+00, 3.45833325e+00, 8.47500000e+01, 9.26250000e+01, + 1.58750000e+01, 1.58125000e+01, 7.24375000e+01, 3.70416679e+01, + 4.10416651e+00, 7.83333349e+00, 6.62916641e+01, 6.81250000e+01, + 1.10625000e+01, 1.25625000e+01, 2.88958340e+01, 2.30625000e+01, + 1.08750000e+01, 1.16250000e+01, 4.70416679e+01, 3.95833321e+01, + 1.13541670e+01, 1.02500000e+01, 4.49375000e+01, 2.75416660e+01, + 2.52083325e+00, 7.14583349e+00, 7.58750000e+01, 6.45416641e+01, + 1.39583330e+01, 1.02500000e+01, 5.54166679e+01, 3.01041660e+01, + 3.66666675e+00, 9.64583302e+00, 8.89166641e+01, 6.77083359e+01, + 1.34583330e+01, 1.52916670e+01, 38., 1.64791660e+01, 5., + 1.32708330e+01, 7.36041641e+01, 5.06458321e+01, 1.63155167e+02, + 5.25862074e+00, 3.82758617e+00, 6.89655161e+00, 5.03448296e+00, + 3.96551728e+00, 29., 1.83965515e+02, 1.19758621e+02, + 1.45689659e+01, 1.11724138e+01, 1.73275871e+01, 2.41379318e+01, + 1.87931042e+01, 3.83620682e+01, 1.68965515e+02, 3.27758636e+01, + 1.89482765e+01, 1.64827595e+01, 1.57586203e+01, 2.04482765e+01, + 1.93275871e+01, 2.44827595e+01, 5.22586212e+01, 2.81034493e+00, + 2.36206889e+00, 2.06896544e+00, 1.72413790e+00, 2.65517235e+00, + 2.46551728e+00, 2.29310346e+00, 4.10344839e+00, 9.02586212e+01, + 1.00517244e+01, 1.11034479e+01, 1.61724129e+01, 1.56551723e+01, + 1.58620691e+01, 6.63793106e+01, 1.83517242e+02, 5.39310341e+01, + 2.30689659e+01, 2.55689659e+01, 3.62068977e+01, 4.11896553e+01, + 3.31896553e+01, 4.71206894e+01, 9.80689621e+01, 3.03103447e+01, + 2.10172405e+01, 2.65862064e+01, 2.64137936e+01, 2.77068958e+01, + 2.77931042e+01, 3.22241364e+01, 4.19137917e+01, 3.29310346e+00, + 2., 2.70689654e+00, 3.37931037e+00, 3.24137926e+00, + 3.13793111e+00, 3.93103456e+00, 5.34482765e+00, 3.06034489e+01, + 1.45000000e+01, 1.81724129e+01, 2.70689659e+01, 2.66379318e+01, + 2.62241383e+01, 4.29655190e+01, 8.48103485e+01, 3.77586212e+01, + 2.35689659e+01, 2.87758617e+01, 3.39827576e+01, 3.97413788e+01, + 3.23448257e+01, 4.23620682e+01, 5.23620682e+01, 2.45344830e+01, + 1.59137936e+01, 2.30344830e+01, 2.51724129e+01, 2.45344830e+01, + 2.31034489e+01, 3.48793106e+01, 3.80862083e+01, 2.27586198e+00, + 1.67241383e+00, 2.55172420e+00, 2.89655161e+00, 2.86206889e+00, + 2.79310346e+00, 4.74137926e+00, 3.81034493e+00, 1.06896553e+01, + 6.62068987e+00, 9.81034470e+00, 1.48275862e+01, 1.46379309e+01, + 1.25172415e+01, 1.70689659e+01, 1.85689659e+01, 1.64655170e+01, + 1.19827585e+01, 1.34655170e+01, 1.64827595e+01, 1.87413788e+01, + 1.70172405e+01, 2.23965511e+01, 2.48965511e+01, 1.09482756e+01, + 7.81034470e+00, 1.23793106e+01, 1.49827585e+01, 1.18448277e+01, + 1.10689659e+01, 1.61551723e+01, 1.64310341e+01, 9.48275864e-01, + 6.72413766e-01, 1.31034482e+00, 1.32758617e+00, 1.27586210e+00, + 9.82758641e-01, 1.32758617e+00, 1.70689654e+00, 6.21666670e+00, + 2.29333324e+01, 7.93833313e+01, 1.39166670e+01, 4.01666689e+00, + 7.71666670e+00, 2.88833332e+01, 7.34999990e+00, 1.13333330e+01, + 5.52666664e+01, 7.37333298e+01, 1.28500004e+01, 4.41666651e+00, + 1.31999998e+01, 2.28333340e+01, 7.98333311e+00, 2.30166664e+01, + 7.34166641e+01, 5.15833321e+01, 1.16333332e+01, 3.41666675e+00, + 7.98333311e+00, 8.89999962e+00, 8.46666622e+00, 2.50333328e+01, + 7.24000015e+01, 3.50499992e+01, 5.43333340e+00, 1.83333337e+00, + 2.54999995e+00, 2.58333325e+00, 4.58333349e+00, 7.83333361e-01, + 1.41666670e+01, 8.62166672e+01, 1.28500004e+01, 3.66666675e+00, + 4.97666664e+01, 7.31666641e+01, 4.30000019e+00, 2.43333340e+00, + 7.71333313e+01, 1.05866669e+02, 7.69999981e+00, 6.25000000e+00, + 4.58833351e+01, 3.49666672e+01, 3.33333325e+00, 1.22166662e+01, + 1.18316666e+02, 8.71166687e+01, 7.71666670e+00, 5.43333340e+00, + 2.65000000e+01, 1.79166660e+01, 5.96666670e+00, 3.24333344e+01, + 9.43666687e+01, 3.43166656e+01, 6.86666679e+00, 4.01666689e+00, + 1.33166666e+01, 8.48333359e+00, 9.50000000e+00, 1.14999998e+00, + 2.59999990e+00, 1.01333332e+01, 3.68333340e+00, 5.09999990e+00, + 1.00816666e+02, 9.34333344e+01, 2.50000000e+00, 2.66666681e-01, + 1.30333338e+01, 1.93833332e+01, 4.48333311e+00, 2.36833324e+01, + 1.22800003e+02, 4.65999985e+01, 2.50000000e-01, 5.73333311e+00, + 8.51166687e+01, 3.70666656e+01, 7.55000019e+00, 2.25000000e+01, + 6.63333359e+01, 7.65000010e+00, 9.83333349e-01, 3.16499996e+01, + 1.18066666e+02, 2.52000008e+01, 5.48333311e+00, 6.91666651e+00, + 1.43666668e+01, 5.06666660e+00, 4.69999981e+00, 8.38333321e+00, + 1.35500002e+01, 1.35000000e+01, 9.56666660e+00, 1.41833334e+01, + 4.70333328e+01, 2.86166668e+01, 6.13333321e+00, 2.15000010e+00, + 6.26666689e+00, 7.46666670e+00, 6.61666679e+00, 5.42000008e+01, + 1.10016670e+02, 1.57500000e+01, 6.99999988e-01, 3.09999990e+00, + 1.07166662e+01, 3.48333335e+00, 4.94999981e+00, 81., + 1.00616669e+02, 2.29999995e+00, 3.83333325e-01, 3.34833336e+01, + 7.03499985e+01, 6.30000019e+00, 5.71666670e+00, 21., + 1.74833336e+01, 8.83333325e-01, 8.00000012e-01, 3.18333340e+00, + 1.97000008e+01, 1.14400002e+02, 3.12000008e+01, 2.03333330e+00, + 7.66666651e+00, 3.51166649e+01, 11., 7.09999990e+00, + 7.06666660e+00, 1.04416664e+02, 7.06166687e+01, 2.63333344e+00, + 3.50000000e+00, 3.26833344e+01, 2.78166676e+01, 1.17666664e+01, + 3.31666660e+00, 3.97166672e+01, 5.07166672e+01, 2.84999990e+00, + 2.93333340e+00, 4.00666656e+01, 8.07166672e+01, 1.72000008e+01, + 2.31666660e+00, 4.81666660e+00, 1.01333332e+01, 2.16666675e+00, + 2.34999990e+00, 3.31166649e+01, 1.24366669e+02, 2.61666656e+00, + 5.43333340e+00, 2.01833324e+01, 4.75000000e+00, 1.58333337e+00, + 3.65833321e+01, 1.38333328e+02, 3.09500008e+01, 5.66666651e+00, + 2.90000010e+00, 1.25333338e+01, 6.80000019e+00, 1.45000005e+00, + 1.17333336e+01, 1.42833328e+02, 1.04650002e+02, 8.19999981e+00, + 1.63333333e+00, 3.83333325e+00, 4.33333349e+00, 1.71666670e+00, + 6.68333340e+00, 1.36516663e+02, 1.38250000e+02, 1.00500002e+01, + 3.29999995e+00, 3., 4.80000019e+00, 3.21666670e+00, + 6.90000010e+00, 8.06500015e+01, 1.11083336e+02, 2.91666675e+00, + 2.16666675e+00, 3.40000010e+00, 2.83333325e+00, 2.70000005e+00, + 2.18166676e+01, 1.22400002e+02, 3.51833344e+01, 4.56666660e+00, + 2.33333325e+00, 4.16666651e+00, 5.56666660e+00, 3.18333340e+00, + 1.59333334e+01, 1.29483337e+02, 6.65500031e+01, 6., + 3.13333344e+00, 5.28333330e+00, 9.05000019e+00, 5.58333349e+00, + 1.31000004e+01, 9.42166672e+01, 5.88333321e+01, 7.66666651e+00, + 4.36666679e+00, 5.76666689e+00, 7.84999990e+00, 5.93333340e+00, + 9.03333378e+00, 4.27833328e+01, 3.30166664e+01, 1.75000000e+00, + 1.11666667e+00, 2.08333325e+00, 3.21666670e+00, 1.76666665e+00, + 2.98333335e+00, 7.91666651e+00, 4.25000000e+00, 2.36666656e+00, + 1.33333337e+00, 2.21666670e+00, 3.70000005e+00, 2.36666656e+00, + 3.70000005e+00, 9.28333378e+00, 5.58333349e+00, 3.20000005e+00, + 1.60000002e+00, 1.71666670e+00, 3.09999990e+00, 3., + 3.31666660e+00, 6.76666689e+00, 5.63333321e+00, 2.45000005e+00, + 1.60000002e+00, 1.53333330e+00, 2.20000005e+00, 2.58333325e+00, + 2.78333330e+00, 4.33333349e+00, 4.46666670e+00, 2.66000009e+00, + 2.48000002e+00, 4.37000008e+01, 1.01940002e+02, 1.48000002e+01, + 2.03999996e+00, 5.17999983e+00, 1.26999998e+01, 2.85999990e+00, + 3.66000009e+00, 9.29000015e+01, 1.16480003e+02, 5.92000008e+00, + 1.82000005e+00, 1.46400003e+01, 2.52000008e+01, 2.51999998e+00, + 6.19999981e+00, 1.06660004e+02, 7.34199982e+01, 1.91999996e+00, + 2.14000010e+00, 3.60999985e+01, 3.39599991e+01, 1.91999996e+00, + 1.21000004e+01, 9.49800034e+01, 1.97000008e+01, 1.24000001e+00, + 7.48000002e+00, 5.45600014e+01, 1.75400009e+01, 8.88000011e+00, + 2.09999990e+00, 3.40600014e+01, 1.23860001e+02, 2.31800003e+01, + 1.08000004e+00, 3.98000002e+00, 3.86599998e+01, 1.83199997e+01, + 2.61999989e+00, 4.46800003e+01, 8.97600021e+01, 4.38000011e+00, + 6.80000007e-01, 2.72399998e+01, 1.07580002e+02, 1.18400002e+01, + 3.07999992e+00, 2.67000008e+01, 2.26800003e+01, 1.27999997e+00, + 1.72000003e+00, 8.96999969e+01, 1.15540001e+02, 4.84000015e+00, + 5.32000017e+00, 1.56000004e+01, 4.76000023e+00, 6.99999988e-01, + 1.55400000e+01, 1.07459999e+02, 5.02000008e+01, 4.60200005e+01, + 2.18000007e+00, 4.55999994e+00, 8.40999985e+01, 3.29799995e+01, + 5.60000002e-01, 2.16000009e+00, 7.64599991e+01, 6.79800034e+01, + 4.34000015e+00, 5.73999977e+00, 22., 5.61999989e+00, + 5.79999983e-01, 1.23000002e+01, 1.22320000e+02, 3.43600006e+01, + 7.94000006e+00, 7.80000019e+00, 8.19999981e+00, 2.51999998e+00, + 1.86000001e+00, 2.86200008e+01, 8.63399963e+01, 1.34200001e+01, + 1.00200005e+01, 9.19999981e+00, 4.07999992e+00, 2.29999995e+00, + 8.81999969e+00, 3.51199989e+01, 3.16599998e+01, 8.63600006e+01, + 5.55999994e+00, 1.25999999e+00, 2.07800007e+01, 2.39400005e+01, + 8.19999993e-01, 6.00000024e-01, 4.41199989e+01, 8.19000015e+01, + 1.46000004e+01, 4.17999983e+00, 1.00400000e+01, 7.36000013e+00, + 8.99999976e-01, 1.91999996e+00, 4.84599991e+01, 3.62000008e+01, + 1.91399994e+01, 9.06000042e+00, 5.98000002e+00, 3.53999996e+00, + 2.59999990e+00, 5.05999994e+00, 2.58600006e+01, 1.88799992e+01, + 1.65599995e+01, 9.61999989e+00, 4.67999983e+00, 3.81999993e+00, + 5.19999981e+00, 1.03199997e+01, 1.64200001e+01, 1.07654324e+01, + 2.88148155e+01, 2.16049385e+01, 6.48148155e+00, 3.69135809e+00, + 6.22222233e+00, 9.64197540e+00, 6.69135809e+00, 1.36296301e+01, + 3.00987663e+01, 1.90987663e+01, 6.20987654e+00, 4.17283964e+00, + 3.35802460e+00, 1.16666670e+01, 1.12098770e+01, 9.56790161e+00, + 1.39753084e+01, 1.08641977e+01, 6.70370388e+00, 6.06172848e+00, + 4.65432119e+00, 9.03703690e+00, 9.50617313e+00, 1.74074078e+00, + 1.98765433e+00, 2.92592597e+00, 2.62962961e+00, 3.37037039e+00, + 2.29629636e+00, 3.44444442e+00, 2.71604943e+00, 1.69012337e+01, + 5.98148155e+01, 2.66543217e+01, 6.88888884e+00, 9.71604919e+00, + 1.19617287e+02, 3.75925941e+01, 5.65432119e+00, 2.68395061e+01, + 6.16543198e+01, 3.20246925e+01, 7.91358042e+00, 5.22222233e+00, + 1.78395061e+01, 6.77777767e+00, 8.51851845e+00, 2.41728401e+01, + 4.40987663e+01, 2.13703709e+01, 8.03703690e+00, 6.81481504e+00, + 4.55555534e+00, 7.25925922e+00, 9.56790161e+00, 6.17283964e+00, + 9.11111069e+00, 7.03703690e+00, 3.90123463e+00, 4.27160501e+00, + 2.12345672e+00, 3.98765421e+00, 4.27160501e+00, 3.99876556e+01, + 1.41481476e+02, 3.04938278e+01, 3.79012346e+00, 3.49259262e+01, + 1.53975311e+02, 4.40864182e+01, 5.67901230e+00, 3.34320984e+01, + 7.01481476e+01, 2.15802460e+01, 5.76543188e+00, 5.23209877e+01, + 1.46296295e+02, 1.07283955e+01, 6.69135809e+00, 4.00740738e+01, + 5.76419754e+01, 2.03703709e+01, 6.17283964e+00, 6.51851845e+00, + 6.06172848e+00, 4.77777767e+00, 8.22222233e+00, 1.16296301e+01, + 1.64197540e+01, 7.41975307e+00, 2.62962961e+00, 3.28395057e+00, + 1.59259260e+00, 2.43209887e+00, 4.12345695e+00, 8.06296310e+01, + 1.39753082e+02, 1.23580246e+01, 4.27160501e+00, 3.51358032e+01, + 8.14320984e+01, 1.13703699e+01, 6.91358042e+00, 8.50740738e+01, + 1.15419754e+02, 8.79012299e+00, 6.51851845e+00, 1.38493820e+02, + 1.52938278e+02, 6.66666651e+00, 5.01234579e+00, 3.62469139e+01, + 3.93827171e+01, 1.14320984e+01, 4.80246925e+00, 3.48395081e+01, + 3.53950615e+01, 4.49382734e+00, 7.88888884e+00, 1.31604939e+01, + 1.50987654e+01, 4.86419773e+00, 1.41975307e+00, 1.56790125e+00, + 1.38271606e+00, 1.82716048e+00, 3.30864191e+00, 5.61165047e+00, + 1.68252430e+01, 1.83786411e+01, 6.70873785e+00, 3.28155351e+00, + 3.38834953e+00, 2.70873785e+00, 2.39805818e+00, 6.97087383e+00, + 1.48834953e+01, 1.41262140e+01, 6.34951448e+00, 5.38834953e+00, + 5.49514580e+00, 3.95145631e+00, 3.27184463e+00, 6.81553411e+00, + 1.29708738e+01, 1.13203888e+01, 5.44660187e+00, 5.16504860e+00, + 4.73786402e+00, 4.06796122e+00, 4.04854345e+00, 4.43689299e+00, + 6.26213598e+00, 4.99029112e+00, 2.97087383e+00, 2.75728154e+00, + 2.77669907e+00, 2.55339813e+00, 2.44660187e+00, 1.26796112e+01, + 1.10184464e+02, 1.14310677e+02, 1.18349514e+01, 4.56310701e+00, + 5.03883505e+00, 5.44660187e+00, 4.07767010e+00, 2.00873795e+01, + 8.63106766e+01, 6.33300972e+01, 1.49126215e+01, 1.04368935e+01, + 1.12524271e+01, 8.98058224e+00, 8.06796074e+00, 1.92038841e+01, + 4.26990280e+01, 3.31456299e+01, 1.50388346e+01, 1.28155336e+01, + 1.39320393e+01, 1.30388346e+01, 1.20388346e+01, 1.14271841e+01, + 2.16601944e+01, 1.62038841e+01, 7.58252430e+00, 7.68932056e+00, + 8.39805794e+00, 7.54368925e+00, 6.94174767e+00, 8.94174767e+00, + 1.45873779e+02, 1.41019424e+02, 9.26213551e+00, 4.47572803e+00, + 1.72038841e+01, 1.02524271e+01, 3.92233014e+00, 3.25533981e+01, + 1.53533981e+02, 1.14349518e+02, 6.71844673e+00, 3.65048552e+00, + 5.60194159e+00, 4.26213598e+00, 4.19417477e+00, 3.79126205e+01, + 1.21135925e+02, 4.84660187e+01, 1.03980579e+01, 7.82524252e+00, + 9.76699066e+00, 9.52427197e+00, 9.62135887e+00, 1.63106804e+01, + 3.17669907e+01, 1.78543682e+01, 7.33009720e+00, 6.76699018e+00, + 8.61165047e+00, 7.96116495e+00, 6.94174767e+00, 1.55728159e+01, + 7.05339813e+01, 2.90776691e+01, 7.55339813e+00, 1.84854374e+01, + 6.83009720e+01, 4.12524261e+01, 8.50485420e+00, 7.36116486e+01, + 1.46116501e+02, 3.29514580e+01, 4.81553411e+00, 7.67961168e+00, + 2.98932037e+01, 1.23786411e+01, 6.21359205e+00, 1.00932037e+02, + 1.50883499e+02, 2.57281551e+01, 3.15533972e+00, 4.09708738e+00, + 4.97087383e+00, 3.35922337e+00, 6.93203878e+00, 2.44951458e+01, + 4.45825233e+01, 1.31456308e+01, 3.12621355e+00, 3.69902921e+00, + 4.43689299e+00, 4.29126215e+00, 5.59223318e+00, 5.91166649e+01, + 4.14333344e+01, 3.21833344e+01, 3.77999992e+01, 2.27000008e+01, + 2.24666672e+01, 5.45333328e+01, 7.78333359e+01, 5.84833336e+01, + 5.67333336e+01, 4.35333328e+01, 3.68166656e+01, 2.93500004e+01, + 3.52166672e+01, 5.62666664e+01, 6.34666672e+01, 5.24666672e+01, + 5.84333344e+01, 5.20833321e+01, 4.47500000e+01, 38., + 3.77666664e+01, 4.52500000e+01, 4.55499992e+01, 4.31166649e+01, + 4.19666672e+01, 3.60999985e+01, 3.19333324e+01, 3.73333321e+01, + 3.05833340e+01, 3.20999985e+01, 3.69166679e+01, 6.47666702e+01, + 5.94500008e+01, 3.85999985e+01, 2.82999992e+01, 2.87333336e+01, + 3.64000015e+01, 4.84000015e+01, 5.52333336e+01, 6.74000015e+01, + 6.89333344e+01, 5.94166679e+01, 4.83166656e+01, 4.69666672e+01, + 4.49500008e+01, 5.35999985e+01, 5.90499992e+01, 6.64666672e+01, + 6.90333328e+01, 5.54333344e+01, 4.97500000e+01, 5.37333336e+01, + 5.16833344e+01, 5.25666656e+01, 5.49500008e+01, 5.61500015e+01, + 5.85499992e+01, 4.35166664e+01, 3.89833336e+01, 4.57333336e+01, + 4.07999992e+01, 3.88499985e+01, 4.23166656e+01, 4.45000000e+01, + 4.78833351e+01, 3.45000000e+01, 2.38666668e+01, 2.69666672e+01, + 3.49833336e+01, 3.76833344e+01, 3.54000015e+01, 5.73833351e+01, + 5.77000008e+01, 4.72833328e+01, 3.63333321e+01, 4.31666679e+01, + 4.55333328e+01, 4.75833321e+01, 4.77999992e+01, 6.00666656e+01, + 6.48833313e+01, 4.22500000e+01, 3.80666656e+01, 4.95666656e+01, + 4.88499985e+01, 4.70166664e+01, 4.23666649e+01, 4.77999992e+01, + 4.89500008e+01, 3.58499985e+01, 3.19500008e+01, 4.01666679e+01, + 3.78833351e+01, 3.52666664e+01, 3.77333336e+01, 7.84999990e+00, + 7.15000010e+00, 5.51666689e+00, 3.51666665e+00, 4.78333330e+00, + 5.30000019e+00, 5.65000010e+00, 6.19999981e+00, 1.02833338e+01, + 9.48333359e+00, 7.16666651e+00, 6.63333321e+00, 8.73333359e+00, + 8.31666660e+00, 7.38333321e+00, 7.19999981e+00, 1.27333336e+01, + 1.01166668e+01, 5.83333349e+00, 6.93333340e+00, 1.02500000e+01, + 8.58333302e+00, 9.44999981e+00, 9.30000019e+00, 9.16666698e+00, + 5.84999990e+00, 4.25000000e+00, 4.91666651e+00, 6.94999981e+00, + 6.44999981e+00, 8.18333340e+00, 7.98333311e+00, 1.41250000e+01, + 3.73214293e+00, 8.71071396e+01, 1.56107147e+02, 1.30892859e+01, + 3.39285707e+00, 8.39285736e+01, 1.57214279e+02, 2.64821434e+01, + 6.98214293e+00, 4.11607132e+01, 1.59053574e+02, 4.18392868e+01, + 5.80357122e+00, 2.39107151e+01, 9.63928604e+01, 4.99107132e+01, + 1.27857141e+01, 7.94642878e+00, 4.96607132e+01, 1.31428576e+01, + 5.57142878e+00, 1.42321424e+01, 5.21071434e+01, 3.37678566e+01, + 8.16071415e+00, 2.75000000e+00, 2.05357146e+00, 1.83928573e+00, + 2.42857146e+00, 6.53571415e+00, 3.51071434e+01, 1.90535717e+01, + 7.25000000e+00, 1.15803574e+02, 1.51017853e+02, 7.75000000e+00, + 6.28571415e+00, 3.09464283e+01, 4.95714302e+01, 3.95535698e+01, + 9.85714245e+00, 1.97857151e+01, 6.40357132e+01, 8.91071415e+00, + 1.02142859e+01, 2.98928566e+01, 6.36785698e+01, 5.21964302e+01, + 1.03571424e+01, 4.55357122e+00, 3.23214293e+00, 3.83928561e+00, + 6.33928585e+00, 2.74107151e+01, 9.80357132e+01, 2.83392849e+01, + 6.28571415e+00, 3.64285707e+00, 2.53571439e+00, 2.21428561e+00, + 3.01785707e+00, 1.38750000e+01, 5.18392868e+01, 1.83750000e+01, + 4.80357122e+00, 6.82142878e+00, 8.42857170e+00, 4.85714293e+00, + 9.78571415e+00, 4.36964302e+01, 5.41785698e+01, 2.85535717e+01, + 5.96428585e+00, 3.55357146e+00, 2.96428561e+00, 3.89285707e+00, + 7.53571415e+00, 5.14642868e+01, 9.55178604e+01, 3.04642849e+01, + 7.71428585e+00, 4.60714293e+00, 3.42857146e+00, 2.94642854e+00, + 6.10714293e+00, 3.76071434e+01, 8.88750000e+01, 1.37678576e+01, + 4.48214293e+00, 5.28571415e+00, 4.94642878e+00, 3.73214293e+00, + 4.35714293e+00, 1.32142859e+01, 3.03571434e+01, 4.10714293e+00, + 7.14285731e-01, 9.82142866e-01, 7.67857134e-01, 8.39285731e-01, + 3.14285707e+00, 3.14642849e+01, 3.20535698e+01, 7.12500000e+00, + 2.19642854e+00, 1.44642854e+00, 1.33928573e+00, 1.51785719e+00, + 3.32142854e+00, 2.74464283e+01, 3.79285698e+01, 7.33928585e+00, + 3.64285707e+00, 3.82142854e+00, 3.08928561e+00, 2.78571439e+00, + 3.98214293e+00, 1.50714283e+01, 2.16071434e+01, 2.83928561e+00, + 1.85714281e+00, 2.87500000e+00, 2.78571439e+00, 2.35714293e+00, + 2.94642854e+00, 4.62500000e+00, 5.10714293e+00, 5.98235283e+01, + 2.16862736e+01, 9.80392158e-01, 7.15686274e+00, 1.01647057e+02, + 2.88431377e+01, 1.37254906e+00, 6.98039198e+00, 9.64705887e+01, + 4.62745094e+01, 3.64705873e+00, 3.37254906e+00, 1.76470585e+01, + 7.78431368e+00, 1.98039210e+00, 1.58823528e+01, 2.23921566e+01, + 2.48627453e+01, 1.34509802e+01, 1.16862745e+01, 9.84313679e+00, + 6.62745094e+00, 4.68627453e+00, 8.90196037e+00, 8.52941132e+00, + 1.43529415e+01, 1.27647057e+01, 1.26666670e+01, 8.37254906e+00, + 5.21568632e+00, 3.23529410e+00, 4.09803915e+00, 4.53921585e+01, + 3.72941170e+01, 1.74509799e+00, 3.01960778e+00, 1.10921570e+02, + 9.08235321e+01, 2.80392146e+00, 3.27450991e+00, 9.22745132e+01, + 1.11117645e+02, 9.49019623e+00, 2.70588231e+00, 3.44901962e+01, + 3.45490189e+01, 2.39215684e+00, 3.68627453e+00, 2.26470585e+01, + 6.88039246e+01, 3.16666660e+01, 8.33333302e+00, 1.10588236e+01, + 1.37843142e+01, 4.09803915e+00, 2.15686274e+00, 6.21568632e+00, + 1.94117641e+01, 2.49411774e+01, 1.76666660e+01, 1.03529415e+01, + 5.98039198e+00, 5.68627453e+00, 4.52941179e+00, 1.44313726e+01, + 2.76078434e+01, 2.50980401e+00, 2.80392146e+00, 8.54313736e+01, + 1.12039215e+02, 8.39215660e+00, 3.21568632e+00, 3.92156868e+01, + 1.01352943e+02, 1.48431368e+01, 1.90196073e+00, 4.90784302e+01, + 1.09882355e+02, 1.05294113e+01, 3.68627453e+00, 1.30784311e+01, + 1.14039215e+02, 6.67450943e+01, 5.17647076e+00, 1.04117651e+01, + 3.95098038e+01, 7.72549009e+00, 1.39215684e+00, 2.96078420e+00, + 4.34509811e+01, 8.08431396e+01, 1.55686274e+01, 4.70588255e+00, + 1.50980396e+01, 1.03137255e+01, 2.68627453e+00, 2.76470590e+00, + 6.68627453e+00, 2.03921580e+00, 2.25490189e+00, 3.85098038e+01, + 1.00725487e+02, 1.65490189e+01, 2.49019599e+00, 6.31372547e+00, + 3.85686264e+01, 9.09803963e+00, 2.17647052e+00, 2.68039207e+01, + 1.13235291e+02, 2.99803925e+01, 3.98039222e+00, 4.82352924e+00, + 6.33725471e+01, 4.11764717e+01, 3.13725495e+00, 8.47058868e+00, + 9.45294113e+01, 4.06470604e+01, 3.54901958e+00, 1.80392158e+00, + 3.97058830e+01, 7.22745132e+01, 6.13725471e+00, 2.11764717e+00, + 3.63137245e+01, 3.12549019e+01, 1.62745094e+00, 3.31818175e+00, + 1.63636363e+00, 1.65909088e+00, 2.13636374e+00, 2.45454550e+00, + 1.04545450e+00, 1.18181813e+00, 2.20454550e+00, 1.48863640e+01, + 4.29545450e+00, 3.56818175e+00, 1.60227280e+01, 2.13863640e+01, + 3.45454550e+00, 4.25000000e+00, 1.23863640e+01, 2.24090900e+01, + 6.95454550e+00, 5.09090900e+00, 1.56363640e+01, 1.61363640e+01, + 5.31818199e+00, 7.70454550e+00, 2.17727280e+01, 7.61363649e+00, + 9.38636398e+00, 6.79545450e+00, 4.77272749e+00, 8.72727299e+00, + 8.36363602e+00, 6.20454550e+00, 4.84090900e+00, 1.42272730e+01, + 6.15909100e+00, 4.40909100e+00, 6.61363649e+00, 1.79545460e+01, + 8.72727299e+00, 8.18181801e+00, 1.18409090e+01, 8.47045441e+01, + 2.26136360e+01, 9.02272701e+00, 5.33181801e+01, 1.02068184e+02, + 2.22272720e+01, 1.02727270e+01, 4.11818199e+01, 9.96590881e+01, + 31., 1.47045450e+01, 3.58636360e+01, 7.00909119e+01, + 2.85681820e+01, 1.97727280e+01, 6.55681839e+01, 3.54772720e+01, + 2.83409100e+01, 1.59090910e+01, 1.37272730e+01, 34., + 4.02045441e+01, 2.13409100e+01, 1.86363640e+01, 1.22954550e+01, + 8.77272701e+00, 6.04545450e+00, 8.38636398e+00, 2.91136360e+01, + 1.22727270e+01, 8.31818199e+00, 1.07727270e+01, 1.02090912e+02, + 4.25454559e+01, 8.56818199e+00, 4.55909081e+01, 1.19181816e+02, + 5.13863640e+01, 8.54545498e+00, 2.82954540e+01, 1.19340912e+02, + 6.85227280e+01, 1.94318180e+01, 2.39772720e+01, 7.17500000e+01, + 4.83409081e+01, 2.23409100e+01, 5.65227280e+01, 4.49090919e+01, + 2.47045460e+01, 1.99772720e+01, 1.83863640e+01, 3.78636360e+01, + 5.44318199e+01, 3.65227280e+01, 3.76818199e+01, 6.95454550e+00, + 8.52272701e+00, 7.11363649e+00, 6.61363649e+00, 2.12500000e+01, + 1.12727270e+01, 4.31818199e+00, 5.59090900e+00, 6.26590919e+01, + 4.65227280e+01, 1.33181820e+01, 2.23863640e+01, 1.05113640e+02, + 6.77045441e+01, 6.45454550e+00, 1.51363640e+01, 1.05136360e+02, + 1.07045456e+02, 3.28409081e+01, 1.74545460e+01, 6.25000000e+01, + 6.29772720e+01, 1.97727280e+01, 2.77272720e+01, 3.89318199e+01, + 4.75681801e+01, 3.77500000e+01, 3.67500000e+01, 2.82727280e+01, + 2.96363640e+01, 2.90681820e+01, 2.96818180e+01, 2., + 3.01923084e+00, 1.03076925e+01, 2.22500000e+01, 1.40384617e+01, + 6.61538458e+00, 4.53846169e+00, 2.90384626e+00, 4.46153831e+00, + 7.48076916e+00, 2.76346149e+01, 4.19807701e+01, 1.67692299e+01, + 6.65384626e+00, 4.55769253e+00, 4.25000000e+00, 6.38461542e+00, + 8.94230747e+00, 3.76153831e+01, 8.09230804e+01, 2.14230766e+01, + 4.90384626e+00, 4.17307711e+00, 5.48076916e+00, 3.48076916e+00, + 5.48076916e+00, 5.25961533e+01, 1.17096153e+02, 1.48653851e+01, + 1.57692313e+00, 2.63461542e+00, 4.57692289e+00, 2.38461542e+00, + 3.57692313e+00, 1.60769234e+01, 4.54807701e+01, 3.69423065e+01, + 1.23653851e+01, 4.73076916e+00, 2.17307687e+00, 1.17500000e+01, + 1.20576925e+01, 3.52307701e+01, 8.23269196e+01, 5.66730766e+01, + 1.59615383e+01, 7.94230747e+00, 6.61538458e+00, 1.89615383e+01, + 1.10769234e+01, 2.84807701e+01, 1.23346153e+02, 1.01365387e+02, + 8.34615421e+00, 6.94230747e+00, 1.40384617e+01, 8.55769253e+00, + 2.51923084e+00, 1.39038458e+01, 9.77115402e+01, 6.39038467e+01, + 7.28846169e+00, 1.14230766e+01, 1.71730766e+01, 3.59615374e+00, + 6.19230747e+00, 1.52500000e+01, 5.20384598e+01, 5.94615402e+01, + 2.03269234e+01, 5.82692289e+00, 1.78846157e+00, 2.34615383e+01, + 2.17307701e+01, 2.78269234e+01, 6.42115402e+01, 7.90961533e+01, + 2.67307701e+01, 1.26730766e+01, 8.94230747e+00, 4.78846169e+01, + 1.65576916e+01, 1.12500000e+01, 6.47884598e+01, 1.25865387e+02, + 3.57884598e+01, 1.21730766e+01, 2.57115383e+01, 4.55961533e+01, + 1.58846149e+01, 6.17307711e+00, 3.62884598e+01, 8.99038467e+01, + 3.93461533e+01, 2.30576916e+01, 4.29423065e+01, 1.65384614e+00, + 2.90384626e+00, 6.09615374e+00, 2.28461533e+01, 4.82884598e+01, + 3.87692299e+01, 9.21153831e+00, 2., 1.89038467e+01, + 1.79807701e+01, 1.75769234e+01, 2.39423084e+01, 6.39230766e+01, + 4.98461533e+01, 2.35192299e+01, 9.67307663e+00, 4.50384598e+01, + 3.32692299e+01, 1.27500000e+01, 1.49230766e+01, 1.10307693e+02, + 7.87884598e+01, 15., 11., 5.36538467e+01, 4.89423065e+01, + 1.65192299e+01, 1.73461533e+01, 8.39423065e+01, 6.85961533e+01, + 1.27500000e+01, 1.74807701e+01, 4.23076916e+00, 5.14102554e+00, + 9.87179470e+00, 1.21538458e+01, 6.79487181e+00, 4.98717928e+00, + 3.56410265e+00, 3.80769229e+00, 4.93589735e+00, 7.24358988e+00, + 1.86923084e+01, 2.09871788e+01, 9.11538506e+00, 5.15384626e+00, + 3.66666675e+00, 3.88461542e+00, 4.26923084e+00, 8.96153831e+00, + 3.05384617e+01, 2.89871788e+01, 8.17948723e+00, 3.32051277e+00, + 2.57692313e+00, 3.23076916e+00, 2.84615374e+00, 9.34615421e+00, + 4.79743576e+01, 2.96025639e+01, 4.67948723e+00, 1.89743590e+00, + 1.83333337e+00, 1.73076928e+00, 7.38461542e+00, 8.79487133e+00, + 2.01025639e+01, 3.24615402e+01, 1.72692299e+01, 9.67948723e+00, + 7.06410265e+00, 5.91025639e+00, 8.23076916e+00, 1.19871798e+01, + 4.17051277e+01, 1.05769234e+02, 2.70512829e+01, 8.62820530e+00, + 6.42307711e+00, 7.70512819e+00, 3.96153855e+00, 8.61538506e+00, + 1.27923080e+02, 1.46089737e+02, 1.44743586e+01, 3.17948723e+00, + 4.07692289e+00, 5.74358988e+00, 2.15384626e+00, 1.59871798e+01, + 1.44705124e+02, 1.01846153e+02, 3.92307687e+00, 2.17948723e+00, + 5.01282072e+00, 3.43589735e+00, 7.61538458e+00, 7.74358988e+00, + 1.62051277e+01, 5.85641022e+01, 4.06025658e+01, 1.35000000e+01, + 7.02564096e+00, 6.83333349e+00, 7.01282072e+00, 6.33333349e+00, + 2.69102573e+01, 1.48820511e+02, 9.10512848e+01, 6.55128193e+00, + 4.97435904e+00, 8.21794891e+00, 4.83333349e+00, 3.75641036e+00, + 6.90256424e+01, 1.47358978e+02, 2.92692299e+01, 3.47435904e+00, + 8.29487133e+00, 1.32051287e+01, 6.41025639e+00, 9.29487133e+00, + 6.32948723e+01, 4.44615402e+01, 6.80769253e+00, 6.88461542e+00, + 1.85769234e+01, 2.13461533e+01, 5.60256433e+00, 4.34615374e+00, + 7.42307711e+00, 6.81410294e+01, 8.48461533e+01, 9.80769253e+00, + 4.16666651e+00, 3.83333325e+00, 1.05128202e+01, 3.83333325e+00, + 6.29487181e+00, 1.31230774e+02, 1.30384613e+02, 7.74358988e+00, + 4.38461542e+00, 1.09102564e+01, 2.38076916e+01, 7.55128193e+00, + 1.08717947e+01, 4.88333321e+01, 3.50897446e+01, 1.11025639e+01, + 1.72564106e+01, 4.10769234e+01, 1.86538467e+01, 1.03589745e+01, + 1.56538458e+01, 2.26153851e+01, 1.46153851e+01, 1.33205128e+01, + 3.25769234e+01, 5.41794853e+01, 3.17500000e+01, 6.82727280e+01, + 1.04318180e+01, 2.93181825e+00, 3.13863640e+01, 1.55909090e+01, + 1.38636363e+00, 1.59090912e+00, 2.01590900e+01, 8.30454559e+01, + 3.04772720e+01, 5.97727251e+00, 3.31818175e+00, 8.54545498e+00, + 2.15909100e+00, 1.70454550e+00, 9.36363602e+00, 3.93636360e+01, + 3.02045460e+01, 1.37727270e+01, 3.15909100e+00, 4.43181801e+00, + 4.06818199e+00, 3.29545450e+00, 5.95454550e+00, 1.48409090e+01, + 1.92727280e+01, 1.15454550e+01, 5.45454550e+00, 3.43181825e+00, + 4.63636351e+00, 6.11363649e+00, 1.26590910e+01, 5.98863640e+01, + 1.31363640e+01, 2.04545450e+00, 5.83863640e+01, 9.10227280e+01, + 1.29545450e+00, 8.40909064e-01, 1.05000000e+01, 1.13977272e+02, + 5.87954559e+01, 2.59090900e+00, 7.47727251e+00, 2.20454540e+01, + 3.65909100e+00, 5.45454562e-01, 6.79545450e+00, 8.85909119e+01, + 9.20681839e+01, 5.79545450e+00, 1.75000000e+00, 1.00227270e+01, + 8.45454502e+00, 2.18181825e+00, 7.20454550e+00, 3.61363640e+01, + 9.13181839e+01, 1.63181820e+01, 2.86363626e+00, 4.09090900e+00, + 7.54545450e+00, 6.70454550e+00, 4.40909100e+00, 1.96590900e+01, + 6.27272749e+00, 2.90909100e+00, 37., 1.28909088e+02, + 2.02045460e+01, 2.65909100e+00, 2.63636374e+00, 5.61818199e+01, + 4.29772720e+01, 3.02272725e+00, 1.67045460e+01, 1.06318184e+02, + 3.08409100e+01, 7.27272749e-01, 2.29545450e+00, 6.43181839e+01, + 1.02590912e+02, 5.47727251e+00, 2.29545450e+00, 2.66363640e+01, + 2.01590900e+01, 1.15909088e+00, 2.20454550e+00, 2.46590900e+01, + 1.15272728e+02, 1.90454540e+01, 9.09090936e-01, 4.25000000e+00, + 1.18636360e+01, 2.72727275e+00, 2.11363626e+00, 5.88636351e+00, + 3.25000000e+00, 2.65909100e+00, 8.59090900e+00, 9.64545441e+01, + 4.79318199e+01, 3.63636374e+00, 1.81818187e+00, 9.54545498e+00, + 6.36363649e+00, 1.47727275e+00, 6.45454550e+00, 1.30090912e+02, + 9.52045441e+01, 2.90909100e+00, 8.86363626e-01, 7.61363649e+00, + 1.53181820e+01, 2.52272725e+00, 2.36363626e+00, 1.10477272e+02, + 1.16522728e+02, 3.54545450e+00, 1.09090912e+00, 4.65909100e+00, + 2.09318180e+01, 4.18181801e+00, 1.09090912e+00, 2.95909100e+01, + 1.03227272e+02, 1.22272730e+01, 2.26440678e+01, 2.46271191e+01, + 1.64237289e+01, 1.62881355e+01, 1.46271191e+01, 1.25084743e+01, + 1.31694918e+01, 1.43050852e+01, 1.83559322e+01, 2.13898296e+01, + 1.89830513e+01, 2.02542381e+01, 1.97966099e+01, 13., + 1.27966099e+01, 1.50677967e+01, 2.80338974e+01, 1.89830513e+01, + 2.27288132e+01, 4.08813553e+01, 3.83559303e+01, 2.32033901e+01, + 1.52542372e+01, 2.39830513e+01, 7.89830494e+00, 4.76271200e+00, + 11., 7.89830475e+01, 8.42711868e+01, 2.36271191e+01, + 8.47457600e+00, 7.57627106e+00, 2.15762711e+01, 7.64237289e+01, + 7.41186447e+01, 2.60169487e+01, 1.38135595e+01, 1.57288132e+01, + 1.68983059e+01, 1.16779661e+01, 1.67966099e+01, 3.56779671e+01, + 9.11864395e+01, 5.05762711e+01, 1.67966099e+01, 1.12711868e+01, + 1.52542372e+01, 2.10169487e+01, 1.61525421e+01, 2.22881355e+01, + 9.79830475e+01, 1.12932205e+02, 2.98305092e+01, 1.39322033e+01, + 1.20847454e+01, 1.82542381e+01, 2.93220329e+00, 4.23728800e+00, + 3.95593224e+01, 1.21169495e+02, 5.12203407e+01, 9.77966118e+00, + 2.30508471e+00, 2.61016941e+00, 5.89830494e+00, 8.44237289e+01, + 1.21186440e+02, 2.22881355e+01, 3.05084753e+00, 2.42372870e+00, + 3.06779671e+00, 1.55932200e+00, 2.52542377e+00, 4.36779671e+01, + 1.28610168e+02, 64., 3.55932212e+00, 1.06779659e+00, + 3.64406776e+00, 2.50847459e+00, 1.81355929e+00, 1.23559322e+01, + 1.24864410e+02, 1.16745766e+02, 5.74576283e+00, 1.13559318e+00, + 1.74576271e+00, 1.72881353e+00, 5.74576283e+00, 3.37288141e+00, + 5.13389816e+01, 9.25423737e+01, 1.04237289e+01, 1.64406776e+00, + 1.06779659e+00, 1.33389826e+01, 2.77966094e+00, 2.75254230e+01, + 4.96271172e+01, 1.00169487e+01, 3.64406776e+00, 2.76949158e+01, + 1.71694908e+01, 7.79661000e-01, 2.59322023e+00, 2.25084743e+01, + 7.71864395e+01, 2.16610165e+01, 4.42372894e+00, 1.17966099e+01, + 1.47457628e+01, 2.81355929e+00, 3.03389835e+00, 1.35593224e+01, + 6.04406776e+01, 3.31864395e+01, 3.57627130e+00, 5.69491529e+00, + 2.12881355e+01, 2.12203388e+01, 6.77966118e+00, 4.44067812e+00, + 2.14237289e+01, 2.51186447e+01, 2.27118635e+00, 1.22033894e+00, + 2.80847454e+01, 7.36440659e+01, 2.88888901e-01, 4.44444448e-01, + 6.44444466e-01, 2.06666660e+00, 6., 3.66666675e+00, + 6.22222245e-01, 3.55555564e-01, 1.22288887e+02, 1.83333340e+01, + 5.48888874e+00, 2.27555561e+01, 3.73333321e+01, 1.59777775e+01, + 3.68888879e+00, 5.50222206e+01, 1.30911118e+02, 2.59555550e+01, + 1.31111107e+01, 4.17777786e+01, 4.67111130e+01, 1.58444443e+01, + 1.17777777e+01, 8.51777802e+01, 1.66222229e+01, 1.62888889e+01, + 2.01111107e+01, 2.65777779e+01, 1.95555553e+01, 14., + 1.74888897e+01, 1.74888897e+01, 3.77777785e-01, 5.11111140e-01, + 7.11111128e-01, 1.75555551e+00, 6.02222204e+00, 6.19999981e+00, + 2.97777772e+00, 5.55555582e-01, 1.23266670e+02, 9.14222260e+01, + 7.24444437e+00, 1.60888882e+01, 4.46444435e+01, 3.08666668e+01, + 9., 1.33111115e+01, 1.30222229e+02, 1.36800003e+02, + 4.51777763e+01, 2.11777782e+01, 4.55333328e+01, 5.10888901e+01, + 1.71777782e+01, 2.13333340e+01, 1.35555553e+01, 3.57777786e+01, + 5.14222221e+01, 3.57555542e+01, 2.77555561e+01, 2.88222218e+01, + 2.33777771e+01, 1.39333334e+01, 6.66666687e-01, 6.44444466e-01, + 9.11111116e-01, 7.77777791e-01, 2.24444437e+00, 4.37777758e+00, + 3.15555549e+00, 7.55555570e-01, 1.95777779e+01, 4.83555565e+01, + 8.35555553e+00, 6.40000010e+00, 2.58888893e+01, 4.03111115e+01, + 1.70888882e+01, 4.11111116e+00, 3.04888897e+01, 1.43644440e+02, + 1.20577774e+02, 1.04444447e+01, 1.99555550e+01, 5.41777763e+01, + 2.83111115e+01, 4.97777796e+00, 5.44444466e+00, 8.29777756e+01, + 1.45444443e+02, 5.67777786e+01, 9.57777786e+00, 3.08222218e+01, + 3.75555573e+01, 1.07555552e+01, 6.88888907e-01, 3.77777785e-01, + 2.44444445e-01, 3.11111122e-01, 3.11111122e-01, 1., + 5.55555582e-01, 4.66666669e-01, 2.42222214e+00, 2.17777777e+00, + 1.91111112e+00, 2.13333344e+00, 3.75555563e+00, 8.15555573e+00, + 5.82222223e+00, 2.33333325e+00, 1.22222221e+00, 8.44444466e+00, + 1.12222223e+01, 1.51111114e+00, 4.68888903e+00, 1.95333328e+01, + 1.74222221e+01, 3.53333330e+00, 7.33333349e-01, 1.24888887e+01, + 3.40666656e+01, 5.35555553e+00, 1.88888884e+00, 2.02000008e+01, + 2.39777775e+01, 3.59999990e+00, 3.19318175e+00, 2.57954550e+00, + 9.65909064e-01, 4.09090906e-01, 1.25000000e+00, 2.04545450e+00, + 1.26136363e+00, 1.23863637e+00, 6.93181801e+00, 6.26136351e+00, + 2.62500000e+00, 1.31818187e+00, 3.31818175e+00, 5.14772749e+00, + 3.73863626e+00, 3.78409100e+00, 7.89772749e+00, 6.64772749e+00, + 3.14772725e+00, 1.79545450e+00, 3.87500000e+00, 4.32954550e+00, + 3.14772725e+00, 3.80681825e+00, 5.77272749e+00, 3.71590900e+00, + 1.77272725e+00, 1.50000000e+00, 3.71590900e+00, 3.93181825e+00, + 3.21590900e+00, 4.19318199e+00, 2.77500000e+01, 2.91022720e+01, + 1.44318180e+01, 8.89772701e+00, 1.60909100e+01, 1.85454540e+01, + 1.62045460e+01, 1.79204540e+01, 6.22500000e+01, 6.42840881e+01, + 3.27840919e+01, 1.83181820e+01, 3.32727280e+01, 4.37500000e+01, + 4.13522720e+01, 4.30568199e+01, 6.91363602e+01, 6.75909119e+01, + 3.41250000e+01, 2.56477280e+01, 3.67500000e+01, 4.85568199e+01, + 4.75909081e+01, 4.80227280e+01, 6.14886360e+01, 5.22500000e+01, + 2.44431820e+01, 1.73636360e+01, 2.64772720e+01, 3.96022720e+01, + 4.21704559e+01, 4.26136360e+01, 3.86363640e+01, 3.74318199e+01, + 2.07272720e+01, 1.31818180e+01, 1.70681820e+01, 2.66818180e+01, + 2.83863640e+01, 2.76363640e+01, 8.29318161e+01, 7.70340881e+01, + 4.43068199e+01, 2.79659100e+01, 36., 5.83750000e+01, + 5.99545441e+01, 6.39204559e+01, 8.94431839e+01, 7.96590881e+01, + 4.41931801e+01, 2.76363640e+01, 3.92840919e+01, 6.25909081e+01, + 6.95795441e+01, 7.13636398e+01, 7.25909119e+01, 6.36250000e+01, + 3.58977280e+01, 3.02045460e+01, 3.28068199e+01, 4.76477280e+01, + 6.54545441e+01, 6.30340919e+01, 3.39090919e+01, 2.91022720e+01, + 1.36363640e+01, 7.85227251e+00, 1.24659090e+01, 23., + 2.45568180e+01, 2.59886360e+01, 6.90909119e+01, 5.95227280e+01, + 3.05340900e+01, 1.88409100e+01, 2.96590900e+01, 5.16477280e+01, + 4.93181801e+01, 5.19090919e+01, 7.78409119e+01, 6.21704559e+01, + 3.87840919e+01, 2.44318180e+01, 2.86022720e+01, 4.81136360e+01, + 5.31250000e+01, 5.98295441e+01, 6.27045441e+01, 4.53409081e+01, + 4.49886360e+01, 4.96477280e+01, 3.67500000e+01, 3.05227280e+01, + 4.63977280e+01, 5.63181801e+01, 7.14857178e+01, 3.28571439e+00, + 6.37142849e+00, 2.42000008e+01, 1.67999992e+01, 6.05714273e+00, + 1.19714289e+01, 1.00028572e+02, 3.47428589e+01, 1.54285717e+00, + 8.65714264e+00, 1.04400002e+02, 5.24571419e+01, 1.05428572e+01, + 1.96285706e+01, 1.01314285e+02, 4.02857161e+00, 1.37142861e+00, + 9.37142849e+00, 6.04285698e+01, 1.09142857e+01, 11., + 4.69142876e+01, 37., 5.34285736e+00, 1.20000005e+00, + 5.22857141e+00, 5.85714293e+00, 1.48571432e+00, 2.18571434e+01, + 5.30571442e+01, 1.77714291e+01, 1.22057144e+02, 4.28571415e+00, + 3.57142854e+00, 5.33142853e+01, 6.97428589e+01, 7.17142868e+00, + 7.85714293e+00, 1.16828575e+02, 2.55714283e+01, 3.02857137e+00, + 4.22857141e+00, 8.50857162e+01, 8.24285736e+01, 6.57142878e+00, + 2.84571438e+01, 7.92285690e+01, 9.39999962e+00, 2.79999995e+00, + 2.85714293e+00, 1.30285711e+01, 5.48571444e+00, 1.05142860e+01, + 6.23714294e+01, 7.94571457e+01, 5.14285707e+00, 1.45714283e+00, + 1.08571434e+00, 1.39999998e+00, 2.82857132e+00, 2.17142849e+01, + 7.16285706e+01, 3.89428558e+01, 1.21428574e+02, 9.91428566e+00, + 2.17142868e+00, 3.57714272e+01, 9.82857132e+01, 1.60857143e+01, + 5.94285727e+00, 6.71999969e+01, 2.98857136e+01, 8.51428604e+00, + 2.48571420e+00, 2.31428566e+01, 6.04857140e+01, 1.11142855e+01, + 2.26571426e+01, 8.17714310e+01, 2.94857140e+01, 7.74285698e+00, + 2.45714283e+00, 2.82857132e+00, 7.74285698e+00, 1.77142849e+01, + 4.03714294e+01, 8.64571457e+01, 1.46000004e+01, 5.88571405e+00, + 6.42857122e+00, 7.62857151e+00, 1.71142864e+01, 2.47428570e+01, + 4.50571442e+01, 3.62285728e+01, 1.17857140e+02, 3.36857147e+01, + 1.94285715e+00, 9., 8.02285690e+01, 2.84857140e+01, + 4.74285698e+00, 2.04857140e+01, 4.07714272e+01, 1.96000004e+01, + 8.02857113e+00, 6.11428595e+00, 3.95428581e+01, 1.76857147e+01, + 7.80000019e+00, 4.49142876e+01, 4.16857147e+01, 2.52571430e+01, + 1.00571432e+01, 7.54285717e+00, 7.80000019e+00, 1.18000002e+01, + 1.75714283e+01, 4.07999992e+01, 1.33428574e+01, 1.12571430e+01, + 1.02571430e+01, 1.30285711e+01, 2.38285713e+01, 2.07142849e+01, + 2.08571434e+01, 1.78857136e+01, 5.55999994e+00, 1.10000002e+00, + 6.60000026e-01, 34., 1.22459999e+02, 1.19799995e+01, + 1.67999995e+00, 3.70000005e+00, 7.52799988e+01, 6.05999994e+00, + 7.20000029e-01, 6.88000011e+00, 2.25599995e+01, 2.05999994e+00, + 2.31999993e+00, 3.16800003e+01, 1.03239998e+02, 6.30000019e+00, + 5.40000021e-01, 3.03999996e+00, 1.01800003e+01, 2.38000011e+00, + 2.38000011e+00, 5.88199997e+01, 2.66200008e+01, 5.69999981e+00, + 2.35999990e+00, 4., 7.63999987e+00, 5.61999989e+00, + 6.01999998e+00, 2.92999992e+01, 6.82000017e+00, 2.70000005e+00, + 7.79999971e-01, 8.50000000e+00, 1.26559998e+02, 6.85400009e+01, + 2.38000011e+00, 3.20000005e+00, 9.23600006e+01, 2.77600002e+01, + 1.13999999e+00, 1.67999995e+00, 29., 1.25400000e+01, + 2.81999993e+00, 1.57399998e+01, 1.29279999e+02, 4.80200005e+01, + 4.19999987e-01, 1.15999997e+00, 1.01199999e+01, 6.71999979e+00, + 2.68000007e+00, 2.52999992e+01, 3.77999992e+01, 1.28599997e+01, + 1.75999999e+00, 3.31999993e+00, 7.84000015e+00, 12., + 1.08000002e+01, 1.52799997e+01, 4.15999985e+00, 4.90000010e+00, + 1.32000005e+00, 4.55999994e+00, 1.23080002e+02, 1.24379997e+02, + 3.01999998e+00, 1.89999998e+00, 4.85200005e+01, 3.46599998e+01, + 1.01999998e+00, 8.00000012e-01, 4.59000015e+01, 7.46200027e+01, + 5.69999981e+00, 7.11999989e+00, 1.10739998e+02, 1.16339996e+02, + 1.41999996e+00, 2.00000003e-01, 2.68000007e+00, 5.88000011e+00, + 2.33999991e+00, 5.09999990e+00, 4.03600006e+01, 6.65800018e+01, + 4.92000008e+00, 9.80000019e-01, 3.79999995e+00, 1.09600000e+01, + 9.22000027e+00, 7.11999989e+00, 3.24000001e+00, 5.63999987e+00, + 3.24000001e+00, 4.80000019e+00, 6.94199982e+01, 1.03180000e+02, + 4.94000006e+00, 2.42000008e+00, 8.31999969e+00, 1.33999996e+01, + 2.01999998e+00, 1.27999997e+00, 4.00999985e+01, 1.28399994e+02, + 14., 3.51999998e+00, 3.38400002e+01, 8.37799988e+01, + 4.50000000e+00, 1.19999997e-01, 1.48000002e+00, 4.32400017e+01, + 1.48599997e+01, 3.48000002e+00, 1.40799999e+01, 1.12480003e+02, + 2.73600006e+01, 2.00000003e-01, 5.19999981e-01, 3.92000008e+00, + 4.57999992e+00, 1.72000003e+00, 9.25531960e+00, 1.47872343e+01, + 1.17510635e+02, 5.94468079e+01, 1.61702132e+00, 2.40425539e+00, + 3.44893608e+01, 4.72765961e+01, 1.62765961e+01, 6.72340441e+00, + 79., 7.94680862e+01, 4.14893627e+00, 3.70212770e+00, + 4.18936157e+01, 1.02765961e+02, 2.75319157e+01, 9.23404217e+00, + 2.14468079e+01, 4.59787216e+01, 1.14468088e+01, 6.70212746e+00, + 2.58723412e+01, 1.01212769e+02, 3.67446823e+01, 1.18936167e+01, + 6.31914902e+00, 1.38085108e+01, 8.38297844e+00, 6.17021275e+00, + 1.51063833e+01, 5.70638313e+01, 1.24680853e+01, 6.91489363e+00, + 2.97872334e+01, 1.59787235e+01, 3.55319142e+00, 8.31914902e+00, + 9.70638275e+01, 9.58085098e+01, 1.92978725e+01, 1.26170216e+01, + 2.39574471e+01, 3.18510647e+01, 9.97872353e+00, 1.35744677e+01, + 6.89148941e+01, 9.67234039e+01, 3.37234039e+01, 1.72765961e+01, + 1.14680853e+01, 1.98297863e+01, 1.40212765e+01, 1.88936176e+01, + 3.97234039e+01, 7.39787216e+01, 5.47021294e+01, 9.38297844e+00, + 3.44680858e+00, 3.08510637e+00, 5.40425539e+00, 9.06382942e+00, + 3.56382980e+01, 9.48723373e+01, 1.08510637e+01, 6.91489363e+00, + 8.36170197e+00, 6.51063824e+00, 7.63829803e+00, 3.27234039e+01, + 8.46170197e+01, 4.43829803e+01, 1.71276588e+01, 9.19148922e+00, + 5.85106373e+00, 5.74468088e+00, 8.61702156e+00, 2.86170216e+01, + 9.25106354e+01, 6.93191452e+01, 2.95744686e+01, 6.82978725e+00, + 2.36170220e+00, 1.87234044e+00, 3.36170220e+00, 1.60425529e+01, + 9.75744705e+01, 1.13021278e+02, 3.68936157e+01, 3.57446814e+00, + 1.57446814e+00, 1.85106385e+00, 2.59574461e+00, 5.93617010e+00, + 6.12340431e+01, 1.16574471e+02, 3.61702132e+00, 9.14893627e-01, + 5.31914890e-01, 5.10638297e-01, 1.44680846e+00, 1.88936176e+01, + 6.48085098e+01, 1.98085098e+01, 6.61702108e+00, 7.65957475e-01, + 5.10638297e-01, 3.40425521e-01, 9.36170220e-01, 1.36595745e+01, + 7.89787216e+01, 5.26808510e+01, 9.57446766e+00, 2.08510637e+00, + 1.40425527e+00, 8.29787254e-01, 1.23404253e+00, 7.51063824e+00, + 5.62340431e+01, 6.79361725e+01, 1.12127657e+01, 4.27659559e+00, + 3.19148946e+00, 2.17021275e+00, 3.29787230e+00, 5.57446814e+00, + 19., 3.57872353e+01, 2.85937500e+01, 8.23906250e+01, + 3.33125000e+01, 1.35937500e+01, 1.20625000e+01, 2.01562500e+01, + 1.02968750e+01, 1.08281250e+01, 5.63281250e+01, 9.12031250e+01, + 4.96406250e+01, 1.28750000e+01, 5., 7.53125000e+00, + 9.54687500e+00, 1.95468750e+01, 6.67343750e+01, 8.19687500e+01, + 2.71875000e+01, 5.25000000e+00, 2.53125000e+00, 3.14062500e+00, + 4.57812500e+00, 1.84375000e+01, 1.00781250e+01, 7.98437500e+00, + 4.95312500e+00, 2.04687500e+00, 9.06250000e-01, 1.01562500e+00, + 1.60937500e+00, 4.29687500e+00, 7.35312500e+01, 1.13281250e+02, + 2.28125000e+01, 1.70312500e+01, 2.85781250e+01, 3.72656250e+01, + 1.41250000e+01, 1.03906250e+01, 8.94062500e+01, 9.05468750e+01, + 3.76562500e+01, 2.37968750e+01, 1.86562500e+01, 2.64843750e+01, + 2.05625000e+01, 3.68750000e+01, 1.08781250e+02, 9.44062500e+01, + 2.31093750e+01, 4.71875000e+00, 1.75000000e+00, 3.20312500e+00, + 6.96875000e+00, 3.70781250e+01, 2.22343750e+01, 1.45312500e+01, + 3.67187500e+00, 4.68750000e-01, 1.40625000e-01, 2.03125000e-01, + 1.29687500e+00, 8.56250000e+00, 1.01296875e+02, 9.41875000e+01, + 1.67343750e+01, 1.23593750e+01, 3.74375000e+01, 3.05156250e+01, + 1.19062500e+01, 1.22031250e+01, 1.14421875e+02, 7.97968750e+01, + 2.18593750e+01, 1.49375000e+01, 2.72968750e+01, 2.72343750e+01, + 2.09218750e+01, 4.54375000e+01, 1.09437500e+02, 5.65156250e+01, + 1.21718750e+01, 4.46875000e+00, 2.87500000e+00, 5.37500000e+00, + 1.33281250e+01, 6.18281250e+01, 2.34687500e+01, 9.85937500e+00, + 2.12500000e+00, 2.81250000e-01, 7.81250000e-02, 9.37500000e-02, + 1.53125000e+00, 1.23750000e+01, 9.42031250e+01, 3.43437500e+01, + 6.81250000e+00, 8.65625000e+00, 3.23125000e+01, 1.59375000e+01, + 6.89062500e+00, 2.50312500e+01, 1.15171875e+02, 3.61718750e+01, + 7.14062500e+00, 6.79687500e+00, 2.00312500e+01, 1.30312500e+01, + 1.58281250e+01, 6.00781250e+01, 8.22968750e+01, 2.14375000e+01, + 4.79687500e+00, 2.43750000e+00, 2.50000000e+00, 3.56250000e+00, + 1.29687500e+01, 6.96875000e+01, 1.08437500e+01, 3.56250000e+00, + 1.09375000e+00, 4.37500000e-01, 3.12500000e-01, 4.37500000e-01, + 2.04687500e+00, 1.12187500e+01, 5.02173901e+00, 6.58695650e+00, + 1.18043480e+01, 1.46521740e+01, 1.31521740e+01, 9.67391300e+00, + 6.93478251e+00, 5.30434799e+00, 1.21739125e+00, 2.34782600e+00, + 1.13913040e+01, 3.65652161e+01, 2.79782600e+01, 1.37608700e+01, + 4.45652151e+00, 2.67391300e+00, 2.04347825e+00, 9.56521749e-01, + 6.86956501e+00, 6.24130440e+01, 5.20869560e+01, 8.93478298e+00, + 1.67391300e+00, 3.65217400e+00, 5.32608700e+00, 8.69565189e-01, + 2.63043475e+00, 4.80434799e+01, 5.20434799e+01, 2.86956525e+00, + 7.82608688e-01, 7.04347849e+00, 1.30434787e+00, 1.56304350e+01, + 5.20217400e+01, 3.69565201e+01, 1.09347830e+01, 1.08478260e+01, + 4.91304350e+00, 9.34782624e-01, 3.91304344e-01, 3.76086950e+00, + 4.30217400e+01, 9.31086960e+01, 2.98260860e+01, 8.45652199e+00, + 5.15217400e+00, 2.04347825e+00, 1.28260875e+00, 4.78260875e-01, + 1.86086960e+01, 1.10152176e+02, 4.63043480e+01, 5.73913050e+00, + 9.69565201e+00, 8.95652199e+00, 2.26086950e+00, 4.78260875e-01, + 5.54347849e+00, 7.77391281e+01, 3.28478279e+01, 2.65217400e+00, + 2.35434780e+01, 4.56304359e+01, 1.56521738e+00, 3.72608681e+01, + 8.57826080e+01, 2.84347820e+01, 5.32608700e+00, 6.04347839e+01, + 7.14130402e+01, 1.82608700e+00, 9.34782624e-01, 9.02173901e+00, + 7.66956558e+01, 7.46956558e+01, 1.05652170e+01, 3.45000000e+01, + 1.02173912e+02, 7.04347849e+00, 6.95652187e-01, 1.97826087e+00, + 4.38478279e+01, 7.79130402e+01, 1.29565220e+01, 8.15217400e+00, + 1.15891304e+02, 5.79782600e+01, 2.32608700e+00, 2.19565225e+00, + 2.29565220e+01, 5.00217400e+01, 7.89130449e+00, 3.13043475e+00, + 1.10391304e+02, 1.15543480e+02, 4.71739149e+00, 4.33260880e+01, + 6.99130402e+01, 3.71739125e+00, 2.13043475e+00, 3.95869560e+01, + 7.90217361e+01, 1.11086960e+01, 5.41304350e+00, 1.94130440e+01, + 7.59565201e+01, 1.53260870e+01, 3.78260875e+00, 2.68043480e+01, + 1.06521736e+02, 1.98260860e+01, 5.84782600e+00, 7.02173901e+00, + 6.42173920e+01, 3.07173920e+01, 3.97826076e+00, 9.10869598e+00, + 1.02717392e+02, 5.06086960e+01, 7.95652151e+00, 4.45652151e+00, + 3.43260880e+01, 3.15000000e+01, 3., 5.32608700e+00, + 6.28478279e+01, 6.46956558e+01, 1.03999996e+01, 7.33333349e+00, + 2.46666670e+00, 9.33333337e-01, 1.26666665e+00, 6.66666687e-01, + 1.96666670e+00, 6.36666679e+00, 2.82333336e+01, 1.24666662e+01, + 5.66666651e+00, 1.28333330e+01, 1.26000004e+01, 6.09999990e+00, + 1.01666670e+01, 3.34000015e+01, 5.67333336e+01, 1.31000004e+01, + 9.86666679e+00, 2.88333340e+01, 1.68999996e+01, 5.53333330e+00, + 2.34666672e+01, 8.95999985e+01, 5.77333336e+01, 1.08666668e+01, + 1.15000000e+01, 3.40333328e+01, 3.29333344e+01, 2.08999996e+01, + 3.28333321e+01, 9.59333344e+01, 1.15333338e+01, 4.66666651e+00, + 1.53333330e+00, 2.13333344e+00, 2.93333340e+00, 1.63333333e+00, + 2.93333340e+00, 9.30000019e+00, 5.64666672e+01, 1.95666676e+01, + 8.03333378e+00, 1.93666668e+01, 1.73333340e+01, 5.80000019e+00, + 7.26666689e+00, 5.50999985e+01, 1.13099998e+02, 2.48999996e+01, + 1.32333336e+01, 3.83666649e+01, 1.93333340e+01, 3.26666665e+00, + 8.19999981e+00, 1.20066666e+02, 7.17666702e+01, 1.81333332e+01, + 1.47666664e+01, 8.44666672e+01, 6.18666649e+01, 1.43000002e+01, + 9.89999962e+00, 8.31333313e+01, 1.15000000e+01, 7.83333349e+00, + 1.89999998e+00, 3.06666660e+00, 5., 4.76666689e+00, + 3.33333325e+00, 5., 7.24000015e+01, 4.02333336e+01, + 1.06999998e+01, 1.21666670e+01, 1.43666668e+01, 6.69999981e+00, + 7.96666670e+00, 4.97999992e+01, 120., 5.96333351e+01, + 3.17000008e+01, 5.57000008e+01, 2.47999992e+01, 4.83333349e+00, + 6.53333330e+00, 9.45333328e+01, 4.01666679e+01, 2.05666676e+01, + 3.84333344e+01, 1.19866669e+02, 7.41333313e+01, 5.09999990e+00, + 5.03333330e+00, 3.41666679e+01, 6.36666679e+00, 1.76666660e+01, + 3.90000010e+00, 4.66666669e-01, 2.56666660e+00, 7.30000019e+00, + 3.70000005e+00, 2.59999990e+00, 3.90666656e+01, 5.42000008e+01, + 2.42999992e+01, 4.83333349e+00, 7.16666651e+00, 1.12666664e+01, + 9.76666641e+00, 1.70333328e+01, 3.86333351e+01, 6.46666641e+01, + 8.48666687e+01, 6.46666641e+01, 12., 7.16666651e+00, + 8.53333378e+00, 1.93666668e+01, 1.13999996e+01, 1.22333336e+01, + 4.82666664e+01, 9.55999985e+01, 2.13333340e+01, 2.66666675e+00, + 8.66666698e+00, 2.20333328e+01, 3.93650780e+01, 1.07666664e+02, + 6.11111116e+00, 2.79365087e+00, 2.07301579e+01, 3.93650780e+01, + 6.85714293e+00, 4.52380943e+00, 5.49523811e+01, 8.63650818e+01, + 4.38095236e+00, 2.95238090e+00, 8.97460327e+01, 1.22333336e+02, + 5.87301588e+00, 3.33333325e+00, 1.76190472e+01, 2.03015881e+01, + 6.71428585e+00, 2.98412704e+00, 3.18412704e+01, 2.93015881e+01, + 7.65079355e+00, 6.06349230e+00, 9.34920597e+00, 1.12698412e+01, + 3.11111116e+00, 1.25396824e+00, 7.28571415e+00, 1.58730161e+00, + 4.03174591e+00, 2.52380943e+00, 3.46031761e+01, 3.46190491e+01, + 1.42857146e+00, 1.02539682e+01, 4.05555573e+01, 2.53650799e+01, + 7.17460299e+00, 3.04761910e+00, 1.30301590e+02, 1.10253967e+02, + 2.69841266e+00, 5.73015881e+00, 1.14571426e+02, 8.24444427e+01, + 5.28571415e+00, 4.63492060e+00, 2.81746025e+01, 1.83968258e+01, + 5.30158710e+00, 3.95238090e+00, 1.06650795e+02, 6.01111107e+01, + 6.90476179e+00, 8.11111069e+00, 1.52698412e+01, 1.18888893e+01, + 2.76190472e+00, 7.77777791e-01, 2.38095236e+00, 1.60317457e+00, + 6.03174591e+00, 5.46031761e+00, 2.04444447e+01, 5.38095236e+00, + 2.74603176e+00, 2.34444447e+01, 4.67460327e+01, 2.03015881e+01, + 5.96825409e+00, 3.77777767e+00, 1.34174606e+02, 4.43650780e+01, + 1.96825397e+00, 1.59365082e+01, 1.11349205e+02, 2.46031742e+01, + 3.53968263e+00, 2.07142849e+01, 5.09365082e+01, 1.36984129e+01, + 2.90476179e+00, 1.34444447e+01, 1.29698410e+02, 3.10476189e+01, + 3.82539678e+00, 1.15396824e+01, 1.87460308e+01, 8.22222233e+00, + 1.46031749e+00, 4.76190478e-01, 1.12698412e+00, 9.68253970e-01, + 2.44444442e+00, 7.92063475e+00, 2.16190472e+01, 1.82539678e+00, + 4.55555534e+00, 2.84126987e+01, 3.06190472e+01, 1.04920635e+01, + 4.80952358e+00, 1.47301588e+01, 1.32634918e+02, 6.12698412e+00, + 1.80952382e+00, 4.13492050e+01, 9.87301559e+01, 5.42857122e+00, + 2.53968263e+00, 6.70793686e+01, 3.79047623e+01, 6.47619057e+00, + 1.39682543e+00, 3.42539673e+01, 1.10206352e+02, 5.52380943e+00, + 2.84126973e+00, 1.40317459e+01, 1.45238094e+01, 4.39682531e+00, + 6.82539701e-01, 4.76190478e-01, 8.09523821e-01, 5.39682567e-01, + 1.39682543e+00, 7.77777767e+00, 4.04838705e+00, 3.66129041e+00, + 2.83870959e+00, 1.93548381e+00, 2.24193549e+00, 3.29032254e+00, + 4.11290312e+00, 4.09677410e+00, 1.19677420e+01, 1.13225803e+01, + 8.20967770e+00, 6.58064508e+00, 9.11290359e+00, 1.00483875e+01, + 1.51451616e+01, 1.28870964e+01, 2.43870964e+01, 1.30161295e+01, + 1.01935482e+01, 1.92258072e+01, 2.74516125e+01, 1.22580643e+01, + 1.57903223e+01, 1.93225803e+01, 8.99354858e+01, 1.74354839e+01, + 6.88709688e+00, 3.42258072e+01, 4.31451607e+01, 1.02580643e+01, + 9.45161247e+00, 6.53064499e+01, 5.35483885e+00, 5.64516115e+00, + 4.25806475e+00, 2.53225803e+00, 3.25806451e+00, 4.79032278e+00, + 5.30645180e+00, 4.95161295e+00, 1.44516125e+01, 1.46935482e+01, + 1.31935482e+01, 1.17903223e+01, 1.36612902e+01, 1.31451616e+01, + 1.74193554e+01, 1.60161285e+01, 3.26129036e+01, 2.27096767e+01, + 1.19838705e+01, 3.42419357e+01, 4.99032249e+01, 1.94193554e+01, + 1.85806446e+01, 2.65000000e+01, 1.32645157e+02, 3.94838715e+01, + 7.14516115e+00, 4.81290321e+01, 6.56128998e+01, 1.62258072e+01, + 1.30322580e+01, 1.16919357e+02, 5.09677410e+00, 5.61290312e+00, + 4.75806475e+00, 3., 3.12903237e+00, 3.95161295e+00, + 6.41935492e+00, 5.08064508e+00, 1.65967751e+01, 1.40806456e+01, + 1.37258062e+01, 1.69838715e+01, 1.68709679e+01, 1.24354839e+01, + 1.66935482e+01, 1.87419357e+01, 5.20483856e+01, 1.80967751e+01, + 1.09838705e+01, 5.90645180e+01, 7.00322571e+01, 1.77419357e+01, + 1.77096767e+01, 5.03870964e+01, 1.42774200e+02, 2.88387089e+01, + 6.56451607e+00, 5.94354820e+01, 7.37580643e+01, 1.11129036e+01, + 1.08548384e+01, 1.40790329e+02, 3.30645156e+00, 3.40322590e+00, + 3.75806451e+00, 3.83870959e+00, 3.75806451e+00, 3.43548393e+00, + 5.61290312e+00, 4.27419376e+00, 1.65322590e+01, 1.20322580e+01, + 9.37096786e+00, 2.62903233e+01, 1.85483875e+01, 9.58064556e+00, + 1.39516125e+01, 2.07096767e+01, 9.78871002e+01, 1.01774197e+01, + 7.09677410e+00, 7.09354858e+01, 6.10645180e+01, 9.22580624e+00, + 1.90322590e+01, 1.07500000e+02, 1.31080643e+02, 6.45161295e+00, + 8.14516163e+00, 8.05806427e+01, 7.82096786e+01, 6.48387098e+00, + 1.05161295e+01, 1.37435486e+02, 4.05172396e+00, 1.37931037e+00, + 1.06896555e+00, 5.38448257e+01, 1.22689651e+02, 1.26206894e+01, + 1.91379309e+00, 3.72413802e+00, 1.77758617e+01, 1.08103447e+01, + 1.06551723e+01, 2.54137936e+01, 2.81206894e+01, 5.70689678e+00, + 7.22413778e+00, 2.00172405e+01, 2.04137936e+01, 2.21206894e+01, + 4.24310341e+01, 2.02758617e+01, 1.03793106e+01, 1.43275862e+01, + 3.20862083e+01, 3.20172424e+01, 8.74137974e+00, 1.27758617e+01, + 2.47931042e+01, 1.57931032e+01, 1.83793106e+01, 2.54655170e+01, + 2.27068958e+01, 1.14482756e+01, 4.36206913e+00, 2.41379309e+00, + 1.15517247e+00, 1.00344830e+01, 1.30120697e+02, 9.35517273e+01, + 2.77586198e+00, 2.77586198e+00, 2.08448277e+01, 1.78793106e+01, + 9.53448296e+00, 5.67241383e+00, 3.32586212e+01, 3.95517235e+01, + 1.54655170e+01, 1.43448277e+01, 2.60172405e+01, 2.36724129e+01, + 2.61896553e+01, 1.47068968e+01, 7.43103456e+00, 1.82068958e+01, + 4.08793106e+01, 3.19137936e+01, 1.27931032e+01, 1.29137936e+01, + 1.86724129e+01, 2.63275871e+01, 2.29482765e+01, 2.10689659e+01, + 3.75344810e+01, 2.97586212e+01, 3.91379309e+00, 6.34482765e+00, + 3.96551728e+00, 6.18965530e+00, 8.87068939e+01, 1.27827583e+02, + 1.08793106e+01, 2., 1.60517235e+01, 2.46034489e+01, + 1.33793106e+01, 3.24137926e+00, 2.87586212e+01, 1.23224136e+02, + 5.69655190e+01, 1.11551723e+01, 2.58275871e+01, 4.82068977e+01, + 5.08103447e+01, 2.12931042e+01, 9.10344791e+00, 4.76034470e+01, + 8.55344849e+01, 3.47586212e+01, 1.16379309e+01, 1.50862064e+01, + 4.41724129e+01, 4.76724129e+01, 1.91896553e+01, 1.87068958e+01, + 6.73103485e+01, 4.97758636e+01, 3.25862074e+00, 7.87931013e+00, + 6.43103456e+00, 9.65517235e+00, 3.20862083e+01, 5.77586212e+01, + 1.08448277e+01, 3.37931037e+00, 5.18965530e+00, 2.06551723e+01, + 1.96551723e+01, 7.58620691e+00, 2.17586212e+01, 1.18189651e+02, + 7.63620682e+01, 5.58620691e+00, 6.08620691e+00, 2.18448277e+01, + 4.38965530e+01, 1.40862064e+01, 8.10344791e+00, 7.68965530e+01, + 1.28086212e+02, 1.34137936e+01, 6.25862074e+00, 6.93103456e+00, + 3.47413788e+01, 2.07241383e+01, 5.58620691e+00, 1.19482756e+01, + 1.10793106e+02, 4.79482765e+01, 1.77551022e+01, 1.54285717e+01, + 9.63265324e+00, 7.48979568e+00, 1.31224489e+01, 2.46122456e+01, + 3.82040825e+01, 3.16530609e+01, 4.18979607e+01, 2.98979588e+01, + 2.06938782e+01, 1.60816326e+01, 2.62653065e+01, 5.69591827e+01, + 6.79591827e+01, 5.78979607e+01, 3.94081650e+01, 9.09387741e+01, + 6.71224518e+01, 1.84285717e+01, 2.72448978e+01, 8.39183655e+01, + 9.08979568e+01, 5.11428566e+01, 2.35306129e+01, 1.16510201e+02, + 1.03163269e+02, 6.65306139e+00, 1.07755098e+01, 9.09591827e+01, + 9.29387741e+01, 2.92448978e+01, 3.01224499e+01, 2.75918369e+01, + 1.88163261e+01, 1.12244902e+01, 1.28367348e+01, 1.94897957e+01, + 3.31224480e+01, 3.38367348e+01, 5.17551003e+01, 3.75102043e+01, + 2.28775501e+01, 1.60408173e+01, 2.10408173e+01, 4.42448997e+01, + 6.00612259e+01, 6.67346954e+01, 5.29183655e+01, 3.05510197e+01, + 1.99795914e+01, 1.73877544e+01, 2.52857151e+01, 5.62040825e+01, + 7.91020432e+01, 7.37755127e+01, 4.44081650e+01, 36., + 2.47142849e+01, 1.47755098e+01, 2.35510197e+01, 6.58775482e+01, + 7.85306091e+01, 6.21632652e+01, 2.76326523e+01, 2.11020412e+01, + 2.04285717e+01, 1.60204086e+01, 1.27142859e+01, 1.70204086e+01, + 3.35918350e+01, 3.57755089e+01, 6.03061218e+01, 4.56122437e+01, + 3.43061218e+01, 2.55306129e+01, 1.92040825e+01, 2.29591827e+01, + 4.22040825e+01, 5.80816345e+01, 6.30612259e+01, 4.40204086e+01, + 3.15102043e+01, 2.39183674e+01, 1.96734695e+01, 2.49183674e+01, + 4.36734695e+01, 6.02857132e+01, 4.58367348e+01, 2.65510197e+01, + 1.87142849e+01, 1.84285717e+01, 1.81836739e+01, 2.35714283e+01, + 3.99183655e+01, 5.35102043e+01, 1.54897957e+01, 1.18571424e+01, + 1.27551022e+01, 1.25306120e+01, 8.42857170e+00, 1.23265305e+01, + 2.18163261e+01, 2.93673477e+01, 2.85306129e+01, 1.64285717e+01, + 1.55306120e+01, 1.54489794e+01, 1.59591837e+01, 1.89183674e+01, + 3.79591827e+01, 4.64897957e+01, 3.32244911e+01, 2.04897957e+01, + 1.37551022e+01, 1.28979588e+01, 1.45102043e+01, 1.59795914e+01, + 3.48979607e+01, 4.41632652e+01, 2.69795914e+01, 1.75510197e+01, + 1.40204086e+01, 1.12244902e+01, 1.11224489e+01, 1.04897957e+01, + 1.91836739e+01, 3.16938782e+01, 4.58928585e+00, 6.37500000e+00, + 1.13214283e+01, 1.42857146e+00, 1.37500000e+00, 2.31250000e+01, + 9.31607132e+01, 2.98928566e+01, 3.98214293e+00, 2.19642849e+01, + 1.05178576e+01, 4.28571433e-01, 2.89285707e+00, 9.67500000e+01, + 9.98571396e+01, 1.06250000e+01, 2.00714283e+01, 6.83928604e+01, + 1.08928576e+01, 3.21428567e-01, 1.40535717e+01, 1.17589287e+02, + 4.51964302e+01, 3.14285707e+00, 6.85535736e+01, 1.01875000e+02, + 8.37500000e+00, 1.17857146e+00, 2.21250000e+01, 6.41964264e+01, + 6.94642878e+00, 3.23214293e+00, 1.43750000e+01, 8.08928585e+00, + 5.94642878e+00, 2.14285707e+00, 3.60714293e+00, 1.44821424e+01, + 3.86785698e+01, 3.34642868e+01, 1.30178576e+01, 1.19107141e+01, + 4.58928585e+00, 2.08928561e+00, 8.33928585e+00, 5.86250000e+01, + 5.63214302e+01, 2.32857151e+01, 1.64464283e+01, 1.94464283e+01, + 1.60714281e+00, 8.57142866e-01, 6.32678566e+01, 1.20017860e+02, + 3.39642868e+01, 6.82142878e+00, 8.32142868e+01, 6.57857132e+01, + 2.75000000e+00, 2.66071439e+00, 8.21785736e+01, 9.40357132e+01, + 4.94642878e+00, 5.78571415e+00, 1.75178566e+01, 9.83928585e+00, + 7.26785707e+00, 5.48214293e+00, 8.10714245e+00, 14., + 2.16428566e+01, 2.62857151e+01, 25., 1.29285717e+01, + 6.73214293e+00, 6.64285707e+00, 1.25357141e+01, 2.28571434e+01, + 2.37857151e+01, 2.77678566e+01, 1.68928566e+01, 6.76785707e+00, + 1.89285719e+00, 12., 9.31071396e+01, 7.09821396e+01, + 1.37678576e+01, 1.15357141e+01, 7.52857132e+01, 2.09107151e+01, + 1.10714281e+00, 1.84642849e+01, 1.21285713e+02, 5.60714302e+01, + 2.08928561e+00, 1.56785717e+01, 1.44821424e+01, 1.81428566e+01, + 1.34821424e+01, 5.87500000e+00, 5.78571415e+00, 1.11785717e+01, + 1.50178576e+01, 1.40178576e+01, 2.28035717e+01, 1.34285717e+01, + 1.38928576e+01, 1.60535717e+01, 1.54642859e+01, 1.20714283e+01, + 1.46071424e+01, 2.54285717e+01, 1.29285717e+01, 5.32142878e+00, + 6.14285707e+00, 6.43928604e+01, 8.91250000e+01, 1.14285717e+01, + 4.53571415e+00, 1.17857141e+01, 6.36607132e+01, 3.96428561e+00, + 1.16071427e+00, 5.45357132e+01, 1.10125000e+02, 7.25000000e+00, + 9.46428597e-01, 3.62857132e+01, 1.53846157e+00, 2.42307687e+00, + 3.14102554e+00, 5.05128193e+00, 1.92179489e+01, 3.51923065e+01, + 1.16025639e+01, 2.65384626e+00, 4.23076916e+00, 2.12564106e+01, + 6.56410265e+00, 8.14102554e+00, 5.22948723e+01, 1.00025642e+02, + 2.02051277e+01, 2.21794868e+00, 3.19102573e+01, 1.56282059e+02, + 2.72692299e+01, 7.51282072e+00, 4.38717957e+01, 1.11384613e+02, + 1.88205128e+01, 3.20512819e+00, 2.49615383e+01, 1.59448715e+02, + 5.91410255e+01, 2.91025639e+00, 2.42948723e+01, 1.60397430e+02, + 4.56025658e+01, 2.78205132e+00, 4.43589735e+00, 4.73076916e+00, + 6.56410265e+00, 8.44871807e+00, 1.35769234e+01, 2.10256405e+01, + 1.10641022e+01, 6.52564096e+00, 4.03846169e+00, 4.39743567e+00, + 5.14102554e+00, 9.85897446e+00, 4.24615402e+01, 9.22435913e+01, + 3.01923084e+01, 6.48717928e+00, 3.35897446e+00, 3.53205147e+01, + 6.75641012e+00, 5.11538458e+00, 5.20128212e+01, 1.43102570e+02, + 4.07051277e+01, 4.23076916e+00, 1.13717947e+01, 1.46358978e+02, + 5.85769234e+01, 4.32051277e+00, 2.01538467e+01, 1.07320511e+02, + 3.82820511e+01, 6.26923084e+00, 5.74358988e+00, 5.83333349e+00, + 7.55128193e+00, 8.79487133e+00, 7.32051277e+00, 8.24358940e+00, + 6.71794891e+00, 6.66666651e+00, 9.08974361e+00, 6.93589735e+00, + 9.29487133e+00, 1.22820511e+01, 1.82564106e+01, 3.19358978e+01, + 2.04871788e+01, 1.10384617e+01, 3.83333325e+00, 2.82051277e+00, + 3.24358964e+00, 6.25641012e+00, 2.93717957e+01, 9.64358978e+01, + 3.52820511e+01, 6.57692289e+00, 3.66666675e+00, 1.16666670e+01, + 4.02564096e+00, 2.29487181e+00, 1.84615383e+01, 1.12833336e+02, + 4.65000000e+01, 5.47435904e+00, 1.70512819e+00, 2.06410265e+00, + 2.39743590e+00, 2.91025639e+00, 2.02564096e+00, 2.14102554e+00, + 2.16666675e+00, 1.89743590e+00, 3.91025639e+00, 3.23076916e+00, + 3.53846145e+00, 4.35897446e+00, 4.35897446e+00, 5.73076916e+00, + 5.83333349e+00, 4.15384626e+00, 2.91025639e+00, 2.15384626e+00, + 2., 3.35897446e+00, 6.78205109e+00, 1.47307692e+01, + 9.41025639e+00, 3.28205132e+00, 1.33333337e+00, 1.01282048e+00, + 9.87179458e-01, 1.19230771e+00, 6.91025639e+00, 2.80512829e+01, + 1.27307692e+01, 2.16666675e+00, 1.15789471e+01, 1.24868422e+01, + 2.19605255e+01, 1.89210529e+01, 1.64868412e+01, 2.56578941e+01, + 3.14868412e+01, 1.76052628e+01, 2.00921059e+01, 2.65921059e+01, + 1.30789471e+01, 8.17105293e+00, 2.35263157e+01, 4.34868431e+01, + 2.13289471e+01, 8.96052647e+00, 6.83815765e+01, 5.82500000e+01, + 4.53947353e+00, 3.19736838e+00, 1.28684206e+01, 1.50789471e+01, + 3.92105269e+00, 4.46052647e+00, 1.26105263e+02, 7.56842117e+01, + 3.92105269e+00, 3.25000000e+00, 8.43421078e+00, 7.14473677e+00, + 4.57894754e+00, 6.86842108e+00, 1.87763157e+01, 1.63684216e+01, + 2.23815784e+01, 2.20657902e+01, 2.35394745e+01, 1.99736843e+01, + 1.91184216e+01, 1.94605255e+01, 4.21315804e+01, 2.57105255e+01, + 1.89605255e+01, 3.26842117e+01, 5.71184196e+01, 3.58289490e+01, + 2.07500000e+01, 2.59605255e+01, 8.62763138e+01, 1.63421059e+01, + 5.30263138e+00, 1.18947372e+01, 3.10526314e+01, 1.66315784e+01, + 5.75000000e+00, 3.65394745e+01, 1.32947372e+02, 2.05526314e+01, + 4.40789461e+00, 6.82894754e+00, 1.00526314e+01, 5.34210539e+00, + 4.42105246e+00, 6.43947372e+01, 1.49473686e+01, 1.89868412e+01, + 3.17500000e+01, 2.75789471e+01, 1.65657902e+01, 1.54342108e+01, + 2.48684216e+01, 2.29605255e+01, 2.31447372e+01, 1.23157892e+01, + 2.65000000e+01, 4.98026314e+01, 3.20394745e+01, 1.02631578e+01, + 3.11447372e+01, 5.23552628e+01, 7.08947372e+01, 5.59210539e+00, + 6.15789461e+00, 1.65921059e+01, 1.41973686e+01, 4.48684216e+00, + 1.99605255e+01, 1.24750000e+02, 100., 9.06578922e+00, + 5.84210539e+00, 9.22368431e+00, 8.75000000e+00, 5.14473677e+00, + 1.05394735e+01, 1.17197365e+02, 3.07894731e+00, 5.06578970e+00, + 1.28289471e+01, 9.90789509e+00, 3.81578946e+00, 3.76842117e+01, + 1.16578949e+02, 1.79736843e+01, 4.26315784e+00, 3.40789485e+00, + 1.12236843e+01, 1.17368422e+01, 4.28947353e+00, 5.14473677e+00, + 1.22947365e+02, 1.10671051e+02, 1.80921059e+01, 5.78947353e+00, + 7.10526323e+00, 1.31315794e+01, 5.52631569e+00, 6.36842108e+00, + 6.78026352e+01, 1.32710526e+02, 2.52105255e+01, 8.15789509e+00, + 4.90789461e+00, 6.71052647e+00, 4.47368431e+00, 5.76315784e+00, + 1.90131588e+01, 6.38157883e+01, 1.85185182e+00, 1.63888893e+01, + 4.36666679e+01, 2.96481476e+01, 6.44444466e+00, 1.22222221e+00, + 8.88888896e-01, 1.27777779e+00, 8.14814806e-01, 8.01851845e+00, + 3.99444427e+01, 4.69259262e+01, 1.75740738e+01, 3.11111116e+00, + 2.40740752e+00, 1.35185182e+00, 2., 3.16666675e+00, + 2.38703709e+01, 3.78518524e+01, 1.67777786e+01, 3.59259248e+00, + 9.94444466e+00, 3.22407417e+01, 2.21481476e+01, 1.14814818e+00, + 7.50000000e+00, 4.89444427e+01, 1.21296301e+01, 2.42592597e+00, + 1.17592592e+01, 122., 1.83333337e+00, 1.48333330e+01, + 4.10555573e+01, 1.76851845e+01, 5.12962961e+00, 2.51481476e+01, + 1.00740738e+02, 9.20370388e+00, 1.37037039e+00, 7.46296310e+00, + 4.63888893e+01, 3.40370369e+01, 1.00555553e+01, 8.12963009e+00, + 1.20537041e+02, 6.60185165e+01, 3.92592597e+00, 2.79629636e+00, + 5.57037048e+01, 8.29074097e+01, 6.79629612e+00, 4.07407427e+00, + 1.14074074e+02, 1.28666672e+02, 7.37037039e+00, 1.94444442e+00, + 3.95185204e+01, 1.26222221e+02, 8.25925922e+00, 1.70370376e+00, + 3.45555573e+01, 1.10962959e+02, 1.85185182e+00, 2.29259262e+01, + 1.27796295e+02, 1.57407408e+01, 2.22222233e+00, 2.12222214e+01, + 1.09074074e+02, 1.67222214e+01, 2.14814806e+00, 5.90740728e+00, + 1.25722221e+02, 7.68333359e+01, 2.62962961e+00, 6.81481504e+00, + 1.07425926e+02, 4.87407417e+01, 5.01851845e+00, 2.81481481e+00, + 1.03092590e+02, 1.09092590e+02, 3.53703713e+00, 5.87037039e+00, + 5.22592583e+01, 4.17592583e+01, 9.51851845e+00, 2.33333325e+00, + 2.38888893e+01, 4.91296310e+01, 2.09259248e+00, 3.94444442e+00, + 2.03333340e+01, 2.61666660e+01, 2.37037039e+00, 3.40740752e+00, + 3.25555573e+01, 4.11111116e+00, 1.77777779e+00, 5.12962961e+00, + 1.23703699e+01, 1.03333330e+01, 3.27777767e+00, 1.74074078e+00, + 2.21851845e+01, 7.88888884e+00, 2.22222233e+00, 5.25925922e+00, + 1.63888893e+01, 1.18703699e+01, 5.77777767e+00, 1.38888884e+00, + 3.50000000e+00, 3.05555558e+00, 1.98148143e+00, 4.16666651e+00, + 1.87777786e+01, 2.01111107e+01, 6.14814806e+00, 1.48148143e+00, + 1.11111116e+00, 1.16666663e+00, 1.42592597e+00, 2.64814806e+00, + 1.31296301e+01, 1.88888893e+01, 4.91428566e+00, 4.08571434e+00, + 6.40000010e+00, 9.62857151e+00, 5.28571415e+00, 6.65714264e+00, + 12., 6.91428566e+00, 5.82857132e+00, 4.48571444e+00, + 1.66857147e+01, 2.16571426e+01, 7.74285698e+00, 7.19999981e+00, + 1.67999992e+01, 1.11428576e+01, 5.91428566e+00, 2.59999990e+00, + 1.96000004e+01, 4.45999985e+01, 1.25142860e+01, 8.45714283e+00, + 1.82000008e+01, 5.35142860e+01, 7.42857122e+00, 7.42857158e-01, + 8.60000038e+00, 5.90571442e+01, 1.00571432e+01, 2.57142854e+00, + 2.09428577e+01, 1.21342857e+02, 3.85714293e+00, 3.02857137e+00, + 1.68285713e+01, 4.23142853e+01, 8.65714264e+00, 5.08571434e+00, + 2.94285717e+01, 5.87999992e+01, 5., 6.31428576e+00, + 3.95428581e+01, 4.47714272e+01, 6.65714264e+00, 1.80571423e+01, + 1.05828575e+02, 92., 1.34571428e+01, 1.44857140e+01, 32., + 5.26857147e+01, 1.29142857e+01, 2.81428566e+01, 9.49142838e+01, + 1.21371429e+02, 1.15714283e+01, 8.08571434e+00, 2.06285706e+01, + 1.21514282e+02, 2.67999992e+01, 6.68571424e+00, 3.77428589e+01, + 1.09228569e+02, 1.47428570e+01, 4.28571415e+00, 1.82000008e+01, + 4.19142876e+01, 9.71428585e+00, 2.48571420e+00, 3.92857132e+01, + 1.22085716e+02, 2.16571426e+01, 1.98571434e+01, 3.48571434e+01, + 2.82285709e+01, 1.09714289e+01, 16., 6.62857132e+01, + 7.41142883e+01, 2.33428574e+01, 3.57714272e+01, 2.98285713e+01, + 6.70285721e+01, 52., 2.84857140e+01, 4.07142868e+01, + 5.25142860e+01, 2.01428566e+01, 1.06000004e+01, 2.61714287e+01, + 1.17400002e+02, 7.37428589e+01, 2.20571423e+01, 1.21999998e+01, + 5.46571426e+01, 2.41714287e+01, 6.28571415e+00, 9.39999962e+00, + 2.15142860e+01, 9.71428585e+00, 3.62857151e+00, 5.02857161e+00, + 3.50857124e+01, 2.20285721e+01, 1.33142853e+01, 1.99142857e+01, + 2.31142864e+01, 1.29714289e+01, 9.28571415e+00, 7.37142849e+00, + 1.70857143e+01, 2.28857136e+01, 9.68571472e+00, 2.12285709e+01, + 8.25714264e+01, 6.25999985e+01, 1.53714285e+01, 6.25714302e+00, + 1.95714283e+01, 1.94571438e+01, 1.68571424e+00, 4.80000019e+00, + 5.77142868e+01, 5.81428566e+01, 1.25428572e+01, 7.25714302e+00, + 3.65142860e+01, 1.64210529e+01, 1.41052628e+01, 1.92368412e+01, + 1.54736843e+01, 1.78947372e+01, 1.47631578e+01, 1.06578951e+01, + 1.25789471e+01, 1.37631578e+01, 1.31578951e+01, 1.61842098e+01, + 3.30526314e+01, 3.93157883e+01, 2.70263157e+01, 1.13157892e+01, + 1.04473686e+01, 5.71052647e+00, 5.89473677e+00, 1.08157892e+01, + 6.87631607e+01, 1.05736839e+02, 2.83157902e+01, 3.97368431e+00, + 3.55263162e+00, 1., 7.10526288e-01, 1.78947365e+00, + 4.30263176e+01, 8.50789490e+01, 1.15789471e+01, 5.00000000e-01, + 2.89473683e-01, 3.39736824e+01, 3.06315784e+01, 2.78947372e+01, + 1.70526314e+01, 1.67368412e+01, 2.63157902e+01, 3.43157883e+01, + 3.47894745e+01, 9.78947353e+00, 9.31578922e+00, 3.17368412e+01, + 8.79473648e+01, 8.69210510e+01, 5.60526314e+01, 34., + 1.72631588e+01, 1.07894742e+00, 1.36842108e+00, 1.89210529e+01, + 1.15500000e+02, 1.05263161e+02, 1.27105265e+01, 1.68421054e+00, + 1.28947365e+00, 2.97368431e+00, 1.26315784e+00, 1.06842108e+01, + 8.36842117e+01, 6.90263138e+01, 6.21052647e+00, 4.65789461e+00, + 7.63157892e+00, 2.72631588e+01, 7.41578979e+01, 1.06526314e+02, + 4.76315804e+01, 1.33947372e+01, 8.36842060e+00, 1.28421049e+01, + 1.67631588e+01, 6.39473677e+00, 1.84473686e+01, 9.76315765e+01, + 1.21263161e+02, 8.08947372e+01, 2.23157902e+01, 1.25526314e+01, + 8.60526276e+00, 7.10526288e-01, 1.02631581e+00, 3.35789490e+01, + 1.13473686e+02, 7.65526352e+01, 1.20789471e+01, 5.81578970e+00, + 2.55263162e+00, 8.89473724e+00, 3.39473677e+00, 1.95526314e+01, + 6.86842117e+01, 3.14473686e+01, 9.47368431e+00, 1.92368412e+01, + 3.74473686e+01, 4.73684216e+00, 3.65263176e+01, 6.28421059e+01, + 2.95263157e+01, 9., 1.24210529e+01, 1.45263157e+01, + 8.94736826e-01, 8.42105269e-01, 1.24473686e+01, 5.55526314e+01, + 7.30526352e+01, 3.01315784e+01, 7.81578970e+00, 1.96315784e+01, + 4., 1.60526311e+00, 2.39473677e+00, 2.34210529e+01, + 5.01052628e+01, 3.41578941e+01, 1.27368422e+01, 4.33684196e+01, + 3.49736824e+01, 9.13157940e+00, 1.92105258e+00, 1.27631578e+01, + 4.86052628e+01, 1.52631578e+01, 8.71052647e+00, 5.11315804e+01, + 1.01921051e+02, 4.04545441e+01, 1.89090900e+01, 6.47272730e+00, + 4.23636341e+00, 4.58181810e+00, 6.54545450e+00, 1.21818180e+01, + 4.09454536e+01, 5.03636360e+01, 2.77636356e+01, 1.02181816e+01, + 6.18181801e+00, 4.65454531e+00, 6.12727261e+00, 1.74727268e+01, + 4.40545464e+01, 2.62181816e+01, 1.76000004e+01, 1.08727274e+01, + 1.03636360e+01, 1.12363634e+01, 1.36545458e+01, 1.91454544e+01, + 2.68545456e+01, 2.21272736e+01, 1.01454544e+01, 3.96363640e+00, + 9.41818142e+00, 2.58181820e+01, 1.93999996e+01, 1.16727276e+01, + 2.13636360e+01, 4.55090904e+01, 3.02181816e+01, 6.41818190e+00, + 6.12727261e+00, 7.69090891e+00, 1.66000004e+01, 2.14545460e+01, + 2.43454552e+01, 6.19090919e+01, 5.48181801e+01, 1.57636366e+01, + 7.65454531e+00, 6.59999990e+00, 1.05818186e+01, 1.93090916e+01, + 3.48909073e+01, 4.33636360e+01, 3.80181808e+01, 1.77272720e+01, + 1.49272728e+01, 1.25636368e+01, 1.76727276e+01, 2.70727272e+01, + 3.99272728e+01, 2.73454552e+01, 9.89090919e+00, 1.22363634e+01, + 5.82727280e+01, 4.10181808e+01, 1.12363634e+01, 1.53999996e+01, + 3.42000008e+01, 2.48363628e+01, 7.88545456e+01, 2.99272728e+01, + 1.29090905e+00, 2.70909095e+00, 1.84181824e+01, 3.15818176e+01, + 1.83090916e+01, 3.48363647e+01, 4.72363625e+01, 5.24000015e+01, + 6.69090891e+00, 2.30909085e+00, 7.83636379e+00, 3.46909103e+01, + 4.33636360e+01, 3.02545452e+01, 2.77272720e+01, 7.87272720e+01, + 5.81090927e+01, 5.65454531e+00, 7.49090910e+00, 2.09272728e+01, + 3.91272736e+01, 1.26545458e+01, 5.32727289e+00, 5.64000015e+01, + 1.27872726e+02, 2.69272728e+01, 4., 1.04181814e+01, + 2.77090912e+01, 6.18181801e+00, 1.22581818e+02, 1.17763634e+02, + 9.09090936e-01, 2.18181819e-01, 9.49090862e+00, 2.62727280e+01, + 6.29090929e+00, 6.41818190e+00, 6.36545448e+01, 1.35709091e+02, + 2.32363644e+01, 4.72727269e-01, 2.36363626e+00, 2.62909088e+01, + 1.75818176e+01, 5.92727280e+00, 1.28545456e+01, 1.35727280e+02, + 1.03072731e+02, 8.54545474e-01, 6.72727287e-01, 2.16000004e+01, + 3.44545441e+01, 9.14545441e+00, 2.98181820e+00, 8.61454544e+01, + 1.21545456e+02, 6.34545469e+00, 1.41818178e+00, 1.81636372e+01, + 7.16363602e+01, 1.18314610e+01, 8.46067429e+00, 8.87640476e+00, + 1.00898876e+01, 1.53033705e+01, 1.47191010e+01, 1.25505619e+01, + 1.05393257e+01, 9.10112381e+00, 1.01011238e+01, 1.21797752e+01, + 1.19662924e+01, 1.95617981e+01, 2.22359543e+01, 1.36966295e+01, + 8.85393238e+00, 7.78651667e+00, 1.13370790e+01, 1.49662924e+01, + 1.27415733e+01, 2.16292133e+01, 2.36179771e+01, 1.16853933e+01, + 7.04494381e+00, 5.61797762e+00, 8., 1.11348314e+01, + 9.12359524e+00, 1.46179771e+01, 1.61123600e+01, 7.94382000e+00, + 4.26966286e+00, 3.35056190e+01, 2.81910114e+01, 3.66853943e+01, + 3.94494400e+01, 4.78988762e+01, 4.88876419e+01, 4.14044952e+01, + 3.44269676e+01, 2.80786514e+01, 3.02584267e+01, 4.41123581e+01, + 5.00449448e+01, 6.64494400e+01, 7.16966324e+01, 4.56966286e+01, + 2.92808990e+01, 2.40449448e+01, 3.37528076e+01, 5.12921333e+01, + 5.57528076e+01, 7.41123581e+01, 7.06067429e+01, 4.10674171e+01, + 2.45617981e+01, 1.47752810e+01, 2.36067410e+01, 3.56853943e+01, + 3.84494400e+01, 4.49550552e+01, 4.23146057e+01, 2.59101124e+01, + 1.70224724e+01, 3.96629219e+01, 5.10449448e+01, 5.65505600e+01, + 5.44831467e+01, 5.54044952e+01, 5.33258438e+01, 3.50898895e+01, + 3.03820229e+01, 2.91123600e+01, 3.91348305e+01, 6.61685410e+01, + 7.57191010e+01, 7.36404495e+01, 6.68876419e+01, 3.96853943e+01, + 2.96629219e+01, 2.29325848e+01, 3.74157295e+01, 6.34382019e+01, + 7.76404495e+01, 8.11910095e+01, 7.15955048e+01, 4.25505600e+01, + 2.55505619e+01, 1.41573038e+01, 2.37752800e+01, 4.20224724e+01, + 5.04382019e+01, 5.11797752e+01, 4.48202248e+01, 2.77528095e+01, + 1.72471905e+01, 3.83370781e+01, 7.57752838e+01, 6.77303391e+01, + 4.42471924e+01, 4.24943810e+01, 6.24719086e+01, 2.99101124e+01, + 1.41011238e+01, 2.58089886e+01, 48., 6.70786514e+01, + 7.22134857e+01, 5.67977524e+01, 4.42022476e+01, 2.44382019e+01, + 2.09775276e+01, 1.99550552e+01, 3.64719086e+01, 6.16966286e+01, + 7.28202209e+01, 6.51235962e+01, 4.63595505e+01, 2.50449448e+01, + 1.82471905e+01, 1.44606743e+01, 2.38314610e+01, 35., + 3.55617981e+01, 3.37640457e+01, 3.24719086e+01, 2.11348324e+01, + 1.41797752e+01, 1.94366193e+00, 5.77464759e-01, 1.29577470e+00, + 6.87323952e+00, 7.78873253e+00, 2.33802819e+00, 1.84507048e+00, + 6.19718313e-01, 3.69014096e+00, 2.04225349e+00, 6.16901398e+00, + 2.54225349e+01, 2.51971836e+01, 7.22535229e+00, 2.61971831e+00, + 2.92957735e+00, 8.31690140e+01, 4.53521109e+00, 5.57746458e+00, + 3.61549301e+01, 3.23380280e+01, 6.36619711e+00, 6.32394361e+00, + 1.05704224e+02, 4.98591537e+01, 6.25352097e+00, 5.97183084e+00, + 1.12014084e+02, 7.08309860e+01, 6.43661976e+00, 9.25352097e+00, + 9.00845108e+01, 2.16901398e+00, 9.85915482e-01, 1.45070422e+00, + 8.04225349e+00, 1.29295778e+01, 3.57746482e+00, 1.15492952e+00, + 8.02816927e-01, 2.56619720e+01, 3.28169012e+00, 5.70422554e+00, + 2.55070419e+01, 3.41971817e+01, 1.15774651e+01, 3.50704217e+00, + 9.08450699e+00, 1.37492950e+02, 6.38028193e+00, 3.38028169e+00, + 6.00704231e+01, 9.79295807e+01, 7.91549301e+00, 3.50704217e+00, + 1.09957748e+02, 4.18450699e+01, 7., 3.52112675e+00, + 8.98028183e+01, 1.14140846e+02, 4.98591566e+00, 6.91549301e+00, + 4.07042236e+01, 6.90140843e-01, 8.30985904e-01, 1.08450699e+00, + 6.07042265e+00, 1.66056347e+01, 4.69014072e+00, 1.19718313e+00, + 7.18309879e-01, 5.41126747e+01, 6.23943663e+00, 4.64788723e+00, + 17., 3.40422554e+01, 1.47464790e+01, 3.42253518e+00, + 8.85915470e+00, 1.38760559e+02, 2.48873234e+01, 3., + 3.30140839e+01, 1.24267609e+02, 1.95633812e+01, 2.59154940e+00, + 4.29577446e+01, 3.75352097e+01, 1.32957745e+01, 3.56338024e+00, + 2.64366188e+01, 113., 1.47183094e+01, 5.35211277e+00, + 2.14788723e+01, 3.38028163e-01, 3.80281687e-01, 6.33802831e-01, + 3.19718313e+00, 1.45633802e+01, 5.16901398e+00, 1.02816904e+00, + 4.78873253e-01, 3.41267624e+01, 8.08450699e+00, 2.94366193e+00, + 8.92957783e+00, 2.30422535e+01, 1.54507046e+01, 3.98591542e+00, + 2.80281687e+00, 1.32070419e+02, 6.30563393e+01, 3.15492964e+00, + 8.16901398e+00, 9.88028183e+01, 3.66197166e+01, 2.61971831e+00, + 6.73239422e+00, 3.35492973e+01, 2.08169022e+01, 4.04225349e+00, + 4.94366217e+00, 9.28450699e+01, 4.38873253e+01, 2.77464795e+00, + 9.15492916e+00, 8.90410995e+00, 1.47671232e+01, 1.57945204e+01, + 8.10958862e+00, 1.02465754e+01, 1.45479450e+01, 1.78356171e+01, + 1.25753422e+01, 1.08356161e+01, 1.59863014e+01, 1.53972607e+01, + 1.13835621e+01, 1.46438360e+01, 2.19315071e+01, 2.13561649e+01, + 1.57808218e+01, 1.20821915e+01, 2.02876720e+01, 1.39589043e+01, + 9.65753460e+00, 1.29726028e+01, 2.32191772e+01, 1.60547943e+01, + 1.15616436e+01, 1.02876711e+01, 1.37260275e+01, 8.73972607e+00, + 6.83561659e+00, 1.01506853e+01, 1.59726028e+01, 1.25479450e+01, + 9.42465782e+00, 9.80821896e+00, 5.55205498e+01, 7.35205460e+01, + 1.15205479e+01, 9.12328720e+00, 3.30273972e+01, 3.89589043e+01, + 1.55479450e+01, 1.32739725e+01, 5.85205498e+01, 8.11917801e+01, + 1.55616436e+01, 1.74520550e+01, 4.09315071e+01, 4.21917801e+01, + 2.21643829e+01, 1.51232872e+01, 4.66164398e+01, 6.14109573e+01, + 1.31917810e+01, 18., 4.26849327e+01, 3.97671242e+01, + 2.34520550e+01, 1.38356161e+01, 2.60684929e+01, 3.29452057e+01, + 1.23698626e+01, 1.53561640e+01, 2.92054787e+01, 2.79726028e+01, + 1.84520550e+01, 6.73972607e+00, 4.94931488e+01, 6.99178085e+01, + 1.25068493e+01, 7.67123270e+00, 5.58219185e+01, 7.94931488e+01, + 1.09041100e+01, 7.39726019e+00, 7.91506882e+01, 1.03602737e+02, + 1.43835621e+01, 8.05479431e+00, 7.46575317e+01, 1.00739723e+02, + 1.41643839e+01, 7.28767109e+00, 9.18219147e+01, 1.13260277e+02, + 1.23424654e+01, 8.01369858e+00, 7.54657516e+01, 9.87260284e+01, + 1.28493147e+01, 7.17808199e+00, 6.87123260e+01, 9.88767090e+01, + 1.84383564e+01, 9.57534218e+00, 4.36164398e+01, 7.17534256e+01, + 1.75068493e+01, 6.27397251e+00, 2.38767128e+01, 2.85753422e+01, + 9.78082180e+00, 7.61643839e+00, 4.24520531e+01, 5.92465744e+01, + 1.07397261e+01, 9.06849289e+00, 4.03561630e+01, 4.77534256e+01, + 1.12328768e+01, 7.73972607e+00, 5.82191772e+01, 8.07945175e+01, + 1.54383564e+01, 8.05479431e+00, 5.04520531e+01, 5.80410957e+01, + 1.00547943e+01, 8.16438389e+00, 6.37534256e+01, 8.73835602e+01, + 1.25205479e+01, 6.60273981e+00, 39., 5.30821915e+01, + 9.01369858e+00, 7.23287678e+00, 5.04520531e+01, 8.19178085e+01, + 1.47397261e+01, 3.57142866e-01, 5.57142854e-01, 7.85714269e-01, + 1.24285710e+00, 2.35714293e+00, 1.52857149e+00, 6.57142878e-01, + 3.85714293e-01, 3.70000005e+00, 4.78571415e+00, 5.84285736e+00, + 2.01285706e+01, 6.30714302e+01, 2.32142849e+01, 4.78571415e+00, + 3.52857137e+00, 7.81428576e+00, 3.45714283e+00, 3.29999995e+00, + 6.51999969e+01, 1.46571426e+02, 2.67999992e+01, 4.08571434e+00, + 4.57142878e+00, 1.84142857e+01, 4.91428566e+00, 2.87142849e+00, + 7.30714264e+01, 1.20428574e+02, 7.98571444e+00, 2.78571439e+00, + 1.00714283e+01, 5.00000000e-01, 7.57142842e-01, 1.02857149e+00, + 1.25714290e+00, 2.28571439e+00, 2.08571434e+00, 1.10000002e+00, + 7.42857158e-01, 4.90000010e+00, 5.81428576e+00, 6.68571424e+00, + 1.58142853e+01, 6.92857132e+01, 4.34142876e+01, 9.44285679e+00, + 5.40000010e+00, 6.88571405e+00, 3.38571429e+00, 2.51428580e+00, + 2.60142860e+01, 1.49457138e+02, 9.34571457e+01, 6.45714283e+00, + 3.88571429e+00, 2.34285717e+01, 1.10428572e+01, 2.01428580e+00, + 2.21000004e+01, 1.37971436e+02, 5.05000000e+01, 2.98571420e+00, + 8.84285736e+00, 8.00000012e-01, 1., 1.29999995e+00, + 1.24285710e+00, 1.82857144e+00, 1.87142861e+00, 1.44285715e+00, + 8.42857122e-01, 7.15714264e+00, 8.71428585e+00, 8.71428585e+00, + 1.38142853e+01, 4.61571426e+01, 3.61571426e+01, 1.21285715e+01, + 7.64285707e+00, 4.08571434e+00, 3.97142863e+00, 3.55714297e+00, + 1.25428572e+01, 1.43414291e+02, 1.30785721e+02, 9.95714283e+00, + 3.51428580e+00, 1.19428568e+01, 8.50000000e+00, 1.74285710e+00, + 3.61428571e+00, 1.36542862e+02, 1.36685715e+02, 5.80000019e+00, + 3.55714297e+00, 5.85714281e-01, 7.71428585e-01, 1.22857141e+00, + 9.85714257e-01, 1.38571429e+00, 1.55714285e+00, 1.21428573e+00, + 6.57142878e-01, 7.64285707e+00, 8.54285717e+00, 8.71428585e+00, + 9.92857170e+00, 2.40428562e+01, 1.97285709e+01, 9.77142811e+00, + 7.12857151e+00, 4.68571424e+00, 5.84285736e+00, 5.32857132e+00, + 1.08142853e+01, 7.50571442e+01, 8.33142853e+01, 1.11999998e+01, + 4.69999981e+00, 3.44285703e+00, 7.15714264e+00, 2.28571439e+00, + 3.20000005e+00, 7.53857117e+01, 1.45685715e+02, 1.48000002e+01, + 2.17142868e+00, 8.84057999e+00, 6.01449299e+00, 5.28985500e+00, + 6.56521749e+00, 1.19855070e+01, 1.69565220e+01, 2.10144920e+01, + 1.54202900e+01, 1.27391300e+01, 6.69565201e+00, 6.49275351e+00, + 7.72463751e+00, 1.44057970e+01, 1.66086960e+01, 2.70289860e+01, + 2.47536240e+01, 1.08695650e+01, 5.13043499e+00, 7.40579700e+00, + 1.07246380e+01, 1.43913040e+01, 1.50579710e+01, 2.75652180e+01, + 2.19130440e+01, 1.21449280e+01, 5., 5.59420300e+00, + 7.84057951e+00, 1.27391300e+01, 1.46521740e+01, 1.87391300e+01, + 1.83188400e+01, 2.46811600e+01, 4.93768120e+01, 1.24057970e+01, + 1.06956520e+01, 2.63188400e+01, 5.43188400e+01, 3.97101440e+01, + 2.49710140e+01, 2.80724640e+01, 2.09420280e+01, 1.40869570e+01, + 15., 2.71304340e+01, 4.25797119e+01, 5.31739120e+01, + 4.10434799e+01, 2.25797100e+01, 1.31739130e+01, 1.40289860e+01, + 1.72898560e+01, 2.47971020e+01, 3.25797119e+01, 5.34202881e+01, + 4.51739120e+01, 1.83188400e+01, 7.81159401e+00, 9.76811600e+00, + 1.42463770e+01, 1.76376820e+01, 2.16956520e+01, 4.03043480e+01, + 4.16811600e+01, 3.40724640e+01, 1.16782608e+02, 2.28695660e+01, + 8.89855099e+00, 3.26666679e+01, 1.38956528e+02, 4.96956520e+01, + 1.82318840e+01, 3.52028999e+01, 7.23333359e+01, 1.89710140e+01, + 1.22173910e+01, 3.33768120e+01, 7.99420319e+01, 6.41449280e+01, + 3.64927521e+01, 3.30579720e+01, 2.75217400e+01, 1.41159420e+01, + 1.52898550e+01, 3.02463760e+01, 4.87246361e+01, 5.32898560e+01, + 4.29565201e+01, 1.88550720e+01, 1.27101450e+01, 1.26811590e+01, + 1.44492750e+01, 1.84782600e+01, 2.50869560e+01, 3.84927521e+01, + 3.87971001e+01, 3.04492760e+01, 1.23463768e+02, 1.54347830e+01, + 3.21739125e+00, 3.03188400e+01, 1.44202896e+02, 3.54492760e+01, + 8.47826099e+00, 3.64927521e+01, 1.28420288e+02, 3.07246380e+01, + 5.62318850e+00, 2.95362320e+01, 1.41275360e+02, 5.83913040e+01, + 1.84637680e+01, 2.91304340e+01, 6.99855042e+01, 2.23768120e+01, + 9.39130402e+00, 2.79855080e+01, 7.38115921e+01, 5.17101440e+01, + 2.82608700e+01, 1.69420280e+01, 17., 1.07246380e+01, + 1.05362320e+01, 1.89565220e+01, 2.88260860e+01, 3.41449280e+01, + 2.54202900e+01, 1.56707315e+01, 9.51219499e-01, 1.24512196e+01, + 4.51585350e+01, 6.85365868e+00, 1.35365856e+00, 1.92926826e+01, + 8.19512177e+01, 9.76829243e+00, 1.54878044e+00, 1.44390240e+01, + 1.76219521e+01, 1.29268289e+00, 2.47560978e+00, 7.09512177e+01, + 1.21365852e+02, 8.97560978e+00, 2.97560978e+00, 1.59146338e+01, + 8.98780441e+00, 1.29268289e+00, 8.29268265e+00, 1.13914635e+02, + 1.11060974e+02, 5.24390221e+00, 6.96341467e+00, 1.49634142e+01, + 2.97560978e+00, 1.67073166e+00, 2.33048782e+01, 1.17560974e+02, + 4.80365868e+01, 6.39756088e+01, 1.46341467e+00, 2.50000000e+00, + 1.54024391e+01, 6.43902445e+00, 1.69512200e+00, 1.52804880e+01, + 1.19902435e+02, 3.81829262e+01, 5.56097555e+00, 6.98780489e+00, + 1.55365858e+01, 5.06097555e+00, 4.57317066e+00, 5.29024391e+01, + 1.25292686e+02, 3.40609741e+01, 1.16097565e+01, 1.02073174e+01, + 1.06463413e+01, 5.18292665e+00, 1.31951218e+01, 7.95365829e+01, + 9.80609741e+01, 2.08780479e+01, 1.11585369e+01, 1.01219511e+01, + 5.92682934e+00, 7.24390221e+00, 2.36585369e+01, 7.52073135e+01, + 4.85731697e+01, 1.08329269e+02, 3.68292689e+00, 1.31707323e+00, + 7.62195110e+00, 8.39024353e+00, 5.13414621e+00, 8.12195110e+00, + 1.11195122e+02, 6.21097565e+01, 1.24268293e+01, 5.62195110e+00, + 1.03780489e+01, 1.30121956e+01, 1.24756098e+01, 2.17804871e+01, + 9.06707306e+01, 4.97804871e+01, 2.19268284e+01, 7.60975599e+00, + 8.03658581e+00, 9.45121956e+00, 1.26829271e+01, 2.65121956e+01, + 5.55000000e+01, 2.67804871e+01, 1.43048782e+01, 1.02317076e+01, + 1.01707315e+01, 1.16219511e+01, 1.66463413e+01, 2.77073174e+01, + 3.37682915e+01, 1.13073174e+02, 3.16829262e+01, 1.52439022e+00, + 2.24390244e+00, 6.37804890e+00, 9.02439022e+00, 5.57317066e+00, + 4.04512177e+01, 5.13414650e+01, 2.24512196e+01, 7.32926846e+00, + 6.78048801e+00, 1.17317076e+01, 2.09634151e+01, 1.85731716e+01, + 3.46951218e+01, 4.05731697e+01, 2.59146347e+01, 9.29268265e+00, + 7.37804890e+00, 9.85365868e+00, 1.31097565e+01, 1.61829262e+01, + 2.86829262e+01, 2.64146347e+01, 1.61219521e+01, 1.02804880e+01, + 1.37682924e+01, 1.02560978e+01, 9.45121956e+00, 1.51707315e+01, + 2.72317066e+01, 3.39682531e+00, 3.96825385e+00, 8.28571415e+00, + 1.16031742e+01, 6.90476179e+00, 3.98412704e+00, 3.93650794e+00, + 4.19047642e+00, 4.63492060e+00, 6.31746054e+00, 1.87301579e+01, + 34., 1.40158730e+01, 5.23809528e+00, 5.71428585e+00, + 5.69841290e+00, 4.36507940e+00, 6.92063475e+00, 4.43968239e+01, + 8.31746063e+01, 1.08730154e+01, 3.09523821e+00, 3.96825385e+00, + 5.80952358e+00, 1.85714281e+00, 5.52380943e+00, 1.07920631e+02, + 9.15555573e+01, 3.84126973e+00, 1.74603176e+00, 4.49206352e+00, + 3.57142854e+00, 4.07936525e+00, 4.96825409e+00, 1.32222223e+01, + 2.83809528e+01, 1.89365082e+01, 7.22222233e+00, 4.93650770e+00, + 4.12698412e+00, 8.31746006e+00, 7.25396824e+00, 2.65238094e+01, + 1.09603172e+02, 5.25873032e+01, 8.19047642e+00, 5.50793648e+00, + 7.73015881e+00, 5.11111116e+00, 3.74603176e+00, 5.62857132e+01, + 1.46253967e+02, 5.13968239e+01, 3.14285707e+00, 5.63492060e+00, + 9.11111069e+00, 3.49206352e+00, 3.84126973e+00, 9.85714264e+01, + 1.18492065e+02, 7.33333349e+00, 3.36507940e+00, 1.16031742e+01, + 1.00476189e+01, 3.88888884e+00, 5.79365063e+00, 1.38730154e+01, + 3.88571434e+01, 3.37777786e+01, 1.13015871e+01, 3.66666675e+00, + 3., 1.34603176e+01, 8.71428585e+00, 1.52539682e+01, + 1.29809525e+02, 1.37714279e+02, 1.26666670e+01, 5.14285707e+00, + 9.98412704e+00, 1.13968258e+01, 2.90476179e+00, 6.87301588e+00, + 1.29253967e+02, 1.16904762e+02, 6.87301588e+00, 8.28571415e+00, + 1.70793648e+01, 16., 9.42857170e+00, 1.89523811e+01, + 3.46666679e+01, 1.80634918e+01, 1.01904764e+01, 2.30634918e+01, + 3.36666679e+01, 5.06349230e+00, 5.73015881e+00, 8.50793648e+00, + 2.21746025e+01, 3.44920616e+01, 1.48253965e+01, 5.06349230e+00, + 3.36507940e+00, 1.59841270e+01, 9.61904716e+00, 6.23809528e+00, + 4.19841270e+01, 1.42492065e+02, 4.02539673e+01, 6.11111116e+00, + 7.26984119e+00, 2.60158730e+01, 1.21746035e+01, 3.33333325e+00, + 2.87936516e+01, 1.07714287e+02, 3.29365082e+01, 8.42857170e+00, + 1.72222214e+01, 3.26984138e+01, 1.64603176e+01, 1.35873013e+01, + 1.57619047e+01, 2.61428566e+01, 1.99047623e+01, 1.95238094e+01, + 3.47301598e+01, 1.74655170e+01, 4.25862074e+00, 1.72413788e+01, + 9.14482727e+01, 4.16034470e+01, 6.31034470e+00, 2.74137926e+00, + 1.56724138e+01, 8.02758636e+01, 5.56896544e+00, 5.08620691e+00, + 6.28965530e+01, 4.79137917e+01, 4.36206913e+00, 2.20689654e+00, + 6.67931061e+01, 8.54827576e+01, 1.61379318e+01, 7.03448296e+00, + 2.12931042e+01, 3.27068977e+01, 9.89655209e+00, 7.87931013e+00, + 5.72586212e+01, 5.01034470e+01, 2.01206894e+01, 4.79310322e+00, + 2.60344839e+00, 3.77586198e+00, 4.34482765e+00, 9.34482765e+00, + 2.92068958e+01, 2.30172405e+01, 5.62068987e+00, 3.21896553e+01, + 8.63793106e+01, 1.50862064e+01, 7.75862098e-01, 9.94827557e+00, + 7.39827576e+01, 7.32241364e+01, 7.75862074e+00, 9.32758617e+00, + 5.40344810e+01, 2.83448277e+01, 6.22413778e+00, 1.28103447e+01, + 1.19068962e+02, 6.97068939e+01, 2.04827595e+01, 1.14827585e+01, + 2.08275871e+01, 2.26724129e+01, 1.66724129e+01, 2.27586212e+01, + 8.77931061e+01, 6.46034470e+01, 1.51724138e+01, 4.91379309e+00, + 2.05172420e+00, 3.32758617e+00, 5.77586222e+00, 1.91896553e+01, + 71., 1.64482765e+01, 5.36206913e+00, 1.48620691e+01, + 3.18103447e+01, 5.74137926e+00, 4.91379309e+00, 5.55344810e+01, + 1.16172417e+02, 3.65862083e+01, 1.20689659e+01, 9.98275852e+00, + 2.92413788e+01, 1.44655170e+01, 1.64827595e+01, 4.60172424e+01, + 1.02896553e+02, 6.32068977e+01, 1.46724138e+01, 5., + 6.41379309e+00, 6.12068987e+00, 1.37931032e+01, 5.40517235e+01, + 1.06982758e+02, 4.74827576e+01, 7.60344839e+00, 2.65517235e+00, + 1.37931037e+00, 1.87931037e+00, 4.13793087e+00, 2.69482765e+01, + 8.74482727e+01, 8.81034470e+00, 4.68965530e+00, 5.05172396e+00, + 7.32758617e+00, 4.70689678e+00, 1.34310341e+01, 6.70344849e+01, + 6.43965530e+01, 2.42413788e+01, 5.37931013e+00, 2.91379309e+00, + 3.79310346e+00, 3.82758617e+00, 1.35344830e+01, 7.21724167e+01, + 8.33448257e+01, 3.88103447e+01, 6.77586222e+00, 3.05172420e+00, + 2.20689654e+00, 3.27586198e+00, 8.74137974e+00, 5.41896553e+01, + 9.38448257e+01, 1.86896553e+01, 7.93103456e+00, 4.46551704e+00, + 2.87931037e+00, 3.98275852e+00, 6.29310322e+00, 1.66896553e+01, + 3.52413788e+01, 5.70512810e+01, 5.17051277e+01, 5.01282043e+01, + 5.70769234e+01, 3.96538467e+01, 2.07820511e+01, 2.94358978e+01, + 5.69102554e+01, 4.28461533e+01, 5.75128212e+01, 6.72435913e+01, + 5.95256424e+01, 4.59102554e+01, 3.58461533e+01, 3.68974342e+01, + 3.65000000e+01, 2.95897427e+01, 3.99871788e+01, 5.08974342e+01, + 4.68333321e+01, 3.86666679e+01, 3.06025639e+01, 2.80256405e+01, + 2.30128212e+01, 4.79487181e+00, 6.88461542e+00, 9.05128193e+00, + 8.06410217e+00, 5.96153831e+00, 4.78205109e+00, 5.03846169e+00, + 3.58974361e+00, 5.85384598e+01, 7.31410294e+01, 6.86666641e+01, + 4.92692299e+01, 3.60256424e+01, 2.60128212e+01, 2.55000000e+01, + 3.87820511e+01, 5.76153831e+01, 7.38461533e+01, 7.99743576e+01, + 6.93461533e+01, 5.35512810e+01, 3.87179489e+01, 3.48076935e+01, + 4.05000000e+01, 4.26923065e+01, 5.62948723e+01, 6.37307701e+01, + 5.63076935e+01, 4.48717957e+01, 3.11282043e+01, 2.93205128e+01, + 2.76794872e+01, 7.91025639e+00, 1.06153851e+01, 1.04743586e+01, + 6.98717928e+00, 5.71794891e+00, 4.75641012e+00, 5.06410265e+00, + 5.65384626e+00, 6.11538467e+01, 6.93205109e+01, 5.93461533e+01, + 4.50256424e+01, 3.61666679e+01, 2.52307701e+01, 2.93589745e+01, + 3.96666679e+01, 6.05512810e+01, 7.12179489e+01, 7.68205109e+01, + 7.36923065e+01, 5.80128212e+01, 3.57564087e+01, 3.23333321e+01, + 4.27179489e+01, 4.60256424e+01, 5.70256424e+01, 6.20256424e+01, + 6.01025658e+01, 4.53717957e+01, 3.20897446e+01, 2.91923084e+01, + 3.36666679e+01, 6.47435904e+00, 1.04871798e+01, 1.19102564e+01, + 7.78205109e+00, 6.43589735e+00, 5.46153831e+00, 5.01282072e+00, + 4.93589735e+00, 4.22948723e+01, 5.04487190e+01, 4.16794853e+01, + 3.66923065e+01, 3.22051277e+01, 2.13076916e+01, 1.91410255e+01, + 2.49487171e+01, 4.67692299e+01, 5.72051277e+01, 5.50641022e+01, + 5.17307701e+01, 4.48717957e+01, 2.96410255e+01, 2.49358978e+01, + 2.94871788e+01, 3.82179489e+01, 4.44358978e+01, 4.16282043e+01, + 3.74487190e+01, 3.13589745e+01, 2.57564106e+01, 2.06282043e+01, + 2.48846149e+01, 4.74358988e+00, 5.51282072e+00, 7.52564096e+00, + 5.83333349e+00, 4.82051277e+00, 6.32051277e+00, 3.33333325e+00, + 3.58974361e+00, 8.84210491e+00, 9.10526276e+00, 9.07017517e+00, + 1.31578951e+01, 1.64736843e+01, 2.18421059e+01, 1.89298248e+01, + 9.10526276e+00, 8.63157940e+00, 9.15789509e+00, 1.14385967e+01, + 16., 1.99122810e+01, 2.48070183e+01, 1.94035091e+01, + 1.02280703e+01, 7.10526323e+00, 7.26315784e+00, 1.09473686e+01, + 1.66666660e+01, 1.98771935e+01, 2.17017536e+01, 1.61052628e+01, + 7.77192974e+00, 4.33333349e+00, 4.78947353e+00, 8.21052647e+00, + 1.36315794e+01, 1.49824562e+01, 1.22982454e+01, 1.06491232e+01, + 6.80701733e+00, 1.82280693e+01, 3.07368412e+01, 3.66491241e+01, + 3.36491241e+01, 3.46315804e+01, 2.84210529e+01, 2.03859653e+01, + 1.69298248e+01, 2.06842098e+01, 3.15263157e+01, 3.81578941e+01, + 4.57719307e+01, 4.68070183e+01, 3.36842117e+01, 1.87894745e+01, + 1.38771935e+01, 1.68421059e+01, 2.61754379e+01, 3.52456131e+01, + 3.71403503e+01, 3.53508759e+01, 3.41578941e+01, 2.39649124e+01, + 1.25263157e+01, 7.33333349e+00, 1.13684206e+01, 1.99649124e+01, + 2.67894745e+01, 3.20877190e+01, 2.97017536e+01, 1.94561405e+01, + 8.70175457e+00, 1.23508768e+01, 7.80701752e+01, 1.07912277e+02, + 4.24561386e+01, 2.76140347e+01, 4.59473686e+01, 3.36140366e+01, + 8.70175457e+00, 17., 6.97192993e+01, 9.43157883e+01, + 5.60877190e+01, 4.31228065e+01, 4.09824562e+01, 26., + 1.32631578e+01, 2.23333340e+01, 5.71754379e+01, 7.53333359e+01, + 4.52807007e+01, 3.08245621e+01, 2.61754379e+01, 1.82807026e+01, + 1.49122810e+01, 1.08245611e+01, 2.35438595e+01, 3.72105255e+01, + 3.53684196e+01, 3.01754379e+01, 1.95964909e+01, 1.21228065e+01, + 8.56140327e+00, 3.26315784e+00, 85., 1.15947365e+02, + 1.99473686e+01, 1.32807016e+01, 9.60877228e+01, 1.02982452e+02, + 2.96491218e+00, 5.35087729e+00, 9.70175476e+01, 1.17736839e+02, + 2.23157902e+01, 1.27192984e+01, 8.94210510e+01, 8.99824524e+01, + 4.68421030e+00, 1.12456141e+01, 9.00877228e+01, 1.08526314e+02, + 2.54385967e+01, 1.73333340e+01, 5.67017555e+01, 5.67017555e+01, + 8.15789509e+00, 9.05263138e+00, 4.84210510e+01, 7.08947372e+01, + 2.51929817e+01, 1.69122810e+01, 2.21403503e+01, 1.99649124e+01, + 5.54385948e+00, 1.09943665e+02, 3.10704231e+01, 1.38028169e+00, + 5.94366217e+00, 8.23943634e+01, 2.48732395e+01, 1.57746482e+00, + 6.95774651e+00, 3.88309860e+01, 1.78169022e+01, 4.81690121e+00, + 8.23943615e+00, 9.54225388e+01, 3.23380280e+01, 2.14084506e+00, + 1.27887325e+01, 4.49014091e+01, 3.56901398e+01, 7.38028193e+00, + 1.97183096e+00, 2.09859157e+00, 3.54929566e+00, 3.21126771e+00, + 1.83661976e+01, 4.50704231e+01, 4.18450699e+01, 1.14366198e+01, + 4.97183084e+00, 5.32394361e+00, 6.66197205e+00, 7.18309879e+00, + 1.63521118e+01, 1.05154930e+02, 8.37887344e+01, 2., + 3.21126771e+00, 5.07746468e+01, 4.15774651e+01, 3.97183108e+00, + 3.39436626e+00, 5.50563393e+01, 5.47464790e+01, 6.19718313e+00, + 3.49295783e+00, 1.08929581e+02, 1.13239433e+02, 2.85915494e+00, + 5.26760578e+00, 3.50563393e+01, 4.96619720e+01, 1.72816906e+01, + 3.87323952e+00, 8.30985928e+00, 1.64788723e+01, 1.74647892e+00, + 9.04225349e+00, 3.11690140e+01, 6.34788742e+01, 2.72535210e+01, + 5.25352097e+00, 2.32394361e+00, 1.74647892e+00, 2.09859157e+00, + 5.18309879e+00, 4.32676048e+01, 7.03098602e+01, 2.64788723e+00, + 3.70422530e+00, 1.86619720e+01, 2.44366188e+01, 6.94366217e+00, + 2.32394361e+00, 5.85070419e+01, 1.22028168e+02, 8.38028145e+00, + 2.35211277e+00, 6.28028183e+01, 1.24098595e+02, 7.25352097e+00, + 2.36619711e+00, 1.74225349e+01, 4.86056328e+01, 1.72112675e+01, + 3.77464795e+00, 2.00140839e+01, 1.13746475e+02, 1.86338024e+01, + 3.78873229e+00, 1.54084511e+01, 3.73521118e+01, 2.84084511e+01, + 6.40845060e+00, 1.71830988e+00, 1.37323942e+01, 7.57746458e+00, + 2.36619711e+00, 3.35211277e+00, 10., 1.78873241e+00, + 2.90140843e+00, 1.43661976e+01, 2.08309860e+01, 6.60563374e+00, + 1.91549301e+00, 1.55492954e+01, 1.10028168e+02, 1.50563383e+01, + 2.39436626e+00, 1.42676058e+01, 4.73098602e+01, 7.47887325e+00, + 1.74647892e+00, 5.88732386e+00, 1.11859154e+02, 4.23098602e+01, + 1.56338024e+00, 8., 1.16774651e+02, 3.89577446e+01, + 1.50704229e+00, 3.95774651e+00, 3.48873253e+01, 3.06338024e+01, + 2.42253518e+00, 1.70422530e+00, 8.44507065e+01, 7.10704193e+01, + 1.53521132e+00, 9.96470547e+00, 2.82823524e+01, 2.71058826e+01, + 1.05764704e+01, 2.13176479e+01, 8.18117676e+01, 3.85411758e+01, + 6.25882339e+00, 1.46117649e+01, 2.11294117e+01, 3.48470573e+01, + 2.46941185e+01, 1.79529419e+01, 2.29529419e+01, 3.87882347e+01, + 1.76588230e+01, 1.67999992e+01, 1.17647057e+01, 2.27999992e+01, + 1.79058819e+01, 1.11999998e+01, 8.41176510e+00, 3.50117645e+01, + 5.46588249e+01, 3.72705879e+01, 4.88235283e+00, 7.84705877e+00, + 1.36470585e+01, 8.61176491e+00, 4.44705868e+00, 2.89882355e+01, + 1.22070587e+02, 3.18823528e+00, 9.02352905e+00, 8.50588226e+00, + 3.70588231e+00, 9.10588264e+00, 1.38117645e+02, 1.32976471e+02, + 7.22352934e+00, 4.08235312e+00, 6.32941198e+00, 9.67058849e+00, + 5.71764708e+00, 5.41176462e+00, 8.21294098e+01, 1.48047058e+02, + 3.92823524e+01, 8.24705887e+00, 5.23529434e+00, 7.55294132e+00, + 7.36470604e+00, 3.41176462e+00, 1.18470592e+01, 1.46447052e+02, + 1.34141174e+02, 1.44941177e+01, 5.36470604e+00, 6.95294094e+00, + 1.41647062e+01, 6.47058821e+00, 1.01411762e+01, 9.49882355e+01, + 1.38141174e+02, 4.16470575e+00, 4.15294123e+00, 3.84705877e+00, + 3.35294127e+00, 8.43529415e+00, 4.21294136e+01, 6.37999992e+01, + 1.71764698e+01, 6.90588236e+00, 4.17647076e+00, 4.45882368e+00, + 3.12941170e+00, 1.00470591e+01, 5.10470581e+01, 1.16400002e+02, + 3.36823540e+01, 1.16117649e+01, 3.90588236e+00, 4.95294094e+00, + 5.56470585e+00, 8.27058792e+00, 2.53176479e+01, 9.70352936e+01, + 5.87294121e+01, 1.04823532e+01, 5.90588236e+00, 5.67058802e+00, + 7.03529406e+00, 7.12941170e+00, 1.61294117e+01, 4.45529404e+01, + 3.68352928e+01, 1.96470582e+00, 1.32941175e+00, 9.29411769e-01, + 1.36470592e+00, 2.69411755e+00, 7.10588217e+00, 1.41411762e+01, + 7.18823528e+00, 3.59999990e+00, 1.34117651e+00, 1.04705882e+00, + 2.51764703e+00, 5.16470575e+00, 9.92941189e+00, 1.53529415e+01, + 1.16705885e+01, 4.31764698e+00, 1.50588238e+00, 9.52941179e-01, + 1.39999998e+00, 4.03529406e+00, 1.09294119e+01, 1.41176472e+01, + 1.01176472e+01, 3.56470585e+00, 1.38823533e+00, 1., + 1.39999998e+00, 3.27058816e+00, 6.52941179e+00, 1.10470591e+01, + 7.10588217e+00, 5.53225803e+00, 1.72580647e+00, 1.37096775e+00, + 1.67741930e+00, 2.22580647e+00, 2.58064508e+00, 3.17741942e+00, + 2.56451607e+00, 5.87096786e+00, 2.20967746e+00, 1.95161295e+00, + 3.08064508e+00, 2.83870959e+00, 2.43548393e+00, 3.38709688e+00, + 3.59677410e+00, 2.88709688e+00, 2.04838705e+00, 1.85483873e+00, + 2.38709688e+00, 2.62903237e+00, 3.56451607e+00, 4.75806475e+00, + 3.03225803e+00, 1.85483873e+00, 1.17741930e+00, 1.20967746e+00, + 1.70967746e+00, 2.64516139e+00, 4.82258081e+00, 8.33870983e+00, + 2.22580647e+00, 1.03225803e+01, 6.17741919e+00, 7.69354820e+00, + 8.22580624e+00, 8.01612949e+00, 9.82258034e+00, 1.40322580e+01, + 1.00806456e+01, 1.38870964e+01, 9.43548393e+00, 1.23870964e+01, + 1.07741938e+01, 9.35483837e+00, 1.01290321e+01, 1.31451616e+01, + 1.31612902e+01, 9.53225803e+00, 1.09032259e+01, 1.84032249e+01, + 1.23387098e+01, 8.85483837e+00, 9.16129017e+00, 1.25806456e+01, + 1.02096777e+01, 5.09677410e+00, 9.46774197e+00, 1.99838715e+01, + 1.30806456e+01, 9.67741966e+00, 7.95161295e+00, 1.08870964e+01, + 6.66129017e+00, 8.41935444e+00, 7., 2.20967751e+01, + 1.84838715e+01, 9.29032230e+00, 9.88709641e+00, 1.18548384e+01, + 1.12096777e+01, 8.35483837e+00, 9.98387051e+00, 5.20967751e+01, + 3.61774178e+01, 9.91935444e+00, 1.20322580e+01, 1.92096767e+01, + 1.49838705e+01, 6.24193525e+00, 1.12258062e+01, 7.84677429e+01, + 4.95806465e+01, 8.75806427e+00, 8.88709641e+00, 3.55161285e+01, + 1.71451607e+01, 1.05000000e+01, 1.30161295e+01, 7.37741928e+01, + 4.57741928e+01, 8.54838753e+00, 7.66129017e+00, 4.33225822e+01, + 3.04677410e+01, 7.93548393e+00, 6.38709688e+00, 4.29193535e+01, + 3.76935501e+01, 8.50000000e+00, 6.83870983e+00, 8.16612930e+01, + 5.76612892e+01, 7.40322590e+00, 7.98387098e+00, 9.06451645e+01, + 5.91290321e+01, 6.85483885e+00, 1.66129036e+01, 1.55129028e+02, + 1.26112900e+02, 3.37096763e+00, 1.01129036e+01, 1.18806450e+02, + 5.14193535e+01, 5.20967722e+00, 4.41774178e+01, 1.62096771e+02, + 1.24725807e+02, 1.43387098e+01, 1.36290321e+01, 1.01016129e+02, + 4.72903214e+01, 7.83870983e+00, 4.55967751e+01, 1.60500000e+02, + 1.18580643e+02, 2.87179494e+00, 2.02564096e+00, 2.89743590e+00, + 3.53846145e+00, 6.12820530e+00, 7.66666651e+00, 8.35897446e+00, + 5.61538458e+00, 3.88717957e+01, 1.15897436e+01, 3.56410265e+00, + 9.76923084e+00, 6.41794891e+01, 2.74102573e+01, 9., + 6.97435904e+00, 1.14615387e+02, 2.87948723e+01, 5.38461566e-01, + 7.84615374e+00, 9.18717957e+01, 3.08461533e+01, 4.84615374e+00, + 1.74102573e+01, 8.83589706e+01, 2.52564106e+01, 7.43589759e-01, + 5.30769253e+00, 1.14435898e+02, 3.90256424e+01, 4.02564096e+00, + 1.13076925e+01, 4.33333349e+00, 3.46153855e+00, 3.30769229e+00, + 5.20512819e+00, 8.23076916e+00, 9.53846169e+00, 1.06923075e+01, + 7.56410265e+00, 3.96923065e+01, 1.06410255e+01, 3.07692313e+00, + 2.70256405e+01, 7.85897446e+01, 3.31025658e+01, 1.37692308e+01, + 1.56923075e+01, 1.24282051e+02, 3.39743576e+01, 3.53846145e+00, + 1.71794872e+01, 9.16923065e+01, 3.46153831e+01, 1.07692308e+01, + 4.47948723e+01, 9.64615402e+01, 3.33846169e+01, 5.02564096e+00, + 1.34615383e+01, 1.23641029e+02, 6.66923065e+01, 1.04102564e+01, + 1.46153851e+01, 6.79487181e+00, 5.38461542e+00, 5.64102554e+00, + 1.18461542e+01, 1.33589745e+01, 6.76923084e+00, 8.46153831e+00, + 8.10256386e+00, 4.83076935e+01, 6.02564096e+00, 5.25641012e+00, + 4.98461533e+01, 7.32307663e+01, 1.82051277e+01, 1.79743595e+01, + 5.79230766e+01, 1.03769234e+02, 1.80769234e+01, 1.63589745e+01, + 3.13076916e+01, 5.59230766e+01, 3.00512829e+01, 2.72820511e+01, + 9.91025620e+01, 5.02051277e+01, 2.46153851e+01, 1.89230766e+01, + 19., 8.29230804e+01, 8.92051315e+01, 3.86666679e+01, 18., + 1.02820511e+01, 4.53846169e+00, 4.35897446e+00, 9.97435856e+00, + 2.11538467e+01, 6.48717928e+00, 6.51282072e+00, 8.30769253e+00, + 8.54102554e+01, 9.84615421e+00, 6.17948723e+00, 2.98974361e+01, + 6.07692299e+01, 1.27179489e+01, 8.07692337e+00, 4.60769234e+01, + 6.40256424e+01, 2.57948723e+01, 2.07435894e+01, 2.85641022e+01, + 2.97948723e+01, 1.65897427e+01, 1.64102573e+01, 5.06666679e+01, + 1.33333330e+01, 19., 1.87435894e+01, 2.16153851e+01, + 2.97948723e+01, 3.01025639e+01, 2.24358978e+01, 1.02820511e+01, + 3.55882359e+00, 8.42058792e+01, 4.88088226e+01, 1.57352936e+00, + 7.19117641e+00, 2.77205887e+01, 1.83382359e+01, 3.95588231e+00, + 1.61470585e+01, 1.22661766e+02, 2.76617641e+01, 1.95588231e+00, + 1.23823528e+01, 1.08176468e+02, 2.37500000e+01, 2.08823538e+00, + 1.39411764e+01, 4.29411774e+01, 8.08823490e+00, 3.10294127e+00, + 3.62500000e+01, 1.11985291e+02, 7.75000000e+00, 2.27941179e+00, + 1.28970585e+01, 2.22500000e+01, 7.86764717e+00, 2.61764717e+00, + 1.28676472e+01, 6.77941179e+00, 2.02941179e+00, 2.51470590e+00, + 4.30882359e+00, 9.91176510e+00, 3.75000000e+00, 3.79411769e+00, + 2.30441170e+01, 3.45735283e+01, 2.13823528e+01, 6.57352924e+00, + 4.12352943e+01, 1.13264709e+02, 9.64705849e+00, 4.26470566e+00, + 2.66911774e+01, 3.85441170e+01, 1.18529415e+01, 4.85294104e+00, + 7.89558792e+01, 1.20044121e+02, 5.85294104e+00, 3.30882359e+00, + 9.06617661e+01, 1.21485291e+02, 4.89705896e+00, 2.58823538e+00, + 1.62205887e+01, 2.08088226e+01, 5.64705896e+00, 2.36764717e+00, + 5.02794113e+01, 5.27941170e+01, 5.98529434e+00, 4.42647076e+00, + 2.44117641e+00, 1.55882359e+00, 3.22058821e+00, 8.61764717e+00, + 3.88088226e+01, 4.50147057e+01, 2.43823528e+01, 4.25000000e+00, + 2.02647057e+01, 1.93823528e+01, 1.94117641e+00, 1.13529415e+01, + 4.28235283e+01, 3.09852943e+01, 1.72205887e+01, 5.38235283e+00, + 1.21750000e+02, 1.09235291e+02, 2.45588231e+00, 5.25000000e+00, + 8.11470566e+01, 5.23676453e+01, 6., 6.36764717e+00, + 3.53970604e+01, 2.10147057e+01, 2.44117641e+00, 2.86764717e+00, + 1.04294121e+02, 6.50882339e+01, 8.76470566e+00, 5.77941179e+00, + 1.76470590e+00, 1.45588231e+00, 3.51470590e+00, 1.77058830e+01, + 4.46176453e+01, 3.53382339e+01, 1.45588236e+01, 3.02941179e+00, + 5.73529434e+00, 1.79411769e+00, 2.36764717e+00, 1.86176472e+01, + 4.08088226e+01, 2.29117641e+01, 1.10735292e+01, 4.10294104e+00, + 1.17661766e+02, 2.75588226e+01, 1.47058821e+00, 1.06029415e+01, + 5.72941170e+01, 1.27647057e+01, 5.29411745e+00, 1.77205887e+01, + 5.68970604e+01, 1.23529415e+01, 1.05882359e+00, 8.01470566e+00, + 1.11029411e+02, 2.33235302e+01, 2.47058821e+00, 6.63235283e+00, + 1.09986839e+02, 3.11842108e+00, 6.03947353e+00, 4.85394745e+01, + 4.31052628e+01, 6.03947353e+00, 8.89473724e+00, 1.16289474e+02, + 9.60657883e+01, 7.55263138e+00, 4.11842108e+00, 1.27828949e+02, + 1.39592102e+02, 5.53947353e+00, 8.90789509e+00, 8.65263138e+01, + 3.44736824e+01, 1.27763157e+01, 4.06578970e+00, 2.44078941e+01, + 2.65394745e+01, 2.77631569e+00, 5.78947353e+00, 2.46710529e+01, + 9.56578922e+00, 2.44736838e+00, 1.14473689e+00, 5.39473712e-01, + 3.42105269e-01, 3.81578952e-01, 1.26315784e+00, 6.10526323e+00, + 9.10131607e+01, 6.21052647e+00, 1.49078951e+01, 138., + 7.19078979e+01, 3.57894731e+00, 1.05263157e+01, 1.40342102e+02, + 4.43552628e+01, 9.21052647e+00, 6.56578970e+00, 1.40052628e+02, + 1.08644737e+02, 3.78947377e+00, 8.05263138e+00, 5.84736824e+01, + 4.41184196e+01, 1.16184206e+01, 3.78947377e+00, 5.01315784e+00, + 4.43421030e+00, 2.93421054e+00, 8.89473724e+00, 3.97105255e+01, + 1.05657892e+01, 2.59210515e+00, 8.15789461e-01, 5.52631557e-01, + 4.07894731e-01, 5.13157904e-01, 1.56578946e+00, 8., + 1.90921059e+01, 6.39473677e+00, 3.25394745e+01, 1.40631577e+02, + 3.82894745e+01, 3.64473677e+00, 1.49078951e+01, 8.17894745e+01, + 3.20394745e+01, 8.14473724e+00, 5.59210539e+00, 4.49605255e+01, + 1.51052628e+01, 4.23684216e+00, 1.75000000e+01, 5.42500000e+01, + 3.46184196e+01, 7.80263138e+00, 3.26315784e+00, 1.94736838e+00, + 1.77631581e+00, 3.03947377e+00, 1.15921049e+01, 4.33552628e+01, + 7.44736862e+00, 1.69736838e+00, 8.68421078e-01, 6.84210539e-01, + 6.97368443e-01, 7.36842096e-01, 1.98684216e+00, 7.69736862e+00, + 1.10789471e+01, 3.35526323e+00, 6.93421030e+00, 3.28289490e+01, + 6.26315784e+00, 3.65789485e+00, 1.71710529e+01, 2.95000000e+01, + 1.90921059e+01, 5.09210539e+00, 2.30263162e+00, 1.90789473e+00, + 1.81578946e+00, 3.81578946e+00, 1.69605255e+01, 4.50657883e+01, + 1.79342098e+01, 4.19736862e+00, 2.57894731e+00, 1.82894742e+00, + 1.81578946e+00, 3.68421054e+00, 9.35526276e+00, 2.72236843e+01, + 3.35526323e+00, 8.42105269e-01, 5.65789461e-01, 4.86842096e-01, + 5.92105269e-01, 7.36842096e-01, 1.30263162e+00, 4.28947353e+00, + 4.37419357e+01, 5.81612892e+01, 1.01129036e+01, 2.20967746e+00, + 1.17580643e+01, 1.89677410e+01, 5.25806475e+00, 5.79032278e+00, + 6.39193535e+01, 6.62419357e+01, 3.75806451e+00, 3.22580647e+00, + 4.18064499e+01, 7.17580643e+01, 1.23548384e+01, 1.27580643e+01, + 1.56451616e+01, 2.07903233e+01, 2.37096763e+00, 4.83870983e+00, + 7.17903214e+01, 9.24354858e+01, 7.16129017e+00, 4.53225803e+00, + 7.98387098e+00, 9.62903214e+00, 2.90322590e+00, 3.75806451e+00, + 9.25806427e+00, 1.28709679e+01, 1.04354839e+01, 3.75806451e+00, + 2.17741928e+01, 3.94193535e+01, 1.16451616e+01, 2.85483861e+00, + 1.57096777e+01, 2.88064518e+01, 6.32258081e+00, 4.54838705e+00, + 1.06725807e+02, 122., 6.33870983e+00, 1.40322578e+00, + 2.96774197e+01, 5.17741928e+01, 5.12903214e+00, 6.59677410e+00, + 3.71612892e+01, 4.82903214e+01, 1.98387098e+00, 2.20967746e+00, + 1.04612900e+02, 1.19612900e+02, 3.85483861e+00, 4.32258081e+00, + 1.92903233e+01, 2.45161285e+01, 3.50000000e+00, 4.25806475e+00, + 3.02258072e+01, 47., 9.43548393e+00, 3.74193549e+00, + 7.38709688e+00, 8.72580624e+00, 5.45161295e+00, 2.67741942e+00, + 9.03225803e+00, 1.68870964e+01, 7.59677410e+00, 7.16129017e+00, + 8.85806427e+01, 1.14500000e+02, 3.77419353e+00, 1.53225803e+00, + 2.86612911e+01, 5.29193535e+01, 5.16129017e+00, 4.87096786e+00, + 9.25000000e+01, 1.09354836e+02, 1.01612902e+00, 9.35483873e-01, + 7.26128998e+01, 1.04774193e+02, 2.74193549e+00, 2.75806451e+00, + 2.15000000e+01, 2.60322590e+01, 2.24193549e+00, 2.22580647e+00, + 7.30806427e+01, 1.06967743e+02, 4.91935492e+00, 2.56451607e+00, + 4.51612902e+00, 4.01612902e+00, 3.35483861e+00, 2.66129041e+00, + 3.82258058e+00, 5.09677410e+00, 5.30645180e+00, 5.62903214e+00, + 3.02096767e+01, 3.09193554e+01, 4.19354820e+00, 2.62903237e+00, + 1.95322590e+01, 3.21451607e+01, 5.51612902e+00, 6.01612902e+00, + 9.70161285e+01, 1.15693550e+02, 3.82258058e+00, 2.98387098e+00, + 2.68548393e+01, 4.35967751e+01, 3., 3.58064508e+00, + 2.07741928e+01, 3.77741928e+01, 5.04838705e+00, 6.53225803e+00, + 7.10645142e+01, 9.50161285e+01, 6.88709688e+00, 2., + 2.56603765e+00, 1.77358496e+00, 1.33962262e+00, 1.77358496e+00, + 1.98113203e+00, 2.35849047e+00, 3.50943398e+00, 2.37735844e+00, + 9.39622688e+00, 6.32075453e+00, 4.83018875e+00, 4.98113203e+00, + 6.90566015e+00, 8.79245281e+00, 1.14716978e+01, 8.77358532e+00, + 9.92452812e+00, 7.69811344e+00, 5.81132078e+00, 6.39622641e+00, + 7.98113203e+00, 9.26415062e+00, 1.11698112e+01, 9.86792469e+00, + 6.30188656e+00, 5.56603765e+00, 5.03773594e+00, 6.30188656e+00, + 6.75471687e+00, 7., 9.43396187e+00, 7.33962250e+00, + 8.90566063e+00, 4.90566015e+00, 3.50943398e+00, 4.35849047e+00, + 4.58490562e+00, 5.58490562e+00, 7.39622641e+00, 5.32075453e+00, + 1.53962269e+01, 1.25849056e+01, 9.69811344e+00, 1.19622641e+01, + 1.66037731e+01, 1.80377350e+01, 1.92641506e+01, 1.43773584e+01, + 1.61698112e+01, 1.40943394e+01, 1.19245281e+01, 1.60566044e+01, + 1.88867931e+01, 1.78867931e+01, 2.14150944e+01, 1.72452831e+01, + 1.06603775e+01, 8.88679218e+00, 1.63396225e+01, 2.19245281e+01, + 1.42452831e+01, 1.41320753e+01, 1.86981125e+01, 1.56226416e+01, + 9., 5.49056625e+00, 4.47169828e+00, 4.73584890e+00, + 6.90566015e+00, 7.52830172e+00, 7.75471687e+00, 5.81132078e+00, + 1.69622650e+01, 1.36792450e+01, 1.56037731e+01, 2.06603775e+01, + 2.33396225e+01, 2.00188675e+01, 1.70943394e+01, 1.48679247e+01, + 1.60943394e+01, 1.23018866e+01, 4.36037750e+01, 7.05660400e+01, + 2.41320763e+01, 1.71509438e+01, 2.57924538e+01, 2.34905663e+01, + 1.00943394e+01, 6.77358484e+00, 8.42452850e+01, 1.10018867e+02, + 1.40754719e+01, 6.88679266e+00, 6.14150925e+01, 7.81320724e+01, + 6.24528313e+00, 3.32075477e+00, 9.15094376e+00, 1.25094337e+01, + 6.69811344e+00, 4.96226406e+00, 5.81132078e+00, 4.96226406e+00, + 1.70754719e+01, 8.20754719e+00, 3.85094337e+01, 7.22264175e+01, + 2.23584900e+01, 1.14905663e+01, 3.14716988e+01, 5.67169800e+01, + 2.05849056e+01, 7.90566015e+00, 7.48113174e+01, 1.24547173e+02, + 2.42830181e+01, 8.01886749e+00, 1.50377365e+02, 1.71528305e+02, + 1.31509438e+01, 6.94339609e+00, 1.04245285e+02, 1.16943398e+02, + 1.19245281e+01, 1.66226406e+01, 1.70943390e+02, 1.68584900e+02, + 1.72131145e+00, 2.95081973e+00, 3.32786894e+00, 2.19672132e+00, + 2.27868843e+00, 7.08196735e+00, 4.45901632e+00, 2.06557369e+00, + 2.44262290e+00, 3.59016395e+00, 2.63934422e+00, 2.70491815e+00, + 4.47540998e+00, 6.06557369e+00, 4.18032789e+00, 2.13114762e+00, + 2.37704921e+00, 2.31147552e+00, 2.24590158e+00, 3.21311474e+00, + 9.88524628e+00, 5.13114738e+00, 6.45901632e+00, 2.21311474e+00, + 2.49180317e+00, 1.80327868e+00, 1.75409842e+00, 2., + 3.91803288e+00, 3.26229501e+00, 8.26229477e+00, 3.16393447e+00, + 4.75409842e+00, 1.74098358e+01, 2.28852463e+01, 5.08196735e+00, + 5.34426212e+00, 3.67377052e+01, 4.78524590e+01, 9.59016418e+00, + 5.54098368e+00, 1.88196716e+01, 2.45081959e+01, 6.22950840e+00, + 1.30327873e+01, 3.02295074e+01, 2.75901642e+01, 1.01475410e+01, + 5.54098368e+00, 1.21967211e+01, 1.50819674e+01, 7.98360634e+00, + 14., 19., 1.73606548e+01, 9.22950840e+00, 1.01475410e+01, + 6.57377052e+00, 8.59016418e+00, 6.04918051e+00, 6.63934422e+00, + 7.77049160e+00, 1.53770494e+01, 8.60655785e+00, 1.15573769e+01, + 4.37377052e+01, 5.25081978e+01, 4.19672108e+00, 4.88524580e+00, + 8.08032761e+01, 1.14081970e+02, 1.48524590e+01, 6.54098368e+00, + 3.61803284e+01, 4.53606567e+01, 3.86885238e+00, 1.01147537e+01, + 1.15065575e+02, 1.25295082e+02, 9.11475372e+00, 4.16393423e+00, + 3.11311474e+01, 3.98524590e+01, 6.01639366e+00, 9.11475372e+00, + 1.02262299e+02, 1.25508194e+02, 8.67213154e+00, 6.37704897e+00, + 2.07213116e+01, 2.88196716e+01, 7.04918051e+00, 6.73770475e+00, + 4.26721306e+01, 7.14590149e+01, 1.53934422e+01, 5.70491791e+00, + 8.30819702e+01, 1.08655739e+02, 9.36065578e+00, 2.36065578e+00, + 20., 3.73606567e+01, 5.50819683e+00, 4.95081949e+00, + 1.09377052e+02, 1.25065575e+02, 5.78688526e+00, 2.24590158e+00, + 4.26721306e+01, 7.11639328e+01, 4.96721315e+00, 4.40983629e+00, + 9.24754105e+01, 106., 2.70491815e+00, 6.81967211e+00, + 8.26065598e+01, 1.07180328e+02, 4.93442631e+00, 3., + 3.63442612e+01, 5.36393433e+01, 5.70491791e+00, 8.14754105e+00, + 8.53114777e+01, 1.05557381e+02, 7.14754105e+00, 8.23815765e+01, + 2.10263157e+01, 2.64210529e+01, 1.06026314e+02, 4.76578941e+01, + 6.07894754e+00, 2.63026314e+01, 1.16118423e+02, 8.51710510e+01, + 4.76578941e+01, 3.26184196e+01, 4.39605255e+01, 2.08289471e+01, + 1.45526314e+01, 4.44868431e+01, 1.03368423e+02, 4.79342117e+01, + 4.74868431e+01, 3.60526314e+01, 3.29473686e+01, 2.40263157e+01, + 2.11842098e+01, 3.25263176e+01, 5.06710510e+01, 2.35000000e+01, + 2.87105255e+01, 2.95263157e+01, 2.98289471e+01, 2.13815784e+01, + 1.46184206e+01, 1.73947372e+01, 2.04736843e+01, 9.53552628e+01, + 4.93815804e+01, 3.10394745e+01, 5.07500000e+01, 3.08289471e+01, + 1.75263157e+01, 3.66973686e+01, 1.08605263e+02, 7.75921021e+01, + 7.03157883e+01, 4.67236824e+01, 3.04210529e+01, 2.05921059e+01, + 1.97763157e+01, 3.65789490e+01, 6.74868393e+01, 4.56184196e+01, + 6.00526314e+01, 5.95657883e+01, 5.06578941e+01, 3.41184196e+01, + 2.36578941e+01, 2.50131588e+01, 3.19078941e+01, 3.37631569e+01, + 3.85526314e+01, 4.13815804e+01, 3.24078941e+01, 2.26315784e+01, + 1.64736843e+01, 1.83026314e+01, 2.44210529e+01, 6.85394745e+01, + 4.77500000e+01, 3.09078941e+01, 2.01315784e+01, 1.62631588e+01, + 1.98026314e+01, 3.48684196e+01, 6.87368393e+01, 5.36578941e+01, + 5.60394745e+01, 5.04342117e+01, 4.63552628e+01, 2.93026314e+01, + 1.95394745e+01, 2.97894745e+01, 4.33684196e+01, 4.46842117e+01, + 5.68289490e+01, 5.85394745e+01, 5.04605255e+01, 3.57236824e+01, + 2.26447372e+01, 2.45131588e+01, 3.03421059e+01, 3.50526314e+01, + 4.32500000e+01, 3.63684196e+01, 2.28157902e+01, 2.09605255e+01, + 1.78157902e+01, 1.67631588e+01, 2.14210529e+01, 2.75263157e+01, + 2.31973686e+01, 1.79473686e+01, 1.40394735e+01, 1.01052628e+01, + 9.30263138e+00, 1.43157892e+01, 2.28684216e+01, 2.51710529e+01, + 2.57236843e+01, 2.64473686e+01, 2.73947372e+01, 2.12631588e+01, + 1.50789471e+01, 1.42105265e+01, 1.86578941e+01, 2.66710529e+01, + 3.47368431e+01, 2.67105255e+01, 2.13815784e+01, 2.15263157e+01, + 1.53947372e+01, 1.49078951e+01, 1.55789471e+01, 1.72500000e+01, + 2.37631588e+01, 2.18684216e+01, 1.54736843e+01, 1.63157902e+01, + 1.09078951e+01, 7.28947353e+00, 8.59210491e+00, 2.80612240e+01, + 5.40612259e+01, 1.48775511e+01, 4.02040815e+00, 1.37755098e+01, + 2.76122456e+01, 8.75510216e+00, 4.26530600e+00, 62., 99., + 2.76326523e+01, 1.03469391e+01, 2.26734695e+01, 3.37755089e+01, + 1.55510206e+01, 1.83469391e+01, 3.01428566e+01, 3.61836739e+01, + 1.90816326e+01, 1.57755098e+01, 1.78571434e+01, 2.96326523e+01, + 3.70204086e+01, 2.78571434e+01, 2.24489803e+01, 1.67346935e+01, + 1.02448978e+01, 9.61224461e+00, 2.37755108e+01, 3.95510216e+01, + 3.56530609e+01, 2.03877544e+01, 9.40816307e+00, 2.56938782e+01, + 6.89795923e+00, 2.97959185e+00, 1.42448978e+01, 4.42448997e+01, + 1.03265305e+01, 4., 4.60204086e+01, 1.28510208e+02, + 3.13877544e+01, 4.57142878e+00, 3.36122437e+01, 9.53673477e+01, + 1.96938782e+01, 5.32653046e+00, 4.86938782e+01, 1.26979591e+02, + 7.29183655e+01, 1.60408173e+01, 1.53469391e+01, 5.07142868e+01, + 2.91224499e+01, 1.80816326e+01, 2.57142849e+01, 5.98775520e+01, + 7.04081650e+01, 2.79387760e+01, 1.97551022e+01, 3.00612240e+01, + 3.24693871e+01, 2.71632652e+01, 7.38775492e+00, 8.55102062e+00, + 8.59183693e+00, 5.36734676e+00, 4.14285707e+00, 1.02448978e+01, + 6.18367338e+00, 5.75510216e+00, 1.42448978e+01, 4.76734695e+01, + 2.18979588e+01, 8.26530647e+00, 1.94489803e+01, 8.48367310e+01, + 2.54285717e+01, 8.18367386e+00, 1.25918369e+01, 1.13918365e+02, + 8.34285736e+01, 1.29183674e+01, 1.68163261e+01, 1.04265305e+02, + 5.92244911e+01, 5.55102062e+00, 1.87142849e+01, 1.21877548e+02, + 1.16734695e+02, 2.74081631e+01, 1.52040815e+01, 7.09591827e+01, + 4.36122437e+01, 8.02040863e+00, 4.26530600e+00, 3.57142854e+00, + 5.73469400e+00, 5.71428585e+00, 2.71428561e+00, 1.87755108e+00, + 3.08163261e+00, 3.93877554e+00, 1.22448978e+01, 1.30612249e+01, + 1.52857141e+01, 1.11428576e+01, 6.87755108e+00, 1.02857141e+01, + 6.48979568e+00, 7.73469400e+00, 8.14285755e+00, 1.45510206e+01, + 1.77959175e+01, 1.22040815e+01, 1.06326532e+01, 3.92653046e+01, + 2.42244892e+01, 4.89795923e+00, 1.15102043e+01, 4.12448997e+01, + 2.45102043e+01, 7.71428585e+00, 1.34693880e+01, 6.76938782e+01, + 3.24285698e+01, 3.36734700e+00, 6.79047623e+01, 1.25952377e+01, + 1.00714283e+01, 4.67142868e+01, 7.20476227e+01, 1.30238094e+01, + 1.11190472e+01, 5.05000000e+01, 5.56190491e+01, 3.49285698e+01, + 3.51904755e+01, 4.88571434e+01, 4.43809509e+01, 3.05476189e+01, + 3.70476189e+01, 5.87857132e+01, 3.70952377e+01, 4.04761887e+01, + 2.96666660e+01, 3.21904755e+01, 62., 7.05000000e+01, + 5.06428566e+01, 2.19047623e+01, 7.77142868e+01, 4.03095245e+01, + 6.90476179e+00, 1.59523811e+01, 5.67380943e+01, 4.05476189e+01, + 1.70476189e+01, 1.76190472e+01, 9.05238113e+01, 2.61428566e+01, + 6.92857122e+00, 2.92142849e+01, 1.02071426e+02, 3.58571434e+01, + 8.40476227e+00, 2.66190472e+01, 7.22142868e+01, 5.76904755e+01, + 3.64047623e+01, 4.47619057e+01, 6.04523811e+01, 3.00476189e+01, + 26., 3.43333321e+01, 4.93095245e+01, 4.67619057e+01, + 3.87857132e+01, 4.65952377e+01, 7.16190491e+01, 4.08333321e+01, + 3.47619057e+01, 3.11190472e+01, 9.75952377e+01, 2.81190472e+01, + 9.45238113e+00, 2.93809528e+01, 8.59047623e+01, 2.67142849e+01, + 7.16666651e+00, 3.40714302e+01, 5.28809509e+01, 2.40476189e+01, + 7.14285707e+00, 9.73809528e+00, 8.09047623e+01, 6.00238113e+01, + 1.40238094e+01, 1.43095236e+01, 6.25476189e+01, 6.21904755e+01, + 2.19047623e+01, 1.57380953e+01, 6.39047623e+01, 4.74523811e+01, + 3.22142868e+01, 2.30714283e+01, 5.26666679e+01, 3.86428566e+01, + 1.81666660e+01, 3.80476189e+01, 6.67380981e+01, 3.65000000e+01, + 2.82619057e+01, 3.98571434e+01, 8.27142868e+01, 1.39285717e+01, + 5.90476179e+00, 2.43333340e+01, 7.17619019e+01, 2.10714283e+01, + 6.92857122e+00, 4.27857132e+01, 8.95238113e+00, 6.69047642e+00, + 4.47619057e+00, 3.40476179e+00, 1.91428566e+01, 2.46666660e+01, + 6.92857122e+00, 4.33333349e+00, 1.25714283e+01, 2.08333340e+01, + 1.57142859e+01, 5.59523821e+00, 1.80952377e+01, 2.64523811e+01, + 1.62857151e+01, 6.73809528e+00, 17., 1.60476189e+01, + 1.28333330e+01, 2.04761906e+01, 1.84047623e+01, 8.14285755e+00, + 1.21190472e+01, 1.89523811e+01, 2.49047623e+01, 2.88095236e+00, + 2.57142854e+00, 1.05000000e+01, 2.33095245e+01, 7.59523821e+00, + 3.28571439e+00, 1.99523811e+01, 7.50000000e-01, 2.31785717e+01, + 3.68928566e+01, 3.78571439e+00, 3.21428561e+00, 8.33214264e+01, + 1.21892860e+02, 1.92857146e+00, 2.75000000e+00, 1.51071424e+01, + 2.61428566e+01, 5.82142878e+00, 6.10714293e+00, 7.94285736e+01, + 1.15321426e+02, 3.78571439e+00, 3.60714293e+00, 1.41785717e+01, + 1.67142849e+01, 8.78571415e+00, 1.31428576e+01, 4.64642868e+01, + 4.12500000e+01, 3.46428561e+00, 1.21428573e+00, 4.71428585e+00, + 5.28571415e+00, 3.57142854e+00, 3.75000000e+00, 6.64285707e+00, + 2.39285707e+00, 1.35714281e+00, 4.28571433e-01, 8.95714264e+01, + 1.36892853e+02, 3.60714293e+00, 1.60714281e+00, 5.30357132e+01, + 9.91785736e+01, 1.14285719e+00, 1.03571427e+00, 7.74285736e+01, + 1.35214279e+02, 2.58214283e+01, 1.81785717e+01, 9.72857132e+01, + 1.15321426e+02, 2.82142854e+00, 5.10714293e+00, 1.78214283e+01, + 7.71428604e+01, 7.11071396e+01, 7.48214264e+01, 1.05071426e+02, + 6.71071396e+01, 6.85714293e+00, 3.67857146e+00, 3.64285707e+00, + 4.39285707e+00, 1.25714283e+01, 1.87857151e+01, 1.46071424e+01, + 4.17857122e+00, 4.57142878e+00, 1.53571427e+00, 2.76428566e+01, + 7.86428604e+01, 7.21428585e+00, 3.53571439e+00, 2.79285717e+01, + 6.53571396e+01, 2.46428561e+00, 2.42857146e+00, 5.74642868e+01, + 1.20928574e+02, 1.94642849e+01, 7.07142878e+00, 2.37142849e+01, + 6.72500000e+01, 9.60714245e+00, 7.14285707e+00, 2.09285717e+01, + 7.92857132e+01, 5.20357132e+01, 2.18928566e+01, 1.27142859e+01, + 2.91071434e+01, 1.41071424e+01, 5.21428585e+00, 1.75000000e+00, + 4.14285707e+00, 9.60714245e+00, 7.17857122e+00, 2.57142854e+00, + 3.60714293e+00, 4.67857122e+00, 6.42857134e-01, 4.64285702e-01, + 1.25000000e+00, 2.03571439e+00, 1.78571427e+00, 3.82142854e+00, + 8.50000000e+00, 1.03571427e+00, 4.28571433e-01, 1.03571427e+00, + 1.92857146e+00, 2.21428561e+00, 1.92857146e+00, 4.35714293e+00, + 1.37500000e+01, 1.57142854e+00, 9.64285731e-01, 7.50000000e-01, + 1.46428573e+00, 2.50000000e+00, 2.35714293e+00, 3.21428561e+00, + 8.78571415e+00, 3.46428561e+00, 1.07142854e+00, 1.78571433e-01, + 5.35714269e-01, 8.57142866e-01, 1.03571427e+00, 7.14285731e-01, + 1.39285719e+00, 1.96428573e+00, 9.42089539e+01, 5.31343269e+00, + 5.68656731e+00, 1.23044777e+02, 1.09582092e+02, 2.24925365e+01, + 1.32238808e+01, 1.22074623e+02, 6.69403000e+01, 8.76119423e+00, + 1.45373135e+01, 65., 5.28507462e+01, 3.54776115e+01, + 2.34029846e+01, 1.01611938e+02, 1.14477615e+01, 8.65671635e+00, + 1.55074625e+01, 2.95074635e+01, 3.08955231e+01, 3.13432827e+01, + 2.77611942e+01, 2.58955231e+01, 3., 2.95522380e+00, + 5.79104471e+00, 6.94029856e+00, 8.08955193e+00, 1.15373135e+01, + 1.01492538e+01, 6.13432837e+00, 1.16985077e+02, 9.44776154e+00, + 9.26865673e+00, 1.01059700e+02, 9.73283615e+01, 3.45223885e+01, + 2.01641788e+01, 1.31029846e+02, 4.06417923e+01, 1.24029846e+01, + 2.01791039e+01, 4.77313423e+01, 5.76119385e+01, 5.34477615e+01, + 3.79850731e+01, 6.63880615e+01, 1.27611942e+01, 1.16417913e+01, + 1.89850750e+01, 2.64328365e+01, 3.28805962e+01, 4.19403000e+01, + 3.80298500e+01, 2.62537308e+01, 3.20895529e+00, 3.56716418e+00, + 5.62686586e+00, 6.86567163e+00, 9.26865673e+00, 1.63731346e+01, + 1.34029846e+01, 5.47761202e+00, 9.07313461e+01, 1.14925375e+01, + 1.41492538e+01, 6.45223846e+01, 6.43432846e+01, 3.94477615e+01, + 2.43283577e+01, 1.04522385e+02, 1.90597019e+01, 1.41641788e+01, + 2.31343288e+01, 4.08059692e+01, 4.99253731e+01, 5.61791039e+01, + 4.01044769e+01, 3.23134346e+01, 1.16716413e+01, 1.37761192e+01, + 1.97761192e+01, 2.32686558e+01, 3.28059692e+01, 4.47014923e+01, + 3.30597000e+01, 1.66417904e+01, 4.97014904e+00, 5.83582067e+00, + 8., 1.16567163e+01, 1.23582087e+01, 1.38059702e+01, + 1.11343279e+01, 4.80597019e+00, 4.25223885e+01, 9.07462692e+00, + 1.42985077e+01, 3.37910461e+01, 3.88656731e+01, 2.94029846e+01, + 1.82089558e+01, 5.47910461e+01, 1.20895519e+01, 1.27014923e+01, + 1.83880596e+01, 2.42985077e+01, 3.31343269e+01, 4.49403000e+01, + 2.88507462e+01, 1.68059692e+01, 9.14925385e+00, 1.01791048e+01, + 1.43283587e+01, 1.59104481e+01, 2.35223885e+01, 3.71492538e+01, + 2.72985077e+01, 1.18955221e+01, 3.10447764e+00, 2.74626875e+00, + 5.79104471e+00, 8.53731346e+00, 1.02537317e+01, 1.15970154e+01, + 1.10298510e+01, 5.77611923e+00, 8.82352948e-01, 8.43137264e-01, + 1.25490201e+00, 4.35294104e+00, 4.96666679e+01, 6.24313736e+01, + 7.41176462e+00, 1.01960790e+00, 8.07843113e+00, 7.31372547e+00, + 4.23529434e+00, 8.01960754e+00, 7.01960754e+01, 8.95098038e+01, + 1.91372547e+01, 4.78431368e+00, 3.53333321e+01, 3.55294113e+01, + 4.68627453e+00, 7.66666651e+00, 9.86274490e+01, 1.02196075e+02, + 1.03725491e+01, 6.11764717e+00, 3.49019623e+01, 6.83529434e+01, + 18., 7.01960802e+00, 4.80784302e+01, 6.43921585e+01, + 3.27450991e+00, 3.96078420e+00, 1.92156863e+00, 2.07843137e+00, + 2.86274505e+00, 6.56862736e+00, 3.73921585e+01, 6.99215698e+01, + 1.35098038e+01, 2.82352948e+00, 2.84313726e+00, 3.47058821e+00, + 1.92156863e+00, 7.05882359e+00, 7.59411774e+01, 1.27843140e+02, + 3.69215698e+01, 4.58823538e+00, 1.52549019e+01, 2.94509811e+01, + 5.29411745e+00, 7.03921556e+00, 7.24509811e+01, 1.25313728e+02, + 3.30784302e+01, 6.90196085e+00, 1.54901962e+01, 5.63921585e+01, + 1.37450981e+01, 3.64705873e+00, 4.73529396e+01, 1.28098038e+02, + 1.81960793e+01, 2.88235283e+00, 5.05882359e+00, 4.50980377e+00, + 5.27450991e+00, 7.05882359e+00, 1.57058821e+01, 2.96078434e+01, + 1.53529415e+01, 7.52941179e+00, 4.98039198e+00, 3.94117641e+00, + 4.37254906e+00, 8.56862736e+00, 4.15294113e+01, 1.17588234e+02, + 4.58235283e+01, 8.96078396e+00, 3.27450991e+00, 6.25490189e+00, + 2.66666675e+00, 4.17647076e+00, 3.03921566e+01, 1.28568634e+02, + 7.51176453e+01, 6.66666651e+00, 5.31372547e+00, 2.86862736e+01, + 7.25490189e+00, 2., 1.34901962e+01, 1.29352936e+02, + 7.67254868e+01, 4.84313726e+00, 4.17647076e+00, 4.37254906e+00, + 4.94117641e+00, 5.23529434e+00, 7.60784292e+00, 1.23137255e+01, + 1.13921566e+01, 5.90196085e+00, 7.31372547e+00, 6.41176462e+00, + 8.54901981e+00, 9.56862736e+00, 1.69215679e+01, 3.91764717e+01, + 2.42745094e+01, 1.23529415e+01, 4.39215708e+00, 3.45098042e+00, + 4.39215708e+00, 6.21568632e+00, 1.52156858e+01, 8.10392151e+01, + 5.13529396e+01, 9.64705849e+00, 2.50980401e+00, 3.58823538e+00, + 2.03921580e+00, 1.94117641e+00, 6.86274529e+00, 8.85686264e+01, + 7.58627472e+01, 6.29411745e+00, 4.48250008e+01, 5.48750019e+00, + 1.26499996e+01, 2.26375008e+01, 7.42500019e+00, 4.52500010e+00, + 7.66125031e+01, 1.62925003e+02, 1.33012497e+02, 6.57499981e+00, + 4., 6.32499981e+00, 5.59999990e+00, 5.69999981e+00, + 4.27374992e+01, 1.74175003e+02, 5.96250000e+01, 1.28874998e+01, + 8.63749981e+00, 1.03125000e+01, 1.17250004e+01, 1.32749996e+01, + 3.01250000e+01, 1.04037498e+02, 9.78750038e+00, 6.62500000e+00, + 5.93750000e+00, 5.86250019e+00, 5.72499990e+00, 6.40000010e+00, + 8.66250038e+00, 1.35124998e+01, 3.50875015e+01, 4.97499990e+00, + 4.69999981e+00, 4.78749990e+00, 4., 7.18750000e+00, + 1.42074997e+02, 1.74112503e+02, 5.88624992e+01, 1.51875000e+01, + 1.23874998e+01, 1.43374996e+01, 1.37500000e+01, 1.88750000e+01, + 7.00625000e+01, 1.61875000e+02, 2.78875008e+01, 2.11499996e+01, + 2.15874996e+01, 2.22500000e+01, 2.01749992e+01, 2.37749996e+01, + 3.20875015e+01, 4.49874992e+01, 8.37500000e+00, 7.56250000e+00, + 8.56250000e+00, 9.38749981e+00, 8.46249962e+00, 8.11250019e+00, + 1.07250004e+01, 1.13500004e+01, 2.33875008e+01, 8.85000038e+00, + 8.96249962e+00, 1.30249996e+01, 1.12250004e+01, 1.54250002e+01, + 6.85875015e+01, 1.03625000e+02, 2.76625004e+01, 1.59875002e+01, + 1.80125008e+01, 2.37374992e+01, 2.22625008e+01, 2.65000000e+01, + 3.64249992e+01, 4.43875008e+01, 2.06499996e+01, 1.61499996e+01, + 1.88500004e+01, 2.20750008e+01, 2.12500000e+01, 2.29125004e+01, + 2.68750000e+01, 2.87625008e+01, 6.77500010e+00, 5.76249981e+00, + 7.97499990e+00, 8.30000019e+00, 7.84999990e+00, 7.36250019e+00, + 1.14750004e+01, 1.18125000e+01, 6.69999981e+00, 3.63750005e+00, + 4.06250000e+00, 6.37500000e+00, 6.63749981e+00, 5.72499990e+00, + 1.06000004e+01, 1.23625002e+01, 9.30000019e+00, 5.05000019e+00, + 6.11250019e+00, 7.66249990e+00, 8.01249981e+00, 8.27499962e+00, + 1.00124998e+01, 1.29125004e+01, 7.63749981e+00, 4.62500000e+00, + 5.87500000e+00, 6.44999981e+00, 7.28749990e+00, 7.18750000e+00, + 9.89999962e+00, 1.20375004e+01, 2.76250005e+00, 1.58749998e+00, + 3.08750010e+00, 3.08750010e+00, 3.23749995e+00, 3.50000000e+00, + 4.88749981e+00, 4.86250019e+00, 2.56578946e+00, 3.27631569e+00, + 2.81578946e+00, 6.31578970e+00, 2.88552628e+01, 1.36710529e+01, + 2.60526323e+00, 1.85526311e+00, 8.30263138e+00, 3.88157892e+00, + 2.07894731e+00, 1.54868422e+01, 1.33289474e+02, 57., + 3.30263162e+00, 2.61842108e+00, 2.36710529e+01, 1.55131578e+01, + 2.52631569e+00, 1.24473686e+01, 1.32328949e+02, 4.87763176e+01, + 2.35526323e+00, 3.52631569e+00, 8.92500000e+01, 7.28289490e+01, + 5.63157892e+00, 3.05263162e+00, 1.57763157e+01, 1.36842108e+01, + 2.27631569e+00, 4.89473677e+00, 3.77631569e+00, 4.09210539e+00, + 3.92105269e+00, 5.02631569e+00, 2.29342098e+01, 2.03947372e+01, + 5.25000000e+00, 3.09210515e+00, 6.19736862e+00, 6.48684216e+00, + 3.88157892e+00, 9.72368431e+00, 1.25513161e+02, 1.04407898e+02, + 8.02631569e+00, 3.53947377e+00, 1.12105265e+01, 1.15131578e+01, + 2.07894731e+00, 4.89473677e+00, 1.39565796e+02, 1.33960526e+02, + 5.25000000e+00, 3.03947377e+00, 4.73947372e+01, 8.35526352e+01, + 8.89473724e+00, 4.27631569e+00, 2.62105255e+01, 3.47894745e+01, + 4.63157892e+00, 3.53947377e+00, 4.32894754e+00, 4.10526323e+00, + 4.97368431e+00, 4.97368431e+00, 1.28157892e+01, 1.57894735e+01, + 5.85526323e+00, 4.42105246e+00, 5.57894754e+00, 6.52631569e+00, + 6.82894754e+00, 1.08684206e+01, 6.90131607e+01, 8.39078979e+01, + 1.36710529e+01, 5.18421030e+00, 4.05263138e+00, 5.39473677e+00, + 2.80263162e+00, 4.69736862e+00, 1.15644737e+02, 1.40105270e+02, + 1.23947372e+01, 3.19736838e+00, 9.40789509e+00, 2.65526314e+01, + 5.31578970e+00, 2.82894731e+00, 4.08947372e+01, 1.19710526e+02, + 1.53026314e+01, 2.84210515e+00, 3.32894731e+00, 3.69736838e+00, + 4.76315784e+00, 4.01315784e+00, 6.30263138e+00, 8.35526276e+00, + 4.23684216e+00, 3.57894731e+00, 6.51315784e+00, 7.01315784e+00, + 9.05263138e+00, 9.39473724e+00, 2.51973686e+01, 3.82368431e+01, + 1.16973686e+01, 6.60526323e+00, 4.05263138e+00, 5.06578970e+00, + 5.40789461e+00, 6.26315784e+00, 3.97500000e+01, 1.00355263e+02, + 1.87368412e+01, 4.71052647e+00, 2.13157892e+00, 4.32894754e+00, + 2.35526323e+00, 1.60526311e+00, 2.12894745e+01, 1.27105263e+02, + 3.15000000e+01, 2.27631569e+00, 9.46999969e+01, 7.69999981e+00, + 1.72857141e+00, 1.50428572e+01, 1.25571432e+01, 8.71428549e-01, + 4.18571424e+00, 5.40285721e+01, 1.16414284e+02, 1.17857141e+01, + 3.27142859e+00, 6.34285736e+00, 9.67142868e+00, 3.40000010e+00, + 1.15142860e+01, 1.01642860e+02, 4.46285706e+01, 1.92285709e+01, + 1.41857147e+01, 1.38857145e+01, 1.34142857e+01, 9.14285755e+00, + 2.14428577e+01, 65., 2.42285709e+01, 1.72285709e+01, + 9.58571434e+00, 9.67142868e+00, 1.16142855e+01, 1.59142857e+01, + 1.73428574e+01, 2.66285706e+01, 1.19957146e+02, 3.18714294e+01, + 6.71428561e-01, 2.24285722e+00, 8.27142811e+00, 2.01428580e+00, + 1.58571434e+00, 3.10428562e+01, 1.29442856e+02, 5.06714287e+01, + 3.61428571e+00, 3.51428580e+00, 9.28571415e+00, 8.02857113e+00, + 7.58571434e+00, 5.32999992e+01, 4.61142845e+01, 2.70857143e+01, + 1.40142860e+01, 1.23428574e+01, 1.82571430e+01, 2.22857151e+01, + 1.91571426e+01, 3.12857151e+01, 3.05714283e+01, 3.04714279e+01, + 1.36000004e+01, 8.38571453e+00, 1.03999996e+01, 1.31000004e+01, + 1.96142864e+01, 2.65142860e+01, 9.48285751e+01, 6.12000008e+01, + 1.45714283e+00, 8.14285696e-01, 1.45857143e+01, 1.95285721e+01, + 2.25714278e+00, 9.89999962e+00, 1.25228569e+02, 1.23714287e+02, + 6.12857151e+00, 1.29999995e+00, 2.65714288e+00, 5.02857161e+00, + 3.27142859e+00, 1.07142859e+01, 5.25285721e+01, 7.45428543e+01, + 1.48285713e+01, 5.87142849e+00, 9.48571396e+00, 2.06857147e+01, + 2.04142857e+01, 1.95142860e+01, 2.54571438e+01, 2.74428577e+01, + 1.87428570e+01, 1.36857147e+01, 1.01999998e+01, 1.62142849e+01, + 2.95428562e+01, 3.20428581e+01, 2.67428570e+01, 3.97714272e+01, + 3.22857141e+00, 3.14285725e-01, 2.41285706e+01, 8.71999969e+01, + 1.33428574e+01, 4.54285717e+00, 5.66428566e+01, 1.22328575e+02, + 1.39428568e+01, 8.14285696e-01, 5.00000000e-01, 1.26571426e+01, + 7.50000000e+00, 3.94285703e+00, 2.66714287e+01, 1.26085716e+02, + 6.15571442e+01, 3.74285722e+00, 1.88571429e+00, 5.52857161e+00, + 7.90000010e+00, 6.62857151e+00, 9.27142811e+00, 5.58714294e+01, + 7.73857117e+01, 1.87999992e+01, 5.55714273e+00, 5.65714264e+00, + 1.03999996e+01, 1.03285713e+01, 7.93750000e+00, 1.56875000e+01, + 1.30833330e+01, 3.87500000e+00, 3.35416675e+00, 3.23958321e+01, + 2.52291660e+01, 2.62500000e+00, 1.02500000e+01, 2.40833340e+01, + 1.51458330e+01, 5.10416651e+00, 4.85416651e+00, 6.14583349e+00, + 5.33333349e+00, 3.91666675e+00, 8.29166698e+00, 2.20416660e+01, + 1.22291670e+01, 3.64583325e+00, 2.31250000e+00, 1.81250000e+00, + 2.83333325e+00, 3.35416675e+00, 5.27083349e+00, 9.75000000e+00, + 6.06250000e+00, 2.64583325e+00, 2.43750000e+00, 1.47916663e+00, + 3., 3.50000000e+00, 1.03750000e+01, 1.02937500e+02, + 5.03958321e+01, 3.10416675e+00, 5.62500000e+00, 1.32791672e+02, + 9.04375000e+01, 6., 1.28125000e+01, 4.63333321e+01, + 2.09583340e+01, 4.93750000e+00, 1.46666670e+01, 1.30812500e+02, + 3.90625000e+01, 6.72916651e+00, 1.60416660e+01, 4.31666679e+01, + 2.11666660e+01, 4.37500000e+00, 4.50000000e+00, 1.35416670e+01, + 5.87500000e+00, 6.43750000e+00, 1.41875000e+01, 2.35833340e+01, + 1.06041670e+01, 3.12500000e+00, 4.50000000e+00, 1.56250000e+00, + 3.81250000e+00, 5.62500000e+00, 1.88750000e+01, 1.31395828e+02, + 41., 2.93750000e+00, 1.22291670e+01, 5.83125000e+01, + 2.23125000e+01, 6.25000000e+00, 4.70208321e+01, 1.33145828e+02, + 2.00625000e+01, 3.52083325e+00, 5.55000000e+01, 1.41520828e+02, + 2.27916660e+01, 3.58333325e+00, 1.89166660e+01, 4.02291679e+01, + 1.37916670e+01, 3.89583325e+00, 5.34375000e+01, 1.15625000e+02, + 5.10416651e+00, 4.14583349e+00, 2.14375000e+01, 3.00625000e+01, + 9.62500000e+00, 2.54166675e+00, 4.75000000e+00, 2.12500000e+00, + 2.08333325e+00, 3.50000000e+00, 7.29166651e+00, 1.67708340e+01, + 2.29166675e+00, 4.06250000e+00, 2.53750000e+01, 3.37916679e+01, + 1.99791660e+01, 6.97916651e+00, 8.94583359e+01, 1.29750000e+02, + 6.66666651e+00, 4.68750000e+00, 5.09583321e+01, 6.53541641e+01, + 7.43750000e+00, 6.85416651e+00, 5.09375000e+01, 6.21875000e+01, + 4.77083349e+00, 3.95833325e+00, 1.25166664e+02, 1.31604172e+02, + 4.14583349e+00, 3.22916675e+00, 1.72500000e+01, 2.10833340e+01, + 5.39583349e+00, 2.12500000e+00, 1.55208330e+01, 1.25833330e+01, + 2.93750000e+00, 4.16666651e+00, 6.05000019e+00, 4.25000000e+00, + 4.11666679e+00, 3.96666670e+00, 3., 4.09999990e+00, + 5.78333330e+00, 5.33333349e+00, 8.50000000e+00, 4.15000010e+00, + 8.31666660e+00, 1.38833332e+01, 5.30000019e+00, 6.06666660e+00, + 9.91666698e+00, 1.18333330e+01, 7.75000000e+00, 2.61666656e+00, + 1.47333336e+01, 3.03500004e+01, 5.05000019e+00, 4., + 2.79500008e+01, 5.70999985e+01, 8.41666698e+00, 1.71666670e+00, + 1.20500002e+01, 2.67000008e+01, 3.43333340e+00, 3.23333335e+00, + 5.32333336e+01, 1.07766670e+02, 7.91666651e+00, 4.53333330e+00, + 1.12500000e+01, 1.70833340e+01, 3.04999995e+00, 7.59999990e+00, + 3.16499996e+01, 2.74166660e+01, 7.78333330e+00, 3.51666665e+00, + 1.85000000e+01, 3.64166679e+01, 3.86666656e+00, 4.91666651e+00, + 7.18833313e+01, 1.16250000e+02, 3.16666675e+00, 1.53333330e+00, + 3.31833344e+01, 6.92833328e+01, 2.40000010e+00, 1.26666665e+00, + 9.74666672e+01, 130., 2.01666665e+00, 1.38333333e+00, + 7.07166672e+01, 1.15866669e+02, 1.68333328e+00, 2.31666660e+00, + 4.77833328e+01, 9.50999985e+01, 1.74500008e+01, 1.21000004e+01, + 1.85499992e+01, 2.43833332e+01, 4.09999990e+00, 1.08333330e+01, + 5.26333351e+01, 8.01999969e+01, 2.05000000e+01, 1.60499992e+01, + 6.99499969e+01, 9.54666672e+01, 5.34999990e+00, 4.53333330e+00, + 5.82833328e+01, 1.10683334e+02, 3.96666670e+00, 2.95000005e+00, + 1.01599998e+02, 1.30616669e+02, 3.46666670e+00, 1.43333328e+00, + 3.01333332e+01, 6.85500031e+01, 4.16666651e+00, 2.86666656e+00, + 6.01166649e+01, 1.07483330e+02, 2.79999995e+00, 1.66666663e+00, + 2.23666668e+01, 4.09000015e+01, 1.22833338e+01, 1.36000004e+01, + 3.68833351e+01, 4.90833321e+01, 1.03166666e+01, 5.11666679e+00, + 1.00166664e+01, 2.78333340e+01, 1.13833332e+01, 1.19666662e+01, + 5.73666649e+01, 9.29666672e+01, 2.35499992e+01, 5.58333349e+00, + 1.41833334e+01, 2.81666660e+01, 7.33333349e+00, 4.58333349e+00, + 2.25666676e+01, 4.96333351e+01, 9.94999981e+00, 4.68333340e+00, + 1.82166672e+01, 3.22666664e+01, 5.56666660e+00, 4.55000019e+00, + 5.06666660e+00, 7.16666651e+00, 4.44999981e+00, 3.21666670e+00, + 1.02333336e+01, 1.74833336e+01, 6.65714264e+00, 2.77142859e+00, + 7.05714273e+00, 1.91142864e+01, 1.21999998e+01, 6.94285727e+00, + 1.05428572e+01, 3.66285706e+01, 1.67714291e+01, 6.82857132e+00, + 6.91428566e+00, 2.05428562e+01, 2.33428574e+01, 2.95142860e+01, + 5.91714287e+01, 9.71142883e+01, 9.05714321e+00, 6.88571405e+00, + 9.71428585e+00, 2.63428574e+01, 4.93142853e+01, 45., + 3.76857147e+01, 2.49714279e+01, 1.68571424e+00, 1.62857139e+00, + 6.22857141e+00, 5.71428585e+00, 4.88571405e+00, 4.65714264e+00, + 4.82857132e+00, 4.71428585e+00, 2.34571438e+01, 1.22857141e+00, + 5.45714283e+00, 5.04285698e+01, 1.39142857e+01, 5.19999981e+00, + 2.67714291e+01, 1.42628571e+02, 1.96857147e+01, 2.74285722e+00, + 14., 1.39342850e+02, 6.42571411e+01, 2.42857151e+01, + 4.86571426e+01, 1.32571426e+02, 1.33428574e+01, 6.37142849e+00, + 1.53428574e+01, 9.88857117e+01, 6.12571411e+01, 2.53999996e+01, + 1.96571426e+01, 2.85428562e+01, 2.14285707e+00, 2.85714293e+00, + 9.25714302e+00, 4.59999990e+00, 5.19999981e+00, 8.77142811e+00, + 1.06571426e+01, 6.05714273e+00, 2.14857140e+01, 5.14285743e-01, + 8.77142811e+00, 1.36685715e+02, 3.05714283e+01, 2.05714297e+00, + 1.40571432e+01, 1.36314285e+02, 1.76285706e+01, 1.68571424e+00, + 1.46285715e+01, 1.47085709e+02, 4.55142860e+01, 4.82857132e+00, + 1.02571430e+01, 7.57428589e+01, 1.31999998e+01, 2.51428580e+00, + 5.88571405e+00, 3.15142860e+01, 1.31999998e+01, 9.71428585e+00, + 1.18571424e+01, 3.30857124e+01, 1.48571432e+00, 6.28571451e-01, + 1., 9.42857146e-01, 1.22857141e+00, 6.57142878e+00, + 9.54285717e+00, 5.08571434e+00, 1.05428572e+01, 8.57142866e-01, + 6.88571405e+00, 1.40142853e+02, 3.54285698e+01, 1.62857139e+00, + 6.65714264e+00, 6.22857132e+01, 1.11714287e+01, 2.74285722e+00, + 5.11428595e+00, 4.31714287e+01, 1.51999998e+01, 6.05714273e+00, + 7.91428566e+00, 5.39142876e+01, 5.17142868e+00, 2.57142854e+00, + 4.22857141e+00, 4.62857151e+00, 7.05714273e+00, 7.08571434e+00, + 8.65714264e+00, 1.60285721e+01, 7.71428585e-01, 5.42857170e-01, + 1.17142856e+00, 8.28571439e-01, 7.71428585e-01, 2.51428580e+00, + 8.14285755e+00, 3.59999990e+00, 1.58139539e+00, 9.53488350e-01, + 2.13953495e+00, 3.62790704e+00, 2.93023252e+00, 1.69767439e+00, + 1.46511626e+00, 1.23255813e+00, 9.76744175e-01, 1.23255813e+00, + 5.65116262e+00, 8.62790680e+00, 3.65116286e+00, 1.58139539e+00, + 1.48837209e+00, 1.55813956e+00, 4.88372087e-01, 2.16279078e+00, + 8.41860485e+00, 8.81395340e+00, 3.90697670e+00, 8.37209284e-01, + 8.13953459e-01, 5.11627913e-01, 6.74418628e-01, 2.41860461e+00, + 8.62790680e+00, 7.09302330e+00, 1.58139539e+00, 3.95348847e-01, + 3.25581402e-01, 2.55813956e-01, 6.88372087e+00, 8.69767475e+00, + 1.71627903e+01, 4.21395340e+01, 2.41860466e+01, 9.37209320e+00, + 8.37209320e+00, 6.16279078e+00, 6.65116262e+00, 1.19069767e+01, + 4.23720932e+01, 7.46976776e+01, 2.86744194e+01, 9., + 6.81395340e+00, 5.88372087e+00, 6.39534903e+00, 1.40697670e+01, + 5.69302330e+01, 7.01860428e+01, 2.56511631e+01, 8.32558155e+00, + 4.60465097e+00, 3.62790704e+00, 6.09302330e+00, 1.36744184e+01, + 54., 5.49534874e+01, 1.54186049e+01, 5.81395340e+00, + 3.97674417e+00, 3.37209296e+00, 5., 8.02325535e+00, + 2.63720932e+01, 7.14883728e+01, 3.93023262e+01, 9.83720970e+00, + 6.44186068e+00, 5.06976748e+00, 9.25581360e+00, 1.17906981e+01, + 4.47674408e+01, 8.37209320e+01, 4.33953476e+01, 1.52325583e+01, + 9.06976700e+00, 6.67441845e+00, 1.21162786e+01, 1.44186049e+01, + 4.73488388e+01, 7.05581360e+01, 3.87674408e+01, 1.65348835e+01, + 2.49767437e+01, 3.36976738e+01, 6.97674417e+00, 1.17441864e+01, + 4.60930214e+01, 6.41860428e+01, 2.79767437e+01, 1.19069767e+01, + 1.08837212e+02, 98., 6.95348835e+00, 5.44186068e+00, + 1.69302330e+01, 4.72093010e+01, 3.84883728e+01, 1.34883718e+01, + 6.37209320e+00, 6.30232573e+00, 1.42558136e+01, 8.51162815e+00, + 2.00697670e+01, 4.85813942e+01, 3.61162796e+01, 1.60465107e+01, + 20., 6.66976776e+01, 1.76046505e+01, 6.13953495e+00, + 4.12558136e+01, 1.06883720e+02, 2.81860466e+01, 1.26976748e+01, + 9.96046524e+01, 1.48511627e+02, 7.11627913e+00, 5.18604660e+00, + 1.19651161e+02, 1.37046509e+02, 1.40465117e+01, 9.30232525e+00, + 1.37348831e+02, 1.46860458e+02, 6.38961029e+00, 1.45454550e+00, + 3.19480515e+00, 1.51168833e+01, 1.62597408e+01, 5.54545450e+00, + 3.14285707e+00, 2.63636374e+00, 9.62337646e+01, 3.02597404e+00, + 3.94805193e+00, 3.53766251e+01, 3.85714302e+01, 4.33766222e+00, + 2.37662339e+00, 8.64935074e+01, 5.28961029e+01, 2.50649357e+00, + 2.63636374e+00, 115., 1.04064934e+02, 4.96103907e+00, + 6.71428585e+00, 7.37142868e+01, 1.65324669e+01, 4.80519485e+00, + 4.25974035e+00, 2.90129871e+01, 1.12857141e+01, 5.89610386e+00, + 1.78831177e+01, 2.86493511e+01, 1.91168823e+01, 2.20779228e+00, + 3.32467532e+00, 1.45324678e+01, 2.09610386e+01, 9.06493473e+00, + 4.53246737e+00, 6.18181801e+00, 1.31649353e+02, 6.64935064e+00, + 2.90909100e+00, 4.28051949e+01, 9.70259705e+01, 8.12987041e+00, + 2.75324678e+00, 7.18571396e+01, 5.56753235e+01, 6.67532444e+00, + 2.92207789e+00, 7.12857132e+01, 1.23935066e+02, 7.01298714e+00, + 7.01298714e+00, 4.01818199e+01, 3.63896103e+01, 9.29870129e+00, + 3.63636374e+00, 4.46753263e+00, 2.71428561e+00, 2.89610386e+00, + 1.53896103e+01, 4.81038971e+01, 2.59480515e+01, 4.28571415e+00, + 2.68831158e+00, 9.40259743e+00, 1.91688309e+01, 1.09220781e+01, + 2.72727275e+00, 3.53246760e+00, 1.31831161e+02, 3.38571434e+01, + 2.19480515e+00, 1.46883116e+01, 1.09662338e+02, 2.61298695e+01, + 2.76623368e+00, 2.14675331e+01, 5.65844154e+01, 1.61038952e+01, + 3.80519485e+00, 1.40389614e+01, 1.22454544e+02, 3.16493511e+01, + 4.36363649e+00, 2.46493511e+01, 5.04805183e+01, 2.17792206e+01, + 4.77922058e+00, 2.27272725e+00, 1.24675322e+00, 1.94805193e+00, + 6.24675322e+00, 3.75714302e+01, 1.00129871e+01, 4.35064936e+00, + 1.97402596e+00, 6., 1.50389614e+01, 1.03506489e+01, + 2.89610386e+00, 1.41558444e+00, 1.24077919e+02, 7.56623383e+01, + 2.05194807e+00, 5.01298714e+00, 6.40649338e+01, 36., + 3.07792211e+00, 3.53246760e+00, 5.38571434e+01, 3.44545441e+01, + 4.49350643e+00, 3.41558433e+00, 1.09831169e+02, 8.69870148e+01, + 2.89610386e+00, 8.59740257e+00, 3.47272720e+01, 2.68051949e+01, + 8.58441544e+00, 2.24675322e+00, 3.19480515e+00, 4.90909100e+00, + 1.58441556e+00, 1.27272730e+01, 5.31460667e+00, 4.20224714e+00, + 2.89887643e+00, 3.23595500e+00, 5.32584286e+00, 7.62921333e+00, + 1.06404495e+01, 6.17977524e+00, 7.19101143e+00, 5.93258429e+00, + 4.62921333e+00, 5.34831476e+00, 7.14606762e+00, 8.40449429e+00, + 1.14606743e+01, 8.33707905e+00, 7.08988762e+00, 6.04494381e+00, + 6.24719095e+00, 8.28089905e+00, 8.68539333e+00, 8.16853905e+00, + 8.40449429e+00, 7.40449429e+00, 9.07865143e+00, 4.66292143e+00, + 5.77528095e+00, 1.36179771e+01, 6.95505619e+00, 5.91011238e+00, + 9.94382000e+00, 2.13370781e+01, 7.21348333e+00, 6.10112381e+00, + 4.94382000e+00, 6.03370810e+00, 8.44943810e+00, 1.09887638e+01, + 1.23033705e+01, 8.57303333e+00, 1.00674162e+01, 7.83146048e+00, + 8.70786476e+00, 1.17865171e+01, 1.27865171e+01, 1.55168543e+01, + 1.61460667e+01, 1.28764048e+01, 1.32471914e+01, 6., + 1.14157305e+01, 3.33707848e+01, 1.56629210e+01, 1.46404495e+01, + 2.41011238e+01, 5.16516838e+01, 1.61460667e+01, 4.16853952e+00, + 1.21011238e+01, 4.62471924e+01, 1.26404495e+01, 9.33707905e+00, + 4.51235962e+01, 1.31831467e+02, 8.32584286e+00, 6.39325857e+00, + 8.38202286e+00, 1.20449438e+01, 8.84269619e+00, 1.22696629e+01, + 1.57415733e+01, 1.23146067e+01, 1.23483143e+01, 6.59550571e+00, + 1.62471905e+01, 4.08314590e+01, 1.28426962e+01, 1.46179771e+01, + 3.45730324e+01, 7.54831467e+01, 9.86516857e+00, 3.71910119e+00, + 1.87303371e+01, 7.32134857e+01, 1.16966295e+01, 7.43820238e+00, + 6.97977524e+01, 1.55595505e+02, 6.91011238e+00, 1.50561798e+00, + 2.17078648e+01, 1.22191010e+02, 1.66516857e+01, 7.97752810e+00, + 5.97078667e+01, 1.42932587e+02, 7.78651667e+00, 4.48314619e+00, + 1.21348314e+01, 2.69213486e+01, 7.61797762e+00, 9.19101143e+00, + 3.55505600e+01, 6.86853943e+01, 1.12584267e+01, 5.77528095e+00, + 1.94382019e+01, 6.15617981e+01, 7.82022476e+00, 7.43820238e+00, + 6.54269638e+01, 1.50797760e+02, 5.80898857e+00, 5., 34., + 1.32415726e+02, 1.14606743e+01, 3.23595500e+00, 4.54606743e+01, + 1.36651688e+02, 5., 2.76404500e+00, 3.60449448e+01, + 1.54235962e+02, 1.40224724e+01, 2.46067405e+00, 1.46404495e+01, + 6.46179810e+01, 7.61132050e+01, 4.04150925e+01, 1.66415100e+01, + 7.28301907e+00, 3.77358484e+00, 3.64150953e+00, 1.28113203e+01, + 6.02830200e+01, 2.55849056e+01, 2.62830181e+01, 2.92075462e+01, + 2.12452831e+01, 1.51886797e+01, 1.80566044e+01, 2.26981125e+01, + 2.68301888e+01, 2.50188675e+01, 2.60943394e+01, 1.34339619e+01, + 1.04905663e+01, 1.50943394e+01, 3.86603775e+01, 3.76981125e+01, + 2.15849056e+01, 8.47169781e+00, 1.05660381e+01, 3.73584914e+00, + 1.14150944e+01, 7.06037750e+01, 8.34716949e+01, 2.45094337e+01, + 7.11320734e+00, 8.13018875e+01, 8.89811325e+01, 2.88301888e+01, + 5.03773594e+00, 2.50943398e+00, 2.79245281e+00, 5.41509438e+00, + 2.46415100e+01, 4.28490562e+01, 6.03396225e+01, 3.77358475e+01, + 1.28679247e+01, 1.16226416e+01, 1.75660381e+01, 1.84905663e+01, + 2.47547169e+01, 5.93018875e+01, 5.18490562e+01, 3.36603775e+01, + 2.17169819e+01, 1.93773594e+01, 2.87169819e+01, 4.41509438e+01, + 5.48113213e+01, 2.36792450e+01, 2.20377350e+01, 1.52264147e+01, + 4.83207550e+01, 1.02924530e+02, 6.96792450e+01, 2.71320763e+01, + 1.59245281e+01, 5.93018875e+01, 9.63773575e+01, 3.63018875e+01, + 4.13207531e+00, 3.37735844e+00, 2.67924523e+00, 2.22641516e+00, + 1.17735853e+01, 4.18867912e+01, 1.05622643e+02, 8.37924500e+01, + 1.02264147e+01, 3.39622641e+00, 4.73584890e+00, 4.75471687e+00, + 1.46226416e+01, 4.74905663e+01, 8.13396225e+01, 9.56981125e+01, + 4.66037750e+01, 1.15849056e+01, 8.18867970e+00, 1.14905663e+01, + 2.96792450e+01, 2.54716988e+01, 2.97547169e+01, 4.93584900e+01, + 9.35283051e+01, 7.93773575e+01, 1.55471697e+01, 6.50943375e+00, + 9.54716969e+00, 3.14716988e+01, 6.46792450e+01, 2.33962269e+01, + 4.43396235e+00, 7.07547188e+00, 2.33584900e+01, 1.79811325e+01, + 6.86792469e+00, 1.79811325e+01, 7.26603775e+01, 6.57924500e+01, + 8.64150906e+00, 3.24528313e+00, 5.62264156e+00, 1.57547169e+01, + 1.23207550e+01, 2.51698112e+01, 5.49245300e+01, 7.85094376e+01, + 2.60943394e+01, 3.22641516e+00, 1.56603777e+00, 1.03018866e+01, + 1.90754719e+01, 1.36037731e+01, 1.53018866e+01, 4.37547188e+01, + 7.06792450e+01, 2.87547169e+01, 2.24528313e+00, 1.17735853e+01, + 2.25849056e+01, 2.87653065e+01, 3.78571439e+00, 5.14591827e+01, + 1.63316330e+02, 2.91530609e+01, 4.01020432e+00, 4.59285698e+01, + 1.58051025e+02, 3.45000000e+01, 4.19387770e+00, 2.74285717e+01, + 1.66969391e+02, 5.31734695e+01, 5.79591846e+00, 2.68775501e+01, + 1.29969391e+02, 3.67244911e+01, 5.65306139e+00, 5.17346954e+00, + 2.28775501e+01, 6.26530600e+00, 2.88775516e+00, 2.39795914e+01, + 106., 8.51020432e+00, 2.61224484e+00, 1.88775516e+00, + 1.79591835e+00, 1.86734688e+00, 2.78571439e+00, 1.02551022e+01, + 2.38163261e+01, 1.80510197e+01, 4.88775492e+00, 6.37448997e+01, + 1.61285721e+02, 1.79591827e+01, 6.23469400e+00, 5.25102043e+01, + 1.18448982e+02, 3.50102043e+01, 4.27551031e+00, 8.47959137e+00, + 4.77653046e+01, 6.52040815e+00, 4.26530600e+00, 4.68367348e+01, + 1.43724487e+02, 2.35102043e+01, 7.36734676e+00, 5.92857122e+00, + 6.25510216e+00, 6.79591846e+00, 7.92857122e+00, 2.35306129e+01, + 6.72244873e+01, 7.81632662e+00, 4.03061247e+00, 4.02040815e+00, + 3.58163261e+00, 4.07142878e+00, 4.98979568e+00, 6.40816307e+00, + 9.55102062e+00, 1.96632652e+01, 2.84693885e+00, 4.65306139e+00, + 1.46836739e+01, 7.46938753e+00, 6.03061247e+00, 4.53673477e+01, + 8.86938782e+01, 2.27653065e+01, 6.69387770e+00, 4.97959185e+00, + 5.70408154e+00, 6.63265324e+00, 8.78571415e+00, 2.83877544e+01, + 6.48571396e+01, 1.38673468e+01, 7.93877554e+00, 8.63265324e+00, + 8.67346954e+00, 1.05102043e+01, 1.21224489e+01, 1.46428576e+01, + 1.98163261e+01, 6.29591846e+00, 3.65306115e+00, 3.91836739e+00, + 3.18367338e+00, 4.85714293e+00, 6.24489784e+00, 5.36734676e+00, + 6.12244892e+00, 8.70408154e+00, 2.41836739e+00, 1.71428573e+00, + 2.44897962e+00, 2.74489784e+00, 4.15306139e+00, 1.39693880e+01, + 2.23163261e+01, 8.11224461e+00, 4.63265324e+00, 4.05102062e+00, + 4.77551031e+00, 6.12244892e+00, 7.28571415e+00, 9.90816307e+00, + 1.34897957e+01, 6.61224508e+00, 4.51020432e+00, 4.92857122e+00, + 4.88775492e+00, 5.98979568e+00, 7.26530600e+00, 6.94897938e+00, + 8.67346954e+00, 2.71428561e+00, 1.55102038e+00, 1.81632650e+00, + 1.79591835e+00, 2.48979592e+00, 2.56122446e+00, 2.31632662e+00, + 2.80612254e+00, 3.00303040e+01, 1.60606062e+00, 9.27272701e+00, + 3.25606079e+01, 1.01060610e+01, 3., 3.74696960e+01, + 1.08575760e+02, 1.35000000e+01, 5.69696951e+00, 1.75151520e+01, + 2.19242420e+01, 5.74242401e+00, 8.10606098e+00, 9.56212158e+01, + 1.06621216e+02, 1.04545450e+01, 1.19393940e+01, 2.59242420e+01, + 1.56818180e+01, 5.46969700e+00, 4.31515160e+01, 1.07030304e+02, + 4.94242439e+01, 7.21212101e+00, 1.18787880e+01, 2.32727280e+01, + 8.80303001e+00, 1.41515150e+01, 83., 8.44393921e+01, + 1.62272720e+01, 1.03772728e+02, 2.05151520e+01, 1.10303030e+01, + 2.98484840e+01, 2.21363640e+01, 6.19696951e+00, 1.39696970e+01, + 1.04181816e+02, 2.46515160e+01, 1.73484840e+01, 2.64393940e+01, + 3.39545441e+01, 1.95909100e+01, 1.06212120e+01, 2.29696960e+01, + 4.65454559e+01, 2.73181820e+01, 3.55606079e+01, 3.81060600e+01, + 2.43484840e+01, 1.28030300e+01, 1.63787880e+01, 2.41060600e+01, + 2.17878780e+01, 1.92727280e+01, 2.78181820e+01, 3.35454559e+01, + 3.28787880e+01, 3.43333321e+01, 4.82424240e+01, 2.77272720e+01, + 1.56969700e+01, 9.95000000e+01, 8.51212158e+01, 2.01363640e+01, + 1.53484850e+01, 2.31212120e+01, 1.04090910e+01, 3.78787875e+00, + 1.68636360e+01, 2.38030300e+01, 3.88939400e+01, 3.21515160e+01, + 2.08787880e+01, 1.99393940e+01, 1.69090900e+01, 1.40151520e+01, + 1.35151520e+01, 2.03484840e+01, 2.77272720e+01, 3.84242439e+01, + 3.33636360e+01, 1.83636360e+01, 1.10151520e+01, 1.40757580e+01, + 1.78939400e+01, 1.47272730e+01, 2.38030300e+01, 3.62121201e+01, + 6.26969681e+01, 3.16969700e+01, 1.14393940e+01, 6.74242401e+00, + 1.34545450e+01, 4.74848480e+01, 1.05318184e+02, 32., + 5.98484850e+00, 1.63787880e+01, 1.69696960e+01, 4.60606050e+00, + 2.83333325e+00, 1.56818180e+01, 8.65303040e+01, 8.90757599e+01, + 2.39848480e+01, 8.34848499e+00, 1.65757580e+01, 1.54545450e+01, + 6.43939400e+00, 7.12121201e+00, 3.57575760e+01, 8.61666641e+01, + 5.43484840e+01, 1.19696970e+01, 8.60606098e+00, 1.48787880e+01, + 7.46969700e+00, 7.30303049e+00, 1.39242420e+01, 5.37575760e+01, + 6.57878799e+01, 1.40606060e+01, 3.86363626e+00, 1.22121210e+01, + 1.57727270e+01, 8.19277108e-01, 1.22891569e+00, 1.66265059e+00, + 4.78313255e+00, 2.45542164e+01, 2.16746979e+01, 5.43373489e+00, + 8.07228923e-01, 6.57710876e+01, 8.14698792e+01, 4.92771101e+00, + 7.66265059e+00, 2.98915653e+01, 3.07349396e+01, 8.60240936e+00, + 4.33734941e+00, 1.07939758e+02, 1.39421692e+02, 6.27710867e+00, + 3.21686745e+00, 9.15662613e+01, 1.34457825e+02, 1.00481930e+01, + 6.66265059e+00, 3.02771091e+01, 3.31204834e+01, 8.14457798e+00, + 3.44578314e+00, 4.15421677e+01, 1.11710846e+02, 9.37349415e+00, + 7.62650585e+00, 1.04819274e+00, 1.16867471e+00, 1.86746991e+00, + 4.14457846e+00, 2.50843372e+01, 3.07108440e+01, 7.51807213e+00, + 1.93975902e+00, 9.66265106e+00, 2.20240955e+01, 3.89156628e+00, + 7.16867447e+00, 3.95662651e+01, 5.59879532e+01, 1.74096394e+01, + 3.89156628e+00, 6.82891541e+01, 1.46783127e+02, 1.71566257e+01, + 4.48192787e+00, 2.76024094e+01, 8.57590332e+01, 1.51204815e+01, + 4.08433723e+00, 2.41084347e+01, 1.41204819e+02, 3.71084328e+01, + 2.38554215e+00, 2.98072281e+01, 1.44771088e+02, 4.02289162e+01, + 3.26506019e+00, 2.10843372e+00, 2.04819274e+00, 2.74698806e+00, + 4.39759016e+00, 1.56506023e+01, 2.44939766e+01, 7.27710867e+00, + 3.18072295e+00, 2.73493981e+00, 2.62650609e+00, 3.55421686e+00, + 5.73493958e+00, 3.07228909e+01, 6.34578323e+01, 1.92650604e+01, + 4.74698782e+00, 7.21686745e+00, 5.34819260e+01, 8.87951851e+00, + 5.54216862e+00, 2.45180721e+01, 6.34578323e+01, 2.50361443e+01, + 5.08433723e+00, 7.73493958e+00, 1.40012054e+02, 6.46987915e+01, + 4.09638548e+00, 1.26867466e+01, 6.44457855e+01, 2.34578304e+01, + 3.53012037e+00, 2.14457822e+00, 2.30120492e+00, 2.71084332e+00, + 3.15662646e+00, 6.34939766e+00, 1.03253012e+01, 4.63855410e+00, + 2.27710843e+00, 2.97590351e+00, 2.60240960e+00, 3.22891569e+00, + 4.74698782e+00, 1.41927710e+01, 3.32168694e+01, 1.26385546e+01, + 4.43373489e+00, 2.30120492e+00, 1.93975902e+00, 2.18072295e+00, + 3.39759040e+00, 1.39638557e+01, 4.30963860e+01, 2.09879513e+01, + 4.62650585e+00, 2., 1.26867466e+01, 5.78313255e+00, + 2.19277120e+00, 1.00602407e+01, 3.67228928e+01, 1.99518070e+01, + 4.07228899e+00, 3.23617020e+01, 6.72659607e+01, 2.98723412e+01, + 1.05851068e+01, 9.10638332e+00, 8.03191471e+00, 6.71276617e+00, + 8.59574509e+00, 2.24680843e+01, 3.18085098e+01, 2.58617020e+01, + 1.75957451e+01, 1.70212765e+01, 1.55638294e+01, 1.33829784e+01, + 1.44574471e+01, 1.45425529e+01, 1.94148941e+01, 1.36382980e+01, + 1.19042549e+01, 1.16382980e+01, 1.13510637e+01, 1.35106382e+01, + 1.15851068e+01, 2., 2.25531912e+00, 1.69148934e+00, + 1.10638297e+00, 9.68085110e-01, 1.14893615e+00, 1.73404253e+00, + 1.53191495e+00, 9.04361725e+01, 1.52968079e+02, 4.60425529e+01, + 9.37234020e+00, 7.77659559e+00, 7.59574461e+00, 7.23404264e+00, + 1.02021275e+01, 6.12127647e+01, 7.78829803e+01, 3.31382980e+01, + 1.99255314e+01, 2.15638294e+01, 1.98510647e+01, 2.28829784e+01, + 2.56702137e+01, 2.30851059e+01, 2.95425529e+01, 2.03829784e+01, + 1.72446804e+01, 1.84680843e+01, 1.71914902e+01, 2.28723412e+01, + 1.83085098e+01, 2.60638309e+00, 3.41489363e+00, 2.30851054e+00, + 1.75531912e+00, 2.05319142e+00, 1.98936164e+00, 3.09574461e+00, + 1.59574473e+00, 1.40010635e+02, 1.53925537e+02, 2.51276588e+01, + 5.48936176e+00, 6.55319166e+00, 1.21170216e+01, 7.06382990e+00, + 8.89361668e+00, 1.23723404e+02, 1.33574463e+02, 2.72659569e+01, + 1.22127657e+01, 1.27978725e+01, 1.23404255e+01, 1.43829784e+01, + 2.43085098e+01, 3.02765961e+01, 3.25744667e+01, 2.01489353e+01, + 1.77978725e+01, 1.84893608e+01, 1.68510647e+01, 1.93085098e+01, + 1.90638294e+01, 2.82978725e+00, 3.48936176e+00, 2.07446814e+00, + 1.29787230e+00, 1.52127659e+00, 1.90425527e+00, 2.87234044e+00, + 1.98936164e+00, 1.35744675e+02, 1.25648933e+02, 1.73085098e+01, + 6.38297892e+00, 1.60638294e+01, 2.31276588e+01, 6.77659559e+00, + 1.42446804e+01, 1.48617020e+02, 1.31063828e+02, 1.57978725e+01, + 5.87234020e+00, 7.11702108e+00, 6.78723383e+00, 6.68085098e+00, + 2.33085098e+01, 3.98510628e+01, 3.78297882e+01, 1.38297873e+01, + 1.00212765e+01, 1.11063833e+01, 9.94680882e+00, 1.25957451e+01, + 1.65744686e+01, 2.65957451e+00, 2.54255319e+00, 1.54255319e+00, + 1.11702132e+00, 1.06382978e+00, 1.37234044e+00, 2.24468088e+00, + 1.74468088e+00, 1.48148143e+00, 3.77777767e+00, 7.46296310e+00, + 2.38888884e+00, 8.88888896e-01, 9.81481493e-01, 3.88888896e-01, + 4.81481493e-01, 1.62962961e+00, 5.72222233e+00, 9.14814854e+00, + 2.64814806e+00, 7.59259284e-01, 4.44444448e-01, 2.96296299e-01, + 4.07407403e-01, 1.16666663e+00, 5.72222233e+00, 7., + 2.03703713e+00, 8.51851881e-01, 6.66666687e-01, 5.92592597e-01, + 4.81481493e-01, 9.44444418e-01, 3., 3.12962961e+00, + 1.37037039e+00, 1.25925922e+00, 1.14814818e+00, 1.75925922e+00, + 1.24074078e+00, 9.88888931e+00, 1.09444447e+01, 2.15555553e+01, + 1.10370369e+01, 5.35185194e+00, 1.08888893e+01, 4.40185204e+01, + 8.22222233e+00, 1.22777777e+01, 1.93333340e+01, 3.09259262e+01, + 1.17222223e+01, 3.18518519e+00, 1.38148146e+01, 5.05555573e+01, + 5.35185194e+00, 7.50000000e+00, 2.50925922e+01, 31., + 8.74074078e+00, 2.77777767e+00, 9.64814854e+00, 1.95185184e+01, + 4.40740728e+00, 6.42592573e+00, 2.01111107e+01, 1.82777786e+01, + 5.53703690e+00, 5.24074078e+00, 6.92592573e+00, 8.40740776e+00, + 8.20370388e+00, 1.07037039e+01, 2.00740738e+01, 1.11222221e+02, + 2.74814816e+01, 3.38888884e+00, 2.27962971e+01, 1.27666664e+02, + 3.93333321e+01, 1.06111107e+01, 5.23333321e+01, 1.23759262e+02, + 1.05925922e+01, 2.48148155e+00, 6.92592621e+01, 1.34481476e+02, + 1.78888893e+01, 5.46296310e+00, 5.77962952e+01, 8.23888855e+01, + 6.33333349e+00, 3.92592597e+00, 1.16185188e+02, 1.31796295e+02, + 6.57407427e+00, 6.96296310e+00, 2.95000000e+01, 2.56296291e+01, + 5.77777767e+00, 4.33333349e+00, 8.19629593e+01, 64., + 6.50000000e+00, 4.61111116e+00, 1.12962961e+01, 9.54074097e+01, + 2.46111107e+01, 2.68518519e+00, 1.56296301e+01, 3.25925941e+01, + 1.17222223e+01, 5.33333349e+00, 5.14259262e+01, 1.19018517e+02, + 7.18518496e+00, 4.05555534e+00, 2.66851845e+01, 3.51111107e+01, + 9.90740776e+00, 4.87037039e+00, 1.06185188e+02, 1.20185188e+02, + 4.90740728e+00, 5.50000000e+00, 5.38333321e+01, 4.12037048e+01, + 4.33333349e+00, 5.40740728e+00, 1.04370369e+02, 5.74629631e+01, + 2.96296287e+00, 5.74074078e+00, 9.24074097e+01, 3.86666679e+01, + 1.64814818e+00, 1.23599997e+01, 8.56000042e+00, 5., + 3.81999993e+00, 1.04600000e+01, 1.64400005e+01, 9.85999966e+00, + 1.08999996e+01, 3.13600006e+01, 1.20200005e+01, 1.67999995e+00, + 1.40200005e+01, 1.03620003e+02, 4.70200005e+01, 3.42000008e+00, + 5.42000008e+00, 1.00580002e+02, 4.57599983e+01, 3.57999992e+00, + 1.43800001e+01, 8.52600021e+01, 2.63799992e+01, 8.00000012e-01, + 5.13999987e+00, 8.09800034e+01, 3.90800018e+01, 2.83999991e+00, + 1.82000005e+00, 1.72399998e+01, 7.51999998e+00, 1.77999997e+00, + 1.11599998e+01, 1.55400000e+01, 1.08199997e+01, 7.88000011e+00, + 1.75400009e+01, 1.77000008e+01, 7.69999981e+00, 8.11999989e+00, + 1.78400002e+01, 3.05599995e+01, 6.11999989e+00, 3.01999998e+00, + 8.03199997e+01, 1.17220001e+02, 1.13800001e+01, 2.20000005e+00, + 1.15600004e+01, 1.19080002e+02, 2.05200005e+01, 2.40000010e+00, + 4.33800011e+01, 9.15800018e+01, 8.15999985e+00, 1.63999999e+00, + 2.76599998e+01, 9.21600037e+01, 2.46399994e+01, 3.40000010e+00, + 5.09999990e+00, 2.17399998e+01, 6.42000008e+00, 3.75999999e+00, + 2.18199997e+01, 13., 7.61999989e+00, 1.97000008e+01, + 7.73600006e+01, 1.89599991e+01, 2.03999996e+00, 3.07999992e+00, + 1.38800001e+01, 3.63400002e+01, 3.61999989e+00, 7.26000023e+00, + 1.22599998e+02, 9.36999969e+01, 1.46000004e+00, 1.55999994e+00, + 3.24599991e+01, 1.17779999e+02, 8.73999977e+00, 3.09999990e+00, + 4.35999985e+01, 5.14799995e+01, 3.14000010e+00, 3.11999989e+00, + 7.66600037e+01, 7.35400009e+01, 1.70599995e+01, 4.36000013e+00, + 8.96000004e+00, 1.51800003e+01, 5.32000017e+00, 6.36000013e+00, + 3.77999992e+01, 6.94000006e+00, 2.83999991e+00, 4.30999985e+01, + 1.06400002e+02, 7.71999979e+00, 3.60000014e-01, 2.81999993e+00, + 2.07800007e+01, 3.83600006e+01, 2.72000003e+00, 1.12399998e+01, + 8.49199982e+01, 2.45400009e+01, 1.38000000e+00, 4.11999989e+00, + 7.88199997e+01, 8.58000031e+01, 6.28000021e+00, 3.20000005e+00, + 2.37999992e+01, 1.63400002e+01, 4.03999996e+00, 6.01999998e+00, + 8.83600006e+01, 4.40400009e+01, 8.92000008e+00, 2.42000008e+00, + 4.26000023e+00, 5.07999992e+00, 4.40000010e+00, 1.00200005e+01, + 4.22599983e+01, 9.70909119e+00, 5.25272713e+01, 7.69636383e+01, + 8.39999962e+00, 4.27272749e+00, 8.09090900e+00, 1.44363632e+01, + 8.07272720e+00, 2.23636360e+01, 6.48545456e+01, 3.89636345e+01, + 1.11818180e+01, 5.67272711e+00, 1.18000002e+01, 1.60181828e+01, + 1.03636360e+01, 2.69454536e+01, 3.25636368e+01, 1.62181816e+01, + 7.83636379e+00, 5.59999990e+00, 6.81818199e+00, 1.45272732e+01, + 1.26909094e+01, 1.25090914e+01, 1.03636360e+01, 7.40000010e+00, + 5.19999981e+00, 4.19999981e+00, 4.07272720e+00, 8.54545498e+00, + 9.05454540e+00, 3.36363626e+00, 1.03454544e+02, 1.25527275e+02, + 8.03636360e+00, 4.30909109e+00, 1.20545454e+01, 1.31999998e+01, + 3.63636374e+00, 2.45454540e+01, 1.49927277e+02, 9.93454514e+01, + 6.21818161e+00, 6.43636370e+00, 1.54545450e+01, 1.63818188e+01, + 8.61818218e+00, 5.65272713e+01, 1.20781815e+02, 2.65636368e+01, + 9.67272758e+00, 5.85454559e+00, 1.07090912e+01, 1.76363640e+01, + 1.83636360e+01, 2.41818180e+01, 2.28181820e+01, 1.19818182e+01, + 6.96363640e+00, 5.38181829e+00, 6.78181839e+00, 1.29636364e+01, + 1.44545450e+01, 5.36363649e+00, 2.73999996e+01, 2.86000004e+01, + 1.22363634e+01, 1.84545460e+01, 4.52363625e+01, 1.87999992e+01, + 4.49090910e+00, 4.15272713e+01, 1.31890915e+02, 2.78181820e+01, + 6., 1.01818180e+01, 1.12909088e+01, 4.49090910e+00, + 2.20000005e+00, 1.41600006e+02, 1.49909088e+02, 1.07818184e+01, + 4.74545431e+00, 5.23636341e+00, 5.70909071e+00, 4.61818171e+00, + 8.72727299e+00, 4.67636375e+01, 3.66181831e+01, 1.05818186e+01, + 4.30909109e+00, 4.27272749e+00, 4.69090891e+00, 5.72727251e+00, + 13., 1.00909090e+01, 1.16909094e+01, 1.12727270e+01, + 1.24363632e+01, 3.93272743e+01, 5.07090912e+01, 1.20181818e+01, + 6.76363659e+00, 3.41090927e+01, 2.86909084e+01, 6.30909109e+00, + 9.05454540e+00, 2.60909100e+01, 2.03090916e+01, 7.10909081e+00, + 7.78181839e+00, 1.48418182e+02, 9.49272690e+01, 3.52727270e+00, + 3.07272720e+00, 4.94545460e+00, 3.14545465e+00, 1.63636363e+00, + 1.57454548e+01, 7.57272720e+01, 3.45272713e+01, 6.34545469e+00, + 2.49090910e+00, 3.07272720e+00, 3.16363645e+00, 3.59999990e+00, + 1.38000002e+01, 1.62222219e+00, 2.02222228e+00, 2.90000010e+00, + 2.38888884e+00, 2.82222223e+00, 2.98888898e+00, 2.74444437e+00, + 1.76666665e+00, 1.34333334e+01, 1.57222223e+01, 1.24777775e+01, + 1.32666664e+01, 4.20111122e+01, 4.85888901e+01, 1.70222225e+01, + 1.12555552e+01, 1.01555557e+01, 1.19111109e+01, 7.23333311e+00, + 1.09666662e+01, 1.56455551e+02, 1.49211105e+02, 1.77333336e+01, + 7.22222233e+00, 1.22777777e+01, 2.39888897e+01, 4.73333311e+00, + 6.13333321e+00, 1.60255554e+02, 1.59733337e+02, 9.91111088e+00, + 2.73333335e+00, 2.55555558e+00, 3.92222214e+00, 4.40000010e+00, + 3.18888879e+00, 2.88888884e+00, 3.54444456e+00, 3.48888898e+00, + 1.91111112e+00, 2.02111111e+01, 2.30444450e+01, 2.35777779e+01, + 1.96555557e+01, 3.13111115e+01, 3.77666664e+01, 2.02999992e+01, + 1.58333330e+01, 1.61444435e+01, 2.46555557e+01, 1.79444447e+01, + 1.87111111e+01, 9.33222198e+01, 1.26477776e+02, 2.96777782e+01, + 1.22888889e+01, 3.54444456e+00, 6.27777767e+00, 3.64444447e+00, + 4.64444447e+00, 1.40444443e+02, 1.68966660e+02, 3.24111099e+01, + 2.78888893e+00, 2.28888893e+00, 3.76666665e+00, 3.38888884e+00, + 2.81111121e+00, 2.42222214e+00, 3.16666675e+00, 2.64444447e+00, + 1.57777774e+00, 1.72666664e+01, 2.32888889e+01, 2.45000000e+01, + 1.98999996e+01, 2.50444450e+01, 2.53555565e+01, 1.83555565e+01, + 1.43777781e+01, 2.29666672e+01, 2.91666660e+01, 2.60444450e+01, + 2.29444447e+01, 4.15222206e+01, 5.22888870e+01, 2.50111103e+01, + 1.82666664e+01, 8.98888874e+00, 1.41444445e+01, 1.11888885e+01, + 1.00777779e+01, 5.98666649e+01, 1.46333328e+02, 3.97111130e+01, + 8.58888912e+00, 1.45555556e+00, 1.57777774e+00, 1.60000002e+00, + 1.12222219e+00, 1.32222223e+00, 1.41111112e+00, 9.11111116e-01, + 6.22222245e-01, 1.11666670e+01, 1.27888889e+01, 1.14666662e+01, + 9.31111145e+00, 1.45222225e+01, 1.67777786e+01, 9.43333340e+00, + 7.67777777e+00, 1.64777775e+01, 1.78999996e+01, 1.37444448e+01, + 1.19444447e+01, 1.91333332e+01, 2.35000000e+01, 1.23888893e+01, + 1.18444443e+01, 1.00777779e+01, 1.26444445e+01, 9.88888931e+00, + 8.72222233e+00, 1.84555550e+01, 31., 1.41999998e+01, + 7.53333330e+00, 3.09859157e+00, 5.91549277e-01, 1.90140843e+00, + 1.01408453e+01, 1.41408453e+01, 4.77464771e+00, 1.73239434e+00, + 1.11267602e+00, 6.43239441e+01, 4.36619711e+00, 5.39436626e+00, + 1.99436626e+01, 2.25774651e+01, 7.52112675e+00, 3.36619711e+00, + 3.20563393e+01, 1.15169014e+02, 6.90140867e+00, 3.42253518e+00, + 8.27042236e+01, 1.04873238e+02, 5.67605639e+00, 5.81690121e+00, + 9.32535248e+01, 1.99577465e+01, 8.35211277e+00, 5., + 5.31126747e+01, 4.90563393e+01, 7.95774651e+00, 1.41126757e+01, + 2.71690140e+01, 1.02816904e+00, 7.46478856e-01, 1.71830988e+00, + 9.94366169e+00, 2.05774651e+01, 8.66197205e+00, 3.66197181e+00, + 1.43661976e+00, 1.22366196e+02, 9.54929543e+00, 3.69014096e+00, + 1.49859152e+01, 3.36619720e+01, 1.31126757e+01, 4.32394361e+00, + 2.96338024e+01, 1.29352112e+02, 1.17746477e+01, 2.76056337e+00, + 5.31126747e+01, 1.29380280e+02, 1.56197186e+01, 3.42253518e+00, + 4.59859161e+01, 3.15070419e+01, 1.68309860e+01, 4.15492964e+00, + 1.35211267e+01, 3.97323952e+01, 4.19718313e+00, 8.28169060e+00, + 3.32957764e+01, 7.18309879e-01, 1.04225349e+00, 1.49295771e+00, + 6.32394361e+00, 2.07323952e+01, 9.64788723e+00, 2.25352120e+00, + 1.05633807e+00, 1.17718307e+02, 3.06901417e+01, 3.07042265e+00, + 9.63380241e+00, 3.20985909e+01, 1.71126766e+01, 4.45070410e+00, + 8.01408482e+00, 1.28661972e+02, 4.72957764e+01, 2.36619711e+00, + 1.08450708e+01, 1.28253525e+02, 6.53661957e+01, 3.53521132e+00, + 1.41971827e+01, 3.35633812e+01, 2.27605629e+01, 5.39436626e+00, + 3.57746482e+00, 4.08591537e+01, 1.76056347e+01, 3.83098602e+00, + 2.38309860e+01, 5.77464759e-01, 8.16901386e-01, 1.16901410e+00, + 2.85915494e+00, 1.44788733e+01, 9.59154892e+00, 2.30985904e+00, + 1.04225349e+00, 5.57605629e+01, 30., 2.70422530e+00, + 6.02816916e+00, 2.07464790e+01, 1.73661976e+01, 5.18309879e+00, + 2.63380289e+00, 1.18126762e+02, 1.02591553e+02, 3.11267614e+00, + 3.38028169e+00, 95., 8.66619720e+01, 3.84507036e+00, + 4.61971807e+00, 2.15211277e+01, 2.62676048e+01, 6.64788723e+00, + 2.77464795e+00, 4.75915489e+01, 6.65070419e+01, 3.19718313e+00, + 6.52112675e+00, 1.17500000e+01, 1.27250004e+01, 8.38375015e+01, + 6.25750008e+01, 5.91249990e+00, 5.32499981e+00, 5.40125008e+01, + 5.06875000e+01, 1.01875000e+01, 9.63749981e+00, 1.03074997e+02, + 6.86875000e+01, 4.77500010e+00, 5.78749990e+00, 8.16624985e+01, + 7.22375031e+01, 1.00625000e+01, 1.26499996e+01, 1.01912498e+02, + 5.78875008e+01, 2.41249990e+00, 4.86250019e+00, 9.58750000e+01, + 8.02624969e+01, 9.72500038e+00, 1.46750002e+01, 8.97249985e+01, + 4.25875015e+01, 3., 6.73750019e+00, 8.63375015e+01, + 6.60500031e+01, 1.57749996e+01, 1.82875004e+01, 6.31124992e+01, + 4.03375015e+01, 1.19375000e+01, 1.68500004e+01, 9.26250000e+01, + 7.19124985e+01, 1.82374992e+01, 1.46374998e+01, 7.76999969e+01, + 4.47999992e+01, 6.07499981e+00, 1.51125002e+01, 1.13212502e+02, + 9.98750000e+01, 2.08374996e+01, 1.45749998e+01, 7.16875000e+01, + 3.78499985e+01, 6.36250019e+00, 1.82000008e+01, 1.15462502e+02, + 9.90749969e+01, 2.00125008e+01, 1.47500000e+01, 4.72500000e+01, + 2.22374992e+01, 7.11250019e+00, 1.74125004e+01, 1.02449997e+02, + 7.41374969e+01, 2.24624996e+01, 1.30874996e+01, 1.36499996e+01, + 1.05249996e+01, 9.62500000e+00, 1.88750000e+01, 6.71374969e+01, + 5.17125015e+01, 3.12374992e+01, 1.79874992e+01, 1.29875002e+01, + 1.08999996e+01, 1.07500000e+01, 2.13750000e+01, 6.15875015e+01, + 5.60499992e+01, 2.98125000e+01, 1.98875008e+01, 1.35124998e+01, + 1.11125002e+01, 1.13750000e+01, 2.17625008e+01, 4.36624985e+01, + 4.03624992e+01, 2.28374996e+01, 1.58999996e+01, 1.12749996e+01, + 1.01125002e+01, 1.00375004e+01, 1.51750002e+01, 2.46875000e+01, + 2.62374992e+01, 7.84999990e+00, 5.33750010e+00, 3.17499995e+00, + 2.48749995e+00, 3.59999990e+00, 4.75000000e+00, 6.55000019e+00, + 7.23750019e+00, 9.77499962e+00, 7.59999990e+00, 4., + 3.07500005e+00, 4.48750019e+00, 6.17500019e+00, 6.30000019e+00, + 7.48750019e+00, 9.50000000e+00, 7.16249990e+00, 4.92500019e+00, + 4.09999990e+00, 4.68750000e+00, 5.63749981e+00, 5.76249981e+00, + 6.97499990e+00, 6.81250000e+00, 5.17500019e+00, 3.82500005e+00, + 3.78749990e+00, 4.37500000e+00, 4.08750010e+00, 3.71250010e+00, + 5.22499990e+00, 2.45942020e+01, 4.55217400e+01, 2.08695650e+00, + 1.08695650e+00, 1.85362320e+01, 4.09710159e+01, 3.52173924e+00, + 3.39130425e+00, 4.83623199e+01, 1.21681160e+02, 1.16956520e+01, + 4.78260875e-01, 3.60869575e+00, 1.27971010e+01, 2.86956525e+00, + 1.92753625e+00, 1.54057970e+01, 8.52753601e+01, 2.69565220e+01, + 1.24637675e+00, 2.95652175e+00, 9.55072498e+00, 8.08695698e+00, + 3.91304350e+00, 6.31884050e+00, 1.80144920e+01, 2.70289860e+01, + 4.53623199e+00, 2.13043475e+00, 4.79710150e+00, 8.88405800e+00, + 8.31884098e+00, 5.53623199e+00, 1.19275360e+01, 2.73913050e+00, + 1.37681162e+00, 1.92898560e+01, 1.23637680e+02, 3.78985519e+01, + 3.15942025e+00, 1.47536230e+01, 9.12608719e+01, 2.22608700e+01, + 7.24637687e-01, 4.56521749e+00, 6.80579681e+01, 4.11014481e+01, + 5.60869551e+00, 7.50724649e+00, 1.21521736e+02, 8.44202881e+01, + 9.56521749e-01, 1.40579712e+00, 1.54347830e+01, 2.24202900e+01, + 4.20289850e+00, 1.95652175e+00, 5.78550720e+01, 1.09521736e+02, + 9.07246399e+00, 1.75362325e+00, 6.66666651e+00, 1.45652170e+01, + 5.26086950e+00, 2.11594200e+00, 3.86956525e+00, 2.92753625e+00, + 2.53623199e+00, 1.38260870e+01, 1.20521736e+02, 5.98405800e+01, + 4.04347849e+00, 3., 9.02898598e+00, 6.98550701e+00, + 1.53623188e+00, 6.62318850e+00, 1.26666664e+02, 1.23275360e+02, + 5.04347849e+00, 4.24637699e+00, 30., 2.67101440e+01, + 1.69565213e+00, 1.56521738e+00, 7.11304321e+01, 1.22623192e+02, + 1.06811590e+01, 3.63768125e+00, 2.58840580e+01, 4.73188400e+01, + 3.88405800e+00, 8.11594188e-01, 1.38405800e+01, 1.03710144e+02, + 2.34057980e+01, 2.78260875e+00, 4.13043499e+00, 5.13043499e+00, + 3.72463775e+00, 1.19420290e+01, 4.46376801e+01, 2.34202900e+01, + 4.85507250e+00, 2.49275351e+00, 3.21739125e+00, 5.17391300e+00, + 3.69565225e+00, 1.22753620e+01, 7.44927521e+01, 5.48840561e+01, + 6.40579700e+00, 3.07246375e+00, 3.57971025e+00, 7.57971001e+00, + 3.81159425e+00, 6.50724649e+00, 6.08985519e+01, 9.01304321e+01, + 8.36231899e+00, 3.81159425e+00, 2.53623199e+00, 7.31884050e+00, + 3.46376801e+00, 3.82608700e+00, 2.27971020e+01, 8.70724640e+01, + 1.49130430e+01, 7.87777786e+01, 6.72962952e+01, 5.74074078e+00, + 2.96296287e+00, 7.19074097e+01, 6.98333359e+01, 5.12962961e+00, + 4.03703690e+00, 3.38333321e+01, 2.46851845e+01, 7.09259272e+00, + 5.40740728e+00, 5.27222214e+01, 6.69444427e+01, 6.38888884e+00, + 1.01111107e+01, 4.12222214e+01, 4.08148155e+01, 1.43518515e+01, + 3.20370364e+00, 2.88888884e+00, 3.29629636e+00, 2.94444442e+00, + 9.46296310e+00, 2.62592602e+01, 4.83888893e+01, 2.26481476e+01, + 5., 3.38888884e+00, 6.05555534e+00, 5.38888884e+00, + 4.81481504e+00, 6.01481476e+01, 1.16092590e+02, 4.38888884e+00, + 2.59259248e+00, 2.45740738e+01, 5.07777786e+01, 5.05555534e+00, + 2.14814806e+00, 3.69259262e+01, 1.04407410e+02, 8.57407379e+00, + 2.22222233e+00, 5.04074059e+01, 1.24685188e+02, 1.57777777e+01, + 3.62962961e+00, 2.77777786e+01, 4.43518524e+01, 1.72777786e+01, + 5.11111116e+00, 8.55555534e+00, 6.82777786e+01, 1.70555553e+01, + 5.50000000e+00, 1.87407398e+01, 4.53148155e+01, 2.76296291e+01, + 6.94444466e+00, 2.48148155e+00, 3.07407403e+00, 3.31481481e+00, + 4.18518496e+00, 7.77777767e+00, 4.49074059e+01, 4., + 3.11111116e+00, 1.52592592e+01, 2.82037029e+01, 9.20370388e+00, + 1.92592597e+00, 1.66481476e+01, 1.28111115e+02, 3.85000000e+01, + 2.55555558e+00, 1.16111107e+01, 9.48703690e+01, 2.09074078e+01, + 2.24074078e+00, 8.05555534e+00, 1.11888885e+02, 5.72407417e+01, + 2.75925922e+00, 6.31481504e+00, 1.24074074e+02, 8.52407379e+01, + 2.74074078e+00, 7.88888884e+00, 3.74444427e+01, 3.43888893e+01, + 4.87037039e+00, 2.48148155e+00, 6.48888855e+01, 9.20555573e+01, + 4.74074078e+00, 1.16666663e+00, 1.12962961e+00, 1.33333337e+00, + 2.24074078e+00, 1.13518515e+01, 2.49629631e+01, 8.85185146e+00, + 1.98148143e+00, 1.59259260e+00, 3.44074059e+01, 1.20370369e+01, + 2.64814806e+00, 1.14259262e+01, 2.99629631e+01, 1.32222223e+01, + 2.33333325e+00, 2.11111116e+00, 1.00907410e+02, 7.78333359e+01, + 2.55555558e+00, 4.81481504e+00, 3.09444447e+01, 2.18703709e+01, + 2.66666675e+00, 1.96296299e+00, 6.78333359e+01, 1.13648148e+02, + 3.96296287e+00, 1.87037039e+00, 3.31851845e+01, 5.82777786e+01, + 3.35185194e+00, 1.15999997e+00, 2.52000008e+01, 1.88799992e+01, + 5.60000002e-01, 1.60000002e+00, 8.80400009e+01, 7.49199982e+01, + 3.31999993e+00, 7.59999990e+00, 9.80400009e+01, 3.46800003e+01, + 7.59999990e-01, 9.43999958e+00, 1.03879997e+02, 2.39200001e+01, + 7.59999990e-01, 2.52800007e+01, 1.23160004e+02, 2.83600006e+01, + 1.91999996e+00, 6.92000008e+00, 3.87999992e+01, 6.23999977e+00, + 2.20000005e+00, 1.99599991e+01, 7.68399963e+01, 2.13600006e+01, + 3.92000008e+00, 3.64000010e+00, 7.55999994e+00, 4.59999990e+00, + 6.32000017e+00, 8.11999989e+00, 1.05600004e+01, 4.32000017e+00, + 1.96000004e+00, 5.15999985e+00, 5.87999992e+01, 3.19599991e+01, + 7.92000008e+00, 8.39999962e+00, 2.86800003e+01, 3.64000010e+00, + 8.00000012e-01, 6.40800018e+01, 1.24360001e+02, 1.50799999e+01, + 1.32000005e+00, 4.95600014e+01, 1.10360001e+02, 8.56000042e+00, + 2.24000001e+00, 5.64399986e+01, 8.53199997e+01, 2.88000011e+00, + 1.39999998e+00, 5.97999992e+01, 1.10800003e+02, 1.27600002e+01, + 3.55999994e+00, 1.29600000e+01, 1.84799995e+01, 3.44000006e+00, + 4.92000008e+00, 2.13600006e+01, 1.94400005e+01, 9.68000031e+00, + 6.71999979e+00, 7.07999992e+00, 1.58000002e+01, 9.84000015e+00, + 1.42799997e+01, 1.13599997e+01, 1.27200003e+01, 4.28000021e+00, + 7.59999990e+00, 1.06639999e+02, 7.85199966e+01, 4.11999989e+00, + 4.03999996e+00, 4.88800011e+01, 3.87200012e+01, 1.79999995e+00, + 6.32000017e+00, 1.21680000e+02, 7.51600037e+01, 8.39999974e-01, + 2.35999990e+00, 9.03600006e+01, 7.97200012e+01, 4.28000021e+00, + 2.48000002e+00, 2.53199997e+01, 17., 2.44000006e+00, + 8.43999958e+00, 1.83999996e+01, 1.66000004e+01, 1.19600000e+01, + 1.03599997e+01, 1.10799999e+01, 5.48000002e+00, 6.40000010e+00, + 1.75200005e+01, 1.16800003e+01, 9.56000042e+00, 5.63999987e+00, + 3.97599983e+01, 9.55599976e+01, 1.19200001e+01, 2.07999992e+00, + 4.23999977e+00, 4.55999985e+01, 1.08800001e+01, 1.44000006e+00, + 3.03999996e+01, 1.18400002e+02, 1.73199997e+01, 3.60000014e-01, + 3.79999995e+00, 8.10800018e+01, 2.37199993e+01, 2.83999991e+00, + 4.67999983e+00, 2.37999992e+01, 8.68000031e+00, 2.07999992e+00, + 7.67999983e+00, 1.73125000e+01, 2.02083325e+00, 2.85416675e+00, + 5.33333349e+00, 2.12500000e+00, 7.50000000e-01, 3.02083325e+00, + 9.50000000e+00, 5.66666651e+00, 2.52083325e+00, 4.62500000e+00, + 4.06250000e+00, 4.85416651e+00, 6.16666651e+00, 1.40833330e+01, + 1.30833330e+01, 2.06250000e+00, 2.50000000e+00, 1.70833337e+00, + 1.50000000e+00, 4., 9.91666698e+00, 1.04791670e+01, + 3.89583325e+00, 2.18750000e+00, 2.29166675e+00, 1.41666663e+00, + 1.89583337e+00, 2.43750000e+00, 3.08333325e+00, 1.93750000e+00, + 1.87500000e+00, 9.67291641e+01, 1.24791670e+01, 7.58333349e+00, + 2.31666660e+01, 1.97500000e+01, 6.47916651e+00, 1.58958330e+01, + 6.55625000e+01, 6.52500000e+01, 1.62083340e+01, 1.36666670e+01, + 2.40833340e+01, 3.53333321e+01, 4.47708321e+01, 4.96041679e+01, + 7.16041641e+01, 2.15416660e+01, 23., 1.48333330e+01, + 1.35208330e+01, 4.44791679e+01, 7.27500000e+01, 4.77708321e+01, + 2.32916660e+01, 1.79166660e+01, 2.01041660e+01, 9.50000000e+00, + 1.03750000e+01, 3.71041679e+01, 4.54791679e+01, 1.33750000e+01, + 8.83333302e+00, 1.21270836e+02, 3.16041660e+01, 4.58333349e+00, + 1.78541660e+01, 4.95000000e+01, 1.91041660e+01, 2.18750000e+01, + 5.68750000e+01, 8.98541641e+01, 3.82291679e+01, 1.23958330e+01, + 1.82500000e+01, 5.03958321e+01, 5.53333321e+01, 2.94583340e+01, + 5.10625000e+01, 3.89375000e+01, 2.61458340e+01, 1.03750000e+01, + 1.64166660e+01, 7.23333359e+01, 9.26041641e+01, 3.73125000e+01, + 2.27083340e+01, 3.25000000e+01, 2.37083340e+01, 7.93750000e+00, + 1.65625000e+01, 8.27916641e+01, 6.61041641e+01, 1.35625000e+01, + 1.15416670e+01, 107., 4.24583321e+01, 4.45833349e+00, + 9.47916698e+00, 5.56041679e+01, 3.07708340e+01, 2.61875000e+01, + 3.19166660e+01, 7.71458359e+01, 49., 1.25000000e+01, + 8.60416698e+00, 3.07083340e+01, 4.02708321e+01, 3.19166660e+01, + 4.28125000e+01, 2.88333340e+01, 1.27708330e+01, 1.12708330e+01, + 2.15416660e+01, 5.08125000e+01, 6.89375000e+01, 3.71666679e+01, + 3.06666660e+01, 3.04791660e+01, 1.16666670e+01, 4.47916651e+00, + 2.83541660e+01, 9.25208359e+01, 5.03541679e+01, 1.33333330e+01, + 1.58541670e+01, 1.08963852e+02, 3.59036136e+00, 1.91566265e+00, + 3.45903625e+01, 7.12048187e+01, 4.45783138e+00, 1.80722892e+00, + 5.21686745e+01, 4.10843391e+01, 8.43373489e+00, 3.86746979e+00, + 7.39036179e+01, 1.05445786e+02, 3.79518080e+00, 4.20481920e+00, + 2.95060234e+01, 4.38313255e+01, 1.46506023e+01, 4.24096394e+00, + 6.65060234e+00, 2.62650609e+00, 1.71084332e+00, 1.06024094e+01, + 3.81445770e+01, 4.38433723e+01, 1.27590361e+01, 3.37349391e+00, + 2.14457822e+00, 2.85542178e+00, 4.65060234e+00, 1.84216862e+01, + 5.07349396e+01, 1.19156624e+02, 2.05662651e+01, 1.83132529e+00, + 2.06024094e+01, 1.08024094e+02, 1.60361443e+01, 1.61445785e+00, + 2.14457836e+01, 5.18795166e+01, 1.79277115e+01, 4.22891569e+00, + 2.58554211e+01, 1.12771088e+02, 1.92168674e+01, 3.59036136e+00, + 1.91325302e+01, 7.37108459e+01, 3.30843391e+01, 5.81927729e+00, + 3.53012037e+00, 1.33734941e+00, 8.91566277e-01, 5.33734941e+00, + 3.76144562e+01, 7.28433762e+01, 3.58674698e+01, 1.05903616e+01, + 7.66265059e+00, 6.02409649e+00, 5.19277096e+00, 9.95180702e+00, + 3.85542183e+01, 1.13686745e+02, 5.90963860e+01, 2.03614450e+00, + 5.83132553e+00, 8.48795166e+01, 3.66746979e+01, 1.97590363e+00, + 4.28915644e+00, 5.38313255e+01, 3.52289162e+01, 5.55421686e+00, + 5.62650585e+00, 1.14759033e+02, 7.76746979e+01, 2.16867471e+00, + 8.46987915e+00, 6.08192787e+01, 5.02048187e+01, 1.16024094e+01, + 3.84337354e+00, 4.07228899e+00, 4.08433723e+00, 1.66265059e+00, + 1.38072290e+01, 5.80963860e+01, 6.46987915e+01, 1.69397583e+01, + 4.10843372e+00, 2.14457822e+00, 2.09638548e+00, 3.37349391e+00, + 1.07349396e+01, 6.83493958e+01, 7.00722885e+01, 1.85542166e+00, + 3.14457822e+00, 3.42409630e+01, 2.68072281e+01, 2.60240960e+00, + 1.62650597e+00, 4.64216881e+01, 7.33734970e+01, 4.04819298e+00, + 2.28915668e+00, 8.70120468e+01, 1.14927711e+02, 3.24096394e+00, + 2.54216862e+00, 2.97831326e+01, 3.84819260e+01, 1.16506023e+01, + 2.78313255e+00, 1.17349396e+01, 4.94337349e+01, 4.14457846e+00, + 5.80722904e+00, 2.53132534e+01, 4.90481911e+01, 2.18192768e+01, + 2.81927705e+00, 1.02409637e+00, 1.69879520e+00, 1.36144578e+00, + 3.24096394e+00, 7.97916651e+00, 7.14583349e+00, 1.38250000e+02, + 1.32062500e+02, 1.09166670e+01, 3.75000000e+00, 7.55416641e+01, + 9.74583359e+01, 7.75000000e+00, 3.93125000e+01, 1.45187500e+02, + 1.31312500e+02, 1.21875000e+01, 1.25416670e+01, 7.60416641e+01, + 5.26041679e+01, 4.97916651e+00, 6.89583359e+01, 1.44354172e+02, + 7.69791641e+01, 4.62500000e+00, 1.49791670e+01, 7.82291641e+01, + 3.31875000e+01, 2.83333325e+00, 2.52708340e+01, 1.32520828e+02, + 6.77916641e+01, 2.85416675e+00, 7.83333349e+00, 5.97291679e+01, + 3.12291660e+01, 8.54166698e+00, 5.20833349e+00, 7.48750000e+01, + 8.02916641e+01, 7.85416651e+00, 5.04166651e+00, 5.99791679e+01, + 8.18333359e+01, 1.01250000e+01, 8.79166698e+00, 3.10208340e+01, + 2.60208340e+01, 4.91666651e+00, 1.26041670e+01, 84., + 6.38750000e+01, 7.06250000e+00, 1.10833330e+01, 2.00208340e+01, + 8.37500000e+00, 4.93750000e+00, 1.67083340e+01, 8.07500000e+01, + 3.99583321e+01, 5.75000000e+00, 7.20833349e+00, 1.84375000e+01, + 8.60416698e+00, 3.77083325e+00, 8.56250000e+00, 4.97291679e+01, + 2.95833340e+01, 1.11875000e+01, 5.54166651e+00, 4.81250000e+00, + 4.25000000e+00, 3.02083325e+00, 4.31250000e+00, 1.96875000e+01, + 3.57916679e+01, 1.33125000e+01, 7.37500000e+00, 6.64583349e+00, + 5.27083349e+00, 4.54166651e+00, 6.47916651e+00, 1.66458340e+01, + 2.10625000e+01, 9.47916698e+00, 7.68750000e+00, 8.10416698e+00, + 8.10416698e+00, 7.20833349e+00, 8.93750000e+00, 1.50208330e+01, + 1.25416670e+01, 6.68750000e+00, 6.43750000e+00, 6.95833349e+00, + 7.54166651e+00, 5.68750000e+00, 5.97916651e+00, 8.47916698e+00, + 7.54166651e+00, 4.06250000e+00, 2.18750000e+00, 1.31250000e+00, + 8.95833313e-01, 1.02083337e+00, 1.37500000e+00, 2.06250000e+00, + 3.91666675e+00, 4.18750000e+00, 2.52083325e+00, 2.27083325e+00, + 2.20833325e+00, 1.66666663e+00, 1.68750000e+00, 2., + 3.12500000e+00, 2.79166675e+00, 2.39583325e+00, 2.50000000e+00, + 2.79166675e+00, 2.47916675e+00, 2.04166675e+00, 2.25000000e+00, + 2.47916675e+00, 2.20833325e+00, 1.56250000e+00, 1.56250000e+00, + 2., 2.33333325e+00, 1.68750000e+00, 1.83333337e+00, + 2.10416675e+00, 1.92727268e+00, 7.83818207e+01, 9.11090927e+01, + 3.05454540e+00, 1.38181818e+00, 8.05454540e+00, 1.15272732e+01, + 2.03636360e+00, 5.16363621e+00, 1.16472725e+02, 8.11636353e+01, + 3.38181829e+00, 2.27272725e+00, 9.92727280e+00, 6.10909081e+00, + 1.10909092e+00, 1.39090910e+01, 1.04109093e+02, 5.07818184e+01, + 2.96363640e+00, 2.85454535e+00, 6.54545450e+00, 2.40000010e+00, + 1.49090910e+00, 1.49090910e+01, 5.72545471e+01, 2.02000008e+01, + 3.65454555e+00, 4.58181810e+00, 4.12727261e+00, 2.61818171e+00, + 3.20000005e+00, 2.56363630e+00, 5.81818199e+01, 4.55999985e+01, + 7.27272749e-01, 1.09090912e+00, 3.47999992e+01, 7.35090942e+01, + 8.07272720e+00, 9.30909061e+00, 1.16363640e+02, 4.56363640e+01, + 2.12727284e+00, 3.38181829e+00, 5.80727272e+01, 3.90545464e+01, + 3.38181829e+00, 3.79272728e+01, 1.22090912e+02, 2.85090904e+01, + 1.76363635e+00, 4.94545460e+00, 2.91454544e+01, 7.23636341e+00, + 2.40000010e+00, 3.94909096e+01, 103., 1.81272736e+01, + 2.23636365e+00, 4.96363640e+00, 7.69090891e+00, 2.12727284e+00, + 2.43636370e+00, 3.01818180e+00, 1.67272720e+01, 8.80000019e+00, + 3.27272713e-01, 8.00000012e-01, 3.75454559e+01, 8.92363663e+01, + 19., 1.01090908e+01, 5.56727257e+01, 7.07272720e+00, + 4.00000006e-01, 9.47272682e+00, 1.06654549e+02, 68., + 4.27272749e+00, 5.65818176e+01, 1.14199997e+02, 5.40000010e+00, + 1., 1.92363644e+01, 8.65090942e+01, 1.35454550e+01, + 2.10909081e+00, 6.94000015e+01, 1.09272728e+02, 8.30909061e+00, + 1.61818182e+00, 1.20545454e+01, 1.83999996e+01, 1.72727275e+00, + 2.49090910e+00, 7.29090929e+00, 4.90909100e+00, 2.18181825e+00, + 7.63636351e-01, 1.96363640e+00, 1.29636364e+01, 3.22181816e+01, + 15., 6.36363649e+00, 1.02727270e+01, 1.50909090e+00, + 5.27272701e-01, 1.74909096e+01, 6.82363663e+01, 3.33818169e+01, + 5.41818190e+00, 42., 4.04727287e+01, 7.27272749e-01, + 6.54545426e-01, 5.09636345e+01, 9.78000031e+01, 8.83636379e+00, + 2.29090905e+00, 8.09454575e+01, 6.14545441e+01, 1.78181815e+00, + 1.52727270e+00, 2.85818176e+01, 2.42181816e+01, 1.38181818e+00, + 3.12727284e+00, 6.68181801e+00, 1.33636360e+01, 1.51750000e+02, + 4.23636360e+01, 4.27272749e+00, 1.33636360e+01, 1.08636360e+02, + 2.23863640e+01, 4.52272749e+00, 1.59772730e+01, 1.60113632e+02, + 4.72954559e+01, 3.18181825e+00, 1.14318180e+01, 1.35522720e+02, + 3.77727280e+01, 8.93181801e+00, 2.80454540e+01, 1.53750000e+02, + 4.77272720e+01, 7., 1.37500000e+01, 1.17068184e+02, + 4.23181801e+01, 1.31590910e+01, 3.34545441e+01, 1.13636360e+02, + 3.40227280e+01, 7.84090900e+00, 1.41818180e+01, 7.32727280e+01, + 3.36818199e+01, 2.86363626e+00, 4.65909100e+00, 3.26136360e+01, + 1.47272730e+01, 7.90909100e+00, 2.15454540e+01, 1.27545456e+02, + 3.36590919e+01, 5.95454550e+00, 7., 3.32500000e+01, + 1.55000000e+01, 8.40909100e+00, 1.56590910e+01, 1.42295456e+02, + 4.45454559e+01, 6.79545450e+00, 8.65909100e+00, 2.41136360e+01, + 1.26363640e+01, 8.52272701e+00, 2.11136360e+01, 1.20295456e+02, + 3.99090919e+01, 5.38636351e+00, 1.21363640e+01, 1.32727270e+01, + 1.03863640e+01, 9.13636398e+00, 2.35454540e+01, 6.52500000e+01, + 1.96590900e+01, 4.93181801e+00, 5.75000000e+00, 7.68181801e+00, + 7.63636351e+00, 7.54545450e+00, 1.22045450e+01, 2.06136360e+01, + 8.13636398e+00, 6.81818199e+00, 6.43181801e+00, 7.97727251e+00, + 9.81818199e+00, 9.90909100e+00, 10., 22., 1.19545450e+01, + 6.11363649e+00, 7.88636351e+00, 9.63636398e+00, 9.70454502e+00, + 9.90909100e+00, 1.04772730e+01, 1.67272720e+01, 1.01363640e+01, + 3.77272725e+00, 4.86363649e+00, 5.47727251e+00, 7.50000000e+00, + 8.06818199e+00, 9.95454502e+00, 1.26818180e+01, 5.70454550e+00, + 7.50000000e-01, 7.27272749e-01, 6.13636374e-01, 8.18181813e-01, + 7.27272749e-01, 5.90909064e-01, 7.04545438e-01, 5.90909064e-01, + 8.18181813e-01, 7.50000000e-01, 6.36363626e-01, 1.04545450e+00, + 1.45454550e+00, 9.54545438e-01, 8.86363626e-01, 8.86363626e-01, + 5.22727251e-01, 7.72727251e-01, 5.90909064e-01, 1.11363637e+00, + 1.43181813e+00, 9.09090936e-01, 7.50000000e-01, 7.04545438e-01, + 3.63636374e-01, 4.54545468e-01, 3.40909094e-01, 9.09090936e-01, + 1.34090912e+00, 6.59090936e-01, 5.00000000e-01, 4.31818187e-01, + 4.74599991e+01, 6.54199982e+01, 5.40000010e+00, 2.74000001e+00, + 87., 123., 3.11999989e+00, 2.68000007e+00, 2.59200001e+01, + 3.27400017e+01, 1.15600004e+01, 4.09999990e+00, 3.13400002e+01, + 2.84799995e+01, 3.55999994e+00, 5.67999983e+00, 2.53799992e+01, + 3.37400017e+01, 8.92000008e+00, 2.07999992e+00, 1.86000001e+00, + 1.12000000e+00, 2.96000004e+00, 5.48000002e+00, 3.68000007e+00, + 5.09999990e+00, 1.53999996e+00, 2.59999990e-01, 2.00000003e-01, + 1.59999996e-01, 2.19999999e-01, 7.79999971e-01, 1.26400002e+02, + 9.32799988e+01, 2.79999995e+00, 6.11999989e+00, 1.28539993e+02, + 9.70400009e+01, 3.35999990e+00, 5.42000008e+00, 4.09000015e+01, + 3.13600006e+01, 8.52000046e+00, 5.71999979e+00, 1.07879997e+02, + 6.36800003e+01, 6.94000006e+00, 9.53999996e+00, 3.70800018e+01, + 3.08600006e+01, 7.98000002e+00, 2.83999991e+00, 2.57999992e+00, + 2.24000001e+00, 6.84000015e+00, 1.06800003e+01, 7.15999985e+00, + 5.84000015e+00, 1.36000001e+00, 3.19999993e-01, 1.00000001e-01, + 1.59999996e-01, 5.60000002e-01, 1.34000003e+00, 1.36720001e+02, + 4.30600014e+01, 2.55999994e+00, 2.67399998e+01, 1.27599998e+02, + 3.37599983e+01, 3.29999995e+00, 2.12000008e+01, 5.89199982e+01, + 2.55200005e+01, 6.88000011e+00, 1.89599991e+01, 1.35160004e+02, + 3.67400017e+01, 4.67999983e+00, 1.46599998e+01, 44., + 2.16200008e+01, 5.19999981e+00, 2.20000005e+00, 3.11999989e+00, + 2.29999995e+00, 5.57999992e+00, 17., 8.64000034e+00, + 4.05999994e+00, 6.99999988e-01, 3.00000012e-01, 1.19999997e-01, + 1.80000007e-01, 5.19999981e-01, 1.91999996e+00, 1.30039993e+02, + 8.26000023e+00, 2.59999990e+00, 5.67999992e+01, 1.14160004e+02, + 9.39999962e+00, 2.68000007e+00, 5.24799995e+01, 4.90400009e+01, + 1.53199997e+01, 3.25999999e+00, 3.87000008e+01, 1.16040001e+02, + 8.39999962e+00, 4.44000006e+00, 2.11399994e+01, 3.45999985e+01, + 1.19399996e+01, 3.25999999e+00, 1.41999996e+00, 2.09999990e+00, + 1.62000000e+00, 3.27999997e+00, 1.97000008e+01, 5.50000000e+00, + 1.79999995e+00, 4.19999987e-01, 1.19999997e-01, 1.00000001e-01, + 1.19999997e-01, 4.00000006e-01, 2.29999995e+00, 4.95238113e+01, + 5.25000000e+01, 1.31428576e+01, 2.02380943e+01, 3.27142868e+01, + 5.20238113e+01, 3.58809509e+01, 4.77142868e+01, 1.01428576e+01, + 2.71190472e+01, 2.49285717e+01, 1.64761906e+01, 2.15476189e+01, + 8.77380981e+01, 9.52380981e+01, 2.91428566e+01, 1.11904764e+01, + 3.98571434e+01, 1.44285717e+01, 2.80952382e+00, 2.72142849e+01, + 1.13761902e+02, 5.55000000e+01, 5.66666651e+00, 1.15952377e+01, + 2.46904755e+01, 6.23809528e+00, 3.64285707e+00, 1.29285717e+01, + 3.05714283e+01, 9.52380943e+00, 3.73809528e+00, 9.57142868e+01, + 4.48809509e+01, 1.12619047e+01, 2.09285717e+01, 3.94047623e+01, + 2.13095245e+01, 1.16666670e+01, 4.26190491e+01, 1.62619057e+01, + 2.19285717e+01, 2.56904755e+01, 2.19523811e+01, 2.66190472e+01, + 3.34523811e+01, 3.22142868e+01, 2.20952377e+01, 1.69047623e+01, + 2.93571434e+01, 1.20476189e+01, 1.10714283e+01, 5.68809509e+01, + 1.04690475e+02, 2.53095245e+01, 7.23809528e+00, 2.22142849e+01, + 3.87380943e+01, 6., 2.90476179e+00, 5.14523811e+01, + 1.06261902e+02, 1.48809528e+01, 3.50000000e+00, 9.54285736e+01, + 1.09285713e+02, 8.73809528e+00, 7.14285707e+00, 3.99761887e+01, + 4.31666679e+01, 6.30952358e+00, 5.76190472e+00, 2.16428566e+01, + 4.72142868e+01, 2.66190472e+01, 1.56904764e+01, 2.77142849e+01, + 2.93333340e+01, 1.19047623e+01, 9.59523773e+00, 1.74761906e+01, + 2.40476189e+01, 1.82857151e+01, 1.49523811e+01, 2.65238094e+01, + 3.36904755e+01, 1.82857151e+01, 1.53095236e+01, 2.26190472e+01, + 1.93809528e+01, 5.14285707e+00, 1.10476189e+01, 8.21904755e+01, + 9.16190491e+01, 1.01904764e+01, 9.04761887e+00, 4.83571434e+01, + 9.92380981e+01, 7.14285707e+00, 1.69047618e+00, 1.65952377e+01, + 4.92142868e+01, 1.18809528e+01, 2.95238090e+00, 2.66666660e+01, + 9.64285736e+01, 3.00952377e+01, 6.14285707e+00, 1.91904755e+01, + 5.60952377e+01, 2.62142849e+01, 5.50000000e+00, 1.61666660e+01, + 3.16190472e+01, 3.75714302e+01, 2.68571434e+01, 1.28571424e+01, + 2.04761906e+01, 2.79285717e+01, 2.32380943e+01, 1.79761906e+01, + 8.90476227e+00, 1.22142859e+01, 6.04523811e+01, 7.10476227e+01, + 2.40714283e+01, 9.76190472e+00, 2.10952377e+01, 3.52380943e+00, + 2.11904764e+00, 5.47619045e-01, 4.28571415e+00, 9.49523773e+01, + 7.37857132e+01, 3.40476179e+00, 2.90476179e+00, 2.11666660e+01, + 1.11904764e+01, 4.21428585e+00, 2.80952382e+00, 1.33809528e+01, + 2.58809528e+01, 1.41904764e+01, 19., 2.18571434e+01, + 1.88571434e+01, 1.84047623e+01, 1.23333330e+01, 6.59523821e+00, + 1.80476189e+01, 5.26190491e+01, 3.83095245e+01, 8.14285755e+00, + 3.95238090e+00, 9.59523773e+00, 2.02142849e+01, 2.08809528e+01, + 2.35714283e+01, 3.87619057e+01, 2.55952377e+01, 3.26190472e+00, + 7.23809528e+00, 3.54761910e+00, 8.50000000e+00, 7.04523773e+01, + 1.18833336e+02, 1.67142849e+01, 2.19047618e+00, 1.92380943e+01, + 2.55000000e+01, 1.12857141e+01, 1.97619045e+00, 1.13809528e+01, + 9.60476227e+01, 6.60476227e+01, 1.40238094e+01, 2.99761906e+01, + 6.37380943e+01, 8.13809509e+01, 2.82857151e+01, 6.73809528e+00, + 3.95714302e+01, 1.04476189e+02, 4.98095245e+01, 7.30952358e+00, + 1.12380953e+01, 5.65000000e+01, 6.67142868e+01, 2.35714283e+01, + 2.11904755e+01, 9.02619019e+01, 6.66190491e+01, 3.16666675e+00, + 8.57142830e+00, 9.78571415e+00, 1.44523811e+01, 4.86428566e+01, + 7.84285736e+01, 1.75952377e+01, 3.04761910e+00, 7.73809528e+00, + 2.74523811e+01, 3.73095245e+01, 1.24761906e+01, 2.48095245e+01, + 1.07333336e+02, 9.31904755e+01, 1.02619047e+01, 1.14761906e+01, + 3.25714302e+01, 7.56190491e+01, 2.16666660e+01, 1.06428576e+01, + 5.63809509e+01, 1.25404762e+02, 2.82142849e+01, 1.04047623e+01, + 1.20476189e+01, 5.62380943e+01, 4.03571434e+01, 6.92857122e+00, + 1.40476189e+01, 1.13857140e+02, 6.76428604e+01, 1.76190472e+00, + 2.07142854e+00, 3.59523821e+00, 6.85714293e+00, 3.24761887e+01, + 3.71428566e+01, 8.78571415e+00, 3.57142854e+00, 6.69047642e+00, + 7.42857122e+00, 1.61666660e+01, 1.03095236e+01, 3.06190472e+01, + 5.40952377e+01, 2.63095245e+01, 1.12619047e+01, 1.71190472e+01, + 1.11904764e+01, 3.38095245e+01, 1.95238094e+01, 2.21904755e+01, + 4.03571434e+01, 4.61428566e+01, 2.06666660e+01, 1.91666660e+01, + 8.57142830e+00, 1.80952377e+01, 1.34761906e+01, 9.14285755e+00, + 1.68809528e+01, 3.25238113e+01, 2.57142849e+01, 2.88181820e+01, + 1.29090910e+01, 2.60909100e+01, 1.09519478e+02, 1.64545460e+01, + 4.45454550e+00, 1.48441563e+01, 8.37142868e+01, 3.17142849e+01, + 1.81818180e+01, 5.31168823e+01, 1.07753250e+02, 1.21168833e+01, + 5.22077942e+00, 2.62597408e+01, 1.05766235e+02, 31., + 1.81428566e+01, 4.92597389e+01, 9.73246765e+01, 1.27272730e+01, + 8.79220772e+00, 4.67402611e+01, 1.12649353e+02, 2.68701305e+01, + 1.70389614e+01, 2.62337666e+01, 51., 8.03896141e+00, + 7.19480515e+00, 3.61688309e+01, 9.25844193e+01, 2.82987022e+01, + 1.51168833e+01, 3.19480515e+01, 1.06922081e+02, 1.91038952e+01, + 7.68831158e+00, 2.32597408e+01, 1.03896103e+02, 4.28961029e+01, + 2.09090900e+01, 4.11558456e+01, 8.93896103e+01, 1.15324678e+01, + 6.84415579e+00, 5.53636360e+01, 1.24779221e+02, 3.73766251e+01, + 2.45064926e+01, 3.34285698e+01, 4.54155846e+01, 1.24285717e+01, + 1.37402601e+01, 6.17532463e+01, 1.05363640e+02, 2.68701305e+01, + 2.22857151e+01, 1.97662334e+01, 1.84155846e+01, 1.15324678e+01, + 1.27142859e+01, 2.92077923e+01, 4.94415588e+01, 3.32077904e+01, + 1.89480515e+01, 2.04545460e+01, 5.22727280e+01, 1.29480524e+01, + 1.50259743e+01, 4.04675331e+01, 1.04948051e+02, 47., + 2.79480515e+01, 1.78701305e+01, 2.20649357e+01, 9.27272701e+00, + 1.11298704e+01, 3.54285698e+01, 9.09480515e+01, 3.07012978e+01, + 3.05974026e+01, 2.18181820e+01, 1.80389614e+01, 1.31558437e+01, + 1.52987013e+01, 2.57662334e+01, 3.59870148e+01, 1.98181820e+01, + 2.15844154e+01, 2.24675331e+01, 1.90519485e+01, 1.35714283e+01, + 1.20389614e+01, 1.39090910e+01, 1.72337666e+01, 1.96493511e+01, + 1.38701296e+01, 8.67532444e+00, 8.40259743e+00, 4.90909100e+00, + 6.57142878e+00, 1.74415588e+01, 3.93246765e+01, 1.95324669e+01, + 1.94675331e+01, 1.25194807e+01, 9.49350643e+00, 7.05194807e+00, + 8.05194759e+00, 1.16233768e+01, 1.88181820e+01, 1.54545450e+01, + 1.93506489e+01, 1.68571434e+01, 1.43766232e+01, 9.33766270e+00, + 8.01298714e+00, 8.75324631e+00, 1.05454550e+01, 1.28831167e+01, + 1.31428576e+01, 1.19480524e+01, 1.00129871e+01, 8.72727299e+00, + 7.62337685e+00, 7.41558456e+00, 9.67532444e+00, 1.55813956e+00, + 1.83720934e+00, 2.30232549e+00, 4.79069757e+00, 4.22325592e+01, + 7.54883728e+01, 1.28139534e+01, 2.06976748e+00, 4.74418592e+00, + 3.13720932e+01, 1.65813961e+01, 9.58139515e+00, 3.78139534e+01, + 6.69302292e+01, 1.67674427e+01, 5.06976748e+00, 7.76744175e+00, + 1.32302322e+02, 8.57209320e+01, 1.12558136e+01, 3.27906990e+01, + 5.57441864e+01, 2.02325573e+01, 5.62790680e+00, 6.02325583e+00, + 1.38674423e+02, 1.40604645e+02, 8.11627865e+00, 1.86511631e+01, + 8.96511612e+01, 7.06046524e+01, 5.27906990e+00, 2.16279078e+00, + 2.48837209e+00, 2.95348835e+00, 4.90697670e+00, 2.92325573e+01, + 9.15813980e+01, 3.00465107e+01, 3.53488374e+00, 2.48837209e+00, + 1.69767439e+00, 1.58139539e+00, 4.18604660e+00, 3.31395340e+01, + 1.26581398e+02, 5.60232544e+01, 4.34883738e+00, 3.55813956e+00, + 5.48837233e+00, 6.95348835e+00, 6.53488350e+00, 3.20232544e+01, + 1.11813957e+02, 6.33255806e+01, 8.06976700e+00, 2.72093034e+00, + 3.69534874e+01, 4.51395340e+01, 6.67441845e+00, 3.11395340e+01, + 8.52093048e+01, 5.00697670e+01, 8.69767475e+00, 5.86046505e+00, + 9.32558155e+00, 9.53488350e+00, 6.20930243e+00, 1.15116282e+01, + 3.30697670e+01, 2.13023262e+01, 5.65116262e+00, 4.18604660e+00, + 5.25581408e+00, 4.41860485e+00, 4.69767427e+00, 1.68372097e+01, + 9.23720932e+01, 6.13023262e+01, 6.95348835e+00, 1.58139539e+00, + 1.27906978e+00, 9.30232584e-01, 1.83720934e+00, 1.07209301e+01, + 116., 1.08697678e+02, 7.95348835e+00, 9.06976759e-01, + 4.18604642e-01, 6.04651153e-01, 1.37209308e+00, 7.74418592e+00, + 9.40465088e+01, 1.13325584e+02, 9.53488350e+00, 2.04651165e+00, + 4.46511650e+00, 4.81395340e+00, 2.18604660e+00, 1.86046517e+00, + 2.93023252e+00, 3.32558131e+00, 1.88372087e+00, 2.95348835e+00, + 6.48837233e+00, 5.06976748e+00, 2.46511626e+00, 3.06976748e+00, + 9.04651165e+00, 9.34883690e+00, 2.86046505e+00, 2., + 3.86046505e+00, 2.65116286e+00, 1.27906978e+00, 2.93023252e+00, + 19., 2.11627903e+01, 3.18604660e+00, 8.13953459e-01, + 1.34883726e+00, 7.44186044e-01, 4.41860467e-01, 1.65116274e+00, + 2.30930233e+01, 3.18372097e+01, 2.95348835e+00, 3.15957451e+00, + 3.53191495e+00, 8.44680882e+00, 8.08510685e+00, 3.97872329e+00, + 2.70212770e+00, 1.80851066e+00, 2.03191495e+00, 3.12765956e+00, + 5.44680834e+00, 1.72553196e+01, 1.27659578e+01, 4.47872353e+00, + 2.15957451e+00, 1.30851066e+00, 1.58510637e+00, 2.56382990e+00, + 7.12765980e+00, 2.38617020e+01, 1.29255323e+01, 3.72340417e+00, + 1.96808505e+00, 1.23404253e+00, 1.39361703e+00, 1.94680846e+00, + 7.12765980e+00, 1.98723412e+01, 7.71276617e+00, 2.13829780e+00, + 1.27659571e+00, 7.02127635e-01, 7.87234068e-01, 7.32978725e+00, + 9.38297844e+00, 3.97234039e+01, 5.57659569e+01, 1.29787235e+01, + 5.57446814e+00, 4.04255342e+00, 6.07446814e+00, 5.81914902e+00, + 1.25212765e+01, 1.15031914e+02, 9.81063843e+01, 9.23404217e+00, + 3.36170220e+00, 4.46808529e+00, 5.43617010e+00, 3.45744681e+00, + 3.02978725e+01, 1.40244675e+02, 6.68617020e+01, 5.23404264e+00, + 3.31914902e+00, 5.39361715e+00, 3.31914902e+00, 4.17021275e+00, + 5.69255333e+01, 1.21734039e+02, 1.95744686e+01, 3.53191495e+00, + 5.18085098e+00, 4.87234020e+00, 2.50000000e+00, 4.64893627e+00, + 4.48936176e+00, 5.78297882e+01, 1.41723404e+02, 2.64787235e+01, + 4.12765980e+00, 5.40425539e+00, 9.73404217e+00, 2.50000000e+00, + 4.45744658e+00, 1.34978729e+02, 1.42074463e+02, 6.61702108e+00, + 1.60638297e+00, 6.11702108e+00, 7.45744658e+00, 2.70212770e+00, + 3.28510628e+01, 1.40351059e+02, 6.09574471e+01, 2.14893627e+00, + 3.73404264e+00, 1.00106382e+01, 6.88297892e+00, 3.69148946e+00, + 1.02234039e+02, 1.29765961e+02, 5.87234020e+00, 2.09574461e+00, + 7.17021275e+00, 1.00957451e+01, 4.46808529e+00, 5.36170197e+00, + 1.97872341e+00, 1.93297863e+01, 132., 6.39468079e+01, + 1.68085110e+00, 3.40425539e+00, 9.47872353e+00, 1.03191490e+01, + 5.44680834e+00, 3.21489372e+01, 6.08723412e+01, 1.27127657e+01, + 5.65957451e+00, 2.29787235e+01, 3.52978706e+01, 9.28723431e+00, + 1.35319147e+01, 2.65851059e+01, 1.24893618e+01, 8.52127647e+00, + 1.76702137e+01, 4.59468079e+01, 3.67340431e+01, 1.02234039e+01, + 3.33404274e+01, 1.65000000e+01, 2.78723407e+00, 5.08510637e+00, + 1.80106392e+01, 3.22340431e+01, 1.58510637e+01, 2.19823017e+01, + 1.18849554e+01, 1.64778767e+01, 2.72389374e+01, 3.15486717e+01, + 3.35044250e+01, 4.97610626e+01, 4.77345123e+01, 3.26725655e+01, + 1.73008842e+01, 2.34336281e+01, 3.48407097e+01, 4.07876091e+01, + 4.35575218e+01, 5.96725655e+01, 6.18053093e+01, 2.79292030e+01, + 1.61415920e+01, 1.83539829e+01, 2.33097343e+01, 2.42123890e+01, + 2.82300892e+01, 4.65044250e+01, 5.30442467e+01, 2.09734511e+00, + 1.38938057e+00, 2.38053107e+00, 3.66371679e+00, 3.13274336e+00, + 4.01769924e+00, 6.99115038e+00, 5.70796442e+00, 3.20177002e+01, + 1.98141594e+01, 2.22920361e+01, 3.41150436e+01, 4.97522125e+01, + 5.15840721e+01, 6.95575256e+01, 6.73185806e+01, 4.36637154e+01, + 2.11327438e+01, 2.79115047e+01, 4.11504440e+01, 5.55044250e+01, + 5.97168159e+01, 8.86194687e+01, 9.08230057e+01, 3.57522125e+01, + 1.95309734e+01, 2.27345123e+01, 3.16637173e+01, 3.63008842e+01, + 4.58053093e+01, 7.43716812e+01, 7.46548691e+01, 3.99115038e+00, + 2.39823008e+00, 3.37168145e+00, 5.09734535e+00, 5.27433634e+00, + 6.05309725e+00, 1.06725664e+01, 9.76991177e+00, 4.85663719e+01, + 3.71150436e+01, 1.95132751e+01, 2.30884953e+01, 5.46902657e+01, + 6.32212372e+01, 7.32035370e+01, 6.39557533e+01, 4.32389374e+01, + 2.09734516e+01, 2.33008842e+01, 3.69026566e+01, 5.38938065e+01, + 5.75221252e+01, 8.75752182e+01, 9.04336319e+01, 2.78849564e+01, + 1.50353985e+01, 2.36814156e+01, 3.54513283e+01, 3.94690247e+01, + 4.31592903e+01, 7.00088501e+01, 6.74778748e+01, 3.53097343e+00, + 2.20353985e+00, 3.48672557e+00, 5.04424763e+00, 5.42477894e+00, + 6.53097343e+00, 9.62831879e+00, 7.51327419e+00, 5.92212372e+01, + 7.21415939e+01, 3.99911499e+01, 1.60442486e+01, 4.75309753e+01, + 7.43805313e+01, 6.86106186e+01, 4.26902657e+01, 4.05044250e+01, + 3.88407097e+01, 2.80619469e+01, 2.67522125e+01, 4.63274345e+01, + 5.99822998e+01, 7.91238937e+01, 6.50177002e+01, 1.58761063e+01, + 1.20973454e+01, 2.02477875e+01, 2.96637173e+01, 3.38407097e+01, + 3.70619469e+01, 6.09292030e+01, 4.49115028e+01, 1.59292030e+00, + 1.22123897e+00, 3.24778771e+00, 4.09734535e+00, 3.69026542e+00, + 4.23008871e+00, 7.81415939e+00, 5.15044260e+00, 2.34788723e+01, + 6.39859161e+01, 3.68169022e+01, 5.15492964e+00, 1.47887325e+00, + 1.35211265e+00, 2.25352120e+00, 3.36619711e+00, 1.52816906e+01, + 5.13943672e+01, 7.67605667e+01, 2.48169022e+01, 6.46478891e+00, + 5.30985928e+00, 6.57746458e+00, 7.71830988e+00, 7.90140867e+00, + 1.95774651e+01, 7.06478882e+01, 6.68450699e+01, 2.23521118e+01, + 8.53521156e+00, 5.43661976e+00, 6.45070410e+00, 1.83098590e+00, + 4.25352097e+00, 2.44366188e+01, 5.05774651e+01, 2.80563374e+01, + 7.28169012e+00, 1.92957747e+00, 1.69014084e+00, 1.46619720e+01, + 4.70563393e+01, 3.72676048e+01, 6.71830988e+00, 1.33802819e+00, + 4.64788723e+00, 2.50704217e+00, 1.74647892e+00, 6.02816916e+00, + 5.10140839e+01, 7.21126785e+01, 2.22957745e+01, 3.66197181e+00, + 2.28169012e+00, 9.57746506e-01, 1.07042253e+00, 2.70422530e+00, + 2.32676048e+01, 7.02816925e+01, 4.13239441e+01, 9.07042217e+00, + 3.81690145e+00, 2.22535205e+00, 1.56338024e+00, 2.54929566e+00, + 6.08450699e+00, 3.47746468e+01, 3.25352097e+01, 1.14507046e+01, + 4.66197205e+00, 7.54929590e+00, 1.94366188e+01, 5.04225349e+00, + 3.58309860e+01, 3.20704231e+01, 3.70422530e+00, 2.14084506e+00, + 7.78028183e+01, 9.61408463e+01, 2.63380289e+00, 4.78873253e+00, + 2.90140839e+01, 3.98309860e+01, 1.04788733e+01, 3.18309855e+00, + 2.37042255e+01, 1.01450706e+02, 1.14507046e+01, 3.23943663e+00, + 1.40985918e+01, 4.69436607e+01, 2.11408443e+01, 4.81690121e+00, + 5.88732386e+00, 1.02633804e+02, 5.43380280e+01, 3.08450699e+00, + 3.54929566e+00, 4.27183113e+01, 5.38169022e+01, 3.66197181e+00, + 3.21126771e+00, 8.87464752e+01, 1.07098595e+02, 1.29577470e+00, + 6.11690140e+01, 1.03169014e+02, 2.40845060e+00, 1.81690145e+00, + 4.19718323e+01, 7.18309860e+01, 2.67605639e+00, 2.01408458e+00, + 3.02112675e+01, 1.17366196e+02, 1.22112675e+01, 1.40845072e+00, + 2.31549301e+01, 1.10492958e+02, 1.39154930e+01, 1.87323940e+00, + 6.02816916e+00, 1.19295776e+02, 5.58309860e+01, 1.47887325e+00, + 5.43661976e+00, 102., 4.15352097e+01, 1.74647892e+00, + 1.53521132e+00, 9.48873215e+01, 89., 1.42253518e+00, + 2.59154940e+00, 4.65633812e+01, 3.83239441e+01, 2.42465758e+00, + 2.58904099e+00, 1.98630142e+00, 1.34246576e+00, 1.54794526e+00, + 3.63013697e+00, 3.72602749e+00, 2.30136991e+00, 4.41095877e+00, + 1.39726031e+00, 1.26027393e+00, 1.71232879e+00, 1.94520545e+00, + 2.56164384e+00, 4.73972607e+00, 4.27397251e+00, 2.35616446e+00, + 7.80821919e-01, 8.63013685e-01, 2.54794526e+00, 2.91780829e+00, + 2.63013697e+00, 3.28767133e+00, 3.89041090e+00, 2.01369858e+00, + 6.57534242e-01, 7.39726007e-01, 1.41095889e+00, 2.26027393e+00, + 1.78082192e+00, 2.08219171e+00, 3.65753436e+00, 6.80821896e+00, + 2.05068493e+01, 1.76164379e+01, 5.36986303e+00, 6.28767109e+00, + 1.61917801e+01, 1.27123289e+01, 6.80821896e+00, 9.94520569e+00, + 1.47260275e+01, 1.29452057e+01, 7.39726019e+00, 6.93150663e+00, + 1.10136986e+01, 1.14520550e+01, 9.27397251e+00, 7.83561659e+00, + 9.31506824e+00, 9.36986256e+00, 7.79452038e+00, 8.06849289e+00, + 9.69863033e+00, 1.02191782e+01, 1.12191782e+01, 4.95890427e+00, + 5.08219194e+00, 6.69863033e+00, 6.79452038e+00, 9.35616398e+00, + 7.80821896e+00, 8.71232891e+00, 9.98630142e+00, 5.52054787e+00, + 5.41917801e+01, 5.64520531e+01, 6., 1.30273972e+01, + 9.51369858e+01, 1.07383560e+02, 6.02739716e+00, 7.42465734e+00, + 5.03698616e+01, 6.72191772e+01, 1.08904114e+01, 9.06849289e+00, + 5.03287659e+01, 6.53424683e+01, 1.63424664e+01, 7.52054787e+00, + 3.06438351e+01, 5.47671242e+01, 1.50684929e+01, 8.54794502e+00, + 1.91506844e+01, 3.80136986e+01, 1.84520550e+01, 5.53424644e+00, + 1.82054787e+01, 3.22191772e+01, 1.09178085e+01, 7.98630142e+00, + 1.27123289e+01, 2.79315071e+01, 1.22602739e+01, 7.47945213e+00, + 9.13424683e+01, 9.97671204e+01, 5.71232891e+00, 1.26164379e+01, + 1.21082191e+02, 1.31424652e+02, 8.10958862e+00, 5.95890427e+00, + 6.03424644e+01, 8.41506882e+01, 1.17808218e+01, 1.29452057e+01, + 1.35684937e+02, 1.42643829e+02, 3.04246578e+01, 5.73972607e+00, + 3.25753441e+01, 6.34931488e+01, 1.54109592e+01, 1.05479450e+01, + 1.11493149e+02, 1.39287674e+02, 4.81780815e+01, 5.52054787e+00, + 2.22054787e+01, 4.08082199e+01, 1.07123289e+01, 5.39726019e+00, + 6.65890427e+01, 1.13561646e+02, 2.72602749e+01, 7.31111097e+00, + 5.93333340e+00, 3.53333330e+00, 1.71111107e+00, 2.42222214e+00, + 4.73333311e+00, 10., 9.02222252e+00, 2.67777786e+01, + 2.26444435e+01, 1.38222218e+01, 1.31111107e+01, 2.17555561e+01, + 4.42666664e+01, 5.94444427e+01, 4.30666656e+01, 3.20444450e+01, + 2.93111115e+01, 1.61777782e+01, 1.58000002e+01, 4.26222229e+01, + 1.13088890e+02, 9.56666641e+01, 5.14888878e+01, 4.02888870e+01, + 9.57777786e+01, 2.44666672e+01, 6.80000019e+00, 4.79111099e+01, + 1.26622223e+02, 8.63777771e+01, 20., 7.46666670e+00, + 7.40000010e+00, 5.75555563e+00, 3.24444437e+00, 4.26666689e+00, + 6.17777777e+00, 1.29111109e+01, 9.53333378e+00, 4.75999985e+01, + 3.89111099e+01, 2.12222214e+01, 1.29555559e+01, 1.72666664e+01, + 3.58444443e+01, 6.34666672e+01, 5.71555557e+01, 4.62888870e+01, + 2.85777779e+01, 2.13555565e+01, 2.19333324e+01, 3.21555557e+01, + 6.34222221e+01, 8.75111084e+01, 7.69555588e+01, 2.69777775e+01, + 4.12666664e+01, 1.87777786e+01, 2.20222225e+01, 7.14666672e+01, + 1.20333336e+02, 8.78444443e+01, 3.78444443e+01, 5.84444427e+00, + 4.64444447e+00, 6.28888893e+00, 3.82222223e+00, 3.33333325e+00, + 6.46666670e+00, 1.72222214e+01, 1.15777779e+01, 4.91777763e+01, + 3.70222206e+01, 2.26888885e+01, 1.58222218e+01, 1.94666672e+01, + 3.13111115e+01, 6.28666649e+01, 5.83111115e+01, 5.85999985e+01, + 4.29555550e+01, 2.89777775e+01, 2.27777786e+01, 2.64888897e+01, + 4.63111115e+01, 6.88888855e+01, 7.05999985e+01, 3.01777782e+01, + 2.02888889e+01, 2.14222221e+01, 2.40444450e+01, 4.34222221e+01, + 7.67555542e+01, 6.99333344e+01, 48., 6.19999981e+00, + 6.22222233e+00, 7.57777786e+00, 4.13333321e+00, 3., + 4.93333340e+00, 1.13111115e+01, 9.46666622e+00, 2.96444435e+01, + 2.35111103e+01, 2.65777779e+01, 2.12444439e+01, 1.95777779e+01, + 2.75111103e+01, 4.89333344e+01, 4.57777786e+01, 4.49333344e+01, + 3.41777763e+01, 3.25111122e+01, 2.63777771e+01, 2.26222229e+01, + 2.83333340e+01, 4.56666679e+01, 5.52000008e+01, 3.36666679e+01, + 2.56666660e+01, 2.60444450e+01, 2.33111115e+01, 2.26222229e+01, + 2.89333324e+01, 3.82444458e+01, 4.12222214e+01, 3.24137926e+00, + 1.31034482e+00, 4.65517235e+00, 4.96551704e+00, 2.10344839e+00, + 1.68965518e+00, 2.58620691e+00, 4.17241383e+00, 1.00689659e+01, + 7.41379309e+00, 30., 2.56206894e+01, 1.11034479e+01, + 1.65862064e+01, 2.01724129e+01, 1.74482765e+01, 7.68965530e+00, + 1.93448277e+01, 5.04827576e+01, 2.45862064e+01, 1.14482756e+01, + 2.81034489e+01, 3.68275871e+01, 1.57586203e+01, 5.48275852e+00, + 2.23793106e+01, 4.12068977e+01, 1.26896553e+01, 9.79310322e+00, + 2.91724129e+01, 3.46896553e+01, 8.48275852e+00, 4.72413778e+00, + 1.96551728e+00, 1.05862064e+01, 1.33793106e+01, 5.89655161e+00, + 3.86206889e+00, 8.20689678e+00, 1.03793106e+01, 8.68965530e+00, + 1.34827585e+01, 8.33448257e+01, 7.49310379e+01, 2.09655170e+01, + 2.46896553e+01, 5.76551743e+01, 3.99310341e+01, 1.52068968e+01, + 5.72068977e+01, 1.00551727e+02, 4.61724129e+01, 1.09310341e+01, + 4.64137917e+01, 9.21724167e+01, 4.69655190e+01, 1.49655170e+01, + 7.05862045e+01, 8.23103485e+01, 2.27241383e+01, 1.65517235e+01, + 8.67586212e+01, 8.40344849e+01, 1.70689659e+01, 1.68965518e+00, + 1.18965521e+01, 1.41724138e+01, 1.29655170e+01, 8.93103409e+00, + 6.72413778e+00, 8.82758617e+00, 8.03448296e+00, 1.08620691e+01, + 2.42068958e+01, 6.73103485e+01, 5.81379318e+01, 2.56551723e+01, + 2.78275871e+01, 6.81724167e+01, 6.29310341e+01, 4.45172424e+01, + 5.51034470e+01, 6.87241364e+01, 3.86896553e+01, 2.52758617e+01, + 4.00344810e+01, 7.64137955e+01, 6.95862045e+01, 4.12413788e+01, + 5.75172424e+01, 4.42758636e+01, 4.34827576e+01, 4.47241364e+01, + 6.62413788e+01, 5.51034470e+01, 3.49310341e+01, 3.13793111e+00, + 1.84827595e+01, 1.47931032e+01, 4.86206913e+00, 5.72413778e+00, + 2.45517235e+01, 1.16206894e+01, 5.10344839e+00, 1.66896553e+01, + 4.81379318e+01, 6.37586212e+01, 2.93793106e+01, 1.63448277e+01, + 4.58965530e+01, 4.97241364e+01, 3.35862083e+01, 4.17931023e+01, + 5.34137917e+01, 7.21379318e+01, 4.19655190e+01, 2.48620682e+01, + 3.28965530e+01, 5.43448257e+01, 4.03103447e+01, 2.75517235e+01, + 2.78620682e+01, 6.56206894e+01, 7.00344849e+01, 4.77241364e+01, + 2.43448277e+01, 3.72758636e+01, 4.31379318e+01, 3.07843137e+00, + 2.98039222e+00, 1.74509799e+00, 1.45098042e+00, 5.50980377e+00, + 3.31372547e+00, 2.03921580e+00, 1.68627453e+00, 6.18235283e+01, + 2.68823528e+01, 7.09803915e+00, 5.84313726e+00, 4.03333321e+01, + 1.60980396e+01, 8.25490189e+00, 8.13725471e+00, 1.43509811e+02, + 4.08039207e+01, 3.88235283e+00, 5.43137264e+00, 7.13137283e+01, + 2.41568623e+01, 8.49019623e+00, 1.75294113e+01, 2.40588226e+01, + 7.19607830e+00, 3.13725495e+00, 1.51176472e+01, 1.24921570e+02, + 2.78039207e+01, 4.80392170e+00, 5.70588255e+00, 3.03921580e+00, + 3.41176462e+00, 2.41176462e+00, 1.88235295e+00, 4.41176462e+00, + 3.35294127e+00, 2.11764717e+00, 2.05882359e+00, 6.26078415e+01, + 2.06470585e+01, 4.56862736e+00, 5.82352924e+00, 5.54313736e+01, + 1.76470585e+01, 5.17647076e+00, 7.43137264e+00, 1.50431366e+02, + 4.96274529e+01, 1.35294116e+00, 5.56862736e+00, 9.26666641e+01, + 2.12549019e+01, 2.09803915e+00, 1.03333330e+01, 4.01568642e+01, + 9.80392170e+00, 1.76470590e+00, 1.16078434e+01, 1.48647064e+02, + 3.61372566e+01, 2.78431368e+00, 4.45098019e+00, 3.15686274e+00, + 2.78431368e+00, 2.23529410e+00, 1.86274505e+00, 3.84313726e+00, + 2.41176462e+00, 2.21568632e+00, 2.37254906e+00, 4.56078415e+01, + 1.35490198e+01, 4.01960802e+00, 6.27450991e+00, 4.99215698e+01, + 1.53333330e+01, 6.96078444e+00, 9.50980377e+00, 1.50431366e+02, + 5.08823547e+01, 2.23529410e+00, 7.21568632e+00, 8.23921585e+01, + 1.75686283e+01, 1.74509799e+00, 1.06862745e+01, 4.85294113e+01, + 1.19411764e+01, 2.47058821e+00, 1.24705887e+01, 1.49725494e+02, + 3.96274529e+01, 1.45098042e+00, 3.78431368e+00, 2.03921580e+00, + 2.07843137e+00, 1.66666663e+00, 1.47058821e+00, 2.74509811e+00, + 1.68627453e+00, 1.49019611e+00, 1.70588231e+00, 2.55098038e+01, + 8.86274529e+00, 4.43137264e+00, 5.80392170e+00, 3.15490189e+01, + 9.84313679e+00, 5.07843161e+00, 8.49019623e+00, 1.37098038e+02, + 3.90588226e+01, 5.76470566e+00, 8.37254906e+00, 5.24509811e+01, + 1.16470585e+01, 2.74509811e+00, 1.45686274e+01, 4.10588226e+01, + 1.25098038e+01, 7.31372547e+00, 1.55098038e+01, 1.26764709e+02, + 2.95294113e+01, 3.19607854e+00, 3.52941179e+00, 1.76744187e+00, + 2.75813961e+01, 7.30930252e+01, 4.16279078e+00, 1.04651165e+00, + 1.30930233e+01, 6.46511612e+01, 1.30930233e+01, 3.27906966e+00, + 9.07674408e+01, 8.14883728e+01, 2.06976748e+00, 1.18604648e+00, + 4.03488388e+01, 5.94651146e+01, 4.72093010e+00, 1.18372097e+01, + 1.21232559e+02, 6.43953476e+01, 1.55813956e+00, 2.13953495e+00, + 3.54418602e+01, 1.94418602e+01, 2.18604660e+00, 2.13023262e+01, + 1.08418602e+02, 2.93488369e+01, 3.16279078e+00, 3.79069757e+00, + 1.71162796e+01, 4.20930243e+00, 2.34883714e+00, 3.41860461e+00, + 1.14186049e+01, 2.33953495e+01, 2.58139539e+00, 6.51162803e-01, + 1.10930233e+01, 1.11837212e+02, 5.06744194e+01, 3.16279078e+00, + 3.14418602e+01, 1.99302330e+01, 5.34883738e-01, 6.04651153e-01, + 7.56976776e+01, 1.19744186e+02, 1.68372097e+01, 1.38604650e+01, + 9.16511612e+01, 1.93023262e+01, 3.25581402e-01, 5.09302330e+00, + 1.13441864e+02, 7.42093048e+01, 4.41860485e+00, 5.05348854e+01, + 124., 1.64418602e+01, 1.13953483e+00, 1.32790699e+01, + 6.17441864e+01, 8.76744175e+00, 1.72093022e+00, 13., + 6.97674417e+00, 6.13953495e+00, 1.60465121e+00, 1.90697670e+00, + 8.76744175e+00, 4.79069786e+01, 3.80930214e+01, 1.01395350e+01, + 1.17441864e+01, 7.13953495e+00, 1.62790692e+00, 2.37209296e+00, + 3.27674408e+01, 6.52093048e+01, 1.99767437e+01, 7., + 2.33255806e+01, 3.65116286e+00, 5.11627913e-01, 2.25348835e+01, + 1.16558136e+02, 5.10930214e+01, 5.02325583e+00, 5.29069786e+01, + 6.59534912e+01, 2.16279078e+00, 9.76744175e-01, 4.94651146e+01, + 1.09465118e+02, 9.81395340e+00, 3.25581384e+00, 1.41860466e+01, + 7.13953495e+00, 3.44186044e+00, 2.67441869e+00, 3.74418616e+00, + 6.27906990e+00, 1.16511631e+01, 1.74418602e+01, 1.23023252e+01, + 9.32558155e+00, 5.69767427e+00, 3.09302330e+00, 4.86046505e+00, + 1.09767447e+01, 1.45116282e+01, 1.57209301e+01, 1.05348835e+01, + 1.01395350e+01, 2.09302330e+00, 2.72093034e+00, 3.11162796e+01, + 3.71395340e+01, 1.39767447e+01, 9.55813980e+00, 2.81627903e+01, + 1.65581398e+01, 1., 5.23255825e+00, 8.60465088e+01, + 6.55116272e+01, 4.13953495e+00, 3.48837209e+00, 8.40677929e+00, + 1.77288132e+01, 4.00169487e+01, 3.39152527e+01, 1.22203388e+01, + 5.76271200e+00, 7.66101694e+00, 7.88135576e+00, 4.66101694e+00, + 8.74576283e+00, 3.17966099e+01, 6.47796631e+01, 3.21694908e+01, + 9.42372894e+00, 5.44067812e+00, 4.42372894e+00, 1.13559318e+00, + 2.11864400e+00, 1.62881355e+01, 4.63389816e+01, 3.49152527e+01, + 1.13898306e+01, 5.33898306e+00, 2.67796612e+00, 3.67288132e+01, + 1.20338988e+00, 4.84745741e+00, 2.37627125e+01, 1.90677967e+01, + 7.15254259e+00, 5.45762730e+00, 5.18135605e+01, 3.89830518e+00, + 2.51864414e+01, 5.19152527e+01, 3.43898315e+01, 6.38983059e+00, + 1.45762718e+00, 7.45762706e-01, 1.37288141e+00, 1.83050847e+00, + 1.00508471e+01, 4.91016960e+01, 5.17118645e+01, 1.88983059e+01, + 4.79661036e+00, 3.81355929e+00, 2.69491529e+00, 4.61016941e+00, + 3.05084753e+00, 2.83898296e+01, 4.13220329e+01, 2.02711868e+01, + 8.55932236e+00, 1.66610165e+01, 6.30169487e+01, 4.00847473e+01, + 1.66101694e+00, 8.08474541e+00, 8.36610184e+01, 2.25254230e+01, + 3.77966094e+00, 1.25423727e+01, 1.23813560e+02, 2.64406776e+00, + 1.60508480e+01, 3.64067802e+01, 1.44915257e+01, 3.15254235e+00, + 9.15254211e+00, 8.52203369e+01, 1.46949148e+01, 2.15254235e+00, + 7.16949129e+00, 4.78644066e+01, 3.32203407e+01, 6.15254259e+00, + 5.25423717e+00, 1.03406776e+02, 8.39661026e+01, 5.62711859e+00, + 2.50847459e+00, 5.81186447e+01, 1.04101692e+02, 5.76271200e+00, + 3.91525435e+00, 9.20169525e+01, 1.24966103e+02, 9.67796612e+00, + 2.08474565e+00, 3.12542381e+01, 1.24084747e+02, 1.14237289e+01, + 1.64406776e+00, 1.84067802e+01, 8.41525421e+01, 1.44067800e+00, + 1.05423727e+01, 1.15169495e+02, 2.01864414e+01, 9.83050823e-01, + 8.94915295e+00, 1.01220337e+02, 1.96949158e+01, 2.10169482e+00, + 3.11864400e+00, 1.18389832e+02, 8.44406815e+01, 1.59322035e+00, + 3.79661012e+00, 8.26779633e+01, 4.83559303e+01, 4.50847435e+00, + 2.16949153e+00, 8.29830475e+01, 1.03254234e+02, 2.18644071e+00, + 3.15254235e+00, 2.72711868e+01, 3.26440697e+01, 7.57627106e+00, + 2.01694918e+00, 1.17966099e+01, 3.32542381e+01, 1.77966106e+00, + 2.49152541e+00, 1.22372885e+01, 1.91186447e+01, 9.04347801e+00, + 4.10144949e+00, 7.53623188e-01, 3.63768125e+00, 6.46521759e+01, + 5.09420280e+01, 4.66666651e+00, 1.78260875e+00, 8.83478241e+01, + 3.52463760e+01, 2.27536225e+00, 4.01449299e+00, 3.04057980e+01, + 1.67826080e+01, 2.18840575e+00, 8.91304302e+00, 1.11710144e+02, + 4.99710159e+01, 4.43478251e+00, 2.71014500e+00, 7.94202900e+00, + 4.34782600e+00, 2.75362325e+00, 1.65072460e+01, 4.30579720e+01, + 1.88695660e+01, 3.26086950e+00, 1.53623188e+00, 1.52173913e+00, + 1.43478262e+00, 2.57971025e+00, 1.25942030e+01, 1.01449280e+01, + 2.37681150e+00, 1.13043475e+00, 2.31304340e+01, 1.12855072e+02, + 3.75507240e+01, 3.59420300e+00, 5.53623199e+00, 106., + 1.17101450e+01, 2.73913050e+00, 1.45797100e+01, 5.39855080e+01, + 1.40144930e+01, 2.57971025e+00, 3.83188400e+01, 1.32014496e+02, + 2.88840580e+01, 4.17391300e+00, 4.63768101e+00, 1.16376810e+01, + 4.11594200e+00, 3.88405800e+00, 5.29710159e+01, 6.16666679e+01, + 1.80724640e+01, 3.78260875e+00, 2.04347825e+00, 1.95652175e+00, + 2.47826076e+00, 5., 2.44347820e+01, 8.15942001e+00, + 1.97101450e+00, 3.05797100e+00, 6.59710159e+01, 9.99420319e+01, + 1.20144930e+01, 2.34782600e+00, 1.61449280e+01, 1.09362320e+02, + 4.68115950e+00, 3.31884050e+00, 2.76376820e+01, 3.86666679e+01, + 4.82608700e+00, 2.66666675e+00, 8.99855042e+01, 1.31362320e+02, + 1.17536230e+01, 3.15942025e+00, 5.98550701e+00, 8.52173901e+00, + 3.49275351e+00, 5.66666651e+00, 1.04086960e+02, 5.16956520e+01, + 1.15217390e+01, 3.18840575e+00, 2.31884050e+00, 3.07246375e+00, + 3.78260875e+00, 6.11594200e+00, 3.37971001e+01, 9.94202900e+00, + 1.52173913e+00, 6.34782600e+00, 6.64347839e+01, 3.46811600e+01, + 2.04347825e+00, 5.71014500e+00, 5.00144920e+01, 9.07391281e+01, + 2.63768125e+00, 2.95652175e+00, 2.16521740e+01, 1.06086960e+01, + 1.46376812e+00, 4.66666651e+00, 1.26768112e+02, 9.53043442e+01, + 6.84057951e+00, 2.27536225e+00, 4.10144949e+00, 4.24637699e+00, + 3.02898550e+00, 8.76811600e+00, 1.01884056e+02, 2.55797100e+01, + 6.37681150e+00, 3.01449275e+00, 2.30434775e+00, 2.62318850e+00, + 3.24637675e+00, 6., 2.49275360e+01, 1.65211277e+01, + 9.46478844e+00, 3.69718323e+01, 2.62253513e+01, 8.29577446e+00, + 1.94084511e+01, 1.24591553e+02, 1.06957748e+02, 5.70845070e+01, + 1.16760559e+01, 1.52957745e+01, 1.34929581e+01, 5.45070410e+00, + 6.30985928e+00, 8.87605667e+01, 1.38338028e+02, 9.49014053e+01, + 1.52535210e+01, 5.52112675e+00, 3.95774651e+00, 3.91549301e+00, + 6.19718313e+00, 2.81408443e+01, 1.29140839e+02, 3.80281677e+01, + 1.27042255e+01, 6.59154940e+00, 5.30985928e+00, 6.85915470e+00, + 8.23943615e+00, 1.37464790e+01, 4.56338043e+01, 3.82957764e+01, + 8.95774651e+00, 2.57887325e+01, 1.39859152e+01, 6.45070410e+00, + 1.41971827e+01, 9.54647903e+01, 1.14633804e+02, 7.70281677e+01, + 1.00422535e+01, 1.00985918e+01, 8.38028145e+00, 5.12676048e+00, + 7.95774651e+00, 6.72535248e+01, 1.38028168e+02, 7.31690140e+01, + 18., 9.61971855e+00, 7.78873253e+00, 12., 1.35633802e+01, + 3.48873253e+01, 1.08704224e+02, 3.23239441e+01, 1.70704231e+01, + 1.14225349e+01, 8.21126747e+00, 1.03661976e+01, 1.15915489e+01, + 1.60140839e+01, 3.27887306e+01, 2.54507046e+01, 2.08450699e+00, + 1.87323940e+00, 1.32394361e+00, 2.66197181e+00, 1.12253523e+01, + 8.89859161e+01, 1.17408447e+02, 4.00845070e+01, 5.18309879e+00, + 4., 5.35211277e+00, 6.84507036e+00, 1.05492954e+01, + 5.95633812e+01, 1.21366196e+02, 3.45211258e+01, 1.26197186e+01, + 9.57746506e+00, 1.30845070e+01, 1.90563374e+01, 1.49718313e+01, + 2.82394371e+01, 5.96197166e+01, 2.31549301e+01, 1.15211267e+01, + 9.38028145e+00, 9.39436626e+00, 1.21126757e+01, 1.00422535e+01, + 1.37605639e+01, 2.52253513e+01, 6.32394361e+00, 7.60563374e-01, + 2.81690150e-01, 4.92957741e-01, 1.32394361e+00, 3.66197181e+00, + 1.98309860e+01, 2.48591557e+01, 8.81690121e+00, 2.22535205e+00, + 1.66197181e+00, 2.67605639e+00, 3.21126771e+00, 3.71830988e+00, + 9.85915470e+00, 1.90845070e+01, 7.45070410e+00, 3.19718313e+00, + 3.28169012e+00, 4.90140867e+00, 5.67605639e+00, 3.69014096e+00, + 5.90140867e+00, 1.07183094e+01, 5.61971807e+00, 2.53521132e+00, + 2.67605639e+00, 2.59154940e+00, 3.14084506e+00, 2.35211277e+00, + 4.08450699e+00, 7.76056337e+00, 1.55945950e+01, 1.15675674e+02, + 5.83783770e+00, 7.02702701e-01, 7.72972965e+00, 9.89189224e+01, + 8.97297287e+00, 1.24324322e+00, 1.19189186e+01, 6.77567596e+01, + 7.54054070e+00, 1.45945942e+00, 1.68918915e+01, 1.33216217e+02, + 1.16216221e+01, 1.91891897e+00, 1.24864864e+01, 43., + 9.67567539e+00, 3.72972965e+00, 9.18918896e+00, 4.98918915e+01, + 9.94594574e+00, 4.45945930e+00, 5.89189196e+00, 7.21621609e+00, + 4.89189196e+00, 3.45945954e+00, 3.21621633e+00, 6.08108091e+00, + 6.59459448e+00, 5.94594574e+00, 1.82972965e+01, 1.31135132e+02, + 9.24324322e+00, 1.54054058e+00, 9.54054070e+00, 7.38108139e+01, + 8.56756783e+00, 1.94594598e+00, 2.86216221e+01, 1.32459457e+02, + 1.11891890e+01, 1.54054058e+00, 1.88918915e+01, 1.30486481e+02, + 1.56216221e+01, 2.32432437e+00, 1.42432432e+01, 7.12162170e+01, + 1.71351357e+01, 5.29729748e+00, 3.10810814e+01, 1.34567566e+02, + 2.86756763e+01, 5.64864874e+00, 6.70270252e+00, 3.18918915e+01, + 2.02702694e+01, 4.43243265e+00, 7.54054070e+00, 3.29729729e+01, + 2.54324322e+01, 7.62162161e+00, 8.05405426e+00, 3.08378372e+01, + 6.67567587e+00, 3.67567563e+00, 1.08918915e+01, 5.37027016e+01, + 1.24054050e+01, 3.83783793e+00, 4.59729729e+01, 134., + 1.77297306e+01, 5.21621609e+00, 1.70540543e+01, 7.03783798e+01, + 1.53513517e+01, 7.29729748e+00, 2.98108101e+01, 9.10540543e+01, + 3.38108101e+01, 2.97837830e+01, 4.11081085e+01, 9.77837830e+01, + 3.93513527e+01, 1.62162170e+01, 8.81081104e+00, 2.13243237e+01, + 1.83783779e+01, 1.62162170e+01, 2.82702694e+01, 6.08378372e+01, + 5.29189186e+01, 1.72702694e+01, 4.48648643e+00, 2.91891885e+00, + 4., 4.21621609e+00, 8.81081104e+00, 1.12972975e+01, + 5.94594574e+00, 3.35135126e+00, 4.31891899e+01, 2.61081085e+01, + 6.10810804e+00, 6.35135126e+00, 2.01351357e+01, 3.00540543e+01, + 7.81081104e+00, 1.15945950e+01, 4.90540543e+01, 4.83513527e+01, + 20., 1.63513508e+01, 1.92702694e+01, 1.93783779e+01, + 1.21081085e+01, 1.49459457e+01, 9.35135174e+00, 1.01621618e+01, + 1.49459457e+01, 1.57027025e+01, 1.43783779e+01, 1.14054050e+01, + 1.17837839e+01, 9., 7.56097555e+00, 1.11463413e+01, + 1.05097565e+02, 3.94878044e+01, 2.56097555e+00, 1.36097565e+01, + 9.54878082e+01, 3.74634132e+01, 7.12195110e+00, 4.62926826e+01, + 1.17048782e+02, 1.75609760e+01, 4.41463423e+00, 4.24878044e+01, + 1.02243904e+02, 1.39512196e+01, 4.12195110e+00, 8.63902435e+01, + 1.02512192e+02, 6.34146357e+00, 5.48780489e+00, 9.41707306e+01, + 1.06073174e+02, 4.31707335e+00, 4.24390221e+00, 5.75853653e+01, + 3.88292694e+01, 3.39024401e+00, 5.92682934e+00, 1.14146339e+02, + 7.04146347e+01, 2.12195110e+00, 1.22682924e+01, 3.87804890e+00, + 2.63414631e+01, 1.49024391e+01, 2.68292689e+00, 2.91951218e+01, + 5.03414650e+01, 3.65121956e+01, 1.03170729e+01, 9.95121956e+00, + 3.21219521e+01, 5.92682934e+00, 11., 6.23170738e+01, 51., + 2.60487804e+01, 7.04878044e+00, 5.67073174e+01, 5.33170738e+01, + 4.26829290e+00, 2.51951218e+01, 6.76829300e+01, 2.64390240e+01, + 9.95121956e+00, 1.06829271e+01, 1.11902435e+02, 5.00975609e+01, + 3.63414645e+00, 2.17560978e+01, 7.84878082e+01, 1.65365849e+01, + 2.24390244e+00, 1.94390240e+01, 5.41463423e+00, 4.02439022e+00, + 6.24390221e+00, 1.05853662e+01, 2.32682934e+01, 5.22682915e+01, + 5.22439041e+01, 1.07560978e+01, 4.17073154e+00, 3.36585355e+00, + 1.03658533e+01, 2.53414631e+01, 7.58048782e+01, 6.55853653e+01, + 2.42195129e+01, 3.26829267e+00, 2.19512200e+00, 1.56097555e+00, + 7.43902445e+00, 5.57560959e+01, 8.18048782e+01, 2.46341457e+01, + 7., 9.39024353e+00, 3.64146347e+01, 3.43902445e+00, + 7.02439022e+00, 5.16097565e+01, 3.95609741e+01, 5.85365868e+00, + 2.41463423e+00, 2.03170738e+01, 1.68780479e+01, 1.49756098e+01, + 1.40975609e+01, 1.45853662e+01, 1.55365858e+01, 2.52682934e+01, + 3.46585350e+01, 1.34634142e+01, 1.94634151e+01, 2.03170738e+01, + 2.66585369e+01, 3.44146347e+01, 4.23414650e+01, 3.06097565e+01, + 1.53414631e+01, 1.90243900e+00, 3.17073178e+00, 7.78048801e+00, + 2.18048782e+01, 6.75609741e+01, 5.49756088e+01, 1.30731707e+01, + 2.14634156e+00, 3.39024401e+00, 2.46341467e+00, 1.56097555e+00, + 1.72682934e+01, 6.11463432e+01, 2.31463413e+01, 2.97560978e+00, + 1.41463411e+00, 4.18604660e+00, 7.76744175e+00, 3.25348854e+01, + 2.39069767e+01, 3.55813956e+00, 5.86046505e+00, 4.04883728e+01, + 3.21162796e+01, 1.48837214e+01, 25., 4.14883728e+01, + 1.88837204e+01, 8., 2.85581398e+01, 6.02093010e+01, + 3.18604660e+01, 1.99302330e+01, 3.20465126e+01, 3.89534874e+01, + 2.81860466e+01, 1.98604660e+01, 5.74883728e+01, 7.39069748e+01, + 2.45581398e+01, 6.39534903e+00, 1.19069767e+01, 5.50232544e+01, + 5.19069786e+01, 1.43720932e+01, 2.43488369e+01, 8.28139572e+01, + 3.47209320e+01, 1.78372097e+01, 1.19069767e+01, 2.34883728e+01, + 1.84418602e+01, 1.08372097e+01, 1.16511631e+01, 2.29767437e+01, + 3.34651146e+01, 3.29302330e+01, 2.63953495e+01, 4.03023262e+01, + 3.97441864e+01, 2.55348835e+01, 2.34883728e+01, 2.78139534e+01, + 3.90697670e+01, 2.62558136e+01, 2.35581398e+01, 7.29069748e+01, + 9.93953476e+01, 5.99534874e+01, 2.37906971e+01, 3.62325592e+01, + 4.30465126e+01, 1.05116282e+01, 1.21162786e+01, 9.68604660e+01, + 9.71395340e+01, 3.28372078e+01, 1.21627903e+01, 7.05116272e+01, + 6.20930214e+01, 8.65116310e+00, 1.40697670e+01, 7.77209320e+01, + 3.48139534e+01, 8.16279030e+00, 1.35348835e+01, 3.75116272e+01, + 1.88139534e+01, 1.02325583e+01, 1.20697670e+01, 1.03186043e+02, + 8.49069748e+01, 1.91162796e+01, 1.23953485e+01, 5.74883728e+01, + 4.20697670e+01, 1.04186049e+01, 6.11627913e+00, 8.03023224e+01, + 9.92093048e+01, 3.49534874e+01, 1.20697670e+01, 7.33488388e+01, + 7.83023224e+01, 7.23255825e+00, 3.51162791e+00, 3.34418602e+01, + 38., 1.88139534e+01, 1.16511631e+01, 6.89534912e+01, + 6.89534912e+01, 8.37209284e-01, 2.60465121e+00, 4.62093010e+01, + 2.22790699e+01, 1.79069769e+00, 8.58139515e+00, 5.87209320e+01, + 1.78837204e+01, 2.09302330e+00, 1.76744187e+00, 4.16279068e+01, + 3.02790699e+01, 3.41860461e+00, 6.32558155e+00, 7.99534912e+01, + 4.95813942e+01, 3.62790704e+00, 2.32558131e+00, 13., + 1.51162786e+01, 6.62790680e+00, 5.48837233e+00, 46., + 4.49534874e+01, 1.86046517e+00, 2.06976748e+00, 5.44186068e+00, + 8.32558155e+00, 8.97674465e+00, 6.95348835e+00, 1.12093019e+01, + 1.07441864e+01, 1.72413790e+00, 6.60919523e+00, 2.56091957e+01, + 2.99540234e+01, 1.50114946e+01, 4.36781597e+00, 9.85057449e+00, + 1.27241383e+01, 1.28620691e+01, 3., 1.65402298e+01, + 4.32988510e+01, 1.45172415e+01, 4.72413778e+00, 2.82183914e+01, + 1.14563217e+02, 4.32413788e+01, 1.90804601e+00, 1.06091957e+01, + 1.29321838e+02, 4.58965530e+01, 3.91954017e+00, 1.32873564e+01, + 1.29620697e+02, 1.47241383e+01, 3.24137926e+00, 3.14942527e+00, + 8.24597702e+01, 4.07586212e+01, 2.31034493e+00, 4.51724148e+00, + 2.59310341e+01, 2.79310346e+00, 5.73563242e+00, 6.39425278e+01, + 5.67471275e+01, 5.65517235e+00, 4.73563242e+00, 1.12045975e+02, + 1.12954025e+02, 7.36781597e+00, 2.60919547e+00, 8.42643661e+01, + 1.37724136e+02, 7.60919523e+00, 2.68965507e+00, 7.94942551e+01, + 1.33954025e+02, 1.39885054e+01, 3.09195399e+00, 3.30804596e+01, + 1.36942535e+02, 1.69655170e+01, 3.37931037e+00, 1.77356319e+01, + 6.37011490e+01, 1.63448277e+01, 3.95402288e+00, 3.22988510e+00, + 1.86206894e+01, 4.94252872e+00, 3.19540238e+00, 1.23793106e+01, + 3.44367828e+01, 4.44827604e+00, 6.09195423e+00, 1.27528732e+02, + 1.00218391e+02, 3.31034493e+00, 3.29885054e+00, 5.40344810e+01, + 4.30574722e+01, 9.05747128e+00, 3.05747128e+00, 6.86666641e+01, + 1.00080460e+02, 3.36781621e+00, 3.78160930e+00, 2.89655170e+01, + 4.24367828e+01, 1.33908043e+01, 3.24137926e+00, 6.40229893e+00, + 1.80114937e+01, 3.28735638e+00, 4.74712658e+00, 2.47586212e+01, + 4.66666679e+01, 1.25172415e+01, 3.51724148e+00, 2.17241383e+00, + 2.02298856e+00, 2.63218379e+00, 3.95402288e+00, 1.41954021e+01, + 3.11494255e+01, 4.70114946e+00, 9.77011502e-01, 7.48275852e+00, + 5.89655161e+00, 1.33333337e+00, 4.05747128e+00, 2.18505745e+01, + 2.27011490e+01, 6.51724148e+00, 1.43678164e+00, 1.47126436e+00, + 1.73563218e+00, 1.82758617e+00, 3.45977020e+00, 2.27701149e+01, + 2.95632191e+01, 7.12643671e+00, 2.26436782e+00, 1.65517247e+00, + 1.91954029e+00, 2.37931037e+00, 3.68965507e+00, 1.56666670e+01, + 2.46551723e+01, 5.94252872e+00, 2.35632181e+00, 1.78160918e+00, + 1.96551728e+00, 2.26436782e+00, 3.34482765e+00, 8.47126484e+00, + 1.53333330e+01, 3.67088604e+00, 7.22784805e+00, 1.64177208e+01, + 2.81772156e+01, 2.03544312e+01, 8.08860779e+00, 4.69620275e+00, + 3.27848101e+00, 3.74683547e+00, 1.18734179e+01, 4.16455688e+01, + 6.62658234e+01, 2.54683552e+01, 5.75949383e+00, 2.24050641e+00, + 1.87341774e+00, 6.35443020e+00, 1.85443039e+01, 6.98101273e+01, + 7.63164520e+01, 2.08987350e+01, 3.27848101e+00, 1.74683547e+00, + 2.40506339e+00, 1.05949364e+01, 3.12025318e+01, 6.23797455e+01, + 3.88987350e+01, 9.21518993e+00, 2.53164554e+00, 3.88607597e+00, + 4.86075926e+00, 3.89873409e+00, 5.81012678e+00, 1.63670883e+01, + 6.34556961e+01, 5.69873428e+01, 1.23417721e+01, 4.20253181e+00, + 3.02531648e+00, 8.84810162e+00, 1.21139240e+01, 4.04810143e+01, + 9.80379715e+01, 6.63924026e+01, 1.25822783e+01, 4.32911396e+00, + 6.91139221e+00, 2.21898727e+01, 2.36582279e+01, 6.25696220e+01, + 8.92151871e+01, 4.62658234e+01, 1.73924046e+01, 1.51898737e+01, + 2.12025318e+01, 2.43670883e+01, 3.01012650e+01, 7.61645584e+01, + 57., 2.38607597e+01, 1.05696201e+01, 2.43291130e+01, + 2.48607597e+01, 2.05063295e+00, 3.58227849e+00, 9.97468376e+00, + 6.86202545e+01, 84., 1.68481007e+01, 3.73417711e+00, + 2.44303799e+00, 1.37594938e+01, 9.73417759e+00, 2.14177208e+01, + 9.84936676e+01, 7.40379715e+01, 2.03670883e+01, 1.05316458e+01, + 2.02025318e+01, 2.16962032e+01, 1.50759497e+01, 6.26329117e+01, + 1.02316452e+02, 3.54683533e+01, 1.74683552e+01, 2.97848110e+01, + 5.09240494e+01, 1.16075945e+01, 1.48227844e+01, 9.27341766e+01, + 8.63417740e+01, 1.75822792e+01, 1.54683542e+01, 4.66455688e+01, + 3.96962013e+01, 2.74683547e+00, 2.02531648e+00, 5.21518993e+00, + 4.76835442e+01, 8.01265793e+01, 2.09493675e+01, 3.22784805e+00, + 3.31645560e+00, 1.40506325e+01, 5.48101282e+00, 1.28481016e+01, + 1.01924049e+02, 81., 1.66075954e+01, 8.05063248e+00, 23., + 1.97088604e+01, 1.11139240e+01, 4.10253181e+01, 1.01417725e+02, + 2.85569630e+01, 5.55696201e+00, 2.30379753e+01, 4.95949364e+01, + 1.36962023e+01, 1.72531643e+01, 5.58227844e+01, 5.25822792e+01, + 1.28734179e+01, 1.67341766e+01, 5.55063286e+01, 4.76202545e+01, + 4.13809509e+01, 1.97619045e+00, 4.80952358e+00, 9.36428604e+01, + 3.83333321e+01, 3.59523821e+00, 1.32619047e+01, 9.19285736e+01, + 3.41428566e+01, 5.02380943e+00, 2.13333340e+01, 1.23571426e+02, + 2.94285717e+01, 1.21428573e+00, 1.14285717e+01, 8.15000000e+01, + 4.59761887e+01, 8.45238113e+00, 1.81190472e+01, 3.20714302e+01, + 1.28571427e+00, 7.85714269e-01, 1.62857151e+01, 7.49761887e+01, + 2.52619057e+01, 6.21428585e+00, 5.38095236e+00, 2.38095236e+00, + 4.76190478e-01, 5.02380943e+00, 2.67380943e+01, 5.09761887e+01, + 6.47380981e+01, 3.95238090e+00, 2.80952382e+00, 1.17761902e+02, + 1.13904762e+02, 2.54761910e+00, 5.83333349e+00, 64., 88., + 1.34761906e+01, 3.04761910e+00, 6.41190491e+01, 3.53095245e+01, + 1.66666672e-01, 2.42857146e+00, 5.16428566e+01, 9.34523773e+01, + 1.58809528e+01, 3.23809528e+00, 4.47619057e+00, 2.57142854e+00, + 4.04761910e-01, 9.42857170e+00, 6.62619019e+01, 4.35952377e+01, + 2.23571434e+01, 1.00238094e+01, 3.92857146e+00, 3.76190472e+00, + 5.54761887e+00, 2.19523811e+01, 4.72619057e+01, 6.74047623e+01, + 9., 1.30952382e+00, 6.81666641e+01, 1.23547623e+02, + 5.02380943e+00, 1.04761910e+00, 1.73333340e+01, 1.05500000e+02, + 3.50238113e+01, 1.16666663e+00, 8.16666698e+00, 2.32619057e+01, + 1.04761910e+00, 2.38095239e-01, 1.88333340e+01, 1.04285713e+02, + 4.06428566e+01, 5.61904764e+00, 3.09523821e+00, 3.61904764e+00, + 1.21428573e+00, 2.76190472e+00, 2.81904755e+01, 3.96666679e+01, + 3.00952377e+01, 1.95238094e+01, 8.35714245e+00, 7.50000000e+00, + 5.42857122e+00, 5.92857122e+00, 1.65000000e+01, 4.61904755e+01, + 1.52142859e+01, 9.52380955e-01, 8.80952358e+00, 1.19619049e+02, + 32., 5.95238090e-01, 4.04761887e+00, 7.34523773e+01, + 4.89285698e+01, 1.26190472e+00, 9.04761910e-01, 2.01190472e+01, + 7.83333349e+00, 4.04761910e-01, 6., 7.55952377e+01, 69., + 5.71428585e+00, 2.23809528e+00, 2.83333325e+00, 1.97619045e+00, + 1.50000000e+00, 8.45238113e+00, 2.80238094e+01, 3.71190491e+01, + 1.20238094e+01, 6.26190472e+00, 6.14285707e+00, 7.21428585e+00, + 9.02380943e+00, 8.38095284e+00, 4.27027035e+00, 1.21891890e+01, + 4.83243256e+01, 1.17837839e+01, 2.91891885e+00, 3.62162161e+00, + 1.12972975e+01, 8.78378391e+00, 1.06486483e+01, 7.95945969e+01, + 4.70810814e+01, 2.16216207e+00, 1.16216218e+00, 6.54054070e+00, + 1.08378382e+01, 5.18918896e+00, 5.82972984e+01, 1.24972977e+02, + 2.54864864e+01, 3.51351357e+00, 4.40540552e+00, 8.45945930e+00, + 3.70270276e+00, 2.43243241e+00, 3.52162170e+01, 7.00540543e+01, + 1.98378372e+01, 7.62162161e+00, 7.72972965e+00, 1.10270271e+01, + 7.13513517e+00, 4.70270252e+00, 2.02702694e+01, 1.32702703e+01, + 1.37837839e+01, 1.79729729e+01, 2.04864864e+01, 2.28378372e+01, + 4.17297287e+01, 3.17027035e+01, 3.54594612e+01, 4.42972984e+01, + 1.16216221e+01, 6.24324322e+00, 2.04054050e+01, 5.06216202e+01, + 3.94864883e+01, 1.97837830e+01, 1.18864868e+02, 9.93783798e+01, + 4.83783770e+00, 4.83783770e+00, 2.28918915e+01, 2.67297306e+01, + 9.59459496e+00, 1.08648653e+01, 1.17324326e+02, 8.37837830e+01, + 12., 6.02702713e+00, 2.42702694e+01, 1.34324322e+01, + 7.45945930e+00, 8.70270252e+00, 3.04324322e+01, 2.18378372e+01, + 1.58918915e+01, 2.48648643e+01, 2.57297306e+01, 1.76756763e+01, + 1.77567558e+01, 2.50810814e+01, 6.24594612e+01, 3.79729729e+01, + 2.28648643e+01, 2.92162170e+01, 5.77567558e+01, 4.08108101e+01, + 1.94864864e+01, 3.31351357e+01, 1.21081078e+02, 2.41351357e+01, + 9.10810852e+00, 2.35945950e+01, 5.29189186e+01, 2.41351357e+01, + 9.59459496e+00, 5.48918915e+01, 1.26189186e+02, 2.55135136e+01, + 8.64864826e+00, 1.36216221e+01, 2.86756763e+01, 8.97297287e+00, + 5.56756735e+00, 4.83243256e+01, 1.39729729e+01, 1.89189186e+01, + 2.11351357e+01, 1.68918915e+01, 1.53243246e+01, 1.40810814e+01, + 1.27837839e+01, 1.41891890e+01, 3.23513527e+01, 1.79459457e+01, + 2.31891899e+01, 3.42432442e+01, 2.45675678e+01, 6.37837839e+00, + 9.86486530e+00, 47., 9.59189224e+01, 8.72972965e+00, + 7.18918896e+00, 2.65945950e+01, 2.31351357e+01, 3.37837839e+00, + 7.83783770e+00, 1.25405403e+02, 7.45945969e+01, 1.17027025e+01, + 7.64864874e+00, 1.94054050e+01, 2.02432442e+01, 7.91891909e+00, + 1.42702703e+01, 7.75945969e+01, 1.88260860e+01, 1.36695648e+02, + 7.49565201e+01, 4.60869551e+00, 1.12173910e+01, 8.01304321e+01, + 2.73043480e+01, 1.21739125e+00, 9.78260899e+00, 1.06652176e+02, + 5.65652161e+01, 1.22608700e+01, 2.49565220e+01, 1.13869568e+02, + 5.41304359e+01, 2.39130425e+00, 8., 2.86521740e+01, + 2.34782600e+01, 1.58260870e+01, 5.25652161e+01, 1.15695656e+02, + 3.81304359e+01, 3.69565225e+00, 6.95652151e+00, 9.04347801e+00, + 8.08695698e+00, 1.03478260e+01, 3.12173920e+01, 3.49565201e+01, + 5.39130449e+00, 2.52173924e+00, 1.73043480e+01, 1.09260872e+02, + 5.04347839e+01, 7.34782600e+00, 1.22608700e+01, 7.18695679e+01, + 3.92608681e+01, 4.82608700e+00, 1.56086960e+01, 1.40434784e+02, + 1.18260872e+02, 3.19565220e+01, 23., 7.04347839e+01, + 3.78695641e+01, 6.82608700e+00, 9.82608700e+00, 7.43913040e+01, + 1.09434784e+02, 8.72173920e+01, 7.26086960e+01, 6.99565201e+01, + 2.59130440e+01, 1.74782600e+01, 7.82608700e+00, 8.21739101e+00, + 1.83913040e+01, 4.47826080e+01, 5.49130440e+01, 2.56521740e+01, + 7.39130449e+00, 1.10869570e+01, 7., 1.41304350e+01, + 1.08695650e+01, 9.08695698e+00, 7.82608700e+00, 1.99565220e+01, + 1.37391300e+01, 5.56521749e+00, 8.17391300e+00, 3.58695641e+01, + 3.71304359e+01, 2.16521740e+01, 7.95652151e+00, 2.63913040e+01, + 2.44347820e+01, 9.78260899e+00, 6.47826099e+00, 2.55652180e+01, + 5.59565201e+01, 4.16521721e+01, 1.05217390e+01, 1.27826090e+01, + 2.49130440e+01, 2.15652180e+01, 3.78260875e+00, 4.82608700e+00, + 1.39130430e+01, 1.94782600e+01, 7.47826099e+00, 3.21739125e+00, + 6.82608700e+00, 1.02608700e+01, 2.17391297e-01, 1.73913047e-01, + 2.60869563e-01, 4.78260875e-01, 3.47826093e-01, 2.17391297e-01, + 1.73913047e-01, 1.73913047e-01, 1.73913047e-01, 1.30434781e-01, + 3.04347813e-01, 6.52173936e-01, 4.78260875e-01, 4.78260875e-01, + 6.52173936e-01, 5.65217376e-01, 4.34782617e-02, 2.17391297e-01, + 3.91304344e-01, 7.39130437e-01, 6.08695626e-01, 5.21739125e-01, + 6.08695626e-01, 4.78260875e-01, 1.30434781e-01, 2.17391297e-01, + 2.60869563e-01, 2.60869563e-01, 1.73913047e-01, 1.73913047e-01, + 2.17391297e-01, 3.47826093e-01, 2.08474565e+00, 3.25423717e+00, + 1.02203388e+01, 9.88135624e+00, 3.05084753e+00, 2.59322023e+00, + 2.89830518e+00, 2.25423717e+00, 2.15254235e+00, 4.54237270e+00, + 1.77288132e+01, 1.87966099e+01, 3.38983059e+00, 2.30508471e+00, + 2.77966094e+00, 1.98305082e+00, 1.69491529e+00, 5.06779671e+00, + 2.47796612e+01, 2.08813553e+01, 2.42372870e+00, 2.06779671e+00, + 2.74576283e+00, 1.83050847e+00, 2.33898306e+00, 7.20338964e+00, + 2.04406776e+01, 1.35593224e+01, 1.72881353e+00, 1.38983047e+00, + 1.96610165e+00, 1.49152541e+00, 3.08474565e+00, 5.62711859e+00, + 3.94237289e+01, 6.98135605e+01, 1.69830513e+01, 5.23728800e+00, + 6.18644047e+00, 5.08474588e+00, 2.57627130e+00, 9.91525459e+00, + 8.71355896e+01, 9.55593185e+01, 1.18813562e+01, 2.55932212e+00, + 5.20338964e+00, 5.62711859e+00, 4.61016941e+00, 1.66610165e+01, + 1.03593224e+02, 8.09152527e+01, 6.94915247e+00, 2.62711859e+00, + 1.17627115e+01, 1.00338984e+01, 6.44067812e+00, 2.36101704e+01, + 9.33389816e+01, 3.91355934e+01, 4.55932188e+00, 3.44067788e+00, + 1.26271191e+01, 7.54237270e+00, 2.69491529e+00, 3.32203388e+00, + 6.49830475e+01, 1.17932205e+02, 2.14067802e+01, 1.86440682e+00, + 5.77966118e+00, 1.48644066e+01, 4.74576283e+00, 6.42372894e+00, + 9.93050842e+01, 1.16050850e+02, 1.05254240e+01, 2.74576283e+00, + 3.12203388e+01, 4.57796593e+01, 4.96610165e+00, 1.04067793e+01, + 1.09457626e+02, 8.25423737e+01, 3.88135600e+00, 4.40677977e+00, + 7.14067764e+01, 4.86779671e+01, 4.94915247e+00, 1.67627125e+01, + 9.96610184e+01, 2.84745770e+01, 3.06779671e+00, 9.45762730e+00, + 7.25593185e+01, 2.13220348e+01, 8.28813553e+00, 1.81355929e+00, + 3.14576263e+01, 1.13457626e+02, 1.71694908e+01, 1.59322035e+00, + 1.58474579e+01, 6.31694908e+01, 7.81355953e+00, 1.83050847e+00, + 4.66271172e+01, 8.60508499e+01, 4.74576283e+00, 2.25423717e+00, + 5.83559303e+01, 1.03423729e+02, 4.03389835e+00, 2.08474565e+00, + 4.51694908e+01, 3.40508461e+01, 1.47457623e+00, 1.02203388e+01, + 1.02694916e+02, 7.95084763e+01, 1.44067800e+00, 5.59322023e+00, + 3.79830513e+01, 8.98305130e+00, 1.61016953e+00, 2.61016941e+01, + 1.01610168e+02, 2.23728809e+01, 1.59154930e+01, 1.44084511e+01, + 8.04225349e+00, 6.67605639e+00, 1.20140848e+01, 1.68309860e+01, + 1.79859161e+01, 1.82816906e+01, 2.19436626e+01, 2.23098583e+01, + 1.12535210e+01, 9.64788723e+00, 1.69154930e+01, 2.49154930e+01, + 2.68028164e+01, 2.03943653e+01, 2.47323952e+01, 2.41971836e+01, + 1.31830988e+01, 1.03098593e+01, 1.46619720e+01, 2.02535210e+01, + 2.80140839e+01, 2.24225349e+01, 1.95352116e+01, 1.78309860e+01, + 1.36619720e+01, 1.45633802e+01, 1.37183094e+01, 1.57605639e+01, + 2.26338024e+01, 2.09436626e+01, 1.98732395e+01, 2.24788723e+01, + 1.16619720e+01, 9.63380241e+00, 1.55915489e+01, 1.97746487e+01, + 1.99577465e+01, 1.70845070e+01, 3.18591557e+01, 3.13380280e+01, + 1.76197186e+01, 1.27887325e+01, 1.89436626e+01, 3.17323952e+01, + 3.41126747e+01, 2.66478882e+01, 3.63661957e+01, 3.05492954e+01, + 1.99154930e+01, 1.56056337e+01, 2.10563374e+01, 3.34225349e+01, + 3.75774651e+01, 3.17464790e+01, 3.79718323e+01, 2.32394371e+01, + 1.86619720e+01, 5.28873253e+01, 2.77042255e+01, 2.49154930e+01, + 3.43521118e+01, 4.46056328e+01, 2.21408443e+01, 2.39718304e+01, + 1.26901407e+01, 8.90140820e+00, 1.24084511e+01, 1.88028164e+01, + 2.24507046e+01, 1.93521118e+01, 3.38591537e+01, 3.20563393e+01, + 2.31690140e+01, 1.67042255e+01, 1.94788723e+01, 2.97042255e+01, + 3.64507027e+01, 3.24929581e+01, 4.49295769e+01, 2.78450699e+01, + 2.65774651e+01, 6.90140839e+01, 2.87464790e+01, 3.00704231e+01, + 4.02394371e+01, 6.18169022e+01, 4.50845070e+01, 1.34507046e+01, + 3.54647903e+01, 1.27323944e+02, 3.54225349e+01, 1.35633802e+01, + 4.27887306e+01, 1.55436615e+02, 1.88732395e+01, 1.70140839e+01, + 1.15774651e+01, 1.04788733e+01, 1.02535210e+01, 1.62535210e+01, + 2.00704231e+01, 1.82112675e+01, 3.03239441e+01, 2.27323952e+01, + 2.86478882e+01, 6.44647903e+01, 1.76760559e+01, 1.80985909e+01, + 3.69436607e+01, 5.37323952e+01, 2.97464790e+01, 1.03661976e+01, + 4.48169022e+01, 1.36718307e+02, 2.43802814e+01, 1.06760559e+01, + 5.27183113e+01, 1.60197189e+02, 2.89436626e+01, 4.98591566e+00, + 2.71267605e+01, 1.34028168e+02, 1.64647884e+01, 4.12676048e+00, + 5.12957764e+01, 1.59915497e+02, 1.17333336e+01, 3.97777772e+00, + 2.20000005e+00, 5.15555573e+00, 3.37777781e+00, 2.08888888e+00, + 2.48888898e+00, 1.31111107e+01, 3.80222206e+01, 9.26666641e+00, + 1.19111109e+01, 3.14666672e+01, 1.07333336e+01, 5.46666670e+00, + 1.50222225e+01, 7.74444427e+01, 4.33555565e+01, 1.07777777e+01, + 2.32666664e+01, 4.49777794e+01, 5.68888903e+00, 2.77777767e+00, + 4.12444458e+01, 1.11688889e+02, 2.32000008e+01, 1.23777781e+01, + 3.59777794e+01, 5.44222221e+01, 8.35555553e+00, 4.97777796e+00, + 4.90444450e+01, 9.47777786e+01, 2.28444443e+01, 1.77999992e+01, + 3.42222214e+00, 4.46666670e+00, 8.22222233e+00, 5.57777786e+00, + 2.93333340e+00, 9.88888931e+00, 8.56888885e+01, 6.56888885e+01, + 3.14666672e+01, 2.63999996e+01, 1.59333334e+01, 1.18444443e+01, + 2.28888893e+01, 8.36888885e+01, 5.35555573e+01, 3.37777786e+01, + 8.47777786e+01, 9.33111115e+01, 8.15555573e+00, 4.15555573e+00, + 4.23333321e+01, 1.05199997e+02, 1.38000002e+01, 1.16000004e+01, + 1.04177780e+02, 1.26066666e+02, 5.24444437e+00, 1.44444442e+00, + 3.19555550e+01, 6.95111084e+01, 9.39999962e+00, 1.42444448e+01, + 4.06666660e+00, 2.66666675e+00, 7.37777758e+00, 9.97777748e+00, + 2.95555544e+00, 2.57777786e+00, 4.20888901e+01, 9.40222244e+01, + 7.26666641e+01, 2.33777771e+01, 1.86000004e+01, 3.48444443e+01, + 1.41555557e+01, 1.74222221e+01, 2.27777786e+01, 4.78444443e+01, + 1.21622223e+02, 1.05933334e+02, 9.22222233e+00, 1.45555553e+01, + 2.82222214e+01, 3.07111111e+01, 9.13333321e+00, 5.33333349e+00, + 6.32888870e+01, 8.87333298e+01, 8.55555534e+00, 6.35555553e+00, + 4.18444443e+01, 6.15777779e+01, 8.66666675e-01, 1.42222226e+00, + 9.11111116e-01, 4.22222227e-01, 8.44444454e-01, 1.15555561e+00, + 7.11111128e-01, 4.88888890e-01, 2.17777777e+00, 6.33333349e+00, + 7.17777777e+00, 1.68888891e+00, 4.22222233e+00, 8.60000038e+00, + 4.44444466e+00, 2.42222214e+00, 2.57777786e+00, 5.64444447e+00, + 1.42222223e+01, 6.37777758e+00, 2.15555549e+00, 5.48888874e+00, + 8.91111088e+00, 5.55555534e+00, 2.37777781e+00, 1.37777781e+00, + 4.37777758e+00, 4.48888874e+00, 1.68888891e+00, 1.88888884e+00, + 8.93333340e+00, 9.64444447e+00, 4.16666651e+00, 8.83333302e+00, + 3.29761887e+01, 4.19285698e+01, 9.69047642e+00, 1.76190472e+00, + 1.64285719e+00, 2.78571439e+00, 8.40476227e+00, 1.89523811e+01, + 4.62142868e+01, 4.05238113e+01, 8.28571415e+00, 2.42857146e+00, + 2.88095236e+00, 3.92857146e+00, 8.59523773e+00, 2.57619057e+01, + 5.14761887e+01, 3.31666679e+01, 5.76190472e+00, 2.19047618e+00, + 4.40476179e+00, 3.90476179e+00, 8.21428585e+00, 2.80476189e+01, + 4.59761887e+01, 2.02142849e+01, 3.33333325e+00, 1.35714281e+00, + 2.47619057e+00, 2.35714293e+00, 1.15000000e+01, 1.14047623e+01, + 42., 7.35000000e+01, 2.18809528e+01, 5.95238113e+00, + 2.24761906e+01, 3.60476189e+01, 1.26190472e+01, 1.48333330e+01, + 8.93571396e+01, 9.35952377e+01, 1.47380953e+01, 7.61904764e+00, + 4.58571434e+01, 4.24047623e+01, 1.06428576e+01, 1.94285717e+01, + 1.13285713e+02, 6.32380943e+01, 9.04761887e+00, 9.59523773e+00, + 4.49285698e+01, 2.07142849e+01, 9.21428585e+00, 3.38095245e+01, + 1.07690475e+02, 2.40238094e+01, 9.88095284e+00, 1.27619047e+01, + 2.35238094e+01, 8.02380943e+00, 7.73809528e+00, 3.83333325e+00, + 5.09285698e+01, 1.12071426e+02, 1.22857141e+01, 4.61904764e+00, + 4.39523811e+01, 7.20952377e+01, 3.57142854e+00, 3.16666675e+00, + 8.37142868e+01, 9.23809509e+01, 5.19047642e+00, 1.22142859e+01, + 8.80714264e+01, 4.52857132e+01, 1.69047618e+00, 5.97619057e+00, + 8.24047623e+01, 3.13809528e+01, 4.40476179e+00, 3.78095245e+01, + 8.91904755e+01, 1.28809528e+01, 1.83333337e+00, 2.15714283e+01, + 7.15000000e+01, 7.30952358e+00, 6.45238113e+00, 4.64523811e+01, + 4.84523811e+01, 2.78571439e+00, 6.73809528e+00, 1.80952382e+00, + 8.97619057e+00, 5.04047623e+01, 7.30952358e+00, 2.95238090e+00, + 5.81428566e+01, 8.18333359e+01, 3.64285707e+00, 2.19047618e+00, + 9.16666698e+00, 1.06666670e+01, 1.64285719e+00, 1.76666660e+01, + 1.07357140e+02, 5.06904755e+01, 1.07142854e+00, 2.04761910e+00, + 8.35714245e+00, 4.04761887e+00, 4.59523821e+00, 6.17380943e+01, + 1.09880951e+02, 1.43333330e+01, 4.52380955e-01, 4.69047642e+00, + 9.52380943e+00, 3.14285707e+00, 6.66666651e+00, 8.79285736e+01, + 6.27857132e+01, 2.02380943e+00, 1.60784316e+00, 5.66666651e+00, + 8.79411774e+01, 7.07450943e+01, 4.01960802e+00, 1.76470590e+00, + 5.66666651e+00, 4.05882359e+00, 1.49019611e+00, 1.38431368e+01, + 1.16431374e+02, 5.46078415e+01, 3.84313726e+00, 3.35294127e+00, + 1.06274509e+01, 3.80392146e+00, 1.68627453e+00, 3.53725471e+01, + 1.17274513e+02, 2.03333340e+01, 2.70588231e+00, 6.68627453e+00, + 1.20588236e+01, 2.56862736e+00, 2.47058821e+00, 5.38627434e+01, + 9.24509811e+01, 7.29411745e+00, 1.78431368e+00, 7.68627453e+00, + 7.90196085e+00, 1.21568632e+00, 2.47058821e+00, 3.23529410e+00, + 1.19509804e+02, 1.01509804e+02, 1.37254906e+00, 8.82352948e-01, + 1.18235292e+01, 1.68431377e+01, 2.80392146e+00, 1.06666670e+01, + 1.22294121e+02, 4.89411774e+01, 1.15686274e+00, 2.15686274e+00, + 3.93529396e+01, 3.10980396e+01, 2.64705873e+00, 4.56078415e+01, + 1.18431374e+02, 7.13725471e+00, 7.84313738e-01, 9.64705849e+00, + 6.39607849e+01, 2.33137264e+01, 2.29411769e+00, 8.61176453e+01, + 1.00411766e+02, 1.68627453e+00, 1.05882359e+00, 2.51764698e+01, + 4.70784302e+01, 5.96078444e+00, 9.86274529e+00, 1.62745094e+00, + 2.65098038e+01, 3.65686264e+01, 5.09803951e-01, 1.96078435e-01, + 2.48823528e+01, 8.58627472e+01, 8.98039246e+00, 2.31372547e+00, + 2.19215679e+01, 1.07647057e+01, 4.70588237e-01, 1.35294116e+00, + 8.42549057e+01, 1.02745094e+02, 4.68627453e+00, 6., + 1.76078434e+01, 2.96078420e+00, 2.94117659e-01, 1.37843142e+01, + 1.13039215e+02, 5.95098038e+01, 2.29411769e+00, 2.09607849e+01, + 1.45098038e+01, 2.54901975e-01, 3.13725501e-01, 4.69803925e+01, + 9.73529434e+01, 1.73137264e+01, 2.74705887e+01, 1.90196073e+00, + 3.82352948e+00, 1.13921566e+01, 2.23529410e+00, 9.21568632e-01, + 1.49411764e+01, 9.23137283e+01, 2.23529415e+01, 4.88235283e+00, + 7.80392170e+00, 9., 1.52941179e+00, 2.33333325e+00, + 3.42549019e+01, 7.25686264e+01, 1.17450981e+01, 7., + 7.01960802e+00, 2.25490189e+00, 1.15686274e+00, 6.66666651e+00, + 4.29019623e+01, 3.69215698e+01, 5.52941179e+00, 5.80392170e+00, + 3.76470590e+00, 6.66666687e-01, 1.43137252e+00, 2.42745094e+01, + 3.72745094e+01, 1.29215689e+01, 6.01999998e+00, 2.92000008e+00, + 1.22000003e+00, 4.82000017e+00, 2.94599991e+01, 2.94599991e+01, + 8.69999981e+00, 5.32000017e+00, 1.38999996e+01, 2.81999993e+00, + 3.79999995e-01, 5.67999983e+00, 8.63799973e+01, 4.99000015e+01, + 4.80000019e+00, 6.28000021e+00, 8.99199982e+01, 4.61999989e+00, + 4.19999987e-01, 5.03999996e+00, 5.04599991e+01, 1.85799999e+01, + 2.38000011e+00, 3.54399986e+01, 1.02699997e+02, 1.34399996e+01, + 1.27999997e+00, 3.07999992e+00, 7.28000021e+00, 1.48000002e+00, + 1.25999999e+00, 3.66199989e+01, 7.30000019e+00, 1.75999999e+00, + 1.62000000e+00, 1.78799992e+01, 4.97400017e+01, 2.03400002e+01, + 9.35999966e+00, 8.46000004e+00, 2.15000000e+01, 7.79999971e-01, + 3.19999993e-01, 4.00400009e+01, 1.11680000e+02, 2.40799999e+01, + 3.90000010e+00, 3.06399994e+01, 1.01279999e+02, 2.01999998e+00, + 1.20000005e+00, 2.73400002e+01, 6.12400017e+01, 8.42000008e+00, + 3.66000009e+00, 1.06160004e+02, 1.13379997e+02, 9.97999954e+00, + 2.35999990e+00, 8.38000011e+00, 1.08199997e+01, 2.03999996e+00, + 2.18000007e+00, 7.28199997e+01, 3.11999989e+00, 1.60000002e+00, + 1.27399998e+01, 6.93000031e+01, 4.42200012e+01, 7.73999977e+00, + 8.47999954e+00, 1.61800003e+01, 2.15000000e+01, 6.00000024e-01, + 5.13999987e+00, 8.30400009e+01, 6.94800034e+01, 5.80000019e+00, + 9.68000031e+00, 8.61999969e+01, 8.28199997e+01, 3.33999991e+00, + 4.40000010e+00, 4.65600014e+01, 2.80599995e+01, 2.55999994e+00, + 5.88000011e+00, 1.18360001e+02, 8.54599991e+01, 6.07999992e+00, + 3.01999998e+00, 8.81999969e+00, 5.71999979e+00, 3., + 5.90000010e+00, 8.38799973e+01, 1.32000005e+00, 8.19999993e-01, + 2.82999992e+01, 7.78000031e+01, 1.32799997e+01, 1.46000004e+00, + 2.71800003e+01, 4.65999985e+01, 1.54600000e+01, 1.72000003e+00, + 1.64400005e+01, 6.68600006e+01, 1.22799997e+01, 1.46000004e+00, + 2.64799995e+01, 1.13620003e+02, 4.70600014e+01, 3.14000010e+00, + 5.67999983e+00, 2.53999996e+01, 5.67999983e+00, 1.86000001e+00, + 1.36400003e+01, 1.11480003e+02, 4.52599983e+01, 3.68000007e+00, + 2.27999997e+00, 3.57999992e+00, 2.96000004e+00, 3.03999996e+00, + 1.06800003e+01, 7.43799973e+01, 2.58400002e+01, 3.24000015e+01, + 3.37000008e+01, 2.86800003e+01, 1.78999996e+01, 2.14799995e+01, + 2.15200005e+01, 1.81399994e+01, 3.25400009e+01, 5.40800018e+01, + 6.39000015e+01, 4.84199982e+01, 2.85400009e+01, 5.33400002e+01, + 4.69199982e+01, 2.63600006e+01, 2.10400009e+01, 6.03600006e+01, + 7.12399979e+01, 4.80200005e+01, 3.77400017e+01, 1.03099998e+02, + 9.46600037e+01, 2.02800007e+01, 1.07799997e+01, 8.40800018e+01, + 8.30400009e+01, 3.15599995e+01, 2.84799995e+01, 1.22639999e+02, + 1.14080002e+02, 1.00200005e+01, 2.92600002e+01, 2.74200001e+01, + 3.52400017e+01, 4.52799988e+01, 3.17999992e+01, 1.79400005e+01, + 1.70200005e+01, 2.07399998e+01, 3.99399986e+01, 4.66800003e+01, + 6.45400009e+01, 7.83600006e+01, 4.77999992e+01, 2.49599991e+01, + 1.99200001e+01, 26., 3.50400009e+01, 5.96199989e+01, + 7.53799973e+01, 72., 5.23800011e+01, 3.42999992e+01, + 2.14599991e+01, 2.21800003e+01, 23., 6.16800003e+01, + 6.53000031e+01, 5.41800003e+01, 5.54599991e+01, 6.20400009e+01, + 2.66800003e+01, 1.14200001e+01, 2.12199993e+01, 2.61000004e+01, + 3.30400009e+01, 3.90400009e+01, 2.99799995e+01, 1.81599998e+01, + 1.28800001e+01, 1.47600002e+01, 3.39399986e+01, 40., + 5.57200012e+01, 6.93399963e+01, 4.96199989e+01, 2.39200001e+01, + 1.94200001e+01, 2.65400009e+01, 3.59000015e+01, 3.81399994e+01, + 5.21199989e+01, 5.90400009e+01, 4.09399986e+01, 2.07999992e+01, + 2.15200005e+01, 2.73400002e+01, 1.89599991e+01, 3.00400009e+01, + 3.85800018e+01, 4.72000008e+01, 4.25600014e+01, 3.06399994e+01, + 1.68999996e+01, 1.16199999e+01, 5.63999987e+00, 7.92000008e+00, + 7.78000021e+00, 1.11000004e+01, 1.07600002e+01, 7.51999998e+00, + 4.53999996e+00, 4.09999990e+00, 1.40600004e+01, 2.27800007e+01, + 1.96000004e+01, 1.83600006e+01, 2.06200008e+01, 16., + 9.69999981e+00, 9.10000038e+00, 1.44200001e+01, 2.32800007e+01, + 1.87999992e+01, 2.06599998e+01, 1.67399998e+01, 9.72000027e+00, + 8.42000008e+00, 9.46000004e+00, 8.03999996e+00, 1.12399998e+01, + 1.21599998e+01, 1.88799992e+01, 1.59399996e+01, 7.63999987e+00, + 5.48000002e+00, 5.03999996e+00, 1.32407408e+01, 9.94444466e+00, + 9.87036991e+00, 1.44814816e+01, 2.30925922e+01, 2.61481476e+01, + 3.31111107e+01, 2.75740738e+01, 1.99814816e+01, 1.63518524e+01, + 1.25740738e+01, 1.94814816e+01, 3.82777786e+01, 5.24259262e+01, + 4.36481476e+01, 3.06296291e+01, 2.02777786e+01, 1.37037039e+01, + 1.25000000e+01, 1.98148155e+01, 3.88333321e+01, 4.15370369e+01, + 4.07037048e+01, 3.39074059e+01, 14., 7.16666651e+00, + 1.06296301e+01, 1.99074078e+01, 3.54444427e+01, 3.24259262e+01, + 3.03148155e+01, 2.60185184e+01, 2.00555553e+01, 1.51481485e+01, + 1.79074078e+01, 2.50740738e+01, 4.11481476e+01, 5.23703690e+01, + 5.02962952e+01, 3.81666679e+01, 2.77037029e+01, 2.34074078e+01, + 2.18333340e+01, 3.12962971e+01, 6.19259262e+01, 7.59074097e+01, + 6.89629593e+01, 4.64444427e+01, 2.64629631e+01, 1.77037029e+01, + 1.94444447e+01, 3.18888893e+01, 6.19074059e+01, 7.35555573e+01, + 7.26851883e+01, 5.26666679e+01, 1.42962961e+01, 1.07407408e+01, + 1.97407398e+01, 3.47407417e+01, 6.16481476e+01, 6.77222214e+01, + 4.82037048e+01, 2.64444447e+01, 2.16111107e+01, 1.88703709e+01, + 1.85370369e+01, 2.55555553e+01, 4.24074059e+01, 5.24629631e+01, + 4.39074059e+01, 2.90555553e+01, 3.37592583e+01, 2.44629631e+01, + 2.01666660e+01, 2.74259262e+01, 5.53888893e+01, 7.01851883e+01, + 7.47407379e+01, 5.18518524e+01, 2.17592602e+01, 2.01296291e+01, + 1.80555553e+01, 3.27777786e+01, 6.25555573e+01, 8.01851883e+01, + 6.79259262e+01, 3.89259262e+01, 1.86481476e+01, 1.51666670e+01, + 1.90555553e+01, 64., 7.62777786e+01, 7.21851883e+01, + 4.39444427e+01, 2.89629631e+01, 2.23703709e+01, 1.79444447e+01, + 1.62037029e+01, 1.80925922e+01, 3.02037029e+01, 3.78518524e+01, + 4.15370369e+01, 3.03333340e+01, 2.57037029e+01, 2.11296291e+01, + 2.83703709e+01, 3.60185204e+01, 4.19629631e+01, 5.17962952e+01, + 6.32777786e+01, 4.45740738e+01, 1.50740738e+01, 1.61111107e+01, + 3.66481476e+01, 6.97962952e+01, 6.39074059e+01, 5.61666679e+01, + 5.33518524e+01, 3.72962952e+01, 2.41666660e+01, 8.53703690e+00, + 3.70555573e+01, 1.10203705e+02, 7.10740738e+01, 3.80740738e+01, + 4.23518524e+01, 8.54259262e+01, 2.45535717e+01, 2.68392849e+01, + 3.35357132e+01, 3.09285717e+01, 1.69821434e+01, 1.48750000e+01, + 2.17142849e+01, 2.51071434e+01, 3.64821434e+01, 3.75178566e+01, + 4.90535698e+01, 4.62142868e+01, 3.34107132e+01, 2.71250000e+01, + 2.76785717e+01, 3.28928566e+01, 4.28392868e+01, 5.14107132e+01, + 5.89464302e+01, 3.54107132e+01, 5.71250000e+01, 7.02500000e+01, + 3.31964302e+01, 3.07142849e+01, 8.77321396e+01, 1.05625000e+02, + 2.44107151e+01, 1.48750000e+01, 1.21107140e+02, 1.30232147e+02, + 2.01071434e+01, 1.35178576e+01, 3.14285717e+01, 3.73214302e+01, + 4.87678566e+01, 4.32678566e+01, 1.94642849e+01, 1.46785717e+01, + 2.45714283e+01, 3.24285698e+01, 4.23928566e+01, 4.22857132e+01, + 6.41785736e+01, 6.30892868e+01, 3.27500000e+01, 2.77678566e+01, + 3.38750000e+01, 3.90535698e+01, 5.07142868e+01, 5.16250000e+01, + 7.18928604e+01, 5.76250000e+01, 33., 2.96071434e+01, + 3.56071434e+01, 4.34642868e+01, 4.82142868e+01, 6.31250000e+01, + 4.78928566e+01, 3.30714302e+01, 9.91071396e+01, 1.23142860e+02, + 2.81071434e+01, 2.30892849e+01, 2.54821434e+01, 2.54464283e+01, + 4.39285698e+01, 3.91250000e+01, 1.60178566e+01, 1.29285717e+01, + 2.37678566e+01, 3.17678566e+01, 3.81785698e+01, 3.81785698e+01, + 6.02678566e+01, 5.68750000e+01, 2.69642849e+01, 1.95892849e+01, + 2.89107151e+01, 3.68571434e+01, 3.94642868e+01, 4.05000000e+01, + 6.31785698e+01, 5.47857132e+01, 2.69285717e+01, 2.23928566e+01, + 2.97321434e+01, 3.94821434e+01, 2.85714283e+01, 3.09642849e+01, + 5.44464302e+01, 3.90535698e+01, 3.29821434e+01, 3.66785698e+01, + 2.17857151e+01, 2.73571434e+01, 1.23214283e+01, 9.23214245e+00, + 1.87678566e+01, 1.69464283e+01, 5.21428585e+00, 3.05357146e+00, + 6.16071415e+00, 1.25178576e+01, 1.57321424e+01, 1.42142859e+01, + 2.46250000e+01, 2.41250000e+01, 9.42857170e+00, 6.16071415e+00, + 1.00535717e+01, 1.69464283e+01, 1.67321434e+01, 1.30714283e+01, + 2.46250000e+01, 2.27142849e+01, 1.03392859e+01, 8.83928585e+00, + 1.18214283e+01, 1.81428566e+01, 9.35714245e+00, 1.08750000e+01, + 2.34464283e+01, 1.83928566e+01, 9.32142830e+00, 6.48214293e+00, + 7.14285707e+00, 1.17321424e+01, 4.69736862e+00, 2.44736838e+00, + 1.14605265e+01, 3.29210510e+01, 6.86842108e+00, 9.39473724e+00, + 5.58289490e+01, 4.24078941e+01, 5.59210539e+00, 3.55263162e+00, + 7.67105246e+00, 8.57894707e+00, 3.93421054e+00, 3.28684196e+01, + 9.44342117e+01, 3.99736824e+01, 4.82894754e+00, 6.51315784e+00, + 6., 1.59210527e+00, 7.11842108e+00, 6.67105255e+01, + 8.95000000e+01, 2.34605255e+01, 9.65789509e+00, 2.23289471e+01, + 6.80263138e+00, 1.57894742e+00, 18., 6.51842117e+01, + 4.22631569e+01, 1.44078951e+01, 1.53157892e+01, 3.52631569e+00, + 2.27631569e+00, 5.76315784e+00, 7.07894754e+00, 1.46710529e+01, + 8.89736862e+01, 9.73552628e+01, 1.12105265e+01, 3.14473677e+00, + 3.31578946e+00, 3.68421054e+00, 9.55263138e+00, 4.39078941e+01, + 1.13631577e+02, 7.81315765e+01, 8.60526276e+00, 5.48684216e+00, + 5.39473677e+00, 4.30263138e+00, 1.68947372e+01, 9.56973648e+01, + 1.15578949e+02, 4.36842117e+01, 4.61842108e+00, 2.96052623e+00, + 1.64473689e+00, 3.28947377e+00, 4.00789490e+01, 1.04460526e+02, + 8.16184235e+01, 1.83421059e+01, 4.53421059e+01, 1.63026314e+01, + 8.46052647e+00, 9.43421078e+00, 1.29605265e+01, 2.29078941e+01, + 5.13289490e+01, 8.69868393e+01, 2.61842098e+01, 1.30526314e+01, + 1.55131578e+01, 2.20657902e+01, 3.32368431e+01, 4.38815804e+01, + 6.86973648e+01, 5.92763176e+01, 2.87105255e+01, 2.18157902e+01, + 2.37236843e+01, 22., 3.68421059e+01, 5.71710510e+01, + 6.28421059e+01, 4.24736824e+01, 1.83684216e+01, 1.21184206e+01, + 1.09868422e+01, 2.23421059e+01, 7.53289490e+01, 8.87763138e+01, + 5.44736824e+01, 2.41315784e+01, 4.88026314e+01, 4.70526314e+01, + 2.15657902e+01, 1.19078951e+01, 1.17500000e+01, 14., + 2.03947372e+01, 3.41973686e+01, 1.42631578e+01, 2.02894745e+01, + 2.75000000e+01, 3.01842098e+01, 3.14868412e+01, 2.79473686e+01, + 2.84736843e+01, 2.13947372e+01, 1.37631578e+01, 1.49473686e+01, + 2.43815784e+01, 3.14078941e+01, 2.51447372e+01, 1.70526314e+01, + 2.25000000e+01, 2.09868412e+01, 1.69342098e+01, 1.46842108e+01, + 2.00789471e+01, 6.06315804e+01, 5.92631569e+01, 2.29342098e+01, + 1.61315784e+01, 1.57236843e+01, 2.95918369e+00, 5.30612230e-01, + 3.46938789e-01, 3.67346931e+00, 1.74285717e+01, 7.85714293e+00, + 7.95918345e-01, 4.48979586e-01, 1.04653061e+02, 1.76122456e+01, + 3.08163261e+00, 1.47755098e+01, 4.27755089e+01, 1.17142859e+01, + 2.46938777e+00, 5.08367348e+01, 1.13408165e+02, 2.09795914e+01, + 9.26530647e+00, 2.74897957e+01, 4.75918350e+01, 1.33673468e+01, + 14., 8.59591827e+01, 9.69387722e+00, 1.46326532e+01, + 1.43061228e+01, 1.19795914e+01, 1.48979588e+01, 2.06530609e+01, + 2.63265305e+01, 2.16122456e+01, 2.73469377e+00, 1.42857146e+00, + 5.10204077e-01, 1.97959185e+00, 1.58571424e+01, 1.28571424e+01, + 2.12244892e+00, 1.22448981e+00, 1.27734695e+02, 5.49591827e+01, + 1.63265312e+00, 8.28571415e+00, 6.69591827e+01, 3.36326523e+01, + 2.81632662e+00, 1.84081631e+01, 1.31408157e+02, 7.25918350e+01, + 6.20408154e+00, 1.68775501e+01, 6.16122437e+01, 3.51836739e+01, + 7.30612230e+00, 2.67551022e+01, 1.58367348e+01, 1.36938772e+01, + 8.65306091e+00, 8.24489784e+00, 1.34693880e+01, 1.96734695e+01, + 1.41020412e+01, 1.21428576e+01, 1.89795923e+00, 1.63265312e+00, + 1.67346942e+00, 2.22448969e+00, 7.89795923e+00, 8.65306091e+00, + 2.65306115e+00, 1.73469388e+00, 8.91428604e+01, 6.05306129e+01, + 2.20408154e+00, 4.48979568e+00, 5.04897957e+01, 5.15918350e+01, + 6.51020432e+00, 5.10204077e+00, 1.28775513e+02, 1.29510208e+02, + 1.41224489e+01, 5.40816307e+00, 5.15510216e+01, 7.30204086e+01, + 1.15510206e+01, 8.14285755e+00, 2.21020412e+01, 4.37142868e+01, + 2.33673477e+01, 9.22449017e+00, 1.47959185e+01, 3.45510216e+01, + 2.22040825e+01, 1.32040815e+01, 1.22448981e+00, 1.12244892e+00, + 1.08163261e+00, 1.22448981e+00, 2.87755108e+00, 6.61224508e+00, + 3.59183669e+00, 1.85714281e+00, 1.68367348e+01, 2.01428566e+01, + 3.10204077e+00, 3.71428561e+00, 2.11836739e+01, 2.97959175e+01, + 9.20408154e+00, 4.04081631e+00, 6.24081650e+01, 1.26959183e+02, + 3.92448997e+01, 3.97959185e+00, 2.49591827e+01, 5.78571434e+01, + 1.38775511e+01, 4.02040815e+00, 2.99591827e+01, 9.53673477e+01, + 8.20816345e+01, 14., 1.29795914e+01, 4.51836739e+01, + 2.66734695e+01, 1.08979588e+01, 8.12658215e+00, 7.26582289e+00, + 7.17721510e+00, 6.06329107e+00, 1.00379744e+01, 1.43291140e+01, + 1.16835442e+01, 1.03797464e+01, 2.40632915e+01, 3.10632915e+01, + 1.06329117e+01, 1.03924055e+01, 5.46835442e+01, 8.86582260e+01, + 2.34936714e+01, 1.28607597e+01, 6.77974701e+01, 9.17468338e+01, + 1.98987350e+01, 1.08481016e+01, 6.62531662e+01, 9.67848129e+01, + 1.96075954e+01, 1.46075945e+01, 4.84430389e+01, 7.35316467e+01, + 1.28227844e+01, 7.88607597e+00, 3.16708870e+01, 5.88734169e+01, + 1.78860760e+01, 1.41518984e+01, 1.17974682e+01, 9.34177208e+00, + 9.36708832e+00, 9.01265812e+00, 1.03544302e+01, 9.89873409e+00, + 1.30506325e+01, 1.27341776e+01, 2.38607597e+01, 1.89240513e+01, + 1.59620256e+01, 1.47974682e+01, 3.49746819e+01, 5.42025299e+01, + 2.96329117e+01, 2.14050636e+01, 5.96708870e+01, 7.61519012e+01, + 1.59113922e+01, 1.08860760e+01, 9.96835480e+01, 1.17189873e+02, + 2.46962032e+01, 1.57974682e+01, 8.77974701e+01, 1.04645569e+02, + 1.26582279e+01, 6.68354416e+00, 5.71392403e+01, 8.25696182e+01, + 1.44050636e+01, 1.32025318e+01, 1.17468357e+01, 9.72151852e+00, + 9.92405033e+00, 9.69620228e+00, 8.50632954e+00, 9.86075974e+00, + 1.26582279e+01, 1.19493675e+01, 2.45189877e+01, 1.84050636e+01, + 1.81139240e+01, 1.68481007e+01, 2.10759487e+01, 2.39873409e+01, + 2.67215195e+01, 2.43291130e+01, 3.45569611e+01, 3.32405052e+01, + 1.66329117e+01, 1.48607597e+01, 8.33797455e+01, 9.95696182e+01, + 2.57974682e+01, 19., 9.12658234e+01, 9.89620285e+01, + 5.94936705e+00, 4.91139221e+00, 8.66962051e+01, 1.05620255e+02, + 1.37088604e+01, 1.51265821e+01, 8.46835423e+00, 7.30379725e+00, + 8.27848148e+00, 7.86075926e+00, 5.98734188e+00, 7.97468376e+00, + 1.10379744e+01, 9.22784805e+00, 1.77594929e+01, 1.42784815e+01, + 1.39746838e+01, 1.42151899e+01, 1.54303799e+01, 1.66708870e+01, + 1.84050636e+01, 1.79746838e+01, 2.30379753e+01, 1.80886078e+01, + 1.70632915e+01, 1.53670883e+01, 4.34936714e+01, 4.11645584e+01, + 1.98607597e+01, 1.88101273e+01, 5.76582260e+01, 5.11518974e+01, + 6.93670893e+00, 6.60759497e+00, 7.24936676e+01, 9.42025299e+01, + 1.44683542e+01, 1.44303799e+01, 4.83720922e+00, 2.39534879e+00, + 4.11627913e+00, 2.20930243e+00, 2.60465121e+00, 4.44186068e+00, + 3.97674417e+00, 4.02325583e+00, 7.09302330e+00, 3.83720922e+00, + 4.51162767e+00, 2.58139539e+00, 3.90697670e+00, 5.88372087e+00, + 5.30232573e+00, 6.72093010e+00, 5.88372087e+00, 2.90697670e+00, + 5.37209320e+00, 4.13953495e+00, 4.09302330e+00, 5.46511650e+00, + 6.79069757e+00, 8.44186020e+00, 4.16279078e+00, 2.65116286e+00, + 7.27906990e+00, 4.65116262e+00, 3.13953495e+00, 5.02325583e+00, + 8.51162815e+00, 7.46511650e+00, 7.41860485e+00, 6.55813932e+00, + 11., 5.27906990e+00, 4.74418592e+00, 2.66511631e+01, + 2.97209301e+01, 1.23023252e+01, 8.16279030e+00, 7.11627913e+00, + 2.53720932e+01, 1.31162786e+01, 4.83720922e+00, 1.26511631e+01, + 6.73720932e+01, 2.95813961e+01, 4.95348835e+00, 4.25581408e+00, + 3.93720932e+01, 1.94883728e+01, 3.16279078e+00, 6., + 1.06558136e+02, 3.85348854e+01, 3.13953495e+00, 3.90697670e+00, + 3.94651146e+01, 1.43953485e+01, 1.95348835e+00, 4.02325583e+00, + 1.16651161e+02, 4.38837204e+01, 2.16511631e+01, 1.94651165e+01, + 2.46744194e+01, 9.48837185e+00, 5.76744175e+00, 19., 58., + 4.31627922e+01, 2.54651165e+01, 2.10930233e+01, 9.10697708e+01, + 2.52093029e+01, 3.55813956e+00, 1.21627903e+01, 1.21674416e+02, + 8.61395340e+01, 5.51162767e+00, 8.39534855e+00, 133., + 4.20697670e+01, 6.97674394e-01, 3.48837209e+00, 1.37209305e+02, + 7.00930252e+01, 9.30232584e-01, 4.74418592e+00, 1.34465118e+02, + 4.24418602e+01, 6.04651153e-01, 2.62790704e+00, 1.27093025e+02, + 4.17209320e+01, 1.03255816e+01, 1.49069767e+01, 5.51395340e+01, + 3.49302330e+01, 1.21860466e+01, 4.79069757e+00, 1.22790699e+01, + 1.52790699e+01, 1.21162786e+01, 1.71395340e+01, 1.16697678e+02, + 4.89767456e+01, 1.16744184e+01, 7.04651165e+00, 2.81395340e+01, + 1.74651165e+01, 3.83720922e+00, 7.02325583e+00, 1.30186050e+02, + 42., 1.88372087e+00, 6.60465097e+00, 4.98837204e+01, + 1.71162796e+01, 2.65116286e+00, 4.76744175e+00, 1.08093025e+02, + 2.43720932e+01, 1.06976748e+00, 3.48837209e+00, 4.94883728e+01, + 1.38372097e+01, 6.34545469e+00, 5.83636379e+00, 7.95272751e+01, + 1.20236366e+02, 1.15090914e+01, 5.10909081e+00, 7.29090929e+00, + 1.11636362e+01, 3.03636360e+00, 1.03999996e+01, 1.31509094e+02, + 9.68181839e+01, 3.98181820e+00, 3.85454535e+00, 1.26000004e+01, + 8.96363640e+00, 3.41818190e+00, 9.11636353e+01, 1.31436371e+02, + 1.33454542e+01, 1.92727268e+00, 4.78181839e+00, 1.11636362e+01, + 4.58181810e+00, 8.14545441e+00, 1.24800003e+02, 9.05454559e+01, + 3.54545450e+00, 2.81818175e+00, 7.78181839e+00, 6.67272711e+00, + 3.18181825e+00, 6.32727289e+00, 2.81818175e+00, 3.80181808e+01, + 1.24018181e+02, 2.87090912e+01, 4.25454569e+00, 9.80000019e+00, + 1.76545448e+01, 1.03636360e+01, 1.25272732e+01, 7.05090942e+01, + 5.25999985e+01, 1.12181816e+01, 1.61454544e+01, 4.35454559e+01, + 3.39636345e+01, 6.27272749e+00, 4.73636360e+01, 6.48363647e+01, + 1.36545458e+01, 1.11454544e+01, 2.79090900e+01, 3.17818184e+01, + 1.03636360e+01, 2.45818176e+01, 1.23836365e+02, 3.72181816e+01, + 1.78181815e+00, 3.94545460e+00, 9.63636398e+00, 5.43636370e+00, + 2.40000010e+00, 2.74909096e+01, 9.61818218e+00, 1.33090906e+01, + 4.45090904e+01, 4.10727272e+01, 9.63636398e+00, 1.20181818e+01, + 3.34545441e+01, 3.42181816e+01, 2.03636360e+01, 3.90363655e+01, + 4.62909088e+01, 2.83272724e+01, 2.41272736e+01, 5.00545464e+01, + 6.04909096e+01, 2.32545452e+01, 2.39636364e+01, 2.71818180e+01, + 2.37272720e+01, 3.18909092e+01, 4.84181824e+01, 4.25636368e+01, + 2.72000008e+01, 3.80909081e+01, 3.83818169e+01, 7.41818190e+00, + 6.05454540e+00, 2.20363636e+01, 3.11454544e+01, 1.66909084e+01, + 1.12181816e+01, 2.88727264e+01, 1.90363636e+01, 7.09090900e+00, + 9.34545422e+00, 3.42545471e+01, 2.81454544e+01, 9.10909081e+00, + 14., 3.03636360e+01, 2.36909084e+01, 2.26909084e+01, + 2.31818180e+01, 1.69636364e+01, 2.25454540e+01, 2.68363628e+01, + 2.41818180e+01, 2.67818184e+01, 1.67636356e+01, 1.98909092e+01, + 2.93272724e+01, 2.86545448e+01, 2.19636364e+01, 3.08181820e+01, + 3.18727264e+01, 3.69454536e+01, 9.72727299e+00, 7.38181829e+00, + 2.22909088e+01, 3.42363625e+01, 1.80363636e+01, 1.24909086e+01, + 3.19090900e+01, 8.08823526e-01, 7.35294104e-01, 1.89705884e+00, + 2.85294127e+00, 3.45588231e+00, 2.94117641e+00, 1.97058821e+00, + 2.01470590e+00, 3.70588231e+00, 3.60294127e+00, 9.13235283e+00, + 1.26764708e+01, 1.43823528e+01, 9.72058868e+00, 7.25000000e+00, + 7.13235283e+00, 7.14705896e+00, 6.88235283e+00, 1.18382349e+01, + 1.48970585e+01, 1.30882349e+01, 9.16176510e+00, 9.47058868e+00, + 8.97058868e+00, 4.32352924e+00, 6.08823538e+00, 1.39411764e+01, + 1.45588236e+01, 9.91176510e+00, 6.57352924e+00, 5.27941179e+00, + 3.82352948e+00, 3.27941179e+00, 3.20588231e+00, 5.27941179e+00, + 8.45588207e+00, 9.02941132e+00, 8.25000000e+00, 6.30882359e+00, + 6.29411745e+00, 1.42352943e+01, 1.35294113e+01, 2.52500000e+01, + 4.23382339e+01, 4.97647057e+01, 4.36176453e+01, 2.87794113e+01, + 2.10735302e+01, 1.63823528e+01, 2.36176472e+01, 4.51470604e+01, + 7.38970566e+01, 6.00588226e+01, 4.33823547e+01, 3.16470585e+01, + 2.14117641e+01, 8.67647076e+00, 2.23823528e+01, 7.12941208e+01, + 9.24264679e+01, 4.69852943e+01, 1.82500000e+01, 1.29852943e+01, + 8.14705849e+00, 4.97058821e+00, 4.23529434e+00, 6.79411745e+00, + 1.09705887e+01, 1.18970585e+01, 8.51470566e+00, 6.54411745e+00, + 6.29411745e+00, 1.40441179e+01, 1.51323528e+01, 3.29117661e+01, + 6.78823547e+01, 7.08823547e+01, 4.63382339e+01, 3.13235302e+01, + 2.09117641e+01, 9.64705849e+00, 1.46617651e+01, 5.71911774e+01, + 1.32117645e+02, 1.05205879e+02, 4.67352943e+01, 2.74705887e+01, + 1.34117651e+01, 6.77941179e+00, 1.65588226e+01, 9.27205887e+01, + 1.39485291e+02, 8.76176453e+01, 1.72058830e+01, 1.06470585e+01, + 8.61764717e+00, 3.07352948e+00, 3.11764717e+00, 5.01470566e+00, + 1.08088236e+01, 1.33088236e+01, 9.02941132e+00, 6.85294104e+00, + 3.60294127e+00, 6.77941179e+00, 7.42647076e+00, 2.54852943e+01, + 9.83235321e+01, 9.14264679e+01, 3.35147057e+01, 1.87794113e+01, + 9.75000000e+00, 6.19117641e+00, 7.07352924e+00, 4.13235283e+01, + 1.37176468e+02, 1.17720589e+02, 2.75882359e+01, 1.36029415e+01, + 8.17647076e+00, 1.71323528e+01, 1.13235292e+01, 5.56764717e+01, + 1.32514709e+02, 1.00250000e+02, 1.79705887e+01, 1.69705887e+01, + 3.49411774e+01, 3.05714297e+00, 2.77142859e+00, 3.79999995e+00, + 1.92142849e+01, 6.23142853e+01, 5.08428574e+01, 1.28857145e+01, + 3.48571420e+00, 5.69999981e+00, 6.72857141e+00, 1.30285711e+01, + 3.44000015e+01, 1.05142860e+02, 1.12171425e+02, 3.90428581e+01, + 8.34285736e+00, 1.87000008e+01, 2.58142853e+01, 4.07999992e+01, + 3.37428589e+01, 4.45999985e+01, 8.38714294e+01, 8.29285736e+01, + 3.55285721e+01, 2.83428574e+01, 3.41285706e+01, 3.67428589e+01, + 2.62571430e+01, 3.25999985e+01, 7.49571457e+01, 7.66857147e+01, + 3.58714294e+01, 5.88571405e+00, 4.67142868e+00, 6.64285707e+00, + 1.42714281e+01, 4.49000015e+01, 5.14142876e+01, 2.46142864e+01, + 9.30000019e+00, 3.14285707e+00, 2.22857141e+00, 4.35714293e+00, + 1.69428577e+01, 9.21428604e+01, 1.22471428e+02, 6.77857132e+01, + 9.88571453e+00, 1.04285717e+01, 8.05714321e+00, 1.39571428e+01, + 1.98999996e+01, 5.65714302e+01, 117., 8.83000031e+01, + 2.38285713e+01, 2.22142849e+01, 1.92285709e+01, 2.27428570e+01, + 2.32142849e+01, 2.75428562e+01, 7.03428574e+01, 77., + 3.72571411e+01, 1.13285713e+01, 7.07142878e+00, 8.18571472e+00, + 1.21714287e+01, 1.75000000e+01, 2.32999992e+01, 1.93285713e+01, + 1.46999998e+01, 9.81428528e+00, 5.25714302e+00, 7.69999981e+00, + 1.65714283e+01, 4.25142860e+01, 9.08000031e+01, 6.82428589e+01, + 1.99142857e+01, 4.04285717e+00, 2.09999990e+00, 2.97142863e+00, + 5.87142849e+00, 3.72428589e+01, 1.18814285e+02, 1.13657143e+02, + 1.92285709e+01, 4.50000000e+00, 2.11428571e+00, 2.74285722e+00, + 4.90000010e+00, 1.40285711e+01, 8.46428604e+01, 1.16128571e+02, + 3.50428581e+01, 4.18571424e+00, 2.15714288e+00, 1.75714290e+00, + 2.70000005e+00, 4.07142878e+00, 4.50000000e+00, 3.92857146e+00, + 4.47142839e+00, 6.14285707e+00, 2.44285703e+00, 2.92857146e+00, + 5.50000000e+00, 8.71428585e+00, 1.06428576e+01, 1.03999996e+01, + 7.44285727e+00, 4.12857151e+00, 1.31428576e+00, 2.21428561e+00, + 3.70000005e+00, 8.65714264e+00, 2.19428577e+01, 2.32571430e+01, + 8.97142887e+00, 1.55714285e+00, 3.85714293e-01, 4.71428573e-01, + 1.32857144e+00, 5.71428585e+00, 2.36428566e+01, 3.24714279e+01, + 1.03428574e+01, 2.12500000e+00, 3.33333325e+00, 9.76041641e+01, + 6.37708321e+01, 1.54166663e+00, 2.54166675e+00, 2.23750000e+01, + 2.00833340e+01, 3.39583325e+00, 2.23541660e+01, 9.78958359e+01, + 1.74166660e+01, 1.16666663e+00, 6.79166651e+00, 4.52916679e+01, + 2.07708340e+01, 4.85416651e+00, 8.03333359e+01, 9.96041641e+01, + 2.58333325e+00, 7.50000000e-01, 16., 5.31041679e+01, + 1.03541670e+01, 7.70833349e+00, 1.13020836e+02, 7.48958359e+01, + 1.20833337e+00, 1.85416663e+00, 3.40208321e+01, 31., + 4.27083349e+00, 4.04166651e+00, 1.06250000e+00, 1.42708330e+01, + 1.14791670e+01, 8.12500000e-01, 3.31250000e+00, 5.37500000e+01, + 7.01666641e+01, 4.10416651e+00, 2.75000000e+00, 1.73750000e+01, + 4.20833349e+00, 5.41666687e-01, 7.89583349e+00, 1.02041664e+02, + 7.40416641e+01, 3.75000000e+00, 1.43958330e+01, 1.91250000e+01, + 1.22916663e+00, 2.04166675e+00, 2.94375000e+01, 1.11812500e+02, + 38., 9.89583302e+00, 5.95208321e+01, 1.53958330e+01, + 2.91666657e-01, 3.87500000e+00, 4.76041679e+01, 7.92708359e+01, + 1.46666670e+01, 8.47916698e+00, 7.29166687e-01, 6.52083349e+00, + 8.43750000e+00, 2.68750000e+00, 5.22916651e+00, 6.81875000e+01, + 1.07812500e+02, 7.02083349e+00, 1.81250000e+00, 1.04375000e+01, + 5.72916651e+00, 1.77083337e+00, 1.11458330e+01, 1.12187500e+02, + 8.92291641e+01, 6.12500000e+00, 2.72916675e+00, 6.89583349e+00, + 1.08333337e+00, 2.85416675e+00, 3.20625000e+01, 1.18104164e+02, + 5.12916679e+01, 4.06250000e+00, 5.33333349e+00, 1.72916663e+00, + 2.70833343e-01, 9.16666698e+00, 6.41458359e+01, 9.99791641e+01, + 2.11666660e+01, 2.86666660e+01, 8.58333302e+00, 6.75000000e+00, + 1.00416670e+01, 1.15000000e+01, 1.09375000e+01, 3.58333321e+01, + 7.87916641e+01, 1.85833340e+01, 8.06250000e+00, 5.81250000e+00, + 5.75000000e+00, 8.02083302e+00, 1.18750000e+01, 4.65416679e+01, + 4.91458321e+01, 2.09583340e+01, 8.25000000e+00, 7., + 6.35416651e+00, 8.81250000e+00, 2.17291660e+01, 5.07500000e+01, + 3.48958321e+01, 1.11458330e+01, 5.33333349e+00, 3.66666675e+00, + 6.72916651e+00, 2.29791660e+01, 3.85208321e+01, 3.81666679e+01, + 1.85000000e+01, 5.52142868e+01, 2.02619057e+01, 4.59285698e+01, + 7.45952377e+01, 1.31666670e+01, 9.69047642e+00, 1.10619049e+02, + 1.27214287e+02, 5.07142868e+01, 2.77142849e+01, 3.52619057e+01, + 4.08095245e+01, 3.19285717e+01, 3.23809509e+01, 1.00119049e+02, + 1.17452377e+02, 3.31904755e+01, 2.99285717e+01, 3.23571434e+01, + 3.92142868e+01, 3.60238113e+01, 3.97619057e+01, 5.92857132e+01, + 6.39047623e+01, 1.19047623e+01, 1.60238094e+01, 2.00714283e+01, + 2.08095245e+01, 2.18809528e+01, 1.79761906e+01, 2.00714283e+01, + 1.73095245e+01, 7.57142868e+01, 4.53809509e+01, 2.73333340e+01, + 2.45714283e+01, 1.61666660e+01, 1.98333340e+01, 46., + 9.39285736e+01, 5.25000000e+01, 4.78333321e+01, 4.45952377e+01, + 52., 4.39285698e+01, 3.96666679e+01, 4.20238113e+01, + 5.43809509e+01, 4.08333321e+01, 3.65000000e+01, 3.88333321e+01, + 5.18809509e+01, 4.92142868e+01, 4.08333321e+01, 3.88333321e+01, + 4.44047623e+01, 1.61904755e+01, 1.70476189e+01, 1.70714283e+01, + 2.24761906e+01, 2.69285717e+01, 2.28095245e+01, 1.80476189e+01, + 1.91428566e+01, 5.28809509e+01, 5.23095245e+01, 4.25476189e+01, + 3.19761906e+01, 2.09523811e+01, 1.99047623e+01, 2.31190472e+01, + 3.93571434e+01, 5.71666679e+01, 5.95476189e+01, 53., + 4.41428566e+01, 3.46428566e+01, 3.18333340e+01, 3.35238113e+01, + 4.66666679e+01, 4.39285698e+01, 3.88333321e+01, 3.72142868e+01, + 4.33809509e+01, 4.37857132e+01, 3.67380943e+01, 3.67857132e+01, + 4.19523811e+01, 1.48571424e+01, 1.41666670e+01, 1.99761906e+01, + 2.79761906e+01, 2.75952377e+01, 1.77380943e+01, 1.39761906e+01, + 1.64761906e+01, 3.61428566e+01, 3.58571434e+01, 3.49047623e+01, + 2.72142849e+01, 1.85000000e+01, 1.25714283e+01, 1.60952377e+01, + 2.62619057e+01, 4.71190491e+01, 4.90952377e+01, 3.91190491e+01, + 2.85000000e+01, 2.36428566e+01, 1.63809528e+01, 2.21666660e+01, + 3.80476189e+01, 30., 3.04761906e+01, 4.04285698e+01, + 4.90238113e+01, 3.71190491e+01, 1.83571434e+01, 1.71428566e+01, + 2.32380943e+01, 1.24523811e+01, 9.90476227e+00, 1.40952377e+01, + 2.27380943e+01, 1.83809528e+01, 9.73809528e+00, 7.95238113e+00, + 1.45238094e+01, 1.09259260e+00, 2.09259248e+00, 6.05555534e+00, + 2.04444447e+01, 2.31851845e+01, 6.98148155e+00, 2.59259248e+00, + 1.33333337e+00, 2.88888884e+00, 6.72222233e+00, 1.80555553e+01, + 5.98703690e+01, 5.44814796e+01, 1.39444447e+01, 3.77777767e+00, + 2.20370364e+00, 1.17777777e+01, 1.67407398e+01, 2.94259262e+01, + 7.70370407e+01, 4.93703690e+01, 1.17407408e+01, 4.53703690e+00, + 1.01666670e+01, 1.70740738e+01, 1.67592602e+01, 4.57037048e+01, + 5.89444427e+01, 2.44629631e+01, 9.03703690e+00, 1.06481485e+01, + 2.01851845e+01, 1.25925922e+00, 3.03703713e+00, 5.98148155e+00, + 2.71851845e+01, 4.54629631e+01, 1.48518515e+01, 3.88888884e+00, + 1.55555558e+00, 4.31481504e+00, 6.05555534e+00, 1.17962961e+01, + 6.99444427e+01, 1.02185188e+02, 2.94444447e+01, 5.70370388e+00, + 4.40740728e+00, 1.83888893e+01, 1.44074078e+01, 2.39074078e+01, + 1.09425926e+02, 8.02592621e+01, 2.52592602e+01, 1.14259262e+01, + 3.10740738e+01, 1.78333340e+01, 1.12777777e+01, 6.93148117e+01, + 1.14500000e+02, 2.29259262e+01, 1.15370369e+01, 2.35000000e+01, + 4.08333321e+01, 1.16666663e+00, 2., 3.35185194e+00, + 1.75370369e+01, 5.18148155e+01, 2.41481476e+01, 4.74074078e+00, + 2.01851845e+00, 6.46296310e+00, 4.12962961e+00, 6.68518496e+00, + 5.70555573e+01, 1.16222221e+02, 4.55370369e+01, 7.38888884e+00, + 6.20370388e+00, 1.93703709e+01, 5.22222233e+00, 1.47962961e+01, + 1.25500000e+02, 1.19314812e+02, 2.07592602e+01, 1.04074078e+01, + 3.15000000e+01, 2.70925922e+01, 12., 5.18703690e+01, + 1.09592590e+02, 3.03888893e+01, 7.57407427e+00, 3.10185184e+01, + 5.85000000e+01, 6.11111104e-01, 1.31481481e+00, 3.03703713e+00, + 9.85185146e+00, 3.65000000e+01, 2.40925922e+01, 6.33333349e+00, + 1.62962961e+00, 4.79629612e+00, 1.57407403e+00, 3.46296287e+00, + 3.38518524e+01, 1.13222221e+02, 4.77222214e+01, 7.25925922e+00, + 3.59259248e+00, 1.30925922e+01, 5.18518496e+00, 7.50000000e+00, + 7.62222214e+01, 1.26981483e+02, 3.25370369e+01, 7.48148155e+00, + 1.09444447e+01, 2.67222214e+01, 1.76666660e+01, 3.00925922e+01, + 4.17407417e+01, 2.45925922e+01, 4.44444466e+00, 1.44259262e+01, + 2.92777786e+01, 1.22112675e+01, 9.90140820e+00, 2.74647880e+00, + 4., 1.55774651e+01, 3.76901398e+01, 1.85352116e+01, + 1.28591547e+01, 3.99859161e+01, 4.97887306e+01, 5.67605639e+00, + 6.30985928e+00, 4.84507027e+01, 7.93098602e+01, 1.82676048e+01, + 1.35633802e+01, 5.28169022e+01, 7.38450699e+01, 8.29577446e+00, + 3.95774651e+00, 3.77605629e+01, 8.60563354e+01, 1.96901417e+01, + 1.28169012e+01, 4.01408463e+01, 7.07464752e+01, 9.63380241e+00, + 5.35211277e+00, 2.03098583e+01, 5.75774651e+01, 2.90563374e+01, + 1.15070419e+01, 1.23661976e+01, 6.43661976e+00, 4.53521109e+00, + 6., 1.21971827e+01, 2.24084511e+01, 2.16478882e+01, + 1.76901417e+01, 3.99295769e+01, 4.40140839e+01, 7.90140867e+00, + 9.18309879e+00, 7.37746506e+01, 9.93098602e+01, 2.55915489e+01, + 1.79154930e+01, 8.34225388e+01, 7.91971817e+01, 7.11267614e+00, + 6.78873253e+00, 6.06338043e+01, 9.53661957e+01, 2.21830978e+01, + 2.94084511e+01, 5.73521118e+01, 6.60704193e+01, 1.12112675e+01, + 1.05492954e+01, 3.09718304e+01, 7.42394333e+01, 4.28169022e+01, + 2.52816906e+01, 1.33380280e+01, 9.23943615e+00, 6.08450699e+00, + 6.56338024e+00, 8.70422554e+00, 1.35492954e+01, 1.79014091e+01, + 1.51830988e+01, 2.80845070e+01, 2.15211277e+01, 9.22535229e+00, + 1.25774651e+01, 6.26619720e+01, 7.65211258e+01, 2.69014091e+01, + 1.91126766e+01, 9.20422516e+01, 8.15492935e+01, 6.95774651e+00, + 8.26760578e+00, 8.51971817e+01, 1.00464790e+02, 1.94084511e+01, + 2.56478882e+01, 5.58028183e+01, 6.27464790e+01, 2.27323952e+01, + 1.78732395e+01, 4.01549301e+01, 6.65915527e+01, 2.49295769e+01, + 1.91126766e+01, 1.13943663e+01, 8.57746506e+00, 6.30985928e+00, + 5.21126747e+00, 6.28169012e+00, 8.92957783e+00, 1.26901407e+01, + 1.18450708e+01, 2.02253513e+01, 1.41408453e+01, 9.12676048e+00, + 1.04507046e+01, 3.08169022e+01, 3.35352097e+01, 2.17183094e+01, + 1.86056347e+01, 5.35211258e+01, 4.85915489e+01, 6.77464771e+00, + 7.59154940e+00, 6.58028183e+01, 9.25915527e+01, 2.04084511e+01, + 2.01971836e+01, 4.73521118e+01, 5.72535210e+01, 1.42253523e+01, + 9.88732433e+00, 3.63098602e+01, 7.00985947e+01, 2.07323952e+01, + 1.59718313e+01, 9.47936478e+01, 1.14761906e+01, 1.98412693e+00, + 6.98412704e+00, 1.90476189e+01, 7.61904764e+00, 2.26984119e+00, + 1.03015871e+01, 1.04333336e+02, 1.46349211e+01, 2., + 2.04920635e+01, 1.19111115e+02, 2.31428566e+01, 3.44444442e+00, + 1.83174610e+01, 3.26984138e+01, 1.60317459e+01, 4.09523821e+00, + 6.09523821e+00, 2.86984119e+01, 6.42857122e+00, 8.79365063e+00, + 2.78730164e+01, 3.96349220e+01, 2.24126987e+01, 5.14285707e+00, + 2.50793648e+00, 3.20634913e+00, 4.92063475e+00, 9.87301540e+00, + 3.05079365e+01, 8.92380981e+01, 3.26349220e+01, 2.22222233e+00, + 6.11111116e+00, 1.90952377e+01, 1.36507940e+01, 3.53968263e+00, + 3.79365087e+00, 1.19015877e+02, 6.67777786e+01, 2.87301588e+00, + 5.80952358e+00, 1.20190475e+02, 8.58888855e+01, 3.31746030e+00, + 9.82539654e+00, 3.94761887e+01, 3.15396824e+01, 9., + 4.23809528e+00, 4.99841270e+01, 3.38095245e+01, 3.33333325e+00, + 1.90476189e+01, 4.47301598e+01, 4.40158730e+01, 1.28095236e+01, + 4.26984119e+00, 2.88888884e+00, 3.03174615e+00, 4.17460299e+00, + 1.73174610e+01, 3.27460327e+01, 2.55079365e+01, 1.93650794e+00, + 5.33333349e+00, 1.86666660e+01, 2.11269836e+01, 8.30158710e+00, + 2.31746030e+00, 1.15412697e+02, 1.25222221e+02, 3.65079355e+00, + 3.38095236e+00, 7.76825409e+01, 9.09365082e+01, 5.33333349e+00, + 4.25396824e+00, 3.21746025e+01, 5.52698402e+01, 1.21428576e+01, + 4.69841290e+00, 6.84126968e+01, 1.11730156e+02, 5.88888884e+00, + 6.20634937e+00, 2.88412704e+01, 4.22380943e+01, 2.28571434e+01, + 6.25396824e+00, 3.87301588e+00, 1.04920635e+01, 2.07936502e+00, + 6.69841290e+00, 2.66666675e+00, 3.44444442e+00, 1.55555558e+00, + 3.44444442e+00, 1.53015871e+01, 2.13492069e+01, 7.74603176e+00, + 1.73015869e+00, 4.28095245e+01, 1.05476189e+02, 4.20634937e+00, + 2.74603176e+00, 1.63968258e+01, 3.42539673e+01, 8.09523773e+00, + 2.34920645e+00, 2.30634918e+01, 1.16730156e+02, 17., 2., + 2.68571434e+01, 1.21047623e+02, 1.34920635e+01, 1.92063487e+00, + 8.65079403e+00, 3.58253975e+01, 1.96984119e+01, 3.42857146e+00, + 4.36507940e+00, 8.57142868e+01, 2.57777786e+01, 1.85714281e+00, + 1.12903225e+00, 4.16129017e+00, 1.11322578e+02, 8.74193573e+01, + 2., 1.12903225e+00, 2.16129041e+00, 2., 1.48387098e+00, + 5.85483856e+01, 1.15903229e+02, 1.81290321e+01, 1.06451619e+00, + 1.96774197e+00, 2.77419353e+00, 2.09677410e+00, 4., 120., + 1.05580643e+02, 5.54838705e+00, 3.41935492e+00, 5.96774197e+00, + 2.93548393e+00, 1.58064520e+00, 1.22580643e+01, 8.84838715e+01, + 3.31935501e+01, 9.41935444e+00, 5.06451607e+00, 8.93548393e+00, + 8.45161247e+00, 3.48387098e+00, 2.64516139e+00, 1.93548381e+00, + 2.90645161e+01, 4.14838715e+01, 8.77419376e+00, 5.06451607e+00, + 1.20645161e+01, 1.11612902e+01, 7.09677410e+00, 2.27419357e+01, + 3.79032249e+01, 8.48387051e+00, 2.25806451e+00, 1.09677420e+01, + 2.86129036e+01, 1.69032249e+01, 2.26451607e+01, 1.01419357e+02, + 3.13548393e+01, 2.19354844e+00, 3.87096763e+00, 1.92258072e+01, + 1.78064518e+01, 7.80645180e+00, 9.35483856e+01, 1.34354843e+02, + 1.43225803e+01, 7.51612902e+00, 8.70967770e+00, 1.46451616e+01, + 6.19354820e+00, 6.48387098e+00, 1.95483875e+01, 7.06451607e+00, + 5.80645180e+00, 1.40645161e+01, 1.83870964e+01, 1.94193554e+01, + 2.68064518e+01, 3.16774197e+01, 4.54193535e+01, 4.31290321e+01, + 1.71935482e+01, 8.19354820e+00, 1.99032249e+01, 5.01290321e+01, + 5.38387108e+01, 3.43548393e+01, 5.16774178e+01, 4.86774178e+01, + 1.61290321e+01, 1.30645161e+01, 5.35806465e+01, 8.22258072e+01, + 3.39677429e+01, 1.86451607e+01, 1.31580643e+02, 7.75806427e+01, + 2.54838705e+00, 3.61290312e+00, 2.08709679e+01, 1.67419357e+01, + 5.22580624e+00, 1.02903223e+01, 2.88387089e+01, 2.13870964e+01, + 9.51612949e+00, 1.03225803e+01, 34., 3.36451607e+01, + 1.84193554e+01, 1.72258072e+01, 3.33548393e+01, 3.20322571e+01, + 1.60967751e+01, 1.61935482e+01, 2.78387089e+01, 2.20322590e+01, + 1.34193544e+01, 1.17741938e+01, 4.92258072e+01, 2.57096767e+01, + 2.06451607e+01, 3.61290321e+01, 5.84193535e+01, 2.59354839e+01, + 9.03225803e+00, 1.88064518e+01, 1.21903229e+02, 9.96774197e+00, + 3.22580647e+00, 8.61290359e+00, 1.82258072e+01, 5.51612902e+00, + 2.48387098e+00, 5.79677429e+01, 9.79166698e+00, 7.45833349e+00, + 6.65000000e+01, 5.07916679e+01, 5.62500000e+00, 1.16666670e+01, + 3.36666679e+01, 2.46666660e+01, 4.41666651e+00, 1.00416670e+01, + 7.18750000e+01, 2.08333340e+01, 8.83333302e+00, 3.62083321e+01, + 3.82916679e+01, 1.03333330e+01, 1.50000000e+00, 4.53750000e+01, + 8.37916641e+01, 7.79166651e+00, 1.44166670e+01, 4.67500000e+01, + 2.93333340e+01, 3.08333325e+00, 3.54166675e+00, 1.07625000e+02, + 8.45416641e+01, 3.62500000e+00, 1.23333330e+01, 6.42083359e+01, + 2.77083340e+01, 7.50000000e-01, 3.12500000e+01, 4.87500000e+00, + 1.87500000e+00, 2.75000000e+00, 1.87500000e+00, 1.85000000e+01, + 7.40416641e+01, 5.82916679e+01, 9.16666698e+00, 2.04166675e+00, + 9.16666687e-01, 1.87500000e+00, 1.16250000e+01, 8.33333359e+01, + 9.78333359e+01, 2.75833340e+01, 1.12500000e+00, 1.87500000e+00, + 1.16666663e+00, 3.37500000e+00, 32., 9.94583359e+01, + 4.76666679e+01, 2.95833325e+00, 3.62500000e+00, 2.92083340e+01, + 6.45833349e+00, 2.45833325e+00, 3.37916679e+01, 6.15000000e+01, + 1.57916670e+01, 8.33333313e-01, 7.74166641e+01, 3.52500000e+01, + 1.69583340e+01, 1.01250000e+01, 9.33333302e+00, 1.88750000e+01, + 7.45833359e+01, 1.02750000e+02, 2.28333340e+01, 21., + 3.12916660e+01, 39., 5.78333321e+01, 9.67500000e+01, + 1.01041664e+02, 4.56666679e+01, 1.79166663e+00, 2.41666675e+00, + 5.83333349e+00, 1.68750000e+01, 5.44166679e+01, 1.11458336e+02, + 5.66666679e+01, 3.58333325e+00, 5.41666687e-01, 8.33333313e-01, + 6.66666687e-01, 5.04166651e+00, 5.40833321e+01, 9.10416641e+01, + 1.82083340e+01, 7.91666687e-01, 5.36666679e+01, 3.30416679e+01, + 2.23750000e+01, 1.33750000e+01, 1.06666670e+01, 7.87500000e+00, + 1.33333330e+01, 3.77916679e+01, 1.58333330e+01, 2.22500000e+01, + 3.42500000e+01, 3.07500000e+01, 2.98333340e+01, 2.55416660e+01, + 1.61250000e+01, 1.21250000e+01, 5.95833349e+00, 7.91666651e+00, + 7.95833349e+00, 1.48333330e+01, 5.47500000e+01, 7.35833359e+01, + 1.97500000e+01, 4.75000000e+00, 4.58333343e-01, 4.58333343e-01, + 8.33333313e-01, 1.30833330e+01, 7.17500000e+01, 75., + 6.70833349e+00, 1.04166663e+00, 1.25581396e+00, 1.04651165e+00, + 2.51162791e+00, 4.60465097e+00, 6.90697670e+00, 5.93023252e+00, + 3.13953495e+00, 1.76744187e+00, 1.90697670e+00, 2.62790704e+00, + 9.23255825e+00, 1.27441864e+01, 9.30232525e+00, 4.95348835e+00, + 4., 2.18604660e+00, 1.93023252e+00, 3.53488374e+00, + 6.27906990e+00, 6.20930243e+00, 6.83720922e+00, 4.60465097e+00, + 5.53488350e+00, 2.60465121e+00, 4.18604642e-01, 4.88372087e-01, + 8.13953459e-01, 1.34883726e+00, 2.27906966e+00, 1.60465121e+00, + 1.53488374e+00, 6.27906978e-01, 3.88372087e+00, 4.67441845e+00, + 2.84651165e+01, 5.14883728e+01, 2.62093029e+01, 2.14418602e+01, + 1.98139534e+01, 1.60232563e+01, 1.40697670e+01, 17., + 4.18372078e+01, 55., 3.18139534e+01, 3.25581398e+01, + 4.36744194e+01, 3.06511631e+01, 2.84418602e+01, 2.41627903e+01, + 1.80697670e+01, 1.87209301e+01, 2.65581398e+01, 2.65581398e+01, + 2.68372097e+01, 2.01860466e+01, 8.37209320e+00, 5.60465097e+00, + 2.04651165e+00, 2.69767451e+00, 5.18604660e+00, 4.62790680e+00, + 5.76744175e+00, 3.23255825e+00, 7.58139515e+00, 4.27906990e+00, + 4.19534874e+01, 8.59302292e+01, 25., 1.48604650e+01, + 7.49534912e+01, 1.05418602e+02, 3.07906971e+01, 1.30697670e+01, + 4.75116272e+01, 1.18604652e+02, 7.69767456e+01, 6.46744156e+01, + 1.00604652e+02, 1.14837212e+02, 4.41162796e+01, 1.99767437e+01, + 18., 5.29302330e+01, 6.02325592e+01, 4.41627922e+01, + 3.36744194e+01, 5.67441864e+01, 8.67441845e+00, 5.55813932e+00, + 2.30232549e+00, 2.95348835e+00, 4.76744175e+00, 5.58139515e+00, + 6.06976748e+00, 5.83720922e+00, 1.52790699e+01, 4.39534903e+00, + 7.12790680e+01, 1.21093025e+02, 1.70232563e+01, 5.37209320e+00, + 6.31860466e+01, 1.19930229e+02, 2.48837204e+01, 4.83720922e+00, + 6.63023224e+01, 1.24558136e+02, 4.37209320e+01, 1.92325573e+01, + 5.69069786e+01, 1.13860466e+02, 2.06744194e+01, 4.90697670e+00, + 1.08372097e+01, 3.98604660e+01, 2.87906971e+01, 2.31395340e+01, + 2.11627903e+01, 5.36976738e+01, 5.09302330e+00, 1.44186044e+00, + 1.16279066e+00, 3.27906966e+00, 3.76744175e+00, 4.41860485e+00, + 3.53488374e+00, 5., 7.30749969e+01, 1.75249996e+01, + 2.62749996e+01, 1.26275002e+02, 1.22949997e+02, 4.50999985e+01, + 2.29249992e+01, 9.01500015e+01, 6.40749969e+01, 1.09750004e+01, + 2.16000004e+01, 7.34499969e+01, 8.58249969e+01, 4.57249985e+01, + 3.32249985e+01, 8.63249969e+01, 1.18750000e+01, 1.11000004e+01, + 2.41499996e+01, 4.26749992e+01, 5.79249992e+01, 5.08250008e+01, + 3.45999985e+01, 2.36250000e+01, 1.05500002e+01, 1.35000000e+01, + 1.96250000e+01, 2.85000000e+01, 3.50750008e+01, 3.36500015e+01, + 2.18999996e+01, 1.38249998e+01, 7.06500015e+01, 1.29499998e+01, + 4.03499985e+01, 128., 8.15500031e+01, 2.15249996e+01, + 3.09750004e+01, 1.24150002e+02, 2.98500004e+01, 2.13500004e+01, + 4.15999985e+01, 6.03750000e+01, 7.51250000e+01, 4.92500000e+01, + 3.00499992e+01, 52., 1.26999998e+01, 1.77500000e+01, + 3.37249985e+01, 4.61500015e+01, 6.73750000e+01, 6.66250000e+01, + 3.61749992e+01, 1.42250004e+01, 1.26750002e+01, 1.85750008e+01, + 2.25000000e+01, 3.21500015e+01, 5.15750008e+01, 5.15250015e+01, + 3.12500000e+01, 1.41000004e+01, 2.90249996e+01, 1.28000002e+01, + 3.37000008e+01, 6.90749969e+01, 49., 1.70750008e+01, + 1.79249992e+01, 7.55250015e+01, 1.74500008e+01, 2.65499992e+01, + 3.81500015e+01, 3.63250008e+01, 4.79000015e+01, 3.71250000e+01, + 1.92000008e+01, 1.76250000e+01, 1.56499996e+01, 1.99249992e+01, + 2.55000000e+01, 2.65499992e+01, 4.40999985e+01, 5.47999992e+01, + 3.02500000e+01, 1.53999996e+01, 9.62500000e+00, 1.24750004e+01, + 16., 2.39500008e+01, 4.24500008e+01, 4.62999992e+01, + 2.67250004e+01, 1.31000004e+01, 3., 2.79999995e+00, + 6.55000019e+00, 8., 9.55000019e+00, 4.77500010e+00, + 2.59999990e+00, 4.75000000e+00, 4.82499981e+00, 4.82499981e+00, + 6.44999981e+00, 5.25000000e+00, 8.52499962e+00, 7.82499981e+00, + 4.59999990e+00, 4.30000019e+00, 3.47499990e+00, 4.44999981e+00, + 5.80000019e+00, 6.19999981e+00, 9.30000019e+00, 8.77499962e+00, + 4.80000019e+00, 2.59999990e+00, 2.32500005e+00, 2.95000005e+00, + 3.37500000e+00, 4.44999981e+00, 7.67500019e+00, 8.27499962e+00, + 5.09999990e+00, 2.34999990e+00, 1.09906975e+02, 6.65581360e+01, + 3.53488374e+00, 7.39534903e+00, 56., 4.00465126e+01, + 4.97674417e+00, 1.40465117e+01, 6.04651146e+01, 4.08372078e+01, + 4.76744175e+00, 7.97674417e+00, 1.17953491e+02, 9.71860428e+01, + 2.03488369e+01, 4.74418592e+00, 4.93023262e+01, 4.30930214e+01, + 3.90697670e+00, 2.97674417e+00, 3.21162796e+01, 3.50930214e+01, + 1.72558136e+01, 6.86046505e+00, 7.04651165e+00, 5.72093010e+00, + 1.55813956e+00, 2.58139539e+00, 4.72093010e+00, 7.58139515e+00, + 9.90697670e+00, 6.34883738e+00, 1.06395348e+02, 5.34883728e+01, + 7.67441845e+00, 2.19069767e+01, 4.74651146e+01, 2.04418602e+01, + 1.03488369e+01, 5.25116272e+01, 5.70232544e+01, 4.23255806e+01, + 1.87674427e+01, 2.26046505e+01, 8.57441864e+01, 101., + 4.85116272e+01, 1.76046505e+01, 4.56279068e+01, 5.56279068e+01, + 9.46511650e+00, 4.79069757e+00, 6.22558136e+01, 1.04395348e+02, + 5.65813942e+01, 8.97674465e+00, 2.23255806e+01, 2.51860466e+01, + 3., 2.13953495e+00, 1.10465117e+01, 2.10930233e+01, + 1.06976748e+01, 5.44186068e+00, 1.00767441e+02, 2.44186039e+01, + 6.55813932e+00, 2.02093029e+01, 3.99069786e+01, 1.27209301e+01, + 7.44186068e+00, 6.13255806e+01, 3.80697670e+01, 2.92790699e+01, + 2.47674427e+01, 2.58837204e+01, 3.14651165e+01, 3.61162796e+01, + 2.96046505e+01, 2.77441864e+01, 1.96046505e+01, 2.67441864e+01, + 1.13023252e+01, 1.26046515e+01, 8.35581360e+01, 9.67209320e+01, + 3.44186058e+01, 7.83720922e+00, 4.15348854e+01, 3.17209301e+01, + 2.16279078e+00, 1.95348835e+00, 4.88372078e+01, 5.27906990e+01, + 4.83720922e+00, 4., 8.83953476e+01, 3.60465126e+01, + 4.16279078e+00, 1.03023252e+01, 3.56046524e+01, 1.72325573e+01, + 2.27906966e+00, 1.00697670e+01, 2.83488369e+01, 3.63023262e+01, + 1.67674427e+01, 1.40465117e+01, 2.15348835e+01, 1.31627903e+01, + 7.65116262e+00, 9.58139515e+00, 1.40697670e+01, 1.53488369e+01, + 9.18604660e+00, 1.27906981e+01, 6.04651146e+01, 3.26279068e+01, + 6.88372087e+00, 5.65116262e+00, 3.48837204e+01, 1.42790699e+01, + 1.37209308e+00, 3.04651165e+00, 6.40930252e+01, 4.07906990e+01, + 1.93023252e+00, 3.67441869e+00, 3.28536568e+01, 1.01121948e+02, + 1.15365858e+01, 1.87804878e+00, 2.77073174e+01, 1.36804871e+02, + 21., 1.02439022e+00, 1.63414631e+01, 4.64878044e+01, + 1.48292685e+01, 6.51219511e+00, 4.20243912e+01, 1.13512192e+02, + 1.64878044e+01, 3.46341467e+00, 1.04878044e+01, 2.18292675e+01, + 1.26341467e+01, 1.03170729e+01, 11., 1.81219521e+01, + 5.87804890e+00, 5.56097555e+00, 6.34146333e-01, 1.29268289e+00, + 1.70731711e+00, 1.90243900e+00, 1.12195122e+00, 7.56097555e-01, + 5.12195110e-01, 6.82926834e-01, 4.14390259e+01, 1.45390244e+02, + 4.32682915e+01, 3.60975599e+00, 2.43902435e+01, 1.11414635e+02, + 2.28536587e+01, 1.56097555e+00, 2.56097565e+01, 1.13365852e+02, + 5.49756088e+01, 3.64390259e+01, 8.18048782e+01, 1.41243896e+02, + 2.98048782e+01, 3.95121956e+00, 1.67073174e+01, 2.62195129e+01, + 1.94146347e+01, 2.99756088e+01, 5.70731697e+01, 6.97317047e+01, + 8.87804890e+00, 7.24390221e+00, 1.73170733e+00, 3.34146333e+00, + 3.19512200e+00, 2.26829267e+00, 1.92682922e+00, 1.04878044e+00, + 7.07317054e-01, 6.34146333e-01, 1.29512196e+01, 9.32926865e+01, + 4.09512177e+01, 1.02682924e+01, 1.32195120e+01, 5.87317085e+01, + 1.91219521e+01, 2.75609756e+00, 1.28048782e+01, 1.15121948e+02, + 1.10536583e+02, 6.73170700e+01, 4.62439041e+01, 6.30487823e+01, + 2.72682934e+01, 1.16585369e+01, 1.22195120e+01, 14., + 3.64146347e+01, 5.84634132e+01, 5.26341476e+01, 2.70975609e+01, + 1.37560978e+01, 1.65365849e+01, 1.36585367e+00, 1.36585367e+00, + 2., 2.70731711e+00, 3.29268289e+00, 9.26829278e-01, + 1.41463411e+00, 1.34146345e+00, 1.73170733e+00, 3.80487800e+00, + 4.58536577e+00, 3.82926822e+00, 2.87804890e+00, 8.43902397e+00, + 5.24390221e+00, 1.07317078e+00, 2.85365844e+00, 8.75609779e+00, + 1.34634142e+01, 8.82926846e+00, 4.51219511e+00, 7.07317066e+00, + 7.68292665e+00, 3.87804890e+00, 3.51219511e+00, 2.56097555e+00, + 7.46341467e+00, 9.02439022e+00, 4.92682934e+00, 1.43902445e+00, + 2.95121956e+00, 4.39024401e+00, 1.95121944e-01, 3.17073166e-01, + 7.56097555e-01, 8.29268277e-01, 5.85365832e-01, 9.75609720e-02, + 2.92682916e-01, 3.17073166e-01, 1.19268293e+01, 1.12195120e+01, + 1.16341467e+01, 1.12926826e+01, 1.31707315e+01, 1.62926826e+01, + 1.70975609e+01, 1.52926826e+01, 4.50243912e+01, 5.36585350e+01, + 1.04146338e+01, 1.12439022e+01, 9.97073135e+01, 1.05560974e+02, + 1.88780479e+01, 1.60975609e+01, 1.05195122e+02, 1.11048782e+02, + 1.19268293e+01, 1.37317076e+01, 8.56097565e+01, 1.01097565e+02, + 1.46829271e+01, 2.43658543e+01, 3.77804871e+01, 5.07317085e+01, + 3.10487804e+01, 2.86097565e+01, 3.87804871e+01, 4.39512177e+01, + 2.42439022e+01, 2.11707325e+01, 1.69024391e+01, 1.78292675e+01, + 1.87317066e+01, 1.49268293e+01, 1.22439022e+01, 1.12439022e+01, + 1.70487804e+01, 1.94390240e+01, 2.57073174e+01, 3.22195129e+01, + 2.20731716e+01, 1.87804871e+01, 5.80975609e+01, 8.34634171e+01, + 24., 2.42195129e+01, 7.91707306e+01, 1.20268295e+02, + 1.99268284e+01, 1.14878044e+01, 9.36341476e+01, 1.28731705e+02, + 3.04878044e+01, 1.33414631e+01, 4.05853653e+01, 1.04902435e+02, + 5.63414650e+01, 2.90975609e+01, 5.17317085e+01, 9.68292694e+01, + 38., 1.40487804e+01, 1.15121956e+01, 1.19512196e+01, + 1.70243912e+01, 1.25609760e+01, 1.12926826e+01, 1.12195120e+01, + 1.34146338e+01, 1.60243912e+01, 1.91219521e+01, 1.95853653e+01, + 2.75853653e+01, 1.79756088e+01, 1.71219521e+01, 1.88780479e+01, + 1.77073174e+01, 2.41463413e+01, 2.19024391e+01, 4.10731697e+01, + 2.11463413e+01, 1.59024391e+01, 3.99268303e+01, 9.81707306e+01, + 3.58292694e+01, 1.49512196e+01, 2.01219521e+01, 6.06585350e+01, + 3.32195129e+01, 1.88780479e+01, 2.78292675e+01, 9.88536606e+01, + 6.13170738e+01, 1.41707315e+01, 2.09756088e+00, 2.46341467e+00, + 4.85365868e+00, 3.68292689e+00, 2.75609756e+00, 6.09756088e+00, + 3.43902445e+00, 3.09756088e+00, 6., 6.46341467e+00, + 9.90243912e+00, 7.63414621e+00, 3.80487800e+00, 4.48780489e+00, + 5.68292665e+00, 5.56097555e+00, 4.87804890e+00, 7.07317066e+00, + 1.04634142e+01, 8.65853691e+00, 7.75609779e+00, 9.56097603e+00, + 7.14634132e+00, 4.21951199e+00, 6.07317066e+00, 7., + 7.14634132e+00, 5.48780489e+00, 7.97560978e+00, 2.22926826e+01, + 1.33658533e+01, 5.29268312e+00, 8.92105293e+00, 1.00789471e+01, + 5.10526314e+01, 3.56052628e+01, 6.13157892e+00, 3.15789485e+00, + 1.95000000e+01, 1.92105255e+01, 9.50000000e+00, 1.62105255e+01, + 8.00789490e+01, 2.99210529e+01, 6.57894754e+00, 5.65789461e+00, + 1.73947372e+01, 1.13421049e+01, 1.04210529e+01, 3.16052628e+01, + 7.51842117e+01, 2.00263157e+01, 6.31578970e+00, 8.42105293e+00, + 1.39210529e+01, 7.39473677e+00, 1.16578951e+01, 4.62368431e+01, + 48., 8.86842060e+00, 4.71052647e+00, 6.73684216e+00, + 6.97368431e+00, 5.60526323e+00, 1.24473686e+01, 8.15789509e+00, + 9.97631607e+01, 6.98684235e+01, 4.65789461e+00, 7.89473677e+00, + 4.89210510e+01, 3.03684216e+01, 4.02631569e+00, 1.71842098e+01, + 1.20789474e+02, 4.03684196e+01, 4.63157892e+00, 2.06315784e+01, + 4.63157883e+01, 1.02105265e+01, 3.23684216e+00, 5.97894745e+01, + 1.23473686e+02, 1.48947372e+01, 6.55263138e+00, 2.23684216e+01, + 2.74473686e+01, 5., 8.42105293e+00, 9.71842117e+01, + 1.04342102e+02, 8.47368431e+00, 7.60526323e+00, 1.84473686e+01, + 1.62631588e+01, 5.86842108e+00, 1.00263157e+01, 1.92105258e+00, + 1.87894745e+01, 2.10789471e+01, 1.81578946e+00, 1.98421059e+01, + 1.12894737e+02, 3.45789490e+01, 2.92105269e+00, 5.78947353e+00, + 1.88684216e+01, 5.57894754e+00, 3.34210515e+00, 8.36052628e+01, + 1.15578949e+02, 9.31578922e+00, 2.21052623e+00, 1.45263157e+01, + 2.33684216e+01, 4.57894754e+00, 9.34210491e+00, 9.86315765e+01, + 6.74736862e+01, 2.28947377e+00, 4.81578970e+00, 5.09473686e+01, + 3.25000000e+01, 5.42105246e+00, 1.37105265e+01, 4.55526314e+01, + 1.31052628e+01, 2.02631569e+00, 1.01052628e+01, 7.07894754e+00, + 6.47368431e+00, 3.15789485e+00, 2.13157892e+00, 1.63684216e+01, + 7.56315765e+01, 3.66578941e+01, 4.81578970e+00, 8.39473724e+00, + 1.02894735e+01, 5.92105246e+00, 8., 7.73421021e+01, + 9.23157883e+01, 1.74736843e+01, 1.55263162e+00, 4.60526323e+00, + 5.78947353e+00, 4.10526323e+00, 1.76315784e+01, 1.16552635e+02, + 5.56315804e+01, 5.26315784e+00, 9.47368443e-01, 7.15789461e+00, + 2.39473677e+00, 2.13157892e+00, 2.95789471e+01, 1.01736839e+02, + 1.43421049e+01, 1.36842108e+00, 5.38461566e-01, 6.00000024e-01, + 5.16923094e+00, 2.92307701e+01, 4.57384605e+01, 1.59692307e+01, + 3.04615378e+00, 7.69230783e-01, 1.33076925e+01, 1.26000004e+01, + 1.86000004e+01, 4.31230774e+01, 6.13846169e+01, 3.11692314e+01, + 1.32923079e+01, 6.38461542e+00, 4.97384605e+01, 2.88923073e+01, + 1.70615387e+01, 2.74615383e+01, 1.02615387e+02, 5.34769249e+01, + 1.14461536e+01, 1.38461542e+01, 6.96307678e+01, 2.45230770e+01, + 4.33846140e+00, 1.46307688e+01, 6.00923080e+01, 3.58923073e+01, + 7.69230747e+00, 2.30461540e+01, 8.46153855e-01, 1.67692304e+00, + 5.24615383e+00, 2.68153839e+01, 6.31692314e+01, 4.10307693e+01, + 8.04615402e+00, 1.07692313e+00, 1.50307693e+01, 1.67384624e+01, + 2.00923080e+01, 3.15692310e+01, 7.34461517e+01, 6.66923065e+01, + 3.13692303e+01, 9.29230785e+00, 5.34769249e+01, 4.98461533e+01, + 1.98307686e+01, 1.70923080e+01, 9.67538452e+01, 9.70769196e+01, + 2.83076916e+01, 1.52153845e+01, 7.43846130e+01, 7.17384644e+01, + 1.28615389e+01, 1.21692305e+01, 7.96307678e+01, 9.08615417e+01, + 9.30769253e+00, 1.28153849e+01, 8.76923084e-01, 1.69230771e+00, + 3.29230762e+00, 1.22615385e+01, 4.85846138e+01, 6.54307709e+01, + 1.50615387e+01, 1.53846157e+00, 6.84615374e+00, 8.44615364e+00, + 1.09846153e+01, 17., 6.05384598e+01, 9.48153839e+01, + 3.91692314e+01, 7.18461561e+00, 2.03999996e+01, 3.58923073e+01, + 1.49692307e+01, 15., 5.15999985e+01, 9.07538452e+01, + 3.64769249e+01, 1.19692307e+01, 23., 6.55692291e+01, + 1.58461542e+01, 6.21538448e+00, 4.50923080e+01, 1.13446152e+02, + 2.64307690e+01, 5.64615393e+00, 1.72307694e+00, 2.04615378e+00, + 3.01538467e+00, 5.36923075e+00, 2.10769234e+01, 4.24000015e+01, + 1.50923080e+01, 3.29230762e+00, 1.96923077e+00, 2.24615383e+00, + 4.10769224e+00, 7.53846169e+00, 3.56615372e+01, 9.79230804e+01, + 4.41692314e+01, 4.93846130e+00, 4.16923094e+00, 9.12307739e+00, + 6.36923075e+00, 6.21538448e+00, 1.93384609e+01, 8.23230743e+01, + 6.33230782e+01, 1.02153845e+01, 5.40000010e+00, 2.30615387e+01, + 7.23076916e+00, 3.29230762e+00, 8.87692261e+00, 7.84615402e+01, + 6.05846138e+01, 1.39846153e+01, 3.22580636e-02, 4.83870953e-02, + 2.09677413e-01, 2.19354844e+00, 1.03064518e+01, 4.04838705e+00, + 4.03225809e-01, 3.22580636e-02, 1.03225803e+00, 1.30645156e+00, + 2.37096763e+00, 1.99838715e+01, 8.52580643e+01, 3.65161285e+01, + 4.11290312e+00, 1.46774197e+00, 8.42419357e+01, 3.74354820e+01, + 5.16129017e+00, 2.06612911e+01, 6.45161285e+01, 3.91451607e+01, + 1.05645161e+01, 4.96774197e+00, 1.37612900e+02, 1.04112900e+02, + 3.56451607e+00, 7.32258081e+00, 1.22129036e+02, 8.37903214e+01, + 5.41935492e+00, 1.00161295e+01, 1.12903222e-01, 1.77419350e-01, + 2.25806445e-01, 1.64516127e+00, 1.07903223e+01, 5.77419376e+00, + 8.06451619e-01, 1.29032254e-01, 1.29032254e+00, 1.59677422e+00, + 2.98387098e+00, 1.34032259e+01, 8.89354858e+01, 6.51290359e+01, + 8.33870983e+00, 1.96774197e+00, 2.91612911e+01, 2.22580643e+01, + 6.54838705e+00, 1.60483875e+01, 7.57419357e+01, 7.06935501e+01, + 1.93387089e+01, 5.66129017e+00, 1.33709671e+02, 1.38580643e+02, + 7.08064508e+00, 8.46774197e+00, 8.02741928e+01, 8.53871002e+01, + 1.17903223e+01, 5.58064508e+00, 2.58064508e-01, 3.06451619e-01, + 4.03225809e-01, 1.08064520e+00, 6.35483885e+00, 6.03225803e+00, + 1.54838705e+00, 4.35483873e-01, 1.90322578e+00, 2.12903237e+00, + 2.56451607e+00, 7.87096786e+00, 7.10806427e+01, 7.41935501e+01, + 1.06451616e+01, 2.17741942e+00, 4.08064508e+00, 3.80645156e+00, + 4.90322590e+00, 9.04838753e+00, 7.95645142e+01, 9.47258072e+01, + 1.87741928e+01, 5.37096786e+00, 5.46612892e+01, 1.07048386e+02, + 8.06451607e+00, 8.01612949e+00, 3.52741928e+01, 5.46935501e+01, + 1.83548393e+01, 6.53225803e+00, 5.00000000e-01, 5.48387110e-01, + 1., 8.22580636e-01, 2.62903237e+00, 2.85483861e+00, + 1.03225803e+00, 5.64516127e-01, 3.54838705e+00, 3.41935492e+00, + 4.48387098e+00, 7.01612902e+00, 3.15806446e+01, 4.68387108e+01, + 9.83870983e+00, 3.32258058e+00, 2.30645156e+00, 2.20967746e+00, + 2.88709688e+00, 5.25806475e+00, 5.00806465e+01, 9.10967712e+01, + 1.76935482e+01, 3.64516139e+00, 5.87096786e+00, 1.44516125e+01, + 4.17741919e+00, 4.74193525e+00, 2.56935482e+01, 6.44193573e+01, + 1.95645161e+01, 5.16129017e+00, 1.04893618e+01, 2.69148941e+01, + 2.92765961e+01, 8., 3.91489363e+00, 2.36382980e+01, + 5.70212746e+00, 2.40425539e+00, 7.68085098e+00, 2.57659569e+01, + 5.15957451e+01, 2.71702137e+01, 4., 1.63829792e+00, + 1.14893615e+00, 1.38297868e+00, 1.74468088e+00, 1.58723402e+01, + 4.77021294e+01, 4.65744667e+01, 1.07872343e+01, 2.53191495e+00, + 9.14893627e-01, 5.10638297e-01, 7.02127635e-01, 6.29787254e+00, + 2.80638294e+01, 3.57872353e+01, 1.37872343e+01, 3.23404264e+00, + 2.97872329e+00, 3.42553186e+00, 4.29787254e+00, 7.09361725e+01, + 5.10212784e+01, 5.87234020e+00, 4.53191471e+00, 1.17531914e+02, + 8.44042587e+01, 2.23404264e+00, 3.85106373e+00, 2.35744686e+01, + 5.16170197e+01, 1.88510647e+01, 4.51063824e+00, 7.41276627e+01, + 1.11914894e+02, 3.34042549e+00, 2.36170220e+00, 1.13404255e+01, + 4.01489372e+01, 3.01914902e+01, 7., 1.95531921e+01, + 1.14744682e+02, 1.91063824e+01, 1.40425527e+00, 3.97872329e+00, + 2.96170216e+01, 3.36170197e+01, 7.61702108e+00, 6.31914902e+00, + 1.11425529e+02, 6.53404236e+01, 2.40425539e+00, 1.04659576e+02, + 9.82553177e+01, 2.63829780e+00, 3.34042549e+00, 4.42765961e+01, + 4.59361687e+01, 6.34042549e+00, 2.95744681e+00, 7.77234039e+01, + 1.25702126e+02, 8.14893627e+00, 2.74468088e+00, 5.81702118e+01, + 1.10702126e+02, 7.55319166e+00, 2.25531912e+00, 2.17872334e+01, + 1.26702126e+02, 2.99574471e+01, 2.53191495e+00, 23., + 1.24723404e+02, 2.52978725e+01, 2.10638309e+00, 3.40425539e+00, + 1.13234039e+02, 6.85957413e+01, 2.19148946e+00, 5.02127647e+00, + 9.99787216e+01, 4.34468079e+01, 1.21276593e+00, 3.06382990e+00, + 4.80851078e+00, 1.61702132e+00, 3.89361691e+00, 1.92978725e+01, + 2.00212765e+01, 7.78723383e+00, 2.85106373e+00, 7.89361715e+00, + 2.58297863e+01, 2.53191495e+00, 2.87234044e+00, 1.45957451e+01, + 2.13191490e+01, 1.36170216e+01, 3.19148946e+00, 4.68085098e+00, + 3.85106392e+01, 5.97872353e+00, 2.76595736e+00, 9.08510685e+00, + 1.97659569e+01, 1.35531912e+01, 3.74468088e+00, 1.27659571e+00, + 1.70638294e+01, 6.08510637e+00, 2.04255319e+00, 5.42553186e+00, + 1.82553196e+01, 1.22127657e+01, 4.84848499e-01, 5.00000000e-01, + 8.03030312e-01, 3.15151525e+00, 1.22575760e+01, 3.66666675e+00, + 1.72727275e+00, 8.78787875e-01, 2.24242425e+00, 3.01515150e+00, + 3.69696975e+00, 1.45606060e+01, 4.49848480e+01, 2.17121220e+01, + 4.68181801e+00, 2.39393950e+00, 1.35121216e+02, 3.50454559e+01, + 3.89393950e+00, 1.07121210e+01, 5.40909081e+01, 2.52272720e+01, + 4.92424250e+00, 1.73484840e+01, 1.34121216e+02, 3.30151520e+01, + 2.93939400e+00, 1.90909100e+01, 1.29787872e+02, 4.01818199e+01, + 3.90909100e+00, 2.66212120e+01, 5.75757563e-01, 7.12121189e-01, + 8.93939376e-01, 3.12121201e+00, 1.63181820e+01, 4.93939400e+00, + 1.45454550e+00, 1.01515150e+00, 2.69696975e+00, 3.66666675e+00, + 4.53030300e+00, 1.08787880e+01, 4.66212120e+01, 2.96666660e+01, + 7.30303049e+00, 3.84848475e+00, 1.25833336e+02, 6.71060638e+01, + 4.72727251e+00, 7.56060600e+00, 4.76363640e+01, 4.06060600e+01, + 1.01212120e+01, 8.15151501e+00, 1.44409088e+02, 1.09590912e+02, + 5.34848499e+00, 9.66666698e+00, 1.27803032e+02, 9.18333359e+01, + 5.22727251e+00, 1.00151520e+01, 4.69696969e-01, 5.15151501e-01, + 8.63636374e-01, 2.06060600e+00, 1.28333330e+01, 7.39393950e+00, + 2.09090900e+00, 8.78787875e-01, 2.50000000e+00, 3.59090900e+00, + 4.24242401e+00, 6.81818199e+00, 3.50757561e+01, 3.55303040e+01, + 1.00303030e+01, 3.77272725e+00, 4.59848480e+01, 4.22121201e+01, + 6.57575750e+00, 8.31818199e+00, 3.51515160e+01, 4.54242439e+01, + 1.34848480e+01, 6., 1.26045456e+02, 1.38954544e+02, + 1.68181820e+01, 9.12121201e+00, 6.64393921e+01, 8.13333359e+01, + 8.04545498e+00, 4.33333349e+00, 4.69696969e-01, 3.48484844e-01, + 4.39393938e-01, 9.39393938e-01, 6.51515150e+00, 7.30303049e+00, + 1.95454550e+00, 8.03030312e-01, 1.59090912e+00, 1.69696975e+00, + 2.22727275e+00, 3.60606050e+00, 2.25454540e+01, 3.31060600e+01, + 9.28787899e+00, 2.71212125e+00, 4.46969700e+00, 6.07575750e+00, + 4.54545450e+00, 4.27272749e+00, 2.25303040e+01, 3.84090919e+01, + 1.43333330e+01, 4.39393950e+00, 3.14696960e+01, 8.98787842e+01, + 9.33333302e+00, 3.74242425e+00, 1.58939390e+01, 3.03030300e+01, + 1.10757580e+01, 3.37878799e+00, 1.29750004e+01, 3.01250005e+00, + 2.59999990e+00, 3.53749990e+00, 4.65000010e+00, 7.80000019e+00, + 1.12375002e+01, 8.18750000e+00, 8.35000038e+00, 3.52500010e+00, + 2.95000005e+00, 3.96250010e+00, 5.67500019e+00, 9.37500000e+00, + 1.33125000e+01, 9.28750038e+00, 4.66249990e+00, 3.42499995e+00, + 3.47499990e+00, 4.33750010e+00, 6.62500000e+00, 9.72500038e+00, + 1.19624996e+01, 6.94999981e+00, 3.70000005e+00, 2.61249995e+00, + 2.98749995e+00, 5.12500000e+00, 6.36250019e+00, 7.33750010e+00, + 7.62500000e+00, 4.87500000e+00, 1.42250004e+01, 7.88749981e+00, + 7.27500010e+00, 6.67500019e+00, 8.08749962e+00, 1.28374996e+01, + 1.97124996e+01, 1.49624996e+01, 9.87500000e+00, 8.86250019e+00, + 1.32375002e+01, 1.31250000e+01, 1.15625000e+01, 1.35124998e+01, + 2.00874996e+01, 1.54125004e+01, 7.96250010e+00, 6.96250010e+00, + 1.68374996e+01, 1.90125008e+01, 1.40500002e+01, 1.33750000e+01, + 1.78500004e+01, 1.35749998e+01, 7.07499981e+00, 5.01249981e+00, + 17., 2.76499996e+01, 1.25375004e+01, 1.05625000e+01, + 1.98750000e+01, 2.55375004e+01, 7.33750010e+00, 7.42500019e+00, + 2.52749996e+01, 2.24874992e+01, 8.67500019e+00, 1.39250002e+01, + 4.13624992e+01, 2.18500004e+01, 9.51249981e+00, 1.03999996e+01, + 4.81375008e+01, 3.58125000e+01, 8.46249962e+00, 1.83875008e+01, + 7.45875015e+01, 4.81875000e+01, 1.05874996e+01, 8.12500000e+00, + 4.99625015e+01, 4.66375008e+01, 9.98750019e+00, 2.49874992e+01, + 1.11074997e+02, 9.52375031e+01, 7.84999990e+00, 4.26249981e+00, + 3.35499992e+01, 4.31500015e+01, 7.01249981e+00, 1.32875004e+01, + 1.23599998e+02, 1.24949997e+02, 6.71250010e+00, 7.21250010e+00, + 3.35499992e+01, 2.27374992e+01, 4.88749981e+00, 1.59250002e+01, + 1.16562500e+02, 8.82500000e+01, 1.07375002e+01, 1.20874996e+01, + 5.21124992e+01, 3.52999992e+01, 5.97499990e+00, 3.40875015e+01, + 1.31550003e+02, 1.02487503e+02, 1.50124998e+01, 1.57624998e+01, + 7.86250000e+01, 7.10749969e+01, 8.50000000e+00, 2.51875000e+01, + 1.23062500e+02, 1.10500000e+02, 1.01625004e+01, 1.21250000e+01, + 1.01449997e+02, 1.04324997e+02, 1.11875000e+01, 1.06750002e+01, + 7.75500031e+01, 8.07500000e+01, 4.72549009e+00, 2.39215684e+00, + 1.05294113e+01, 1.92745094e+01, 8.37254906e+00, 3.07843137e+00, + 4.37254906e+00, 3.78431368e+00, 4.29411745e+00, 2.84313726e+00, + 1.29803925e+01, 1.74705887e+01, 6.58823538e+00, 3.23529410e+00, + 2.30196075e+01, 5.44117661e+01, 2.56862736e+00, 2.39215684e+00, + 3.09411774e+01, 3.33333321e+01, 3.78431368e+00, 3.62745094e+00, + 8.94901962e+01, 9.61372528e+01, 1.19607842e+00, 2.49019599e+00, + 7.24901962e+01, 3.47450981e+01, 2.11764717e+00, 7.17647076e+00, + 1.05862747e+02, 4.20588226e+01, 1.57058821e+01, 2.49019599e+00, + 8.96078396e+00, 2.46666660e+01, 9.70588207e+00, 2.45098042e+00, + 7.13725471e+00, 8.58823547e+01, 1.31372547e+01, 2.17647052e+00, + 3.43921585e+01, 1.22019608e+02, 1.09607840e+01, 2.37254906e+00, + 4.64901962e+01, 1.27843140e+02, 6.54901981e+00, 3.37254906e+00, + 1.05333336e+02, 1.27294121e+02, 5.11764717e+00, 3.78431368e+00, + 5.15098038e+01, 7.51568604e+01, 5.41176462e+00, 3.78431368e+00, + 9.20980377e+01, 5.40588226e+01, 4.76470566e+00, 1.29215689e+01, + 3.46666679e+01, 1.74509811e+01, 6.36274529e+01, 1.98039210e+00, + 5.50980377e+00, 9.26470566e+01, 3.30196075e+01, 1.86274505e+00, + 4.43137264e+00, 1.23960785e+02, 1.85490189e+01, 4.56862736e+00, + 1.90392151e+01, 1.27196075e+02, 3.84509811e+01, 2.78431368e+00, + 13., 6.75294113e+01, 1.87254906e+01, 6.17647076e+00, + 1.35294113e+01, 3.80196075e+01, 3.50980401e+00, 5.60784292e+00, + 3.13725491e+01, 3.77647057e+01, 1.06078434e+01, 2.17647052e+00, + 1.66666663e+00, 1.43137252e+00, 2.88235283e+00, 1.59215689e+01, + 3.84901962e+01, 2.78039207e+01, 5.94117661e+01, 1.96078432e+00, + 1.90196073e+00, 9.34509811e+01, 8.81372528e+01, 2.15686274e+00, + 2.72549009e+00, 5.35098038e+01, 2.27450981e+01, 7.31372547e+00, + 4.33333349e+00, 3.94313736e+01, 2.51568623e+01, 2.90196085e+00, + 1.20784311e+01, 3.10392151e+01, 3.03921566e+01, 6.86274529e+00, + 1.64705884e+00, 5.49019635e-01, 7.25490212e-01, 4.21568632e+00, + 2.44117641e+01, 4.58431358e+01, 1.49215689e+01, 5.94117641e+00, + 4.21568632e+00, 1.76470590e+00, 2.66666675e+00, 1.12941179e+01, + 4.65490189e+01, 4.62352943e+01, 2.87878782e-01, 4.84848499e-01, + 1.43939400e+00, 3.03030300e+00, 6.54545450e+00, 3.34848475e+00, + 1.04545450e+00, 4.39393938e-01, 1.65151513e+00, 2.07575750e+00, + 6.93939400e+00, 4.19090919e+01, 7.20909119e+01, 2.07575760e+01, + 4.27272749e+00, 2.86363626e+00, 5.51515150e+00, 4.33333349e+00, + 1.23636360e+01, 8.64545441e+01, 9.13333359e+01, 1.96666660e+01, + 5.28787899e+00, 6.90909100e+00, 1.22878790e+01, 4.77272749e+00, + 1.73484840e+01, 1.12863640e+02, 5.43484840e+01, 7.46969700e+00, + 7.45454550e+00, 1.70606060e+01, 2.42424250e-01, 3.48484844e-01, + 1.07575762e+00, 3.98484850e+00, 1.04848480e+01, 6.30303049e+00, + 1.31818187e+00, 5.15151501e-01, 1., 1.65151513e+00, + 4.56060600e+00, 4.21515160e+01, 1.10909088e+02, 4.27727280e+01, + 6.16666651e+00, 2.07575750e+00, 9.66666698e+00, 4.45454550e+00, + 5.50000000e+00, 8.45757599e+01, 1.29318176e+02, 3.58181801e+01, + 9.83333302e+00, 8.66666698e+00, 2.18030300e+01, 8.65151501e+00, + 8.19696999e+00, 1.06424240e+02, 1.19393936e+02, 9.84848499e+00, + 8.75757599e+00, 1.72272720e+01, 3.33333343e-01, 5.45454562e-01, + 1.50000000e+00, 3.57575750e+00, 9.65151501e+00, 5.89393950e+00, + 2.03030300e+00, 6.21212125e-01, 1.42424238e+00, 1.87878788e+00, + 4.62121201e+00, 2.34393940e+01, 1.06484848e+02, 5.99696960e+01, + 7.25757599e+00, 2.62121201e+00, 1.04696970e+01, 3.98484850e+00, + 3.06060600e+00, 2.77272720e+01, 1.30393936e+02, 8.38333359e+01, + 9.66666698e+00, 6.45454550e+00, 2.24545460e+01, 1.25454550e+01, + 5.72727251e+00, 3.54696960e+01, 1.22787880e+02, 3.92727280e+01, + 6.28787899e+00, 9.81818199e+00, 6.81818187e-01, 6.66666687e-01, + 1.33333337e+00, 1.72727275e+00, 4.63636351e+00, 4.89393950e+00, + 2.69696975e+00, 1.22727275e+00, 2.92424250e+00, 2.51515150e+00, + 4.01515150e+00, 8.40909100e+00, 6.20757561e+01, 5.50757561e+01, + 1.08030300e+01, 4.80303049e+00, 3.86363626e+00, 2.66666675e+00, + 2.33333325e+00, 5.10606050e+00, 1.09106064e+02, 1.17257576e+02, + 1.44848480e+01, 3.87878799e+00, 9.53030300e+00, 9.42424202e+00, + 3.27272725e+00, 4.69696951e+00, 1.09500000e+02, 1.16787880e+02, + 9.65151501e+00, 3.80303025e+00, 1.13333330e+01, 1.98947372e+01, + 2.87017536e+01, 1.85438595e+01, 1.72456131e+01, 3.15789471e+01, + 3.60877190e+01, 1.54210529e+01, 2.94035091e+01, 4.18245621e+01, + 1.13157892e+01, 6.64912271e+00, 1.66666660e+01, 2.46491222e+01, + 1.21403513e+01, 4.85964918e+00, 1.30631577e+02, 1.10017548e+02, + 3.17543864e+00, 1.31578946e+00, 3.49122810e+00, 4.33333349e+00, + 2.03508782e+00, 6.54385948e+00, 7.04912262e+01, 4.45789490e+01, + 5.56140327e+00, 2.78947377e+00, 2.92982459e+00, 3., + 4.10526323e+00, 7.15789461e+00, 1.24385967e+01, 1.44736843e+01, + 2.51754379e+01, 2.77017536e+01, 2.35263157e+01, 2.55263157e+01, + 3.60350876e+01, 2.53508778e+01, 3.37894745e+01, 1.15614033e+01, + 7.85964918e+00, 1.54561405e+01, 2.55087719e+01, 2.45263157e+01, + 1.89649124e+01, 2.82982464e+01, 1.35631577e+02, 2.78596497e+01, + 2.19298244e+00, 2.73684216e+00, 5.17543840e+00, 5.82456160e+00, + 4.08771944e+00, 7.66666641e+01, 1.02947365e+02, 3.43859634e+01, + 5.52631569e+00, 1.94736838e+00, 2.56140351e+00, 2.87719297e+00, + 4.24561405e+00, 2.58245621e+01, 1.84210529e+01, 1.76491222e+01, + 3.96491241e+01, 39., 2.14035091e+01, 1.83684216e+01, + 5.03859634e+01, 5.07719307e+01, 2.78245621e+01, 3.50877190e+00, + 1.18245611e+01, 3.45263176e+01, 2.48771935e+01, 1.65263157e+01, + 4.51052628e+01, 1.09789474e+02, 1.18350876e+02, 8.73684216e+00, + 3.92982459e+00, 1.36315794e+01, 9.47368431e+00, 5.33333349e+00, + 1.33157892e+01, 1.32771927e+02, 6.54035110e+01, 2.46140347e+01, + 6.19298267e+00, 4.71929836e+00, 3.15789485e+00, 2.77192974e+00, + 5.38596487e+00, 3.61929817e+01, 8.42105293e+00, 1.01578951e+01, + 3.01052628e+01, 1.86491222e+01, 4.08771944e+00, 1.04210529e+01, + 1.10982452e+02, 6.17894745e+01, 1.58771935e+01, 6.66666651e+00, + 2.32105255e+01, 3.77894745e+01, 6.77192974e+00, 5.33333349e+00, + 8.12456131e+01, 1.28298248e+02, 4.36140366e+01, 1.26315794e+01, + 9.45614052e+00, 2.24385967e+01, 6.45614052e+00, 4.96491241e+00, + 19., 9.73859634e+01, 3.16140347e+01, 1.43859653e+01, + 4.12280703e+00, 3.85964918e+00, 3.17543864e+00, 3.35087729e+00, + 5.82456160e+00, 2.06666660e+01, 4.32000017e+00, 3.13333344e+00, + 5.05333328e+00, 1.05866671e+01, 5.77333355e+00, 4.05333328e+00, + 2.77333331e+00, 2.11999989e+00, 5.82666683e+00, 5.92000008e+00, + 1.26666670e+01, 2.44933338e+01, 1.30533333e+01, 7.46666670e+00, + 6.98666668e+00, 3.27999997e+00, 3.51999998e+00, 4.29333353e+00, + 1.83466663e+01, 4.03066673e+01, 1.82533340e+01, 6.89333344e+00, + 7.96000004e+00, 8.82666683e+00, 3.50666666e+00, 2.90666676e+00, + 1.65466671e+01, 3.15599995e+01, 1.22266665e+01, 8.26666641e+00, + 2.95466671e+01, 68., 4.13333321e+00, 3.07999992e+00, + 6.14666653e+00, 1.62266674e+01, 1.08666668e+01, 4.42666674e+00, + 3.31999993e+00, 2.13333344e+00, 6., 4.89333344e+00, + 1.49200001e+01, 4.29599991e+01, 2.66266670e+01, 6.80000019e+00, + 4.49333334e+00, 7.15999985e+00, 2.11733341e+01, 3.49333334e+00, + 1.53199997e+01, 6.18133316e+01, 2.38933334e+01, 4.62666655e+00, + 1.38133335e+01, 1.27133331e+02, 1.12133331e+01, 2.11999989e+00, + 4.21333351e+01, 1.28080002e+02, 1.10400000e+01, 3.70666671e+00, + 5.40933342e+01, 1.41826660e+02, 2.34666657e+00, 2.11999989e+00, + 5.78666687e+00, 1.99466667e+01, 1.65333328e+01, 5.23999977e+00, + 3.86666656e+00, 1.91999996e+00, 3.80666656e+01, 4.28000021e+00, + 1.08000002e+01, 3.93333321e+01, 3.22266655e+01, 7.46666670e+00, + 4.23999977e+00, 6.20933342e+01, 8.73066635e+01, 4.41333342e+00, + 1.17466669e+01, 1.32880005e+02, 6.44933319e+01, 3.75999999e+00, + 1.00799999e+01, 1.40573334e+02, 1.66800003e+01, 6.29333353e+00, + 2.71599998e+01, 1.35479996e+02, 3.01733341e+01, 3.41333342e+00, + 1.48933334e+01, 6.81333313e+01, 2.38666677e+00, 1.54666662e+00, + 4.15999985e+00, 1.68133335e+01, 1.74266663e+01, 4.25333357e+00, + 1.36000001e+00, 1.30666661e+00, 1.09053337e+02, 4.94666672e+00, + 5.57333326e+00, 3.78533325e+01, 4.28133316e+01, 5.26666689e+00, + 2.38666677e+00, 8.28133316e+01, 7.69066696e+01, 8.78666687e+00, + 4.97333336e+00, 1.29679993e+02, 1.24546669e+02, 3.94666672e+00, + 4.76000023e+00, 7.64266663e+01, 2.36933327e+01, 8.76000023e+00, + 6.92000008e+00, 3.29333344e+01, 1.68533325e+01, 4.22666645e+00, + 1.30533333e+01, 2.69200001e+01, 3.56756759e+00, 1.27702703e+01, + 5.91891909e+00, 6.74324322e+00, 2.93783779e+01, 4.41621628e+01, + 1.81081085e+01, 5.17567587e+00, 1.29324322e+01, 1.31689194e+02, + 4.60810814e+01, 6.48648643e+00, 2.06756763e+01, 5.98513527e+01, + 2.73513508e+01, 7.60810804e+00, 1.29729729e+01, 1.45445953e+02, + 1.23594597e+02, 3.33783793e+00, 6.45945930e+00, 1.14229729e+02, + 7.94594574e+01, 7.86486483e+00, 6.04054070e+00, 1.23648651e+02, + 1.21513512e+02, 3.97297287e+00, 3.40540552e+00, 1.17364868e+02, + 1.31472977e+02, 5.12162161e+00, 3.02702713e+00, 2.22972965e+00, + 3.50000000e+00, 6.86486483e+00, 2.67297306e+01, 5.36081085e+01, + 2.45270271e+01, 6.85135126e+00, 4.37837839e+00, 8.75675678e+00, + 7.01351357e+00, 6.89189196e+00, 3.13783779e+01, 7.29729767e+01, + 4.01351357e+01, 9.41891861e+00, 6.68918896e+00, 7.47972946e+01, + 5.84729729e+01, 6.05405426e+00, 1.65270271e+01, 5.11891899e+01, + 4.79054070e+01, 1.51891890e+01, 5.75675678e+00, 1.06135132e+02, + 1.35729736e+02, 5.28378391e+00, 7.43243265e+00, 3.14324322e+01, + 4.58918915e+01, 1.34864864e+01, 2.77027035e+00, 2.21621633e+00, + 2.98648643e+00, 4.75675678e+00, 1.48108110e+01, 4.19594612e+01, + 2.20270271e+01, 5.48648643e+00, 3.25675678e+00, 1.72972977e+00, + 2.05405402e+00, 4.44594574e+00, 2.06351357e+01, 5.77837830e+01, + 3.67297287e+01, 7.90540552e+00, 4.95945930e+00, 2.39189196e+00, + 2.21621633e+00, 3.50000000e+00, 1.36351347e+01, 4.76486473e+01, + 4.43918915e+01, 1.37972975e+01, 4.39189196e+00, 3.29729724e+00, + 3.67567563e+00, 3.24324322e+00, 8.32432461e+00, 2.78513508e+01, + 3.93918915e+01, 1.56621618e+01, 9.05405402e-01, 8.91891897e-01, + 8.78378391e-01, 1.09459460e+00, 2.22972965e+00, 6.63513517e+00, + 4.64864874e+00, 1.31081080e+00, 1.06756759e+00, 6.21621609e-01, + 5.54054081e-01, 9.32432413e-01, 3.45945954e+00, 1.30810814e+01, + 8.81081104e+00, 2.05405402e+00, 1., 4.86486495e-01, + 4.72972959e-01, 6.08108103e-01, 2.37837839e+00, 1.28648653e+01, + 1.14729729e+01, 3.39189196e+00, 9.59459484e-01, 3.64864856e-01, + 3.91891897e-01, 7.02702701e-01, 1.72972977e+00, 7.66216230e+00, + 1.01621618e+01, 3.60810804e+00, 2.47826076e+00, 1.90217388e+00, + 2.43478251e+00, 2.23913050e+00, 2.02173924e+00, 3.42391300e+00, + 5.76086950e+00, 3.72826076e+00, 3.47934799e+01, 2.25000000e+01, + 2.22500000e+01, 2.42826080e+01, 2.82500000e+01, 3.55760880e+01, + 5.61521721e+01, 5.19347839e+01, 4.46304359e+01, 2.94347820e+01, + 2.36739140e+01, 2.93152180e+01, 4.16195641e+01, 5.46413040e+01, + 7.60543442e+01, 6.97826080e+01, 3.60652161e+01, 2.85326080e+01, + 1.97717400e+01, 2.49021740e+01, 5.49239120e+01, 6.95652161e+01, + 6.19347839e+01, 4.97934799e+01, 3.47826076e+00, 2.59782600e+00, + 3.73913050e+00, 3.46739125e+00, 2.56521749e+00, 4.29347849e+00, + 7.96739149e+00, 5.02173901e+00, 4.41739120e+01, 3.09891300e+01, + 3.20543480e+01, 3.06413040e+01, 3.48695641e+01, 4.86195641e+01, + 7.20217361e+01, 6.37717400e+01, 5.78913040e+01, 4.31413040e+01, + 3.88478279e+01, 4.03913040e+01, 5.01739120e+01, 6.14565201e+01, + 8.61413040e+01, 7.97391281e+01, 4.66630440e+01, 3.24130440e+01, + 2.61195660e+01, 3.26413040e+01, 5.13260880e+01, 6.44565201e+01, + 7.18043442e+01, 6.32282600e+01, 4.27173901e+00, 3.42391300e+00, + 5.07608700e+00, 3.79347825e+00, 2.82608700e+00, 4.48913050e+00, + 7.38043499e+00, 5.90217400e+00, 4.42282600e+01, 3.57173920e+01, + 4.07391319e+01, 3.53804359e+01, 3.50108681e+01, 5.02391319e+01, + 6.81847839e+01, 6.02065201e+01, 5.93804359e+01, 4.45760880e+01, + 4.37934799e+01, 4.26956520e+01, 4.80978279e+01, 6.17391319e+01, + 8.38913040e+01, 7.98804321e+01, 4.82391319e+01, 3.53043480e+01, + 3.37826080e+01, 33., 4.41521721e+01, 5.42717400e+01, + 6.67282639e+01, 6.56413040e+01, 3.34782600e+00, 3.05434775e+00, + 3.39130425e+00, 2.53260875e+00, 2.21739125e+00, 3.96739125e+00, + 5.54347849e+00, 3.86956525e+00, 3.54347839e+01, 3.15652180e+01, + 2.99239140e+01, 2.36195660e+01, 2.48478260e+01, 3.81195641e+01, + 4.81304359e+01, 4.14239120e+01, 4.25543480e+01, 3.67282600e+01, + 3.65869560e+01, 3.37500000e+01, 3.04673920e+01, 4.24130440e+01, + 6.28695641e+01, 6.04347839e+01, 3.30760880e+01, 2.51739140e+01, + 3.27391319e+01, 3.82934799e+01, 3.36956520e+01, 3.67608681e+01, + 4.94456520e+01, 4.93478279e+01, 1.45735292e+01, 1.20161766e+02, + 1.89852943e+01, 1.58823526e+00, 1.34411764e+01, 1.15294121e+02, + 1.84705887e+01, 1.48529410e+00, 1.32205887e+01, 3.25441170e+01, + 8.97058868e+00, 3.60294127e+00, 3.14558830e+01, 9.96176453e+01, + 5.75000000e+00, 3.23529410e+00, 1.89411774e+01, 2.66323528e+01, + 1.04411764e+01, 3.47058821e+00, 5.67647076e+00, 4.77941179e+00, + 4.41176462e+00, 4.66176462e+00, 7.77941179e+00, 1.03970585e+01, + 4.02941179e+00, 1.58823526e+00, 2.67647052e+00, 5.88235319e-01, + 1.42647064e+00, 2.19117641e+00, 5.53676453e+01, 1.25176468e+02, + 7.17647076e+00, 3.17647052e+00, 2.37941170e+01, 4.67058830e+01, + 8.07352924e+00, 4.16176462e+00, 7.72352905e+01, 1.13764709e+02, + 4.97058821e+00, 3.30882359e+00, 1.03191177e+02, 1.27970589e+02, + 5.23529434e+00, 2.89705873e+00, 2.47647057e+01, 2.52647057e+01, + 8.45588207e+00, 3.54411769e+00, 3.63970604e+01, 4.08088226e+01, + 7.07352924e+00, 6.47058821e+00, 1.28529415e+01, 1.33088236e+01, + 4.07352924e+00, 1.50000000e+00, 2.54411769e+00, 9.85294104e-01, + 2.22058821e+00, 3.04411769e+00, 3.51911774e+01, 3.39411774e+01, + 1., 9.05882359e+00, 3.38676453e+01, 2.79117641e+01, + 1.06323528e+01, 5.02941179e+00, 1.32970581e+02, 1.16647057e+02, + 2.39705873e+00, 4.88235283e+00, 1.10029411e+02, 8.27500000e+01, + 5.08823538e+00, 5.57352924e+00, 3.12794113e+01, 2.07500000e+01, + 4.92647076e+00, 4.23529434e+00, 110., 6.43235321e+01, + 5.91176462e+00, 7.35294104e+00, 1.51617651e+01, 1.04852943e+01, + 2.66176462e+00, 1.13235295e+00, 2.08823538e+00, 1.63235295e+00, + 2.97058821e+00, 4.26470566e+00, 1.26176472e+01, 2.92647052e+00, + 1.73529410e+00, 17., 3.22205887e+01, 2.11029415e+01, + 6.36764717e+00, 4.07352924e+00, 1.31808823e+02, 3.76911774e+01, + 1.64705884e+00, 1.24558821e+01, 9.22500000e+01, 1.97794113e+01, + 2.72058821e+00, 1.85441170e+01, 4.57941170e+01, 1.38970585e+01, + 2.79411769e+00, 1.15588236e+01, 1.23955879e+02, 2.59705887e+01, + 2.27941179e+00, 8.02941132e+00, 13., 6.77941179e+00, + 1.69117641e+00, 9.85294104e-01, 1.41176474e+00, 9.70588207e-01, + 1.19117641e+00, 4.58823538e+00, 2.25714283e+01, 2.42857151e+01, + 2.11904755e+01, 5.48571434e+01, 3.04761906e+01, 1.95714283e+01, + 7.76190472e+00, 1.48095236e+01, 1.29523811e+01, 1.10952377e+01, + 3.80476189e+01, 1.13666664e+02, 2.72857151e+01, 4.71428585e+00, + 7.04761887e+00, 2.83809528e+01, 2.04761910e+00, 5.38095236e+00, + 8.03809509e+01, 8.69523773e+01, 8.52380943e+00, 4.04761887e+00, + 8.33333302e+00, 1.02380953e+01, 9.04761910e-01, 2.28095245e+01, + 8.11428604e+01, 1.97142849e+01, 4.04761887e+00, 4.80952358e+00, + 3.52380943e+00, 1.33333337e+00, 2.52857151e+01, 1.23809528e+01, + 1.02857141e+01, 8.68571396e+01, 8.62857132e+01, 1.93333340e+01, + 1.37142859e+01, 2.36666660e+01, 2.28571434e+01, 4.52380943e+00, + 1.27142859e+01, 1.08809525e+02, 7.30952377e+01, 7.33333349e+00, + 2.52857151e+01, 5.79047623e+01, 1.42857141e+01, 6., + 2.77142849e+01, 6.11428566e+01, 3.98095245e+01, 3.63809509e+01, + 65., 5.21428566e+01, 3.23809528e+00, 9.61904716e+00, + 1.92380943e+01, 1.56666670e+01, 2.58571434e+01, 2.61428566e+01, + 1.75714283e+01, 5.52380943e+00, 3.09523811e+01, 8.90476227e+00, + 2.52380943e+00, 3.22380943e+01, 1.17285713e+02, 3.18571434e+01, + 4.66666651e+00, 1.22380953e+01, 7.59047623e+01, 2.98571434e+01, + 1.95238094e+01, 6.39523811e+01, 1.00047623e+02, 1.86666660e+01, + 1.77142849e+01, 6.79523773e+01, 35., 1.86666660e+01, + 3.02857151e+01, 7.94285736e+01, 7.33333359e+01, 2.51428566e+01, + 2.68571434e+01, 43., 2.03333340e+01, 7.19047642e+00, + 4.76190472e+00, 1.91428566e+01, 42., 2.85714283e+01, + 1.88571434e+01, 2.34761906e+01, 1.47142859e+01, 8.71428585e+00, + 1.57142854e+00, 2.80952382e+00, 9.53333359e+01, 8.57619019e+01, + 9.52380943e+00, 3.33333325e+00, 2.72380943e+01, 2.85238094e+01, + 1.56190472e+01, 1.68571434e+01, 74., 7.66666641e+01, + 3.61904764e+00, 4.09523821e+00, 1.53809528e+01, 2.18095245e+01, + 2.05238094e+01, 2.94285717e+01, 2.55238094e+01, 1.48571424e+01, + 5.52380943e+00, 9.57142830e+00, 2.91904755e+01, 2.09523811e+01, + 2.67619057e+01, 3.34761887e+01, 25., 1.19523811e+01, + 2.15238094e+01, 4.30476189e+01, 9.20405426e+01, 8.67837830e+01, + 1.08513517e+01, 9.45945930e+00, 1.89864864e+01, 1.83648643e+01, + 7.56756735e+00, 9.70270252e+00, 1.13094597e+02, 8.54864883e+01, + 1.52567568e+01, 6.67567587e+00, 9.33783817e+00, 1.07567568e+01, + 9.55405426e+00, 2.81486492e+01, 6.55405426e+01, 4.68918915e+01, + 1.02432432e+01, 2.51351357e+00, 1.36486483e+00, 2.21621633e+00, + 6.72972965e+00, 2.68378372e+01, 4.02702713e+00, 2.85135126e+00, + 1.14864862e+00, 2.43243247e-01, 5.40540554e-02, 1.75675675e-01, + 5.54054081e-01, 2.21621633e+00, 1.21594597e+02, 5.09864883e+01, + 1.05540543e+01, 1.06486483e+01, 3.22702713e+01, 2.01891899e+01, + 9.59459496e+00, 3.43648643e+01, 1.34864868e+02, 6.02972984e+01, + 1.31756754e+01, 8.48648643e+00, 1.25540543e+01, 1.09054050e+01, + 1.22432432e+01, 5.87027016e+01, 9.63513489e+01, 4.55675659e+01, + 8.21621609e+00, 2.62162161e+00, 1.75675678e+00, 2.08108115e+00, + 8.29729748e+00, 4.57027016e+01, 6.08108091e+00, 3.75675678e+00, + 8.24324310e-01, 2.70270258e-01, 1.62162155e-01, 1.62162155e-01, + 6.75675690e-01, 3.17567563e+00, 1.22729729e+02, 1.77837830e+01, + 7.41891909e+00, 1.35270271e+01, 2.81891899e+01, 1.08648653e+01, + 1.18378382e+01, 1.02972977e+02, 1.26175674e+02, 2.73918915e+01, + 5.89189196e+00, 7.02702713e+00, 1.01621618e+01, 8.16216183e+00, + 1.90270271e+01, 1.09810814e+02, 8.23243256e+01, 2.66351357e+01, + 4.51351357e+00, 2.55405402e+00, 2.20270276e+00, 2.87837839e+00, + 1.15675678e+01, 6.20270271e+01, 4.64864874e+00, 2.43243241e+00, + 7.56756783e-01, 3.64864856e-01, 3.91891897e-01, 3.78378391e-01, + 1., 3.36486483e+00, 8.09459457e+01, 5.56756735e+00, + 4.25675678e+00, 1.27432432e+01, 9.41891861e+00, 5.51351357e+00, + 2.08918915e+01, 1.25770271e+02, 8.03243256e+01, 1.20945950e+01, + 4.35135126e+00, 4.89189196e+00, 4.33783770e+00, 6.29729748e+00, + 2.28783779e+01, 1.04891891e+02, 4.20135117e+01, 1.20135136e+01, + 5.43243265e+00, 3.22972965e+00, 2.81081080e+00, 5.31081104e+00, + 1.28243246e+01, 4.34729729e+01, 2.13513517e+00, 1.01351357e+00, + 8.51351380e-01, 4.05405402e-01, 3.24324310e-01, 4.05405402e-01, + 8.37837815e-01, 1.98648643e+00, 1.04125004e+01, 3.50999985e+01, + 1.67500000e+01, 8.81250000e+00, 1.65125008e+01, 8.37125015e+01, + 2.97124996e+01, 7.46250010e+00, 2.15750008e+01, 1.05062500e+02, + 2.70499992e+01, 7.06250000e+00, 2.76250000e+01, 1.17500000e+02, + 3.24124985e+01, 8.06250000e+00, 2.35750008e+01, 1.09925003e+02, + 2.87374992e+01, 8.05000019e+00, 1.55124998e+01, 8.43874969e+01, + 2.02000008e+01, 6.57499981e+00, 2.04624996e+01, 7.86999969e+01, + 1.93125000e+01, 8.64999962e+00, 1.69375000e+01, 5.50625000e+01, + 1.58249998e+01, 8.71249962e+00, 1.62250004e+01, 1.67999992e+01, + 1.73125000e+01, 1.48374996e+01, 1.28125000e+01, 2.85499992e+01, + 1.90499992e+01, 1.36625004e+01, 2.00750008e+01, 5.13250008e+01, + 2.47374992e+01, 1.47624998e+01, 2.77625008e+01, 1.19062500e+02, + 4.28250008e+01, 1.34250002e+01, 2.93999996e+01, 1.24974998e+02, + 2.69624996e+01, 7.73750019e+00, 3.57500000e+01, 1.30987503e+02, + 3.64500008e+01, 5.87500000e+00, 2.25750008e+01, 1.09687500e+02, + 2.40375004e+01, 7.57499981e+00, 1.79375000e+01, 8.72750015e+01, + 1.89249992e+01, 4.92500019e+00, 1.51250000e+01, 1.37500000e+01, + 1.52749996e+01, 1.52749996e+01, 1.18625002e+01, 1.01374998e+01, + 1.16499996e+01, 1.33625002e+01, 2.17500000e+01, 2.31250000e+01, + 2.40750008e+01, 2.23624992e+01, 1.70375004e+01, 3.00249996e+01, + 20., 1.76625004e+01, 2.01875000e+01, 5.40250015e+01, + 2.32999992e+01, 1.61375008e+01, 3.16250000e+01, 1.16262497e+02, + 3.12875004e+01, 1.19125004e+01, 2.57374992e+01, 1.08137497e+02, + 1.81000004e+01, 6.26249981e+00, 2.78624992e+01, 1.21937500e+02, + 2.76250000e+01, 5.82499981e+00, 1.06999998e+01, 8.64999962e+00, + 9.98750019e+00, 1.16625004e+01, 7.21250010e+00, 6.19999981e+00, + 7.86250019e+00, 1.05000000e+01, 1.41750002e+01, 1.31374998e+01, + 1.41999998e+01, 15., 1.12624998e+01, 9.76249981e+00, + 1.32250004e+01, 1.39250002e+01, 1.54750004e+01, 1.39624996e+01, + 1.68750000e+01, 1.58125000e+01, 1.52250004e+01, 2.40750008e+01, + 1.49750004e+01, 1.44750004e+01, 1.74375000e+01, 3.04874992e+01, + 1.23500004e+01, 8.41250038e+00, 2.33750000e+01, 8.14375000e+01, + 1.84500008e+01, 7.78749990e+00, 3.50704217e+00, 3.07042265e+00, + 3.87323952e+00, 7.59154940e+00, 5.33802795e+00, 3.36619711e+00, + 3.36619711e+00, 2.60563374e+00, 4.60563374e+00, 6.47887325e+00, + 1.06197186e+01, 1.84084511e+01, 9.84507084e+00, 7.49295759e+00, + 5.29577446e+00, 4.05633783e+00, 2.73239446e+00, 5.15492964e+00, + 1.76056347e+01, 2.91830978e+01, 1.25070419e+01, 1.02676058e+01, + 8.57746506e+00, 2.35211277e+00, 5.28169012e+00, 4.16901398e+00, + 1.98169022e+01, 2.99859161e+01, 1.27464790e+01, 1.04225349e+01, + 1.07605639e+01, 6.30985928e+00, 4.08450699e+00, 4.49295759e+00, + 8.35211277e+00, 1.86619720e+01, 1.18732395e+01, 5.54929590e+00, + 4.22535229e+00, 3.25352120e+00, 5.28169012e+00, 8.18309879e+00, + 2.11126766e+01, 4.22816887e+01, 2.13098583e+01, 9.07042217e+00, + 5.49295759e+00, 4.15492964e+00, 4.94366217e+00, 6.45070410e+00, + 2.85352116e+01, 6.26197166e+01, 2.55352116e+01, 8.18309879e+00, + 7.35211277e+00, 2.25633812e+01, 9.02816868e+00, 5.33802795e+00, + 2.55070419e+01, 4.89154930e+01, 1.95774651e+01, 1.52112675e+01, + 5.36338043e+01, 1.20338028e+02, 2.36619711e+00, 3.74647880e+00, + 8.19718266e+00, 2.53098583e+01, 1.68450699e+01, 6.18309879e+00, + 3.76056337e+00, 2.22535205e+00, 6.49295759e+00, 5.81690121e+00, + 1.79154930e+01, 5.74788742e+01, 3.05774651e+01, 9.52112675e+00, + 5.42253542e+00, 1.53098593e+01, 3.76056328e+01, 4.42253542e+00, + 1.86478882e+01, 8.50281677e+01, 26., 6.08450699e+00, + 1.95633812e+01, 1.51971832e+02, 1.89295769e+01, 2.77464795e+00, + 5.00422554e+01, 1.48281693e+02, 2.23943653e+01, 9.01408482e+00, + 5.11408463e+01, 1.50915497e+02, 1.69014084e+00, 2.01408458e+00, + 5.22535229e+00, 2.43239441e+01, 20., 5.28169012e+00, + 2.74647880e+00, 2.02816892e+00, 4.92957764e+01, 4.28169012e+00, + 1.08450708e+01, 4.52676048e+01, 2.89718304e+01, 6.61971807e+00, + 5.45070410e+00, 8.25774612e+01, 9.19718323e+01, 4.45070410e+00, + 9.92957783e+00, 1.40183105e+02, 7.77042236e+01, 3.36619711e+00, + 9.60563374e+00, 1.50225357e+02, 1.61830978e+01, 3.26760554e+00, + 1.43943663e+01, 1.42605637e+02, 4.30845070e+01, 3.02816892e+00, + 1.46760559e+01, 5.98309860e+01, 9.71833344e+01, 3.92666664e+01, + 3.65000010e+00, 1.17833338e+01, 2.73500004e+01, 2.02166672e+01, + 4.98333311e+00, 3.54666672e+01, 4.29166679e+01, 1.90166664e+01, + 1.23166666e+01, 2.05833340e+01, 2.36499996e+01, 1.44499998e+01, + 9.63333321e+00, 2.56666660e+01, 1.31000004e+01, 1.35000000e+01, + 1.80833340e+01, 1.53000002e+01, 1.55000000e+01, 1.81666660e+01, + 1.20833330e+01, 1.38500004e+01, 1.14333334e+01, 9.44999981e+00, + 1.21999998e+01, 3.24666672e+01, 6.24833336e+01, 3.69000015e+01, + 6.94999981e+00, 1.04666662e+01, 9.12666702e+01, 1.20916664e+02, + 1.54333334e+01, 3.91666675e+00, 2.12500000e+01, 3.97000008e+01, + 1.03500004e+01, 9.46666622e+00, 5.15000000e+01, 9.43666687e+01, + 4.72500000e+01, 1.24499998e+01, 2.07666664e+01, 5.65666656e+01, + 3.92166672e+01, 1.96666660e+01, 1.40666666e+01, 1.76166668e+01, + 5.76833344e+01, 6.99333344e+01, 2.71833324e+01, 2.60833340e+01, + 3.80499992e+01, 2.75499992e+01, 9.58333302e+00, 3.65000010e+00, + 3.68833351e+01, 1.18016670e+02, 6.47333298e+01, 8.43333340e+00, + 1.22833338e+01, 2.64833336e+01, 1.99166660e+01, 9.34333344e+01, + 2.98833332e+01, 1.85000002e+00, 1.01833334e+01, 2.43166676e+01, + 1.26666670e+01, 2.59999990e+00, 1.41499996e+01, 1.26849998e+02, + 1.28016663e+02, 2.30166664e+01, 8.08333302e+00, 3.42333336e+01, + 3.13333340e+01, 7.23333311e+00, 3.91666675e+00, 3.08500004e+01, + 1.31833328e+02, 1.10883331e+02, 1.45166664e+01, 1.49499998e+01, + 3.66333351e+01, 1.53999996e+01, 3.59999990e+00, 2.76666665e+00, + 5.49500008e+01, 1.07466667e+02, 1.59166670e+01, 4.36666679e+00, + 2.10166664e+01, 2.55166664e+01, 2.83333325e+00, 6.90000010e+00, + 3.43333340e+00, 8.33333313e-01, 1.86666667e+00, 1.21833334e+01, + 7.48333311e+00, 1.31666672e+00, 1.91666663e+00, 1.25500002e+01, + 2.36166668e+01, 6.16666651e+00, 2.01666665e+00, 6.11666679e+00, + 7.61666679e+00, 2.48333335e+00, 1.58333337e+00, 4.09999990e+00, + 2.56666660e+01, 1.38000002e+01, 4.03333330e+00, 4.51666689e+00, + 8.03333378e+00, 5.98333311e+00, 1.71666670e+00, 3.23333335e+00, + 1.01000004e+01, 6.65000010e+00, 3.15000010e+00, 3.75000000e+00, + 8.43333340e+00, 7.21666670e+00, 8.69565201e+00, 4.16086960e+01, + 4.56956520e+01, 1.50144930e+01, 9.76811600e+00, 5.43913040e+01, + 5.74637680e+01, 1.03188410e+01, 1.04492750e+01, 7.01594238e+01, + 7.76666641e+01, 1.45072460e+01, 7.81159401e+00, 6.00434799e+01, + 7.20144958e+01, 1.11304350e+01, 8.15942001e+00, 7.39420319e+01, + 7.99565201e+01, 6.27536249e+00, 5.31884050e+00, 6.31594200e+01, + 7.71884079e+01, 1.02753620e+01, 6.04347849e+00, 6.39855080e+01, + 7.17101440e+01, 6.14492750e+00, 5.52173901e+00, 5.70289841e+01, + 6.99130402e+01, 1.00724640e+01, 1.02608700e+01, 1.66086960e+01, + 2.25362320e+01, 1.24492750e+01, 1.34782610e+01, 5.58115959e+01, + 7.86956558e+01, 2.09565220e+01, 1.21159420e+01, 4.64927521e+01, + 5.23913040e+01, 1.17246380e+01, 1.20289860e+01, 1.02855072e+02, + 1.13797104e+02, 2.39275360e+01, 9.15942001e+00, 8.86231918e+01, + 8.77246399e+01, 5.94202900e+00, 6.60869551e+00, 1.04115944e+02, + 1.12289856e+02, 1.29565220e+01, 1.07536230e+01, 8.54202881e+01, + 8.44347839e+01, 5.40579700e+00, 5.44927549e+00, 7.88260880e+01, + 8.53768082e+01, 1.00434780e+01, 1.38550720e+01, 1.02173910e+01, + 9.63768101e+00, 1.04927540e+01, 1.24057970e+01, 1.75217400e+01, + 2.39275360e+01, 1.82463760e+01, 1.82173920e+01, 1.60869560e+01, + 1.32753620e+01, 1.42898550e+01, 1.64927540e+01, 3.10724640e+01, + 4.37101440e+01, 2.64202900e+01, 1.44202900e+01, 1.99130440e+01, + 1.81449280e+01, 1.32898550e+01, 1.69710140e+01, 7.00579681e+01, + 7.62028961e+01, 2.24637680e+01, 1.29420290e+01, 4.04347839e+01, + 3.00144920e+01, 8.79710102e+00, 1.26811590e+01, 8.91014481e+01, + 8.84492722e+01, 1.39565220e+01, 1.03913040e+01, 1.02318840e+01, + 9.63768101e+00, 8.17391300e+00, 7.04347849e+00, 7.66666651e+00, + 9.49275398e+00, 1.00579710e+01, 1.37826090e+01, 1.35797100e+01, + 9.69565201e+00, 8.49275398e+00, 9.71014500e+00, 1.15942030e+01, + 1.37246380e+01, 1.49565220e+01, 1.26231880e+01, 1.26956520e+01, + 8.40579700e+00, 9.11594200e+00, 1.18405800e+01, 1.40144930e+01, + 1.55072460e+01, 1.47101450e+01, 9.08695698e+00, 7.82608700e+00, + 6.27536249e+00, 7.82608700e+00, 9.95652199e+00, 2.02898560e+01, + 1.93333340e+01, 1.19275360e+01, 4.42857122e+00, 2.96103907e+00, + 2.85714293e+00, 5.94805193e+00, 4.74025965e+00, 5.24675322e+00, + 5.64935064e+00, 5.92207813e+00, 8.71428585e+00, 3.07792211e+00, + 5.25974035e+00, 2.92597408e+01, 7.57142878e+00, 4.98701286e+00, + 9.03896141e+00, 4.20649338e+01, 1.46493511e+01, 1.23376620e+00, + 5.68831158e+00, 4.21168823e+01, 8.22077942e+00, 2.70129871e+00, + 2.01168823e+01, 1.32766235e+02, 8.80519485e+00, 1.83116889e+00, + 7.18181801e+00, 8.53246765e+01, 1.54675322e+01, 8.05194759e+00, + 2.08441563e+01, 7.96753235e+01, 7.11688328e+00, 3.48051953e+00, + 6.61038971e+00, 2.75844154e+01, 6.09090900e+00, 4.94805193e+00, + 1.40519476e+01, 4.35714302e+01, 1.41558437e+01, 1.41558444e+00, + 7.63636351e+00, 58., 8.24675369e+00, 2.23376632e+00, + 2.79870129e+01, 1.40012985e+02, 1.02597399e+01, 8.31168830e-01, + 1.46623373e+01, 1.32727280e+02, 1.39350653e+01, 1.46753252e+00, + 1.94025974e+01, 1.29376617e+02, 7.02597380e+00, 1.74025977e+00, + 1.86103897e+01, 1.32246750e+02, 15., 2.54545450e+00, + 7.89610386e+00, 4.27922096e+01, 1.53636360e+01, 4.94805193e+00, + 9.71428585e+00, 4.26103897e+01, 6., 3.48051953e+00, + 3.06623383e+01, 1.25116882e+02, 1.36883116e+01, 4.15584421e+00, + 2.16883125e+01, 1.30402603e+02, 1.43766232e+01, 1.75324678e+00, + 1.63896103e+01, 1.20584419e+02, 7.20779228e+00, 1.54545450e+00, + 1.81818180e+01, 1.39402603e+02, 18., 1.92207789e+00, + 9.92207813e+00, 6.02857132e+01, 7.96103907e+00, 3.94805193e+00, + 7.18181801e+00, 3.52467537e+01, 7.28571415e+00, 3.32467532e+00, + 7.79220772e+00, 3.70389595e+01, 1.68961048e+01, 9.61038971e+00, + 1.69740257e+01, 7.60649338e+01, 1.02857141e+01, 3.37662339e+00, + 8.32467556e+00, 6.42727280e+01, 8.58441544e+00, 4., + 1.56103897e+01, 1.18974030e+02, 2.40779228e+01, 4.97402620e+00, + 8.64935112e+00, 4.04935074e+01, 8.16883087e+00, 3.80519485e+00, + 5.75324678e+00, 3.55584412e+01, 1.16363640e+01, 4.57142878e+00, + 8.49350643e+00, 3.47012978e+01, 4.01298714e+00, 3.76623368e+00, + 3.88311696e+00, 4.49350643e+00, 4.71428585e+00, 3.93506503e+00, + 4.42857122e+00, 8.38961029e+00, 2.75675678e+00, 5.70270252e+00, + 2.72162170e+01, 2.25945950e+01, 2.94594598e+00, 1.26756754e+01, + 7.07297287e+01, 4.18378372e+01, 4.43243265e+00, 1.19459457e+01, + 3.86216202e+01, 2.60540543e+01, 5.35135126e+00, 4.42432442e+01, + 1.00513512e+02, 5.35405388e+01, 6.10810804e+00, 7.59459448e+00, + 3.72972984e+01, 5.96216202e+01, 6.08108091e+00, 1.58918915e+01, + 8.78918915e+01, 1.13135132e+02, 1.43243241e+00, 8.64864886e-01, + 5.04324341e+01, 1.03756760e+02, 3.75675678e+00, 3.10810804e+00, + 55., 8.19189224e+01, 1.35675678e+01, 1.18918915e+01, + 2.60810814e+01, 2.16756763e+01, 7.18918896e+00, 9.56756783e+00, + 3.69729729e+01, 5.12972984e+01, 2.47297306e+01, 3.16216221e+01, + 3.25945930e+01, 4.42972984e+01, 3.52162170e+01, 2.88918915e+01, + 5.50540543e+01, 3.77027016e+01, 18., 2.36486492e+01, + 6.98918915e+01, 1.16783783e+02, 6.15405388e+01, 1.54054050e+01, + 3.75945930e+01, 6.22702713e+01, 6.40540552e+00, 1.89189184e+00, + 6.28648643e+01, 1.12054054e+02, 1.52162161e+01, 3.45945954e+00, + 3.90270271e+01, 7.27567596e+01, 20., 1.13243246e+01, 24., + 2.63783779e+01, 1.09729729e+01, 1.03783779e+01, 9.48648643e+00, + 1.99729729e+01, 2.65405407e+01, 1.32162161e+01, 3.97837830e+01, + 8.17027054e+01, 5.14324341e+01, 1.43243246e+01, 1.15675678e+01, + 3.34864883e+01, 2.19189186e+01, 3.62162161e+00, 1.91081085e+01, + 9.08918915e+01, 8.58918915e+01, 1.77567558e+01, 2.54864864e+01, + 6.14054070e+01, 1.16216221e+01, 1.64864862e+00, 7.32432413e+00, + 2.13513508e+01, 2.27027035e+01, 8.97297287e+00, 2.07027035e+01, + 49., 5.83783770e+00, 3.89189196e+00, 4.25135117e+01, + 6.28918915e+01, 6.02702713e+00, 4.32432413e+00, 1.92432442e+01, + 2.10540543e+01, 7.10810804e+00, 2.81081080e+00, 40., + 9.74054031e+01, 6.97297287e+00, 1.89189184e+00, 2.65135136e+01, + 54., 7.86486483e+00, 1.72972977e+00, 1.22162161e+01, + 4.89189186e+01, 1.16756754e+01, 4.02702713e+00, 1.72162170e+01, + 4.93783798e+01, 2.91891885e+00, 1.67567563e+00, 4.18918896e+00, + 8.70270252e+00, 8.48648643e+00, 7.18918896e+00, 7.97297287e+00, + 1.17027025e+01, 3.04545450e+00, 3.09090900e+00, 1.11666670e+01, + 9.74242401e+00, 3.66666675e+00, 4.18181801e+00, 1.89848480e+01, + 1.27575760e+01, 2.28787875e+00, 4.27272749e+00, 2.13787880e+01, + 1.67878780e+01, 5.63636351e+00, 8.66666698e+00, 5.56515160e+01, + 2.29848480e+01, 1.53030300e+00, 5.69696951e+00, 2.49848480e+01, + 1.17727270e+01, 5.78787899e+00, 1.93030300e+01, 8.08181839e+01, + 1.88787880e+01, 3.22727275e+00, 1.11212120e+01, 1.75454540e+01, + 5.45454550e+00, 3.74242425e+00, 2.53484840e+01, 4.53333321e+01, + 6.01515150e+00, 1.96818180e+01, 4.74242401e+00, 1.89696960e+01, + 2.88939400e+01, 7.83333349e+00, 6.22727251e+00, 6.72272720e+01, + 9.69696960e+01, 7.63636351e+00, 9.66666698e+00, 3.21060600e+01, + 24., 8.54545498e+00, 1.66515160e+01, 1.20954544e+02, + 8.31363602e+01, 1.15000000e+01, 1.86666660e+01, 3.18939400e+01, + 1.23787880e+01, 9.51515198e+00, 4.72272720e+01, 1.25151512e+02, + 5.21969681e+01, 1.11060610e+01, 2.41060600e+01, 2.13181820e+01, + 8.68181801e+00, 2.07575760e+01, 1.03333336e+02, 1.08272728e+02, + 2.01060600e+01, 5.93030319e+01, 2.04545460e+01, 1.71666660e+01, + 2.27121220e+01, 1.82424240e+01, 1.65151520e+01, 3.58484840e+01, + 7.36363602e+01, 1.88181820e+01, 1.47727270e+01, 2.46212120e+01, + 2.28181820e+01, 1.45303030e+01, 2.14696960e+01, 3.97878799e+01, + 5.07424240e+01, 2.21363640e+01, 1.99242420e+01, 2.79242420e+01, + 2.27121220e+01, 1.57272730e+01, 1.95000000e+01, 3.33333321e+01, + 4.23939400e+01, 2.63787880e+01, 2.09242420e+01, 3.10757580e+01, + 4.25303040e+01, 4.57272720e+01, 4.07121201e+01, 3.41969681e+01, + 2.61060600e+01, 3.78939400e+01, 8.13181839e+01, 5.84545441e+01, + 1.23181820e+01, 1.42727270e+01, 2.81363640e+01, 1.91060600e+01, + 1.18939390e+01, 1.00151520e+01, 4.47727280e+01, 9.63181839e+01, + 2.70606060e+01, 8.69696999e+00, 1.97424240e+01, 3.59393921e+01, + 1.75151520e+01, 8.27272701e+00, 2.21212120e+01, 1.02969696e+02, + 5.53636360e+01, 7.37878799e+00, 9.04545498e+00, 4.01666679e+01, + 2.81060600e+01, 9.95454502e+00, 7.74242401e+00, 8.08787842e+01, + 1.00060608e+02, 2.91363640e+01, 6., 2.35909100e+01, + 3.73030319e+01, 2.86666660e+01, 1.90714283e+01, 1.73809528e+01, + 1.73095245e+01, 1.55714283e+01, 1.47380953e+01, 1.72380943e+01, + 2.81428566e+01, 10., 1.21904764e+01, 2.03095245e+01, + 1.65000000e+01, 1.14523811e+01, 1.37857141e+01, 1.86428566e+01, + 19., 1.60476189e+01, 1.85238094e+01, 1.99285717e+01, + 1.77857151e+01, 2.43571434e+01, 2.53809528e+01, 2.08809528e+01, + 1.95714283e+01, 1.74047623e+01, 2.11666660e+01, 1.41190472e+01, + 2.96904755e+01, 8.44523773e+01, 5.56666679e+01, 2.37619057e+01, + 1.16190472e+01, 2.11904755e+01, 9.46190491e+01, 1.04023811e+02, + 1.50476189e+01, 1.26904764e+01, 4.69285698e+01, 4.59523811e+01, + 1.23095236e+01, 7.33333349e+00, 48., 1.18238098e+02, + 2.75476189e+01, 8.04761887e+00, 3.39285698e+01, 6.68333359e+01, + 1.96428566e+01, 1.14761906e+01, 1.86190472e+01, 1.06047623e+02, + 9.23095245e+01, 2.28095245e+01, 1.12857141e+01, 5.37380943e+01, + 5.42142868e+01, 1.47380953e+01, 1.47380953e+01, 5.73333321e+01, + 1.22738098e+02, 69., 9.04761887e+00, 2.28095245e+01, + 4.18333321e+01, 2.09523821e+00, 6.88333359e+01, 1.09238098e+02, + 1.14523811e+01, 2.69047618e+00, 2.50238094e+01, 5.45714302e+01, + 7.38095236e+00, 2.23809528e+00, 5.85952377e+01, 1.36761902e+02, + 1.93095245e+01, 2.02380943e+00, 2.02619057e+01, 7.43095245e+01, + 2.12142849e+01, 4., 2.02380943e+01, 1.28714279e+02, + 7.86428604e+01, 5.28571415e+00, 9.54761887e+00, 5.92619057e+01, + 3.62619057e+01, 5.80952358e+00, 6., 4.26190491e+01, + 6.27857132e+01, 9.23809528e+00, 6.76190472e+00, 2.60952377e+01, + 2.63809528e+01, 3.80952388e-01, 3.09523821e-01, 1.26190472e+00, + 2.14285716e-01, 2.85714298e-01, 4.04761887e+00, 1.62142849e+01, + 3.83333325e+00, 7.61904776e-01, 8.80952358e-01, 2.90476179e+00, + 4.04761910e-01, 3.80952388e-01, 4.11904764e+00, 1.96190472e+01, + 8.92857170e+00, 1.21428573e+00, 1.23809528e+00, 3.26190472e+00, + 1., 9.04761910e-01, 3.66666675e+00, 1.26666670e+01, + 7.80952358e+00, 1.02380955e+00, 6.19047642e-01, 1.07142854e+00, + 9.76190448e-01, 8.09523821e-01, 2.83333325e+00, 6.88095236e+00, + 3.45238090e+00, 5.35714293e+00, 1.76428566e+01, 4.50833321e+01, + 3.11309528e+01, 1.07976189e+01, 4.47976189e+01, 1.23261902e+02, + 3.68690491e+01, 9.59523773e+00, 6.94047642e+00, 2.87023811e+01, + 2.85238094e+01, 7.85714293e+00, 1.55000000e+01, 1.31559525e+02, + 1.14178574e+02, 3.98690491e+01, 5.75000000e+00, 1.16309528e+01, + 17., 3.97619057e+00, 4.08333349e+00, 8.30357132e+01, + 1.36059525e+02, 5.51547623e+01, 6.27380943e+00, 2.51190472e+00, + 3.59523821e+00, 2.51190472e+00, 3.38095236e+00, 2.20833340e+01, + 1.10333336e+02, 1.44166670e+01, 1.20476189e+01, 2.52619057e+01, + 1.26309528e+01, 9.55952358e+00, 2.97142849e+01, 9.49642868e+01, + 4.65357132e+01, 3.13095245e+01, 8.21428585e+00, 1.90357151e+01, + 1.37142859e+01, 6.58333349e+00, 1.42023811e+01, 1.01595238e+02, + 1.11690475e+02, 5.72142868e+01, 5.75000000e+00, 4.97619057e+00, + 5.44047642e+00, 3.76190472e+00, 7.33333349e+00, 6.17976189e+01, + 1.28892853e+02, 3.76309509e+01, 7.85714293e+00, 3.39285707e+00, + 4.35714293e+00, 7.22619057e+00, 9.78571415e+00, 2.70476189e+01, + 8.04880981e+01, 1.10476189e+01, 3., 3.14285707e+00, + 2.73809528e+00, 4.15476179e+00, 2.63095245e+01, 9.00357132e+01, + 5.73214302e+01, 2.34880943e+01, 2.16666675e+00, 1.78571427e+00, + 1.71428573e+00, 2.95238090e+00, 1.38571424e+01, 9.51666641e+01, + 1.12738098e+02, 3.00714283e+01, 4.05952358e+00, 1.97619045e+00, + 3.23809528e+00, 5.79761887e+00, 1.08333330e+01, 5.30119057e+01, + 1.03964287e+02, 1.61904755e+01, 6.82142878e+00, 4.98809528e+00, + 8.48809528e+00, 1.21785717e+01, 1.19285717e+01, 1.93690472e+01, + 3.10833340e+01, 2.10714293e+00, 2.97619045e-01, 7.14285746e-02, + 1.07142858e-01, 8.57142866e-01, 6.03571415e+00, 2.42976189e+01, + 1.48928576e+01, 5.44047642e+00, 1., 3.92857134e-01, + 5.23809552e-01, 1.29761910e+00, 2.89285707e+00, 1.84166660e+01, + 2.27619057e+01, 5.52380943e+00, 1.52380955e+00, 1.48809528e+00, + 2.36904764e+00, 3.02380943e+00, 2.88095236e+00, 8.26190472e+00, + 1.22619047e+01, 3.53571439e+00, 1.64285719e+00, 1.70238090e+00, + 2.77380943e+00, 3.63095236e+00, 2.73809528e+00, 4.14285707e+00, + 5.47619057e+00, 3.95061731e-01, 4.07407403e-01, 5.92592597e-01, + 9.38271582e-01, 1.27160490e+00, 8.76543224e-01, 9.01234567e-01, + 5.92592597e-01, 3.54320979e+00, 4.51851845e+00, 1.05925922e+01, + 2.53209877e+01, 3.15925922e+01, 1.41728392e+01, 9.76543236e+00, + 5.59259272e+00, 2.85185194e+00, 5.61728382e+00, 2.06913586e+01, + 9.26419754e+01, 6.59012375e+01, 1.30617285e+01, 5.97530842e+00, + 4.02469158e+00, 6.82716036e+00, 6.61728382e+00, 2.84197540e+01, + 9.98395081e+01, 3.95308647e+01, 8.49382687e+00, 4.25925922e+00, + 1.17283955e+01, 3.70370358e-01, 6.54321015e-01, 9.75308657e-01, + 1.92592597e+00, 2.98765421e+00, 1.79012346e+00, 1.11111116e+00, + 5.80246925e-01, 2.90123463e+00, 4.43209887e+00, 1.13209877e+01, + 5.51111107e+01, 8.11111145e+01, 2.23580246e+01, 8.03703690e+00, + 4.30864191e+00, 5.13580227e+00, 4.01234579e+00, 1.55185184e+01, + 1.19246910e+02, 1.25271606e+02, 2.26666660e+01, 4.97530842e+00, + 7.23456812e+00, 1.77901230e+01, 7.83950615e+00, 1.83827152e+01, + 1.27197533e+02, 8.23456802e+01, 1.19012346e+01, 8.45678997e+00, + 3.07654324e+01, 2.71604925e-01, 4.07407403e-01, 8.02469134e-01, + 2.66666675e+00, 5.64197540e+00, 2.09876537e+00, 9.25925910e-01, + 7.28395045e-01, 1.96296299e+00, 2.93827152e+00, 6.81481504e+00, + 5.57530861e+01, 1.15938271e+02, 3.07901230e+01, 5.56790113e+00, + 3.22222233e+00, 1.34074078e+01, 3.66666675e+00, 5.29629612e+00, + 9.47777786e+01, 1.35530869e+02, 3.93950615e+01, 6.96296310e+00, + 1.21234570e+01, 2.67654324e+01, 6.76543188e+00, 1.11481485e+01, + 1.16604935e+02, 1.22197533e+02, 1.20370369e+01, 7.28395081e+00, + 2.81481476e+01, 1.72839507e-01, 4.19753075e-01, 5.67901254e-01, + 1.80246913e+00, 4.37037039e+00, 2.86419749e+00, 1.03703701e+00, + 4.07407403e-01, 1.71604943e+00, 2.08641982e+00, 3.65432096e+00, + 2.56049385e+01, 9.82592621e+01, 4.41111107e+01, 5.97530842e+00, + 2.62962961e+00, 1.29012346e+01, 3.35802460e+00, 2.09876537e+00, + 3.93456802e+01, 1.33172836e+02, 6.10370369e+01, 7.95061731e+00, + 7.64197540e+00, 2.59753094e+01, 8.48148155e+00, 5.13580227e+00, + 5.42716064e+01, 1.24271606e+02, 2.68024693e+01, 5.19753075e+00, + 13., 1.42758617e+01, 1.26724138e+01, 1.12586203e+01, + 1.84482765e+01, 1.52586203e+01, 4.29310322e+00, 3.31034493e+00, + 1.05000000e+01, 6.01724148e+00, 3.79310346e+00, 4.08620691e+00, + 5.46724129e+01, 8.38448257e+01, 6.51724148e+00, 1.58620691e+00, + 4.53448296e+00, 2.07413788e+01, 2.77586198e+00, 2.15517235e+00, + 5.20689659e+01, 8.62586212e+01, 3.36206889e+00, 6.03448272e-01, + 7.67241383e+00, 1.08482758e+02, 8.10344791e+00, 1.72413790e+00, + 5.72413778e+00, 1.02931032e+01, 1.58620691e+00, 1.25862074e+00, + 3.15862064e+01, 8.12068939e+00, 5.72413778e+00, 2.73620682e+01, + 6.06724129e+01, 1.47241383e+01, 2.68965507e+00, 3.51724148e+00, + 1.06896553e+01, 4.27586222e+00, 1.86206901e+00, 1.45862064e+01, + 1.22327583e+02, 6.61206894e+01, 1.43103445e+00, 1.43103445e+00, + 5.58620691e+00, 4.18965530e+01, 3.25862074e+00, 5.74137926e+00, + 6.93448257e+01, 4.64655190e+01, 1.68965518e+00, 2.98275852e+00, + 4.87758636e+01, 1.14724136e+02, 4.87931013e+00, 2.18965507e+00, + 6.94827604e+00, 6.50000000e+00, 2., 3.44827580e+00, + 1.03913795e+02, 1.79310346e+00, 2.34482765e+00, 7.74827576e+01, + 1.09275864e+02, 6.58620691e+00, 1., 4.18965530e+00, + 6.41379309e+00, 6.46551704e+00, 2.81034493e+00, 3.23965530e+01, + 1.11931038e+02, 1.74482765e+01, 1.15517247e+00, 1.18793106e+01, + 3.79482765e+01, 55., 3.01724148e+00, 6.20689678e+00, + 2.21896553e+01, 7.89655161e+00, 1.48275864e+00, 1.48275862e+01, + 1.26120689e+02, 7.68448257e+01, 4.79310322e+00, 2.81034493e+00, + 5.75862074e+00, 6.08620691e+00, 3.37931037e+00, 1.04482756e+01, + 1.16362068e+02, 1.89655173e+00, 2.18965507e+00, 3.17586212e+01, + 3.42413788e+01, 1.50000000e+00, 1.25862074e+00, 4.97068977e+01, + 3.65000000e+01, 6.05172396e+00, 2.27586198e+00, 9.32758617e+00, + 1.50344830e+01, 1.96551728e+00, 1.32758617e+00, 6.41551743e+01, + 117., 2.46034489e+01, 3.53448272e+00, 3.62068963e+00, + 6.15517235e+00, 2.91379309e+00, 3.41379309e+00, 36., + 1.21482758e+02, 2.99310341e+01, 4.82758617e+00, 3.01724148e+00, + 4.27586222e+00, 4.72413778e+00, 5.25862074e+00, 1.66724129e+01, + 7.01724167e+01, 2.80392146e+00, 3.58823538e+00, 3.00980396e+01, + 7.87647095e+01, 1.55490198e+01, 1.76470590e+00, 2.80392146e+00, + 3.80392146e+00, 5.78431368e+00, 7.31372547e+00, 5.72745094e+01, + 8.82941208e+01, 1.26078434e+01, 2.86274505e+00, 1.03137255e+01, + 1.33137255e+01, 8.76470566e+00, 1.12156858e+01, 6.70784302e+01, + 5.38823547e+01, 8.88235283e+00, 5.37254906e+00, 2.11372547e+01, + 1.57254906e+01, 8.33333302e+00, 1.31764708e+01, 6.23529396e+01, + 2.61176472e+01, 5.41176462e+00, 5.09803915e+00, 1.93529415e+01, + 8.43137264e+00, 5.49019623e+00, 2.64705873e+00, 3.81372566e+01, + 1.12647057e+02, 2.23725491e+01, 2.19607854e+00, 1.33725491e+01, + 3.55882339e+01, 6., 6.01960802e+00, 7.74509811e+01, + 1.02960785e+02, 8.86274529e+00, 3.33333325e+00, 5.04313736e+01, + 6.21568642e+01, 3.07843137e+00, 5.62745094e+00, 9.18039246e+01, + 6.29215698e+01, 4.27450991e+00, 1.05882349e+01, 8.05294113e+01, + 3.51176453e+01, 2.03921580e+00, 1.17843142e+01, 8.86078415e+01, + 1.95098038e+01, 3.19607854e+00, 2.11176472e+01, 6.06666679e+01, + 8.33333302e+00, 1.53529415e+01, 1.70588231e+00, 1.86470585e+01, + 1.04215683e+02, 1.68235302e+01, 1.17647064e+00, 2.70588226e+01, + 1.02980392e+02, 4.78431368e+00, 1.84313726e+00, 2.16862736e+01, + 5.46078415e+01, 4.54901981e+00, 3.56862736e+00, 9.69803925e+01, + 1.06803925e+02, 1.60784316e+00, 2.07843137e+00, 20., + 1.82745094e+01, 1.60784316e+00, 2.79803925e+01, 1.19843140e+02, + 4.47450981e+01, 4.50980395e-01, 2.43137264e+00, 1.96274509e+01, + 5.56862736e+00, 1.84313726e+00, 7.56078415e+01, 1.13431374e+02, + 5.49019623e+00, 4.08431358e+01, 1.82352936e+00, 2.90196085e+00, + 3.38039207e+01, 1.23333330e+01, 6.47058845e-01, 9.80392170e+00, + 1.00647057e+02, 1.56078434e+01, 5.64705896e+00, 9.15686321e+00, + 1.12352943e+01, 3.88235283e+00, 2.13725495e+00, 3.43529396e+01, + 6.39803925e+01, 1.23137255e+01, 1.38431368e+01, 1.63529415e+01, + 7.09803915e+00, 3.11764717e+00, 1.51372547e+01, 5.51960793e+01, + 2.52156868e+01, 5.80392170e+00, 1.22352943e+01, 1.13725491e+01, + 7.60784292e+00, 6.68627453e+00, 5.01764717e+01, 5.31568642e+01, + 8.09803963e+00, 7.05714273e+00, 8.71428585e+00, 3.09714279e+01, + 16., 2.79999995e+00, 1.82285709e+01, 4.64571419e+01, + 2.44571438e+01, 1.07428570e+01, 7.65714264e+00, 3.09142857e+01, + 1.89428577e+01, 2.59999990e+00, 7.94285727e+00, 7.54285736e+01, + 7.55999985e+01, 3.57142854e+00, 7.40000010e+00, 2.76571426e+01, + 9.51428604e+00, 2.85714293e+00, 2.26000004e+01, 1.09914284e+02, + 3.87428589e+01, 2.34285712e+00, 9., 1.78571434e+01, + 4.17142868e+00, 5.82857132e+00, 2.37142849e+01, 8.54285736e+01, + 1.56000004e+01, 1.68285713e+01, 3.18571434e+01, 6.32285728e+01, + 17., 1.46571426e+01, 4.90571442e+01, 1.20028572e+02, + 5.99428558e+01, 2.95714283e+01, 1.58857145e+01, 2.33428574e+01, + 2.64571438e+01, 2.54285717e+01, 3.62285728e+01, 9.13714294e+01, + 9.42285690e+01, 1.23999996e+01, 8.17142868e+00, 1.25142860e+01, + 1.70571423e+01, 1.90857143e+01, 4.04285698e+01, 6.71428604e+01, + 3.58857155e+01, 3.59999990e+00, 5.82857132e+00, 1.09428568e+01, + 1.33142853e+01, 1.40285711e+01, 3.34000015e+01, 5.15999985e+01, + 9.08571434e+00, 2.11142864e+01, 8.32571411e+01, 1.17800003e+02, + 2.17999992e+01, 1.35714283e+01, 2.73428574e+01, 4.02857132e+01, + 1.45428572e+01, 3.11428566e+01, 1.03085716e+02, 8.34857178e+01, + 1.95428562e+01, 2.42857151e+01, 3.83142853e+01, 2.24857140e+01, + 1.14285717e+01, 9.94285679e+00, 3.96285706e+01, 6.83428574e+01, + 3.25714302e+01, 1.96857147e+01, 2.77999992e+01, 2.58857136e+01, + 9.51428604e+00, 2.62857151e+00, 7.14285707e+00, 4.72285728e+01, + 3.16000004e+01, 1.23714285e+01, 1.43142853e+01, 2.53714294e+01, + 8.62857151e+00, 8.77142811e+00, 3.08857136e+01, 2.43142853e+01, + 6., 3.54285717e+00, 2.24285717e+01, 2.75142860e+01, + 7.42857122e+00, 1.12285719e+01, 8.49142838e+01, 7.06857147e+01, + 3.51428580e+00, 3.54285717e+00, 2.91714287e+01, 3.34000015e+01, + 4.82857132e+00, 2.97142863e+00, 5.92000008e+01, 1.13171425e+02, + 1.06285715e+01, 2.94285703e+00, 1.96857147e+01, 3.77142868e+01, + 8.77142811e+00, 2.31428576e+00, 1.75428562e+01, 9.06285706e+01, + 1.44857140e+01, 2.22857141e+00, 1.07714281e+01, 2.97714291e+01, + 1.14285717e+01, 4., 3.92727280e+00, 1.11454544e+01, + 5.54545450e+00, 4.18181801e+00, 6.90909100e+00, 1.12363634e+01, + 6.05454540e+00, 4.49090910e+00, 4.14545441e+00, 1.74727268e+01, + 9.10909081e+00, 4.47272730e+00, 5.98181820e+00, 1.60727272e+01, + 1.01090908e+01, 5.72727251e+00, 3.70909095e+00, 1.81272736e+01, + 1.22181816e+01, 5.07272720e+00, 6.81818199e+00, 21., + 1.70545464e+01, 6.36363649e+00, 3., 1.26363640e+01, + 9.61818218e+00, 3.45454550e+00, 4.80000019e+00, 2.82727280e+01, + 2.59818172e+01, 3.87272716e+00, 4.96363640e+00, 3.18727264e+01, + 9.45454502e+00, 1.74545455e+00, 1.41272726e+01, 1.35036362e+02, + 3.35818176e+01, 1.92727268e+00, 4.59999990e+00, 4.92363625e+01, + 1.52727270e+01, 1.90909088e+00, 1.30363636e+01, 1.48163635e+02, + 4.90181808e+01, 7.10909081e+00, 5.34545469e+00, 5.24181824e+01, + 2.04545460e+01, 7.21818161e+00, 2.22545452e+01, 1.48163635e+02, + 5.43454552e+01, 8.78181839e+00, 5.92727280e+00, 3.72727280e+01, + 1.84727268e+01, 1.05454550e+01, 2.04181824e+01, 1.06054543e+02, + 4.05454559e+01, 5.07272720e+00, 1.20363636e+01, 1.39236359e+02, + 39., 2.21818185e+00, 4.10909081e+00, 8.26363602e+01, + 2.65636368e+01, 1.89090908e+00, 1.05636368e+01, 1.48381821e+02, + 5.16727257e+01, 8.72727275e-01, 5.49090910e+00, 9.48545456e+01, + 2.45272732e+01, 2.94545460e+00, 2.05636368e+01, 1.48381821e+02, + 5.21090927e+01, 4.98181820e+00, 1.10181818e+01, 7.76181793e+01, + 1.85454540e+01, 3.72727275e+00, 2.68909092e+01, 1.16054543e+02, + 3.28909073e+01, 7.63636351e+00, 1.41818180e+01, 4.52909088e+01, + 1.15454550e+01, 2.65454555e+00, 3.34545445e+00, 4.58727264e+01, + 1.91818180e+01, 3.63636374e+00, 4.14545441e+00, 3.40909081e+01, + 1.19636364e+01, 3.49090910e+00, 3.76363635e+00, 4.05454559e+01, + 1.36363640e+01, 3., 5.63636351e+00, 4.62363625e+01, + 1.60727272e+01, 3.96363640e+00, 7.40000010e+00, 2.71818180e+01, + 8.81818199e+00, 3.74545455e+00, 8.07272720e+00, 41., + 1.13272724e+01, 3.05454540e+00, 1.41999998e+01, 2.17272720e+01, + 4.70909071e+00, 2.96363640e+00, 6.98181820e+00, 2.62727280e+01, + 7.16363621e+00, 2.33333325e+00, 1.87037039e+00, 2.40740752e+00, + 3., 3.68518519e+00, 3.87037039e+00, 4.77777767e+00, + 3.33333325e+00, 8.20370388e+00, 6.27777767e+00, 5.38888884e+00, + 1.19259262e+01, 3.32592583e+01, 2.49074078e+01, 1.34259262e+01, + 1.07407408e+01, 4.76296310e+01, 1.65370369e+01, 3.50000000e+00, + 1.06296301e+01, 1.00500000e+02, 7.97407379e+01, 1.31666670e+01, + 1.09814816e+01, 1.59685181e+02, 105., 4.31481504e+00, + 1.34259262e+01, 1.03870369e+02, 4.92222214e+01, 7.40740728e+00, + 5.88333321e+01, 2.70370364e+00, 2.81481481e+00, 3.09259248e+00, + 4.33333349e+00, 5.12962961e+00, 4.87037039e+00, 4.98148155e+00, + 3.96296287e+00, 1.09444447e+01, 1.04444447e+01, 9.64814854e+00, + 1.33333330e+01, 2.31666660e+01, 2.34259262e+01, 1.66666660e+01, + 1.52592592e+01, 2.41296291e+01, 1.51296301e+01, 7.59259272e+00, + 1.19074078e+01, 8.17407379e+01, 1.02518517e+02, 2.15000000e+01, + 1.12407408e+01, 1.63703705e+02, 1.52574081e+02, 9.55555534e+00, + 9.79629612e+00, 9.71296310e+01, 1.03833336e+02, 1.50740738e+01, + 1.95925922e+01, 2.74074078e+00, 3.14814806e+00, 3.50000000e+00, + 3.64814806e+00, 4.85185194e+00, 5.09259272e+00, 5.62962961e+00, + 3.98148155e+00, 9.96296310e+00, 9.81481457e+00, 1.05740738e+01, + 1.21481485e+01, 1.83148155e+01, 1.92962971e+01, 1.95000000e+01, + 1.52037039e+01, 1.30740738e+01, 1.28518515e+01, 1.17222223e+01, + 1.24074078e+01, 2.93518524e+01, 5.24074059e+01, 2.81481476e+01, + 1.83888893e+01, 1.04685188e+02, 1.18777779e+02, 1.11851854e+01, + 6.12962961e+00, 4.61111107e+01, 9.99074097e+01, 2.95370369e+01, + 1.03888893e+01, 2.16666675e+00, 2.33333325e+00, 2.38888884e+00, + 1.83333337e+00, 3.16666675e+00, 4.37037039e+00, 3.66666675e+00, + 3.24074078e+00, 6.79629612e+00, 5.05555534e+00, 5.20370388e+00, + 6.14814806e+00, 1.39074078e+01, 2.24444447e+01, 1.70740738e+01, + 9.31481457e+00, 9.38888931e+00, 7.27777767e+00, 7.38888884e+00, + 7.38888884e+00, 1.12962961e+01, 1.78888893e+01, 2.04629631e+01, + 1.37222223e+01, 1.21296301e+01, 1.68518524e+01, 5.88888884e+00, + 6.12962961e+00, 1.69074078e+01, 3.16111107e+01, 1.96296291e+01, + 9.81481457e+00, 2.62499988e-01, 1.87500000e-01, 6.49999976e-01, + 3.21250010e+00, 3.48749995e+00, 1.89999998e+00, 2.23749995e+00, + 4.37500000e-01, 3.33750010e+00, 2.22499990e+00, 6.68750000e+00, + 33., 3.04624996e+01, 1.55625000e+01, 6.12500000e+00, + 3.08750010e+00, 7.52500010e+00, 4.27500010e+00, 9.96249962e+00, + 3.94000015e+01, 3.29625015e+01, 1.93250008e+01, 1.32124996e+01, + 6.21250010e+00, 5.77249985e+01, 4.96250010e+00, 7.27500010e+00, + 31., 2.77124996e+01, 1.12375002e+01, 1.58625002e+01, + 9.47624969e+01, 1.87500000e-01, 1.74999997e-01, 6.62500024e-01, + 4.05000019e+00, 5.21250010e+00, 2.22499990e+00, 5.50000012e-01, + 3.00000012e-01, 2.83750010e+00, 3.53749990e+00, 6.73750019e+00, + 3.37625008e+01, 4.18250008e+01, 1.83500004e+01, 7., + 2.93750000e+00, 4.29874992e+01, 6.26249981e+00, 1.08625002e+01, + 3.83125000e+01, 4.42750015e+01, 2.20499992e+01, 1.33874998e+01, + 3.07749996e+01, 1.30012497e+02, 5.69999981e+00, 5.77500010e+00, + 7.24875031e+01, 7.73249969e+01, 1.11000004e+01, 1.34375000e+01, + 1.39712494e+02, 2.75000006e-01, 3.87499988e-01, 6.99999988e-01, + 2.98749995e+00, 6.01249981e+00, 2.82500005e+00, 8.50000024e-01, + 4.12499994e-01, 2.86249995e+00, 3.72499990e+00, 5.61250019e+00, + 2.53250008e+01, 4.83624992e+01, 2.22500000e+01, 6.41249990e+00, + 3.32500005e+00, 1.07400002e+02, 9.16250038e+00, 8.56250000e+00, + 3.32999992e+01, 4.86749992e+01, 2.21625004e+01, 6.83750010e+00, + 4.50499992e+01, 1.44324997e+02, 1.12749996e+01, 3.65000010e+00, + 7.79749985e+01, 1.30612503e+02, 1.14750004e+01, 5.33750010e+00, + 1.05237503e+02, 1.74999997e-01, 3.00000012e-01, 4.49999988e-01, + 1.85000002e+00, 5.03749990e+00, 3.16249990e+00, 7.62499988e-01, + 1.74999997e-01, 1.77499998e+00, 2.41249990e+00, 3.92499995e+00, + 1.56625004e+01, 4.48250008e+01, 2.50125008e+01, 5.12500000e+00, + 2.17499995e+00, 1.14974998e+02, 1.58249998e+01, 4.47499990e+00, + 2.29874992e+01, 4.72125015e+01, 2.21250000e+01, 5.33750010e+00, + 2.21499996e+01, 1.42199997e+02, 3.25374985e+01, 2.57500005e+00, + 3.35000000e+01, 1.29237503e+02, 2.38750000e+01, 3.11249995e+00, + 3.45250015e+01, 1.47459457e+02, 3.84864883e+01, 2.56756759e+00, + 1.32702703e+01, 88., 1.97837830e+01, 1.37837839e+00, + 1.85945950e+01, 1.11540543e+02, 2.35135136e+01, 3.32432437e+00, + 3.36486473e+01, 1.49918915e+02, 3.19459457e+01, 1.40540540e+00, + 1.57297297e+01, 3.91351357e+01, 1.60540543e+01, 7.70270252e+00, + 1.49729729e+01, 7.28108139e+01, 1.50270271e+01, 4.97297287e+00, + 1.08378382e+01, 6.94594574e+00, 6.62162161e+00, 5.05405426e+00, + 2.62162161e+00, 2.02702713e+00, 2.24324322e+00, 2.59459448e+00, + 2.83783793e+00, 1.43081085e+02, 7.88648682e+01, 2.33783779e+01, + 2.47837830e+01, 8.11891861e+01, 3.06486492e+01, 5.43243265e+00, + 1.49729729e+01, 1.10837837e+02, 6.34324341e+01, 4.13243256e+01, + 8.56756744e+01, 1.47702698e+02, 2.39729729e+01, 6.37837839e+00, + 1.81621628e+01, 3.89729729e+01, 1.86486492e+01, 1.47567568e+01, + 2.74324322e+01, 7.13783798e+01, 1.28108110e+01, 6.05405426e+00, + 1.40540543e+01, 7.24324322e+00, 6.45945930e+00, 5.64864874e+00, + 3.48648643e+00, 2.16216207e+00, 2.21621633e+00, 3.35135126e+00, + 3.51351357e+00, 4.88648643e+01, 5.73783798e+01, 3.47027016e+01, + 1.75135136e+01, 2.59189186e+01, 2.00810814e+01, 9.35135174e+00, + 6.40540552e+00, 4.37297287e+01, 59., 6.79459457e+01, + 7.79729767e+01, 6.18108101e+01, 1.26216221e+01, 1.39459457e+01, + 1.57027025e+01, 2.31891899e+01, 1.28918915e+01, 1.65675678e+01, + 3.20540543e+01, 3.02432442e+01, 4.16216230e+00, 4.78378391e+00, + 1.30810814e+01, 4.89189196e+00, 5.48648643e+00, 4.32432413e+00, + 3.24324322e+00, 1.78378379e+00, 9.72972989e-01, 1.78378379e+00, + 2.64864874e+00, 1.05405402e+00, 2.89189196e+00, 3.59459448e+00, + 1.56756759e+00, 2.27027035e+00, 2.54054046e+00, 1.86486483e+00, + 8.91891897e-01, 2.16216207e+00, 5.40540552e+00, 8.78378391e+00, + 5.51351357e+00, 2.05405402e+00, 2.62162161e+00, 3.40540552e+00, + 2.21621633e+00, 3.67567563e+00, 1.78378379e+00, 2.35135126e+00, + 3.24324322e+00, 1.54054058e+00, 8.91891897e-01, 1.21621621e+00, + 2.43243241e+00, 9.45945919e-01, 7.56756783e-01, 4.05405402e-01, + 1.89189196e-01, 2.43243247e-01, 2.16216221e-01, 3.24324310e-01, + 5.67567587e-01, 2.32876718e-01, 4.10958916e-01, 6.30136967e-01, + 3.87671232e+00, 1.55890408e+01, 5.52054787e+00, 1.08219182e+00, + 3.56164396e-01, 2.72191772e+01, 7.71232891e+00, 3.41095901e+00, + 1.04931507e+01, 3.14246578e+01, 1.64109592e+01, 3.58904099e+00, + 3.08219171e+00, 1.36342468e+02, 5.78219185e+01, 2.30136991e+00, + 9.47945213e+00, 1.11972603e+02, 3.56164398e+01, 2.65753436e+00, + 1.23698626e+01, 4.35616455e+01, 1.64246578e+01, 3.47945213e+00, + 1.01643839e+01, 1.18931503e+02, 3.85479469e+01, 2.94520545e+00, + 1.40410957e+01, 4.24657524e-01, 5.47945201e-01, 9.72602725e-01, + 2.72602749e+00, 1.62739735e+01, 9.31506824e+00, 2.06849313e+00, + 7.67123282e-01, 9.60273933e+00, 6.32876730e+00, 4.27397251e+00, + 1.06438360e+01, 3.93698616e+01, 2.81095886e+01, 6.05479431e+00, + 2.75342464e+00, 1.34917801e+02, 1.21917809e+02, 4.38356161e+00, + 8.31506824e+00, 7.80273972e+01, 5.25890427e+01, 4.43835640e+00, + 4.53424644e+00, 7.12876740e+01, 6.64794540e+01, 6., + 5.08219194e+00, 1.24657532e+02, 1.21726028e+02, 3.32876706e+00, + 5.58904123e+00, 4.52054799e-01, 5.06849289e-01, 8.63013685e-01, + 2.16438365e+00, 1.16164379e+01, 1.08082190e+01, 2.61643839e+00, + 8.21917832e-01, 2.09589052e+00, 2.28767133e+00, 3.10958910e+00, + 7.57534266e+00, 3.90136986e+01, 3.78904114e+01, 7.94520569e+00, + 2.63013697e+00, 7.06301346e+01, 1.06438354e+02, 4.94520569e+00, + 8.53424644e+00, 3.76986313e+01, 3.63972588e+01, 7.42465734e+00, + 3.38356161e+00, 7.57260284e+01, 1.33424652e+02, 8.56164360e+00, + 2.93150687e+00, 7.30273972e+01, 1.32205475e+02, 7.56164360e+00, + 2.63013697e+00, 6.98630154e-01, 6.84931517e-01, 1., + 1.87671232e+00, 5.24657536e+00, 7.67123270e+00, 2.45205474e+00, + 1.06849313e+00, 1.16438353e+00, 1.53424656e+00, 2.28767133e+00, + 4.50684929e+00, 2.36849308e+01, 3.46712341e+01, 9.94520569e+00, + 2.10958910e+00, 5.41095877e+00, 1.53150682e+01, 2.78082180e+00, + 5.78082180e+00, 3.06301365e+01, 4.34931488e+01, 1.10821915e+01, + 2.36986303e+00, 2.00136986e+01, 1.27657532e+02, 1.35205479e+01, + 2.91780829e+00, 1.56575346e+01, 4.91643829e+01, 8.45205498e+00, + 1.76712334e+00, 7.20909119e+01, 6.09818192e+01, 4.19999981e+00, + 3.38181829e+00, 1.72727280e+01, 1.59090910e+01, 4.30909109e+00, + 2.32727265e+00, 8.11454544e+01, 8.57090912e+01, 5.05454540e+00, + 3.32727265e+00, 1.02963638e+02, 1.16472725e+02, 3.09090900e+00, + 3.76363635e+00, 2.99090900e+01, 3.49454536e+01, 1.55090914e+01, + 4.41818190e+00, 2.66000004e+01, 4.54727287e+01, 1.89090908e+00, + 7.38181829e+00, 2.33818188e+01, 4.18363647e+01, 2.31090908e+01, + 4.01818180e+00, 1.63636363e+00, 1.76363635e+00, 2.70909095e+00, + 5.27272749e+00, 1.81090908e+01, 3.22545471e+01, 2.54545450e+00, + 4.07272720e+00, 1.49272728e+01, 2.37818184e+01, 1.05454550e+01, + 2.41818190e+00, 7.58545456e+01, 1.34636368e+02, 8.94545460e+00, + 2.79999995e+00, 3.79818192e+01, 1.01909088e+02, 9.16363621e+00, + 3.23636365e+00, 1.95454540e+01, 9.66909103e+01, 1.73090916e+01, + 3.40000010e+00, 3.81818199e+01, 1.33690903e+02, 2.42727280e+01, + 2.96363640e+00, 1.46727276e+01, 4.13272743e+01, 2.61818180e+01, + 5.61818171e+00, 4.43636370e+00, 4.10363655e+01, 1.57454548e+01, + 3.01818180e+00, 1.65454543e+00, 2.38181829e+00, 2.20000005e+00, + 3.01818180e+00, 1.35818186e+01, 3.12545452e+01, 1.38909092e+01, + 2.78181815e+00, 1.05818186e+01, 9.79090881e+01, 1.23090906e+01, + 4., 1.38545456e+01, 3.85999985e+01, 1.79090900e+01, + 3.01818180e+00, 8.10909081e+00, 1.34709091e+02, 6.50181808e+01, + 2.43636370e+00, 8.96363640e+00, 1.11254547e+02, 3.53272743e+01, + 1.96363640e+00, 4., 9.20181808e+01, 6.56363602e+01, + 2.34545445e+00, 2.98181820e+00, 1.19854546e+02, 9.91999969e+01, + 2.47272730e+00, 1.32727277e+00, 1.10909092e+00, 1.61818182e+00, + 2.58181810e+00, 7.92727280e+00, 2.14181824e+01, 1.01818180e+01, + 2.70909095e+00, 1.29090905e+00, 2.05454540e+00, 1.89090908e+00, + 2.69090915e+00, 1.04181814e+01, 2.94909096e+01, 1.84181824e+01, + 3.40000010e+00, 1.27272725e+00, 3.78727264e+01, 1.96181812e+01, + 2.21818185e+00, 1.02727270e+01, 3.15818176e+01, 2.00727272e+01, + 3.58181810e+00, 1.38181818e+00, 7.78181839e+01, 7.86909103e+01, + 1.79999995e+00, 3.70909095e+00, 2.53636360e+01, 2.29272728e+01, + 3.54545450e+00, 5.18604660e+01, 5.35348854e+01, 6.20697670e+01, + 5.43720932e+01, 4.02558136e+01, 3.56511612e+01, 5.94418602e+01, + 6.61627884e+01, 6.51162796e+01, 6.84651184e+01, 6.46279068e+01, + 6.19767456e+01, 62., 4.83720932e+01, 5.06279068e+01, + 5.76976738e+01, 4.10930214e+01, 4.36511612e+01, 4.58837204e+01, + 5.03720932e+01, 4.75813942e+01, 4.10232544e+01, 3.77674408e+01, + 3.33023262e+01, 4.23255825e+00, 4.67441845e+00, 6., + 6.18604660e+00, 4.30232573e+00, 4.23255825e+00, 3.46511626e+00, + 2.25581384e+00, 6.15813942e+01, 7.06046524e+01, 7.27674408e+01, + 6.26279068e+01, 5.02790680e+01, 4.78372078e+01, 4.45813942e+01, + 5.36046524e+01, 8.21162796e+01, 7.66511612e+01, 7.66976776e+01, + 7.76511612e+01, 6.87441864e+01, 5.71162796e+01, 5.44186058e+01, + 6.91627884e+01, 5.04418602e+01, 5.33255806e+01, 6.76744156e+01, + 6.89767456e+01, 5.94186058e+01, 4.90232544e+01, 3.97441864e+01, + 4.35581398e+01, 5.34883738e+00, 6.30232573e+00, 8.41860485e+00, + 7.23255825e+00, 5.48837233e+00, 4.30232573e+00, 4.97674417e+00, + 4.09302330e+00, 5.13488388e+01, 5.28372078e+01, 4.57441864e+01, + 3.98837204e+01, 3.73255806e+01, 3.19069767e+01, 3.13488369e+01, + 3.67441864e+01, 5.89302330e+01, 6.16744194e+01, 6.51860428e+01, + 6.36976738e+01, 5.76279068e+01, 3.68372078e+01, 3.42093010e+01, + 3.79302330e+01, 4.54883728e+01, 4.24883728e+01, 4.69302330e+01, + 5.29069786e+01, 4.69302330e+01, 2.65116272e+01, 2.35116272e+01, + 2.98372097e+01, 5.20930243e+00, 4.04651165e+00, 4.58139515e+00, + 3.51162791e+00, 3.65116286e+00, 1.95348835e+00, 3.23255825e+00, + 3.74418616e+00, 5.93023252e+00, 6.72093010e+00, 5.88372087e+00, + 4.65116262e+00, 4.90697670e+00, 3.55813956e+00, 3.67441869e+00, + 3.83720922e+00, 7.18604660e+00, 9.79069805e+00, 9.55813980e+00, + 9.09302330e+00, 8.16279030e+00, 4.18604660e+00, 4.55813932e+00, + 3.83720922e+00, 7.09302330e+00, 5.67441845e+00, 4.13953495e+00, + 5.02325583e+00, 5.09302330e+00, 2.95348835e+00, 2.86046505e+00, + 4.20930243e+00, 8.60465109e-01, 4.65116292e-01, 1.62790701e-01, + 6.97674453e-02, 9.30232555e-02, 6.97674453e-02, 2.32558146e-01, + 3.72093022e-01, 3.50877190e+00, 1.19298244e+00, 2.68421054e+00, + 1.01754389e+01, 3.17543864e+00, 2.61403513e+00, 5.49122810e+00, + 2.91228080e+00, 2.43859649e+00, 1.47368419e+00, 2.08771920e+00, + 5.33333349e+00, 3.85964918e+00, 3.70175433e+00, 3.50877190e+00, + 3.63157892e+00, 2.35087729e+00, 2.28070164e+00, 3.82456136e+00, + 4.57894754e+00, 2.85964918e+00, 3.66666675e+00, 4.71929836e+00, + 4.33333349e+00, 1.82456136e+00, 3.91228080e+00, 4.56140327e+00, + 4.17543840e+00, 1.80701756e+00, 2.42105269e+00, 4.66666651e+00, + 3., 1.13684206e+01, 4.26315784e+00, 1.05263157e+01, + 2.69473686e+01, 8.77192974e+00, 7.84210539e+00, 1.52982454e+01, + 1.84912281e+01, 7.15789461e+00, 4.43859673e+00, 1.81052628e+01, + 2.92807026e+01, 9.43859673e+00, 8.07017517e+00, 3.50350876e+01, + 4.24035072e+01, 4.17543840e+00, 5.29824543e+00, 2.72631588e+01, + 27., 7.77192974e+00, 1.30701752e+01, 9.69824524e+01, + 6.11052628e+01, 5.24561405e+00, 1.26842108e+01, 2.38421059e+01, + 1.23859653e+01, 4.61403513e+00, 2.96491222e+01, 93., + 3.00175438e+01, 1.86666660e+01, 4.56140327e+00, 1.75614033e+01, + 3.66315804e+01, 1.16842108e+01, 5.91228056e+00, 2.84561405e+01, + 7.66842117e+01, 2.27543869e+01, 4.56140327e+00, 2.60175438e+01, + 3.97894745e+01, 1.07368422e+01, 6.26315784e+00, 1.12649124e+02, + 1.41824554e+02, 1.26842108e+01, 9.78947353e+00, 2.91578941e+01, + 2.42631588e+01, 7.01754379e+00, 2.06842098e+01, 1.39631577e+02, + 1.26561401e+02, 9.12280655e+00, 1.48421049e+01, 2.47719307e+01, + 1.38596487e+01, 1.05964909e+01, 6.98245621e+01, 1.28087723e+02, + 3.75964928e+01, 6.78421021e+01, 8.22807026e+00, 1.17192984e+01, + 2.48771935e+01, 1.44210529e+01, 7.70175457e+00, 4.44210510e+01, + 1.19929825e+02, 4.94035072e+01, 1.16491232e+01, 1.61228065e+01, + 2.55789471e+01, 1.85087719e+01, 1.08771935e+01, 6.15438614e+01, + 1.26333336e+02, 2.24210529e+01, 1.62280693e+01, 1.89298248e+01, + 1.63508778e+01, 1.61754379e+01, 1.66842098e+01, 4.87368431e+01, + 5.29649124e+01, 1.61578941e+01, 1.23508768e+01, 1.54385967e+01, + 2.28947372e+01, 2.04736843e+01, 2.91754379e+01, 3.84210510e+01, + 1.99824562e+01, 7.77777791e-01, 1.11111112e-01, 3.33333343e-01, + 5.92592597e-01, 1.85185184e+01, 2.28888893e+01, 9.62962985e-01, + 1., 2.62962961e+00, 0., 3.70370373e-02, 3.70370373e-02, + 8.81481457e+00, 1.84444447e+01, 4.14814806e+00, 5.92592573e+00, + 9.25925910e-01, 0., 0., 0., 1.40740740e+00, 5.70370388e+00, + 2.55555558e+00, 2.74074078e+00, 6.25925922e+00, 8.88888896e-01, + 1.48148149e-01, 0., 7.40740746e-02, 2.59259254e-01, + 1.48148149e-01, 4.44444448e-01, 1.05555553e+01, 2.48148155e+00, + 3.66666675e+00, 1.05925922e+01, 7.77407379e+01, 1.07222221e+02, + 2.77777786e+01, 2.33333340e+01, 2.08518524e+01, 1., + 1.55555558e+00, 7.77777767e+00, 6.15555573e+01, 1.28962967e+02, + 9.45185165e+01, 9.07777786e+01, 7.07407427e+00, 1.85185179e-01, + 3.70370358e-01, 1.25925922e+00, 5.02962952e+01, 1.03444443e+02, + 3.09259262e+01, 3.15555553e+01, 4.42592583e+01, 3.81481481e+00, + 1.25925922e+00, 1.03703701e+00, 4.81481504e+00, 11., + 4.33333349e+00, 4.40740728e+00, 2.81851845e+01, 9.40740776e+00, + 8.37036991e+00, 3.11851845e+01, 4.69259262e+01, 4.25185204e+01, + 2.34074078e+01, 3.79259262e+01, 2.14074078e+01, 6.22222233e+00, + 1.22592592e+01, 3.21851845e+01, 5.34444427e+01, 9.58518524e+01, + 8.11111145e+01, 8.17407379e+01, 6.48148155e+00, 1.85185182e+00, + 4.77777767e+00, 1.41851854e+01, 9.13333359e+01, 1.32111115e+02, + 91., 2.98888893e+01, 4.28148155e+01, 3.14814806e+00, + 5.18518507e-01, 4.81481493e-01, 1.05555553e+01, 6.29629631e+01, + 1.11666664e+02, 1.52962961e+01, 4.04814796e+01, 1.93333340e+01, + 7.92592573e+00, 2.48888893e+01, 4.63703690e+01, 2.45185184e+01, + 6.11111116e+00, 3.04814816e+01, 3.17407398e+01, 1.08148146e+01, + 9.59259224e+00, 3.52222214e+01, 2.55185184e+01, 1.42222223e+01, + 1.57037039e+01, 4.37777786e+01, 1.61481476e+01, 5.74074078e+00, + 4.18518496e+00, 1.64444447e+01, 2.64444447e+01, 5.24814796e+01, + 6.55185165e+01, 2.90370369e+01, 1.19629631e+01, 5.77777767e+00, + 2.33333325e+00, 1.51851857e+00, 6.62962961e+00, 3.71111107e+01, + 1.03740738e+02, 2.72962971e+01, 5.46666670e+00, 2.62222219e+00, + 8.22222233e+00, 1.25688889e+02, 8.25999985e+01, 4.77777767e+00, + 3.33333325e+00, 6.68888903e+00, 1.16444445e+01, 6.17777777e+00, + 3.43777771e+01, 9.01999969e+01, 1.63999996e+01, 3.26666665e+00, + 1.89555550e+01, 3.05111103e+01, 8.88888931e+00, 1.21111107e+01, + 4.23333321e+01, 2.88444443e+01, 1.05555553e+01, 2.26888885e+01, + 5.37555542e+01, 3.17333336e+01, 5.77777767e+00, 2.96000004e+01, + 2.60444450e+01, 6.53333330e+00, 7.64444447e+00, 1.87333336e+01, + 2.01333332e+01, 6.19999981e+00, 8.39999962e+00, 3.08888888e+00, + 1.62222219e+00, 71., 126., 1.32666664e+01, 2.13333344e+00, + 7.28888893e+00, 4.27333336e+01, 2.23111115e+01, 2.66444435e+01, + 3.14444447e+01, 2.76444435e+01, 5.77777767e+00, 1.72666664e+01, + 4.84666672e+01, 2.95777779e+01, 2.61111107e+01, 6.02222214e+01, + 4.87555542e+01, 2.98222218e+01, 2.96000004e+01, 5.57333336e+01, + 5.79555550e+01, 1.06888885e+01, 1.35111113e+01, 2.31777782e+01, + 1.92666664e+01, 2.26222229e+01, 3.39333344e+01, 2.89555550e+01, + 1.45555553e+01, 7.66666651e+00, 5.06666660e+00, 1.51111114e+00, + 7.04444456e+00, 1.26488892e+02, 1.04466667e+02, 3.31111121e+00, + 3.57777786e+00, 3.54222221e+01, 2.34444447e+01, 1.20222225e+01, + 1.20888891e+01, 2.75333328e+01, 3.15111103e+01, 1.17111111e+01, + 2.04888897e+01, 3.31333351e+01, 2.36222229e+01, 2.74888897e+01, + 2.69111118e+01, 1.35111113e+01, 1.11999998e+01, 3.26666679e+01, + 5.01777763e+01, 2.06000004e+01, 8.15555573e+00, 1.42666664e+01, + 3.04222221e+01, 3.12666664e+01, 2.42000008e+01, 4.23555565e+01, + 4.95777779e+01, 3.26666665e+00, 4.53333330e+00, 1.55555558e+00, + 2.46666670e+00, 7.23777771e+01, 1.29088882e+02, 1.53555555e+01, + 1.86666667e+00, 1.54222221e+01, 1.73555565e+01, 1.03555555e+01, + 3.42222214e+00, 1.73555565e+01, 1.13199997e+02, 5.26444435e+01, + 9.37777805e+00, 2.86444435e+01, 3.64444427e+01, 4.47333336e+01, + 2.24444447e+01, 6.73333311e+00, 2.36222229e+01, 6.64666672e+01, + 4.85777779e+01, 1.46000004e+01, 1.42222223e+01, 4.58222237e+01, + 5.24666672e+01, 1.81111107e+01, 9.62222195e+00, 6.40666656e+01, + 7.10222244e+01, 1.58974361e+00, 1.08461542e+01, 6.79487181e+00, + 3.58974367e-01, 1.69230771e+00, 3.21794853e+01, 6.74615402e+01, + 7.48717928e+00, 1.69743595e+01, 6.21794853e+01, 5.53846169e+00, + 1.02564104e-01, 2.28205132e+00, 5.27179489e+01, 4.29487190e+01, + 3.64102554e+00, 7.00769196e+01, 1.08307693e+02, 4.43589735e+00, + 1.41025639e+00, 1.12820511e+01, 3.41794853e+01, 9.87179470e+00, + 4.10256433e+00, 4.92307701e+01, 7.49743576e+01, 8.15384579e+00, + 1.79487181e+00, 13., 1.80512829e+01, 2.69230771e+00, + 3.82051277e+00, 2.74358964e+00, 8., 7.58974361e+00, + 9.23076928e-01, 2.82051277e+00, 4.94871788e+01, 9.11794891e+01, + 1.39487181e+01, 9.58974361e+00, 2.16923084e+01, 2.05128217e+00, + 7.69230798e-02, 7.48717928e+00, 1.07948715e+02, 7.63589706e+01, + 5., 108., 9.12051315e+01, 8.46153855e-01, 7.17948735e-01, + 3.01025639e+01, 8.63846130e+01, 2.16153851e+01, 6.17948723e+00, + 9.95641022e+01, 8.57179489e+01, 5.97435904e+00, 3.33333325e+00, + 4.28974342e+01, 3.26666679e+01, 4.41025639e+00, 5.61538458e+00, + 6.43589735e+00, 4.76923084e+00, 3.23076916e+00, 1.82051277e+00, + 6.35897446e+00, 3.46923065e+01, 4.21025658e+01, 1.68461533e+01, + 7.15384626e+00, 8.43589783e+00, 1.84615386e+00, 1.02564108e+00, + 1.92564106e+01, 8.28974380e+01, 4.84871788e+01, 8.30769253e+00, + 83., 2.79743595e+01, 1.28205135e-01, 3.28205132e+00, + 6.38717957e+01, 9.98717957e+01, 2.05128212e+01, 9.28205109e+00, + 1.18641029e+02, 4.76153831e+01, 3.61538458e+00, 8.35897446e+00, + 7.15128174e+01, 2.43846149e+01, 2.35897446e+00, 1.12307692e+01, + 7.69230747e+00, 3.97435904e+00, 3.28205132e+00, 4.07692289e+00, + 8.07692337e+00, 15., 1.89743595e+01, 1.64102573e+01, + 8.64102554e+00, 3.74358964e+00, 1.51282048e+00, 7.38461542e+00, + 2.64358978e+01, 3.82051277e+01, 1.74871788e+01, 1.07435894e+01, + 4.98461533e+01, 2.84615374e+00, 1.53846160e-01, 1.68205128e+01, + 8.23076935e+01, 5.07948723e+01, 8.69230747e+00, 1.83846149e+01, + 1.07538460e+02, 1.16923075e+01, 1.66666663e+00, 21., + 7.68205109e+01, 1.04615383e+01, 1.76923072e+00, 2.66410255e+01, + 3.48125000e+01, 1.59375000e+01, 6.20833349e+00, 4.33333349e+00, + 1.45833330e+01, 2.37708340e+01, 1.79166660e+01, 1.92500000e+01, + 3.04583340e+01, 1.19583330e+01, 5.33333349e+00, 2.02708340e+01, + 8.32083359e+01, 3.80416679e+01, 1.11875000e+01, 1.96875000e+01, + 2.96041660e+01, 1.27708330e+01, 4.14583349e+00, 3.12500000e+01, + 8.06041641e+01, 9.54166698e+00, 3.87500000e+00, 1.17708330e+01, + 5.97916651e+00, 2.35416675e+00, 1.39583337e+00, 5.72916651e+00, + 8.41666698e+00, 1.89583337e+00, 1.85416663e+00, 2.93750000e+00, + 56., 50., 2.52500000e+01, 2.37083340e+01, 2.41666660e+01, + 2.76875000e+01, 2.35625000e+01, 2.79583340e+01, 3.72291679e+01, + 1.26666670e+01, 2.02916660e+01, 1.05270836e+02, 1.10562500e+02, + 2.68958340e+01, 1.73125000e+01, 3.74375000e+01, 4.14166679e+01, + 1.27500000e+01, 9.37500000e+00, 6.16666679e+01, 7.33333359e+01, + 6.33333349e+00, 5.20833349e+00, 2.58958340e+01, 8.64583302e+00, + 2.75000000e+00, 2.04166675e+00, 3.35416675e+00, 4.60416651e+00, + 2.18750000e+00, 2.79166675e+00, 6.97916651e+00, 1.06604164e+02, + 7.26458359e+01, 2.82083340e+01, 3.56666679e+01, 7.18333359e+01, + 3.55000000e+01, 3.21458321e+01, 4.26875000e+01, 4.93541679e+01, + 1.40833330e+01, 2.50833340e+01, 1.03645836e+02, 1.28583328e+02, + 3.74583321e+01, 1.44375000e+01, 3.87708321e+01, 4.24166679e+01, + 1.02291670e+01, 7.97916651e+00, 3.33958321e+01, 3.11041660e+01, + 7.70833349e+00, 7.18750000e+00, 3.46666679e+01, 5.20833349e+00, + 2.79166675e+00, 2.43750000e+00, 2.08333325e+00, 2.85416675e+00, + 2.64583325e+00, 2.87500000e+00, 4.56250000e+00, 1.36625000e+02, + 6.13958321e+01, 5.95833349e+00, 1.92708340e+01, 9.15416641e+01, + 2.82708340e+01, 5.45833349e+00, 1.94375000e+01, 6.31041679e+01, + 2.60625000e+01, 5.52083349e+00, 3.03333340e+01, 1.33479172e+02, + 4.91666679e+01, 3.70833325e+00, 1.89791660e+01, 3.06041660e+01, + 1.63750000e+01, 6.22916651e+00, 7.29166651e+00, 2.44583340e+01, + 1.05416670e+01, 3.02083325e+00, 1.51875000e+01, 2.77083325e+00, + 3.85416675e+00, 2.60416675e+00, 2.06250000e+00, 2.12500000e+00, + 1.56250000e+00, 1.29166663e+00, 1.75000000e+00, 2.40392151e+01, + 1.01960785e+02, 3.40980377e+01, 4.88235283e+00, 4.13725471e+00, + 1.35098038e+01, 5.21568632e+00, 2.64705873e+00, 5.60392151e+01, + 9.54705887e+01, 3.50392151e+01, 1.26862745e+01, 8.68627453e+00, + 1.98039207e+01, 4.58823538e+00, 5.33333349e+00, 2.80196075e+01, + 6.32156868e+01, 3.35098038e+01, 7.58823538e+00, 4.58823538e+00, + 6.74509811e+00, 4.90196085e+00, 6.98039198e+00, 2.38627453e+01, + 4.20196075e+01, 1.49215689e+01, 3.27450991e+00, 2.09803915e+00, + 2.35294127e+00, 3.74509811e+00, 6.84313726e+00, 7.74705887e+01, + 6.40196075e+01, 5.52941179e+00, 5.72549009e+00, 2.96274509e+01, + 3.79607849e+01, 1.68039207e+01, 1.46470585e+01, 1.15078430e+02, + 8.70784302e+01, 1.67647057e+01, 1.44901962e+01, 4.28039207e+01, + 3.28627434e+01, 9.78431416e+00, 1.60980396e+01, 6.86078415e+01, + 7.16078415e+01, 3.77647057e+01, 1.56470585e+01, 2.46078434e+01, + 1.56666670e+01, 1.22745094e+01, 1.89019604e+01, 4.90980377e+01, + 5.74901962e+01, 1.68431377e+01, 2.43137264e+00, 1.37254906e+00, + 2.33333325e+00, 7.23529434e+00, 1.62941170e+01, 9.24901962e+01, + 3.29803925e+01, 1.43137255e+01, 3.34901962e+01, 5.95490189e+01, + 2.54509811e+01, 8.74509811e+00, 3.15098038e+01, 1.21294121e+02, + 3.83137245e+01, 1.66078434e+01, 2.62549019e+01, 6.57647095e+01, + 2.25294113e+01, 1.03137255e+01, 5.40392151e+01, 8.38823547e+01, + 4.31176453e+01, 3.05098038e+01, 1.95490189e+01, 4.51764717e+01, + 2.65294113e+01, 2.65882359e+01, 4.88627434e+01, 6.41960754e+01, + 4.07843132e+01, 1.17450981e+01, 1.98039210e+00, 4.23529434e+00, + 5.25490189e+00, 1.48627453e+01, 4.09019623e+01, 5.27843132e+01, + 1.28039217e+01, 1.40980396e+01, 2.50980396e+01, 1.77450981e+01, + 3.05882359e+00, 1.02352943e+01, 7.65098038e+01, 8.96470566e+01, + 1.57254906e+01, 1.55098038e+01, 2.89019604e+01, 3.72745094e+01, + 1.25882349e+01, 2.30588226e+01, 1.00411766e+02, 4.65098038e+01, + 2.02156868e+01, 1.64117641e+01, 1.34313726e+01, 2.29215679e+01, + 1.39607840e+01, 3.53333321e+01, 6.49607849e+01, 4.57058830e+01, + 1.43725491e+01, 4.11764717e+00, 1.21568632e+00, 2.25490189e+00, + 2.90196085e+00, 1.51372547e+01, 4.88431358e+01, 3.42000008e+00, + 6.76399994e+01, 1.42699997e+02, 1.40600004e+01, 3.94000006e+00, + 2.55000000e+01, 9.51399994e+01, 1.72399998e+01, 4.88000011e+00, + 2.74200001e+01, 1.48580002e+02, 7.27600021e+01, 3.44000006e+00, + 1.18800001e+01, 1.08660004e+02, 4.67000008e+01, 1.23800001e+01, + 7.26000023e+00, 1.42039993e+02, 1.26980003e+02, 3.27999997e+00, + 5.48000002e+00, 6.69199982e+01, 6.25600014e+01, 2.33400002e+01, + 4.67999983e+00, 6.86200027e+01, 8.69599991e+01, 2.75999999e+00, + 3.20000005e+00, 2.42399998e+01, 6.27599983e+01, 6.05999994e+00, + 7.86000013e+00, 4.50400009e+01, 8.81999969e+00, 9.69999981e+00, + 3.69599991e+01, 6.05400009e+01, 23., 1.02399998e+01, + 5.76000023e+00, 5.16599998e+01, 1.78400002e+01, 8.11999989e+00, + 2.91599998e+01, 7.90999985e+01, 5.06800003e+01, 1.98400002e+01, + 4.67999983e+00, 1.99200001e+01, 1.41199999e+01, 4.65999985e+00, + 1.53800001e+01, 7.33199997e+01, 8.34400024e+01, 2.24400005e+01, + 5.36000013e+00, 4.42000008e+00, 3.42000008e+00, 2.14000010e+00, + 5.67999983e+00, 4.59599991e+01, 7.52799988e+01, 4.67999983e+00, + 1.46000004e+00, 1.17999995e+00, 1.84000003e+00, 4.84000015e+00, + 3.17999992e+01, 6.38400002e+01, 1.83199997e+01, 7.63999987e+00, + 2.42000008e+00, 9.59999979e-01, 1.39999998e+00, 4.13999987e+00, + 2.34599991e+01, 8.28399963e+01, 4.25400009e+01, 1.13800001e+01, + 2.75999999e+00, 6.80000007e-01, 1.01999998e+00, 2.24000001e+00, + 1.22799997e+01, 7.49199982e+01, 6.14199982e+01, 1.05799999e+01, + 3.35999990e+00, 1.75999999e+00, 1.15999997e+00, 1.65999997e+00, + 6.67999983e+00, 4.66399994e+01, 5.45200005e+01, 3.79999995e-01, + 2.59999990e-01, 1.19999997e-01, 5.99999987e-02, 2.39999995e-01, + 4., 8.18000031e+00, 2.01999998e+00, 5.00000000e-01, + 2.39999995e-01, 5.99999987e-02, 0., 2.00000003e-01, 4., + 1.36199999e+01, 4.63999987e+00, 1.08000004e+00, 2.59999990e-01, + 5.99999987e-02, 3.99999991e-02, 1.59999996e-01, 2.16000009e+00, + 1.36199999e+01, 6.15999985e+00, 1.29999995e+00, 1.40000001e-01, + 1.00000001e-01, 1.59999996e-01, 1.59999996e-01, 1.15999997e+00, + 8.73999977e+00, 6.98000002e+00, 4.03673477e+01, 2.10204086e+01, + 5.38775492e+00, 7.87755108e+00, 1.66734695e+01, 1.44489794e+01, + 4.20408154e+00, 1.30612249e+01, 1.06346939e+02, 5.32448997e+01, + 1.16734695e+01, 1.52040815e+01, 2.82857151e+01, 2.29183674e+01, + 1.45102043e+01, 6.17959175e+01, 2.37755108e+01, 1.71020412e+01, + 1.77346935e+01, 1.78571434e+01, 1.87959175e+01, 3.63673477e+01, + 3.05306129e+01, 2.68775501e+01, 1.36122446e+01, 1.84285717e+01, + 12., 4.59183693e+00, 1.76734695e+01, 6.58775482e+01, + 2.79387760e+01, 7.83673477e+00, 2.97959175e+01, 2.49795914e+01, + 2.32653069e+00, 3.75510216e+00, 2.34693871e+01, 32., + 6.10204077e+00, 3.69387746e+00, 1.22938774e+02, 1.25122452e+02, + 1.01020412e+01, 9.14285755e+00, 3.63469391e+01, 4.22448997e+01, + 1.11428576e+01, 1.96938782e+01, 5.29795914e+01, 6.34693871e+01, + 1.57755098e+01, 1.12653065e+01, 2.62448978e+01, 3.90408173e+01, + 2.55510197e+01, 2.05102043e+01, 1.84489803e+01, 1.50408163e+01, + 9.83673477e+00, 7.61224508e+00, 1.92448978e+01, 3.93061218e+01, + 2.71632652e+01, 1.51428576e+01, 6.51020432e+00, 8.67346954e+00, + 3.59183669e+00, 2.16326523e+00, 1.41020412e+01, 2.89795914e+01, + 8.24489784e+00, 3.57142854e+00, 7.38163300e+01, 1.24244896e+02, + 9.63265324e+00, 2.55102038e+00, 3.25102043e+01, 8.16326523e+01, + 1.36938772e+01, 4.51020432e+00, 6.55918350e+01, 1.32673462e+02, + 4.04897957e+01, 5.61224508e+00, 2.03877544e+01, 5.87959175e+01, + 2.10816326e+01, 9.38775539e+00, 1.58367348e+01, 5.60204086e+01, + 4.49183655e+01, 1.66938782e+01, 1.84081631e+01, 3.10408173e+01, + 3.28571434e+01, 1.52040815e+01, 4.16326523e+00, 4.51020432e+00, + 4.22448969e+00, 2.20408154e+00, 3.06122446e+00, 7.14285707e+00, + 4.63265324e+00, 3.67346931e+00, 14., 3.43265305e+01, + 7.30612230e+00, 3.20408154e+00, 1.46530609e+01, 4.82244911e+01, + 1.26530609e+01, 4.67346954e+00, 2.28775501e+01, 1.18020409e+02, + 5.11428566e+01, 4.14285707e+00, 1.23469391e+01, 6.26734695e+01, + 2.34081631e+01, 3.48979592e+00, 1.75918369e+01, 1.02102043e+02, + 9.92040787e+01, 1.67142849e+01, 1.06734695e+01, 3.32244911e+01, + 3.26122437e+01, 1.13061228e+01, 1.18421049e+01, 1.12105265e+01, + 4.87631569e+01, 4.27368431e+01, 7.47368431e+00, 6.65789461e+00, + 2.19210529e+01, 2.12105255e+01, 9.57894707e+00, 1.90526314e+01, + 7.73157883e+01, 3.95789490e+01, 8.18421078e+00, 1.53421049e+01, + 4.80789490e+01, 2.63421059e+01, 6.65789461e+00, 3.04210529e+01, + 7.23684235e+01, 1.94210529e+01, 8.50000000e+00, 2.13421059e+01, + 4.44736824e+01, 1.70526314e+01, 7.05263138e+00, 2.73157902e+01, + 3.22368431e+01, 8.05263138e+00, 6.39473677e+00, 1.32894735e+01, + 1.73684216e+01, 1.12105265e+01, 2.86842098e+01, 1.74473686e+01, + 5.40526314e+01, 5.50263176e+01, 1.70263157e+01, 1.52368422e+01, + 5.71052628e+01, 6.35263176e+01, 3.65789490e+01, 2.48157902e+01, + 5.85000000e+01, 3.90526314e+01, 2.28684216e+01, 3.92631569e+01, + 7.66052628e+01, 6.25263176e+01, 2.31315784e+01, 3.31578941e+01, + 5.12105255e+01, 2.99473686e+01, 28., 5.43947372e+01, + 5.89736824e+01, 3.46578941e+01, 1.65263157e+01, 3.14473686e+01, + 3.29736824e+01, 1.75526314e+01, 1.40263157e+01, 2.97894745e+01, + 3.47105255e+01, 1.92368412e+01, 4.02368431e+01, 4.35263176e+01, + 4.43157883e+01, 2.77105255e+01, 2.26842098e+01, 3.13684216e+01, + 4.21052628e+01, 5.38684196e+01, 4.11052628e+01, 4.07368431e+01, + 5.21842117e+01, 4.28947372e+01, 4.04473686e+01, 4.55263176e+01, + 4.47631569e+01, 3.96315804e+01, 2.79736843e+01, 2.54210529e+01, + 5.14736824e+01, 5.42105255e+01, 4.18157883e+01, 3.46052628e+01, + 3.86052628e+01, 3.10789471e+01, 2.19736843e+01, 1.79210529e+01, + 3.85789490e+01, 3.63421059e+01, 1.85526314e+01, 1.08157892e+01, + 2.79473686e+01, 2.87368412e+01, 2.05000000e+01, 5.30263176e+01, + 6.56315765e+01, 1.60789471e+01, 1.10526314e+01, 5.51052628e+01, + 6.65789490e+01, 2.41052628e+01, 1.45526314e+01, 5.59736824e+01, + 9.96842117e+01, 3.47631569e+01, 1.43684206e+01, 5.04736824e+01, + 9.12894745e+01, 2.64736843e+01, 7.31578970e+00, 1.82105255e+01, + 7.93157883e+01, 5.23947372e+01, 1.82368412e+01, 2.49736843e+01, + 9.53421021e+01, 4.57631569e+01, 1.07631578e+01, 8.36842060e+00, + 3.15263157e+01, 2.47631588e+01, 8.42105293e+00, 5.47368431e+00, + 5.19736824e+01, 6.08684196e+01, 7.55102062e+00, 1.42244902e+01, + 1.19591837e+01, 9.61224461e+00, 1.07346935e+01, 1.22653065e+01, + 1.39795914e+01, 1.27346935e+01, 9.83673477e+00, 1.03469391e+01, + 1.23673468e+01, 1.33877554e+01, 1.41020412e+01, 1.20204086e+01, + 1.24897957e+01, 1.29183674e+01, 9.95918369e+00, 9.06122494e+00, + 9.32653046e+00, 1.08367348e+01, 1.30612249e+01, 1.32653065e+01, + 1.43061228e+01, 1.60612240e+01, 6.77551031e+00, 7.18367338e+00, + 7.08163261e+00, 8.46938801e+00, 1.20408163e+01, 1.43673468e+01, + 1.21020412e+01, 1.21224489e+01, 9.83673477e+00, 6.23877563e+01, + 4.74897957e+01, 1.03469391e+01, 1.46530609e+01, 4.29183655e+01, + 3.58163261e+01, 1.68163261e+01, 1.57551022e+01, 4.50612259e+01, + 3.74897957e+01, 1.55306120e+01, 1.94489803e+01, 4.04897957e+01, + 3.79591827e+01, 2.52244892e+01, 1.93469391e+01, 2.52040825e+01, + 1.97959175e+01, 1.75510197e+01, 2.18367348e+01, 2.55918369e+01, + 3.02857151e+01, 2.72857151e+01, 1.26938772e+01, 1.31836739e+01, + 1.23061228e+01, 1.51020412e+01, 1.90612240e+01, 2.22244892e+01, + 2.01224499e+01, 1.92244892e+01, 9.04081631e+00, 1.02489799e+02, + 8.42244873e+01, 6.57142878e+00, 9.57142830e+00, 9.23673477e+01, + 6.86326523e+01, 8.16326523e+00, 9.26530647e+00, 1.09081635e+02, + 9.52857132e+01, 8.04081631e+00, 1.18571424e+01, 8.71836700e+01, + 6.42653046e+01, 1.36938772e+01, 1.14489794e+01, 7.77755127e+01, + 7.50816345e+01, 1.48163261e+01, 1.62040825e+01, 5.75306129e+01, + 4.93265305e+01, 2.31632652e+01, 1.06530609e+01, 3.62040825e+01, + 3.95714302e+01, 1.53877554e+01, 1.62653065e+01, 3.13469391e+01, + 2.91428566e+01, 2.06530609e+01, 7.79591846e+00, 6.25102043e+01, + 4.04285698e+01, 6.91836739e+00, 7.75510216e+00, 8.65918350e+01, + 6.65714264e+01, 6.95918369e+00, 7.44897938e+00, 9.83469391e+01, + 7.51428604e+01, 4.61224508e+00, 5.51020432e+00, 1.05265305e+02, + 9.37142868e+01, 1.14897957e+01, 6.12244892e+00, 9.73061218e+01, + 8.88775482e+01, 6.67346954e+00, 5.83673477e+00, 9.17755127e+01, + 8.59183655e+01, 1.52244902e+01, 6.24489784e+00, 7.60816345e+01, + 7.00816345e+01, 9.95918369e+00, 9.97959137e+00, 6.22040825e+01, + 5.23673477e+01, 1.30204086e+01, 3.07894731e+00, 1.27631581e+00, + 4.34210539e+00, 1.62763157e+01, 1.22894735e+01, 7.82894754e+00, + 4.10526323e+00, 1.47368419e+00, 2.63815784e+01, 2.32894731e+00, + 7.40789461e+00, 2.48026314e+01, 1.51184206e+01, 6.38157892e+00, + 8.46052647e+00, 5.07105255e+01, 4.05131569e+01, 2.48684216e+00, + 8.19736862e+00, 1.04907898e+02, 3.30789490e+01, 2.92105269e+00, + 1.02894735e+01, 1.19144737e+02, 8.39473724e+00, 3.21052623e+00, + 2.43815784e+01, 1.12105263e+02, 10., 1.93421054e+00, + 1.26052628e+01, 4.22763176e+01, 5.26315784e+00, 1.81578946e+00, + 5.19736862e+00, 2.23289471e+01, 1.97631588e+01, 5.07894754e+00, + 2.39473677e+00, 3.43421054e+00, 1.09960526e+02, 3.55263162e+00, + 5.55263138e+00, 5.10921059e+01, 5.23157883e+01, 5.22368431e+00, + 5.86842108e+00, 1.09276314e+02, 5.03026314e+01, 4.25000000e+00, + 4.85526323e+00, 1.26289474e+02, 1.11394737e+02, 4.26315784e+00, + 8.71052647e+00, 7.74736862e+01, 2.20131588e+01, 7.21052647e+00, + 6.38157892e+00, 3.39473686e+01, 7.42105246e+00, 3.42105269e+00, + 1.62236843e+01, 3.20526314e+01, 2.49868412e+01, 2.40789485e+00, + 3.32894731e+00, 1.55526314e+01, 2.10263157e+01, 6.76315784e+00, + 1.80263162e+00, 7.73684216e+00, 1.29368423e+02, 7.86842108e+00, + 2.80263162e+00, 5.56052628e+01, 1.15276314e+02, 6.44736862e+00, + 2.22368431e+00, 7.22236862e+01, 3.90526314e+01, 8.76315784e+00, + 3.39473677e+00, 7.32631607e+01, 1.19907898e+02, 6., + 7.31578970e+00, 3.08157902e+01, 3.67763176e+01, 1.07500000e+01, + 5.34210539e+00, 5.69736862e+00, 2.01315784e+00, 3.18421054e+00, + 1.51710529e+01, 4.23026314e+01, 3.21842117e+01, 3.98684216e+00, + 1.85526311e+00, 8.40789509e+00, 1.76447372e+01, 6.81578970e+00, + 1.60526311e+00, 3.51315784e+00, 1.23460526e+02, 2.49210529e+01, + 1.68421054e+00, 1.64736843e+01, 1.12671051e+02, 1.92105255e+01, + 1.55263162e+00, 1.55394735e+01, 3.25921059e+01, 1.11052628e+01, + 2.25000000e+00, 1.13026314e+01, 1.02355263e+02, 2.36842098e+01, + 4., 1.89868412e+01, 3.95921059e+01, 1.40657892e+01, + 2.76315784e+00, 2.60526323e+00, 1.35526311e+00, 1.68421054e+00, + 5.52631569e+00, 3.14078941e+01, 5.14433002e+00, 6.48453617e+00, + 3.82474232e+00, 2.89690733e+00, 5.53608227e+00, 1.00206184e+01, + 5.29896927e+00, 4.05154657e+00, 3.79381447e+01, 5.61134033e+01, + 13., 4.12371111e+00, 2.23711338e+01, 4.18041229e+01, + 1.11958761e+01, 9.11340237e+00, 1.16752579e+02, 1.19082474e+02, + 8.61855698e+00, 3.06185555e+00, 3.54742279e+01, 6.29381447e+01, + 1.35051546e+01, 1.34742270e+01, 3.20824738e+01, 3.83814430e+01, + 3., 5.77319574e+00, 9.48659821e+01, 1.19030930e+02, + 1.22061853e+01, 5.55670118e+00, 6.01030922e+00, 4.74226809e+00, + 3.71134019e+00, 3.63917518e+00, 4.81443310e+00, 6.15463924e+00, + 6.40206194e+00, 5.41237116e+00, 1.69175262e+01, 1.74123707e+01, + 8.98969078e+00, 5.60824728e+00, 2.12371140e+01, 3.25360832e+01, + 1.33092785e+01, 1.20618553e+01, 1.22845360e+02, 1.27412369e+02, + 6.08247423e+00, 4.15463924e+00, 4.53917542e+01, 5.98144341e+01, + 7.80412388e+00, 9.94845390e+00, 9.46494827e+01, 9.78659821e+01, + 4.56701040e+00, 6.69072151e+00, 9.13092804e+01, 1.08164948e+02, + 7.64948463e+00, 7.41237116e+00, 6.03092766e+00, 5.29896927e+00, + 4.19587612e+00, 3.73195887e+00, 3.18556690e+00, 3.77319598e+00, + 5.39175272e+00, 5.72164965e+00, 1.08041239e+01, 9.41237068e+00, + 7.95876312e+00, 6.47422695e+00, 1.37938147e+01, 1.62061863e+01, + 1.17525778e+01, 1.22061853e+01, 8.00927811e+01, 7.38659821e+01, + 5.82474232e+00, 5.09278345e+00, 4.37628860e+01, 5.22164955e+01, + 9.08247375e+00, 1.44329901e+01, 1.23268044e+02, 1.16577316e+02, + 6.70103073e+00, 6.60824728e+00, 5.40618553e+01, 6.57835083e+01, + 5.25773191e+00, 1.05567007e+01, 4.14433002e+00, 3.51546383e+00, + 3.73195887e+00, 3.58762884e+00, 2.55670094e+00, 2.77319598e+00, + 3.97938156e+00, 4.27835035e+00, 8.25773239e+00, 6.39175272e+00, + 5.70103073e+00, 4.80412388e+00, 6.91752577e+00, 8.04123688e+00, + 8.93814468e+00, 9.97938156e+00, 3.17319584e+01, 2.12061863e+01, + 5.37113380e+00, 4.38144350e+00, 2.35257740e+01, 2.89896908e+01, + 8.69072151e+00, 1.29072161e+01, 9.16082458e+01, 1.02278351e+02, + 5.55670118e+00, 4.52577305e+00, 2.80309277e+01, 3.44845352e+01, + 4.38144350e+00, 9.29896927e+00, 2.91836739e+00, 1.24795914e+01, + 2.31122456e+01, 6.41836739e+00, 1.69387758e+00, 1.31632650e+00, + 1.41836739e+00, 1.72448981e+00, 4.69387770e+00, 1.36530609e+01, + 1.84897957e+01, 5.62244892e+00, 2.34693885e+00, 2.67346931e+00, + 2.96938777e+00, 2.77551031e+00, 4.82653046e+00, 7.78571415e+00, + 9.73469353e+00, 4.96938753e+00, 3.70408154e+00, 4.23469400e+00, + 4.67346954e+00, 3.39795923e+00, 5.19387770e+00, 4.45918369e+00, + 4.21428585e+00, 3.25510216e+00, 3.36734700e+00, 2.40816331e+00, + 2.75510216e+00, 3.29591846e+00, 8.37755108e+00, 6.73367310e+01, + 1.17397957e+02, 2.70408173e+01, 3.62244892e+00, 4.14285707e+00, + 4.28571415e+00, 3.47959185e+00, 1.49285717e+01, 1.02306122e+02, + 1.18765305e+02, 2.00102043e+01, 3.68367338e+00, 3.57142854e+00, + 3.30612254e+00, 3.65306115e+00, 2.16326523e+01, 9.32142868e+01, + 7.83367310e+01, 1.54387751e+01, 7.08163261e+00, 6., + 5.89795923e+00, 7.61224508e+00, 1.77653065e+01, 3.47244911e+01, + 2.72551022e+01, 1.25816326e+01, 1.05408163e+01, 8.29591846e+00, + 9.55102062e+00, 1.14693880e+01, 1.14081631e+01, 9.93163300e+01, + 1.06265305e+02, 1.99795914e+01, 6.19387770e+00, 2.57142849e+01, + 2.59897957e+01, 5.84693861e+00, 2.20408173e+01, 1.19030609e+02, + 1.06918365e+02, 1.99897957e+01, 8.72449017e+00, 2.57040825e+01, + 1.57857141e+01, 9.16326523e+00, 4.06836739e+01, 1.27071426e+02, + 9.23469391e+01, 1.23367348e+01, 5.37755108e+00, 1.01836739e+01, + 6.15306139e+00, 9.47959137e+00, 3.85000000e+01, 9.59387741e+01, + 4.68265305e+01, 8.79591846e+00, 5.71428585e+00, 5.17346954e+00, + 5.66326523e+00, 1.02244902e+01, 2.06020412e+01, 8.23979568e+01, + 5.32244911e+01, 4.51020432e+00, 1.20612249e+01, 5.44591827e+01, + 3.87244911e+01, 6.88775492e+00, 34., 1.14765305e+02, + 4.54081650e+01, 8.81632614e+00, 1.54387751e+01, 5.01734695e+01, + 2.26020412e+01, 8.95918369e+00, 5.02244911e+01, 1.05816330e+02, + 3.45714302e+01, 9.69387722e+00, 1.30102043e+01, 3.11734695e+01, + 1.41428576e+01, 1.36326532e+01, 6.39285698e+01, 9.35204086e+01, + 2.44489803e+01, 4.03061247e+00, 3.71428561e+00, 5.68367338e+00, + 5.44897938e+00, 1.51122446e+01, 4.08461533e+01, 1.80256405e+01, + 2.63846149e+01, 2.78717957e+01, 1.86666660e+01, 2.22564106e+01, + 52., 6.63333359e+01, 2.30769234e+01, 1.78205128e+01, + 3.25641022e+01, 3.64615402e+01, 4.18205147e+01, 5.42307701e+01, + 5.52307701e+01, 3.37692299e+01, 21., 2.63589745e+01, + 3.56153831e+01, 2.99487171e+01, 1.89487171e+01, 32., + 4.85384598e+01, 3.42051277e+01, 1.48205128e+01, 1.76923084e+01, + 1.67692299e+01, 1.36410255e+01, 1.27692308e+01, 1.68205128e+01, + 2.03076916e+01, 1.55897436e+01, 4.67435913e+01, 7.06410294e+01, + 6.37948723e+01, 2.61538467e+01, 2.74358978e+01, 4.85641022e+01, + 4.16153831e+01, 3.84615402e+01, 2.13076916e+01, 3.45384598e+01, + 7.00512848e+01, 6.55897446e+01, 5.13589745e+01, 6.35384598e+01, + 6.03589745e+01, 2.78717957e+01, 2.29487171e+01, 2.76666660e+01, + 7.11282043e+01, 5.67692299e+01, 23., 2.23589745e+01, + 6.65128174e+01, 5.03076935e+01, 2.10512829e+01, 1.41282053e+01, + 2.07948723e+01, 2.19743595e+01, 1.26666670e+01, 5.64102554e+00, + 2.15384617e+01, 4.19230766e+01, 1.54102564e+01, 82., + 8.87948685e+01, 1.48974361e+01, 1.08205128e+01, 7.04871826e+01, + 9.96153870e+01, 2.05641022e+01, 8.23076916e+00, 5.50256424e+01, + 1.12512817e+02, 4.03846169e+01, 1.14615383e+01, 6.06410255e+01, + 1.12230766e+02, 3.65128212e+01, 1.36153851e+01, 2.28205128e+01, + 8.38717957e+01, 48., 8.25641060e+00, 2.03589745e+01, + 1.09794868e+02, 7.79743576e+01, 1.28205128e+01, 9.38461494e+00, + 2.17948723e+01, 1.64102573e+01, 6.76923084e+00, 5.94871807e+00, + 3.73333321e+01, 4.70256424e+01, 8.97435856e+00, 1.00769234e+01, + 1.34615383e+01, 6.94871807e+00, 8.33333302e+00, 2.32820511e+01, + 4.52307701e+01, 1.38461542e+01, 9.30769253e+00, 1.22820511e+01, + 2.33589745e+01, 10., 9.20512867e+00, 2.46923084e+01, + 6.80256424e+01, 2.09487171e+01, 1.16666670e+01, 1.26410255e+01, + 1.64358978e+01, 1.21025639e+01, 8.35897446e+00, 1.22820511e+01, + 4.85897446e+01, 2.83333340e+01, 5.46153831e+00, 5.66666651e+00, + 6.35897446e+00, 6.61538458e+00, 5.20512819e+00, 5.51282072e+00, + 1.16410255e+01, 1.22564106e+01, 7.08333313e-01, 2.54166675e+00, + 3.79166675e+00, 6.87500000e-01, 5.00000000e-01, 2.87500000e+00, + 3.06250000e+00, 6.66666687e-01, 8.75000000e-01, 2.54166675e+00, + 2.97916675e+00, 7.70833313e-01, 6.87500000e-01, 9.79166687e-01, + 7.08333313e-01, 5.62500000e-01, 5.41666687e-01, 1.02083337e+00, + 1.22916663e+00, 1.08333337e+00, 1., 8.95833313e-01, + 6.87500000e-01, 4.58333343e-01, 2.08333328e-01, 2.91666657e-01, + 7.08333313e-01, 1.22916663e+00, 1.08333337e+00, 6.25000000e-01, + 2.50000000e-01, 2.29166672e-01, 4.41666651e+00, 1.27916670e+01, + 2.41458340e+01, 6.66666651e+00, 7.16666651e+00, 4.13750000e+01, + 5.53958321e+01, 5.56250000e+00, 8.02083302e+00, 2.24166660e+01, + 2.91875000e+01, 7.02083349e+00, 8.54166698e+00, 2.96666660e+01, + 2.94166660e+01, 6.66666651e+00, 6.12500000e+00, 1.47083330e+01, + 2.39791660e+01, 9.25000000e+00, 7.22916651e+00, 9.18750000e+00, + 1.24166670e+01, 6.22916651e+00, 3.08333325e+00, 5.10416651e+00, + 15., 9.22916698e+00, 6.93750000e+00, 6.87500000e+00, + 8.47916698e+00, 6.27083349e+00, 1.65833340e+01, 2.56041660e+01, + 2.57916660e+01, 8.91666698e+00, 1.23541670e+01, 5.53541679e+01, + 8.05416641e+01, 2.35625000e+01, 2.07083340e+01, 3.54791679e+01, + 3.92291679e+01, 8.83333302e+00, 2.33125000e+01, 9.64375000e+01, + 1.27104164e+02, 3.61458321e+01, 5.85416651e+00, 2.35208340e+01, + 5.66250000e+01, 1.28750000e+01, 1.00416670e+01, 6.18541679e+01, + 1.38562500e+02, 2.18541660e+01, 1.68750000e+00, 1.21666670e+01, + 5.69583321e+01, 1.22500000e+01, 3.29166675e+00, 2.85416660e+01, + 1.33333328e+02, 1.63750000e+01, 1.83333340e+01, 2.35208340e+01, + 2.99166660e+01, 3.06875000e+01, 1.23541670e+01, 1.45833330e+01, + 1.92291660e+01, 2.27291660e+01, 3.46458321e+01, 5.78958321e+01, + 1.02812500e+02, 4.41666679e+01, 1.89375000e+01, 3.26041679e+01, + 6.32708321e+01, 3.33333321e+01, 1.14791670e+01, 4.50416679e+01, + 1.41833328e+02, 3.48750000e+01, 6.68750000e+00, 3.29166679e+01, + 116., 2.33333340e+01, 1.16666663e+00, 2.52500000e+01, + 1.44145828e+02, 22., 1.29166663e+00, 2.55208340e+01, + 1.20208336e+02, 1.12916670e+01, 3.21052628e+01, 6.12894745e+01, + 1.05789471e+01, 5.89473677e+00, 4.92105255e+01, 1.14368423e+02, + 2.66842098e+01, 8.71052647e+00, 2.10526314e+01, 6.28157883e+01, + 2.14210529e+01, 3., 3.05526314e+01, 9.21052628e+01, + 5.72894745e+01, 1.12105265e+01, 1.24210529e+01, 3.90789490e+01, + 1.42368422e+01, 3.52631569e+00, 7., 2.73947372e+01, + 2.39473686e+01, 9.73684216e+00, 4.31578970e+00, 6.81578970e+00, + 2.97368431e+00, 4.81578970e+00, 6.97368431e+00, 7.86842108e+00, + 1.03947372e+01, 5.92105246e+00, 7.38684235e+01, 7.63157883e+01, + 1.46052628e+01, 2.88157902e+01, 3.65526314e+01, 7.19210510e+01, + 3.60263176e+01, 2.98157902e+01, 1.47368422e+01, 3.30263176e+01, + 2.90263157e+01, 2.22631588e+01, 3.47894745e+01, 1.14657898e+02, + 1.02421051e+02, 2.63947372e+01, 1.73421059e+01, 5.85000000e+01, + 1.92368412e+01, 4.81578970e+00, 3.68421059e+01, 1.18894737e+02, + 6.14210510e+01, 1.08684206e+01, 1.80526314e+01, 4.52894745e+01, + 7.13157892e+00, 4.28947353e+00, 1.47631578e+01, 4.71315804e+01, + 1.26578951e+01, 3.47368431e+00, 1.03210526e+02, 6.68947372e+01, + 1.18421049e+01, 1.70789471e+01, 3.91315804e+01, 2.37105255e+01, + 9.34210491e+00, 2.93947372e+01, 1.99210529e+01, 2.21578941e+01, + 2.73421059e+01, 3.25789490e+01, 3.29473686e+01, 2.79736843e+01, + 2.93684216e+01, 2.22894745e+01, 1.24736843e+01, 2.09473686e+01, + 1.33684206e+01, 1.47105265e+01, 6.12105255e+01, 1.01552635e+02, + 2.10526314e+01, 9.13157940e+00, 2.65526314e+01, 4.67631569e+01, + 5., 2.63157892e+00, 4.33421059e+01, 9.92368393e+01, + 1.13684206e+01, 2.86842108e+00, 7.01578979e+01, 9.99210510e+01, + 7.13157892e+00, 4.86842108e+00, 2.90526314e+01, 3.76052628e+01, + 4.28947353e+00, 3.94736838e+00, 1.63421059e+01, 5.33157883e+01, + 2.93421059e+01, 1.31842108e+01, 2.28947372e+01, 2.49473686e+01, + 7., 5.60526323e+00, 1.16315794e+01, 2.14210529e+01, + 2.22894745e+01, 1.52894735e+01, 2.81052628e+01, 2.77368412e+01, + 1.19210529e+01, 1.12894735e+01, 1.44210529e+01, 1.34210529e+01, + 4.92105246e+00, 1.04473686e+01, 6.35263176e+01, 5.57894745e+01, + 6.68421030e+00, 6.34210539e+00, 1.77777779e+00, 1.75555551e+00, + 6.55555534e+00, 1.72888889e+01, 1.12222223e+01, 3.04444456e+00, + 2.15555549e+00, 1.86666667e+00, 9.35555553e+00, 2.11111116e+00, + 8.57777786e+00, 2.37111111e+01, 1.35111113e+01, 3.71111107e+00, + 7.93333340e+00, 5.32888870e+01, 8.08888912e+00, 1.77777779e+00, + 2.18444443e+01, 6.61555557e+01, 6.93333340e+00, 2.26666665e+00, + 5.31333351e+01, 1.27444443e+02, 2.68888879e+00, 2.59999990e+00, + 7.34888916e+01, 9.32444458e+01, 2.51111102e+00, 2.04444456e+00, + 6.23333321e+01, 7.85999985e+01, 9.60000038e+00, 2.31111121e+00, + 6.31111097e+00, 2.14888897e+01, 1.58444443e+01, 7.80000019e+00, + 7.82222223e+00, 2.46444435e+01, 5.73555565e+01, 2.82222223e+00, + 8.22222233e+00, 8.57111130e+01, 2.44888897e+01, 3.95555544e+00, + 1.44888887e+01, 1.27622223e+02, 2.09111118e+01, 4.19999981e+00, + 3.36888885e+01, 1.28044449e+02, 2.46222229e+01, 2.59999990e+00, + 2.34444447e+01, 1.05044441e+02, 1.37555552e+01, 5.75555563e+00, + 2.89777775e+01, 5.94888878e+01, 2.44444442e+00, 5.86666679e+00, + 2.84222221e+01, 2.81333332e+01, 6.44000015e+01, 2.62222219e+00, + 4.33333349e+00, 2.20666676e+01, 2.08666668e+01, 7.48888874e+00, + 7.84444427e+00, 7.03777771e+01, 7.95333328e+01, 3.66666675e+00, + 5.04444456e+00, 1.24844444e+02, 1.03733330e+02, 5.24444437e+00, + 9.48888874e+00, 1.04222221e+02, 3.26444435e+01, 8.31111145e+00, + 6.53333330e+00, 7.49333344e+01, 2.94444447e+01, 2.35555553e+00, + 1.63999996e+01, 3.96888885e+01, 2.95777779e+01, 5.59999990e+00, + 3.55555558e+00, 2.02222228e+00, 1.53333330e+00, 4.53333330e+00, + 2.59777775e+01, 4.49555550e+01, 9.88666687e+01, 3.20000005e+00, + 1.95555556e+00, 2.20444450e+01, 4.39555550e+01, 4.77777767e+00, + 1.62222219e+00, 4.24666672e+01, 5.76444435e+01, 5.82222223e+00, + 2.28888893e+00, 6.64666672e+01, 1.15555557e+02, 3.86666656e+00, + 3.51111102e+00, 2.99333324e+01, 4.04888878e+01, 1.06000004e+01, + 3.08888888e+00, 6.84444427e+00, 9.35555553e+00, 1.71111107e+00, + 1.00222225e+01, 3.65999985e+01, 3.80666656e+01, 7.77777767e+00, + 3.11111116e+00, 2.51111102e+00, 2.13333344e+00, 4.19999981e+00, + 1.46444445e+01, 4.02222214e+01, 6.74226809e+00, 9.31958771e+00, + 4.68762894e+01, 5.54845352e+01, 1.32577324e+01, 1.26494846e+01, + 2.01443291e+01, 2.21649475e+01, 1.01237116e+01, 6.48453617e+00, + 1.97216492e+01, 3.85773201e+01, 1.07731962e+01, 7.68041229e+00, + 3.24432983e+01, 5.37525787e+01, 4.91855659e+01, 3.57731962e+00, + 4.13402081e+00, 8.19587612e+00, 3.59793806e+00, 2.42268038e+00, + 3.47422676e+01, 1.44113403e+02, 5.67835045e+01, 2.79381442e+00, + 2.73195887e+00, 3.63917518e+00, 4.12371111e+00, 3.63917518e+00, + 2.05876293e+01, 1.33154633e+02, 3.78350520e+00, 3.74226809e+00, + 1.28969069e+01, 1.08453608e+01, 3.97938156e+00, 3.02164955e+01, + 1.43721649e+02, 6.19278336e+01, 6.93814421e+00, 2.67010307e+00, + 4.49484539e+00, 5.45360804e+00, 2.40206194e+00, 7.08247423e+00, + 1.50505157e+02, 1.49247421e+02, 2.22061863e+01, 3.75257730e+00, + 3.28865981e+00, 4.87628889e+00, 3.93814445e+00, 8.08247375e+00, + 1.08268044e+02, 1.51319580e+02, 1.85670109e+01, 6.30927849e+00, + 5.70103073e+00, 6.96907234e+00, 6.74226809e+00, 9.69072151e+00, + 3.38969078e+01, 7.79896927e+01, 4.83505154e+00, 2.31958771e+00, + 2.77319598e+00, 2.45360827e+00, 2.67010307e+00, 1.77731953e+01, + 1.33546387e+02, 6.58144302e+01, 1.06597939e+01, 5.30927849e+00, + 4.67010307e+00, 6.80412388e+00, 6.03092766e+00, 1.12783508e+01, + 1.13061859e+02, 1.03268044e+02, 1.42061853e+01, 9.46391773e+00, + 7.74226809e+00, 9.82474232e+00, 1.02061853e+01, 1.55154638e+01, + 4.45257721e+01, 5.65360832e+01, 9.98969078e+00, 7.29896927e+00, + 7.47422695e+00, 8.81443310e+00, 8.89690685e+00, 1.20927839e+01, + 1.65979385e+01, 1.83814430e+01, 2.82474232e+00, 1.22680414e+00, + 1.81443298e+00, 2.72164941e+00, 2.45360827e+00, 4.90721655e+00, + 1.44020615e+01, 1.04329901e+01, 5.03092766e+00, 2.41237116e+00, + 2.37113404e+00, 3.93814445e+00, 5.03092766e+00, 5.47422695e+00, + 1.04020615e+01, 1.18350515e+01, 5.34020615e+00, 4.68041229e+00, + 3.26804113e+00, 4.31958771e+00, 5.12371111e+00, 5.12371111e+00, + 7.41237116e+00, 8.02061844e+00, 4.46391773e+00, 4.09278345e+00, + 2.53608251e+00, 2.95876288e+00, 3.64948463e+00, 4.58762884e+00, + 4.96907234e+00, 5.23711348e+00, 2.50000000e+00, 3.46153855e+00, + 6.75000000e+00, 1.55576925e+01, 8.55769253e+00, 4.76923084e+00, + 4.42307711e+00, 1.92307687e+00, 3.34615374e+00, 3.07692313e+00, + 1.19423075e+01, 2.85576916e+01, 1.21923075e+01, 3.80769229e+00, + 4.69230747e+00, 1.10192308e+01, 2.94230771e+00, 2.69230771e+00, + 1.65384617e+01, 2.78269234e+01, 7.36538458e+00, 2.82692313e+00, + 3.55961533e+01, 7.90384598e+01, 1.86538458e+00, 2.34615374e+00, + 4.65384598e+01, 4.10576935e+01, 3.40384626e+00, 6.55769253e+00, + 8.70192337e+01, 7.89615402e+01, 3.75000000e+00, 3.09615374e+00, + 1.07692308e+01, 2.92307701e+01, 1.52500000e+01, 4.19230747e+00, + 2.46153855e+00, 8.50000000e+00, 1.92115383e+01, 2.59615374e+00, + 1.36730766e+01, 6.25384598e+01, 1.62500000e+01, 3.36538458e+00, + 1.45192308e+01, 1.21076920e+02, 9.11538506e+00, 2.71153855e+00, + 6.19423065e+01, 1.30423080e+02, 8.55769253e+00, 1.75000000e+00, + 45., 1.28826920e+02, 6.34615374e+00, 4.23076916e+00, + 9.95576935e+01, 1.16326920e+02, 3.11538458e+00, 4.57692289e+00, + 3.52692299e+01, 4.50384598e+01, 3.62307701e+01, 2.34615374e+00, + 8.73076916e+00, 2.95192299e+01, 1.76923084e+01, 3.51923084e+00, + 1.94230771e+00, 5.99807701e+01, 5.98461533e+01, 2.75000000e+00, + 9.78846169e+00, 1.27692307e+02, 6.45384598e+01, 2.40384626e+00, + 7.05769253e+00, 1.27711540e+02, 1.59038458e+01, 6.48076916e+00, + 2.18461533e+01, 1.26730766e+02, 2.64230766e+01, 3.40384626e+00, + 1.46923075e+01, 4.76153831e+01, 1.66346149e+01, 5.84615374e+00, + 8.90384579e+00, 1.53461542e+01, 2.38461542e+00, 5.44230747e+00, + 2.38461533e+01, 3.50576935e+01, 8.64807663e+01, 3.34615374e+00, + 3.15384626e+00, 3.10576916e+01, 3.80576935e+01, 3.11538458e+00, + 1.63461542e+00, 6.11153831e+01, 4.80384598e+01, 3.88461542e+00, + 2.61538458e+00, 1.12980766e+02, 1.12903847e+02, 3.67307687e+00, + 4.86538458e+00, 4.77115402e+01, 2.56730766e+01, 6.42307711e+00, + 4.76923084e+00, 1.67307701e+01, 1.06538458e+01, 4.80769253e+00, + 1.79615383e+01, 3.36923065e+01, 2.66923084e+01, 4.03846169e+00, + 1.80769229e+00, 1.23076928e+00, 1.21153843e+00, 3.57692313e+00, + 2.37115383e+01, 4.39230766e+01, 1.39733334e+01, 7.63999987e+00, + 7.58666658e+00, 1.10799999e+01, 1.63866673e+01, 1.92533340e+01, + 2.04933338e+01, 1.91466675e+01, 1.23199997e+01, 8.89333344e+00, + 1.16666670e+01, 1.69333324e+01, 2.33066673e+01, 2.44666672e+01, + 2.59866657e+01, 2.09333324e+01, 1.17600002e+01, 9.33333302e+00, + 1.26666670e+01, 1.75333328e+01, 2.12800007e+01, 2.18799992e+01, + 2.41733341e+01, 2.30666676e+01, 6.33333349e+00, 5.44000006e+00, + 7.85333347e+00, 1.09066668e+01, 1.05466671e+01, 9.13333321e+00, + 1.06133337e+01, 1.08933334e+01, 1.89333324e+01, 1.67600002e+01, + 1.61466675e+01, 2.26666660e+01, 3.52266655e+01, 3.33333321e+01, + 3.01333332e+01, 2.90666676e+01, 2.01866665e+01, 1.83866673e+01, + 2.03733330e+01, 3.08400002e+01, 3.84799995e+01, 37., + 3.54533348e+01, 2.95200005e+01, 1.94933338e+01, 1.72933331e+01, + 1.87733326e+01, 2.70400009e+01, 3.21066666e+01, 3.53866653e+01, + 3.88666649e+01, 3.26533318e+01, 9.81333351e+00, 8.38666630e+00, + 1.13733330e+01, 1.43466663e+01, 1.75866661e+01, 2.03733330e+01, + 2.08266659e+01, 1.57866669e+01, 1.71066666e+01, 5.22533340e+01, + 4.15200005e+01, 2.07866669e+01, 3.70933342e+01, 1.14586670e+02, + 9.48666687e+01, 2.39599991e+01, 1.82800007e+01, 3.43066673e+01, + 3.18533325e+01, 2.98266659e+01, 4.06933327e+01, 6.98799973e+01, + 6.32799988e+01, 33., 2.09733334e+01, 2.13999996e+01, + 2.24933338e+01, 3.43466682e+01, 3.59333344e+01, 3.43733330e+01, + 3.66266670e+01, 2.79066658e+01, 1.14266663e+01, 1.21066666e+01, + 1.49200001e+01, 1.63999996e+01, 1.58266668e+01, 1.77066669e+01, + 1.74133339e+01, 1.37333336e+01, 9.39999962e+00, 8.42533340e+01, + 6.31333351e+01, 9.54666710e+00, 1.64533329e+01, 1.53919998e+02, + 1.40306671e+02, 1.29600000e+01, 1.31599998e+01, 6.71600037e+01, + 5.17466660e+01, 1.82133331e+01, 3.22133331e+01, 1.52399994e+02, + 1.37173340e+02, 1.34666662e+01, 1.45466671e+01, 3.67733345e+01, + 3.00533333e+01, 2.62266674e+01, 4.10266685e+01, 1.02413330e+02, + 6.56933365e+01, 1.68400002e+01, 7.98666668e+00, 1.08533335e+01, + 1.40933332e+01, 1.31066666e+01, 1.42533331e+01, 1.60799999e+01, + 1.90133343e+01, 1.33333330e+01, 7.44000006e+00, 3.97999992e+01, + 1.28400002e+01, 1.91999996e+00, 7.48000002e+00, 93., + 2.13999996e+01, 3.03999996e+00, 9.72000027e+00, 2.99200001e+01, + 1.45600004e+01, 4., 1.16800003e+01, 2.84799995e+01, + 1.28000002e+01, 9.07999992e+00, 6.40000010e+00, 1.13999996e+01, + 7.51999998e+00, 2.96000004e+00, 5.80000019e+00, 7.88000011e+00, + 1.21199999e+01, 1.08400002e+01, 2.68000007e+00, 2.51999998e+00, + 2.44000006e+00, 3.64000010e+00, 6.03999996e+00, 6.44000006e+00, + 8.92000008e+00, 8.96000004e+00, 1.78799992e+01, 9.43600006e+01, + 2.13999996e+01, 4., 2.43999996e+01, 1.26480003e+02, + 6.34000015e+01, 3.92000008e+00, 9., 4.92000008e+01, + 3.64399986e+01, 8.68000031e+00, 3.04400005e+01, 118., + 8.87200012e+01, 3.78400002e+01, 8.15999985e+00, 3.42799988e+01, + 3.24000015e+01, 6.28000021e+00, 5., 5.49599991e+01, + 9.62799988e+01, 2.58400002e+01, 5.59999990e+00, 2.29599991e+01, + 1.48400002e+01, 3.51999998e+00, 5.67999983e+00, 3.38800011e+01, + 3.49599991e+01, 6.63999987e+00, 5.17599983e+01, 1.30440002e+02, + 4.84000015e+01, 8.47999954e+00, 1.97999992e+01, 5.21199989e+01, + 2.18799992e+01, 1.13199997e+01, 3.56800003e+01, 6.89599991e+01, + 2.42800007e+01, 3.24000015e+01, 4.39599991e+01, 8.75999985e+01, + 8.52799988e+01, 3.58800011e+01, 8.52000046e+00, 1.25200005e+01, + 1.65200005e+01, 1.16400003e+01, 1.63199997e+01, 8.48799973e+01, + 1.05519997e+02, 2.96000004e+01, 4.15999985e+00, 2.07199993e+01, + 8.80000019e+00, 2.96000004e+00, 1.14799995e+01, 1.11919998e+02, + 4.80400009e+01, 3.48000002e+00, 7.31999969e+01, 6.23199997e+01, + 9.88000011e+00, 2.79999995e+00, 2.12000008e+01, 31., + 6.28000021e+00, 1.00400000e+01, 8.85199966e+01, 8.14800034e+01, + 1.33199997e+01, 1.10400000e+01, 25., 2.88799992e+01, + 9.03999996e+00, 1.29200001e+01, 1.01599998e+01, 1.81200008e+01, + 2.03999996e+01, 1.66800003e+01, 2.17999992e+01, 2.12800007e+01, + 1.13199997e+01, 9.52000046e+00, 3.59999990e+00, 6.40000010e+00, + 8.96000004e+00, 9.31999969e+00, 1.56800003e+01, 4.74399986e+01, + 1.15200005e+01, 4., 1.25869570e+01, 9.80434799e+00, + 6.13043499e+00, 6.10869551e+00, 1.33260870e+01, 4.79347839e+01, + 5.00869560e+01, 2.35217400e+01, 1.91956520e+01, 4.75652161e+01, + 1.73043480e+01, 8.91304302e+00, 2.15217400e+01, 1.17543480e+02, + 9.18695679e+01, 3.05434780e+01, 2.29130440e+01, 1.16500000e+02, + 3.41521721e+01, 2.78260875e+00, 1.45217390e+01, 1.20739128e+02, + 7.91521759e+01, 1.76956520e+01, 1.52608700e+01, 1.12173912e+02, + 3.42391319e+01, 1.08695650e+00, 5.26086950e+00, 1.10913040e+02, + 6.48478241e+01, 9.13043499e+00, 2.03913040e+01, 1.66086960e+01, + 8.78260899e+00, 6.45652151e+00, 1.10652170e+01, 2.28043480e+01, + 3.31304359e+01, 2.90434780e+01, 2.32826080e+01, 1.57826090e+01, + 9.54347801e+00, 1.09782610e+01, 25., 6.25652161e+01, + 6.83695679e+01, 4.21956520e+01, 1.71086960e+01, 4.88043480e+01, + 2.00217400e+01, 1.22608700e+01, 2.94347820e+01, 1.20217392e+02, + 9.74347839e+01, 3.46956520e+01, 2.21304340e+01, 1.17956520e+02, + 3.89782600e+01, 5.04347849e+00, 20., 1.26826088e+02, + 8.08043442e+01, 1.68260860e+01, 2.45434780e+01, 1.84782600e+01, + 1.26521740e+01, 8.23913002e+00, 9.47826099e+00, 1.66304340e+01, + 2.77173920e+01, 2.63695660e+01, 3.06086960e+01, 2.26086960e+01, + 1.63478260e+01, 1.25869570e+01, 1.59782610e+01, 2.95000000e+01, + 3.95000000e+01, 3.90434799e+01, 2.32826080e+01, 1.44130430e+01, + 1.21739130e+01, 1.35869570e+01, 2.35000000e+01, 4.65652161e+01, + 5.46086960e+01, 4.00434799e+01, 2.39130440e+01, 2.62391300e+01, + 1.10434780e+01, 9.86956501e+00, 3.43478279e+01, 9.62608719e+01, + 6.32826080e+01, 3.16956520e+01, 1.50869570e+01, 9.34782600e+00, + 9.06521702e+00, 9.65217400e+00, 9.54347801e+00, 1.42608700e+01, + 2.44130440e+01, 2.53260860e+01, 2.65652180e+01, 1.57173910e+01, + 1.49565220e+01, 1.26304350e+01, 1.38695650e+01, 2.01086960e+01, + 2.93260860e+01, 3.11304340e+01, 2.43913040e+01, 1.82173920e+01, + 1.63913040e+01, 1.23913040e+01, 1.33043480e+01, 1.86521740e+01, + 2.83695660e+01, 2.76521740e+01, 1.63478260e+01, 1.23478260e+01, + 1.03695650e+01, 9.32608700e+00, 1.62826080e+01, 2.79565220e+01, + 2.84782600e+01, 2.28043480e+01, 8.15945969e+01, 3.22972984e+01, + 4.18918896e+00, 1.45945942e+00, 1.21621621e+00, 1.05405402e+00, + 3.27027035e+00, 3.07567558e+01, 4.95135117e+01, 3.72162170e+01, + 1.51891890e+01, 9.37837791e+00, 1.09459457e+01, 1.21891890e+01, + 1.56486483e+01, 2.98108101e+01, 2.45945950e+01, 1.85945950e+01, + 1.15405407e+01, 8.40540504e+00, 1.07027025e+01, 1.88108101e+01, + 34., 3.22702713e+01, 7.81081104e+00, 6.02702713e+00, + 6.89189196e+00, 1.67567558e+01, 3.68108101e+01, 4.13513527e+01, + 2.66756763e+01, 1.60810814e+01, 7.67297287e+01, 6.41081085e+01, + 6.78378391e+00, 8.64864886e-01, 2.02702713e+00, 4.45945930e+00, + 2.16216207e+00, 1.04594593e+01, 5.65675659e+01, 8.10270233e+01, + 2.84594593e+01, 5., 3.56756759e+00, 3.70270276e+00, + 8.13513470e+00, 2.15675678e+01, 4.43243256e+01, 5.48918915e+01, + 5.05405388e+01, 2.66756763e+01, 9.70270252e+00, 1.25675678e+01, + 2.11621628e+01, 3.64324341e+01, 7.72972965e+00, 1.34594593e+01, + 3.53783798e+01, 6.24594612e+01, 4.65405388e+01, 2.41081085e+01, + 1.38108110e+01, 1.22432432e+01, 3.75945930e+01, 7.35405426e+01, + 1.52972975e+01, 1.29729724e+00, 2.67567563e+00, 6.37837830e+01, + 4.01621628e+01, 4.21621609e+00, 3.32432442e+01, 1.03162163e+02, + 4.17027016e+01, 3.48648643e+00, 1.91891897e+00, 1.16216221e+01, + 2.65405407e+01, 9.29729748e+00, 1.35405407e+01, 7.22162170e+01, + 8.25945969e+01, 2.30810814e+01, 6.02702713e+00, 3.70270276e+00, + 1.80270271e+01, 1.29189186e+01, 2.16216207e+00, 1.65135136e+01, + 6.01081085e+01, 5.24594612e+01, 2.67567558e+01, 7.40540552e+00, + 1.96216221e+01, 2.04054050e+01, 6.91891909e+00, 9.81351318e+01, + 8.49459457e+01, 2.05405402e+00, 3., 7.94864883e+01, + 7.77297287e+01, 4., 8.29729748e+00, 7.99729767e+01, + 8.88108139e+01, 3.81081080e+00, 1.62162161e+00, 5.07027016e+01, + 1.13540543e+02, 1.05945950e+01, 4.56756735e+00, 3.82702713e+01, + 9.71081085e+01, 2.50270271e+01, 2.89189196e+00, 1.52702703e+01, + 1.08270271e+02, 3.30810814e+01, 3.56756759e+00, 9.97297287e+00, + 9.51081085e+01, 6.89189224e+01, 6.59459448e+00, 5.24324322e+00, + 8.75675659e+01, 6.25945930e+01, 5.43684196e+01, 6.87719269e+01, + 1.58508768e+01, 1.52017546e+01, 3.88245621e+01, 3.77280693e+01, + 1.15789471e+01, 1.22456141e+01, 4.17456131e+01, 4.01052628e+01, + 2.22719307e+01, 2.27894745e+01, 3.24824562e+01, 2.37543869e+01, + 1.80964909e+01, 1.73947372e+01, 1.97017536e+01, 1.72807026e+01, + 1.91754379e+01, 2.00614033e+01, 2.25000000e+01, 2.13508778e+01, + 2.01491222e+01, 1.68421059e+01, 6.70175457e+00, 7.83333349e+00, + 1.10701752e+01, 1.25350876e+01, 1.28245611e+01, 1.27280703e+01, + 1.39824562e+01, 1.07456141e+01, 8.01754379e+01, 1.04201752e+02, + 2.22894745e+01, 1.88684216e+01, 6.50350876e+01, 7.74298248e+01, + 9.22807026e+00, 8.43859673e+00, 6.99736862e+01, 8.02719269e+01, + 2.88245621e+01, 2.80877190e+01, 4.51315804e+01, 3.69824562e+01, + 1.76929817e+01, 1.87017536e+01, 3.16666660e+01, 3.18421059e+01, + 2.77105255e+01, 2.67017536e+01, 2.77368412e+01, 2.20614033e+01, + 1.93421059e+01, 2.05350876e+01, 8.42982483e+00, 1.09736843e+01, + 1.57280703e+01, 1.70087719e+01, 1.75087719e+01, 1.40438595e+01, + 1.38771935e+01, 1.18421049e+01, 7.68157883e+01, 1.09798248e+02, + 1.65614033e+01, 1.23596487e+01, 8.34122772e+01, 1.04815788e+02, + 6.28070164e+00, 4.53508759e+00, 8.67543869e+01, 1.15885963e+02, + 2.45175438e+01, 1.80964909e+01, 5.19385948e+01, 6.20438614e+01, + 1.20877190e+01, 1.18333330e+01, 4.12456131e+01, 5.51578941e+01, + 3.06315784e+01, 2.50350876e+01, 2.80614033e+01, 2.54035091e+01, + 1.69473686e+01, 1.73421059e+01, 1.11140347e+01, 1.43508768e+01, + 1.80964909e+01, 1.75000000e+01, 1.69736843e+01, 1.22017546e+01, + 1.09298248e+01, 1.05263157e+01, 5.11578941e+01, 8.50964890e+01, + 1.20877190e+01, 6.95614052e+00, 6.67543869e+01, 1.04236839e+02, + 6.56140327e+00, 4.17543840e+00, 7.69122772e+01, 1.10745613e+02, + 1.50964909e+01, 1.04912281e+01, 5.38421059e+01, 9.02192993e+01, + 1.07719297e+01, 7.44736862e+00, 4.25526314e+01, 7.09122772e+01, + 2.38596497e+01, 1.77456131e+01, 2.52719307e+01, 2.90701752e+01, + 1.31842108e+01, 1.20087719e+01, 1.33245611e+01, 1.78157902e+01, + 1.54473686e+01, 1.25350876e+01, 1.29298248e+01, 1.04473686e+01, + 8.85087681e+00, 8.54385948e+00, 4.52631569e+00, 2.07017541e+00, + 8.78947353e+00, 6.96140366e+01, 4.20877190e+01, 3.56140351e+00, + 3.42105269e+00, 9.42105293e+00, 1.95789471e+01, 1.15789473e+00, + 3.08771920e+00, 6.03333321e+01, 5.04385948e+01, 4.35087729e+00, + 4.15789461e+00, 5.03684196e+01, 1.13666664e+02, 4.36842108e+00, + 1.89473689e+00, 1.27192984e+01, 5.70175457e+00, 8.77192974e-01, + 2.12280703e+00, 1.06578949e+02, 6.85789490e+01, 5.50877190e+00, + 1.91228068e+00, 2.29824567e+00, 2.47368431e+00, 2.29824567e+00, + 4.68421030e+00, 5.22631569e+01, 3.64912271e+00, 1.24561405e+00, + 2.62631588e+01, 1.01438599e+02, 2.47017536e+01, 2.01754379e+00, + 1.94561405e+01, 4.18070183e+01, 4.02807007e+01, 2.21052623e+00, + 9.08771896e+00, 5.28245621e+01, 1.46315794e+01, 1.75438595e+00, + 1.80701752e+01, 1.26368423e+02, 1.14894737e+02, 4.17543840e+00, + 1.98245609e+00, 8.22807026e+00, 2.14035082e+00, 9.82456148e-01, + 8.47368431e+00, 1.34982452e+02, 4.75087738e+01, 6.84210539e+00, + 3.89473677e+00, 4.66666651e+00, 4.80701733e+00, 4.29824543e+00, + 8.28070164e+00, 5.10526314e+01, 5.78947353e+00, 2.15789485e+00, + 2.13508778e+01, 4.46842117e+01, 5.98245621e+00, 2.87719297e+00, + 6.25789490e+01, 1.03719299e+02, 3.93684196e+01, 2.75438595e+00, + 6.92982435e+00, 1.42807016e+01, 2.54385972e+00, 1.73684216e+00, + 4.53684196e+01, 1.35561401e+02, 6.58596497e+01, 4.10526323e+00, + 2.22807026e+00, 3.50877190e+00, 4.98245621e+00, 4.26315784e+00, + 2.01403503e+01, 1.31561401e+02, 1.98771935e+01, 5.38596487e+00, + 4.82456160e+00, 5.70175457e+00, 6.82456160e+00, 7.43859673e+00, + 1.12280703e+01, 3.20350876e+01, 8.84210491e+00, 1.59649122e+00, + 5., 6., 1.68421054e+00, 3.47368431e+00, 6.87543869e+01, + 1.08789474e+02, 2.15789471e+01, 2.43859649e+00, 2.71929836e+00, + 3.87719297e+00, 3.21052623e+00, 3.78947377e+00, 3.94561386e+01, + 1.19280701e+02, 2.51228065e+01, 4.47368431e+00, 4.29824543e+00, + 6., 8.01754379e+00, 7.45614052e+00, 1.59298248e+01, + 5.63508759e+01, 1.00526314e+01, 4.71929836e+00, 4.29824543e+00, + 4.73684216e+00, 6.26315784e+00, 6.43859673e+00, 8.70175457e+00, + 1.47368422e+01, 1.93617022e+00, 2.50000000e+00, 3.44680858e+00, + 7.98936176e+00, 1.14361706e+01, 4.42553186e+00, 2.84042549e+00, + 1.82978725e+00, 5.07446814e+00, 5.03191471e+00, 7.71276617e+00, + 4.78829803e+01, 5.66702118e+01, 1.05638294e+01, 4.34042549e+00, + 4.25531912e+00, 3.42553186e+00, 1.95744681e+00, 1.22765961e+01, + 1.46968079e+02, 1.00138298e+02, 4.80851078e+00, 3.23404264e+00, + 5.55319166e+00, 6.89361715e+00, 2.68085098e+00, 3.79042549e+01, + 1.02872337e+02, 1.96276588e+01, 1.27659571e+00, 4.70212746e+00, + 1.08829784e+01, 2.07446814e+00, 2.57446814e+00, 4.32978725e+00, + 1.02659578e+01, 1.73510647e+01, 7.29787254e+00, 3.03191495e+00, + 2.40425539e+00, 5.07446814e+00, 4.20212746e+00, 6.28723383e+00, + 7.37127686e+01, 1.30244675e+02, 1.76489353e+01, 5.02127647e+00, + 4.44680834e+00, 5.08510637e+00, 2.12765956e+00, 3.21276593e+00, + 1.32968079e+02, 1.50404251e+02, 6.44680834e+00, 2.38297868e+00, + 5.35106373e+00, 2.80851059e+01, 7.54255342e+00, 1.14255323e+01, + 3.16702137e+01, 1.98191490e+01, 3.45744681e+00, 9.46808529e+00, + 2.87765961e+01, 2.03191495e+00, 2.53191495e+00, 4.27659559e+00, + 9.41489315e+00, 1.62127666e+01, 1.01382980e+01, 3.75531912e+00, + 2.31914902e+00, 4.39361715e+00, 4.31914902e+00, 6.60638285e+00, + 3.56063843e+01, 1.42904251e+02, 4.39255333e+01, 5., + 3.47872329e+00, 8.26595783e+00, 3.73404264e+00, 1.67021275e+00, + 3.43404274e+01, 1.51734039e+02, 5.42127647e+01, 3.70212770e+00, + 5.76595736e+00, 4.50851059e+01, 1.54255323e+01, 8.30851078e+00, + 6.34042549e+00, 1.65957451e+01, 1.28723402e+01, 1.02765961e+01, + 2.38723412e+01, 1.88297868e+00, 2.37234044e+00, 3.11702132e+00, + 6.69148922e+00, 1.20106382e+01, 8.29787254e+00, 3.24468088e+00, + 1.81914890e+00, 5.11702108e+00, 5.55319166e+00, 5.06382990e+00, + 1.47872343e+01, 9.72127686e+01, 5.87234039e+01, 5.77659559e+00, + 3.35106373e+00, 7.08510637e+00, 7.03191471e+00, 3.03191495e+00, + 4.57446814e+00, 1.40638290e+02, 1.29776596e+02, 6.54255342e+00, + 3.60638309e+00, 3.12765961e+01, 2.11914902e+01, 9.17021275e+00, + 3.23404264e+00, 1.70106392e+01, 4.45425529e+01, 1.40744677e+01, + 9.43617058e+00, 1.07677422e+02, 4.66451607e+01, 4.61290312e+00, + 1.37096777e+01, 3.64838715e+01, 1.58064518e+01, 4.51612902e+00, + 3.80967751e+01, 8.54193573e+01, 3.70322571e+01, 1.77419357e+01, + 3.46129036e+01, 2.07096767e+01, 3.80967751e+01, 2.80967751e+01, + 4.66451607e+01, 9.16129017e+00, 1.40967741e+01, 1.36451616e+01, + 2.30322590e+01, 5.92903214e+01, 9.33225784e+01, 5.38064499e+01, + 8.51612949e+00, 2.10967751e+01, 2.95806446e+01, 4.32258081e+00, + 6.67741919e+00, 7.41290359e+01, 9.19354858e+01, 1.03225803e+01, + 2.51612902e+00, 1.15129036e+02, 6.64516144e+01, 5.06451607e+00, + 9.12903214e+00, 4.55483856e+01, 3.19354839e+01, 4.67741919e+00, + 1.77096767e+01, 9.11612930e+01, 9.84193573e+01, 3.78709679e+01, + 2.66774197e+01, 3.04193554e+01, 1.30645161e+01, 8., + 1.52258062e+01, 10., 34., 3.61612892e+01, 5.06451607e+01, + 6.37741928e+01, 3.17419357e+01, 1.24516125e+01, 5.19354820e+00, + 2.01290321e+01, 1.92580643e+01, 4.83870983e+00, 1.59677420e+01, + 1.09806450e+02, 7.86774216e+01, 4.38709688e+00, 2.96774197e+00, + 6.08709679e+01, 6.20322571e+01, 4.06451607e+00, 5.74193525e+00, + 2.82580643e+01, 4.24516144e+01, 11., 7.61290312e+00, + 8.19677429e+01, 1.13870964e+02, 2.12903233e+01, 10., + 4.35806465e+01, 3.91290321e+01, 5.80645180e+00, 2.54838705e+00, + 2.19677410e+01, 6.82258072e+01, 4.73870964e+01, 2.32903233e+01, + 3.29354820e+01, 2.44838715e+01, 5.64516115e+00, 5.12903214e+00, + 1.37096777e+01, 1.89354839e+01, 1.85806446e+01, 3.80645180e+01, + 9.81935501e+01, 4.18709679e+01, 6.70967722e+00, 7.09677410e+00, + 1.27419357e+01, 1.33870964e+01, 5.41935492e+00, 4.67741919e+00, + 8.09677410e+00, 1.24838705e+01, 7.67741919e+00, 7.19354820e+00, + 2.53548393e+01, 8.06128998e+01, 2.24838715e+01, 5.90322590e+00, + 1.64838715e+01, 2.73870964e+01, 9.96774197e+00, 3.80645156e+00, + 1.28064518e+01, 5.63870964e+01, 6.51290359e+01, 3.04193554e+01, + 1.30967741e+01, 1.74516125e+01, 6.58064508e+00, 5.22580624e+00, + 7.64516115e+00, 1.42903223e+01, 3.59032249e+01, 57., + 3.12903233e+01, 8.96774197e+00, 6.64516115e+00, 1.39032259e+01, + 3.44117641e+00, 1.50000000e+00, 1.41764708e+01, 2.03235302e+01, + 3., 2., 7.32352924e+00, 12., 3.76470590e+00, 5.67647076e+00, + 1.99117641e+01, 1.60882359e+01, 2.64705873e+00, 6.67647076e+00, + 2.36176472e+01, 2.05588226e+01, 3.38235283e+00, 1.08823528e+01, + 1.22647057e+01, 4.17647076e+00, 2.94117641e+00, 1.41764708e+01, + 1.77058830e+01, 5.02941179e+00, 1.02941179e+00, 1.76470590e+00, + 1.55882359e+00, 5.00000000e-01, 8.23529422e-01, 1.76470590e+00, + 2.14705873e+00, 1.35294116e+00, 1.43529415e+01, 7.97058821e+00, + 6.94117661e+01, 8.60588226e+01, 1.06764708e+01, 7.32352924e+00, + 7.50294113e+01, 9.54411774e+01, 3.21176453e+01, 2.35000000e+01, + 5.50294113e+01, 5.15294113e+01, 1.76470585e+01, 3.33529396e+01, + 9.91470566e+01, 9.60294113e+01, 2.22647057e+01, 4.20294113e+01, + 3.84117661e+01, 2.30588226e+01, 4.02352943e+01, 8.17058792e+01, + 7.48823547e+01, 3.12647057e+01, 8.11764717e+00, 1.60882359e+01, + 7.26470566e+00, 3.11764717e+00, 1.11470585e+01, 1.91764698e+01, + 8.82352924e+00, 4.14705896e+00, 2.50294113e+01, 1.08823528e+01, + 2.23823528e+01, 4.45882339e+01, 2.76176472e+01, 4.07058830e+01, + 9.32058792e+01, 9.39117661e+01, 4.28823547e+01, 28., + 4.23529396e+01, 6.98823547e+01, 52., 4.30588226e+01, + 5.95588226e+01, 6.63823547e+01, 3.45882339e+01, 3.29705887e+01, + 3.85000000e+01, 7.00882339e+01, 7.00882339e+01, 5.84117661e+01, + 3.19411774e+01, 4.48235283e+01, 8.76470566e+00, 8.17647076e+00, + 5.73529434e+00, 1.45588236e+01, 2.54705887e+01, 2.07941170e+01, + 5.11764717e+00, 4.97058821e+00, 3.37058830e+01, 2.39411774e+01, + 2.36764698e+01, 4.25000000e+01, 5.07941170e+01, 4.72352943e+01, + 4.56470604e+01, 3.46470604e+01, 1.51470585e+01, 9.29411793e+00, + 3.08235302e+01, 9.53529434e+01, 6.21176453e+01, 3.56176453e+01, + 5.33529396e+01, 5.61176453e+01, 3.03823528e+01, 8.35294151e+00, + 30., 1.02382355e+02, 4.11764717e+01, 1.07647057e+01, + 2.68823528e+01, 7.97941208e+01, 7.85294104e+00, 2.32352948e+00, + 5.73529434e+00, 1.75000000e+01, 9.20588207e+00, 4.35294104e+00, + 4.47058821e+00, 1.62941170e+01, 9.13333321e+00, 3.83333325e+00, + 21., 3.57000008e+01, 6.66666651e+00, 3.20000005e+00, + 5.23333321e+01, 9.96333313e+01, 1.21333332e+01, 1.68333340e+01, + 3.39666672e+01, 2.56333332e+01, 9.83333302e+00, 2.25333328e+01, + 8.92333298e+01, 7.85000000e+01, 1.97333336e+01, 3.47333336e+01, + 3.11333332e+01, 8.59333344e+01, 5.42999992e+01, 2.82666664e+01, + 4.69000015e+01, 8.58666687e+01, 1.81000004e+01, 5.56666660e+00, + 3.31333351e+01, 1.21266670e+02, 4.25333328e+01, 8.50000000e+00, + 1.38666668e+01, 7.42666702e+01, 2.84666672e+01, 1.05666666e+01, + 1.85000000e+01, 3.24000015e+01, 8.53333378e+00, 4.16666651e+00, + 1.28999996e+01, 5.77999992e+01, 2.69333324e+01, 2.30333328e+01, + 3.10333328e+01, 3.37000008e+01, 2.18666668e+01, 1.81000004e+01, + 1.67333336e+01, 2.37000008e+01, 3.93333321e+01, 1.71000004e+01, + 2.33333340e+01, 1.06866669e+02, 1.18433334e+02, 3.36333351e+01, + 1.10333338e+01, 3.86666679e+01, 2.94666672e+01, 2.93333340e+00, + 1.11333332e+01, 6.78333359e+01, 7.62666702e+01, 1.57666664e+01, + 1.23333330e+01, 5.84666672e+01, 2.90333328e+01, 1.38666668e+01, + 1.73999996e+01, 2.66666660e+01, 1.23000002e+01, 1.04666662e+01, + 1.17333336e+01, 2.09333324e+01, 1.77000008e+01, 9.66666698e+00, + 4.06333351e+01, 9.76999969e+01, 1.88999996e+01, 7.23333311e+00, + 1.20333338e+01, 2.64333324e+01, 2.94666672e+01, 3.09999990e+00, + 2.52000008e+01, 1.24699997e+02, 57., 7.93333340e+00, + 1.22666664e+01, 6.66333313e+01, 1.45333338e+01, 2.36666656e+00, + 5.93333340e+00, 3.06666660e+01, 2.67000008e+01, 7.83333349e+00, + 1.22666664e+01, 3.80999985e+01, 1.10666666e+01, 1.88999996e+01, + 5.22666664e+01, 5.16333351e+01, 7.30000019e+00, 1.05333338e+01, + 1.62999992e+01, 11., 6.53333330e+00, 1.73333335e+00, + 2.95000000e+01, 1.21099998e+02, 1.08999996e+01, 2.53333330e+00, + 1.88333340e+01, 5.03666649e+01, 9.60000038e+00, 1.89999998e+00, + 1.06000004e+01, 6.65000000e+01, 1.31666670e+01, 2.70000005e+00, + 1.29666662e+01, 6.40999985e+01, 3.43333340e+00, 2.96666670e+00, + 6.23333311e+00, 8.73333359e+00, 9.56666660e+00, 5.63333321e+00, + 5.76666689e+00, 1.11666670e+01, 1.04775864e+02, 4.15862083e+01, + 2.53448272e+00, 5.18965530e+00, 8.34482765e+00, 1.32758617e+00, + 1.79310346e+00, 2.38965511e+01, 1.01362068e+02, 4.53448257e+01, + 1.25344830e+01, 7.12068987e+00, 8.36206913e+00, 6.53448296e+00, + 9.91379356e+00, 4.66034470e+01, 2.50689659e+01, 2.68793106e+01, + 2.75172405e+01, 2.13620682e+01, 2.15000000e+01, 1.99827595e+01, + 1.66206894e+01, 2.01724129e+01, 1.66551723e+01, 2.23793106e+01, + 2.26724129e+01, 1.89655170e+01, 1.95344830e+01, 1.79482765e+01, + 1.14310341e+01, 9.51724148e+00, 1.00465515e+02, 8.78965530e+01, + 5.34482765e+00, 1.86206901e+00, 6.01724148e+00, 1.55172420e+00, + 7.93103456e-01, 1.16551723e+01, 1.09517242e+02, 1.11241379e+02, + 1.78965511e+01, 5.31034470e+00, 4.53448296e+00, 7.06896544e+00, + 8.18965530e+00, 2.22241383e+01, 3.37931023e+01, 4.59827576e+01, + 2.99655170e+01, 2.27413788e+01, 2.21724129e+01, 2.85517235e+01, + 2.91724129e+01, 2.13103447e+01, 1.49655170e+01, 1.49482756e+01, + 2.14655170e+01, 34., 2.97586212e+01, 2.28620682e+01, + 2.24655170e+01, 1.98275871e+01, 5.08103447e+01, 8.28793106e+01, + 1.01206894e+01, 1.72413790e+00, 1.31896553e+01, 1.71034489e+01, + 1.17241383e+00, 5.32758617e+00, 6.33448257e+01, 1.24603447e+02, + 4.71034470e+01, 3.10344839e+00, 1.81034482e+00, 2.91379309e+00, + 3.46551728e+00, 7.15517235e+00, 2.94310341e+01, 1.15500000e+02, + 1.01672417e+02, 3.18448277e+01, 1.41724138e+01, 1.39827585e+01, + 1.60344830e+01, 1.43103447e+01, 1.18793106e+01, 3.50172424e+01, + 8.96206894e+01, 6.10862083e+01, 3.05344830e+01, 1.31379309e+01, + 1.45689659e+01, 1.45344830e+01, 1.71551723e+01, 4.08275871e+01, + 8.31034470e+00, 1.22413790e+00, 2.01206894e+01, 87., + 2.04310341e+01, 3.03448272e+00, 2.05344830e+01, 7.75517273e+01, + 3.65344810e+01, 4.17241383e+00, 2.32758617e+00, 1.62758617e+01, + 1.35689659e+01, 2.37931037e+00, 7.91379309e+00, 7.90862045e+01, + 8.73275833e+01, 1.85344830e+01, 3.98275852e+00, 2.18965507e+00, + 5.81034470e+00, 1.72413790e+00, 1.79310346e+00, 2.95172405e+01, + 8.62586212e+01, 3.59655190e+01, 1.03103447e+01, 1.63793099e+00, + 5.39655161e+00, 3.31034493e+00, 8.17021275e+00, 2.09787235e+01, + 1.19893616e+02, 1.72978725e+01, 2.97872329e+00, 1.27659578e+01, + 5.19148941e+01, 8.19148922e+00, 4.89361715e+00, 8.91702118e+01, + 1.18574471e+02, 4.59574461e+00, 4.68085098e+00, 4.24255333e+01, + 6.87659607e+01, 4.36170197e+00, 6.29787254e+00, 1.05872337e+02, + 7.57446823e+01, 2.08510637e+00, 4.44680834e+00, 9.63829803e+01, + 71., 5.21276617e+00, 8.42553234e+00, 3.50425529e+01, + 1.18510637e+01, 2.29787230e+00, 1.06382980e+01, 8.72978745e+01, + 3.22340431e+01, 4.46808529e+00, 5.34042549e+00, 3.59574461e+00, + 2.31276588e+01, 5.29787254e+00, 4.95744658e+00, 2.78085098e+01, + 3.40425529e+01, 7.87234020e+00, 7.70212746e+00, 3.63191490e+01, + 4.53191490e+01, 3.06382990e+00, 1.27872343e+01, 4.16170197e+01, + 3.08297863e+01, 5.93617010e+00, 1.19787235e+01, 1.24914894e+02, + 6.26595726e+01, 2.04255319e+00, 7.76595736e+00, 4.33617020e+01, + 2.46808510e+01, 5.19148922e+00, 3.15106392e+01, 1.25851067e+02, + 2.08510647e+01, 1.06382978e+00, 1.66595745e+01, 1.09851067e+02, + 2.00638294e+01, 2.70212770e+00, 3.29787230e+00, 3.61702114e-01, + 2.34042555e-01, 9.78723407e-01, 5.74468088e+00, 4.62553177e+01, + 7.24893646e+01, 1.76382980e+01, 3.40425539e+00, 1.31914890e+00, + 4.46808517e-01, 1.08510637e+00, 1.78085098e+01, 6.84680862e+01, + 5.84680862e+01, 1.00851068e+01, 8.36170197e+00, 1.65744686e+01, + 1.89361703e+00, 2.59574461e+00, 1.82127666e+01, 4.98510628e+01, + 3.48723412e+01, 8.19148922e+00, 6.89787216e+01, 1.16957443e+02, + 3.21276593e+00, 2.21276593e+00, 1.82340431e+01, 3.69787216e+01, + 1.05531912e+01, 5.95744658e+00, 6.72340441e+00, 5.17021275e+00, + 6.82978725e+00, 8.55319118e+00, 1.12978725e+01, 4.27021294e+01, + 6.39361687e+01, 2.07872334e+01, 3., 1.76595747e+00, + 1.72340429e+00, 4.19148922e+00, 2.83829784e+01, 8.50851059e+01, + 6.32978706e+01, 11., 6.17021263e-01, 2.97872335e-01, + 1.91489369e-01, 3.72340417e+00, 2.85957451e+01, 6.57659607e+01, + 3.71063843e+01, 4.17021275e+00, 4.05319138e+01, 2.04042549e+01, + 6.59574449e-01, 3.17021275e+00, 1.81702137e+01, 27., + 1.43191490e+01, 5.63829803e+00, 3.20512819e+00, 1.65641022e+01, + 3.15641022e+01, 8.58974361e+00, 9.30769253e+00, 6.20512810e+01, + 1.09153847e+02, 2.24358978e+01, 6.35897446e+00, 3.27948723e+01, + 3.16666660e+01, 5.94871807e+00, 13., 7.77692337e+01, + 8.05128174e+01, 1.06410255e+01, 9.05128193e+00, 2.22307701e+01, + 1.28461542e+01, 5.23076916e+00, 1.01794872e+01, 3.16666660e+01, + 2.32820511e+01, 9.12820530e+00, 1.46153843e+00, 2.41025639e+00, + 1.25641024e+00, 7.94871807e-01, 1.43589747e+00, 2., + 2.61538458e+00, 1.41025639e+00, 6.25641012e+00, 7.43589735e+00, + 1.65384617e+01, 1.88974361e+01, 2.88974361e+01, 6.50256424e+01, + 9.11025620e+01, 3.03333340e+01, 9.20512867e+00, 2.06153851e+01, + 2.19230766e+01, 1.52307692e+01, 4.42564087e+01, 1.16615387e+02, + 1.06538460e+02, 1.84358978e+01, 1.61538467e+01, 2.86666660e+01, + 1.36923075e+01, 1.03846149e+01, 7.25641022e+01, 1.16512817e+02, + 4.85384598e+01, 9.76923084e+00, 3.43589735e+00, 5.46153831e+00, + 2.12820506e+00, 1.15384614e+00, 8.07692337e+00, 1.02307692e+01, + 4.53846169e+00, 1.89743590e+00, 6.64102554e+00, 1.62820511e+01, + 4.38461533e+01, 4.35897446e+01, 3.02820511e+01, 3.34102554e+01, + 2.11794872e+01, 9., 1.61794872e+01, 2.85128212e+01, + 4.58205147e+01, 5.91538467e+01, 56., 4.43333321e+01, + 3.44871788e+01, 2.14358978e+01, 1.49230766e+01, 1.67179489e+01, + 2.05641022e+01, 7.18461533e+01, 1.19487183e+02, 7.33333359e+01, + 2.11282043e+01, 1.55641022e+01, 3.30769229e+00, 1.84615386e+00, + 1.41025639e+00, 8.12820530e+00, 2.23589745e+01, 8.15384579e+00, + 1.61538458e+00, 2.71794868e+00, 3.53846145e+00, 4.45384598e+01, + 1.02871796e+02, 3.43589745e+01, 9.66666698e+00, 2.93076916e+01, + 4.43589745e+01, 1.55128202e+01, 8.51282024e+00, 1.66666660e+01, + 8.79487152e+01, 1.00641029e+02, 3.32820511e+01, 1.56153851e+01, + 4.23333321e+01, 3.81025658e+01, 9.25641060e+00, 6.05128193e+00, + 2.25384617e+01, 9.18205109e+01, 5.94358978e+01, 7.76923084e+00, + 1.21025639e+01, 2.06153851e+01, 1.66666663e+00, 8.71794879e-01, + 1.58974361e+00, 5.74358988e+00, 5.12820530e+00, 1.17948723e+00, + 2.07692313e+00, 3.82051277e+00, 1.50000000e+00, 8.21739101e+00, + 2.88478260e+01, 4.49130440e+01, 1.96739140e+01, 3.21739125e+00, + 1.43478262e+00, 9.34782624e-01, 5.19565201e+00, 2.16086960e+01, + 6.41739120e+01, 5.55869560e+01, 1.45869570e+01, 3.02173924e+00, + 1.17391300e+00, 1.91304350e+00, 1.05869570e+01, 3.31304359e+01, + 6.21956520e+01, 3.65434799e+01, 8.30434799e+00, 2.02173924e+00, + 1.47826087e+00, 3.43478251e+00, 1.22173910e+01, 3.81956520e+01, + 3.98913040e+01, 1.62826080e+01, 3.63043475e+00, 8.47826064e-01, + 1.71739125e+00, 3.86956525e+00, 6.80434799e+00, 1.16521740e+01, + 3.26304359e+01, 7.76304321e+01, 5.00217400e+01, 1.12173910e+01, + 2.69565225e+00, 4.54347849e+00, 2.55652180e+01, 3.32391319e+01, + 6.45217361e+01, 7.27173920e+01, 4.38695641e+01, 1.65434780e+01, + 1.60217400e+01, 28., 2.80652180e+01, 4.33695641e+01, + 8.34347839e+01, 5.18260880e+01, 2.12173920e+01, 1.16739130e+01, + 2.82826080e+01, 3.03913040e+01, 2.32608700e+01, 5.54782600e+01, + 7.26956558e+01, 3.14347820e+01, 1.08695650e+01, 9.67391300e+00, + 2.42173920e+01, 1.86521740e+01, 1.15652170e+01, 1.15869570e+01, + 1.72391300e+01, 7.66086960e+01, 5.61739120e+01, 2.13478260e+01, + 9.43478298e+00, 1.78913040e+01, 1.80869560e+01, 1.67391300e+01, + 7.61521759e+01, 1.05586960e+02, 3.22173920e+01, 1.67173920e+01, + 3.30217400e+01, 5.48478279e+01, 1.20869570e+01, 2.62391300e+01, + 1.13326088e+02, 8.27391281e+01, 1.09565220e+01, 1.33260870e+01, + 4.58043480e+01, 3.81739120e+01, 1.01521740e+01, 6.14347839e+01, + 1.14652176e+02, 3.70869560e+01, 9.08695698e+00, 2.15217400e+01, + 3.62391319e+01, 1.33478260e+01, 8.76086998e+00, 4.50000000e+00, + 1.05652170e+01, 1.02413040e+02, 5.63478279e+01, 8.21739101e+00, + 6.08695650e+00, 2.05869560e+01, 1.17608700e+01, 9.23913002e+00, + 4.65652161e+01, 1.03760872e+02, 1.91521740e+01, 4.32608700e+00, + 2.83043480e+01, 3.77608681e+01, 1.15217390e+01, 2.71956520e+01, + 7.07391281e+01, 51., 1.20652170e+01, 2.79565220e+01, + 7.12826080e+01, 3.96086960e+01, 2.89130425e+00, 3.58043480e+01, + 5.26956520e+01, 1.93260860e+01, 1.51304350e+01, 3.57173920e+01, + 3.68478279e+01, 6.06521749e+00, 1.56363640e+01, 1.23636360e+01, + 4.93181801e+00, 1.59090912e+00, 1.05454550e+01, 3.24772720e+01, + 1.04772730e+01, 1.13409090e+01, 2.57727280e+01, 2.63409100e+01, + 3.75909081e+01, 2.34545460e+01, 5.77272749e+00, 1.01590910e+01, + 5.43181801e+01, 5.28409081e+01, 1.15909090e+01, 6.65909100e+00, + 2.76818180e+01, 5.63181801e+01, 3.43636360e+01, 2.28181820e+01, + 6.23181801e+01, 5.45454559e+01, 3.58636360e+01, 1.11363637e+00, + 1.47727275e+00, 1.34772730e+01, 2.05000000e+01, 1.08181820e+01, + 1.34318180e+01, 6.77045441e+01, 8.61363602e+00, 1.47272730e+01, + 1.03636360e+01, 2.43181825e+00, 1.12500000e+01, 1.07795456e+02, + 7.25000000e+01, 6.95454550e+00, 2.40454540e+01, 4.55454559e+01, + 6.45909119e+01, 1.87954540e+01, 1.93181813e+00, 3.40227280e+01, + 1.11818184e+02, 5.05909081e+01, 9.38636398e+00, 1.49318180e+01, + 7.27500000e+01, 7.24318161e+01, 1.95454540e+01, 17., + 1.17750000e+02, 9.74545441e+01, 1.90681820e+01, 3.45454550e+00, + 1.16136360e+01, 3.65454559e+01, 1.23863640e+01, 5.65909100e+00, + 5.35681801e+01, 1.19431816e+02, 3.97727275e+00, 1.41590910e+01, + 1.97045460e+01, 8.11363602e+00, 2.66363640e+01, 8.77500000e+01, + 6.99772720e+01, 4.50000000e+00, 9.45454502e+00, 2.27954540e+01, + 6.51818161e+01, 1.82045460e+01, 1.12727270e+01, 4.58181801e+01, + 1.17045456e+02, 3.02272720e+01, 1.51363640e+01, 1.42500000e+01, + 6.72727280e+01, 3.86136360e+01, 7.79545450e+00, 1.37500000e+01, + 1.05045456e+02, 7.31590881e+01, 2.20454540e+01, 9.97727299e+00, + 1.88863640e+01, 2.74318180e+01, 5.88636351e+00, 6.27272749e+00, + 3.68863640e+01, 6.56590881e+01, 2.63636374e+00, 2.06818175e+00, + 3.75000000e+00, 4.15909100e+00, 2.29545460e+01, 4.73863640e+01, + 2.31590900e+01, 3.38636374e+00, 1.03863640e+01, 6.65909100e+00, + 17., 1.15227270e+01, 1.74772720e+01, 4.57272720e+01, + 4.74318199e+01, 1.68181820e+01, 2.41136360e+01, 8.75000000e+00, + 1.56363640e+01, 13., 1.12045450e+01, 2.22954540e+01, + 4.50909081e+01, 3.63636360e+01, 1.77045460e+01, 4.86363649e+00, + 2.45454550e+00, 3.52272725e+00, 5.36363649e+00, 7.09090900e+00, + 2.46136360e+01, 4.03636360e+01, 4.01923084e+00, 6.65384626e+00, + 1.28846157e+00, 5.19230783e-01, 1.10192308e+01, 7.77884598e+01, + 3.60384598e+01, 4.11538458e+00, 4.08846169e+01, 4.64615402e+01, + 1.28846157e+00, 1.03846157e+00, 4.82500000e+01, 1.00884613e+02, + 9.90384579e+00, 2.46153855e+00, 9.75192337e+01, 9.10961533e+01, + 4.94230747e+00, 2.53846145e+00, 3.18461533e+01, 3.21153831e+01, + 1.80769229e+00, 3.76923084e+00, 6.49807663e+01, 5.03846169e+01, + 5.84615374e+00, 2.42307687e+00, 6.96153831e+00, 5.26923084e+00, + 2.05769229e+00, 6.26923084e+00, 7.46153831e+00, 6.90384626e+00, + 4.01923084e+00, 3.40384626e+00, 1.79423084e+01, 3.56923065e+01, + 1.64230766e+01, 8.88461494e+00, 2.93461533e+01, 1.12884617e+01, + 1.15384614e+00, 6.86538458e+00, 1.08269234e+02, 9.12884598e+01, + 7.28846169e+00, 5.32692289e+00, 1.19153847e+02, 5.78846169e+01, + 2.63461542e+00, 9.38461494e+00, 8.01346130e+01, 3.37692299e+01, + 1.92307687e+00, 1.30769234e+01, 9.86923065e+01, 4.46730766e+01, + 4.48076916e+00, 2.55769229e+00, 1.45000000e+01, 6.80769253e+00, + 3.44230771e+00, 1.78653851e+01, 1.24615383e+01, 6.84615374e+00, + 4.32692289e+00, 1.30576925e+01, 2.00769234e+01, 8.92307663e+00, + 6.65384626e+00, 1.25576925e+01, 2.33461533e+01, 3.50000000e+00, + 1.23076928e+00, 5.36730766e+01, 1.20403847e+02, 2.74038467e+01, + 2.57692313e+00, 1.05769234e+01, 1.21307693e+02, 1.95769234e+01, + 2.26923084e+00, 2.82884617e+01, 9.12500000e+01, 1.20384617e+01, + 1.76923072e+00, 4.04038467e+01, 1.01980766e+02, 2.60384617e+01, + 3.96153855e+00, 4.63461542e+00, 1.59230766e+01, 4.78846169e+00, + 4.36538458e+00, 3.01153851e+01, 6.76923084e+00, 3.51923084e+00, + 9.28846169e+00, 5.10961533e+01, 1.65000000e+01, 2.69230771e+00, + 3.71153855e+00, 9.21153831e+00, 2.39230766e+01, 1.50000000e+00, + 2.63461542e+00, 1.03115387e+02, 9.03269196e+01, 1.98076928e+00, + 1.48076928e+00, 2.98269234e+01, 1.09076920e+02, 6.61538458e+00, + 2.21153855e+00, 3.32500000e+01, 4.47500000e+01, 2.42307687e+00, + 2.36538458e+00, 6.53269196e+01, 7.57307663e+01, 1.30384617e+01, + 2.76923084e+00, 4.26923084e+00, 8.57692337e+00, 3.11538458e+00, + 4.46153831e+00, 3.68653831e+01, 2.88235283e+00, 2.96078420e+00, + 2.31372547e+00, 1.50980389e+00, 1.86274505e+00, 2.25490189e+00, + 2.47058821e+00, 2.41176462e+00, 6.17647076e+00, 7.94117641e+00, + 5.86274529e+00, 8.45098019e+00, 8.84313679e+00, 7.43137264e+00, + 7.23529434e+00, 6.27450991e+00, 7.21568632e+00, 8.43137264e+00, + 8.01960754e+00, 1.67058830e+01, 1.43137255e+01, 9.94117641e+00, + 8.62745094e+00, 6.41176462e+00, 7.11764717e+00, 3.88235283e+00, + 8.45098019e+00, 3.81176453e+01, 3.35294113e+01, 7.15686274e+00, + 3.84313726e+00, 5.68627453e+00, 6.41176462e+00, 5.19607830e+00, + 3.70588231e+00, 2.78431368e+00, 3.86274505e+00, 5.37254906e+00, + 5.15686274e+00, 5.98039198e+00, 1.12941179e+01, 1.44313726e+01, + 1.16274509e+01, 1.38823528e+01, 1.63725491e+01, 1.33725491e+01, + 1.29607840e+01, 1.22156858e+01, 1.09215689e+01, 1.25882349e+01, + 1.77254906e+01, 4.83529396e+01, 4.21764717e+01, 1.39411764e+01, + 1.11568632e+01, 1.07058821e+01, 3.33529396e+01, 9.07843113e+00, + 2.23333340e+01, 1.10137253e+02, 6.71176453e+01, 7.33333349e+00, + 6.49019623e+00, 4.87058830e+01, 5.11764717e+00, 6.80392170e+00, + 5.78431368e+00, 3.94117641e+00, 3.64705873e+00, 4.21568632e+00, + 4.13725471e+00, 4.50980377e+00, 1.10784311e+01, 1.35686274e+01, + 1.68627453e+01, 2.43921566e+01, 2.39215679e+01, 1.37450981e+01, + 1.16862745e+01, 1.23333330e+01, 13., 7.64705896e+00, + 2.32941170e+01, 1.17176468e+02, 8.28627472e+01, 1.12745094e+01, + 6.50980377e+00, 1.17843142e+01, 1.12294121e+02, 1.46078434e+01, + 1.98823528e+01, 1.29725494e+02, 8.67058792e+01, 6.15686274e+00, + 9.33333302e+00, 1.43509811e+02, 4.19607830e+00, 5.11764717e+00, + 5.29411745e+00, 4.47058821e+00, 3.68627453e+00, 2.86274505e+00, + 3.60784316e+00, 4.23529434e+00, 7.94117641e+00, 8.56862736e+00, + 1.43529415e+01, 4.13529396e+01, 3.68039207e+01, 1.04705887e+01, + 7., 8.52941132e+00, 3.88235283e+01, 5.58823538e+00, + 1.49411764e+01, 1.26882355e+02, 1.05529411e+02, 9.94117641e+00, + 8.07843113e+00, 51., 1.51568634e+02, 2.26470585e+01, + 1.07254906e+01, 1.10078430e+02, 95., 9.82352924e+00, + 1.85882359e+01, 1.48098038e+02, 7.20999985e+01, 4.19999981e+00, + 1.88666668e+01, 1.57433334e+02, 1.19500000e+02, 5.83333349e+00, + 1.53999996e+01, 1.45149994e+02, 3.88499985e+01, 1.42333336e+01, + 6.53333330e+00, 1.11949997e+02, 7.41833344e+01, 8.58333302e+00, + 1.89666672e+01, 4.85499992e+01, 7.72333298e+01, 1.59833336e+01, + 2.59999990e+00, 1.68333328e+00, 2.96666670e+00, 4.01666689e+00, + 9.41666698e+00, 5.65166664e+01, 1.95333328e+01, 2.84999990e+00, + 4.00000006e-01, 1.66666672e-01, 3.83333325e-01, 5.66666663e-01, + 1.63333333e+00, 1.48833332e+01, 2.19833336e+01, 8.43333340e+00, + 2.83500004e+01, 1.51083328e+02, 5.08166656e+01, 1.08333330e+01, + 2.33333340e+01, 5.38333321e+01, 4.97000008e+01, 1.53833332e+01, + 7.16666651e+00, 1.70499992e+01, 1.15166664e+01, 1.14166670e+01, + 3.01000004e+01, 7.63666687e+01, 8.31500015e+01, 1.23500004e+01, + 2.59999990e+00, 1.38333333e+00, 2.86666656e+00, 4.11666679e+00, + 1.79666672e+01, 9.60666656e+01, 1.77166672e+01, 1.81666672e+00, + 3.16666663e-01, 2.33333334e-01, 4.00000006e-01, 4.83333319e-01, + 3.73333335e+00, 2.40833340e+01, 2.21166668e+01, 8.25000000e+00, + 7.84999990e+00, 2.10166664e+01, 6.88333321e+00, 1.30333338e+01, + 5.08499985e+01, 5.55499992e+01, 4.51166649e+01, 9.23333359e+00, + 4.03333330e+00, 3.18333340e+00, 4.66666651e+00, 9.51666641e+00, + 5.22999992e+01, 1.15800003e+02, 5.47166672e+01, 6.53333330e+00, + 2.81666660e+00, 2.33333325e+00, 3.13333344e+00, 5.31666660e+00, + 2.64500008e+01, 1.06166664e+02, 8.76666641e+00, 1.54999995e+00, + 8.99999976e-01, 1.06666672e+00, 1.46666670e+00, 1.73333335e+00, + 4.46666670e+00, 1.37166662e+01, 1.17833338e+01, 3.65000010e+00, + 1.91666663e+00, 1.41666663e+00, 2.38333344e+00, 8.66666698e+00, + 5.00833321e+01, 5.63833351e+01, 2.67666664e+01, 5.19999981e+00, + 2.73333335e+00, 1.79999995e+00, 2.73333335e+00, 7.76666689e+00, + 3.98499985e+01, 8.63833313e+01, 2.19666672e+01, 5.75000000e+00, + 4.44999981e+00, 4.96666670e+00, 6.16666651e+00, 7.33333349e+00, + 1.52166662e+01, 4.01333351e+01, 3.23333335e+00, 1.38333333e+00, + 1.28333330e+00, 1.68333328e+00, 1.91666663e+00, 1.73333335e+00, + 1.95000005e+00, 3.86666656e+00, 7.88888855e+01, 3.11111116e+00, + 4.50000000e+00, 3.05555553e+01, 6.08333321e+01, 1.13888893e+01, + 9.11111069e+00, 4.81666679e+01, 9.35555573e+01, 3.16666675e+00, + 1.16666663e+00, 3.51666679e+01, 1.09500000e+02, 1.23333330e+01, + 8.33333302e+00, 5.57222214e+01, 8.12777786e+01, 5.94444466e+00, + 2.55555558e+00, 4.08333321e+01, 8.32222214e+01, 1.33888893e+01, + 8.88888931e+00, 4.54444427e+01, 9.72222233e+00, 1.22222221e+00, + 2.05555558e+00, 1.42777777e+01, 1.63888893e+01, 1.05555553e+01, + 6.16666651e+00, 1.06111107e+01, 8.42777786e+01, 4., + 9.44444466e+00, 35., 5.19444427e+01, 1.79444447e+01, + 2.88333340e+01, 9.06111145e+01, 8.52777786e+01, 1.10555553e+01, + 9.66666698e+00, 4.66111107e+01, 1.17611115e+02, 4.88333321e+01, + 2.27777786e+01, 5.17777786e+01, 9.48888855e+01, 1.69444447e+01, + 3.27777767e+00, 3.70555573e+01, 7.46111145e+01, 2.73333340e+01, + 1.56111107e+01, 4.63888893e+01, 6.50000000e+00, 2.11111116e+00, + 1.77777779e+00, 1.37777777e+01, 1.59444447e+01, 14., + 1.16111107e+01, 9.44444466e+00, 5.11111107e+01, 2.16111107e+01, + 2.62222214e+01, 2.84444447e+01, 2.45000000e+01, 2.45555553e+01, + 3.13888893e+01, 7.52777786e+01, 5.28333321e+01, 2.35000000e+01, + 2.72222214e+01, 3.77222214e+01, 1.03666664e+02, 8.28888855e+01, + 2.89444447e+01, 2.71111107e+01, 8.33888855e+01, 2.63888893e+01, + 3.88888884e+00, 1.67222214e+01, 7.24444427e+01, 5.24444427e+01, + 1.77777786e+01, 2.76111107e+01, 8.05555534e+00, 4.22222233e+00, + 1.83333337e+00, 6.50000000e+00, 9.55555534e+00, 1.26111107e+01, + 1.33333330e+01, 8.66666698e+00, 2.48333340e+01, 2.85000000e+01, + 2.55000000e+01, 1.78333340e+01, 13., 1.72777786e+01, + 2.08333340e+01, 2.85555553e+01, 2.62222214e+01, 1.71666660e+01, + 2.08333340e+01, 3.52222214e+01, 6.41111145e+01, 4.60555573e+01, + 1.84444447e+01, 1.33888893e+01, 6.87777786e+01, 1.37222223e+01, + 3.16666675e+00, 2.11111107e+01, 71., 2.88333340e+01, + 8.11111069e+00, 2.76666660e+01, 7.11111116e+00, 2.72222233e+00, + 2.94444442e+00, 4.66666651e+00, 8.16666698e+00, 1.01666670e+01, + 6.94444466e+00, 4.61111116e+00, 4.18636360e+01, 2.05454540e+01, + 1.85681820e+01, 1.79318180e+01, 2.74772720e+01, 2.81818180e+01, + 2.37727280e+01, 3.96590919e+01, 5.56590919e+01, 4.42045441e+01, + 1.18409090e+01, 1.66818180e+01, 9.76590881e+01, 8.66590881e+01, + 2.72500000e+01, 1.53636360e+01, 5.87272720e+01, 4.66136360e+01, + 5.43181801e+00, 7.97727251e+00, 5.46590919e+01, 31., + 9.47727299e+00, 9.90909100e+00, 4.75000000e+00, 3.90909100e+00, + 2.79545450e+00, 3.15909100e+00, 3.09090900e+00, 4.18181801e+00, + 4.09090900e+00, 2.22727275e+00, 3.56818199e+01, 2.64318180e+01, + 2.38636360e+01, 2.03181820e+01, 2.02272720e+01, 2.71363640e+01, + 3.18636360e+01, 4.01136360e+01, 5.18409081e+01, 3.01363640e+01, + 1.30227270e+01, 2.38636360e+01, 1.16840912e+02, 7.94772720e+01, + 2.81363640e+01, 2.53181820e+01, 8.85000000e+01, 4.51136360e+01, + 4.75000000e+00, 1.32272730e+01, 1.16295456e+02, 4.99090919e+01, + 5.38636351e+00, 1.67272720e+01, 1.69772720e+01, 7.20454550e+00, + 3.22727275e+00, 3.81818175e+00, 4.50000000e+00, 4.70454550e+00, + 2.81818175e+00, 4.70454550e+00, 3.92954559e+01, 4.74772720e+01, + 2.64772720e+01, 1.53636360e+01, 2.18409100e+01, 2.35909100e+01, + 2.10227280e+01, 2.38409100e+01, 4.68181801e+01, 2.54772720e+01, + 1.85227280e+01, 6.79090881e+01, 1.15022728e+02, 3.88181801e+01, + 1.74318180e+01, 3.40227280e+01, 8.90227280e+01, 2.17045460e+01, + 4.93181801e+00, 4.77045441e+01, 1.21636360e+02, 2.13636360e+01, + 4.25000000e+00, 3.24545441e+01, 1.97045460e+01, 7.09090900e+00, + 3.29545450e+00, 2.45454550e+00, 3.84090900e+00, 3.75000000e+00, + 2.29545450e+00, 5.11363649e+00, 5.18409081e+01, 5.91818199e+01, + 3.67045441e+01, 1.61818180e+01, 2.78636360e+01, 2.47727280e+01, + 2.05681820e+01, 1.47727270e+01, 4.12045441e+01, 2.40909100e+01, + 1.96136360e+01, 7.87500000e+01, 9.45227280e+01, 2.87500000e+01, + 1.27954550e+01, 2.91136360e+01, 6.02272720e+01, 1.22954550e+01, + 5.22727251e+00, 3.82727280e+01, 62., 1.51818180e+01, + 4.61363649e+00, 3.19090900e+01, 1.03409090e+01, 4.61363649e+00, + 3.18181825e+00, 1.93181813e+00, 1.54545450e+00, 2.02272725e+00, + 1.72727275e+00, 3.13636374e+00, 7.84782600e+00, 3.43478251e+00, + 2.76086950e+00, 3.82608700e+00, 10., 3.73913040e+01, + 4.68043480e+01, 1.79565220e+01, 7.34782600e+00, 3.65217400e+00, + 3.84782600e+00, 4.54347849e+00, 1.79782600e+01, 1.10282608e+02, + 1.10217392e+02, 2.62173920e+01, 7.32608700e+00, 3.09130440e+01, + 2.18260860e+01, 3.21739125e+00, 2.40434780e+01, 1.57413040e+02, + 1.34326080e+02, 1.53695650e+01, 4.58913040e+01, 1.47304352e+02, + 8.33913040e+01, 2.08695650e+00, 1.90434780e+01, 1.51869568e+02, + 1.19108696e+02, 1.12173910e+01, 1.25434780e+01, 1.07173910e+01, + 8.10869598e+00, 5.67391300e+00, 7.65217400e+00, 1.86521740e+01, + 2.84347820e+01, 2.07391300e+01, 1.88478260e+01, 1.20869570e+01, + 8.63043499e+00, 8.60869598e+00, 1.67608700e+01, 4.35869560e+01, + 58., 3.44782600e+01, 1.57608700e+01, 8.13043499e+00, + 5.54347849e+00, 7.43478251e+00, 2.02608700e+01, 8.59130402e+01, + 9.07173920e+01, 3.79782600e+01, 9.06521702e+00, 2.15434780e+01, + 6.58695650e+00, 3.21739125e+00, 2.55217400e+01, 1.44391312e+02, + 1.13673912e+02, 1.86304340e+01, 1.26304350e+01, 1.10869570e+01, + 8.39130402e+00, 6.91304350e+00, 6.63043499e+00, 8.02173901e+00, + 1.18695650e+01, 1.36304350e+01, 2.36086960e+01, 1.86956520e+01, + 1.19347830e+01, 1.08913040e+01, 1.31739130e+01, 1.98913040e+01, + 2.73478260e+01, 2.23260860e+01, 2.17173920e+01, 1.54130430e+01, + 1.02826090e+01, 1.13260870e+01, 15., 2.49565220e+01, + 3.49130440e+01, 2.91739140e+01, 1.12173910e+01, 9.50000000e+00, + 7.82608700e+00, 8.34782600e+00, 2.17391300e+01, 4.56739120e+01, + 3.60217400e+01, 1.95652180e+01, 3.13043475e+00, 1.82608700e+00, + 1.73913038e+00, 2.06521749e+00, 1.84782612e+00, 1.28260875e+00, + 2.43478251e+00, 4.08695650e+00, 7.34782600e+00, 4.36956501e+00, + 3.43478251e+00, 3.97826076e+00, 4.36956501e+00, 5.30434799e+00, + 9.80434799e+00, 1.07826090e+01, 9.10869598e+00, 6.08695650e+00, + 4.36956501e+00, 5.58695650e+00, 6.17391300e+00, 6.95652151e+00, + 1.04782610e+01, 1.00869570e+01, 5.82608700e+00, 4.26086950e+00, + 4.06521749e+00, 5.10869551e+00, 6.21739149e+00, 7.86956501e+00, + 7.78260851e+00, 6.63043499e+00, 6.42105246e+00, 8.18421078e+00, + 4.36842108e+00, 3.63157892e+00, 6.68421030e+00, 5.15789461e+00, + 5.97368431e+00, 6.28947353e+00, 6.10526323e+00, 4.73684216e+00, + 6., 4.50000000e+00, 6.42105246e+00, 5.13157892e+00, + 6.15789461e+00, 9.18421078e+00, 4.31578970e+00, 3.73684216e+00, + 5.68421030e+00, 5.15789461e+00, 7., 6.81578970e+00, + 5.31578970e+00, 5.28947353e+00, 2.68421054e+00, 3.21052623e+00, + 3.55263162e+00, 3.78947377e+00, 5.15789461e+00, 4.71052647e+00, + 2.21052623e+00, 1.89473689e+00, 3.23684196e+01, 7.45789490e+01, + 3.39473686e+01, 1.46842108e+01, 1.55000000e+01, 1.38421049e+01, + 1.49473686e+01, 1.55000000e+01, 2.73421059e+01, 3.13947372e+01, + 2.40526314e+01, 1.94736843e+01, 2.04736843e+01, 2.10789471e+01, + 2.53684216e+01, 2.88421059e+01, 1.57105265e+01, 1.35789471e+01, + 1.77368412e+01, 2.46578941e+01, 2.73947372e+01, 2.37105255e+01, + 2.51842098e+01, 2.31315784e+01, 9.65789509e+00, 9.23684216e+00, + 1.18947372e+01, 1.32631578e+01, 1.46052628e+01, 1.68157902e+01, + 1.51052628e+01, 1.27105265e+01, 6.30526314e+01, 1.67052628e+02, + 6.48947372e+01, 1.21052628e+01, 2.05789471e+01, 6.78157883e+01, + 1.13684206e+01, 7.21052647e+00, 5.71315804e+01, 1.03210526e+02, + 5.53684196e+01, 1.98157902e+01, 1.51578951e+01, 1.78421059e+01, + 1.70789471e+01, 2.06315784e+01, 2.43421059e+01, 2.84736843e+01, + 2.98684216e+01, 27., 2.47894745e+01, 1.98421059e+01, + 2.61315784e+01, 2.68947372e+01, 9.81578922e+00, 9.63157940e+00, + 1.30789471e+01, 1.28684206e+01, 1.31578951e+01, 1.27894735e+01, + 1.90789471e+01, 1.74473686e+01, 5.72631569e+01, 1.63394730e+02, + 5.62631569e+01, 8.28947353e+00, 8.44736862e+01, 1.75684204e+02, + 4.74736824e+01, 4.36842108e+00, 6.43684235e+01, 1.71263153e+02, + 8.29210510e+01, 8., 1.33947372e+01, 4.31578941e+01, + 9.55263138e+00, 8.21052647e+00, 4.25000000e+01, 8.62894745e+01, + 4.38684196e+01, 1.37368422e+01, 9.71052647e+00, 9.97368431e+00, + 1.08684206e+01, 1.34736843e+01, 9.39473724e+00, 1.49736843e+01, + 1.48157892e+01, 1.07894735e+01, 8.42105293e+00, 7.34210539e+00, + 9.97368431e+00, 1.30526314e+01, 1.16842108e+01, 3.44736838e+00, + 2.07894731e+00, 2.89473677e+00, 2.68157902e+01, 1.08973686e+02, + 1.37921051e+02, 1.21315794e+01, 9.61578979e+01, 6.23684216e+00, + 2.05263162e+00, 1.52631581e+00, 3.44736838e+00, 6.71052628e+01, + 1.50736847e+02, 9.12894745e+01, 8.87631607e+01, 1.25789471e+01, + 5., 4.50000000e+00, 7.23684216e+00, 1.35000000e+01, + 5.82105255e+01, 7.09473648e+01, 6.86842108e+00, 4.57894754e+00, + 5.50000000e+00, 9., 1.01315794e+01, 6.07894754e+00, + 7.84210539e+00, 9.89473724e+00, 2.60526314e+01, 1.84210529e+01, + 9.31578922e+00, 7.26315784e+00, 1.95000000e+01, 5.71052628e+01, + 9.03421021e+01, 2.24473686e+01, 3.99210510e+01, 1.73684216e+01, + 1.16315794e+01, 9.78947353e+00, 1.73421059e+01, 5.15526314e+01, + 1.18315788e+02, 5.98684196e+01, 4.45789490e+01, 2.28157902e+01, + 1.44210529e+01, 1.55263157e+01, 2.02105255e+01, 2.28157902e+01, + 5.62894745e+01, 5.07368431e+01, 1.04473686e+01, 1.25526314e+01, + 13., 2.31052628e+01, 1.71052628e+01, 9.71052647e+00, + 1.25263157e+01, 1.77894745e+01, 3.41315804e+01, 3.98421059e+01, + 1.55263157e+01, 9.81578922e+00, 1.83947372e+01, 3.43947372e+01, + 1.95789471e+01, 1.40526314e+01, 2.62105255e+01, 29., + 2.11578941e+01, 1.76315784e+01, 2.31052628e+01, 3.18157902e+01, + 2.27368412e+01, 1.69736843e+01, 2.09473686e+01, 2.58157902e+01, + 2.09736843e+01, 3.12105255e+01, 2.53684216e+01, 2.06052628e+01, + 2.22105255e+01, 2.01578941e+01, 1.36842108e+01, 1.65526314e+01, + 1.28157892e+01, 2.80263157e+01, 1.58947372e+01, 1.01578951e+01, + 1.17894735e+01, 1.60789471e+01, 4.07368431e+01, 5.33157883e+01, + 1.28947372e+01, 7.94736862e+00, 1.96052628e+01, 3.79736824e+01, + 1.81578941e+01, 7.92105246e+00, 2.55789471e+01, 2.83157902e+01, + 1.82631588e+01, 1.99736843e+01, 2.75000000e+01, 3.54473686e+01, + 2.49473686e+01, 1.75000000e+01, 1.63157902e+01, 2.15789471e+01, + 1.62631588e+01, 3.42894745e+01, 2.47105255e+01, 1.99736843e+01, + 2.73684216e+01, 2.07894745e+01, 1.36315794e+01, 1.45526314e+01, + 10., 2.19210529e+01, 9.73684216e+00, 9.57894707e+00, + 1.51052628e+01, 2.03421059e+01, 1.88679248e-01, 2.07547173e-01, + 6.79245293e-01, 5.37735844e+00, 8.81132030e+00, 2.39622641e+00, + 8.11320782e-01, 3.39622647e-01, 3.45283008e+00, 2.75471687e+00, + 5.43396235e+00, 3.46792450e+01, 8.45660400e+01, 2.67358494e+01, + 3.83018875e+00, 2.37735844e+00, 5.21320763e+01, 9., + 4.43396235e+00, 3.45094337e+01, 1.08962265e+02, 2.72075462e+01, + 5.56603765e+00, 2.31132069e+01, 7.79811325e+01, 1.63773594e+01, + 2.09433961e+00, 2.55849056e+01, 8.08490601e+01, 1.13773584e+01, + 1.66037738e+00, 3.33396225e+01, 2.64150947e-01, 2.07547173e-01, + 4.71698105e-01, 2.86792445e+00, 1.32452831e+01, 7.22641516e+00, + 1.39622641e+00, 3.39622647e-01, 4.69811344e+00, 3.15094328e+00, + 5.07547188e+00, 2.40377350e+01, 1.00811317e+02, 5.45283012e+01, + 8.62264156e+00, 4.45283031e+00, 5.99245300e+01, 1.89245281e+01, + 6.13207531e+00, 2.02830181e+01, 1.19547173e+02, 5.96981125e+01, + 1.12641506e+01, 1.49056606e+01, 9.23962250e+01, 4.34716988e+01, + 5.50943375e+00, 1.20188675e+01, 1.03339622e+02, 3.66603775e+01, + 1.90566039e+00, 1.76792450e+01, 4.33962256e-01, 1.88679248e-01, + 2.83018857e-01, 1.37735844e+00, 1.18301888e+01, 1.38679247e+01, + 2.22641516e+00, 4.52830195e-01, 3.56603765e+00, 2.26415086e+00, + 3.15094328e+00, 1.16037731e+01, 1.02566040e+02, 8.87924500e+01, + 1.23207550e+01, 3.54716992e+00, 3.49433975e+01, 2.08867931e+01, + 6.07547188e+00, 1.08113203e+01, 1.05641510e+02, 9.32075500e+01, + 1.63584900e+01, 1.00377359e+01, 6.21320763e+01, 6.30566025e+01, + 7.35849047e+00, 4.56603765e+00, 1.05981133e+02, 8.66037750e+01, + 3.33962274e+00, 5.50943375e+00, 7.16981113e-01, 4.71698105e-01, + 3.58490556e-01, 8.30188692e-01, 6.13207531e+00, 9.83018875e+00, + 2.71698117e+00, 9.43396211e-01, 1.92452836e+00, 1.66037738e+00, + 2.39622641e+00, 6.35849047e+00, 7.15660400e+01, 9.20188675e+01, + 1.67169819e+01, 3.11320758e+00, 9.81132030e+00, 1.07924528e+01, + 3.41509438e+00, 6.75471687e+00, 7.45094376e+01, 1.05849060e+02, + 2.22075462e+01, 5.60377359e+00, 2.11698112e+01, 4.25283012e+01, + 5.26415110e+00, 3.54716992e+00, 7.46981125e+01, 1.11150940e+02, + 8.26415062e+00, 3.22641516e+00, 1.10625000e+01, 2.98500004e+01, + 8.37500000e+00, 3.15000010e+00, 8.81250000e+00, 2.63500004e+01, + 1.10749998e+01, 5.44999981e+00, 6.90124969e+01, 1.27712502e+02, + 1.18249998e+01, 2.01250005e+00, 1.72000008e+01, 5.74874992e+01, + 1.23000002e+01, 9.58749962e+00, 4.94124985e+01, 1.07324997e+02, + 6.08750010e+00, 3.82500005e+00, 4.29249992e+01, 1.24287498e+02, + 1.62875004e+01, 7.03749990e+00, 1.12749996e+01, 3.28750000e+01, + 7.13749981e+00, 5.11250019e+00, 37., 1.07150002e+02, + 1.89125004e+01, 5.44999981e+00, 7.81250000e+00, 8.38749981e+00, + 6.33750010e+00, 4.67500019e+00, 7.59999990e+00, 1.34624996e+01, + 1.00124998e+01, 7.68750000e+00, 3.63375015e+01, 8.15999985e+01, + 9.92500019e+00, 4.36250019e+00, 2.57000008e+01, 5.79375000e+01, + 1.26750002e+01, 9.97500038e+00, 1.03449997e+02, 1.37024994e+02, + 6.81250000e+00, 4.25000000e+00, 3.05249996e+01, 7.74124985e+01, + 7.31250000e+00, 6.61250019e+00, 2.63750000e+01, 6.64000015e+01, + 5.76249981e+00, 8.47500038e+00, 6.00625000e+01, 1.22275002e+02, + 17., 6.12500000e+00, 6.83750010e+00, 6.55000019e+00, + 5.77500010e+00, 5.18750000e+00, 5.48750019e+00, 7.37500000e+00, + 7.75000000e+00, 6.87500000e+00, 1.33374996e+01, 1.47624998e+01, + 9.55000019e+00, 6.90000010e+00, 1.70125008e+01, 2.78624992e+01, + 1.10874996e+01, 1.14125004e+01, 8.08625031e+01, 1.22974998e+02, + 7.97499990e+00, 4.16249990e+00, 2.76749992e+01, 6.08875008e+01, + 8.07499981e+00, 9.23750019e+00, 6.26749992e+01, 114., + 1.29875002e+01, 9.43750000e+00, 3.85499992e+01, 7.13625031e+01, + 6.32499981e+00, 4.77500010e+00, 6.15000010e+00, 5.18750000e+00, + 4.72499990e+00, 4.31250000e+00, 2.95000005e+00, 3.66249990e+00, + 5.15000010e+00, 5.26249981e+00, 7.65000010e+00, 6.30000019e+00, + 6.90000010e+00, 5.82499981e+00, 7.11250019e+00, 1.06499996e+01, + 7.96250010e+00, 9.08749962e+00, 2.63875008e+01, 35., + 6.57499981e+00, 4.13749981e+00, 1.49624996e+01, 3.28125000e+01, + 8.73750019e+00, 8.86250019e+00, 4.85000000e+01, 1.06562500e+02, + 1.16499996e+01, 5.01249981e+00, 1.55500002e+01, 3.52750015e+01, + 6.94999981e+00, 4.50000000e+00, 7.30769253e+00, 4.44230747e+00, + 1.39230766e+01, 5.90961533e+01, 3.07500000e+01, 1.98076928e+00, + 1.21153843e+00, 4.46153831e+00, 5.30769253e+00, 2.32692313e+00, + 5.73076916e+00, 8.73269196e+01, 6.31346169e+01, 1.01923072e+00, + 5.96153855e-01, 5.13461542e+00, 4.19423065e+01, 1.42307687e+00, + 2.76923084e+00, 2.27500000e+01, 2.49615383e+01, 2.07692313e+00, + 1.42307687e+00, 4.08076935e+01, 1.15711540e+02, 3.34615374e+00, + 1.44230771e+00, 1.61538458e+00, 1.75000000e+00, 1.19230771e+00, + 2.25000000e+00, 9.07115402e+01, 2.88461542e+00, 3.26923084e+00, + 3.37884598e+01, 9.84807663e+01, 2.08269234e+01, 1.44230771e+00, + 5.01923084e+00, 6.96153831e+00, 5.50000000e+00, 3.30769229e+00, + 1.15192308e+01, 8.20961533e+01, 2.55000000e+01, 1.59615386e+00, + 9.25000000e+00, 3.20384598e+01, 6.71538467e+01, 2.23076916e+00, + 3.21153855e+00, 1.10576925e+01, 6.53846169e+00, 1.63461542e+00, + 7.71153831e+00, 1.27692307e+02, 9.53653870e+01, 4.78846169e+00, + 2.09615374e+00, 2.84615374e+00, 3.84615374e+00, 2.76923084e+00, + 6.07692289e+00, 1.22769234e+02, 2.11538458e+00, 2., + 2.30961533e+01, 4.72500000e+01, 8.30769253e+00, 2.59615374e+00, + 4.77692299e+01, 3.47115402e+01, 7.03846169e+00, 1.86538458e+00, + 6.82692289e+00, 1.79423084e+01, 4.30769253e+00, 2.13461542e+00, + 7.08846130e+01, 1.27846153e+02, 3.90192299e+01, 2.21153855e+00, + 2.48076916e+00, 4.96153831e+00, 3.11538458e+00, 1.98076928e+00, + 3.41538467e+01, 1.36423080e+02, 4.28269234e+01, 5.30769253e+00, + 2.88461542e+00, 3.86538458e+00, 5.69230747e+00, 4.09615374e+00, + 1.44423075e+01, 8.77115402e+01, 2.38461542e+00, 1.07692313e+00, + 4.67307711e+00, 3.88461542e+00, 1.51923072e+00, 3.75000000e+00, + 1.15653847e+02, 8.82500000e+01, 6.40384626e+00, 1.53846157e+00, + 2.98076916e+00, 4.11538458e+00, 2.40384626e+00, 4.40384626e+00, + 8.92115402e+01, 1.24480766e+02, 1.88269234e+01, 2.78846145e+00, + 2.42307687e+00, 4.94230747e+00, 5.38461542e+00, 5.07692289e+00, + 3.61346169e+01, 9.42307663e+01, 1.60769234e+01, 4.26923084e+00, + 3.55769229e+00, 4.19230747e+00, 6.17307711e+00, 6.34615374e+00, + 1.32115383e+01, 3.04807701e+01, 1.28636360e+01, 5.56818199e+00, + 6.22727251e+00, 1.99090900e+01, 8., 2.09090900e+00, + 4.79545450e+00, 1.39545450e+01, 3.18863640e+01, 5.29545450e+00, + 1.12272730e+01, 4.04772720e+01, 1.37045450e+01, 2.95454550e+00, + 1.37045450e+01, 73., 1.98863640e+01, 4.50000000e+00, + 9.93181801e+00, 2.40454540e+01, 8.50000000e+00, 7.61363649e+00, + 3.60454559e+01, 9.14545441e+01, 7.27272749e+00, 3.54545450e+00, + 5.79545450e+00, 1.11136360e+01, 1.02272730e+01, 1.15681820e+01, + 2.33409100e+01, 3.25681801e+01, 3.06590900e+01, 9.06818199e+00, + 1.79318180e+01, 5.67045441e+01, 1.56363640e+01, 2.93181825e+00, + 2.28863640e+01, 5.68409081e+01, 8.50454559e+01, 2.03181820e+01, + 1.78863640e+01, 4.42272720e+01, 2.49318180e+01, 1.32045450e+01, + 3.12500000e+01, 9.95454559e+01, 4.70909081e+01, 1.84772720e+01, + 1.84772720e+01, 1.99545460e+01, 1.99545460e+01, 2.33636360e+01, + 2.83181820e+01, 5.63636360e+01, 7.65909100e+00, 6.75000000e+00, + 1.54090910e+01, 3.59318199e+01, 2.00454540e+01, 1.56363640e+01, + 1.90681820e+01, 1.93181820e+01, 12., 4.15909100e+00, + 3.09090900e+01, 7.17500000e+01, 7.84090900e+00, 4.25000000e+00, + 6.51136398e+01, 1.21022728e+02, 3.08409100e+01, 2.18181820e+01, + 7.38181839e+01, 9.35909119e+01, 1.44090910e+01, 2.08863640e+01, + 5.75227280e+01, 9.34090881e+01, 1.47954550e+01, 3.80227280e+01, + 1.02454544e+02, 6.92954559e+01, 1.04090910e+01, 2.33863640e+01, + 4.33863640e+01, 3.44545441e+01, 3.72727275e+00, 1.11590910e+01, + 8.01590881e+01, 7.50227280e+01, 6.31818199e+00, 8.25000000e+00, + 31., 2.87272720e+01, 4.95454550e+00, 1.86363637e+00, + 5.53409081e+01, 1.05659088e+02, 1.79545450e+00, 9.31818187e-01, + 2.52045460e+01, 7.60454559e+01, 7., 1.29090910e+01, + 6.60681839e+01, 9.88863602e+01, 5.04545450e+00, 4.22727251e+00, + 3.35454559e+01, 49., 4.29545450e+00, 2.39318180e+01, + 6.35000000e+01, 4.10227280e+01, 3.13636374e+00, 6.40909100e+00, + 4.12500000e+01, 2.73181820e+01, 3.13636374e+00, 7.56818199e+00, + 3.98181801e+01, 2.46363640e+01, 2.38636374e+00, 5.34090900e+00, + 2.33409100e+01, 2.05454540e+01, 2.10526317e-01, 1.05263159e-01, + 1.07894742e+00, 4.31578970e+00, 4.94736862e+00, 1.02631581e+00, + 7.36842096e-01, 7.10526288e-01, 5.18421030e+00, 1.73684216e+00, + 4.86842108e+00, 5.37105255e+01, 7.07631607e+01, 1.14210529e+01, + 5.65789461e+00, 4.71052647e+00, 9.36842060e+00, 3.57894731e+00, + 1.02894735e+01, 7.68684235e+01, 7.22894745e+01, 1.56052628e+01, + 4.73684216e+00, 3.52631569e+00, 1.27631577e+02, 7.42105246e+00, + 1.30789471e+01, 3.61578941e+01, 4.10263176e+01, 8.26315784e+00, + 3.28947377e+00, 7.98947372e+01, 1.31578952e-01, 1.05263159e-01, + 1.21052635e+00, 7.65789461e+00, 1.01315794e+01, 1.86842108e+00, + 7.36842096e-01, 4.47368413e-01, 1.34210527e+00, 1.15789473e+00, + 4.21052647e+00, 5.07105255e+01, 1.09763161e+02, 2.39210529e+01, + 6.42105246e+00, 2.78947377e+00, 1.34736843e+01, 3.86842108e+00, + 7.15789461e+00, 6.02105255e+01, 1.03710526e+02, 37., + 7.55263138e+00, 3.84210515e+00, 1.53552628e+02, 3.03684216e+01, + 8.31578922e+00, 2.77105255e+01, 6.63157883e+01, 1.86052628e+01, + 5.07894754e+00, 6.35789490e+01, 7.89473653e-02, 1.31578952e-01, + 7.10526288e-01, 6.47368431e+00, 1.25526314e+01, 3.21052623e+00, + 8.42105269e-01, 6.84210539e-01, 7.36842096e-01, 8.68421078e-01, + 2.63157892e+00, 2.73684216e+01, 1.07526314e+02, 3.55526314e+01, + 6.92105246e+00, 4.65789461e+00, 1.00789471e+01, 2.76315784e+00, + 3.44736838e+00, 3.11842098e+01, 1.01657898e+02, 6.05526314e+01, + 1.30263157e+01, 4.89473677e+00, 1.53552628e+02, 8.17105255e+01, + 4.52631569e+00, 1.41052628e+01, 5.60789490e+01, 3.47894745e+01, + 9.92105293e+00, 2.27105255e+01, 5.26315793e-02, 2.63157897e-02, + 2.10526317e-01, 3.31578946e+00, 9.31578922e+00, 3.86842108e+00, + 8.42105269e-01, 6.57894731e-01, 1.07894742e+00, 7.10526288e-01, + 1.47368419e+00, 13., 7.37894745e+01, 3.35263176e+01, + 6.71052647e+00, 5.73684216e+00, 5.15789461e+00, 1.76315784e+00, + 1.76315784e+00, 1.13947372e+01, 7.36315765e+01, 6.64210510e+01, + 1.37894735e+01, 6.63157892e+00, 1.21763161e+02, 8.02894745e+01, + 2.47368431e+00, 5.05263138e+00, 2.93684216e+01, 4.18421059e+01, + 1.51052628e+01, 7.52631569e+00, 4.85245895e+00, 3.14754105e+00, + 3.22950816e+00, 3.90163946e+00, 4.90163946e+00, 4.81967211e+00, + 5.67213106e+00, 4.39344263e+00, 6.18032789e+00, 4.06557369e+00, + 3.21311474e+00, 3.78688526e+00, 5.85245895e+00, 6.77049160e+00, + 8.65573788e+00, 7.22950840e+00, 5.21311474e+00, 4.88524580e+00, + 2.80327868e+00, 3.37704921e+00, 5.81967211e+00, 8.40983582e+00, + 7.01639366e+00, 5.36065578e+00, 3.40983605e+00, 3.57377052e+00, + 1.80327868e+00, 2.65573764e+00, 4.60655737e+00, 6.01639366e+00, + 4.68852472e+00, 3.55737710e+00, 1.93606548e+01, 1.66065578e+01, + 2.45245895e+01, 1.69836063e+01, 20., 2.08196716e+01, + 2.04262295e+01, 2.41967220e+01, 2.79016399e+01, 1.89180336e+01, + 2.82131157e+01, 1.75573769e+01, 2.16229515e+01, 2.40655746e+01, + 2.63770485e+01, 3.39344254e+01, 2.43770485e+01, 1.77704926e+01, + 2.52622948e+01, 17., 2.48196716e+01, 3.41147537e+01, + 2.71147537e+01, 3.02786884e+01, 1.60655746e+01, 1.36885242e+01, + 2.10491810e+01, 1.54918032e+01, 1.89180336e+01, 2.61803284e+01, + 2.35409832e+01, 2.27704926e+01, 1.01639347e+01, 4.21475410e+01, + 1.15737701e+02, 2.76393452e+01, 1.21967211e+01, 2.95737705e+01, + 7.66065598e+01, 2.06721306e+01, 1.63606548e+01, 4.86885262e+01, + 123., 3.41639328e+01, 1.14098358e+01, 2.73934422e+01, + 8.90655746e+01, 3.23934441e+01, 1.58524590e+01, 4.57704926e+01, + 1.22311478e+02, 3.96229515e+01, 1.55409832e+01, 3.11803284e+01, + 8.54098358e+01, 3.34098358e+01, 1.14918032e+01, 3.41475410e+01, + 1.08344261e+02, 3.41475410e+01, 1.52622948e+01, 2.59672127e+01, + 6.78360672e+01, 2.61475410e+01, 6.34426212e+00, 2.83770485e+01, + 9.35573807e+01, 1.62131157e+01, 6.78688526e+00, 3.24590149e+01, + 1.02163933e+02, 1.97213116e+01, 1.09672127e+01, 3.35573769e+01, + 1.07508194e+02, 1.86229515e+01, 5.81967211e+00, 3.41967201e+01, + 1.19344261e+02, 3.20163918e+01, 1.08524590e+01, 2.85081959e+01, + 1.07360657e+02, 2.22622948e+01, 1.08360653e+01, 3.80327873e+01, + 1.20819672e+02, 3.58688507e+01, 1.03442621e+01, 2.25409832e+01, + 8.97704926e+01, 2.01803284e+01, 9.49180317e+00, 2.93606548e+01, + 9.65901642e+01, 3.05081959e+01, 1.90625000e+00, 6.25000000e-01, + 8.75000000e-01, 7., 7.17187500e+00, 1.45312500e+00, + 3.73437500e+00, 4.15625000e+00, 2.52031250e+01, 3.62500000e+00, + 7.03125000e+00, 1.42187500e+01, 1.05937500e+01, 6.28125000e+00, + 1.63750000e+01, 5.41718750e+01, 2.80468750e+01, 4.23437500e+00, + 1.37656250e+01, 2.47500000e+01, 1.20781250e+01, 6.81250000e+00, + 7.87968750e+01, 1.19015625e+02, 6.92187500e+00, 8.51562500e+00, + 2.54531250e+01, 2.05781250e+01, 6.14062500e+00, 1.90625000e+01, + 1.02093750e+02, 6.77812500e+01, 4.90625000e+00, 9.06250000e-01, + 1.28125000e+00, 5.62500000e+00, 8.04687500e+00, 2.23437500e+00, + 3.59375000e+00, 6.82812500e+00, 1.08015625e+02, 2.56250000e+01, + 8.51562500e+00, 2.33125000e+01, 1.97187500e+01, 6.37500000e+00, + 1.19062500e+01, 8.29843750e+01, 8.89375000e+01, 1.89843750e+01, + 1.71562500e+01, 3.53281250e+01, 3.52187500e+01, 1.76718750e+01, + 4.16562500e+01, 1.03468750e+02, 1.12812500e+01, 1.20937500e+01, + 2.40312500e+01, 2.31406250e+01, 1.47500000e+01, 1.25000000e+01, + 3.77968750e+01, 3.74375000e+01, 6.65625000e+00, 3.60937500e+00, + 1.53125000e+00, 2.79687500e+00, 1.02656250e+01, 5.59375000e+00, + 1.48437500e+00, 3.34375000e+00, 1.08656250e+02, 9.92968750e+01, + 1.35312500e+01, 1.15625000e+01, 2.95781250e+01, 2.30468750e+01, + 6.03125000e+00, 2.11875000e+01, 9.02187500e+01, 1.15531250e+02, + 6.06406250e+01, 2.75156250e+01, 4.08750000e+01, 3.70312500e+01, + 1.75937500e+01, 2.75625000e+01, 1.15937500e+01, 2.89062500e+01, + 6.01718750e+01, 3.03906250e+01, 1.70781250e+01, 2.02031250e+01, + 2.29062500e+01, 1.43750000e+01, 2.09375000e+00, 3.57812500e+00, + 2.85937500e+00, 1.62500000e+00, 8.06250000e+00, 8.20312500e+00, + 1.04687500e+00, 1.07812500e+00, 1.64218750e+01, 4.94375000e+01, + 1.60937500e+01, 5.09375000e+00, 1.89218750e+01, 3.11718750e+01, + 9.32812500e+00, 2.20312500e+00, 2.25000000e+01, 1.16812500e+02, + 8.96406250e+01, 9.25000000e+00, 1.46093750e+01, 3.97031250e+01, + 2.48437500e+01, 3.90625000e+00, 5.35937500e+00, 6.24687500e+01, + 1.11328125e+02, 3.12968750e+01, 4.96875000e+00, 2.30937500e+01, + 4.05937500e+01, 1.10156250e+01, 4.53846169e+00, 1.30038467e+02, + 5.49423065e+01, 1.80769229e+00, 4.63461542e+00, 1.06153847e+02, + 3.99615402e+01, 1.71153843e+00, 4.48076916e+00, 8.07884598e+01, + 7.20576935e+01, 4., 2.98076916e+00, 1.24461540e+02, + 1.23365387e+02, 2.61538458e+00, 4.28846169e+00, 2.81923084e+01, + 5.54615402e+01, 8.63461494e+00, 2.75000000e+00, 5.94038467e+01, + 1.30884613e+02, 7.17307711e+00, 1.84615386e+00, 1.12115383e+01, + 4.32692299e+01, 1.48846149e+01, 2.59615374e+00, 8.92307663e+00, + 1.20750000e+02, 3.12307701e+01, 2.23076916e+00, 5.82307701e+01, + 3.65384598e+01, 2.65384626e+00, 7.82692289e+00, 3.30961533e+01, + 2.27115383e+01, 4.59615374e+00, 3.03846145e+00, 1.14923080e+02, + 1.26423080e+02, 3.76923084e+00, 5.42307711e+00, 4.39230766e+01, + 5.79038467e+01, 8.09615421e+00, 3.11538458e+00, 7.03461533e+01, + 1.34326920e+02, 9.53846169e+00, 3.05769229e+00, 3.83653831e+01, + 1.12615387e+02, 1.20961542e+01, 2.80769229e+00, 1.26346149e+01, + 132., 3.76346169e+01, 2.11538458e+00, 10., 9.88461533e+01, + 2.25769234e+01, 1.25000000e+00, 6.92307711e-01, 1.17307687e+00, + 1.48076928e+00, 5.80769253e+00, 3.53846169e+01, 3.10192299e+01, + 4.98076916e+00, 1.94230771e+00, 2.78846145e+00, 4.84615374e+00, + 2.21153855e+00, 5.73076916e+00, 3.25000000e+01, 4.17115402e+01, + 1.22692308e+01, 2.98076916e+00, 4.53846169e+00, 1.94230766e+01, + 2.75000000e+00, 4.80769253e+00, 2.46346149e+01, 4.02692299e+01, + 1.47115383e+01, 3.19230771e+00, 1.88461542e+00, 1.95192299e+01, + 4.17307711e+00, 3.09615374e+00, 1.36346149e+01, 3.12115383e+01, + 1.54038458e+01, 2.88461536e-01, 2.11538464e-01, 2.30769232e-01, + 3.65384609e-01, 1.55769229e+00, 1.09807692e+01, 9.50000000e+00, + 1.34615386e+00, 4.23076928e-01, 2.50000000e-01, 3.46153855e-01, + 5.38461566e-01, 1.55769229e+00, 1.27115383e+01, 1.52692308e+01, + 2.28846145e+00, 4.80769217e-01, 2.11538464e-01, 4.23076928e-01, + 5.38461566e-01, 1.09615386e+00, 7.67307711e+00, 1.95384617e+01, + 3.36538458e+00, 4.80769217e-01, 9.61538479e-02, 1.53846160e-01, + 3.65384609e-01, 6.92307711e-01, 4.30769253e+00, 1.82692299e+01, + 5.25000000e+00, 35., 4.51621628e+01, 3.72972965e+00, + 2.70270276e+00, 3.57567558e+01, 3.67837830e+01, 5.40540552e+00, + 4.97297287e+00, 6.48108139e+01, 7.44054031e+01, 1.12432432e+01, + 5.21621609e+00, 2.47837830e+01, 3.40270271e+01, 2.01351357e+01, + 9.64864826e+00, 2.98378372e+01, 1.96486492e+01, 1.06486483e+01, + 8.67567539e+00, 1.45945950e+01, 3.23243256e+01, 4.49729729e+01, + 2.18918915e+01, 3.19459457e+01, 1.52972975e+01, 3.27027035e+00, + 1.27297297e+01, 4.67297287e+01, 49., 2.36486492e+01, + 1.60270271e+01, 1.77027035e+01, 3.01081085e+01, 5.78378391e+00, + 2.89189196e+00, 3.95405388e+01, 5.62702713e+01, 4.29729748e+00, + 2.94594598e+00, 7.75675659e+01, 1.16648651e+02, 2.67027035e+01, + 5.83783770e+00, 4.40810814e+01, 7.69729767e+01, 1.33783779e+01, + 6.54054070e+00, 5.34324341e+01, 9.35135117e+01, 6.13783798e+01, + 1.85405407e+01, 1.50540543e+01, 3.95675659e+01, 3.39729729e+01, + 2.11891899e+01, 3.06216221e+01, 2.76486492e+01, 1.97027035e+01, + 3.56216202e+01, 6.50810776e+01, 4.00270271e+01, 2.07837830e+01, + 2.86756763e+01, 8.37837791e+00, 1.05405407e+01, 1.02162161e+01, + 4.89189196e+00, 1.22162161e+01, 2.01351357e+01, 4.70270252e+00, + 4.91891909e+00, 21., 6.18108101e+01, 2.28108101e+01, + 7.43243265e+00, 4.03513527e+01, 8.21081085e+01, 1.72702694e+01, + 3.91891885e+00, 4.92162170e+01, 1.20729729e+02, 8.57027054e+01, + 1.52702703e+01, 3.62972984e+01, 7.61081085e+01, 2.30810814e+01, + 6.59459448e+00, 60., 1.02783783e+02, 4.24324341e+01, + 1.71351357e+01, 5.62162170e+01, 6.20270271e+01, 1.30540543e+01, + 1.85675678e+01, 5.51351357e+00, 6.86486483e+00, 1.00810814e+01, + 6.16216230e+00, 3.83783793e+00, 2.56756759e+00, 2.32432437e+00, + 4.05405426e+00, 9.05405426e+00, 1.18918915e+01, 1.51891890e+01, + 1.02702703e+01, 1.40540543e+01, 2.55675678e+01, 7.18918896e+00, + 3.70270276e+00, 2.63513508e+01, 4.50270271e+01, 1.61891899e+01, + 6.81081104e+00, 4.00810814e+01, 8.16756744e+01, 1.60540543e+01, + 2.43243241e+00, 7.75675659e+01, 1.19837837e+02, 8.21621609e+00, + 2.43243241e+00, 4.28378372e+01, 7.25405426e+01, 4.72972965e+00, + 1.29729724e+00, 6.86206913e+00, 1.06034479e+01, 7.86206913e+00, + 6.79310322e+00, 2.87931042e+01, 8.51206894e+01, 3.45000000e+01, + 1.01379309e+01, 1.04827585e+01, 2.73275871e+01, 1.48103447e+01, + 6.58620691e+00, 2.11724129e+01, 1.31517242e+02, 7.86724167e+01, + 1.36724138e+01, 6.51724148e+00, 2.61206894e+01, 2.95517235e+01, + 9.77586174e+00, 9.55172443e+00, 1.28413788e+02, 1.29241379e+02, + 9.86206913e+00, 7.74137926e+00, 8.34482765e+00, 1.93275871e+01, + 1.13103447e+01, 5.17241383e+00, 4.41724129e+01, 1.26655174e+02, + 3.94137917e+01, 3.77586198e+00, 3.62068963e+00, 3.13793111e+00, + 4.63793087e+00, 2.14310341e+01, 9.27586212e+01, 7.81551743e+01, + 1.19827585e+01, 7.82758617e+00, 8.56896591e+00, 5.44827604e+00, + 5.44827604e+00, 1.22586203e+01, 9.07413788e+01, 1.10758621e+02, + 3.46379318e+01, 1.00517244e+01, 1.01206894e+01, 7.82758617e+00, + 4.13793087e+00, 6.39655161e+00, 8.37931061e+01, 1.33482758e+02, + 4.91206894e+01, 1.21896553e+01, 5.34482765e+00, 6.18965530e+00, + 3.15517235e+00, 3.41379309e+00, 3.33965530e+01, 1.32534485e+02, + 7.40517273e+01, 4.20689678e+00, 2.29310346e+00, 1.74137926e+00, + 2.87931037e+00, 9.72413826e+00, 5.22931023e+01, 6.35172424e+01, + 1.14137936e+01, 3.77586198e+00, 8.79310369e-01, 5.34482777e-01, + 1.65517247e+00, 7.55172396e+00, 5.66206894e+01, 1.06775864e+02, + 2.81206894e+01, 6.29310322e+00, 1.48275864e+00, 1.17241383e+00, + 1.84482753e+00, 4.51724148e+00, 3.77068977e+01, 1.08293106e+02, + 4.89827576e+01, 9.20689678e+00, 2.50000000e+00, 2.20689654e+00, + 2.32758617e+00, 3.72413802e+00, 1.72586212e+01, 7.21551743e+01, + 5.19137917e+01, 5.00000000e-01, 1.72413796e-01, 1.20689653e-01, + 2.41379306e-01, 1.08620691e+00, 3.37931037e+00, 5.20689678e+00, + 1.75862074e+00, 5.34482777e-01, 1.03448279e-01, 1.72413792e-02, + 2.93103456e-01, 1.06896555e+00, 4.72413778e+00, 1.07931032e+01, + 3.10344839e+00, 1.24137926e+00, 2.41379306e-01, 1.20689653e-01, + 2.24137932e-01, 6.72413766e-01, 4.12068987e+00, 1.01724138e+01, + 4.89655161e+00, 1.60344827e+00, 4.48275864e-01, 3.96551728e-01, + 6.03448272e-01, 7.06896544e-01, 1.68965518e+00, 5.44827604e+00, + 5.17241383e+00, 4.75471687e+00, 4.52830172e+00, 3.60377359e+00, + 2.39622641e+00, 2.35849047e+00, 2.43396235e+00, 3.67924523e+00, + 4.37735844e+00, 8.75471687e+00, 8.52830219e+00, 8.79245281e+00, + 1.04905663e+01, 9.98113251e+00, 8.13207531e+00, 8.81132030e+00, + 9.86792469e+00, 3.68679237e+01, 1.38301888e+01, 7.54716969e+00, + 2.51698112e+01, 3.20566025e+01, 8.62264156e+00, 9.67924500e+00, + 2.54905663e+01, 1.06207550e+02, 1.48490562e+01, 3.01886797e+00, + 3.01320763e+01, 4.08867912e+01, 6.35849047e+00, 5.09433985e+00, + 9.52830200e+01, 4.90566015e+00, 4.39622641e+00, 4.01886797e+00, + 3.33962274e+00, 3.94339633e+00, 3.64150953e+00, 5.03773594e+00, + 5.37735844e+00, 1.25283022e+01, 1.18113203e+01, 9.28301907e+00, + 1.60943394e+01, 1.45471697e+01, 1.02641506e+01, 1.14905663e+01, + 1.46981134e+01, 7.56037750e+01, 1.95283012e+01, 6.26415110e+00, + 4.94716988e+01, 5.18113213e+01, 8.22641468e+00, 1.24905663e+01, + 6.90566025e+01, 1.25094337e+02, 16., 3.98113203e+00, + 5.18301888e+01, 6.22830200e+01, 9.66037750e+00, 9.15094376e+00, + 1.14679245e+02, 3.86792445e+00, 4.43396235e+00, 4.37735844e+00, + 5., 4.50943375e+00, 3.71698117e+00, 4.77358484e+00, + 4.60377359e+00, 1.59245281e+01, 1.42830191e+01, 8.64150906e+00, + 2.58113213e+01, 2.17735844e+01, 9.15094376e+00, 1.29245281e+01, + 1.76037731e+01, 1.20056602e+02, 1.21698112e+01, 5.52830172e+00, + 5.71698112e+01, 5.18113213e+01, 5.94339609e+00, 1.21132078e+01, + 1.23622643e+02, 1.07849060e+02, 8.41509438e+00, 6.52830172e+00, + 9.50188675e+01, 9.22075500e+01, 5.83018875e+00, 1.00943394e+01, + 1.11716980e+02, 3.98113203e+00, 3.71698117e+00, 2.35849047e+00, + 5.75471687e+00, 5.98113203e+00, 3.73584914e+00, 3.79245281e+00, + 4.03773594e+00, 3.21698112e+01, 1.03584909e+01, 5.41509438e+00, + 3.20754700e+01, 2.66603775e+01, 6.39622641e+00, 7.96226406e+00, + 3.98867912e+01, 1.25226418e+02, 1.06981134e+01, 6.84905672e+00, + 5.44528313e+01, 4.06037750e+01, 3.94339633e+00, 7.26415110e+00, + 1.19301888e+02, 46., 4.81132078e+00, 7.69811344e+00, + 1.08943398e+02, 9.79245300e+01, 4.45283031e+00, 4.13207531e+00, + 4.49056587e+01, 1.26533337e+01, 9.70666695e+00, 7.57333326e+00, + 7.17333317e+00, 9.46666622e+00, 14., 1.65733337e+01, + 1.34133329e+01, 1.97333336e+01, 1.30799999e+01, 9.94666672e+00, + 2.98133335e+01, 1.93866673e+01, 1.55200005e+01, 1.73466663e+01, + 2.15333328e+01, 2.00533333e+01, 1.00133333e+01, 1.56933336e+01, + 8.42666702e+01, 2.90266666e+01, 9.47999954e+00, 1.44533329e+01, + 5.04000015e+01, 2.01733341e+01, 8.61333370e+00, 1.14399996e+01, + 7.04533310e+01, 1.83999996e+01, 6.14666653e+00, 1.29066668e+01, + 6.67466660e+01, 1.54933329e+01, 1.40533333e+01, 1.16800003e+01, + 2.92266674e+01, 1.52666664e+01, 1.58266668e+01, 1.77066669e+01, + 1.61866665e+01, 2.04666672e+01, 1.13733330e+01, 2.12266674e+01, + 1.05266670e+02, 3.21866684e+01, 1.25200005e+01, 1.75200005e+01, + 6.35066681e+01, 2.57733326e+01, 7.07999992e+00, 1.80799999e+01, + 1.09466667e+02, 2.95333328e+01, 6.51999998e+00, 1.69466667e+01, + 1.06573334e+02, 2.75333328e+01, 9.19999981e+00, 1.73466663e+01, + 8.87466660e+01, 1.96800003e+01, 6.32000017e+00, 1.48533335e+01, + 9.41999969e+01, 1.42666664e+01, 9.33333302e+00, 1.79466667e+01, + 9.56266632e+01, 2.25866661e+01, 1.06266670e+01, 1.68266659e+01, + 4.96933327e+01, 1.83333340e+01, 4.62666655e+00, 1.70400009e+01, + 1.13519997e+02, 2.53866673e+01, 5.54666662e+00, 1.74799995e+01, + 1.04973335e+02, 2.66000004e+01, 4.40000010e+00, 1.52399998e+01, + 1.10519997e+02, 2.54666672e+01, 4.02666664e+00, 1.62533340e+01, + 1.14266670e+02, 2.46933327e+01, 7.77333355e+00, 1.65466671e+01, + 6.64800034e+01, 1.38400002e+01, 7.70666647e+00, 2.23733330e+01, + 1.05933334e+02, 1.08400002e+01, 5.51999998e+00, 1.25733337e+01, + 7.84400024e+01, 2.04933338e+01, 7.07999992e+00, 1.53866663e+01, + 6.78266678e+01, 1.81200008e+01, 5.14666653e+00, 1.17333336e+01, + 9.01333313e+01, 2.37466660e+01, 5.46666670e+00, 1.50400000e+01, + 9.16133347e+01, 2.94266663e+01, 5.67999983e+00, 1.02933331e+01, + 7.05066681e+01, 1.68799992e+01, 6.65333319e+00, 1.86933327e+01, + 1.11279999e+02, 1.44799995e+01, 9.97333336e+00, 8.07999992e+00, + 1.30933332e+01, 9.37333298e+00, 1.07333336e+01, 1.42399998e+01, + 4.32933350e+01, 2.42968750e+01, 3.72500000e+01, 5.71875000e+00, + 2.10937500e+00, 4.01562500e+01, 9.66406250e+01, 4.78125000e+00, + 4.03125000e+00, 2.66093750e+01, 4.17656250e+01, 2.19218750e+01, + 4.26562500e+00, 3.82812500e+00, 1.42031250e+01, 2.54687500e+00, + 5.51562500e+00, 1.82656250e+01, 4.72656250e+01, 4.40156250e+01, + 9.79687500e+00, 2.17187500e+00, 2.32812500e+00, 2.70312500e+00, + 4.76562500e+00, 6.59375000e+00, 2.29531250e+01, 4.92031250e+01, + 2.44843750e+01, 4.50000000e+00, 3.71875000e+00, 4.78125000e+00, + 3.71875000e+00, 2.09375000e+01, 1.23312500e+02, 1.94062500e+01, + 1.56250000e+00, 1.81562500e+01, 1.17093750e+02, 1.78125000e+01, + 1.92187500e+00, 1.34062500e+01, 6.26250000e+01, 2.61250000e+01, + 3.96875000e+00, 7.81250000e+00, 1.20250000e+02, 5.59531250e+01, + 3.10937500e+00, 1.04843750e+01, 4.05000000e+01, 3.91875000e+01, + 1.20781250e+01, 3.23437500e+00, 3.72656250e+01, 3.84375000e+01, + 2.45312500e+00, 3.73437500e+00, 2.38125000e+01, 3.93906250e+01, + 2.00781250e+01, 5.09375000e+00, 6.09375000e+00, 1.71718750e+01, + 3.26562500e+00, 3.93750000e+00, 1.03796875e+02, 3.07031250e+01, + 2.50000000e+00, 9.03125000e+00, 3.09843750e+01, 1.32343750e+01, + 2.78125000e+00, 4.09375000e+00, 1.25187500e+02, 1.04218750e+02, + 2.71875000e+00, 4.46875000e+00, 9.75156250e+01, 6.57656250e+01, + 3.14062500e+00, 3.26562500e+00, 7.85156250e+01, 1.08312500e+02, + 4.87500000e+00, 2.65625000e+00, 9.85625000e+01, 1.23843750e+02, + 4.23437500e+00, 2.18750000e+00, 1.94062500e+01, 9.07968750e+01, + 1.18281250e+01, 2.10937500e+00, 3.05625000e+01, 1.21640625e+02, + 1.37968750e+01, 1.06250000e+00, 2.31250000e+00, 1.78125000e+00, + 1.28125000e+00, 7.01562500e+00, 2.63437500e+01, 1.59531250e+01, + 3.10937500e+00, 1.45312500e+00, 2.72343750e+01, 2.64843750e+01, + 1.67187500e+00, 5.51562500e+00, 2.13750000e+01, 2.14218750e+01, + 6.59375000e+00, 1.79687500e+00, 4.26093750e+01, 8.76093750e+01, + 2.57812500e+00, 2.95312500e+00, 1.32343750e+01, 2.36718750e+01, + 8.20312500e+00, 1.92187500e+00, 1.54687500e+01, 9.80468750e+01, + 7.53125000e+00, 1.70312500e+00, 8.07812500e+00, 2.82968750e+01, + 7.71875000e+00, 6.09090900e+00, 2.56060600e+00, 1.79242420e+01, + 3.65151520e+01, 4.50000000e+00, 1.83333337e+00, 31., + 9.95303040e+01, 2.54545450e+00, 2.21212125e+00, 7.95000000e+01, + 9.75606079e+01, 5.19696951e+00, 5.78787899e+00, 8.42121201e+01, + 1.03469696e+02, 2.89393950e+00, 3.81818175e+00, 1.17136360e+02, + 8.39393921e+01, 5.54545450e+00, 1.07424240e+01, 8.53333359e+01, + 3.82424240e+01, 2.65151525e+00, 1.83939400e+01, 1.16772728e+02, + 2.21818180e+01, 5.06060600e+00, 1.75000000e+01, 6.73181839e+01, + 7.69696951e+00, 1.69090900e+01, 2.56060600e+00, 3.25303040e+01, + 1.22772728e+02, 1.96060600e+01, 2.19696975e+00, 2.03181820e+01, + 1.08727272e+02, 6.98484850e+00, 3.96969700e+00, 6.98939362e+01, + 1.16636360e+02, 7.98484850e+00, 6.74242401e+00, 3.15151520e+01, + 3.59545441e+01, 5.90909100e+00, 2.92424250e+00, 5.01666679e+01, + 3.24545441e+01, 3.86363626e+00, 1.78939400e+01, 4.38787880e+01, + 2.11666660e+01, 3.06060600e+00, 6.33333349e+00, 3.25454559e+01, + 4.12121201e+00, 7.15151501e+00, 3.04242420e+01, 3.59090919e+01, + 1.14545450e+01, 1.46060610e+01, 4.69696951e+00, 8.03030300e+00, + 1.00060608e+02, 3.99393921e+01, 4.71212101e+00, 1.62575760e+01, + 3.55909081e+01, 1.62272720e+01, 5.21212101e+00, 4.30303049e+00, + 1.04242420e+01, 3.15151525e+00, 7.74242401e+00, 4.31212120e+01, + 4.56363640e+01, 1.07121210e+01, 1.71212125e+00, 6.66666687e-01, + 5.60606062e-01, 1.95454550e+00, 1.85000000e+01, 7.15909119e+01, + 5.04848480e+01, 3.51515150e+00, 7.57575750e-01, 5.45454562e-01, + 1.54545450e+00, 6.72727251e+00, 3.98939400e+01, 7.10303040e+01, + 2.61060600e+01, 1.74090900e+01, 5.80303049e+00, 3.86363626e+00, + 1.45909090e+01, 1.76212120e+01, 3.72727275e+00, 1.66060600e+01, + 2.98787880e+01, 3.09393940e+01, 7.54545450e+00, 2.01515150e+00, + 8.33333313e-01, 2.13636374e+00, 5.37878799e+00, 3.47727280e+01, + 6.49393921e+01, 2.74242420e+01, 1.09848480e+01, 9.10606098e+00, + 5.84848499e+00, 7.43939400e+00, 1.67424240e+01, 6.98181839e+01, + 7.80151520e+01, 6.89393950e+00, 6.06060600e+00, 8.07575798e+00, + 8.77272701e+00, 1.52878790e+01, 3.64696960e+01, 6.43787842e+01, + 2.56515160e+01, 1., 6.91891909e+00, 1.13513517e+01, + 2.54054046e+00, 7.02702701e-01, 5.13513505e-01, 2.70270258e-01, + 4.32432443e-01, 1.56756759e+00, 8.72972965e+00, 1.13243246e+01, + 2.08108115e+00, 1.37837839e+00, 9.18918908e-01, 1.24324322e+00, + 8.37837815e-01, 2.27027035e+00, 8.29729748e+00, 6.97297287e+00, + 1.59459460e+00, 4.08108091e+00, 1.54054058e+00, 1.13513517e+00, + 1.02702701e+00, 1.81081080e+00, 2.70270276e+00, 2.54054046e+00, + 1.29729724e+00, 2.21621633e+00, 1.02702701e+00, 2.54054046e+00, + 1.43243241e+00, 4.29729748e+00, 2.17837830e+01, 3.90270271e+01, + 1.22702703e+01, 2.91891885e+00, 1.00540543e+01, 2.68918915e+01, + 2.70270276e+00, 7.35135126e+00, 3.79459457e+01, 4.68918915e+01, + 1.11081085e+01, 5.27027035e+00, 6.10810804e+00, 7.78378391e+00, + 3.27027035e+00, 1.02972975e+01, 4.68648643e+01, 3.60540543e+01, + 7.81081104e+00, 1.35675678e+01, 8.89189148e+00, 1.01081085e+01, + 4.27027035e+00, 9.91891861e+00, 2.61351357e+01, 1.67567558e+01, + 5.08108091e+00, 8.72972965e+00, 5.97297287e+00, 1.60810814e+01, + 8.08108139e+00, 2.83783793e+00, 5.42432442e+01, 1.09189186e+02, + 8.13513470e+00, 2.91891885e+00, 9.18378372e+01, 1.37297302e+02, + 6.37837839e+00, 5.86486483e+00, 5.47567558e+01, 6.16216202e+01, + 8.29729748e+00, 4.86486483e+00, 1.33594589e+02, 1.28729736e+02, + 3.78378367e+00, 1.35405407e+01, 5.00270271e+01, 3.41081085e+01, + 8.86486530e+00, 3.97297287e+00, 8.18918915e+01, 4.34324341e+01, + 3.94594598e+00, 1.58108110e+01, 4.72972984e+01, 2.36216221e+01, + 4.62162161e+00, 2.29729724e+00, 6.78378391e+00, 9.94594574e+00, + 4.18918896e+00, 2.13513517e+00, 6.75405426e+01, 1.18486488e+02, + 6.10810804e+00, 6.32432413e+00, 3.17027035e+01, 3.63783798e+01, + 6., 5.10810804e+00, 1.33432434e+02, 1.21054054e+02, + 3.51351357e+00, 8.05405426e+00, 1.04864868e+02, 6.72972946e+01, + 3.81081080e+00, 1.01891890e+01, 1.20702705e+02, 36., + 2.94594598e+00, 1.60270271e+01, 1.37945953e+02, 6.10810814e+01, + 2.86486483e+00, 1.34324322e+01, 3.47297287e+01, 1.11891890e+01, + 2.81081080e+00, 1.03783779e+01, 8.27027054e+01, 1.15945950e+01, + 3.35135126e+00, 1.77096767e+01, 5.25806475e+00, 5.80645144e-01, + 4.54838705e+00, 26., 4.96774197e+00, 2.06451607e+00, + 4.12903214e+00, 1.17967743e+02, 3.19032249e+01, 2.45161295e+00, + 1.44516125e+01, 5.47419357e+01, 9.90322590e+00, 3.16129041e+00, + 1.76774197e+01, 5.77419357e+01, 1.71935482e+01, 7.16129017e+00, + 6.74193525e+00, 1.35161295e+01, 1.14193544e+01, 1.24516125e+01, + 22., 1.54193544e+01, 9.48387051e+00, 5.74193525e+00, + 6.32258081e+00, 1.86129036e+01, 1.49032259e+01, 10., + 1.00645161e+01, 1.14193544e+01, 4.70967722e+00, 1.19354844e+00, + 5.74193525e+00, 3.60967751e+01, 1.02903223e+01, 3.35483861e+00, + 3.64516139e+00, 1.22451614e+02, 6.72580643e+01, 4.93548393e+00, + 1.13225803e+01, 75., 3.32903214e+01, 3.32258058e+00, + 1.03225803e+01, 8.36128998e+01, 6.99354858e+01, 2.43548393e+01, + 8.74193573e+00, 1.91290321e+01, 4.19032249e+01, 1.41290321e+01, + 2.29032249e+01, 2.09032249e+01, 1.51290321e+01, 1.61290321e+01, + 2.63870964e+01, 2.50967751e+01, 2.13548393e+01, 1.60967751e+01, + 2.78387089e+01, 2.61290312e+00, 3.29032254e+00, 2.19354844e+00, + 5.51612902e+00, 2.34193554e+01, 9.29032230e+00, 6.45161271e-01, + 9.03225780e-01, 6.69354858e+01, 7.78064499e+01, 1.81935482e+01, + 1.14516125e+01, 7.73225784e+01, 4.96129036e+01, 3.09677410e+00, + 3.48387098e+00, 1.08419357e+02, 1.26935486e+02, 5.92580643e+01, + 1.26774197e+01, 3.86129036e+01, 5.34516144e+01, 2.19354839e+01, + 2.48709679e+01, 4.72580643e+01, 2.35483875e+01, 3.26129036e+01, + 7.66451645e+01, 6.74193573e+01, 2.60645161e+01, 2.39677410e+01, + 4.17741928e+01, 2.67741942e+00, 2.35483861e+00, 3.58064508e+00, + 4.25806475e+00, 8.90322590e+00, 4.48387098e+00, 5.80645144e-01, + 1.41935480e+00, 2.46451607e+01, 2.40967751e+01, 8.96774197e+00, + 1.06129036e+01, 6.81935501e+01, 3.45161285e+01, 1.90322578e+00, + 5.51612902e+00, 1.29290329e+02, 7.00967712e+01, 2.63870964e+01, + 1.24838705e+01, 7.18064499e+01, 3.26774178e+01, 9.58064556e+00, + 3.28709679e+01, 7.49354858e+01, 2.18387089e+01, 1.54838705e+01, + 4.96774178e+01, 1.19580643e+02, 2.77741928e+01, 1.30967741e+01, + 2.64838715e+01, 2.10666656e+00, 5.03999996e+00, 2.24666672e+01, + 4.93333340e+00, 2.88000011e+00, 1.54933329e+01, 8.94133301e+01, + 7.42666674e+00, 1.53333330e+00, 5.44000006e+00, 3.23199997e+01, + 6.78666687e+00, 3.14666677e+00, 1.48933334e+01, 1.08106667e+02, + 9.21333313e+00, 2.77333331e+00, 5.81333351e+00, 2.89866657e+01, + 7.71999979e+00, 3.20000005e+00, 1.37200003e+01, 1.04706665e+02, + 1.53333330e+01, 4.67999983e+00, 4.59999990e+00, 1.69466667e+01, + 6.17333317e+00, 4.07999992e+00, 1.34933329e+01, 6.95866699e+01, + 1.75333328e+01, 4.03999996e+00, 1.40933332e+01, 1.18800003e+02, + 1.14399996e+01, 1.34666669e+00, 1.20133333e+01, 1.14546669e+02, + 1.34399996e+01, 6.80000007e-01, 1.40933332e+01, 1.33199997e+02, + 1.15333338e+01, 8.66666675e-01, 1.62133331e+01, 1.30106674e+02, + 1.14533329e+01, 1.13333333e+00, 1.54133329e+01, 1.31360001e+02, + 1.40666666e+01, 3.94666672e+00, 2.14933338e+01, 1.28880005e+02, + 1.18133335e+01, 3.41333342e+00, 1.39466667e+01, 9.61866684e+01, + 1.89733334e+01, 1.28400002e+01, 2.90799999e+01, 9.83733368e+01, + 9.47999954e+00, 2.54666662e+00, 8.50666714e+00, 1.13106667e+02, + 1.84400005e+01, 2.61333323e+00, 7.67999983e+00, 5.12000008e+01, + 9.53333378e+00, 2.97333336e+00, 1.24533329e+01, 1.28013336e+02, + 1.44399996e+01, 2.07999992e+00, 9.46666622e+00, 6.87733307e+01, + 1.03599997e+01, 2.74666667e+00, 1.90266666e+01, 1.28960007e+02, + 1.32399998e+01, 2.72000003e+00, 1.00133333e+01, 6.14000015e+01, + 1.01466665e+01, 4., 2.55866661e+01, 1.03813332e+02, + 1.43733330e+01, 4.74666643e+00, 8.47999954e+00, 3.43600006e+01, + 7.29333353e+00, 2.06666660e+00, 1.84000003e+00, 3.45333338e+00, + 3.77333331e+00, 2.38666677e+00, 3.09333324e+00, 1.24133329e+01, + 4.05333328e+00, 3.44000006e+00, 2.81333327e+00, 4.09333324e+00, + 4.02666664e+00, 2.42666674e+00, 3.81333327e+00, 1.59466667e+01, + 4.51999998e+00, 2.55999994e+00, 2.69333339e+00, 3.59999990e+00, + 3.78666663e+00, 2.58666658e+00, 4.48000002e+00, 1.49866667e+01, + 4.30666685e+00, 1.70666671e+00, 2.92000008e+00, 3.75999999e+00, + 2.81333327e+00, 2.51999998e+00, 4.66666651e+00, 1.03333330e+01, + 3.03999996e+00, 2.93333340e+00, 2.50000000e+00, 6.44333344e+01, + 4.47999992e+01, 2.95000005e+00, 9.76666641e+00, 8.89666672e+01, + 6.93499985e+01, 9.25000000e+00, 1.00333338e+01, 1.09466667e+02, + 3.96500015e+01, 2.56666660e+00, 1.48166666e+01, 1.10966667e+02, + 4.40833321e+01, 8.64999962e+00, 4.01500015e+01, 1.15533333e+02, + 1.29499998e+01, 5.90000010e+00, 3.79500008e+01, 1.10583336e+02, + 1.33999996e+01, 3.43333340e+00, 4.30833321e+01, 6.35833321e+01, + 3.15000010e+00, 3., 6.92833328e+01, 9.76500015e+01, + 4.44999981e+00, 6.76666689e+00, 4.98333311e+00, 1.01716667e+02, + 9.94000015e+01, 2.51666665e+00, 4.90000010e+00, 3.24000015e+01, + 3.77500000e+01, 1.15833330e+01, 1.04499998e+01, 1.04433334e+02, + 4.23833351e+01, 3.58333325e+00, 9.83333302e+00, 3.69166679e+01, + 2.54833336e+01, 6., 3.86833344e+01, 1.00566666e+02, + 9.31666660e+00, 5.40000010e+00, 2.13833332e+01, 3.97333336e+01, + 1.50333338e+01, 3.68333340e+00, 8.85500031e+01, 9.34499969e+01, + 2.56666660e+00, 6.30000019e+00, 3.60166664e+01, 3.40833321e+01, + 6.51666689e+00, 1.64333324e+01, 6.18333340e+00, 6.03333330e+00, + 1.18333330e+01, 2.16666675e+00, 6.91666651e+00, 2.45333328e+01, + 3.13999996e+01, 1.69666672e+01, 2.23333335e+00, 6.83333337e-01, + 1.10000002e+00, 1.78333330e+00, 1.21666670e+01, 4.89666672e+01, + 5.33333321e+01, 6.19999981e+00, 6.49999976e-01, 3.16666663e-01, + 8.16666663e-01, 6.05000019e+00, 3.47000008e+01, 6.20999985e+01, + 2.89166660e+01, 2.06666660e+00, 7.94999981e+00, 2.11666656e+00, + 1.89999998e+00, 1.26166668e+01, 3.63333321e+01, 3.58499985e+01, + 9.38333321e+00, 2.59833336e+01, 4.25000000e+00, 1.14999998e+00, + 4.83333319e-01, 4.16666657e-01, 3.70000005e+00, 3.13833332e+01, + 4.92666664e+01, 2.99500008e+01, 1.01333332e+01, 3.84999990e+00, + 2.51666665e+00, 2.59999990e+00, 1.59166670e+01, 7.29000015e+01, + 7.55166702e+01, 7.93333340e+00, 6.69999981e+00, 6.58333349e+00, + 8.51666641e+00, 1.72666664e+01, 5.47000008e+01, 7.94499969e+01, + 2.77666664e+01, 1.26666665e+00, 1.36666667e+00, 1.96666670e+00, + 4.38333321e+00, 1.77666664e+01, 4.57833328e+01, 3.93833351e+01, + 7.18333340e+00, 1.33064518e+01, 1.35161295e+01, 1.93387089e+01, + 1.72903233e+01, 1.54838705e+01, 1.35000000e+01, 1.51129036e+01, + 1.32903223e+01, 1.74193554e+01, 1.22580643e+01, 3.28709679e+01, + 6.07741928e+01, 3.37741928e+01, 1.68225803e+01, 1.38387098e+01, + 1.83064518e+01, 3.51612902e+00, 3.83870959e+00, 1.86935482e+01, + 1.11387100e+02, 6.53387070e+01, 9.79032230e+00, 2.85483861e+00, + 2.61290312e+00, 2.67741942e+00, 8.70967746e-01, 6.67741919e+00, + 5.65645180e+01, 3.70645180e+01, 3.80645156e+00, 1.77419353e+00, + 3.03225803e+00, 9.50000000e+00, 3.71774178e+01, 1.06112900e+02, + 4.97419357e+01, 9.14516163e+00, 5.22580624e+00, 7.01612902e+00, + 7.20967722e+00, 5.03225803e+00, 1.22096777e+01, 9.85645142e+01, + 1.13290321e+02, 2.31451607e+01, 4.88709688e+00, 3.64516139e+00, + 4.88709688e+00, 5.80645144e-01, 1.67741930e+00, 4.42903214e+01, + 1.16419357e+02, 3.07741928e+01, 4.12903214e+00, 2.91935492e+00, + 1.54838705e+00, 1.23225803e+01, 2.85483861e+00, 1.50322580e+01, + 4.78387108e+01, 1.41612902e+01, 3.74193549e+00, 6.85483885e+00, + 2.67258072e+01, 2.17741942e+00, 1.91774197e+01, 8.75000000e+01, + 3.69354820e+01, 3.24193549e+00, 3.04838705e+00, 5.64516115e+00, + 1.16129029e+00, 1.09677422e+00, 1.01290321e+01, 7.39032288e+01, + 6.95483856e+01, 1.04193544e+01, 5.59677410e+00, 9.85483837e+00, + 3.40322590e+00, 2.95161295e+00, 5.82258081e+00, 3.33548393e+01, + 4.85645180e+01, 1.11451616e+01, 5.66129017e+00, 25., + 3.72419357e+01, 1.85322590e+01, 2.40322590e+00, 1.09838705e+01, + 3.12419357e+01, 7.67741919e+00, 2.67741942e+00, 2.65806446e+01, + 1.12758064e+02, 1.67741930e+00, 8.17741966e+00, 2.55483875e+01, + 8.19354820e+00, 2.69354844e+00, 3.48064499e+01, 1.09983871e+02, + 6.67741919e+00, 1.75806451e+00, 4.35483885e+00, 2.53709679e+01, + 1.62580643e+01, 3.62903237e+00, 1.01935482e+01, 1.20290321e+02, + 5.47741928e+01, 2.41935492e+00, 2.14516139e+00, 26., + 3.38548393e+01, 3.35483861e+00, 5.12903214e+00, 1.21016129e+02, + 1.22790321e+02, 5.24193525e+00, 1.33870971e+00, 2.26290321e+01, + 7.03709641e+01, 3.87096763e+00, 2.58064508e+00, 6.12580643e+01, + 1.10919357e+02, 6.63043499e+00, 7.32608700e+00, 7.60869551e+00, + 4.17391300e+00, 1.89130437e+00, 2.19565225e+00, 5.36956501e+00, + 6.04347849e+00, 7.60869551e+00, 5.86956501e+00, 1.59130430e+01, + 1.26739130e+01, 2.69565225e+00, 1.80434787e+00, 7., + 1.21739130e+01, 4.32608700e+00, 4.56521749e+00, 2.83260860e+01, + 2.03478260e+01, 3.76086950e+00, 3.19565225e+00, 3.24347839e+01, + 2.41304340e+01, 1.65217388e+00, 3.84782600e+00, 2.85869560e+01, + 1.35652170e+01, 3.15217400e+00, 2.82608700e+00, 5.01739120e+01, + 2.34782600e+01, 1.15869570e+01, 7.65217400e+00, 3.76739120e+01, + 2.83913040e+01, 3.67391300e+00, 7.71739149e+00, 5.51956520e+01, + 2.82608700e+01, 3.58695641e+01, 7.82608700e+00, 4.27173920e+01, + 5.16304359e+01, 7.89130449e+00, 9.36956501e+00, 6.91521759e+01, + 8.65434799e+01, 2.84782600e+01, 6.32608700e+00, 2.85217400e+01, + 38., 9.34782600e+00, 1.41739130e+01, 9.59347839e+01, + 1.04500000e+02, 8.45652199e+00, 4.43478251e+00, 1.62173920e+01, + 1.37826090e+01, 8.93478298e+00, 1.91739140e+01, 8.32173920e+01, + 4.25434799e+01, 8., 7.95652151e+00, 8.96086960e+01, + 3.68260880e+01, 4.32608700e+00, 1.25217390e+01, 1.21478264e+02, + 7.46956558e+01, 3.72173920e+01, 2.05000000e+01, 7.86521759e+01, + 4.33913040e+01, 2.05869560e+01, 3.48913040e+01, 1.05434784e+02, + 9.29347839e+01, 3.73043480e+01, 3.14565220e+01, 3.70652161e+01, + 2.59130440e+01, 2.54782600e+01, 3.52608681e+01, 4.51304359e+01, + 5.50652161e+01, 1.18695650e+01, 1.35652170e+01, 19., + 2.24130440e+01, 2.31304340e+01, 2.63695660e+01, 1.94347820e+01, + 1.19130430e+01, 5.19565201e+00, 1.37826090e+01, 1.15586960e+02, + 3.84565201e+01, 1.95652175e+00, 5.41304350e+00, 5.13695641e+01, + 2.61521740e+01, 1.23043480e+01, 5.95217400e+01, 1.14869568e+02, + 3.60434799e+01, 8.08695698e+00, 2.04347820e+01, 4.46739120e+01, + 1.93695660e+01, 1.40434780e+01, 8.47391281e+01, 9.44565201e+01, + 1.78695660e+01, 7.97826099e+00, 2.78695660e+01, 3.76521721e+01, + 1.07391300e+01, 3.43478251e+00, 2.29782600e+01, 8.61521759e+01, + 2.75869560e+01, 7.89130449e+00, 1.72608700e+01, 3.77391319e+01, + 9.67391300e+00, 1.65753424e+00, 1.06849313e+00, 1.57534242e+00, + 5.13698626e+00, 4.52054787e+00, 1.69863009e+00, 2.43835616e+00, + 1.43835616e+00, 5.45205498e+00, 6.01369858e+00, 9.57534218e+00, + 2.11780815e+01, 1.38493147e+01, 7.23287678e+00, 6.05479431e+00, + 4.38356161e+00, 3.93150687e+00, 6.60273981e+00, 1.73972607e+01, + 3.72054787e+01, 2.03150692e+01, 8.84931469e+00, 4.45205498e+00, + 2.91780829e+00, 3.98630142e+00, 4.60273981e+00, 1.73561649e+01, + 3.32739716e+01, 1.51780825e+01, 6.97260284e+00, 1.02191782e+01, + 3.08493156e+01, 7.67123282e-01, 1., 2.93150687e+00, + 1.10958900e+01, 8.20547962e+00, 2.34246564e+00, 1.78082192e+00, + 8.21917832e-01, 3.50684929e+00, 5.98630142e+00, 1.26164379e+01, + 3.98767128e+01, 2.87123280e+01, 1.00684929e+01, 6.20547962e+00, + 3.60273981e+00, 1.33561640e+01, 7.30136967e+00, 1.88219185e+01, + 5.49726028e+01, 3.54520531e+01, 9.15068531e+00, 6.19178104e+00, + 3.96712341e+01, 3.46301384e+01, 4.06849337e+00, 1.80410957e+01, + 8.79178085e+01, 2.13150692e+01, 4.54794502e+00, 2.42465744e+01, + 1.42150681e+02, 7.53424644e-01, 1.09589040e+00, 2.57534242e+00, + 1.02602739e+01, 1.08493147e+01, 3.53424668e+00, 1.23287666e+00, + 6.43835604e-01, 5.16438341e+00, 5.05479431e+00, 1.13698626e+01, + 4.04794502e+01, 3.95616455e+01, 1.26986303e+01, 4.54794502e+00, + 5.27397251e+00, 9.53287659e+01, 5.75342464e+00, 1.20547943e+01, + 6.47808228e+01, 4.83972588e+01, 9.87671280e+00, 6.39726019e+00, + 1.34849319e+02, 7.09726028e+01, 3.49315071e+00, 1.28630133e+01, + 1.45164383e+02, 8.61232910e+01, 4.34246588e+00, 1.23424654e+01, + 1.38369858e+02, 4.65753436e-01, 5.75342476e-01, 2.06849313e+00, + 7.97260284e+00, 9.83561611e+00, 3.26027393e+00, 1.08219182e+00, + 7.39726007e-01, 2.51506844e+01, 3.69863009e+00, 9.17808247e+00, + 2.87808228e+01, 3.30684929e+01, 1.16849318e+01, 4.41095877e+00, + 1.58630133e+01, 1.37383560e+02, 6.68493128e+00, 6.31506872e+00, + 8.84794540e+01, 1.01753426e+02, 7.67123270e+00, 4.49315071e+00, + 1.26520546e+02, 4.70273972e+01, 6.16438341e+00, 5.23287678e+00, + 1.24082191e+02, 1.16013702e+02, 3.26027393e+00, 7.23287678e+00, + 5.61643829e+01, 8.93939376e-01, 1.98484850e+00, 4.13636351e+00, + 2.62121201e+00, 1.36363637e+00, 3.03030312e-01, 1.66666672e-01, + 3.18181813e-01, 8.78787875e-01, 2.31818175e+00, 4.93939400e+00, + 3.25757575e+00, 1.51515150e+00, 3.48484844e-01, 1.81818187e-01, + 3.93939406e-01, 9.69696999e-01, 2.03030300e+00, 3.83333325e+00, + 2.60606050e+00, 1.50000000e+00, 4.84848499e-01, 3.03030312e-01, + 4.24242437e-01, 1.06060600e+00, 2.45454550e+00, 2.77272725e+00, + 1.27272725e+00, 6.21212125e-01, 3.48484844e-01, 2.42424250e-01, + 3.48484844e-01, 6.53030300e+00, 1.29696970e+01, 3.87575760e+01, + 3.32878799e+01, 9.90909100e+00, 4.86363649e+00, 3.45454550e+00, + 4.34848499e+00, 6.07575750e+00, 2.11969700e+01, 7.36969681e+01, + 4.53333321e+01, 1.02575760e+01, 4.04545450e+00, 3.10606050e+00, + 3.27272725e+00, 7.24242401e+00, 2.72272720e+01, 8.22424240e+01, + 3.37272720e+01, 8.81818199e+00, 3.56060600e+00, 2.65151525e+00, + 3.28787875e+00, 8.22727299e+00, 2.94696960e+01, 5.10151520e+01, + 1.56969700e+01, 4.74242401e+00, 3.24242425e+00, 2.83333325e+00, + 3.92424250e+00, 5.48484850e+00, 1.12272730e+01, 8.63181839e+01, + 1.06287880e+02, 1.52272730e+01, 4.18181801e+00, 4.43939400e+00, + 7.34848499e+00, 4.28787899e+00, 1.89393940e+01, 1.38075760e+02, + 1.16303032e+02, 1.07121210e+01, 4.74242401e+00, 9.43939400e+00, + 6.28787899e+00, 6.33333349e+00, 6.36060600e+01, 1.42681824e+02, + 5.09545441e+01, 6.07575750e+00, 5.77272749e+00, 1.06515150e+01, + 5.06060600e+00, 9.87878799e+00, 9.41818161e+01, 1.20681816e+02, + 1.90454540e+01, 5.01515150e+00, 6.98484850e+00, 7.33333349e+00, + 5.06060600e+00, 3.07575750e+00, 2.74242425e+00, 8.54090881e+01, + 1.38242432e+02, 1.83181820e+01, 2.50000000e+00, 7.68181801e+00, + 1.01969700e+01, 4.15151501e+00, 9.19696999e+00, 1.27530304e+02, + 9.74848480e+01, 6.39393950e+00, 5.07575750e+00, 1.92878780e+01, + 13., 5.84848499e+00, 5.68484840e+01, 1.26363640e+02, + 2.37575760e+01, 4.95454550e+00, 8.96969700e+00, 2.54848480e+01, + 1.14090910e+01, 9.65151501e+00, 1.15500000e+02, 1.02606064e+02, + 5.59090900e+00, 3.60606050e+00, 1.24696970e+01, 1.58030300e+01, + 6.50000000e+00, 7.74126968e+01, 1.42698412e+01, 9.15873051e+00, + 1.00222221e+02, 8.73809509e+01, 4., 5.66666651e+00, + 8.26190491e+01, 8.61269836e+01, 1.21904764e+01, 1.90634918e+01, + 9.34920654e+01, 5.78412704e+01, 3.15873027e+00, 9.47619057e+00, + 1.01365082e+02, 7.31904755e+01, 1.76666660e+01, 1.76984119e+01, + 5.07301598e+01, 2.52380943e+01, 8.95238113e+00, 1.87460308e+01, + 1.01031746e+02, 2.56984119e+01, 1.69365082e+01, 1.28730154e+01, + 1.20158730e+01, 9.28571415e+00, 1.04126987e+01, 1.60476189e+01, + 3.58730164e+01, 8.82380981e+01, 1.74603176e+01, 1.16507940e+01, + 9.43650818e+01, 8.35714264e+01, 1.19841270e+01, 6.50793648e+00, + 9.21587296e+01, 9.86190491e+01, 2.42698421e+01, 1.85238094e+01, + 7.02539673e+01, 4.67460327e+01, 8.14285755e+00, 1.44285717e+01, + 1.06333336e+02, 6.85555573e+01, 3.56984138e+01, 2.58253975e+01, + 2.49523811e+01, 1.75873013e+01, 1.33809528e+01, 1.94285717e+01, + 7.09682541e+01, 2.03174610e+01, 2.35238094e+01, 2.17301579e+01, + 1.84761906e+01, 1.20476189e+01, 9.74603176e+00, 1.26349211e+01, + 1.79523811e+01, 7.08571396e+01, 2.05079365e+01, 1.46666670e+01, + 5.47460327e+01, 4.73809509e+01, 2.01587296e+01, 1.44920635e+01, + 7.64285736e+01, 8.05396805e+01, 3.49206352e+01, 2.47301579e+01, + 3.21269836e+01, 2.43492069e+01, 1.59682541e+01, 2.69047623e+01, + 8.89365082e+01, 3.93333321e+01, 3.52698402e+01, 2.92698421e+01, + 1.96507931e+01, 15., 1.23333330e+01, 1.80952377e+01, + 3.46666679e+01, 1.75555553e+01, 2.01587296e+01, 2.31746025e+01, + 2.26984119e+01, 1.43809528e+01, 7.53968239e+00, 9.20634937e+00, + 1.32857141e+01, 4.50476189e+01, 1.48571424e+01, 1.17301588e+01, + 2.40793648e+01, 1.93015881e+01, 9.15873051e+00, 1.23968258e+01, + 5.13492050e+01, 3.78888893e+01, 2.41587296e+01, 1.75873013e+01, + 1.20476189e+01, 1.07619047e+01, 9.79365063e+00, 1.66349201e+01, + 3.76507950e+01, 1.78253975e+01, 2.03809528e+01, 2.01904755e+01, + 1.85079365e+01, 1.28412695e+01, 7.98412704e+00, 1.13015871e+01, + 1.44761906e+01, 1.23015871e+01, 1.22222223e+01, 1.30158730e+01, + 1.50158730e+01, 1.20634918e+01, 6.87301588e+00, 6.11111116e+00, + 8.25396824e+00, 1.56382978e+00, 1.43617022e+00, 2.07446814e+00, + 2.35106373e+00, 1.61702132e+00, 1.84042549e+00, 2.64893627e+00, + 1.85106385e+00, 9.11702156e+00, 7.32978725e+00, 9.29787254e+00, + 1.39255323e+01, 1.30212765e+01, 1.27765961e+01, 1.32234039e+01, + 1.07021275e+01, 9.10638332e+00, 7.11702108e+00, 1.49787235e+01, + 3.96170197e+01, 2.41702137e+01, 1.29893618e+01, 1.14255323e+01, + 1.05212765e+01, 1.93617022e+00, 4.17021275e+00, 3.02234039e+01, + 7.71170197e+01, 1.82446804e+01, 5.02127647e+00, 3.67021275e+00, + 2.65957451e+00, 2.29787230e+00, 2.27659583e+00, 3.36170220e+00, + 4.35106373e+00, 3.04255319e+00, 3.50000000e+00, 3.82978725e+00, + 2.79787230e+00, 1.11382980e+01, 1.04361706e+01, 1.62765961e+01, + 3.81702118e+01, 3.19042549e+01, 1.92872334e+01, 1.57659578e+01, + 1.28404255e+01, 5.69148922e+00, 6.26595736e+00, 2.57127666e+01, + 1.35510635e+02, 8.67234039e+01, 1.34680853e+01, 8.47872353e+00, + 7.14893627e+00, 3.60638309e+00, 3.68085098e+00, 4.78510628e+01, + 1.41382980e+02, 5.14574471e+01, 6.21276617e+00, 5.54255342e+00, + 1.03936167e+01, 2.34042549e+00, 2.44680858e+00, 3.62765956e+00, + 5.94680834e+00, 5.72340441e+00, 3.80851054e+00, 3.68085098e+00, + 2.82978725e+00, 7.04255342e+00, 6.91489363e+00, 1.60425529e+01, + 8.32340393e+01, 8.29361725e+01, 1.80106392e+01, 9.40425491e+00, + 8.65957451e+00, 5.24468088e+00, 3.19148946e+00, 1.83297863e+01, + 1.47425537e+02, 1.36468079e+02, 1.17021275e+01, 3.98936176e+00, + 8.52127647e+00, 1.50531912e+01, 5.61702108e+00, 3.08191490e+01, + 1.38436172e+02, 6.99574432e+01, 7.86170197e+00, 9.05319118e+00, + 3.26063843e+01, 1.37234044e+00, 1.70212770e+00, 2.60638309e+00, + 7.73404264e+00, 9.93617058e+00, 3.78723407e+00, 2.39361691e+00, + 1.61702132e+00, 3.34042549e+00, 2.91489363e+00, 7.63829803e+00, + 7.95531921e+01, 1.15755318e+02, 2.05319157e+01, 5.15957451e+00, + 3.71276593e+00, 1.05531912e+01, 2.68085098e+00, 7.90425539e+00, + 1.23765961e+02, 1.43255325e+02, 2.09893608e+01, 4.78723383e+00, + 1.25212765e+01, 4.29893608e+01, 6.65957451e+00, 1.72659569e+01, + 9.51382980e+01, 7.11276627e+01, 7.96808529e+00, 9.85106373e+00, + 4.89255333e+01, 8.46153855e-01, 4.87179488e-01, 4.87179488e-01, + 5.38461566e-01, 4.87179488e-01, 7.69230783e-01, 1.10256410e+00, + 7.69230783e-01, 1.28205132e+00, 1.23076928e+00, 1.89743590e+00, + 3.20512819e+00, 2.69230771e+00, 1.97435892e+00, 1.89743590e+00, + 1.28205132e+00, 1.07692313e+00, 1.46153843e+00, 4.05128193e+00, + 5.30769253e+00, 2.69230771e+00, 2.35897446e+00, 1.76923072e+00, + 1.25641024e+00, 9.48717952e-01, 1.69230771e+00, 6.92307711e+00, + 3.92307687e+00, 1.17948723e+00, 1.17948723e+00, 1.48717952e+00, + 7.94871807e-01, 2.94871783e+00, 3.25641036e+00, 5.89743567e+00, + 8.23076916e+00, 3.82051277e+00, 2.82051277e+00, 3.56410265e+00, + 4.28205109e+00, 9.35897446e+00, 7.17948723e+00, 2.43076916e+01, + 3.69743576e+01, 1.41794872e+01, 5.53846169e+00, 3.15128212e+01, + 5.53076935e+01, 5.02564096e+00, 1.23076925e+01, 3.83846169e+01, + 3.37179489e+01, 7.56410265e+00, 1.64358978e+01, 1.26641029e+02, + 8.62307663e+01, 4.46153831e+00, 1.86153851e+01, 4.32307701e+01, + 1.77948723e+01, 3.43589735e+00, 6.19743576e+01, 1.23025642e+02, + 1.98205128e+01, 2.05128212e+01, 3.51282048e+00, 6.97435904e+00, + 2.21794872e+01, 1.43076925e+01, 3.25641036e+00, 2.79487181e+00, + 1.68717957e+01, 1.10410255e+02, 1.21025639e+01, 2.14102573e+01, + 48., 2.47179489e+01, 8.33333302e+00, 4.46923065e+01, + 1.43230774e+02, 2.99230766e+01, 1.59487181e+01, 5.67692299e+01, + 5.39487190e+01, 1.42051287e+01, 2.11282043e+01, 1.33358978e+02, + 1.30538467e+02, 1.58717947e+01, 4.04358978e+01, 5.37948723e+01, + 1.85897427e+01, 1.01794872e+01, 8.75128174e+01, 1.24769234e+02, + 3.73589745e+01, 4.67692299e+01, 1.26410255e+01, 3.51282048e+00, + 1.63846149e+01, 2.18461533e+01, 7.12820530e+00, 1.20512819e+00, + 11., 1.42051285e+02, 7.03589706e+01, 1.95641022e+01, + 2.78717957e+01, 3.09230766e+01, 1.55641022e+01, 7.58974361e+00, + 7.69487152e+01, 3.57948723e+01, 3.38461533e+01, 4.11794853e+01, + 3.29743576e+01, 2.12051277e+01, 1.56410255e+01, 1.84615383e+01, + 3.24871788e+01, 2.27179489e+01, 2.83333340e+01, 3.31282043e+01, + 1.65384617e+01, 10., 1.31794872e+01, 1.53846149e+01, + 1.84358978e+01, 3.21052623e+00, 3.58421059e+01, 5.54473686e+01, + 6.71052647e+00, 2.35526323e+00, 4.75131569e+01, 1.09855263e+02, + 4.31578970e+00, 2.38157892e+00, 2.21578941e+01, 6.98815765e+01, + 1.90526314e+01, 4.46052647e+00, 1.32236843e+01, 1.22289474e+02, + 3.29473686e+01, 2.38157892e+00, 7.38157892e+00, 8.03289490e+01, + 5.52894745e+01, 5.01315784e+00, 4.01315784e+00, 1.22368423e+02, + 103., 3.97368431e+00, 2.21052623e+00, 6.71315765e+01, + 1.18052635e+02, 5.01315784e+00, 2.02631569e+00, 6.42631607e+01, + 1.13236839e+02, 2.51315784e+00, 5.78157883e+01, 1.31105270e+02, + 7.10526323e+00, 3.26315784e+00, 3.07105255e+01, 8.57368393e+01, + 8.89473724e+00, 4.61842108e+00, 2.15000000e+01, 1.35776321e+02, + 4.08421059e+01, 2.82894731e+00, 1.27631578e+01, 1.06605263e+02, + 3.07631588e+01, 6.35526323e+00, 6.21052647e+00, 1.31894730e+02, + 9.97236862e+01, 3.84210515e+00, 6.92105246e+00, 7.21052628e+01, + 4.66184196e+01, 8.14473724e+00, 2.63157892e+00, 6.21578941e+01, + 8.07763138e+01, 3.65789485e+00, 6.75000000e+00, 2.72105255e+01, + 3.01973686e+01, 2.72368431e+00, 4.05263138e+00, 1.52500000e+01, + 1.65789473e+00, 4.75000000e+00, 2.04473686e+01, 3.46052628e+01, + 1.42894735e+01, 5.84210539e+00, 3.64473677e+00, 2.17236843e+01, + 4.72368431e+00, 4.47368431e+00, 1.52500000e+01, 3.97763176e+01, + 2.06315784e+01, 7.81578970e+00, 2.89473677e+00, 8.67105293e+00, + 4.88157892e+00, 3.89473677e+00, 1.08815794e+01, 3.45263176e+01, + 2.58815784e+01, 8.18421078e+00, 2.10526323e+00, 1.59210527e+00, + 2.01315784e+00, 2.38157892e+00, 6.19736862e+00, 2.48947372e+01, + 2.84210529e+01, 8.42105269e-01, 3.55263144e-01, 3.28947365e-01, + 2.36842111e-01, 1., 5.26315784e+00, 1.11973686e+01, + 3.11842108e+00, 1.18421054e+00, 5.78947365e-01, 3.81578952e-01, + 4.73684222e-01, 8.68421078e-01, 4.42105246e+00, 1.51842108e+01, + 5.31578970e+00, 1.64473689e+00, 4.73684222e-01, 3.55263144e-01, + 5.65789461e-01, 7.23684192e-01, 2.53947377e+00, 1.38947372e+01, + 8.90789509e+00, 2.07894731e+00, 4.47368413e-01, 2.10526317e-01, + 1.97368428e-01, 4.47368413e-01, 1.40789473e+00, 8.73684216e+00, + 9.72368431e+00, 4.39215708e+00, 3.35294127e+00, 2.50196075e+01, + 1.50196075e+01, 3.94117641e+00, 7.47058821e+00, 8.65294113e+01, + 4.25882339e+01, 6.96078444e+00, 9.78431416e+00, 5.87450981e+01, + 14., 2.80392146e+00, 1.58235292e+01, 1.18980392e+02, + 2.61960793e+01, 6.23529434e+00, 1.85490189e+01, 4.99215698e+01, + 6.35294104e+00, 2.15686274e+00, 4.24313736e+01, 1.13627449e+02, + 7.72549009e+00, 5.80392170e+00, 1.72156868e+01, 1.83529415e+01, + 3.29411769e+00, 2.52941179e+00, 4.33137245e+01, 5.65294113e+01, + 4.03921556e+00, 3.11764717e+00, 3.19607854e+00, 1.15450981e+02, + 9.62941208e+01, 3.43137264e+00, 7.94117641e+00, 7.98039246e+01, + 5.17843132e+01, 4.03921556e+00, 1.98823528e+01, 1.26607841e+02, + 4.60392151e+01, 3.98039222e+00, 2.01960793e+01, 8.70784302e+01, + 1.87843132e+01, 2.80392146e+00, 7.99215698e+01, 128., + 9.21568584e+00, 4.45098019e+00, 4.35882339e+01, 8.44705887e+01, + 5.56862736e+00, 2.88235283e+00, 1.12823532e+02, 1.04588234e+02, + 2.56862736e+00, 3.62745094e+00, 8.62745132e+01, 7.71372528e+01, + 2.98039222e+00, 8.96078396e+00, 2.58823538e+00, 1.90980396e+01, + 2.41764698e+01, 2.19607854e+00, 1.19019604e+01, 3.42156868e+01, + 2.47058830e+01, 4.52941179e+00, 3.23529410e+00, 9.58823490e+00, + 4.17647076e+00, 4.96078444e+00, 3.90196075e+01, 5.32549019e+01, + 2.16274509e+01, 4.41176462e+00, 1.29019604e+01, 1.44901962e+01, + 2.39215684e+00, 1.39215689e+01, 5.20980377e+01, 4.02745094e+01, + 1.20392160e+01, 7.47058821e+00, 6.85294113e+01, 2.84313717e+01, + 1.88235295e+00, 1.10196075e+01, 3.22745094e+01, 2.08627453e+01, + 7.11764717e+00, 1.27647057e+01, 2.98039222e+00, 1.58823526e+00, + 9.41176474e-01, 1.13725495e+00, 5.72549009e+00, 3.80196075e+01, + 4.41568642e+01, 5.47058821e+00, 2.01960778e+00, 2.15686274e+00, + 3.88235283e+00, 7.01960802e+00, 3.49411774e+01, 7.84901962e+01, + 3.41568642e+01, 1.82352936e+00, 8.82352948e-01, 7.45098054e-01, + 3.17647052e+00, 1.53725491e+01, 5.98431358e+01, 6.00588226e+01, + 1.07450981e+01, 1.90196073e+00, 1.74509799e+00, 4.50980395e-01, + 1.68627453e+00, 1.59607840e+01, 3.66666679e+01, 3.14117641e+01, + 5.62745094e+00, 9.90654182e+00, 1.25981312e+01, 1.25046730e+01, + 1.07383175e+01, 2.12897205e+01, 3.47383194e+01, 1.79813080e+01, + 8.68224335e+00, 1.08224297e+01, 1.32242994e+01, 1.28224297e+01, + 1.28785048e+01, 4.96915894e+01, 1.43186920e+02, 5.80093460e+01, + 1.21401873e+01, 4.69158888e+00, 5.96261692e+00, 4.13084126e+00, + 5.58878517e+00, 4.72336464e+01, 1.65299072e+02, 1.20214951e+02, + 9.28037357e+00, 5.68224287e+00, 1.49532709e+01, 7.71028042e+00, + 2.76635504e+00, 2.07850475e+01, 1.55934586e+02, 1.38271027e+02, + 7.45794392e+00, 1.52149534e+01, 1.90841122e+01, 2.01495323e+01, + 1.64766350e+01, 2.28878498e+01, 2.84953270e+01, 1.65981312e+01, + 1.27663555e+01, 2.51775703e+01, 3.21214943e+01, 3.13551407e+01, + 2.44205608e+01, 3.24299049e+01, 6.14953270e+01, 4.13457947e+01, + 2.22523365e+01, 1.52710276e+01, 2.02242985e+01, 2.17289715e+01, + 1.90654202e+01, 3.62243004e+01, 1.38355133e+02, 9.35327072e+01, + 2.02710285e+01, 5.07476616e+00, 7.42990637e+00, 1.08130836e+01, + 8.32710266e+00, 2.12056084e+01, 1.58018692e+02, 1.49785049e+02, + 1.28037386e+01, 1.28878508e+01, 1.46168222e+01, 1.46542053e+01, + 1.19532709e+01, 1.68878498e+01, 1.99439259e+01, 1.18224297e+01, + 9.84112167e+00, 2.35607471e+01, 25., 2.23738327e+01, + 1.83925228e+01, 2.45981312e+01, 33., 2.28411217e+01, + 1.81682243e+01, 1.95607471e+01, 2.57009354e+01, 2.31308403e+01, + 1.94485989e+01, 2.63177567e+01, 3.76542053e+01, 2.76355133e+01, + 1.88224297e+01, 1.13738317e+01, 1.33364487e+01, 1.43271027e+01, + 1.25700932e+01, 1.95327110e+01, 4.85607491e+01, 4.14112167e+01, + 1.42616825e+01, 1.78504670e+00, 2.00934577e+00, 1.59813082e+00, + 1.50467288e+00, 2.12149525e+00, 2.46728969e+00, 1.14018691e+00, + 1.20560753e+00, 3.25233650e+00, 2.59813094e+00, 1.69158876e+00, + 2.06542063e+00, 3.74766350e+00, 4.26168203e+00, 2.63551402e+00, + 2.67289710e+00, 3.11214948e+00, 2.96261692e+00, 2.04672909e+00, + 2.13084102e+00, 3.60747671e+00, 4.23364496e+00, 2.53271031e+00, + 2.09345794e+00, 2.38317752e+00, 1.94392526e+00, 2.00934577e+00, + 2.00934577e+00, 2.71028042e+00, 3.74766350e+00, 2.81308413e+00, + 2.06542063e+00, 3.20930243e+00, 3.48837197e-01, 2.79069781e-01, + 9.06976759e-01, 4.49069786e+01, 9.66046524e+01, 2.53255806e+01, + 1.57906981e+01, 3.42558136e+01, 1.83720934e+00, 5.34883738e-01, + 1.02325583e+00, 6.69767427e+00, 2.89302330e+01, 4.14186058e+01, + 4.90697670e+00, 1.25906975e+02, 1.46976748e+01, 8.32558155e+00, + 3.37209296e+00, 1.16279066e+00, 4.11627913e+00, 2.31395340e+01, + 3.41627922e+01, 3.16976738e+01, 1.01395350e+01, 2.26046505e+01, + 8.76744175e+00, 5.72093010e+00, 1.10232553e+01, 2.93488369e+01, + 1.31395350e+01, 1.31627903e+01, 4.67441845e+00, 8.41860485e+00, + 25., 4.30697670e+01, 1.13395348e+02, 7.64186020e+01, + 2.79767437e+01, 2.96511631e+01, 3.25581384e+00, 8.41860485e+00, + 1.61627903e+01, 1.49767447e+01, 1.11348839e+02, 1.43511627e+02, + 2.71162796e+01, 1.31046509e+02, 1.81395340e+01, 1.97441864e+01, + 5.69767427e+00, 4.48837233e+00, 3.67209320e+01, 1.27116280e+02, + 9.92790680e+01, 2.98604660e+01, 2.27441864e+01, 3.78372078e+01, + 7.13953495e+00, 1.02790699e+01, 1.68139534e+01, 3.35813942e+01, + 2.10465107e+01, 2.63023262e+01, 1.27209301e+01, 1.10465117e+01, + 3.94883728e+01, 2.13720932e+01, 2.34651165e+01, 1.87209301e+01, + 2.35813961e+01, 2.77674427e+01, 1.40232553e+01, 1.29767447e+01, + 2.12790699e+01, 1.79534893e+01, 3.01395340e+01, 6.52790680e+01, + 2.42325573e+01, 1.75813961e+01, 12., 1.29302330e+01, + 1.33023252e+01, 8.48837185e+00, 2.41627903e+01, 6.52558136e+01, + 3.66976738e+01, 8.76744175e+00, 1.15116282e+01, 1.82325573e+01, + 1.34651165e+01, 1.21860466e+01, 1.63023262e+01, 3.21162796e+01, + 2.03255806e+01, 2.27441864e+01, 2.25348835e+01, 9.55813980e+00, + 1.39534883e+01, 1.77906971e+01, 1.76511631e+01, 1.55116282e+01, + 1.43488369e+01, 2.83953495e+01, 1.96279068e+01, 1.07906981e+01, + 8.97674465e+00, 15., 2.14186039e+01, 3.04651165e+01, + 2.73023262e+01, 1.27674417e+01, 1.21627903e+01, 1.83488369e+01, + 1.55116282e+01, 6.81395340e+00, 2.11395340e+01, 4.44418602e+01, + 3.08139534e+01, 6.53488350e+00, 8.53488350e+00, 1.49302330e+01, + 1.70465107e+01, 9.44186020e+00, 2.24186039e+01, 3.09069767e+01, + 1.57674417e+01, 6.81944466e+00, 7.02777767e+00, 1.20972223e+01, + 1.78888893e+01, 2.81388893e+01, 3.27500000e+01, 1.74722214e+01, + 8.72222233e+00, 5.27777767e+00, 9.19444466e+00, 1.00277777e+01, + 1.88333340e+01, 4.79861107e+01, 4.85000000e+01, 1.46805553e+01, + 5.13888884e+00, 4.55555534e+00, 5.80555534e+00, 4.80555534e+00, + 2.06388893e+01, 8.15694427e+01, 4.12777786e+01, 4.47222233e+00, + 2.26388884e+00, 8.77777767e+00, 1.06250000e+01, 2.55555558e+00, + 1.67638893e+01, 8.15972214e+01, 2.69722214e+01, 1.08333337e+00, + 8.88888896e-01, 1.00833330e+01, 8.55555534e+00, 1.28888893e+01, + 2.01666660e+01, 3.19583340e+01, 3.67638893e+01, 1.59583330e+01, + 9.56944466e+00, 4.80555534e+00, 6.12500000e+00, 9.94444466e+00, + 5.32500000e+01, 8.27500000e+01, 4.48472214e+01, 1.23888893e+01, + 5.59722233e+00, 9.41666698e+00, 2.86111116e+00, 6.01388884e+00, + 7.92083359e+01, 1.12347221e+02, 2.27500000e+01, 3.50000000e+00, + 5.37500000e+00, 1.46111107e+01, 3.59722233e+00, 3.66666675e+00, + 5.29583321e+01, 1.07263885e+02, 1.26388893e+01, 1.51388884e+00, + 8.68055534e+00, 1.12222223e+01, 1.25555553e+01, 2.06944447e+01, + 3.92222214e+01, 4.01944427e+01, 3.02777786e+01, 1.75416660e+01, + 1.41250000e+01, 3.29166675e+00, 2.48611116e+00, 1.75000000e+01, + 111., 1.00472221e+02, 3.26944427e+01, 9.51388931e+00, + 7.87500000e+00, 8.30555534e+00, 1.12500000e+00, 1.10416670e+01, + 1.16305557e+02, 1.03597221e+02, 9.29166698e+00, 3.87500000e+00, + 1.68333340e+01, 1.73750000e+01, 2.34722233e+00, 7.31944466e+00, + 7.97083359e+01, 8.39861145e+01, 6.58333349e+00, 8.62500000e+00, + 4.05000000e+01, 5.66666651e+00, 2.11944447e+01, 6.43611145e+01, + 7.69166641e+01, 2.30555553e+01, 1.20416670e+01, 8.84722233e+00, + 5.75000000e+00, 1.54166663e+00, 2.38888884e+00, 4.05694427e+01, + 1.22041664e+02, 6.42083359e+01, 1.25972223e+01, 1.51944447e+01, + 8.02777767e+00, 2.93055558e+00, 1.20833337e+00, 1.90833340e+01, + 1.05222221e+02, 4.92777786e+01, 9.26388931e+00, 3.25416679e+01, + 3.83750000e+01, 1.49027777e+01, 1.69444442e+00, 8., + 6.04444427e+01, 2.94444447e+01, 5.73611116e+00, 4.18055573e+01, + 9.62916641e+01, 9.88199997e+01, 2.16800003e+01, 4.19999981e+00, + 2.52199993e+01, 2.64400005e+01, 7.59999990e+00, 9.68000031e+00, + 8.65999985e+01, 5.94599991e+01, 9.27999973e+00, 1.12200003e+01, + 8.83399963e+01, 7.03399963e+01, 1.14600000e+01, 1.36000004e+01, + 6.75000000e+01, 1.89599991e+01, 4.92000008e+00, 1.88999996e+01, + 1.03480003e+02, 7.24000015e+01, 6.34000015e+00, 1.01800003e+01, + 3.11200008e+01, 1.06400003e+01, 5.19999981e+00, 8.42000008e+00, + 2.78600006e+01, 1.30200005e+01, 3.33999991e+00, 4.59999990e+00, + 1.35200005e+01, 1.17120003e+02, 1.40600004e+01, 6.30000019e+00, + 5.27599983e+01, 4.12000008e+01, 7.01999998e+00, 8.88000011e+00, + 1.19419998e+02, 3.37999992e+01, 5.98000002e+00, 3.08600006e+01, + 1.25820000e+02, 1.05080002e+02, 7.63999987e+00, 1.31199999e+01, + 4.61800003e+01, 2.05000000e+01, 1.01199999e+01, 3.03999996e+01, + 6.40199966e+01, 3.10200005e+01, 7.88000011e+00, 1.27600002e+01, + 3.47999992e+01, 8.93999958e+00, 8.10000038e+00, 8.93999958e+00, + 1.16999998e+01, 6.26000023e+00, 4.51999998e+00, 5.88000011e+00, + 1.15000000e+01, 8.73000031e+01, 1.22200003e+01, 1.16199999e+01, + 1.03180000e+02, 8.24400024e+01, 3.38000011e+00, 2.53999996e+00, + 8.32200012e+01, 3.14599991e+01, 8.26000023e+00, 1.34799995e+01, + 1.17419998e+02, 9.65400009e+01, 5.48000002e+00, 7.67999983e+00, + 3.94199982e+01, 1.58599997e+01, 1.08000002e+01, 1.42799997e+01, + 1.38000002e+01, 1.33599997e+01, 9.34000015e+00, 1.08999996e+01, + 2.12600002e+01, 7., 7.09999990e+00, 6.90000010e+00, + 6.61999989e+00, 5.46000004e+00, 4.44000006e+00, 5.90000010e+00, + 7.07999992e+00, 3.32200012e+01, 8.23999977e+00, 1.24399996e+01, + 1.04379997e+02, 7.55999985e+01, 1.86000001e+00, 2.29999995e+00, + 2.82600002e+01, 2.35400009e+01, 8.81999969e+00, 9.31999969e+00, + 3.60999985e+01, 3.37799988e+01, 5.30000019e+00, 5.26000023e+00, + 2.07999992e+01, 8.26000023e+00, 8.61999989e+00, 8.30000019e+00, + 7.40000010e+00, 7.09999990e+00, 6.30000019e+00, 6.65999985e+00, + 7.63999987e+00, 3.98000002e+00, 4.84000015e+00, 5.34000015e+00, + 5.61999989e+00, 4.73999977e+00, 3.77999997e+00, 3.18000007e+00, + 3.31999993e+00, 4.04123688e+00, 6.28865957e+00, 6.83505154e+00, + 1.08659792e+01, 5.25257721e+01, 8.90927811e+01, 3.33505173e+01, + 8.75257778e+00, 1.37422676e+01, 2.50206184e+01, 1.89587631e+01, + 1.54639177e+01, 3.55876274e+01, 8.35360794e+01, 5.46597939e+01, + 2.40206184e+01, 1.82164955e+01, 5.66804123e+01, 2.90412369e+01, + 1.47938147e+01, 3.39793816e+01, 9.83092804e+01, 6.60618591e+01, + 1.96701031e+01, 1.16597939e+01, 7.23195877e+01, 5.89793816e+01, + 9.88659763e+00, 2.05773201e+01, 8.76597900e+01, 6.92061844e+01, + 1.15154638e+01, 3.39175248e+00, 2.63917518e+00, 3.78350520e+00, + 8.86597919e+00, 4.53195877e+01, 1.12134018e+02, 6.07835045e+01, + 9.69072151e+00, 7.08247423e+00, 7.90721655e+00, 8.74226761e+00, + 1.06907215e+01, 3.54639168e+01, 1.13206184e+02, 9.95360794e+01, + 2.03711338e+01, 1.26804123e+01, 2.02164955e+01, 1.55773191e+01, + 1.10515461e+01, 2.20206184e+01, 9.59484558e+01, 1.03216492e+02, + 3.42680397e+01, 1.01443300e+01, 19., 1.99278355e+01, + 6.69072151e+00, 1.31237116e+01, 7.63092804e+01, 1.06938141e+02, + 38., 7.78350496e+00, 4.52577305e+00, 4.45360804e+00, + 7.13402081e+00, 1.92164955e+01, 5.64020615e+01, 4.40824738e+01, + 1.41443300e+01, 4.13402081e+00, 2.23711348e+00, 3.22680402e+00, + 4.75257730e+00, 1.91752586e+01, 9.91752548e+01, 1.02505157e+02, + 1.64226799e+01, 4.07216501e+00, 1.84536088e+00, 1.98969078e+00, + 3.05154634e+00, 1.25979385e+01, 8.43298950e+01, 1.16381447e+02, + 3.08350525e+01, 6.32989693e+00, 2.09278345e+00, 2.39175248e+00, + 2.39175248e+00, 6.28865957e+00, 4.03298950e+01, 1.02948456e+02, + 4.39278336e+01, 1.70103097e+00, 5.05154610e-01, 5.46391726e-01, + 1.04123712e+00, 2.02061844e+00, 3.02061844e+00, 2.75257730e+00, + 2.23711348e+00, 1.08247423e+00, 3.09278339e-01, 4.53608245e-01, + 9.38144326e-01, 2.70103097e+00, 8.17525768e+00, 9.30927849e+00, + 2.64948463e+00, 7.62886584e-01, 1.23711340e-01, 1.23711340e-01, + 4.74226803e-01, 2.23711348e+00, 8.48453617e+00, 1.42989693e+01, + 4.32989693e+00, 1.02061856e+00, 2.06185564e-01, 1.23711340e-01, + 3.40206176e-01, 1.29896903e+00, 4.39175272e+00, 1.04020615e+01, + 4.52577305e+00, 2.09523821e+00, 1.31746030e+00, 1.50793648e+00, + 2.01587296e+00, 2.53968263e+00, 2.34920645e+00, 1.85714281e+00, + 2.20634913e+00, 1.87301588e+00, 2.30158734e+00, 5.33333349e+00, + 6.36507940e+00, 3.60317469e+00, 1.53968251e+00, 1.09523809e+00, + 1.77777779e+00, 1.42857146e+00, 4.61904764e+00, 1.06825399e+01, + 7.26984119e+00, 2.85714293e+00, 2.82539678e+00, 5.71428597e-01, + 4.44444448e-01, 2.42857146e+00, 4.68253946e+00, 1.02857141e+01, + 4.63492060e+00, 1.44444442e+00, 1.20634925e+00, 4.92063493e-01, + 2.69841284e-01, 8.22222233e+00, 8.74603176e+00, 2.40158730e+01, + 4.52539673e+01, 1.92222214e+01, 9.98412704e+00, 6.98412704e+00, + 7.25396824e+00, 4.65079355e+00, 1.39682541e+01, 7.50952377e+01, + 9.83174591e+01, 2.12222214e+01, 5.58730173e+00, 3.17460322e+00, + 3.98412704e+00, 4.52380943e+00, 3.00952377e+01, 1.12507935e+02, + 7.82222214e+01, 1.12063494e+01, 4.92063475e+00, 2.47619057e+00, + 1.65079367e+00, 6.66666651e+00, 3.65238113e+01, 9.79682541e+01, + 3.50952377e+01, 6.82539701e+00, 3.26984119e+00, 2.20634913e+00, + 1.87301588e+00, 4.22222233e+00, 6.39682531e+00, 4.98412704e+01, + 1.20793648e+02, 3.35873032e+01, 5.36507940e+00, 3.11111116e+00, + 4., 4.92063475e+00, 1.09047623e+01, 9.79682541e+01, + 1.27666664e+02, 2.67619057e+01, 7.11111116e+00, 8.53968239e+00, + 9.68253994e+00, 8.77777767e+00, 2.60158730e+01, 1.21698410e+02, + 9.50793686e+01, 1.32539682e+01, 8.84126949e+00, 1.96507931e+01, + 1.39365082e+01, 9.50793648e+00, 4.55079384e+01, 1.21444443e+02, + 3.53492050e+01, 8.73015881e+00, 8.53968239e+00, 1.87301579e+01, + 9.88888931e+00, 2.44444442e+00, 2.60317469e+00, 3.27142868e+01, + 1.15603172e+02, 3.86031761e+01, 5.53968239e+00, 4.68253946e+00, + 9.50793648e+00, 4.98412704e+00, 4.20634937e+00, 8.92698441e+01, + 1.28761902e+02, 1.93333340e+01, 8.87301540e+00, 1.51428576e+01, + 2.24444447e+01, 6.34920645e+00, 1.46190472e+01, 1.23904762e+02, + 9.16666641e+01, 6., 7.58730173e+00, 3.66825409e+01, + 3.42857132e+01, 6.47619057e+00, 3.23333321e+01, 1.11365082e+02, + 3.03968258e+01, 4.26984119e+00, 1.38095236e+01, 4.41587296e+01, + 2.77936516e+01, 9.85074639e-01, 4.76119423e+00, 5.50895538e+01, + 5.54328346e+01, 9.59701538e+00, 1.65671647e+00, 4.25373125e+00, + 4.76119423e+00, 1.80597019e+00, 1.23880601e+00, 3.85373116e+01, + 1.08194031e+02, 2.11194038e+01, 1.16417909e+00, 5.91044760e+00, + 1.46268654e+01, 1.03880596e+01, 1.53731346e+00, 1.01492538e+01, + 6.12388077e+01, 1.82537308e+01, 1.67164183e+00, 1.11940298e+01, + 6.63731308e+01, 4.18656731e+01, 1.59701490e+00, 2.07462692e+00, + 1.28805971e+01, 4.77611923e+00, 1.59701490e+00, 8.50746250e+00, + 1.12059700e+02, 1.16417909e+00, 5.19402981e+00, 7.06119385e+01, + 5.44477615e+01, 3.97014928e+00, 3.91044784e+00, 5.11044769e+01, + 2.01641788e+01, 3.14925385e+00, 2.89552236e+00, 3.50746269e+01, + 5.99104462e+01, 5.88059711e+00, 2.34328365e+00, 7.92835846e+01, + 9.14626846e+01, 1.17164183e+01, 2.40298510e+00, 8.23880577e+00, + 2.11940308e+01, 3.58208966e+00, 2.74626875e+00, 7.47761230e+01, + 1.33358215e+02, 2.94179096e+01, 3.11940289e+00, 2.62686563e+00, + 5.26865673e+00, 3.01492548e+00, 3.82089543e+00, 3.24029846e+01, + 1.23850746e+02, 2.91044784e+00, 4.25373125e+00, 1.68059692e+01, + 8.32835865e+00, 2.05970144e+00, 8.97014904e+00, 1.24731346e+02, + 6.04179115e+01, 5.64179087e+00, 3.98507452e+00, 9.64179134e+00, + 8.77611923e+00, 2.76119399e+00, 6.44776106e+00, 1.29164185e+02, + 1.21208954e+02, 1.55970154e+01, 4.95522404e+00, 4.31343269e+00, + 5.19402981e+00, 3.76119399e+00, 8.58208942e+00, 9.25671616e+01, + 1.27537315e+02, 2.08656712e+01, 4.11940289e+00, 3., + 3.61194038e+00, 4.17910433e+00, 6.73134327e+00, 3.84328346e+01, + 8.06417923e+01, 4.01492548e+00, 2.88059711e+00, 3.70149255e+00, + 2.64179111e+00, 2.70149255e+00, 1.07462683e+01, 6.58059692e+01, + 2.83432827e+01, 7.25373125e+00, 3.35820889e+00, 4.08955240e+00, + 4.73134327e+00, 3.59701490e+00, 8.23880577e+00, 6.18955231e+01, + 5.29253731e+01, 1.17313433e+01, 3.88059711e+00, 4., + 4.20895529e+00, 4.35820913e+00, 7.53731346e+00, 3.95373116e+01, + 5.35820885e+01, 8.85074615e+00, 4.01492548e+00, 4.28358221e+00, + 3.59701490e+00, 4.49253750e+00, 6.05970144e+00, 1.70597019e+01, + 2.43731346e+01, 1.65454543e+00, 6.07272720e+00, 1.85272732e+01, + 2.25454540e+01, 6.32727289e+00, 1.39999998e+00, 6.90909088e-01, + 7.09090889e-01, 3.83636355e+00, 1.42909088e+01, 3.27818184e+01, + 2.20909100e+01, 3.90909100e+00, 1.10909092e+00, 3.45454544e-01, + 5.81818163e-01, 7.94545460e+00, 2.71272736e+01, 3.24545441e+01, + 1.03999996e+01, 1.25454545e+00, 6.72727287e-01, 1.45454541e-01, + 5.27272701e-01, 8.50909138e+00, 2.01090908e+01, 1.73454552e+01, + 5.14545441e+00, 1.56363642e+00, 4.36363637e-01, 2.72727281e-01, + 1., 8., 2.01090908e+01, 7.01272736e+01, 8.09272690e+01, + 1.82181816e+01, 3.21818185e+00, 2.18181825e+00, 3.65454555e+00, + 1.80727272e+01, 4.39272728e+01, 9.05818176e+01, 7.14727249e+01, + 1.62363644e+01, 4.47272730e+00, 6.07272720e+00, 8.18181801e+00, + 2.69818172e+01, 7.47272720e+01, 9.18363647e+01, 4.59272728e+01, + 1.06545458e+01, 3.98181820e+00, 7.92727280e+00, 1.18909092e+01, + 2.83090916e+01, 8.88181839e+01, 7.16909103e+01, 1.51636362e+01, + 3.52727270e+00, 1.38181818e+00, 3.29090905e+00, 5.94545460e+00, + 1.22545452e+01, 1.37818184e+01, 6.84181824e+01, 7.14727249e+01, + 2.48909092e+01, 9.56363678e+00, 3.47272720e+01, 2.72181816e+01, + 2.14909096e+01, 3.12181816e+01, 9.90545425e+01, 5.42545471e+01, + 2.52181816e+01, 1.84909096e+01, 6.51272736e+01, 3.61090927e+01, + 3.06545448e+01, 5.83272743e+01, 95., 4.31454544e+01, + 1.66545448e+01, 2.77272720e+01, 6.06727257e+01, 3.36363640e+01, + 4.09272728e+01, 7.75272751e+01, 6.59454575e+01, 1.74909096e+01, + 6.76363659e+00, 1.86909084e+01, 2.84181824e+01, 1.99454536e+01, + 4.67272711e+00, 6.72727251e+00, 7.77272720e+01, 7.97636337e+01, + 9.61818218e+00, 1.33636360e+01, 4.32909088e+01, 2.85454540e+01, + 7.74545431e+00, 3.34909096e+01, 1.06963638e+02, 4.02363625e+01, + 5.81818199e+00, 3.00363636e+01, 6.63272705e+01, 2.48727264e+01, + 6.59999990e+00, 6.35454559e+01, 1.07800003e+02, 2.69818172e+01, + 1.05818186e+01, 4.39636345e+01, 5.54363632e+01, 1.60727272e+01, + 1.75636368e+01, 8.36181793e+01, 7.80545425e+01, 1.18545456e+01, + 6.23636341e+00, 2.74909096e+01, 2.62000008e+01, 1.22727270e+01, + 1.09047623e+01, 3.65079384e+01, 1.16349211e+01, 6.19047642e+00, + 2.11746025e+01, 1.27142859e+01, 4.66666651e+00, 1.26984131e+00, + 1.26825394e+02, 1.17619049e+02, 6.06349230e+00, 2.95238090e+00, + 3.95238090e+00, 4.73015881e+00, 2.74603176e+00, 4.63492060e+00, + 9.39841232e+01, 5.87142868e+01, 5.90476179e+00, 3.42857146e+00, + 4.26984119e+00, 5.58730173e+00, 5.23809528e+00, 16., + 1.13809528e+01, 7.53968239e+00, 3.23809528e+00, 1.60317457e+00, + 1.42857146e+00, 1.80952382e+00, 2.66666675e+00, 5.30158710e+00, + 1.36984129e+01, 1.51587305e+01, 8.12698460e+00, 1.53174601e+01, + 4.99523811e+01, 2.46349201e+01, 7.14285707e+00, 2.92063498e+00, + 1.51301590e+02, 6.36984138e+01, 2.95238090e+00, 3.77777767e+00, + 5.84126997e+00, 4.09523821e+00, 1.60317457e+00, 2.27619057e+01, + 1.47174606e+02, 4.82222214e+01, 4.19047642e+00, 2.92063498e+00, + 5.03174591e+00, 6.39682531e+00, 7.09523821e+00, 3.58412704e+01, + 1.61904755e+01, 8.28571415e+00, 3.04761910e+00, 1.58730161e+00, + 1.66666663e+00, 2.68253970e+00, 3.95238090e+00, 9.34920597e+00, + 1.78253975e+01, 6.07936525e+00, 7.74603176e+00, 2.75396824e+01, + 4.55079384e+01, 1.36507940e+01, 7.68253946e+00, 1.59841270e+01, + 1.51952377e+02, 8.06349182e+00, 2.12698412e+00, 3.79365087e+00, + 5.77777767e+00, 2.76190472e+00, 2., 1.21761902e+02, + 1.42523804e+02, 1.43809528e+01, 4.61904764e+00, 3.63492060e+00, + 5.26984119e+00, 6.14285707e+00, 7.22222233e+00, 8.60634918e+01, + 1.25873013e+01, 5.88888884e+00, 2.80952382e+00, 1.65079367e+00, + 1.61904764e+00, 2.66666675e+00, 4.41269827e+00, 9.26984119e+00, + 2.06031742e+01, 1.55555558e+00, 5.98412704e+00, 2.04444447e+01, + 1.49523811e+01, 3.53968263e+00, 2.37460308e+01, 8.80158768e+01, + 120., 3.73015881e+00, 2.57142854e+00, 4.01587296e+00, + 2.96825385e+00, 1.71428573e+00, 9.38095284e+00, 1.51206345e+02, + 6.86349182e+01, 1.05238094e+01, 4.41269827e+00, 4.41269827e+00, + 5.58730173e+00, 5.82539701e+00, 8.61904716e+00, 6.19523811e+01, + 7.44444466e+00, 3.82539678e+00, 1.88888884e+00, 1.58730161e+00, + 1.68253970e+00, 2.30158734e+00, 3.80952382e+00, 7.33333349e+00, + 8.58108139e+00, 4.79729748e+00, 4.63513517e+00, 4.11351357e+01, + 5.75270271e+01, 6.89189196e+00, 3.44594598e+00, 8.98648643e+00, + 4.07162170e+01, 5.83783770e+00, 2.01351357e+00, 6.83108139e+01, + 1.13581078e+02, 6.43243265e+00, 7.16216207e-01, 7.87837839e+00, + 1.20108109e+02, 1.95540543e+01, 3.01351357e+00, 1.97162170e+01, + 5.42837830e+01, 6.91891909e+00, 3.08108115e+00, 2.34729729e+01, + 7.71486511e+01, 2.44459457e+01, 4.90540552e+00, 3.01351357e+00, + 9.32432461e+00, 5.59459448e+00, 6.67567587e+00, 1.87027035e+01, + 6.70270252e+00, 3.43243241e+00, 1.67837830e+01, 1.15756760e+02, + 4.94324341e+01, 1.01351357e+00, 1.40540540e+00, 9.16216183e+00, + 5.69729729e+01, 3.82432437e+00, 6.25675678e+00, 1.02337837e+02, + 7.55675659e+01, 1.54054058e+00, 1.68918920e+00, 4.05945930e+01, + 1.17770271e+02, 1.11351347e+01, 4.95945930e+00, 2.31081085e+01, + 3.53513527e+01, 6.08108091e+00, 6.78378391e+00, 7.79594574e+01, + 7.52027054e+01, 2.20945950e+01, 5.54054070e+00, 4.51351357e+00, + 6.87837839e+00, 6.97297287e+00, 1.05675678e+01, 4.11621628e+01, + 7.70270252e+00, 2.54054046e+00, 3.89864883e+01, 1.20662163e+02, + 1.37297297e+01, 3.78378391e-01, 2.35135126e+00, 2.76891899e+01, + 6.55540543e+01, 5.58108091e+00, 9.85135174e+00, 6.06891899e+01, + 1.92297306e+01, 2.08108115e+00, 4.13513517e+00, 9.75405426e+01, + 9.08648682e+01, 1.22972975e+01, 5.79729748e+00, 1.75405407e+01, + 1.58783779e+01, 8.25675678e+00, 1.21621618e+01, 9.70270233e+01, + 5.92702713e+01, 1.62162170e+01, 4.27027035e+00, 2.66216207e+00, + 3.16216207e+00, 5.62162161e+00, 1.47432432e+01, 6.08918915e+01, + 1.00675678e+01, 3.21621633e+00, 1.57567568e+01, 3.12162170e+01, + 2.45945954e+00, 1.27027023e+00, 1.75270271e+01, 7.66216202e+01, + 3.16216221e+01, 5.24324322e+00, 5.56756735e+00, 1.75540543e+01, + 6.78378391e+00, 4.29729748e+00, 1.63378372e+01, 9.76486511e+01, + 4.49189186e+01, 8.71621609e+00, 4.41891909e+00, 5.54054070e+00, + 5.02702713e+00, 8.25675678e+00, 1.98918915e+01, 8.36351318e+01, + 3.70945930e+01, 6.51351357e+00, 2.13513517e+00, 1.36486483e+00, + 1.56756759e+00, 2.90540552e+00, 1.41351347e+01, 6.40675659e+01, + 3.00000012e-01, 6.94999981e+00, 4.60499992e+01, 3.97000008e+01, + 8.89999962e+00, 5.50000000e+00, 4.02500010e+00, 7.74999976e-01, + 8.75000000e-01, 8.99999976e-01, 4.14749985e+01, 8.97249985e+01, + 1.55000000e+01, 3.52500010e+00, 8.12500000e+00, 5.40000010e+00, + 2.37500000e+00, 1.10000002e+00, 2.29500008e+01, 110., + 2.83500004e+01, 2.54999995e+00, 1.77250004e+01, 2.41749992e+01, + 2.90000010e+00, 4.49999988e-01, 4.84999990e+00, 6.61500015e+01, + 2.30499992e+01, 2.27500010e+00, 2.54249992e+01, 5.97000008e+01, + 1.45000005e+00, 2.34249992e+01, 8.75000000e+01, 3.43499985e+01, + 3.57500005e+00, 4.55750008e+01, 8.06500015e+01, 4.42500019e+00, + 1.17499995e+00, 5.80000019e+00, 7.89499969e+01, 7.52750015e+01, + 5.37500000e+00, 2.16250000e+01, 1.08675003e+02, 2.23750000e+01, + 1.87500000e+00, 2.17499995e+00, 3.94749985e+01, 7.38750000e+01, + 8.12500000e+00, 5.59999990e+00, 1.16425003e+02, 7.98249969e+01, + 5.75000000e+00, 2.92499995e+00, 1.33999996e+01, 29., + 5.62500000e+00, 3.17499995e+00, 9.43499985e+01, 1.11375000e+02, + 5.94999981e+00, 2.06000004e+01, 3.50250015e+01, 7.37500000e+00, + 2.59999990e+00, 4.24000015e+01, 1.00800003e+02, 1.41750002e+01, + 6.47499990e+00, 1.31000004e+01, 3.99500008e+01, 1.66499996e+01, + 4.55000019e+00, 2.31499996e+01, 1.11375000e+02, 2.99500008e+01, + 9.02499962e+00, 6.97499990e+00, 2.49500008e+01, 1.90750008e+01, + 4.05000019e+00, 9.94999981e+00, 1.03824997e+02, 7.05500031e+01, + 1.50249996e+01, 4.37500000e+00, 8.62500000e+00, 8.25000000e+00, + 2.27500010e+00, 6.97499990e+00, 7.66500015e+01, 1.01275002e+02, + 2.42499995e+00, 2.34999990e+00, 3.17499995e+00, 1.62500000e+00, + 3.07500005e+00, 2.72250004e+01, 5.16250000e+01, 7.84999990e+00, + 4.02500010e+00, 2.45000005e+00, 4.07499981e+00, 2.70000005e+00, + 2.54999995e+00, 1.68999996e+01, 6.69250031e+01, 2.43999996e+01, + 5.87500000e+00, 1.47500002e+00, 2.12500000e+00, 2., + 1.02499998e+00, 8.85000038e+00, 7.35749969e+01, 6.34000015e+01, + 7.55000019e+00, 1.10000002e+00, 7.74999976e-01, 7.25000024e-01, + 1.37500000e+00, 6.25000000e+00, 5.18499985e+01, 7.86500015e+01, + 3.41964302e+01, 9.62500000e+00, 2.88750000e+01, 4.11785698e+01, + 3.42857146e+00, 2.98214293e+00, 2.27500000e+01, 5.32142868e+01, + 3.76607132e+01, 7.55357122e+00, 1.71250000e+01, 7.14285707e+00, + 1.23214281e+00, 1.72678566e+01, 6.70892868e+01, 7.38035736e+01, + 1.04107141e+01, 9.01785755e+00, 1.21428576e+01, 2.01785707e+00, + 8.12500000e+00, 5.96428566e+01, 8.15178604e+01, 3.68035698e+01, + 3.19642854e+00, 1.95535717e+01, 1.31964283e+01, 2.53571439e+00, + 2.00892849e+01, 7.28392868e+01, 3.58035698e+01, 5.16071415e+00, + 8.24821396e+01, 1.42500000e+01, 3.83928561e+00, 7.44642878e+00, + 3.35714293e+00, 9.82142866e-01, 1.79285717e+01, 9.26964264e+01, + 8.39464264e+01, 3.78571434e+01, 1.77500000e+01, 9.48214245e+00, + 6.10714293e+00, 1.58750000e+01, 7.97142868e+01, 1.13321426e+02, + 2.13214283e+01, 2.33928566e+01, 3.34821434e+01, 3.58571434e+01, + 5.00178566e+01, 8.37142868e+01, 1.01232140e+02, 5.45178566e+01, + 2.44642854e+00, 7.08928585e+00, 9.44642830e+00, 2.11428566e+01, + 6.29642868e+01, 9.36071396e+01, 3.34285698e+01, 3.62500000e+00, + 1.04428574e+02, 2.17500000e+01, 2.03571439e+00, 2.17857146e+00, + 4.44642878e+00, 1.66071427e+00, 7.41071415e+00, 7.77321396e+01, + 8.40357132e+01, 5.34821434e+01, 3.12142849e+01, 1.93750000e+01, + 1.26428576e+01, 9.60714245e+00, 1.72142849e+01, 6.45714264e+01, + 1.71607151e+01, 3.38214302e+01, 5.81250000e+01, 5.54107132e+01, + 4.80892868e+01, 3.35892868e+01, 1.84821434e+01, 1.43750000e+01, + 8.32142830e+00, 7.87500000e+00, 1.64642849e+01, 3.01428566e+01, + 6.83750000e+01, 5.51964302e+01, 1.23928576e+01, 4.44642878e+00, + 9.43750000e+01, 5.02678566e+01, 3.60714293e+00, 2.03571439e+00, + 6.58928585e+00, 5.46428585e+00, 5.57142878e+00, 2.26250000e+01, + 5.34107132e+01, 4.63392868e+01, 1.56071424e+01, 1.13571424e+01, + 1.38392859e+01, 1.22857141e+01, 1.04107141e+01, 1.72678566e+01, + 1.48928576e+01, 1.54285717e+01, 1.87321434e+01, 2.51964283e+01, + 2.15714283e+01, 1.88750000e+01, 1.83035717e+01, 1.58035717e+01, + 1.07500000e+01, 7.26785707e+00, 1.32500000e+01, 4.18392868e+01, + 5.03928566e+01, 2.46785717e+01, 1.33035717e+01, 1.21250000e+01, + 2.87755108e+00, 2.93877554e+00, 4.42857122e+00, 6.63265324e+00, + 2.83469391e+01, 4.21836739e+01, 1.70408173e+01, 6.85714293e+00, + 1.35510206e+01, 2.81020412e+01, 8.73469353e+00, 1.07551022e+01, + 2.48163261e+01, 4.01428566e+01, 2.78979588e+01, 1.40816326e+01, + 5.09387741e+01, 1.56836731e+02, 3.97959175e+01, 8.59183693e+00, + 2.23877544e+01, 6.53877563e+01, 2.44489803e+01, 1.06938772e+01, + 2.54897957e+01, 1.57163269e+02, 9.88367310e+01, 6.06122446e+00, + 2.29591827e+01, 1.53326538e+02, 6.20816345e+01, 3.89795923e+00, + 2.24489784e+00, 2.65306115e+00, 3.69387746e+00, 5.10204077e+00, + 2.91224499e+01, 7.98367310e+01, 3.36938782e+01, 5.42857122e+00, + 5.77551031e+00, 6.38775492e+00, 8.10204124e+00, 8.10204124e+00, + 2.77142849e+01, 8.20612259e+01, 5.37755089e+01, 1.54897957e+01, + 9.53061199e+00, 3.61836739e+01, 1.71632652e+01, 9.81632614e+00, + 2.63265305e+01, 5.50408173e+01, 5.32653046e+01, 2.21428566e+01, + 7.40816307e+00, 1.41612244e+02, 9.55102005e+01, 6.93877554e+00, + 1.98979588e+01, 5.92448997e+01, 44., 1.44693880e+01, + 4.28571415e+00, 3.71428561e+00, 3.26530623e+00, 3.75510216e+00, + 1.46326532e+01, 5.93469391e+01, 3.54897957e+01, 5.91836739e+00, + 3.24489784e+00, 2.42857146e+00, 2.30612254e+00, 3.28571439e+00, + 1.76530609e+01, 95., 7.88163300e+01, 1.03673468e+01, + 4.77551031e+00, 3.16326523e+00, 4.57142878e+00, 4.06122446e+00, + 1.44285717e+01, 7.31224518e+01, 9.49795914e+01, 2.02653065e+01, + 4.28571415e+00, 3.69387746e+00, 4.93877554e+00, 3.57142854e+00, + 1.20612249e+01, 5.53265305e+01, 7.98163300e+01, 2.29591827e+01, + 2.71428561e+00, 2.14285707e+00, 1.53061223e+00, 1.69387758e+00, + 3.59183669e+00, 9.71428585e+00, 8.32653046e+00, 3.48979592e+00, + 2.04081631e+00, 1.73469388e+00, 1.40816331e+00, 1.83673465e+00, + 5.63265324e+00, 2.69795914e+01, 2.49387760e+01, 3.71428561e+00, + 1.59183669e+00, 7.75510192e-01, 8.57142866e-01, 8.36734712e-01, + 4.42857122e+00, 2.75918369e+01, 3.78163261e+01, 6.51020432e+00, + 1.38775516e+00, 5.91836751e-01, 7.95918345e-01, 7.55102038e-01, + 2.46938777e+00, 1.90612240e+01, 3.88367348e+01, 8.18367386e+00, + 1.12658224e+01, 1.56582279e+01, 6.37974691e+00, 3.88607597e+00, + 7.89367065e+01, 1.25898735e+02, 1.08987341e+01, 3.15189862e+00, + 1.67215195e+01, 2.84936714e+01, 2.53797474e+01, 1.47721519e+01, + 3.15063286e+01, 7.34050598e+01, 1.96962032e+01, 7.25316477e+00, + 2.06455688e+01, 2.72911396e+01, 3.37594948e+01, 2.95569630e+01, + 2.07215195e+01, 1.91518993e+01, 2.15569630e+01, 2.05063286e+01, + 1.90379753e+01, 1.11645565e+01, 2.04430370e+01, 3.23544312e+01, + 1.99620247e+01, 9.89873409e+00, 1.79873409e+01, 3.22278481e+01, + 5.32911396e+00, 1.06329117e+01, 5.16455698e+00, 3.67088604e+00, + 2.36708870e+01, 1.28037979e+02, 5.03544312e+01, 7.68354416e+00, + 4.35443020e+00, 1.21772156e+01, 8.32911396e+00, 3.15189862e+00, + 1.33291140e+01, 142., 1.27379745e+02, 7.45569611e+00, + 5.13924074e+00, 1.02784815e+01, 1.56708860e+01, 9.89873409e+00, + 5.17721510e+00, 7.50506363e+01, 1.39721512e+02, 2.60759487e+01, + 7.75949383e+00, 5.36708879e+00, 1.15949364e+01, 1.17974682e+01, + 4.51898718e+00, 7.93670893e+00, 1.30303802e+02, 1.09949364e+02, + 4.77215195e+00, 3.94936705e+00, 3.18987346e+00, 4.13924074e+00, + 9.25316429e+00, 4.80886078e+01, 4.74177208e+01, 1.22278481e+01, + 5.13924074e+00, 5.65822792e+00, 3.59493661e+00, 3.07594943e+00, + 9.48101234e+00, 8.48734207e+01, 1.07139244e+02, 2.00253162e+01, + 5.27848101e+00, 4.18987322e+00, 5.34177208e+00, 3.17721510e+00, + 7., 6.07215195e+01, 1.32797470e+02, 3.51518974e+01, + 6.93670893e+00, 3.62025309e+00, 4.89873409e+00, 5.12658215e+00, + 4.81012678e+00, 1.65949364e+01, 1.12037971e+02, 6.84430389e+01, + 2.62025309e+00, 1.96202528e+00, 1.12658226e+00, 1.43037975e+00, + 4.16455698e+00, 1.66962032e+01, 1.96962032e+01, 5.67088604e+00, + 3.25316453e+00, 1.79746830e+00, 9.74683523e-01, 1.35443044e+00, + 4.56962013e+00, 2.04683552e+01, 3.12658234e+01, 1.14936705e+01, + 3.21518993e+00, 1.44303799e+00, 1.05063295e+00, 1.13924050e+00, + 3.86075950e+00, 2.02278481e+01, 3.40126572e+01, 1.49113922e+01, + 3.89873409e+00, 2.05063295e+00, 1.37974679e+00, 1.08860755e+00, + 2.02531648e+00, 1.02025318e+01, 2.32025318e+01, 1.53291140e+01, + 1.72950821e+01, 1.29180326e+01, 5.49672127e+01, 3.05409832e+01, + 8.13114738e+00, 1.08852463e+01, 47., 4.07540970e+01, + 2.42459011e+01, 2.27868843e+01, 6.20819664e+01, 3.07213116e+01, + 1.42786884e+01, 1.88032780e+01, 5.12295074e+01, 4.58688507e+01, + 2.29508190e+01, 2.44262295e+01, 6.46229477e+01, 3.58852463e+01, + 2.11311474e+01, 25., 5.33442612e+01, 3.13278694e+01, + 1.10983610e+01, 1.72786884e+01, 6.42131119e+01, 3.55573769e+01, + 1.81147537e+01, 2.22950821e+01, 5.11311493e+01, 1.79016399e+01, + 8.42622948e+00, 2.39016399e+01, 9.92459030e+01, 3.67213097e+01, + 7.52459002e+00, 1.89016399e+01, 8.22295074e+01, 3.18852463e+01, + 1.12950821e+01, 4.35245895e+01, 1.21672134e+02, 4.18852463e+01, + 1.04262295e+01, 2.35573769e+01, 1.08196724e+02, 4.02295074e+01, + 9.27868843e+00, 3.92950821e+01, 1.23786888e+02, 5.66721306e+01, + 1.28524590e+01, 2.65081959e+01, 1.11344261e+02, 4.05081978e+01, + 5.21311474e+00, 1.93442631e+01, 1.09672134e+02, 4.88196716e+01, + 1.08524590e+01, 2.03770485e+01, 1.08622948e+02, 4.25409851e+01, + 1.02131147e+01, 9.42622948e+00, 2.70655746e+01, 1.36393442e+01, + 6.52459002e+00, 1.90655746e+01, 91., 3.53278694e+01, + 1.20655737e+01, 1.29672127e+01, 3.34918022e+01, 1.45081968e+01, + 9.86885262e+00, 2.73934422e+01, 1.07278687e+02, 4.08196716e+01, + 9.55737686e+00, 1.42950821e+01, 3.58524590e+01, 1.85737705e+01, + 1.19016390e+01, 2.60491810e+01, 1.03081970e+02, 3.80163918e+01, + 1.07377052e+01, 1.22786884e+01, 2.36885242e+01, 1.53278685e+01, + 9.11475372e+00, 1.71639347e+01, 7.43442612e+01, 3.25573769e+01, + 8.19672108e+00, 5.98360634e+00, 4.11475420e+00, 3.40983605e+00, + 3.44262290e+00, 3.47540975e+00, 5.16393423e+00, 6.85245895e+00, + 9.37704945e+00, 6.81967211e+00, 6.36065578e+00, 6.16393423e+00, + 5.24590158e+00, 4.47540998e+00, 5.22950840e+00, 8.06557369e+00, + 6.59016371e+00, 6.73770475e+00, 8.11475372e+00, 7.60655737e+00, + 6.70491791e+00, 6.78688526e+00, 6.83606577e+00, 6.24590158e+00, + 5.85245895e+00, 6.14754105e+00, 6.63934422e+00, 6.98360634e+00, + 5.90163946e+00, 6.09836054e+00, 5.18032789e+00, 4.70491791e+00, + 9.19565201e+00, 1.43478260e+01, 9.71630402e+01, 2.10108700e+01, + 5.58695650e+00, 1.08804350e+01, 9.57282639e+01, 2.45434780e+01, + 5.84782600e+00, 1.56086960e+01, 1.34043472e+02, 2.94782600e+01, + 3.59782600e+00, 1.47173910e+01, 1.25880432e+02, 2.47065220e+01, + 1.29347825e+00, 1.50217390e+01, 1.37250000e+02, 2.71630440e+01, + 2.79347825e+00, 1.71086960e+01, 1.30521744e+02, 1.69130440e+01, + 1.82608700e+00, 1.29347830e+01, 1.19043480e+02, 2.62500000e+01, + 7.35869551e+00, 1.90434780e+01, 1.05402176e+02, 1.18152170e+01, + 5.25000000e+00, 1.21304350e+01, 1.14858696e+02, 3.54782600e+01, + 8.57608700e+00, 1.36847830e+01, 7.63804321e+01, 2.04347820e+01, + 3.41304350e+00, 1.30326090e+01, 1.35891312e+02, 3.48152161e+01, + 6.16304350e+00, 1.56086960e+01, 1.00260872e+02, 2.22282600e+01, + 2.81521749e+00, 1.55434780e+01, 1.34021744e+02, 2.18804340e+01, + 4.35869551e+00, 1.58043480e+01, 1.02402176e+02, 1.96739140e+01, + 3.46739125e+00, 1.75108700e+01, 1.06489128e+02, 1.47717390e+01, + 4.61956501e+00, 1.40217390e+01, 8.05869598e+01, 1.53043480e+01, + 4.42391300e+00, 6.32608700e+00, 1.12500000e+01, 9.76086998e+00, + 6.63043499e+00, 7.10869551e+00, 2.77826080e+01, 1.07934780e+01, + 5.89130449e+00, 7.28260851e+00, 1.03152170e+01, 1.23043480e+01, + 8.73913002e+00, 7.51086950e+00, 3.28695641e+01, 1.00760870e+01, + 5.89130449e+00, 7.06521749e+00, 8.97826099e+00, 1.02173910e+01, + 8.14130402e+00, 7.77173901e+00, 3.13804340e+01, 1.06413040e+01, + 4.39130449e+00, 4.76086950e+00, 6.11956501e+00, 8.23913002e+00, + 6.77173901e+00, 7.78260851e+00, 2.35434780e+01, 7.67391300e+00, + 7.17391312e-01, 1.06521738e+00, 1.32608700e+00, 1., 1., + 1.34782612e+00, 2.02173924e+00, 1.07608700e+00, 1.17391300e+00, + 1.15217388e+00, 1.06521738e+00, 1.35869563e+00, 1.40217388e+00, + 1.41304350e+00, 2.01086950e+00, 1.43478262e+00, 1.29347825e+00, + 1.31521738e+00, 1.04347825e+00, 1.29347825e+00, 1.52173913e+00, + 1.22826087e+00, 1.67391300e+00, 1.52173913e+00, 8.58695626e-01, + 8.69565189e-01, 9.56521749e-01, 1.19565213e+00, 1.26086962e+00, + 1.05434787e+00, 1.32608700e+00, 1.07608700e+00, 1.54235296e+01, + 1.84235287e+01, 8.48235321e+00, 1.10588236e+01, 3.30235291e+01, + 4.04352951e+01, 2.13529415e+01, 1.09411764e+01, 1.27176466e+01, + 1.06941175e+01, 1.07647057e+01, 1.49058819e+01, 2.12823524e+01, + 2.19058819e+01, 2.23411770e+01, 1.57529411e+01, 1.33647060e+01, + 9.83529377e+00, 1.15176468e+01, 1.28352938e+01, 1.70117645e+01, + 1.93294125e+01, 2.06941185e+01, 1.48235292e+01, 6.09411764e+00, + 5.65882349e+00, 6.41176462e+00, 7.03529406e+00, 8.50588226e+00, + 1.19529409e+01, 1.21176472e+01, 8.49411774e+00, 3.57058830e+01, + 4.14000015e+01, 1.11176472e+01, 1.80705891e+01, 9.36470566e+01, + 1.17611763e+02, 2.41058826e+01, 1.51294117e+01, 2.33764706e+01, + 2.00117645e+01, 1.68823528e+01, 2.14705887e+01, 3.36470604e+01, + 3.85176468e+01, 3.15882359e+01, 2.12823524e+01, 1.64588242e+01, + 1.38941174e+01, 1.63647060e+01, 1.78823528e+01, 2.41529408e+01, + 3.21294136e+01, 2.91058826e+01, 2.12705879e+01, 8.88235283e+00, + 8.67058849e+00, 1.09294119e+01, 1.14823532e+01, 1.38588238e+01, + 1.73764706e+01, 1.76352940e+01, 1.41294117e+01, 4.80117645e+01, + 6.08117638e+01, 9.70588207e+00, 1.45764704e+01, 1.35364700e+02, + 1.56905884e+02, 1.48000002e+01, 1.08941174e+01, 3.74000015e+01, + 4.75764694e+01, 2.06588230e+01, 2.46235294e+01, 5.62117653e+01, + 8.14235306e+01, 2.87999992e+01, 1.51764708e+01, 1.81882362e+01, + 1.92941170e+01, 2.02117653e+01, 2.11764698e+01, 2.57529411e+01, + 2.82941170e+01, 2.36705875e+01, 1.86000004e+01, 7.59999990e+00, + 9.08235264e+00, 1.08352938e+01, 1.24588232e+01, 1.58588238e+01, + 1.65058823e+01, 1.67764702e+01, 1.26705885e+01, 6.10470581e+01, + 1.16447060e+02, 1.09529409e+01, 4.50588226e+00, 9.90588226e+01, + 1.54800003e+02, 1.24235296e+01, 6.89411783e+00, 3.56117630e+01, + 7.31647034e+01, 1.71411762e+01, 1.29411764e+01, 9.34705887e+01, + 1.54105881e+02, 2.06470585e+01, 6.61176491e+00, 1.61764698e+01, + 2.98235302e+01, 1.64941177e+01, 1.53058825e+01, 2.39294109e+01, + 3.93176460e+01, 2.44117641e+01, 1.40352945e+01, 7.61176491e+00, + 8.04705906e+00, 8.51764679e+00, 9.65882397e+00, 1.21764708e+01, + 1.30117645e+01, 1.19882355e+01, 8.89411736e+00, 3.06382990e+00, + 2.14893627e+00, 2.12765956e+00, 3.17021275e+00, 4.21276617e+00, + 3.68085098e+00, 2.36170220e+00, 3.08510637e+00, 3.63829780e+00, + 4.65957451e+00, 3.95744681e+00, 4.51063824e+00, 4.53191471e+00, + 3.80851054e+00, 3.31914902e+00, 3.10638309e+00, 2.61702132e+00, + 1.87234044e+00, 1.63829792e+00, 2.02127671e+00, 3.14893627e+00, + 3.87234044e+00, 4.31914902e+00, 2.55319142e+00, 6.80851042e-01, + 3.61702114e-01, 2.97872335e-01, 3.40425521e-01, 1.08510637e+00, + 1.51063836e+00, 2.21276593e+00, 1.19148934e+00, 3.08723412e+01, + 2.70638294e+01, 1.90212765e+01, 3.31063843e+01, 4.27021294e+01, + 3.56382980e+01, 22., 2.15957451e+01, 5.37234039e+01, + 6.00425529e+01, 34., 3.57234039e+01, 5.12127647e+01, + 5.05957451e+01, 3.27446823e+01, 2.73404255e+01, 3.95319138e+01, + 2.90212765e+01, 1.47021275e+01, 1.57872343e+01, 3.06808510e+01, + 3.42553177e+01, 2.87872334e+01, 2.28723412e+01, 6.87234020e+00, + 4.14893627e+00, 4.06382990e+00, 4.10638285e+00, 9.57446766e+00, + 1.41702127e+01, 1.72340431e+01, 1.01063833e+01, 5.65744667e+01, + 2.06808510e+01, 1.72340431e+01, 4.49361687e+01, 7.25744705e+01, + 5.10212784e+01, 4.59361687e+01, 4.65531921e+01, 1.09829788e+02, + 6.17872353e+01, 2.31702137e+01, 4.55106392e+01, 1.16957443e+02, + 8.83404236e+01, 4.76595726e+01, 6.49148941e+01, 9.04893646e+01, + 4.84680862e+01, 1.54255323e+01, 2.57872334e+01, 6.48085098e+01, + 4.43617020e+01, 3.01063824e+01, 4.18510628e+01, 1.12553196e+01, + 6.82978725e+00, 6.55319166e+00, 8.23404217e+00, 1.34893618e+01, + 1.87021275e+01, 2.09574471e+01, 1.16595745e+01, 6.15106392e+01, + 3.02340431e+01, 2.38085098e+01, 4.95106392e+01, 7.25106354e+01, + 2.88510647e+01, 2.32340431e+01, 4.22765961e+01, 1.11063828e+02, + 3.29574471e+01, 1.06808510e+01, 7.01276627e+01, 1.21936172e+02, + 4.08723412e+01, 1.64468079e+01, 6.12340431e+01, 9.75106354e+01, + 2.95744686e+01, 1.25744677e+01, 3.22978706e+01, 6.76808548e+01, + 3.03829784e+01, 1.92553196e+01, 44., 1.08085108e+01, + 6.80851078e+00, 8., 8.46808529e+00, 1.03191490e+01, + 1.33404255e+01, 1.38297873e+01, 7.70212746e+00, 4.90909100e+00, + 1.86363637e+00, 8.86363626e-01, 1.15909088e+00, 1.61363640e+01, + 5.85681801e+01, 2.91818180e+01, 3.09090900e+00, 4.09090900e+00, + 6.79545450e+00, 3.88636374e+00, 3.63636374e+00, 2.45681820e+01, + 4.02954559e+01, 2.27954540e+01, 5.95454550e+00, 3.22954559e+01, + 6.61136398e+01, 6.86363649e+00, 1.97727275e+00, 1.42954550e+01, + 2.62272720e+01, 2.12727280e+01, 1.27272730e+01, 7.29545441e+01, + 9.02727280e+01, 2.04545450e+00, 6.36363626e-01, 2.47954540e+01, + 5.51818199e+01, 1.61136360e+01, 1.42500000e+01, 2.90909100e+00, + 1.95454550e+00, 2.88636374e+00, 4.86363649e+00, 3.17045460e+01, + 1.13704544e+02, 5.43409081e+01, 7.25000000e+00, 3.72727275e+00, + 3.09090900e+00, 5.22727251e-01, 2.13636374e+00, 4.45681801e+01, + 1.07454544e+02, 4.41590919e+01, 5.61363649e+00, 2.92272720e+01, + 2.09772720e+01, 1.61363637e+00, 3.36363626e+00, 2.92500000e+01, + 5.03409081e+01, 2.70227280e+01, 1.31363640e+01, 1.21863640e+02, + 9.89090881e+01, 2.15909100e+00, 1.90909088e+00, 3.61590919e+01, + 3.50681801e+01, 9.86363602e+00, 1.19772730e+01, 1.19090910e+01, + 6.47727251e+00, 7.15909100e+00, 1.35000000e+01, 5.00681801e+01, + 7.66818161e+01, 3.68863640e+01, 1.71818180e+01, 6.70454550e+00, + 5.34090900e+00, 2.02272725e+00, 1.13181820e+01, 9.31136398e+01, + 1.10840912e+02, 2.51136360e+01, 5.88636351e+00, 1.43181820e+01, + 3.93181825e+00, 1.70454550e+00, 6.18181801e+00, 6.49318161e+01, + 6.29772720e+01, 1.18181820e+01, 6.68181801e+00, 1.20113640e+02, + 3.82272720e+01, 2.59090900e+00, 5.27272749e+00, 4.00454559e+01, + 1.80681820e+01, 5.25000000e+00, 2.65227280e+01, 12., + 8.93181801e+00, 1.16136360e+01, 2.91590900e+01, 3.67954559e+01, + 2.67500000e+01, 1.79318180e+01, 1.20909090e+01, 8.38636398e+00, + 4.18181801e+00, 6.75000000e+00, 3.82045441e+01, 9.73181839e+01, + 5.71818199e+01, 1.12045450e+01, 4.77272749e+00, 1.42727270e+01, + 1.18181813e+00, 2.18181825e+00, 1.81818180e+01, 7.06818161e+01, + 3.78181801e+01, 4.93181801e+00, 1.51818180e+01, 1.09886360e+02, + 6.18181801e+00, 2.34090900e+00, 1.98863640e+01, 3.86136360e+01, + 8.22727299e+00, 3.52272725e+00, 5.68636360e+01, 6.41940308e+01, + 1.10805969e+02, 2.31343293e+00, 1.88059700e+00, 4.33880615e+01, + 7.70298538e+01, 2.77611947e+00, 1.52238810e+00, 2.52686558e+01, + 4.32388077e+01, 7.67164183e+00, 2.85074615e+00, 4.44179115e+01, + 1.15492538e+02, 5.92537308e+00, 4.38805962e+00, 2.75522385e+01, + 3.68955231e+01, 2.18208961e+01, 6.01492548e+00, 4.83582067e+00, + 1.42835817e+01, 3.08955216e+00, 6.32835817e+00, 1.54477615e+01, + 3.94477615e+01, 3.55970154e+01, 1.04477615e+01, 2.02985072e+00, + 9.55223858e-01, 1.95522392e+00, 2.53731346e+00, 2.65074635e+01, + 1.04701492e+02, 6.61194038e+00, 2.92537308e+00, 1.50447760e+01, + 3.37313423e+01, 7.29850769e+00, 2.13432837e+00, 2.02537308e+01, + 1.29328354e+02, 3.13283577e+01, 2.04477620e+00, 2.04029846e+01, + 1.30059708e+02, 2.64776115e+01, 2.05970144e+00, 1.09402981e+01, + 5.95223885e+01, 2.98955231e+01, 4.98507452e+00, 6.73134327e+00, + 1.23895523e+02, 7.58208923e+01, 3.04477620e+00, 7.86567163e+00, + 2.87313442e+01, 2.66119404e+01, 1.08656721e+01, 4.02985096e+00, + 3.45373116e+01, 4.76119385e+01, 2.19402981e+00, 1.94029856e+00, + 1.23731346e+01, 2.91044784e+00, 3.17910457e+00, 1.39253731e+01, + 3.01641788e+01, 1.27761192e+01, 2.59701490e+00, 4.26865673e+00, + 1.13880600e+02, 4.38955231e+01, 3.46268654e+00, 1.00298510e+01, + 4.00447769e+01, 1.65820904e+01, 3.02985072e+00, 3.52238798e+00, + 1.27671638e+02, 1.14253731e+02, 2.53731346e+00, 4.02985096e+00, + 9.07164154e+01, 6.87910461e+01, 3.01492548e+00, 1.91044772e+00, + 6.29552231e+01, 1.11134331e+02, 3.83582091e+00, 2.37313437e+00, + 7.75522385e+01, 1.19298508e+02, 3.65671635e+00, 1.14925373e+00, + 9.85074639e-01, 1.37313437e+00, 2.13432837e+00, 7.14925385e+00, + 2.27462692e+01, 1.16268654e+01, 2.23880601e+00, 1.17910445e+00, + 2.52238798e+00, 2.22388053e+00, 1.94029856e+00, 8.26865673e+00, + 3.06567173e+01, 1.87761192e+01, 3.32835817e+00, 1.49253726e+00, + 2.11194038e+01, 2.40447769e+01, 2.16417909e+00, 5.94029856e+00, + 2.22835827e+01, 1.98358212e+01, 5.52238798e+00, 1.34328353e+00, + 2.67910442e+01, 6.81194000e+01, 2.40298510e+00, 2.79104471e+00, + 1.06865673e+01, 1.66865673e+01, 5.38805962e+00, 3.28137245e+01, + 1.68627453e+00, 1.15980396e+01, 5.00588226e+01, 2.12058830e+01, + 6.39215708e+00, 1.66862736e+01, 1.38058823e+02, 8.27254868e+01, + 2.98039222e+00, 6.08823538e+00, 1.47568634e+02, 9.54607849e+01, + 2.94117641e+00, 6.94117641e+00, 1.46568634e+02, 3.35392151e+01, + 9., 3.62745094e+00, 8.43627472e+01, 5.22156868e+01, + 2.85294127e+00, 6.80392170e+00, 4.01960793e+01, 2.23823528e+01, + 4.30392170e+00, 1.13725495e+00, 1.05882359e+00, 8.23529422e-01, + 1.15686274e+00, 3.66666675e+00, 2.54411774e+01, 1.87352943e+01, + 3.56862736e+00, 5.37450981e+01, 1.47637253e+02, 1.52843142e+01, + 3.29411769e+00, 5.63627434e+01, 1.49362747e+02, 2.40784321e+01, + 5.20588255e+00, 1.54509802e+01, 1.49970581e+02, 4.52450981e+01, + 4.86274529e+00, 1.74901962e+01, 8.75980377e+01, 4.29215698e+01, + 8.72549057e+00, 3.51960778e+00, 1.54313726e+01, 7.11764717e+00, + 3.65686274e+00, 1.55098038e+01, 72., 2.22745094e+01, + 3.61764717e+00, 1.36274505e+00, 1.20588231e+00, 1.22549021e+00, + 1.70588231e+00, 6.24509811e+00, 2.97156868e+01, 1.08529415e+01, + 5.01960802e+00, 5.41568642e+01, 1.18598038e+02, 5.79411745e+00, + 4.76470566e+00, 2.79803925e+01, 4.66666679e+01, 2.31078434e+01, + 5.60784292e+00, 5.79411745e+00, 2.85784321e+01, 5.79411745e+00, + 6.31372547e+00, 2.96960793e+01, 6.37450981e+01, 3.26176453e+01, + 6.82352924e+00, 2.65686274e+00, 2.38235283e+00, 3.12745094e+00, + 5.09803915e+00, 1.83627453e+01, 6.66764679e+01, 1.33039217e+01, + 3.36274505e+00, 2.10784316e+00, 1.88235295e+00, 1.80392158e+00, + 2.68627453e+00, 7.08823538e+00, 2.12549019e+01, 9.47058868e+00, + 2.44117641e+00, 2.87254906e+00, 4.04901981e+00, 2.78431368e+00, + 4.23529434e+00, 2.29901962e+01, 3.03039207e+01, 1.63529415e+01, + 4.25490189e+00, 1.86274505e+00, 2.05882359e+00, 2.90196085e+00, + 4.43137264e+00, 2.29509811e+01, 4.73235283e+01, 1.63235302e+01, + 4.99019623e+00, 3.38235283e+00, 2.99019599e+00, 3.25490189e+00, + 5.17647076e+00, 1.45490198e+01, 3.57549019e+01, 5.54901981e+00, + 2.30392146e+00, 2.42156863e+00, 2.07843137e+00, 2.36274505e+00, + 2.74509811e+00, 4.59803915e+00, 9.28431416e+00, 3.46666670e+00, + 3.93333340e+00, 8.77777767e+00, 1.69111118e+01, 6.77777767e+00, + 5.13333321e+00, 7.28888893e+00, 2.35555553e+00, 6.95555544e+00, + 4.37777758e+00, 1.81333332e+01, 2.83111115e+01, 8.53333378e+00, + 3.04444456e+00, 4.02222204e+00, 3.48888898e+00, 2.48888898e+00, + 4.57777786e+00, 2.30444450e+01, 2.26444435e+01, 5.88888884e+00, + 2.95555544e+00, 1.15777779e+01, 1.43999996e+01, 2.15555549e+00, + 4.26666689e+00, 1.78666668e+01, 1.15555553e+01, 3.91111112e+00, + 3.64444447e+00, 4.60222206e+01, 3.17555561e+01, 2.71111107e+00, + 3.73333335e+00, 1.46222219e+01, 3.42000008e+01, 1.37333336e+01, + 5.33333349e+00, 5.40000010e+00, 3.24444437e+00, 7.13333321e+00, + 3.57777786e+00, 2.09777775e+01, 3.68444443e+01, 1.20222225e+01, + 4.44444466e+00, 1.93555565e+01, 8.72222214e+01, 4.48888874e+00, + 2.59999990e+00, 4.63555565e+01, 9.33777771e+01, 6.53333330e+00, + 3.44444442e+00, 9.05777740e+01, 1.32822220e+02, 2.08888888e+00, + 2.42222214e+00, 1.21400002e+02, 1.05599998e+02, 4.33333349e+00, + 6.11111116e+00, 9.42666702e+01, 8.17333298e+01, 1.85777779e+01, + 3.06666660e+00, 1.01333332e+01, 2.72000008e+01, 1.53999996e+01, + 4.17777777e+00, 3.17777777e+00, 5.44000015e+01, 3.75111122e+01, + 2.33333325e+00, 1.54666662e+01, 1.25866669e+02, 2.65555553e+01, + 3.06666660e+00, 2.15555553e+01, 1.34555557e+02, 7.37777758e+00, + 2.84444451e+00, 5.97111130e+01, 1.34555557e+02, 1.72444439e+01, + 4.15555573e+00, 3.36666679e+01, 8.68000031e+01, 6.80000019e+00, + 2.64444447e+00, 5.37333336e+01, 6.56666641e+01, 3.91111112e+00, + 10., 3.27333336e+01, 2.13777771e+01, 7.44888916e+01, + 2.11111116e+00, 4.26666689e+00, 3.52666664e+01, 2.63777771e+01, + 2.37777781e+00, 2.59999990e+00, 9.84000015e+01, 3.84666672e+01, + 1.95555556e+00, 4.55555534e+00, 1.31311111e+02, 8.81777802e+01, + 2.79999995e+00, 7.84444427e+00, 7.94888916e+01, 1.31999998e+01, + 3.57777786e+00, 2.82222223e+00, 4.22666664e+01, 1.06000004e+01, + 4.48888874e+00, 2.37999992e+01, 3.38888893e+01, 9.71111107e+00, + 1.51111114e+00, 6.22222245e-01, 6.66666687e-01, 8.88888896e-01, + 8.64444447e+00, 3.57555542e+01, 3.29111099e+01, 1.43111115e+01, + 2.01333332e+01, 1.75111103e+01, 9.93333340e+00, 1.02666664e+01, + 1.73777771e+01, 1.64444447e+01, 1.44444447e+01, 4.00444450e+01, + 9.91555557e+01, 4.67999992e+01, 1.49555559e+01, 2.02666664e+01, + 5.31333351e+01, 3.98666649e+01, 2.87555561e+01, 2.72444439e+01, + 1.52600006e+02, 1.34222229e+02, 1.31333332e+01, 1.66222229e+01, + 8.72444458e+01, 5.78222237e+01, 1.41777782e+01, 17., + 1.52977783e+02, 1.32199997e+02, 8.28888893e+00, 7.37777758e+00, + 9.45111084e+01, 5.06666679e+01, 1.08666668e+01, 1.68666668e+01, + 1.51111107e+01, 1.76000004e+01, 1.70222225e+01, 1.07777777e+01, + 1.18888893e+01, 1.61333332e+01, 1.76000004e+01, 3.48888893e+01, + 3.16888885e+01, 3.03999996e+01, 2.50444450e+01, 2.07111111e+01, + 2.21777782e+01, 2.66000004e+01, 3.46444435e+01, 3.27555542e+01, + 6.22222214e+01, 5.99333344e+01, 2.93999996e+01, 2.48222218e+01, + 5.05111122e+01, 4.80444450e+01, 2.94222221e+01, 2.41333332e+01, + 1.40733337e+02, 9.50666656e+01, 1.45333338e+01, 1.69555550e+01, + 9.15555573e+01, 6.43777771e+01, 1.92888889e+01, 1.61111107e+01, + 1.20222225e+01, 1.75333328e+01, 2.24222221e+01, 1.13111115e+01, + 7.68888903e+00, 1.08000002e+01, 1.46888885e+01, 3.31111107e+01, + 2.43999996e+01, 2.68666668e+01, 2.87555561e+01, 1.67333336e+01, + 1.79777775e+01, 2.40222225e+01, 3.25999985e+01, 2.97777786e+01, + 2.45777779e+01, 2.77999992e+01, 3.26666679e+01, 2.60666676e+01, + 2.42222214e+01, 3.08666668e+01, 3.36222229e+01, 3.30666656e+01, + 3.53111115e+01, 3.08666668e+01, 21., 1.72666664e+01, + 2.26000004e+01, 2.49555550e+01, 3.07111111e+01, 9.15555573e+00, + 6.42222214e+00, 9.75555515e+00, 1.21333332e+01, 7.33333349e+00, + 5.97777796e+00, 9.75555515e+00, 1.16222219e+01, 2.09555550e+01, + 1.44222221e+01, 1.86444435e+01, 1.94222221e+01, 1.25333338e+01, + 9.02222252e+00, 1.51333332e+01, 2.42222214e+01, 2.04222221e+01, + 1.73555565e+01, 1.93333340e+01, 1.97777786e+01, 1.41777782e+01, + 1.18222218e+01, 1.62222214e+01, 2.23333340e+01, 1.61777782e+01, + 14., 1.33777781e+01, 1.63777771e+01, 1.38666668e+01, + 1.06444445e+01, 1.31777782e+01, 1.72000008e+01, 3.12280703e+00, + 1.00526314e+01, 1.32807016e+01, 2.29824567e+00, 4.56140327e+00, + 2.08421059e+01, 2.32807026e+01, 5.10526323e+00, 4.22807026e+00, + 9.92982483e+00, 1.42456141e+01, 3.49122810e+00, 5.05263138e+00, + 1.33333330e+01, 1.55614033e+01, 6.77192974e+00, 4.03508759e+00, + 5.61403513e+00, 9.94736862e+00, 4.80701733e+00, 5.47368431e+00, + 7.71929836e+00, 1.01578951e+01, 7.43859673e+00, 3.22807026e+00, + 3.61403513e+00, 5.85964918e+00, 3.73684216e+00, 3.52631569e+00, + 4.84210539e+00, 7.43859673e+00, 5.56140327e+00, 7.10526323e+00, + 2.54561405e+01, 4.23684196e+01, 2.85964918e+00, 4.15789461e+00, + 6.42982483e+01, 1.06298248e+02, 1.03684206e+01, 3.61403513e+00, + 2.41228065e+01, 4.67894745e+01, 3.80701756e+00, 5.29824543e+00, + 8.29473648e+01, 1.26140350e+02, 6.92982435e+00, 2.87719297e+00, + 1.82982464e+01, 4.50701752e+01, 5.91228056e+00, 3.92982459e+00, + 6.67543869e+01, 1.16157898e+02, 1.06491232e+01, 4.08771944e+00, + 1.32982454e+01, 3.11754379e+01, 5.92982435e+00, 3.47368431e+00, + 3.04912281e+01, 7.80350876e+01, 1.56666670e+01, 8.50877190e+00, + 7.00175476e+01, 1.13614037e+02, 1.00350876e+01, 3.64912271e+00, + 2.35438595e+01, 4.64385948e+01, 7.82456160e+00, 3.85964918e+00, + 9.30175476e+01, 1.25894737e+02, 3.75438595e+00, 2.24561405e+00, + 4.38070183e+01, 8.76842117e+01, 5., 1.59649122e+00, + 7.12456131e+01, 1.17157898e+02, 3.85964918e+00, 5.78947353e+00, + 6.24210510e+01, 1.11473686e+02, 6.08771944e+00, 2.49122810e+00, + 3.45614052e+01, 7.62105255e+01, 6.84210539e+00, 8.38596535e+00, + 5.85789490e+01, 1.02754387e+02, 1.08947372e+01, 3.77192974e+00, + 1.39473686e+01, 3.15438595e+01, 1.00701752e+01, 3.73684216e+00, + 1.36315794e+01, 2.45964909e+01, 5.03508759e+00, 4.61403513e+00, + 3.40350876e+01, 6.86315765e+01, 6.15789461e+00, 2.77192974e+00, + 2.16315784e+01, 3.99824562e+01, 4.70175457e+00, 5.92982435e+00, + 5.67719307e+01, 9.34385986e+01, 4.17543840e+00, 2.85964918e+00, + 1.95614033e+01, 3.75789490e+01, 4.94736862e+00, 5.80701733e+00, + 5.36140366e+01, 8.96666641e+01, 6.03508759e+00, 4.36842108e+00, + 1.53333330e+01, 24., 3.61403513e+00, 1.96774197e+01, + 8.03225803e+00, 4.22580624e+00, 8.90322590e+00, 3.64516144e+01, + 6.54838705e+00, 2.83870959e+00, 7.74193525e+00, 1.46612900e+02, + 20., 4.35483885e+00, 2.77741928e+01, 8.27419357e+01, + 6.96774197e+00, 1.80645156e+00, 5.30645180e+01, 1.07290321e+02, + 9.90322590e+00, 2.83870959e+00, 6.79354858e+01, 1.50193542e+02, + 1.07419357e+01, 1.45161295e+00, 3.19032249e+01, 3.87741928e+01, + 1.05161295e+01, 4.90322590e+00, 2.41612911e+01, 6.85161285e+01, + 6.12903214e+00, 3.80645156e+00, 1.18387098e+01, 3.02258072e+01, + 1.64193554e+01, 7.38709688e+00, 7.54838705e+00, 3.80322571e+01, + 1.21935482e+01, 3.16129041e+00, 8.16129017e+00, 147., + 7.52580643e+01, 3.35161285e+01, 4.31612892e+01, 7.77419357e+01, + 1.84516125e+01, 4.80645180e+00, 4.03548393e+01, 9.35806427e+01, + 4.41935501e+01, 3.45806465e+01, 1.03129036e+02, 1.46258072e+02, + 1.19354839e+01, 4.45161295e+00, 24., 3.67096786e+01, + 1.01290321e+01, 6.77419376e+00, 2.22258072e+01, 5.67096786e+01, + 7.35483885e+00, 7.19354820e+00, 1.87096767e+01, 9.83870983e+00, + 1.23870964e+01, 7.58064508e+00, 4.64516115e+00, 1.74516125e+01, + 8.29032230e+00, 2.29032254e+00, 2.74193549e+00, 5.00645180e+01, + 6.57741928e+01, 5.23870964e+01, 2.37741928e+01, 2.58387089e+01, + 1.65483875e+01, 1.07741938e+01, 1.07741938e+01, 2.94516125e+01, + 4.01612892e+01, 6.41290359e+01, 7.09677429e+01, 5.12903214e+01, + 7.61290312e+00, 9.41935444e+00, 1.68387089e+01, 1.94838715e+01, + 9.38709641e+00, 9.12903214e+00, 1.59354839e+01, 1.41612902e+01, + 2.67741942e+00, 4.48387098e+00, 1.48387098e+01, 1., + 1.25806451e+00, 5.80645144e-01, 5.80645144e-01, 1.96774197e+00, + 7.41935492e-01, 3.22580636e-01, 2.90322572e-01, 1.90322578e+00, + 4.74193525e+00, 5.29032278e+00, 1.74193549e+00, 2.16129041e+00, + 2.03225803e+00, 1.83870971e+00, 1.25806451e+00, 1.80645156e+00, + 3.06451607e+00, 7.51612902e+00, 4.80645180e+00, 1.54838705e+00, + 1.51612902e+00, 3.06451607e+00, 2.93548393e+00, 2.35483861e+00, + 1.83870971e+00, 1.22580647e+00, 1.12903225e+00, 2.90322572e-01, + 2.90322572e-01, 8.38709652e-01, 2.29032254e+00, 2.88000011e+00, + 5.79999983e-01, 6.21999979e+00, 8.99000015e+01, 6.04000015e+01, + 3.79999995e+00, 1.65999997e+00, 4.48000002e+00, 1.32399998e+01, + 1.29999995e+00, 1.17399998e+01, 1.15199997e+02, 5.15800018e+01, + 1.94000006e+00, 3.29999995e+00, 3.64599991e+01, 2.53600006e+01, + 1.70000005e+00, 1.31000004e+01, 7.78399963e+01, 1.28199997e+01, + 7.59999990e-01, 1.20600004e+01, 9.44000015e+01, 1.08800001e+01, + 1.58000004e+00, 6.67999983e+00, 1.91399994e+01, 2.42000008e+00, + 7.59999990e-01, 3.72799988e+01, 9.10800018e+01, 1.06000004e+01, + 1.15999997e+00, 3.81999993e+00, 9.03399963e+01, 1.02040001e+02, + 7.76000023e+00, 2.09999990e+00, 1.16800003e+01, 64., + 3.09999990e+00, 3.09999990e+00, 9.65999985e+01, 8.77600021e+01, + 3.74000001e+00, 3.25999999e+00, 6.29199982e+01, 9.04199982e+01, + 5.48000002e+00, 3.11999989e+00, 3.10400009e+01, 1.57200003e+01, + 1.10000002e+00, 4.42000008e+00, 1.05680000e+02, 2.72999992e+01, + 7.46000004e+00, 5.73999977e+00, 7.71999979e+00, 3.53999996e+00, + 1.79999995e+00, 1.15799999e+01, 5.38800011e+01, 1.77199993e+01, + 3.57999992e+00, 2.14000010e+00, 5.30999985e+01, 1.11480003e+02, + 1.27200003e+01, 3.22000003e+00, 1.01999998e+01, 9.91800003e+01, + 1.48199997e+01, 1.88000000e+00, 4.90600014e+01, 8.76200027e+01, + 5.88000011e+00, 2.46000004e+00, 3.80800018e+01, 1.11519997e+02, + 2.92600002e+01, 3.27999997e+00, 1.06199999e+01, 1.69200001e+01, + 2.24000001e+00, 1.72000003e+00, 4.17799988e+01, 2.56800003e+01, + 1.57200003e+01, 9.19999981e+00, 7.98000002e+00, 5.28000021e+00, + 4., 4.11999989e+00, 1.33000002e+01, 1.61599998e+01, + 4.84000015e+00, 1.77999997e+00, 1.51199999e+01, 1.05220001e+02, + 2.67199993e+01, 2.55999994e+00, 4.61999989e+00, 7.92200012e+01, + 2.82800007e+01, 1.63999999e+00, 1.16000004e+01, 7.98199997e+01, + 1.71599998e+01, 1.75999999e+00, 8.61999989e+00, 8.89800034e+01, + 6.17799988e+01, 6.40000010e+00, 4.46000004e+00, 1.65200005e+01, + 4.15999985e+00, 1.15999997e+00, 6.17999983e+00, 1.93400002e+01, + 2.68400002e+01, 1.23800001e+01, 5.61999989e+00, 4.28000021e+00, + 4.55999994e+00, 3.03999996e+00, 4.90000010e+00, 5.10526323e+00, + 3.75263176e+01, 7.60526323e+00, 1.31578946e+00, 9.21052635e-01, + 3.68421054e+00, 4.60526323e+00, 1.18421054e+00, 1.76052628e+01, + 5.26315804e+01, 7.65789461e+00, 1.15789473e+00, 1.71052635e+00, + 2.63157892e+00, 1.89473689e+00, 2.71052623e+00, 2.10789471e+01, + 3.88157883e+01, 8.18421078e+00, 1.39473689e+00, 1.92105258e+00, + 1.55263162e+00, 7.10526288e-01, 3.76315784e+00, 1.50789471e+01, + 2.01578941e+01, 4.97368431e+00, 1.39473689e+00, 2.13157892e+00, + 6.05263174e-01, 3.68421048e-01, 2.73684216e+00, 1.35263157e+01, + 4.12368431e+01, 8.89473724e+00, 2.63157892e+00, 1.21052635e+00, + 3.70789490e+01, 4.33684196e+01, 5.68421030e+00, 6.52368393e+01, + 1.21605263e+02, 1.48684206e+01, 2.15789485e+00, 6.05263138e+00, + 2.61052628e+01, 1.28947372e+01, 4.84210539e+00, 7.94473648e+01, + 1.29500000e+02, 2.84210529e+01, 7.26315784e+00, 8.81578922e+00, + 9.47368431e+00, 1.97368419e+00, 6.42105246e+00, 5.63684196e+01, + 9.64210510e+01, 1.97631588e+01, 3.86842108e+00, 4.89473677e+00, + 3., 2.13157892e+00, 5.78947353e+00, 7.60526323e+00, + 1.63684216e+01, 1.09473686e+01, 3.57894731e+00, 5.81578970e+00, + 7.35789490e+01, 7.81315765e+01, 1.12631578e+01, 6.46578979e+01, + 7.59736862e+01, 6.23684216e+00, 4.47368431e+00, 1.58684206e+01, + 8.46578979e+01, 3.76578941e+01, 6.57894754e+00, 1.25421051e+02, + 1.21842102e+02, 1.11052628e+01, 7.39473677e+00, 2.76842098e+01, + 2.49736843e+01, 4.89473677e+00, 4.63157892e+00, 9.85000000e+01, + 1.04789474e+02, 1.27368422e+01, 3.47368431e+00, 7.73684216e+00, + 5.47368431e+00, 1.68421054e+00, 4.84210539e+00, 6.31578970e+00, + 1.12631578e+01, 6.76315784e+00, 4.86842108e+00, 1.07631578e+01, + 5.00263176e+01, 3.81052628e+01, 8.86842060e+00, 3.75000000e+01, + 1.72894745e+01, 4.76315784e+00, 7.15789461e+00, 3.89210510e+01, + 9.30263138e+01, 2.43684216e+01, 1.01578951e+01, 1.16868423e+02, + 4.32105255e+01, 2.92105269e+00, 8.47368431e+00, 5.05263176e+01, + 3.46578941e+01, 6.60526323e+00, 1.63947372e+01, 1.06657898e+02, + 4.82105255e+01, 6.84210539e+00, 5.02631569e+00, 1.29210529e+01, + 5.36842108e+00, 1.39473689e+00, 1.33157892e+01, 1.10928574e+02, + 2.50000000e+00, 2.21428561e+00, 4.78571434e+01, 1.02214287e+02, + 6.21428585e+00, 5.85714293e+00, 8.48571396e+01, 8.27857132e+01, + 4.21428585e+00, 9.28571403e-01, 7.54285736e+01, 1.28642853e+02, + 5.92857122e+00, 3.85714293e+00, 5.88571434e+01, 37., + 2.07142854e+00, 1.50000000e+00, 1.57857141e+01, 2.43571434e+01, + 1.43571424e+01, 8.21428585e+00, 3.27857132e+01, 2.92857146e+00, + 1., 8.57142866e-01, 5.50000000e+00, 6.07142878e+00, + 2.78571439e+00, 5., 6.57142878e+00, 9.54285736e+01, 12., + 2.16428566e+01, 7.62142868e+01, 1.16714287e+02, 3.41428566e+01, + 1.63571434e+01, 6.98571396e+01, 9.22857132e+01, 1.79285717e+01, + 5.64285707e+00, 6.17857132e+01, 1.15571426e+02, 52., + 9.71428585e+00, 5.05000000e+01, 3.27857132e+01, 9.35714245e+00, + 3.35714293e+00, 1.86428566e+01, 1.88571434e+01, 2.04285717e+01, + 1.59285717e+01, 2.27857151e+01, 3.92857146e+00, 7.14285731e-01, + 7.85714269e-01, 4.35714293e+00, 3.21428561e+00, 4.92857122e+00, + 7.21428585e+00, 9.28571415e+00, 2.92857151e+01, 2.42857151e+01, + 2.46428566e+01, 3.85714302e+01, 7.92857132e+01, 8.18571396e+01, + 3.16428566e+01, 22., 7.49285736e+01, 2.93571434e+01, + 4.42857122e+00, 2.36428566e+01, 9.82142868e+01, 1.10285713e+02, + 2.46428566e+01, 2.70714283e+01, 3.64285698e+01, 1.20714283e+01, + 2.07142854e+00, 6.64285707e+00, 2.35714283e+01, 2.23571434e+01, + 1.77142849e+01, 1.87857151e+01, 2.28571439e+00, 8.57142866e-01, + 1.35714281e+00, 3.28571439e+00, 4.28571415e+00, 6.28571415e+00, + 6.42857122e+00, 4.42857122e+00, 1.44285717e+01, 2.48571434e+01, + 1.75000000e+01, 2.79285717e+01, 4.47142868e+01, 2.23571434e+01, + 1.22142859e+01, 7.78571415e+00, 6.02857132e+01, 1.35000000e+01, + 4.42857122e+00, 3.77857132e+01, 1.16142860e+02, 3.02857151e+01, + 5.42857122e+00, 2.20714283e+01, 3.69285698e+01, 5.50000000e+00, + 2.78571439e+00, 8.28571415e+00, 2.64285717e+01, 1.34285717e+01, + 6.14285707e+00, 1.49285717e+01, 1.35714281e+00, 8.57142866e-01, + 1.42857146e+00, 2.78571439e+00, 4., 5.71428585e+00, + 2.78571439e+00, 1.28571427e+00, 6., 1.23738464e+02, + 4.45999985e+01, 1.93846154e+00, 6.21538448e+00, 6.77846146e+01, + 2.46769238e+01, 3.78461528e+00, 1.36153851e+01, 8.64923096e+01, + 1.33538465e+01, 2.72307682e+00, 2.58615379e+01, 1.24723076e+02, + 2.09230766e+01, 2.73846149e+00, 1.65230770e+01, 2.24307690e+01, + 1.00153847e+01, 3.66153836e+00, 1.73538456e+01, 3.67076912e+01, + 9.72307682e+00, 6.80000019e+00, 1.07692308e+01, 1.43076925e+01, + 6.38461542e+00, 1.92307687e+00, 1.92307687e+00, 1.18461537e+00, + 4.46153831e+00, 5.26153851e+00, 9.33846188e+00, 6.29076920e+01, + 8.32307720e+00, 3.81538463e+00, 2.24153843e+01, 3.04307690e+01, + 1.42461538e+01, 5., 8.60769196e+01, 1.29969238e+02, + 8.27692318e+00, 3.10769224e+00, 4.79846153e+01, 9.98461533e+01, + 6.35384607e+00, 3.04615378e+00, 3.53076935e+01, 4.80307693e+01, + 6.73846149e+00, 3.30769229e+00, 8.76461563e+01, 116., + 7.70769215e+00, 5.35384607e+00, 1.54769230e+01, 1.83692303e+01, + 6.75384617e+00, 2.03076935e+00, 3.83076930e+00, 3.61538458e+00, + 6.19999981e+00, 5.87692308e+00, 2.87692308e+00, 2.53846145e+00, + 1.15384614e+00, 1.07538462e+01, 3.74307709e+01, 3.49384613e+01, + 1.79846153e+01, 3.83076930e+00, 1.05261536e+02, 9.80769196e+01, + 2.44615388e+00, 7.87692308e+00, 4.05384598e+01, 3.08769226e+01, + 7.95384598e+00, 5.86153841e+00, 1.06861542e+02, 7.88769226e+01, + 3.50769234e+00, 5.13846159e+00, 1.17923080e+02, 9.57846146e+01, + 5.87692308e+00, 5.93846130e+00, 1.51384611e+01, 1.38615389e+01, + 3.59999990e+00, 1.96923077e+00, 2.55076923e+01, 1.48769226e+01, + 5.78461552e+00, 8.46153831e+00, 2.15384626e+00, 1.04615390e+00, + 2.56923079e+00, 1.87846146e+01, 3.79230766e+01, 2.79230766e+01, + 9.90769196e+00, 3.01538467e+00, 7.89076920e+01, 1.56923075e+01, + 1.87692308e+00, 1.38923073e+01, 3.36153831e+01, 1.87692299e+01, + 7.18461561e+00, 1.15230770e+01, 1.20138458e+02, 3.13846149e+01, + 1.79999995e+00, 1.11846151e+01, 1.12076920e+02, 2.76769238e+01, + 2.56923079e+00, 1.45692310e+01, 1.21538458e+01, 8.24615383e+00, + 2.07692313e+00, 3.21538472e+00, 4.77999992e+01, 1.00769234e+01, + 2.04615378e+00, 5.43076944e+00, 1.86451607e+01, 7.43387070e+01, + 1.97258072e+01, 6.09677410e+00, 6.85483885e+00, 4.57903214e+01, + 1.41774197e+01, 7.70967722e+00, 1.45000000e+01, 6.14354820e+01, + 2.21774197e+01, 9.29032230e+00, 1.13870964e+01, 4.16451607e+01, + 1.55483875e+01, 9.22580624e+00, 1.34193544e+01, 2.93709679e+01, + 1.47741938e+01, 1.15967741e+01, 2.25322590e+01, 3.11451607e+01, + 1.19838705e+01, 1.02580643e+01, 1.31290321e+01, 1.60967751e+01, + 9.32258034e+00, 9.50000000e+00, 1.30645161e+01, 1.36129036e+01, + 6.75806475e+00, 6.93548393e+00, 1.49193544e+01, 8.54032288e+01, + 2.90322590e+01, 6.83870983e+00, 9.80645180e+00, 9.56128998e+01, + 3.52258072e+01, 9.72580624e+00, 1.26451616e+01, 1.17983871e+02, + 4.86612892e+01, 9.51612949e+00, 8.75806427e+00, 9.47741928e+01, + 2.91774197e+01, 6.58064508e+00, 1.26774197e+01, 1.00887100e+02, + 3.23709679e+01, 7.62903214e+00, 1.35967741e+01, 7.66128998e+01, + 2.13064518e+01, 9.30645180e+00, 1.24193544e+01, 4.21935501e+01, + 1.49354839e+01, 7.75806475e+00, 1.45483875e+01, 4.89516144e+01, + 1.40483875e+01, 8.59677410e+00, 8.75806427e+00, 3.63548393e+01, + 1.54516125e+01, 8.04838753e+00, 9.77419376e+00, 7.36290359e+01, + 2.85322590e+01, 7.29032278e+00, 1.15000000e+01, 9.26290359e+01, + 2.57903233e+01, 5.75806475e+00, 9.56451607e+00, 1.18354836e+02, + 4.14516144e+01, 4.48387098e+00, 1.36129036e+01, 1.23677422e+02, + 2.99677410e+01, 3.41935492e+00, 8.32258034e+00, 1.14887100e+02, + 3.25161285e+01, 3.16129041e+00, 9.83870983e+00, 1.00016129e+02, + 2.23870964e+01, 3.54838705e+00, 8.82258034e+00, 7.84516144e+01, + 1.83870964e+01, 3.87096763e+00, 6.98387098e+00, 9.96774197e+00, + 9.62903214e+00, 9.08064556e+00, 7.35483885e+00, 1.81612911e+01, + 9.95161247e+00, 7.40322590e+00, 10., 3.65806465e+01, + 1.43387098e+01, 8.91935444e+00, 1.08387098e+01, 6.33548393e+01, + 1.77580643e+01, 5.79032278e+00, 1.23870964e+01, 7.72258072e+01, + 1.52258062e+01, 4.75806475e+00, 8.19354820e+00, 1.03854836e+02, + 2.46612911e+01, 4.04838705e+00, 9.03225803e+00, 9.66935501e+01, + 1.55000000e+01, 3.16129041e+00, 7.27419376e+00, 9.05322571e+01, + 2.47096767e+01, 4.45161295e+00, 3.55675659e+01, 1.52972975e+01, + 4.16216230e+00, 5.32432413e+00, 3.08648643e+01, 8.27027035e+00, + 2.35135126e+00, 4.45945930e+00, 1.37405411e+02, 3.15135136e+01, + 6., 6.70270252e+00, 5.49729729e+01, 1.25675678e+01, + 6.29729748e+00, 2.06216221e+01, 4.04324341e+01, 6.72972965e+00, + 4.81081104e+00, 3.02972965e+01, 1.32918915e+02, 1.54324322e+01, + 6.86486483e+00, 1.39459457e+01, 1.61351357e+01, 3.94594598e+00, + 3.67567563e+00, 1.37837839e+01, 1.95945950e+01, 2.91891885e+00, + 2.62162161e+00, 7.64864874e+00, 3.95675659e+01, 1.17837839e+01, + 2.86486483e+00, 5.64864874e+00, 4.19729729e+01, 1.23783779e+01, + 7.72972965e+00, 7.16216230e+00, 1.53486481e+02, 2.81891899e+01, + 1.51351357e+00, 8.27027035e+00, 8.34054031e+01, 1.03513517e+01, + 3.27027035e+00, 1.98378372e+01, 6.50270233e+01, 8.05405426e+00, + 2.37837839e+00, 2.73783779e+01, 1.53891891e+02, 1.43783779e+01, + 2.51351357e+00, 9.40540504e+00, 2.58108101e+01, 6.32432413e+00, + 4.16216230e+00, 6.59459448e+00, 1.91081085e+01, 3.35135126e+00, + 2.10810804e+00, 8.02702713e+00, 3.59189186e+01, 7.51351357e+00, + 2.48648643e+00, 5.59459448e+00, 4.25945930e+01, 1.07027025e+01, + 3.48648643e+00, 6., 1.53891891e+02, 2.33243237e+01, 2., + 1.03513517e+01, 8.59729767e+01, 9.86486530e+00, 1.08108103e+00, + 1.86486492e+01, 6.72432404e+01, 9.32432461e+00, 2.72972965e+00, + 2.08918915e+01, 1.53891891e+02, 1.50540543e+01, 9.45945919e-01, + 7.51351357e+00, 2.68108101e+01, 6.29729748e+00, 3.59459448e+00, + 3.72972965e+00, 1.84864864e+01, 4.35135126e+00, 2.29729724e+00, + 5.75675678e+00, 2.46756763e+01, 6.51351357e+00, 2.08108115e+00, + 4.70270252e+00, 26., 6.48648643e+00, 2.27027035e+00, + 5.78378391e+00, 1.36270264e+02, 2.50810814e+01, 8.24324322e+00, + 1.33783779e+01, 5.59189186e+01, 6.97297287e+00, 1.94594598e+00, + 1.78918915e+01, 4.49729729e+01, 9.37837791e+00, 6.54054070e+00, + 2.26756763e+01, 1.33378372e+02, 1.25405407e+01, 2.10810804e+00, + 5.81081104e+00, 1.83783779e+01, 5.54054070e+00, 2.56756759e+00, + 2.78378367e+00, 1.39729729e+01, 4.16216230e+00, 2.37837839e+00, + 4.10810804e+00, 1.02692308e+01, 6.55769253e+00, 5.76923084e+00, + 5.69230747e+00, 1.28846149e+01, 2.50769234e+01, 31., + 1.88653851e+01, 1.31538458e+01, 6.98076916e+00, 6.82692289e+00, + 9.71153831e+00, 3.88653831e+01, 9.78653870e+01, 9.27115402e+01, + 3.65769234e+01, 1.27307692e+01, 1.22500000e+01, 9.15384579e+00, + 8., 3.62692299e+01, 1.34730774e+02, 1.39826920e+02, + 4.91538467e+01, 1.71538467e+01, 2.98461533e+01, 2.15769234e+01, + 4.23076916e+00, 2.01346149e+01, 1.12500000e+02, 1.37134613e+02, + 3.88269234e+01, 1.69038467e+01, 1.11730766e+01, 1.17500000e+01, + 1.17115383e+01, 1.49038458e+01, 1.95769234e+01, 3.17500000e+01, + 2.64038467e+01, 2.95000000e+01, 1.55576925e+01, 1.88076916e+01, + 2.08076916e+01, 2.94615383e+01, 5.12500000e+01, 7.03846130e+01, + 5.09230766e+01, 2.62692299e+01, 1.15576925e+01, 1.35961542e+01, + 1.78846149e+01, 3.59423065e+01, 7.39615402e+01, 101., + 6.03461533e+01, 2.18076916e+01, 9.36538506e+00, 9.30769253e+00, + 1.29807692e+01, 3.40384598e+01, 8.02115402e+01, 1.05596153e+02, + 5.85769234e+01, 1.63846149e+01, 8.90384579e+00, 1.03461542e+01, + 1.46346149e+01, 1.49807692e+01, 1.61923084e+01, 2.46538467e+01, + 2.96538467e+01, 3.04038467e+01, 2.05384617e+01, 2.15384617e+01, + 2.50192299e+01, 2.40192299e+01, 3.09230766e+01, 4.79230766e+01, + 4.57307701e+01, 3.64615402e+01, 2.40769234e+01, 2.39615383e+01, + 2.41346149e+01, 2.55769234e+01, 3.75576935e+01, 5.09230766e+01, + 4.44230766e+01, 2.89807701e+01, 1.67115383e+01, 1.73076916e+01, + 2.28269234e+01, 2.78461533e+01, 3.44615402e+01, 4.28461533e+01, + 4.35961533e+01, 1.01346149e+01, 4.57692289e+00, 5.86538458e+00, + 9.88461494e+00, 1.16346149e+01, 1.08846149e+01, 1.85384617e+01, + 2.15961533e+01, 1.82307701e+01, 8.65384579e+00, 1.12884617e+01, + 1.64230766e+01, 1.63653851e+01, 2.30576916e+01, 3.66730766e+01, + 3.33653831e+01, 2.25384617e+01, 1.13076925e+01, 1.36346149e+01, + 1.95192299e+01, 1.93846149e+01, 2.55576916e+01, 3.85576935e+01, + 3.39615402e+01, 1.79423084e+01, 9.94230747e+00, 1.26346149e+01, + 2.02884617e+01, 17., 1.68653851e+01, 3.34807701e+01, + 4.09230766e+01, 1.65925922e+01, 1.75185184e+01, 6.61111116e+00, + 3.09259248e+00, 4.72222233e+00, 1.04259262e+01, 1.55000000e+01, + 1.13333330e+01, 2.56111107e+01, 2.46296291e+01, 1.36296301e+01, + 7.57407427e+00, 8.68518543e+00, 1.40370369e+01, 2.04444447e+01, + 1.79814816e+01, 2.88703709e+01, 2.47222214e+01, 1.56111107e+01, + 1.97592602e+01, 1.05925922e+01, 1.45555553e+01, 2.29074078e+01, + 2.67777786e+01, 2.45555553e+01, 1.41851854e+01, 1.73703709e+01, + 8.15740738e+01, 2.12037029e+01, 6.96296310e+00, 1.43888893e+01, + 3.93703690e+01, 24., 2.54259262e+01, 1.30185184e+01, + 5.98148155e+00, 6.81481504e+00, 1.18888893e+01, 1.79444447e+01, + 1.56111107e+01, 4.14814796e+01, 3.61296310e+01, 2.00185184e+01, + 1.83703709e+01, 1.27407408e+01, 2.00185184e+01, 2.85370369e+01, + 3.10555553e+01, 4.14259262e+01, 2.66296291e+01, 2.84074078e+01, + 1.04055557e+02, 3.39629631e+01, 1.34074078e+01, 2.94629631e+01, + 6.17037048e+01, 3.41296310e+01, 1.18148146e+01, 2.89444447e+01, + 1.18111115e+02, 2.84074078e+01, 6.59259272e+00, 2.15555553e+01, + 1.12907410e+02, 25., 2.61851845e+01, 1.63148155e+01, + 9.55555534e+00, 6.35185194e+00, 1.29074078e+01, 2.02407398e+01, + 1.94259262e+01, 4.11296310e+01, 3.36851845e+01, 2.67962971e+01, + 8.73888855e+01, 2.73703709e+01, 1.41666670e+01, 2.50185184e+01, + 4.18148155e+01, 4.58333321e+01, 1.94814816e+01, 3.58888893e+01, + 1.29129623e+02, 4.58518524e+01, 5.75925922e+00, 1.92777786e+01, + 1.11962959e+02, 4.65555573e+01, 1.91481476e+01, 2.46481476e+01, + 9.14074097e+01, 1.60185184e+01, 8.83333302e+00, 2.17037029e+01, + 1.11981483e+02, 2.15370369e+01, 2.01481476e+01, 1.48888893e+01, + 3.77407417e+01, 9.37036991e+00, 6.87037039e+00, 1.36296301e+01, + 2.26666660e+01, 2.67777786e+01, 1.67592602e+01, 2.73148155e+01, + 1.13962959e+02, 3.79259262e+01, 1.05370369e+01, 1.65370369e+01, + 7.24629593e+01, 4.21296310e+01, 1.85740738e+01, 2.65000000e+01, + 9.40185165e+01, 2.13888893e+01, 7.20370388e+00, 1.80370369e+01, + 1.07740738e+02, 3.34444427e+01, 1.53148146e+01, 2.76111107e+01, + 6.56481476e+01, 9.46296310e+00, 8.81481457e+00, 2.44074078e+01, + 9.60925903e+01, 3.89189196e+00, 1.64864862e+00, 1.54054058e+00, + 1.07027025e+01, 5.64864874e+00, 2.27027035e+00, 2.35135126e+00, + 6.18918896e+00, 1.22972975e+01, 2.97297287e+00, 4.54054070e+00, + 1.83783779e+01, 1.50810814e+01, 6.97297287e+00, 6., 21., + 3.62162170e+01, 3.56756759e+00, 7.37837839e+00, 2.88378372e+01, + 1.41081085e+01, 3.83783793e+00, 3.22432442e+01, 1.06486488e+02, + 2.87567558e+01, 7.91891909e+00, 1.38108110e+01, 2.09459457e+01, + 1.00270271e+01, 1.27567568e+01, 7.90270233e+01, 9.68918915e+01, + 6.70270252e+00, 2.72972965e+00, 2.08108115e+00, 5.05405426e+00, + 5.18918896e+00, 2.08108115e+00, 2.59459448e+00, 5.83783770e+00, + 7.53783798e+01, 3.40540552e+00, 4.29729748e+00, 3.94324341e+01, + 3.84054070e+01, 6.08108091e+00, 4.64864874e+00, 6.98378372e+01, + 1.21270271e+02, 6.54054070e+00, 8.10810852e+00, 3.78648643e+01, + 2.30810814e+01, 5.24324322e+00, 2.95405407e+01, 1.37324326e+02, + 2.39729729e+01, 1.43513517e+01, 1.66216221e+01, 2.43243237e+01, + 1.57297297e+01, 1.54054050e+01, 5.14054070e+01, 6.93243256e+01, + 6.72972965e+00, 2.18918920e+00, 2., 1.01891890e+01, + 9.97297287e+00, 2.29729724e+00, 1.81081080e+00, 5.35135126e+00, + 1.30729736e+02, 1.59189186e+01, 2.10810804e+00, 3.08108101e+01, + 5.10270271e+01, 8.13513470e+00, 2.40540552e+00, 7.93513489e+01, + 1.29783783e+02, 2.67567558e+01, 7.24324322e+00, 2.40810814e+01, + 4.04864883e+01, 1.46486483e+01, 1.05405407e+01, 1.01513512e+02, + 1.65945950e+01, 1.17027025e+01, 1.03783779e+01, 1.50270271e+01, + 2.03243237e+01, 1.55135136e+01, 1.05675678e+01, 1.93783779e+01, + 5.32432413e+00, 1.67567563e+00, 1.56756759e+00, 1.14864864e+01, + 1.28918915e+01, 5.32432413e+00, 1.18918920e+00, 4.70270252e+00, + 1.17675674e+02, 5.65135117e+01, 2.97297287e+00, 1.71351357e+01, + 4.27567558e+01, 1.62702694e+01, 3.51351357e+00, 3.55675659e+01, + 1.20216217e+02, 8.70810776e+01, 1.74864864e+01, 1.21351347e+01, + 4.08648643e+01, 3.45405388e+01, 1.28378382e+01, 3.07027035e+01, + 1.21081085e+01, 2.01081085e+01, 2.94324322e+01, 2.47837830e+01, + 1.62432442e+01, 1.71621628e+01, 1.68378372e+01, 1.90810814e+01, + 1.12613640e+01, 9.59090900e+00, 4.58409081e+01, 4.83750000e+01, + 7.51136351e+00, 9.84090900e+00, 9.19886398e+01, 8.66818161e+01, + 7.34090900e+00, 1.15340910e+01, 1.08954544e+02, 1.04647728e+02, + 1.07272730e+01, 9.85227299e+00, 8.70681839e+01, 8.59886398e+01, + 4.19318199e+00, 9.51136398e+00, 1.25727272e+02, 1.17511360e+02, + 9.50000000e+00, 7.34090900e+00, 6.06704559e+01, 5.39886360e+01, + 3.03409100e+00, 7.38636351e+00, 1.01170456e+02, 9.67045441e+01, + 9.15909100e+00, 7.76136351e+00, 4.61477280e+01, 3.34545441e+01, + 7.85227251e+00, 8.80681801e+00, 1.15284088e+02, 1.19613640e+02, + 1.81477280e+01, 5.80681801e+00, 4.28068199e+01, 4.65795441e+01, + 5.65909100e+00, 1.13522730e+01, 1.18204544e+02, 1.17965912e+02, + 1.51477270e+01, 7.63636351e+00, 6.84659119e+01, 6.34772720e+01, + 5.35227251e+00, 1.03522730e+01, 6.99772720e+01, 6.36363640e+01, + 8.22727299e+00, 8.37500000e+00, 7.02954559e+01, 5.80909081e+01, + 4.86363649e+00, 6.07954550e+00, 2.62045460e+01, 2.14545460e+01, + 7.09090900e+00, 8.04545498e+00, 4.13863640e+01, 2.90454540e+01, + 7.05681801e+00, 6.10227251e+00, 3.05000000e+01, 4.25681801e+01, + 1.08636360e+01, 5.93181801e+00, 3.75227280e+01, 3.98977280e+01, + 7.96590900e+00, 7.21590900e+00, 11., 1.42500000e+01, + 1.03636360e+01, 8.96590900e+00, 3.36022720e+01, 3.14545460e+01, + 6.81818199e+00, 6.53409100e+00, 9.52272701e+00, 1.04204550e+01, + 1.09772730e+01, 1.15681820e+01, 2.03409100e+01, 1.58295450e+01, + 5.13636351e+00, 5.50000000e+00, 6.96590900e+00, 7.86363649e+00, + 8.05681801e+00, 8.77272701e+00, 1.16704550e+01, 8.38636398e+00, + 3.96590900e+00, 3.57954550e+00, 4.27272749e+00, 4.88636351e+00, + 3.80681825e+00, 3.54545450e+00, 7.50000000e+00, 9.47727299e+00, + 4.32954550e+00, 4.11363649e+00, 5.21590900e+00, 5.59090900e+00, + 5.31818199e+00, 5.10227251e+00, 5.55681801e+00, 5.07954550e+00, + 3.59090900e+00, 3.84090900e+00, 5.21590900e+00, 5.61363649e+00, + 6.02272749e+00, 5.44318199e+00, 4.59090900e+00, 3.57954550e+00, + 2.77272725e+00, 2.61363626e+00, 3.45454550e+00, 4.64772749e+00, + 5.11363649e+00, 4.35227251e+00, 3.67045450e+00, 3.30681825e+00, + 8.89473724e+00, 4.89649124e+01, 4.79298248e+01, 8.08771896e+00, + 5.38596487e+00, 2.27894745e+01, 2.55964909e+01, 1.61754379e+01, + 1.01754389e+01, 5.41403503e+01, 5.18947372e+01, 8.03508759e+00, + 1.08070173e+01, 2.24035091e+01, 2.68070183e+01, 2.29473686e+01, + 1.04561405e+01, 2.28596497e+01, 2.50526314e+01, 9.59649086e+00, + 1.51228065e+01, 2.16315784e+01, 2.68596497e+01, 2.74561405e+01, + 1.01929827e+01, 7.07017565e+00, 9.73684216e+00, 8.29824543e+00, + 1.34035091e+01, 1.87192974e+01, 2.25964909e+01, 2.11754379e+01, + 1.20701752e+01, 3.95789490e+01, 3.65789490e+01, 1.53157892e+01, + 1.16315794e+01, 4.79473686e+01, 4.81754379e+01, 1.35087719e+01, + 1.09122810e+01, 8.49298248e+01, 8.57719269e+01, 1.01228065e+01, + 5.64912271e+00, 7.14561386e+01, 7.50175476e+01, 1.54385967e+01, + 7.45614052e+00, 1.01631577e+02, 1.02807014e+02, 6.05263138e+00, + 7.77192974e+00, 6.88245621e+01, 7.37017517e+01, 1.65087719e+01, + 8.33333302e+00, 7.27894745e+01, 7.93333359e+01, 9.61403465e+00, + 1.12631578e+01, 3.40701752e+01, 5.19298248e+01, 2.24210529e+01, + 9.56140327e+00, 3.08070183e+01, 2.13684216e+01, 5.54385948e+00, + 1.31578951e+01, 8.14912262e+01, 6.75087738e+01, 1.24385967e+01, + 1.29122810e+01, 6.52280731e+01, 4.32456131e+01, 4.15789461e+00, + 6.47368431e+00, 8.52807007e+01, 8.12982483e+01, 1.31929827e+01, + 8.08771896e+00, 7.69298248e+01, 5.65087738e+01, 2.08771920e+00, + 3.10526323e+00, 8.14912262e+01, 8.69298248e+01, 1.37894735e+01, + 8.03508759e+00, 7.57017517e+01, 6.61228104e+01, 3.38596487e+00, + 4.40350866e+00, 6.88947372e+01, 8.36666641e+01, 1.81929817e+01, + 8.68421078e+00, 6.50877190e+00, 4.59649134e+00, 4.42105246e+00, + 9.92982483e+00, 2.88947372e+01, 3.23508759e+01, 1.58070173e+01, + 9.78947353e+00, 2.11754379e+01, 1.14912281e+01, 5.43859673e+00, + 1.28421049e+01, 7.57719269e+01, 6.71929855e+01, 1.80175438e+01, + 1.26666670e+01, 5.40350876e+01, 2.67368412e+01, 4.21052647e+00, + 1.01578951e+01, 8.92105255e+01, 7.49649124e+01, 1.41929827e+01, + 1.35438595e+01, 5.50175438e+01, 3.00701752e+01, 4.84210539e+00, + 6.28070164e+00, 5.87368431e+01, 5.79649124e+01, 1.27192984e+01, + 8.88888931e+00, 1.05000000e+01, 1.93148155e+01, 1.21666670e+01, + 1.09629631e+01, 1.01666670e+01, 7.55555534e+00, 8.27777767e+00, + 1.04444447e+01, 1.20370369e+01, 2.11666660e+01, 1.31851854e+01, + 1.27222223e+01, 1.42037039e+01, 1.28888893e+01, 1.05370369e+01, + 8.98148155e+00, 8.90740776e+00, 1.84629631e+01, 1.39259262e+01, + 1.44074078e+01, 1.85555553e+01, 1.64814816e+01, 1.12037039e+01, + 8.64814854e+00, 7.16666651e+00, 1.62777786e+01, 1.16111107e+01, + 9.01851845e+00, 1.15370369e+01, 1.20925922e+01, 1.02222223e+01, + 7.77777767e+00, 2.22777786e+01, 9.04814835e+01, 2.00555553e+01, + 1.04444447e+01, 2.31111107e+01, 6.20185204e+01, 1.19444447e+01, + 1.00740738e+01, 2.77962971e+01, 1.04833336e+02, 27., + 1.00740738e+01, 2.18703709e+01, 7.49444427e+01, 1.59814816e+01, + 8.01851845e+00, 2.23518524e+01, 1.02111115e+02, 3.24259262e+01, + 1.23703699e+01, 2.05370369e+01, 7.02962952e+01, 1.61296291e+01, + 9.48148155e+00, 1.94259262e+01, 8.09259262e+01, 2.79074078e+01, + 9.24074078e+00, 1.45925922e+01, 49., 1.93148155e+01, + 3.57407403e+00, 1.51851854e+01, 1.02333336e+02, 2.37407398e+01, + 6.81481504e+00, 1.78888893e+01, 8.54444427e+01, 1.29074078e+01, + 3.90740752e+00, 1.71296291e+01, 1.16425926e+02, 2.28518524e+01, + 4.53703690e+00, 1.93703709e+01, 1.08388885e+02, 1.76666660e+01, + 4.61111116e+00, 1.60740738e+01, 1.18537041e+02, 2.42222214e+01, + 5.35185194e+00, 1.92777786e+01, 1.07907410e+02, 2.12962971e+01, + 8.61111069e+00, 1.59444447e+01, 9.55000000e+01, 1.90925922e+01, + 7.25925922e+00, 1.68333340e+01, 8.56851883e+01, 2.47962971e+01, + 4.03703690e+00, 8.79629612e+00, 5.41111107e+01, 1.58148146e+01, + 7.46296310e+00, 1.78333340e+01, 1.04555557e+02, 2.19814816e+01, + 5.14814806e+00, 1.21481485e+01, 7.20925903e+01, 1.56666670e+01, + 7.14814806e+00, 2.37592602e+01, 1.17277779e+02, 2.28888893e+01, + 5.68518496e+00, 1.46111107e+01, 7.22407379e+01, 1.39074078e+01, + 7.66666651e+00, 2.36851845e+01, 1.13944443e+02, 2.17962971e+01, + 7.48148155e+00, 1.76851845e+01, 5.33148155e+01, 1.06296301e+01, + 6.88888884e+00, 2.06111107e+01, 9.33888855e+01, 1.61481476e+01, + 5.19534874e+01, 4.06976738e+01, 6.11627913e+00, 5.65116262e+00, + 1.63488369e+01, 2.65116272e+01, 6.41860485e+00, 6.41860485e+00, + 1.33558136e+02, 1.10372093e+02, 9.86046505e+00, 1.51860466e+01, + 4.58604660e+01, 4.58372078e+01, 9.04651165e+00, 2.46511631e+01, + 3.75348854e+01, 4.67209320e+01, 1.90930233e+01, 2.16046505e+01, + 3.60465126e+01, 3.80930214e+01, 1.75116272e+01, 1.13488369e+01, + 9.34883690e+00, 1.01860466e+01, 1.33488369e+01, 2.24883728e+01, + 2.38139534e+01, 1.43488369e+01, 1.40232553e+01, 1.22558136e+01, + 1.76279068e+01, 2.04651165e+01, 3.93023252e+00, 4.27906990e+00, + 1.43720932e+01, 2.71627903e+01, 1.11627903e+01, 5.51162767e+00, + 9.37674408e+01, 1.45744186e+02, 3.54651146e+01, 6.76744175e+00, + 3.30232544e+01, 6.57441864e+01, 2.21395340e+01, 5.79069757e+00, + 3.21627922e+01, 1.34837204e+02, 1.22906975e+02, 2.45348835e+01, + 2.73255806e+01, 7.87674408e+01, 5.38139534e+01, 8.74418640e+00, + 7.74418592e+00, 27., 1.14418602e+02, 9.46046524e+01, + 1.64883728e+01, 2.28139534e+01, 4.72325592e+01, 2.11395340e+01, + 4.27906990e+00, 3.67441869e+00, 3.30232549e+00, 2.20930243e+00, + 5.11627913e+00, 1.08837214e+01, 7.18604660e+00, 4.48837233e+00, + 5.48837233e+00, 4.47674408e+01, 1.89069767e+01, 3.95348835e+00, + 1.44883718e+01, 3.69534874e+01, 2.40232563e+01, 5.48837233e+00, + 4.79069757e+00, 8.76744156e+01, 1.12348839e+02, 1.35581398e+01, + 7.39534903e+00, 3.25813942e+01, 4.04651146e+01, 8.55813980e+00, + 3.02325583e+00, 2.13488369e+01, 1.13511627e+02, 5.53488388e+01, + 4., 1.57906981e+01, 4.26976738e+01, 1.44418602e+01, + 4.65116292e-01, 1.30232561e+00, 6.04651153e-01, 2.09302321e-01, + 3.25581402e-01, 3.72093034e+00, 2.18604660e+00, 5.11627913e-01, + 7.20930219e-01, 6.51162803e-01, 7.67441869e-01, 7.20930219e-01, + 9.30232584e-01, 4.46511650e+00, 4.67441845e+00, 1.23255813e+00, + 6.97674394e-01, 5.34883738e-01, 8.83720934e-01, 1.02325583e+00, + 1.04651165e+00, 4.74418592e+00, 7.23255825e+00, 1.58139539e+00, + 6.74418628e-01, 5.34883738e-01, 1.44186044e+00, 8.13953459e-01, + 6.27906978e-01, 3.90697670e+00, 8.23255825e+00, 2.37209296e+00, + 4.43636370e+00, 4.46545448e+01, 5.56909103e+01, 1.43454542e+01, + 7.67272711e+00, 6.78000031e+01, 7.08727264e+01, 7.23636341e+00, + 3.59999990e+00, 1.15418182e+02, 1.27618179e+02, 1.09272728e+01, + 5.34545469e+00, 9.30181808e+01, 1.09327271e+02, 6.41818190e+00, + 3.05454540e+00, 1.20800003e+02, 1.40636368e+02, 2.10727272e+01, + 4.85454559e+00, 7.59090881e+01, 1.15490906e+02, 8.39999962e+00, + 5.45454550e+00, 9.89090881e+01, 1.34745453e+02, 38., + 7.65454531e+00, 6.17999992e+01, 9.55272751e+01, 1.20727272e+01, + 7.27272749e+00, 10., 1.14909086e+01, 1.07818184e+01, + 8.45454502e+00, 2.31454544e+01, 3.51090927e+01, 1.08000002e+01, + 8.36363602e+00, 1.99454536e+01, 2.16181812e+01, 1.31636362e+01, + 9., 5.29454536e+01, 7.61818161e+01, 1.34363632e+01, + 4.05454540e+00, 2.37090912e+01, 4.10363655e+01, 1.34727268e+01, + 9.74545479e+00, 7.83272705e+01, 1.13745453e+02, 9.60000038e+00, + 6.70909071e+00, 3.63454552e+01, 5.76545448e+01, 1.32727270e+01, + 8.65454578e+00, 7.22545471e+01, 1.02490906e+02, 1.08727274e+01, + 6.56363630e+00, 6.83636379e+00, 7.38181829e+00, 7.81818199e+00, + 8.80000019e+00, 1.23454542e+01, 9.92727280e+00, 6.58181810e+00, + 9.45454502e+00, 9.78181839e+00, 1.09454546e+01, 1.40909090e+01, + 12., 1.26181822e+01, 1.30181818e+01, 1.04363632e+01, + 8.23636341e+00, 1.18000002e+01, 1.34181814e+01, 1.47454548e+01, + 1.18363638e+01, 1.63272724e+01, 1.63818188e+01, 1.03272724e+01, + 4.74545431e+00, 7.90909100e+00, 1.01999998e+01, 1.15636368e+01, + 1.05272732e+01, 2.37636356e+01, 2.24363632e+01, 7.69090891e+00, + 2.56363630e+00, 2.49090910e+00, 2.58181810e+00, 2.63636374e+00, + 2.34545445e+00, 2.20000005e+00, 1.52727270e+00, 1.36363637e+00, + 3.59999990e+00, 2.76363635e+00, 3.25454545e+00, 4.92727280e+00, + 4.32727289e+00, 3.07272720e+00, 2.45454550e+00, 2.43636370e+00, + 3.81818175e+00, 2.94545460e+00, 3.16363645e+00, 4.56363630e+00, + 3.54545450e+00, 2.29090905e+00, 2.65454555e+00, 3.50909090e+00, + 2.18181825e+00, 2.12727284e+00, 2.79999995e+00, 2.94545460e+00, + 2.79999995e+00, 2.79999995e+00, 3.18181825e+00, 2.43636370e+00, + 7.77192974e+00, 8.15789509e+00, 7.54385948e+00, 7.70175457e+00, + 6.89473677e+00, 1.09298248e+01, 1.24035091e+01, 6.12280703e+00, + 9.24561405e+00, 8.59649086e+00, 1.54912281e+01, 4.25789490e+01, + 1.75438595e+01, 8.56140327e+00, 1.21228065e+01, 1.12456141e+01, + 3.98245621e+00, 5.52631569e+00, 4.70175438e+01, 1.18210526e+02, + 1.88070183e+01, 3.10526323e+00, 2.59649134e+00, 5.33333349e+00, + 1.17543864e+00, 3.03508782e+00, 7.89824524e+01, 1.09982452e+02, + 4.98245621e+00, 9.12280679e-01, 2.96491218e+00, 3.31578946e+00, + 8.61403465e+00, 8.78947353e+00, 1.02807016e+01, 2.99122810e+01, + 1.98596497e+01, 9.64912319e+00, 7.24561405e+00, 5.61403513e+00, + 4.84210539e+00, 5.78947353e+00, 2.45263157e+01, 1.32210526e+02, + 6.01578941e+01, 4.73684216e+00, 2.82456136e+00, 3.94736838e+00, + 2.77192974e+00, 5.50877190e+00, 5.25964928e+01, 1.37052628e+02, + 3.13157902e+01, 2.22807026e+00, 2.70175433e+00, 6.87719297e+00, + 4.61403513e+00, 3.08771920e+00, 6.39824562e+01, 1.01526314e+02, + 6.68421030e+00, 1.92982459e+00, 8.75438595e+00, 1.98947372e+01, + 6.33333349e+00, 6.54385948e+00, 8.75438595e+00, 6.86842117e+01, + 6.06842117e+01, 7.43859673e+00, 3.40350866e+00, 3.35087729e+00, + 3.61403513e+00, 2.80701756e+00, 1.01754389e+01, 1.38771927e+02, + 1.14017548e+02, 2.78947377e+00, 1.71929824e+00, 5.71929836e+00, + 1.22456141e+01, 6.92982435e+00, 2.13684216e+01, 1.22385963e+02, + 3.37719307e+01, 1.75438595e+00, 3.82456136e+00, 2.14561405e+01, + 2.23684216e+01, 2.54385972e+00, 2.14561405e+01, 4.02105255e+01, + 3.26315784e+00, 9.64912295e-01, 9.28070164e+00, 7.89824524e+01, + 4.05263138e+00, 3.19298244e+00, 3.64912271e+00, 6.33508759e+01, + 9.73684235e+01, 5.96491241e+00, 1.91228068e+00, 2.07017541e+00, + 5.07017565e+00, 1.77192986e+00, 3.29824567e+00, 1.17614037e+02, + 1.20315788e+02, 3.21052623e+00, 1.10526311e+00, 5.82456160e+00, + 4.11228065e+01, 3.92982459e+00, 5.29824543e+00, 4.57017555e+01, + 2.12631588e+01, 9.12280679e-01, 1.54385960e+00, 4.00350876e+01, + 5.00350876e+01, 1.89473689e+00, 3.52631569e+00, 1.86140347e+01, + 5.49122810e+00, 8.59649122e-01, 5.82456160e+00, 7.69649124e+01, + 7.10843372e+00, 8.78313255e+00, 1.03493977e+01, 8.61445808e+00, + 1.18795185e+01, 1.05301208e+01, 7.09638548e+00, 6.54216862e+00, + 1.78554211e+01, 2.33614464e+01, 2.48554211e+01, 2.19638557e+01, + 4.11566277e+01, 5.33012047e+01, 2.57108440e+01, 1.67710838e+01, + 9.21686745e+00, 1.31445780e+01, 1.35662651e+01, 1.30120478e+01, + 1.13759033e+02, 1.81963852e+02, 4.85662651e+01, 9.59036160e+00, + 5.91566277e+00, 1.03012047e+01, 3.39759040e+00, 3.07228923e+00, + 8.58192749e+01, 1.86457825e+02, 8.86024094e+01, 5.66265059e+00, + 1.07831326e+01, 1.25542173e+01, 1.26867466e+01, 1.07590361e+01, + 1.56024094e+01, 1.41566267e+01, 8.92771053e+00, 7.91566277e+00, + 27., 3.54096375e+01, 4.06987953e+01, 3.09518070e+01, + 3.70843391e+01, 3.76746979e+01, 3.03734932e+01, 2.36144581e+01, + 2.47469883e+01, 3.51807213e+01, 3.70602417e+01, 3.03614464e+01, + 5.20361443e+01, 1.05156624e+02, 4.34698792e+01, 2.32891560e+01, + 8.08433723e+00, 1.24457827e+01, 1.65903606e+01, 1.54578314e+01, + 5.63012047e+01, 1.81746994e+02, 1.06048195e+02, 1.29277105e+01, + 9.63855457e+00, 12., 1.04096384e+01, 8.13253021e+00, + 1.20722895e+01, 1.32289152e+01, 8.61445808e+00, 6.09638548e+00, + 26., 3.26506042e+01, 3.16746979e+01, 2.29518070e+01, + 3.27469864e+01, 3.64939766e+01, 2.73734932e+01, 2.04698792e+01, + 2.82048187e+01, 3.54216881e+01, 3.30843391e+01, 2.83373489e+01, + 3.63614464e+01, 4.47469864e+01, 2.89518070e+01, 2.25542164e+01, + 1.55301208e+01, 1.93734932e+01, 2.52168674e+01, 2.36626511e+01, + 3.41204834e+01, 6.07590370e+01, 3.30240974e+01, 1.88192768e+01, + 2.44578314e+00, 3.31325293e+00, 3.04819274e+00, 2.37349391e+00, + 3.66265059e+00, 3.80722880e+00, 2.20481920e+00, 1.54216862e+00, + 9.28915691e+00, 1.12168674e+01, 1.08192768e+01, 9.25301170e+00, + 1.29397593e+01, 1.29518070e+01, 7.84337330e+00, 7.44578314e+00, + 9.91566277e+00, 1.27228918e+01, 1.21204815e+01, 1.20120478e+01, + 1.39518070e+01, 1.44698792e+01, 1.01325302e+01, 9.92771053e+00, + 7.89156628e+00, 7.65060234e+00, 8.95180702e+00, 1.24337349e+01, + 1.07349396e+01, 1.30963860e+01, 9.92771053e+00, 1.17108431e+01, + 1.80555558e+00, 2.52777767e+00, 9.41666698e+00, 2.31388893e+01, + 1.60833340e+01, 8.11111069e+00, 4.72222233e+00, 2.77777767e+00, + 3.08333325e+00, 5.11111116e+00, 2.77222214e+01, 6.82222214e+01, + 3.04444447e+01, 6.75000000e+00, 2.91666675e+00, 2.75000000e+00, + 8.13888931e+00, 9.61111069e+00, 4.29444427e+01, 9.40833359e+01, + 6.36388893e+01, 6.44444466e+00, 2.86111116e+00, 3.63888884e+00, + 8.80555534e+00, 7.52777767e+00, 2.20833340e+01, 7.95000000e+01, + 7.01944427e+01, 7.33333349e+00, 4.63888884e+00, 6.55555534e+00, + 5.55555582e-01, 1.61111116e+00, 1.08055553e+01, 4.24166679e+01, + 4.54722214e+01, 1.46388893e+01, 4.41666651e+00, 1.58333337e+00, + 6.61111116e+00, 9.61111069e+00, 2.85555553e+01, 9.35000000e+01, + 7.83611145e+01, 1.98333340e+01, 7.30555534e+00, 3.72222233e+00, + 3.73888893e+01, 3.95277786e+01, 4.71666679e+01, 7.11666641e+01, + 98., 4.55000000e+01, 1.48055553e+01, 1.17777777e+01, + 5.41666679e+01, 2.75555553e+01, 1.34444447e+01, 34., + 9.65833359e+01, 5.30833321e+01, 1.70277786e+01, 2.21666660e+01, + 4.72222209e-01, 1.11111116e+00, 7.86111116e+00, 4.53333321e+01, + 6.54166641e+01, 2.69444447e+01, 3.72222233e+00, 6.11111104e-01, + 1.04166670e+01, 1.90277786e+01, 2.44444447e+01, 6.68055573e+01, + 9.05555573e+01, 4.87777786e+01, 2.26944447e+01, 6.97222233e+00, + 4.47222214e+01, 6.11944427e+01, 4.72777786e+01, 3.98055573e+01, + 8.68611145e+01, 8.29166641e+01, 5.23888893e+01, 1.85833340e+01, + 6.93055573e+01, 6.47777786e+01, 2.05555553e+01, 1.80833340e+01, + 9.71944427e+01, 8.96666641e+01, 2.65555553e+01, 1.73888893e+01, + 5.27777791e-01, 5.55555582e-01, 2., 1.38888893e+01, + 4.33055573e+01, 4.20555573e+01, 9.94444466e+00, 9.72222209e-01, + 2.11111116e+00, 4.19444466e+00, 7.44444466e+00, 1.83611107e+01, + 5.43888893e+01, 6.86111145e+01, 2.88611107e+01, 5.55555534e+00, + 1.26666670e+01, 2.28611107e+01, 1.85555553e+01, 1.95000000e+01, + 3.22222214e+01, 5.55555573e+01, 4.71111107e+01, 1.78333340e+01, + 1.73333340e+01, 3.72500000e+01, 1.14166670e+01, 9.19444466e+00, + 4.71388893e+01, 86., 2.43888893e+01, 9.27777767e+00, + 6.20512819e+00, 5.07692289e+00, 1.39743586e+01, 9.53846169e+00, + 3.97435904e+00, 1.41025639e+01, 5.61794853e+01, 2.99230766e+01, + 3.84615374e+00, 1.40769234e+01, 2.03333340e+01, 4.71794891e+00, + 2.28205132e+00, 5.52051277e+01, 8.18205109e+01, 8.23076916e+00, + 5.61538458e+00, 1.98461533e+01, 2.26410255e+01, 2.97435904e+00, + 3.43589735e+00, 7.97435913e+01, 7.11282043e+01, 6.61538458e+00, + 5.28205109e+00, 2.02307701e+01, 1.26410255e+01, 2.28205132e+00, + 5.35897446e+00, 3.23589745e+01, 1.79230766e+01, 6.41025639e+00, + 1.69743595e+01, 1.54871798e+01, 1.98205128e+01, 1.57179489e+01, + 9.17948723e+00, 1.34102564e+01, 2.93589745e+01, 2.63333340e+01, + 2.04615383e+01, 2.72820511e+01, 2.00769234e+01, 8.20512867e+00, + 5.53846169e+00, 3.21282043e+01, 6.03846169e+01, 2.89743595e+01, + 2.26666660e+01, 3.64615402e+01, 1.70256405e+01, 7.43589735e+00, + 21., 1.03410255e+02, 82., 2.09487171e+01, 1.46923075e+01, + 3.72564087e+01, 1.48205128e+01, 4.51282072e+00, 4.22051277e+01, + 106., 5.96923065e+01, 1.11025639e+01, 1.59743586e+01, + 5.71794853e+01, 4.24358978e+01, 1.01794872e+01, 1.06153851e+01, + 2.23589745e+01, 1.60256405e+01, 7.94871807e+00, 2.60256405e+01, + 5.14615402e+01, 4.54871788e+01, 1.86923084e+01, 9.38461494e+00, + 1.14871798e+01, 2.09743595e+01, 2.16153851e+01, 3.49230766e+01, + 4.23589745e+01, 5.84871788e+01, 4.19487190e+01, 24., + 2.67948723e+01, 2.06666660e+01, 2.30256405e+01, 3.20512810e+01, + 5.03076935e+01, 6.13333321e+01, 1.99743595e+01, 4.17179489e+01, + 8.40512848e+01, 5.66923065e+01, 1.59487181e+01, 4.35897446e+00, + 6.49230804e+01, 7.24615402e+01, 4.30769253e+00, 4.58974361e+00, + 3.97179489e+01, 3.46410255e+01, 2.92307687e+00, 5.48717928e+00, + 7.04871826e+01, 1.04179489e+02, 1.60256405e+01, 3.84615374e+00, + 2.67435894e+01, 4.62820511e+01, 1.03076925e+01, 7.41025639e+00, + 3.51282043e+01, 1.10025642e+02, 7.43076935e+01, 1.14871798e+01, + 2.12564106e+01, 5.47435913e+01, 2.57179489e+01, 1.08461542e+01, + 7.20256424e+01, 1.07666664e+02, 4.55384598e+01, 9.51282024e+00, + 3.09487171e+01, 5.56153831e+01, 1.91794872e+01, 1.09859157e+00, + 1.35211265e+00, 3.81690145e+00, 6.11267614e+00, 3.14084506e+00, + 3.21126771e+00, 2.88732386e+00, 1.26760566e+00, 2.21126771e+00, + 2.87323952e+00, 5.50704241e+00, 5.66197205e+00, 3.54929566e+00, + 3.32394361e+00, 4.87323952e+00, 2.05633807e+00, 3.90140843e+00, + 2.91549301e+00, 7.09859133e+00, 4.85915470e+00, 3.05633807e+00, + 2.43661976e+00, 2.67605639e+00, 2.70422530e+00, 1.64788735e+00, + 2.76056337e+00, 6.74647903e+00, 5.19718313e+00, 3.05633807e+00, + 1.60563385e+00, 1.35211265e+00, 1.42253518e+00, 2.88732386e+00, + 4.04225349e+00, 1.27464790e+01, 2.21549301e+01, 1.09577465e+01, + 7.08450699e+00, 6.81690121e+00, 2.77464795e+00, 5.26760578e+00, + 6.52112675e+00, 2.17464790e+01, 2.92957745e+01, 1.17183094e+01, + 8., 8.60563374e+00, 5.46478891e+00, 6.49295759e+00, + 8.19718266e+00, 3.29718323e+01, 3.28450699e+01, 1.03521128e+01, + 5.15492964e+00, 6.45070410e+00, 5.83098602e+00, 5.01408434e+00, + 9.59154892e+00, 3.40140839e+01, 2.88732395e+01, 9.43661976e+00, + 2.91549301e+00, 8.23943615e+00, 6.04225349e+00, 3.98591542e+00, + 3.98591542e+00, 1.54084511e+01, 3.33802834e+01, 1.60985909e+01, + 6.01408434e+00, 3.70422530e+00, 3.84507036e+00, 4.87323952e+00, + 6.40845060e+00, 3.13380280e+01, 5.07605629e+01, 1.58873243e+01, + 6.21126747e+00, 3.15211277e+01, 4.70281677e+01, 4.33802795e+00, + 6.74647903e+00, 4.37746468e+01, 4.89859161e+01, 1.08591547e+01, + 7.80281687e+00, 1.30985916e+02, 1.17887321e+02, 5.63380289e+00, + 7.64788723e+00, 6.05211258e+01, 3.85352097e+01, 1.00845070e+01, + 2.16760559e+01, 1.41985916e+02, 9.32676086e+01, 8.32394409e+00, + 2.35211277e+00, 8.80281734e+00, 2.80422535e+01, 1.55352116e+01, + 5.92957735e+00, 1.79436626e+01, 7.24366226e+01, 1.95774651e+01, + 5.38028193e+00, 3.77746468e+01, 8.28591537e+01, 12., + 4.25352097e+00, 9.84929581e+01, 1.40746475e+02, 9.47887325e+00, + 6.07042265e+00, 1.12915489e+02, 1.16929581e+02, 8.50704193e+00, + 7.57746458e+00, 1.26352112e+02, 1.33267609e+02, 7.35211277e+00, + 1.12394361e+01, 1.16169014e+02, 7.43098602e+01, 9.05633831e+00, + 1.98732395e+01, 9.69295807e+01, 4.86619720e+01, 1.87500000e+01, + 2.33965511e+01, 3.16120682e+01, 3.84224129e+01, 4.09137917e+01, + 4.11724129e+01, 3.01120682e+01, 2.26896553e+01, 2.20086212e+01, + 3.20517235e+01, 4.48620682e+01, 4.84137917e+01, 5.03275871e+01, + 5.04224129e+01, 3.76293106e+01, 2.58793106e+01, 1.78965511e+01, + 2.74051723e+01, 3.25344810e+01, 3.26896553e+01, 3.52241364e+01, + 3.57241364e+01, 2.78706894e+01, 2.10775871e+01, 2.43965507e+00, + 3.27586198e+00, 4.07758617e+00, 3., 3.40517235e+00, + 4.27586222e+00, 3.23275852e+00, 1.89655173e+00, 3.22672424e+01, + 3.71896553e+01, 5.27155190e+01, 6.38017235e+01, 6.51379318e+01, + 6.47241364e+01, 4.71206894e+01, 3.44568977e+01, 3.52844810e+01, + 5.03017235e+01, 6.64224167e+01, 6.76120682e+01, 79., + 8.23965530e+01, 5.95689659e+01, 3.98362083e+01, 2.63879318e+01, + 4.02241364e+01, 5.37327576e+01, 5.11551743e+01, 5.23534470e+01, + 5.80603447e+01, 47., 3.12672405e+01, 2.62068963e+00, + 3.76724148e+00, 6.87931013e+00, 6.01724148e+00, 4.45689678e+00, + 6.01724148e+00, 5.83620691e+00, 3.19827580e+00, 3.83017235e+01, + 4.19741364e+01, 5.46034470e+01, 6.27068977e+01, 6.71379318e+01, + 6.07327576e+01, 4.15517235e+01, 3.71724129e+01, 3.45689659e+01, + 4.99224129e+01, 6.89741364e+01, 7.07758636e+01, 8.23017273e+01, + 8.20086212e+01, 5.39310341e+01, 3.44913788e+01, 2.34827595e+01, + 3.78706894e+01, 5.10086212e+01, 5.19051743e+01, 5.54655190e+01, + 5.90775871e+01, 4.57758636e+01, 2.50517235e+01, 2.16379309e+00, + 3.75000000e+00, 5.46551704e+00, 5.62068987e+00, 4.61206913e+00, + 6.28448296e+00, 5.32758617e+00, 2.62931037e+00, 3.45344810e+01, + 4.53534470e+01, 5.44568977e+01, 56., 5.64568977e+01, + 5.23706894e+01, 2.98534489e+01, 2.40689659e+01, 3.17068958e+01, + 4.44310341e+01, 6.74224167e+01, 6.38362083e+01, 6.30172424e+01, + 5.63965530e+01, 3.89568977e+01, 2.86206894e+01, 2.12068958e+01, + 3.35000000e+01, 4.23965530e+01, 4.21034470e+01, 4.14482765e+01, + 4.01034470e+01, 3.32672424e+01, 2.03620682e+01, 2.13793111e+00, + 3.47413802e+00, 3.87931037e+00, 3.42241383e+00, 3.25862074e+00, + 3.94827580e+00, 4.17241383e+00, 2.11206889e+00, 1.27272725e+00, + 1.19696975e+00, 4.63636351e+00, 2.87424240e+01, 3.53636360e+01, + 1.46060610e+01, 3.30303025e+00, 1.28787875e+00, 1.07818184e+02, + 5.40909100e+00, 2.98484850e+00, 2.21212120e+01, 3.50606079e+01, + 7.75757599e+00, 3.56060600e+00, 4.03939400e+01, 1.07303032e+02, + 6.37878799e+00, 1.57575762e+00, 4.55757561e+01, 1.22575760e+02, + 7.16666651e+00, 1.69696975e+00, 3.75454559e+01, 1.55606060e+01, + 6.56060600e+00, 1.36363637e+00, 6.33333349e+00, 2.18484840e+01, + 2.24242425e+00, 1.83333337e+00, 7.90909100e+00, 5.28787899e+00, + 1.75757575e+00, 1.27727270e+01, 3.98484840e+01, 3.04545460e+01, + 1.13939390e+01, 5.87878799e+00, 1.55909090e+01, 1.15818184e+02, + 2.66666675e+00, 4.60606050e+00, 6.40909119e+01, 5.43484840e+01, + 5.53030300e+00, 4.93939400e+00, 1.20984848e+02, 6.45303040e+01, + 4.90909100e+00, 2.62121201e+00, 1.11969696e+02, 1.23378784e+02, + 3.36363626e+00, 3.75757575e+00, 5.60606079e+01, 2.04848480e+01, + 6.31818199e+00, 1.31818187e+00, 4.37878799e+00, 7., + 1.43939400e+00, 3.59090900e+00, 1.71212120e+01, 1.50151520e+01, + 1.59090912e+00, 1.42121210e+01, 4.38939400e+01, 1.36969700e+01, + 5.75757599e+00, 2.30909100e+01, 1.12878784e+02, 5.72727280e+01, + 2.18181825e+00, 7.93939400e+00, 1.28954544e+02, 6.04545441e+01, + 2.45454550e+00, 9.74242401e+00, 1.28378784e+02, 2.33030300e+01, + 5.68181801e+00, 3.09090900e+00, 9.42121201e+01, 5.25000000e+01, + 2.66666675e+00, 8.10606098e+00, 3.46969681e+01, 1.98939400e+01, + 4.60606050e+00, 1.16666663e+00, 1.09090912e+00, 9.54545438e-01, + 1.36363637e+00, 5.13636351e+00, 2.29242420e+01, 5.54545450e+00, + 1.12121212e+00, 3.65303040e+01, 1.11545456e+02, 4.37878799e+00, + 1.78787875e+00, 3.77424240e+01, 1.05666664e+02, 1.00606060e+01, + 2.27272725e+00, 1.17575760e+01, 1.16212120e+02, 1.67878780e+01, + 2.40909100e+00, 1.19545450e+01, 4.41969681e+01, 1.69090900e+01, + 3.66666675e+00, 1.86363637e+00, 1.08333330e+01, 4.09090900e+00, + 2.78787875e+00, 1.10757580e+01, 3.35757561e+01, 1.20151520e+01, + 2.39393950e+00, 9.24242437e-01, 5.15151501e-01, 7.72727251e-01, + 1.51515150e+00, 4.69696951e+00, 1.90151520e+01, 1.89361703e+00, + 2.19148946e+00, 1.65957451e+00, 1.59574473e+00, 9.14893627e-01, + 8.72340441e-01, 5.95744669e-01, 1.44680846e+00, 1.27659571e+00, + 1.80851066e+00, 1.93617022e+00, 2.55319142e+00, 1.48936164e+00, + 1.04255319e+00, 1.51063836e+00, 1.38297868e+00, 1.08510637e+00, + 1.04255319e+00, 1.36170208e+00, 1.23404253e+00, 2.59574461e+00, + 1.36170208e+00, 1.78723407e+00, 1.74468088e+00, 6.80851042e-01, + 5.53191483e-01, 7.87234068e-01, 7.02127635e-01, 2.42553186e+00, + 1.31914890e+00, 1.42553186e+00, 1.38297868e+00, 8.61702156e+00, + 9.97872353e+00, 2.88297863e+01, 2.79361706e+01, 9.36170197e+00, + 1.18085108e+01, 3.10212765e+01, 2.55744686e+01, 7.82978725e+00, + 1.42978725e+01, 3.90212784e+01, 2.26170216e+01, 7.65957451e+00, + 1.62127666e+01, 8.73404236e+01, 3.37021294e+01, 5.40425539e+00, + 1.95957451e+01, 3.46170197e+01, 1.04680853e+01, 1.28510637e+01, + 3.78936157e+01, 7.74255295e+01, 1.29574471e+01, 5.34042549e+00, + 1.71702137e+01, 1.73617020e+01, 4.74468088e+00, 1.28085108e+01, + 2.38936176e+01, 2.27021275e+01, 5.65957451e+00, 2.12978725e+01, + 1.29148932e+01, 3.58510628e+01, 4.12553177e+01, 1.66808510e+01, + 2.57446804e+01, 1.07042557e+02, 1.25808510e+02, 1.21914892e+01, + 1.34468088e+01, 4.27021294e+01, 2.30212765e+01, 6.89361715e+00, + 4.35106392e+01, 1.44170212e+02, 1.08468086e+02, 8.34042549e+00, + 25., 3.76382980e+01, 1.11489363e+01, 2.05531921e+01, + 1.20382980e+02, 1.43085114e+02, 2.81489353e+01, 10., + 2.47446804e+01, 2.16382980e+01, 4.46808529e+00, 3.24255333e+01, + 1.21978722e+02, 9.75319138e+01, 1.01489363e+01, 5.36808510e+01, + 2.87021275e+01, 2.10212765e+01, 2.58510647e+01, 2.30425529e+01, + 1.76595745e+01, 3.88936157e+01, 7.75744705e+01, 1.84468079e+01, + 1.46808510e+01, 1.85319157e+01, 2.00851059e+01, 1.98723412e+01, + 2.09148941e+01, 3.32553177e+01, 3.74680862e+01, 1.40638294e+01, + 1.77021275e+01, 1.97021275e+01, 1.89787235e+01, 2.74042549e+01, + 3.79574471e+01, 3.08297863e+01, 1.42553196e+01, 1.40212765e+01, + 1.96808510e+01, 1.70212765e+01, 1.69787235e+01, 6.54042587e+01, + 7.73617020e+01, 4.08510628e+01, 1.30851068e+01, 8.25999985e+01, + 3.04461536e+01, 2.04615378e+00, 1.24615383e+00, 6.87692308e+00, + 2.92307687e+00, 1.44615388e+00, 1.38461542e+01, 1.12107689e+02, + 5.49846153e+01, 7.61538458e+00, 3.23076916e+00, 5.73846149e+00, + 5.81538439e+00, 3.59999990e+00, 2.38153839e+01, 3.77692299e+01, + 2.56153851e+01, 1.06153851e+01, 7.58461523e+00, 1.21538458e+01, + 1.67230778e+01, 1.33384619e+01, 1.77230778e+01, 1.58923073e+01, + 1.25230770e+01, 9.19999981e+00, 5.50769234e+00, 5.72307682e+00, + 1.03076925e+01, 1.34615383e+01, 1.68307686e+01, 5.91538467e+01, + 5.03846169e+01, 4.10769224e+00, 2.26153851e+00, 1.86307697e+01, + 3.00307693e+01, 3.01538467e+00, 7.93846130e+00, 1.06261536e+02, + 1.24169228e+02, 8.87692261e+00, 8.61538470e-01, 3.16923070e+00, + 9.06153870e+00, 2.13846159e+00, 6.47692299e+00, 5.26615372e+01, + 9.35846176e+01, 2.48153839e+01, 5.38461542e+00, 6.72307682e+00, + 1.58307695e+01, 1.46000004e+01, 1.48769226e+01, 1.95076923e+01, + 2.83384609e+01, 2.90461540e+01, 1.90461540e+01, 1.10923080e+01, + 1.34769230e+01, 2.12615376e+01, 24., 2.03076916e+01, + 2.94461536e+01, 4.40000010e+00, 2.40000010e+00, 3.11692314e+01, + 1.15676926e+02, 1.52769232e+01, 5.29230785e+00, 4.75999985e+01, + 1.12230766e+02, 1.71384621e+01, 1.95384610e+00, 3., + 2.67384624e+01, 1.11999998e+01, 5.03076935e+00, 2.38307686e+01, + 1.27830772e+02, 7.04000015e+01, 3.61538458e+00, 9.69230771e-01, + 5.29230785e+00, 4.69230747e+00, 3.52307701e+00, 7.38461542e+00, + 7.04000015e+01, 9.64461517e+01, 1.74153843e+01, 3.24615383e+00, + 3.78461528e+00, 7.03076935e+00, 5.43076944e+00, 5.75384617e+00, + 4.60461540e+01, 1.41230774e+01, 2.29230762e+00, 1.33384619e+01, + 1.20199997e+02, 4.39076920e+01, 3.09230781e+00, 9.24615383e+00, + 3.70461540e+01, 1.69230766e+01, 1.63076925e+00, 3.18461537e+00, + 1.16092308e+02, 9.31076889e+01, 4.12307692e+00, 8.06153870e+00, + 6.24615402e+01, 3.90153847e+01, 2.01538467e+00, 8.92307699e-01, + 3.54923096e+01, 7.71692276e+01, 5.30769253e+00, 2.75384617e+00, + 4.31538467e+01, 7.09846191e+01, 6.18461561e+00, 1.70769227e+00, + 4.86153841e+00, 5.11230774e+01, 1.13538465e+01, 1.27916670e+01, + 3.25000000e+00, 2.54166675e+00, 1.08750000e+01, 4.32500000e+01, + 1.67916660e+01, 8.54166698e+00, 6.62500000e+00, 9.19166641e+01, + 5.37500000e+00, 7.91666687e-01, 2.27916660e+01, 9.28750000e+01, + 1.55833330e+01, 6.45833349e+00, 3.07500000e+01, 9.21250000e+01, + 8.04166698e+00, 5.83333313e-01, 1.68750000e+01, 1.07250000e+02, + 1.86250000e+01, 7.20833349e+00, 3.32500000e+01, 8.12083359e+01, + 8.08333302e+00, 1.83333337e+00, 1.74583340e+01, 5.66666679e+01, + 1.18333330e+01, 7.50000000e+00, 2.47083340e+01, 1.62500000e+01, + 4., 3.87500000e+00, 3.64166679e+01, 5.86250000e+01, + 1.94166660e+01, 1.49583330e+01, 2.15833340e+01, 1.05291664e+02, + 8.54166698e+00, 5.87500000e+00, 3.75416679e+01, 9.15833359e+01, + 2.19166660e+01, 2.21666660e+01, 7.18333359e+01, 9.75833359e+01, + 1.51666670e+01, 8.87500000e+00, 2.82083340e+01, 118., + 4.65000000e+01, 1.47916670e+01, 3.85000000e+01, 9.11666641e+01, + 2.37083340e+01, 3.16666675e+00, 1.66250000e+01, 5.45416679e+01, + 2.36666660e+01, 1.20833330e+01, 2.65000000e+01, 3.49583321e+01, + 4.79166651e+00, 7., 5.26250000e+01, 5.52083321e+01, + 9.79166698e+00, 1.93333340e+01, 5.94583321e+01, 5.87500000e+01, + 1.36250000e+01, 2.07083340e+01, 3.90416679e+01, 4.84583321e+01, + 2.91250000e+01, 3.92916679e+01, 8.79583359e+01, 4.85416679e+01, + 19., 1.88333340e+01, 2.28750000e+01, 7.52083359e+01, + 8.43750000e+01, 44., 2.53333340e+01, 6.86666641e+01, + 3.51666679e+01, 2.95833325e+00, 7.54166651e+00, 4.30416679e+01, + 5.25000000e+01, 2.27916660e+01, 1.55833330e+01, 6.07916679e+01, + 7.50000000e+00, 6.33333349e+00, 2.88333340e+01, 5.84166679e+01, + 8.62500000e+00, 6.70833349e+00, 3.11666660e+01, 36., + 2.87916660e+01, 2.68750000e+01, 2.99583340e+01, 2.71666660e+01, + 1.51250000e+01, 1.85000000e+01, 3.12083340e+01, 1.88750000e+01, + 2.66666660e+01, 2.59166660e+01, 2.87916660e+01, 3.77916679e+01, + 3.29583321e+01, 2.47500000e+01, 1.34166670e+01, 5.21666679e+01, + 1.52500000e+01, 4.70833349e+00, 1.65833340e+01, 5.58750000e+01, + 2.09166660e+01, 7., 1.41666670e+01, 7.33333349e-01, + 7.11111128e-01, 1.79999995e+00, 7.80000019e+00, 1.90222225e+01, + 4.28888893e+00, 8.00000012e-01, 6.00000024e-01, 3.11111116e+00, + 1.97777772e+00, 5.91111088e+00, 6.50444412e+01, 9.88000031e+01, + 1.30444441e+01, 1.73333335e+00, 1.22222221e+00, 1.68444443e+01, + 3.46666670e+00, 5.62222242e+00, 88., 1.08644447e+02, + 1.16888885e+01, 1.97777772e+00, 1.44888887e+01, 3.76444435e+01, + 6.88888884e+00, 3.04444456e+00, 6.65111084e+01, 6.18666649e+01, + 9.24444485e+00, 2.97777772e+00, 4.43111115e+01, 9.11111116e-01, + 9.33333337e-01, 1.86666667e+00, 1.10888891e+01, 2.87111111e+01, + 6.42222214e+00, 9.77777779e-01, 1., 3.64444447e+00, + 2.86666656e+00, 6.11111116e+00, 7.42888870e+01, 1.26666664e+02, + 19., 1.57777774e+00, 1.28888893e+00, 3.99333344e+01, + 6.62222242e+00, 4.71111107e+00, 8.45777740e+01, 1.25955559e+02, + 1.35333338e+01, 3.64444447e+00, 2.49555550e+01, 7.85555573e+01, + 1.48000002e+01, 3.91111112e+00, 5.14888878e+01, 7.98666687e+01, + 8.19999981e+00, 2.37777781e+00, 4.14222221e+01, 6.66666687e-01, + 8.00000012e-01, 2.17777777e+00, 1.26888885e+01, 2.98888893e+01, + 7.26666689e+00, 9.11111116e-01, 9.11111116e-01, 3.77777767e+00, + 1.42222226e+00, 4.86666679e+00, 5.83555565e+01, 1.28866669e+02, + 3.18888893e+01, 2., 1.35555553e+00, 4.82444458e+01, + 8.17777824e+00, 4.71111107e+00, 4.99111099e+01, 1.25733330e+02, + 2.31333332e+01, 4.68888903e+00, 1.73999996e+01, 8.47333298e+01, + 3.23555565e+01, 5.71111107e+00, 2.59555550e+01, 8.24000015e+01, + 1.00444441e+01, 2.15555549e+00, 1.72666664e+01, 3.77777785e-01, + 6.66666687e-01, 2.02222228e+00, 8.33333302e+00, 2.24666672e+01, + 6.59999990e+00, 7.55555570e-01, 3.33333343e-01, 2.48888898e+00, + 9.33333337e-01, 2.33333325e+00, 3.01555557e+01, 1.08222221e+02, + 4.03555565e+01, 1.97777772e+00, 6.66666687e-01, 3.43555565e+01, + 1.04666662e+01, 2.51111102e+00, 2.06000004e+01, 1.03777779e+02, + 3.57111130e+01, 3.57777786e+00, 5.55555534e+00, 4.14000015e+01, + 3.57555542e+01, 3.91111112e+00, 7.64444447e+00, 7.59555588e+01, + 2.57555561e+01, 1.71111107e+00, 4.04444456e+00, 5.77922058e+00, + 5.33766222e+00, 5.27272749e+00, 7.18181801e+00, 1.11038961e+01, + 1.14155846e+01, 1.34805193e+01, 1.01168833e+01, 6.59740257e+00, + 5., 6.37662315e+00, 1.05974026e+01, 1.60909100e+01, + 1.62207794e+01, 1.64935074e+01, 1.12467537e+01, 4., + 4.64935064e+00, 6.98701286e+00, 1.20129871e+01, 1.64935074e+01, + 1.65194798e+01, 1.40129871e+01, 7.92207813e+00, 2.90909100e+00, + 3.75324678e+00, 7.54545450e+00, 1.33246756e+01, 1.37922077e+01, + 1.16363640e+01, 9.03896141e+00, 5.55844164e+00, 8.12987041e+00, + 9.93506527e+00, 1.65714283e+01, 1.85324669e+01, 2.06753254e+01, + 1.96493511e+01, 2.11818180e+01, 1.50129871e+01, 8.93506527e+00, + 1.14805193e+01, 2.55974026e+01, 3.62337646e+01, 3.13376617e+01, + 2.49610386e+01, 2.05064926e+01, 1.46623373e+01, 7.92207813e+00, + 1.13636360e+01, 3.69740257e+01, 5.34415588e+01, 3.23766251e+01, + 2.49480515e+01, 2.36233768e+01, 1.88181820e+01, 5.19480515e+00, + 7.44155836e+00, 3.55194817e+01, 5.79480515e+01, 2.43506489e+01, + 1.88961048e+01, 2.80519485e+01, 2.50649357e+01, 7.15584421e+00, + 1.40909090e+01, 5.05064926e+01, 4.74675331e+01, 2.28441563e+01, + 2.78051949e+01, 4.13896103e+01, 2.22597408e+01, 7.23376608e+00, + 1.14935064e+01, 7.23116913e+01, 8.48051910e+01, 3.06103897e+01, + 2.56493511e+01, 6.17792206e+01, 4.68311691e+01, 6.54545450e+00, + 6.75324678e+00, 7.79090881e+01, 1.01389610e+02, 2.36623383e+01, + 1.76623383e+01, 7.51688309e+01, 7.34025955e+01, 5.06493521e+00, + 4.45454550e+00, 6.76883087e+01, 9.78961029e+01, 1.78571434e+01, + 1.46493511e+01, 6.92857132e+01, 7.30519485e+01, 7.67532444e+00, + 1.25714283e+01, 5.83506508e+01, 6.63896103e+01, 1.45974026e+01, + 2.31688309e+01, 6.65064926e+01, 4.87922096e+01, 4.41558456e+00, + 1.01168833e+01, 8.04935074e+01, 9.91818161e+01, 1.78181820e+01, + 2.55454540e+01, 9.17792206e+01, 7.26233749e+01, 2.15584421e+00, + 3.10389614e+00, 9.26233749e+01, 1.12896103e+02, 1.09480524e+01, + 1.21428576e+01, 9.54025955e+01, 1.01701302e+02, 1.92207789e+00, + 1.32467532e+00, 6.90909119e+01, 9.78701324e+01, 8.83116913e+00, + 7.81818199e+00, 8.15974045e+01, 9.53766251e+01, 5.59516144e+01, + 9.89677429e+01, 9.33870983e+00, 1.46774197e+00, 2.67580643e+01, + 5.99677429e+01, 4.79032278e+00, 2.32258058e+00, 7.60161285e+01, + 1.01403229e+02, 1.61290321e+01, 3.08064508e+00, 1.16129036e+01, + 1.33064518e+01, 3.30645156e+00, 6.33870983e+00, 5.51451607e+01, + 7.00483856e+01, 1.39677420e+01, 3.46774197e+00, 4.80645180e+00, + 4.46774197e+00, 3.19354844e+00, 7.37096786e+00, 5.38709688e+00, + 7.11290312e+00, 1.51612902e+00, 6.61290348e-01, 1.09677422e+00, + 7.25806475e-01, 6.77419364e-01, 7.74193525e-01, 8.17741928e+01, + 7.38064499e+01, 4.29032278e+00, 3.91935492e+00, 87., + 1.01258064e+02, 5., 3.12903237e+00, 1.10919357e+02, + 9.49354858e+01, 1.07580643e+01, 4.74193525e+00, 3.88548393e+01, + 2.93387089e+01, 6.24193525e+00, 1.30645161e+01, 8.96935501e+01, + 7.62903214e+01, 1.08548384e+01, 3.51612902e+00, 3.85483861e+00, + 3.51612902e+00, 4.70967722e+00, 1.68870964e+01, 7.25806475e+00, + 7.77419376e+00, 1.43548381e+00, 5.16129017e-01, 6.93548381e-01, + 4.83870953e-01, 7.25806475e-01, 2.03225803e+00, 8.48871002e+01, + 3.28387108e+01, 2.06451607e+00, 1.61612911e+01, 1.18016129e+02, + 6.47741928e+01, 3.62903237e+00, 9., 1.15854836e+02, + 5.65806465e+01, 8.24193573e+00, 9.95161247e+00, 6.51774216e+01, + 2.45000000e+01, 5.69354820e+00, 2.11774197e+01, 9.26612930e+01, + 6.12096786e+01, 8.70967770e+00, 3.53225803e+00, 4.58064508e+00, + 3.59677410e+00, 6.16129017e+00, 2.13870964e+01, 7.08064508e+00, + 5.85483885e+00, 1.09677422e+00, 3.87096763e-01, 4.03225809e-01, + 3.54838699e-01, 6.77419364e-01, 2.19354844e+00, 7.20806427e+01, + 9.67741966e+00, 2.37096763e+00, 4.41935501e+01, 1.04451614e+02, + 1.71451607e+01, 2.16129041e+00, 2.36129036e+01, 1.01419357e+02, + 2.29838715e+01, 6.24193525e+00, 1.90483875e+01, 5.39516144e+01, + 1.05645161e+01, 7.80645180e+00, 3.31774178e+01, 7.89193573e+01, + 3.17903233e+01, 4.83870983e+00, 2.46774197e+00, 3.33870959e+00, + 3.20967746e+00, 6.61290312e+00, 2.80806446e+01, 6.32258081e+00, + 3.50000000e+00, 5.16129017e-01, 2.25806445e-01, 1.93548381e-01, + 2.25806445e-01, 5.64516127e-01, 2.72580647e+00, 1.15882349e+01, + 4.02549019e+01, 2.51764698e+01, 9.94117641e+00, 8.25490189e+00, + 4.52549019e+01, 3.82352943e+01, 1.05490198e+01, 1.09215689e+01, + 8.14313736e+01, 5.31960793e+01, 6.62745094e+00, 5.62745094e+00, + 6.92156830e+01, 5.38039207e+01, 1.31764708e+01, 6.94117641e+00, + 9.98823547e+01, 6.83921585e+01, 4.39215708e+00, 7.43137264e+00, + 6.39411774e+01, 4.77058830e+01, 1.12745094e+01, 6.39215708e+00, + 5.37450981e+01, 4.43921585e+01, 6.33333349e+00, 8.64705849e+00, + 2.57450981e+01, 3.03725491e+01, 1.66862736e+01, 8.76470566e+00, + 3.76274529e+01, 2.00980396e+01, 5.66666651e+00, 1.15882349e+01, + 8.55098038e+01, 6.25490189e+01, 12., 1.20980396e+01, + 8.29019623e+01, 4.04509811e+01, 4.17647076e+00, 6.74509811e+00, + 9.59215698e+01, 7.22745132e+01, 1.19215689e+01, 1.06862745e+01, + 9.47647095e+01, 4.82745094e+01, 2.21568632e+00, 4.09803915e+00, + 9.37450943e+01, 7.48235321e+01, 1.10392160e+01, 7.78431368e+00, + 8.41372528e+01, 5.75294113e+01, 4.45098019e+00, 5.01960802e+00, + 7.67843170e+01, 7.04509811e+01, 18., 8.84313679e+00, + 9.09803963e+00, 6.39215708e+00, 6.15686274e+00, 1.23921566e+01, + 3.76862755e+01, 3.72549019e+01, 1.74705887e+01, 9.19607830e+00, + 3.57647057e+01, 1.81176472e+01, 6.92156839e+00, 1.46666670e+01, + 9.79803925e+01, 7.42549057e+01, 1.74117641e+01, 1.96078434e+01, + 8.93921585e+01, 3.49803925e+01, 3.96078420e+00, 1.28431368e+01, + 1.07313728e+02, 7.40196075e+01, 1.22941179e+01, 1.74509811e+01, + 8.15882339e+01, 3.24509811e+01, 6.64705896e+00, 8.92156887e+00, + 7.78235321e+01, 5.77254906e+01, 1.44901962e+01, 9.39215660e+00, + 7.60784292e+00, 6.23529434e+00, 5.33333349e+00, 7.45098019e+00, + 1.12156858e+01, 1.50392160e+01, 1.29607840e+01, 1.06078434e+01, + 8.39215660e+00, 6.90196085e+00, 7.52941179e+00, 1.27843142e+01, + 2.42352943e+01, 2.69215679e+01, 1.73137264e+01, 1.32352943e+01, + 1.97843132e+01, 8.15686321e+00, 6.54901981e+00, 1.91176472e+01, + 6.59607849e+01, 4.05294113e+01, 1.66470585e+01, 1.74705887e+01, + 4.96470604e+01, 1.59607840e+01, 4.52941179e+00, 1.37450981e+01, + 7.73333359e+01, 4.23529396e+01, 1.05686274e+01, 5.11250000e+01, + 8.77500000e+01, 1.38125000e+01, 4.53125000e+00, 5.08437500e+01, + 7.53125000e+01, 1.66562500e+01, 7.15625000e+00, 23., + 3.85625000e+01, 9.56250000e+00, 5.06250000e+00, 1.31875000e+01, + 19., 2.45000000e+01, 1.65312500e+01, 9.53125000e+00, + 5.87500000e+00, 3.62500000e+00, 5.96875000e+00, 1.09062500e+01, + 1.55000000e+01, 1.91562500e+01, 1.26250000e+01, 4.68750000e-01, + 3.43750000e-01, 7.50000000e-01, 1.40625000e+00, 2., + 2.50000000e+00, 4.40625000e+00, 2.06250000e+00, 3.52187500e+01, + 8.04687500e+01, 2.84687500e+01, 1.53437500e+01, 6.78750000e+01, + 1.30343750e+02, 1.07375000e+02, 2.19375000e+01, 4.93125000e+01, + 1.01437500e+02, 2.43125000e+01, 4.37500000e+00, 3.13125000e+01, + 1.04968750e+02, 6.72500000e+01, 14., 2.74687500e+01, + 4.17812500e+01, 6.40625000e+00, 6.40625000e+00, 1.45312500e+01, + 2.52500000e+01, 1.99375000e+01, 1.05312500e+01, 1.31250000e+00, + 1.12500000e+00, 1.09375000e+00, 1.75000000e+00, 2.62500000e+00, + 3.90625000e+00, 5.18750000e+00, 1.93750000e+00, 2.12187500e+01, + 3.72500000e+01, 3.70625000e+01, 3.03750000e+01, 4.35625000e+01, + 7.19375000e+01, 6.31875000e+01, 3.16562500e+01, 4.17812500e+01, + 8.37187500e+01, 2.25312500e+01, 1.48125000e+01, 1.02968750e+02, + 1.29937500e+02, 4.01562500e+01, 9.93750000e+00, 6.96250000e+01, + 9.00625000e+01, 7.75000000e+00, 5.06250000e+00, 4.29375000e+01, + 7.43125000e+01, 9.62500000e+00, 5.43750000e+00, 6.53125000e+00, + 8.84375000e+00, 2.09375000e+00, 1.96875000e+00, 2.12500000e+00, + 4.12500000e+00, 2.90625000e+00, 1.31250000e+00, 1.59375000e+01, + 3.33437500e+01, 3.60937500e+01, 2.43125000e+01, 2.71250000e+01, + 1.87500000e+01, 14., 1.50312500e+01, 2.41875000e+01, + 3.44687500e+01, 1.98437500e+01, 1.55312500e+01, 6.61250000e+01, + 8.20625000e+01, 1.87812500e+01, 1.52187500e+01, 5.49687500e+01, + 5.43125000e+01, 4.84375000e+00, 3.15625000e+00, 7.04062500e+01, + 9.45937500e+01, 8.12500000e+00, 5.71875000e+00, 1.25000000e+01, + 1.39375000e+01, 1.71875000e+00, 7.50000000e-01, 4.62500000e+00, + 1.03437500e+01, 1.09375000e+00, 8.75000000e-01, 1.80634918e+01, + 6.58730173e+00, 1.84920635e+01, 1.11587305e+01, 2.22222233e+00, + 5.71428585e+00, 8.33968277e+01, 9.41746063e+01, 1.36031742e+01, + 1.08888893e+01, 1.81587296e+01, 4.34920645e+00, 3., + 3.11904755e+01, 1.16190475e+02, 6.38095245e+01, 9.11111069e+00, + 2.14285717e+01, 1.50634918e+01, 2.26984119e+00, 6.36507940e+00, + 1.04746033e+02, 1.12523811e+02, 2.57619057e+01, 1.78253975e+01, + 5.19841270e+01, 1.25079365e+01, 1.06349206e+00, 2.33333340e+01, + 1.17555557e+02, 4.30634918e+01, 3.47619057e+00, 4.51746025e+01, + 1.59841270e+01, 8.04761887e+00, 5.95238113e+00, 3.68253970e+00, + 5.33333349e+00, 2.98412704e+01, 7.80952377e+01, 3.13968258e+01, + 1.99523811e+01, 1.42222223e+01, 7.60317469e+00, 8.41269875e+00, + 1.35714283e+01, 4.45714302e+01, 5.38412704e+01, 2.36190472e+01, + 2.54444447e+01, 1.31587305e+01, 5.92063475e+00, 1.70317459e+01, + 7.03174591e+01, 5.14444427e+01, 2.78253975e+01, 1.44444447e+01, + 1.94920635e+01, 4.98412704e+00, 5.50793648e+00, 8.61587296e+01, + 1.21079369e+02, 2.21587296e+01, 7.14285707e+00, 5.64603157e+01, + 3.13015881e+01, 9.90476227e+00, 5.57142878e+00, 5.44444466e+00, + 6.38095236e+00, 1.27619047e+01, 3.92539673e+01, 3.84444427e+01, + 2.66507931e+01, 1.37460318e+01, 1.07619047e+01, 1.19523811e+01, + 1.78571434e+01, 2.53650799e+01, 3.56984138e+01, 4.52222214e+01, + 2.43968258e+01, 1.15873013e+01, 1.06507940e+01, 2.05238094e+01, + 2.69047623e+01, 2.62698421e+01, 4.02063484e+01, 2.08730164e+01, + 1.14920635e+01, 3.20634913e+00, 2.74761906e+01, 1.14396828e+02, + 6.34761887e+01, 1.03333330e+01, 1.69682541e+01, 4.20158730e+01, + 4.12063484e+01, 1.27777777e+01, 3.66666675e+00, 3.71428561e+00, + 5.38095236e+00, 1.31746035e+01, 1.98571434e+01, 3.43015862e+01, + 4.20634918e+01, 2.57460308e+01, 1.06666670e+01, 7.07936525e+00, + 1.47619047e+01, 2.24761906e+01, 2.69365082e+01, 3.84444427e+01, + 2.49841270e+01, 2.59365082e+01, 4.26190491e+01, 2.54761906e+01, + 1.36984129e+01, 1.63809528e+01, 3.68730164e+01, 1.89206352e+01, + 6.95238113e+00, 9.15873051e+00, 8.34920654e+01, 1.03095238e+02, + 1.18412695e+01, 3.63492060e+00, 1.97460308e+01, 2.66129041e+00, + 1.67741930e+00, 1.14516127e+00, 5.17741919e+00, 3.03387089e+01, + 3.17580643e+01, 2.00322590e+01, 6.80645180e+00, 5.41774178e+01, + 6.74354858e+01, 2.24193549e+00, 5.62903214e+00, 3.19032249e+01, + 2.53387089e+01, 1.05806456e+01, 7.32258081e+00, 1.03629036e+02, + 8.63225784e+01, 2.20967746e+00, 2.91935492e+00, 1.02274193e+02, + 8.74032288e+01, 4.61290312e+00, 3.95161295e+00, 1.30645161e+01, + 9.04838753e+00, 3.25806451e+00, 2.19354844e+00, 5.18870964e+01, + 2.89677410e+01, 6.19354820e+00, 5.06451607e+00, 3.40322590e+00, + 1.43548381e+00, 3.95161295e+00, 1.81290321e+01, 5.81290321e+01, + 3.89516144e+01, 1.65161285e+01, 5.09677410e+00, 4.19516144e+01, + 1.53709679e+01, 2.06451607e+00, 1.91774197e+01, 4.87903214e+01, + 2.62096767e+01, 1.30322580e+01, 8.11290359e+00, 1.29677414e+02, + 5.95161285e+01, 2.03225803e+00, 1.02258062e+01, 1.11741936e+02, + 4.12903214e+01, 3.87096763e+00, 1.23548384e+01, 2.28870964e+01, + 9.14516163e+00, 2.96774197e+00, 7.12903214e+00, 1.04532257e+02, + 2.88225803e+01, 6.72580624e+00, 7.80645180e+00, 2.25806451e+00, + 3.01612902e+00, 9.98387051e+00, 4.44032249e+01, 5.29838715e+01, + 2.48709679e+01, 6.80645180e+00, 2.93548393e+00, 3.88709679e+01, + 3.67741942e+00, 5.04838705e+00, 3.66451607e+01, 4.42580643e+01, + 1.81129036e+01, 6.95161295e+00, 1.71451607e+01, 1.30290329e+02, + 1.51451616e+01, 2.46774197e+00, 3.94838715e+01, 1.12096771e+02, + 1.04516125e+01, 3.04838705e+00, 6.20322571e+01, 2.27741928e+01, + 7.79032278e+00, 2.74193549e+00, 2.67258072e+01, 1.04274193e+02, + 7.79032278e+00, 3.16129041e+00, 1.08064518e+01, 1.59677422e+00, + 3.12903237e+00, 1.52258062e+01, 3.78548393e+01, 2.61290321e+01, + 9.72580624e+00, 3.01612902e+00, 2.64516139e+00, 4.93548393e+01, + 1.79032254e+00, 8.59677410e+00, 3.55000000e+01, 2.28870964e+01, + 8.17741966e+00, 4.79032278e+00, 6.73709641e+01, 1.06322578e+02, + 3.25806451e+00, 2.33870959e+00, 8.78387070e+01, 1.04612900e+02, + 2.93548393e+00, 2.50000000e+00, 9.53387070e+01, 1.44677420e+01, + 6.30645180e+00, 1.56451619e+00, 2.94354839e+01, 5.39677429e+01, + 1.72580647e+00, 2.56451607e+00, 1.03225803e+01, 4.69107132e+01, + 4.52321434e+01, 2.59285717e+01, 1.63928566e+01, 2.10178566e+01, + 5.47500000e+01, 4.22678566e+01, 4.96250000e+01, 1.94107151e+01, + 1.43214283e+01, 2.71785717e+01, 2.21428566e+01, 1.56607141e+01, + 3.47142868e+01, 7.28035736e+01, 6.58214264e+01, 6.76785707e+00, + 1.82857151e+01, 2.08750000e+01, 5.64285707e+00, 5.55357122e+00, + 7.83571396e+01, 8.24821396e+01, 1.26607141e+01, 5.08928585e+00, + 1.91964283e+01, 1.11428576e+01, 2.16071439e+00, 7.28571415e+00, + 8.91250000e+01, 5.42857132e+01, 5.12500000e+00, 1.02767860e+02, + 9.58392868e+01, 33., 1.12142859e+01, 3.07857151e+01, + 3.93928566e+01, 1.13750000e+01, 2.33214283e+01, 4.70892868e+01, + 5.05714302e+01, 1.84821434e+01, 1.56428576e+01, 3.10714283e+01, + 4.57857132e+01, 2.31071434e+01, 2.53750000e+01, 1.57142859e+01, + 1.68035717e+01, 1.31428576e+01, 6.37500000e+00, 7.57142878e+00, + 2.71071434e+01, 3.24285698e+01, 1.94642849e+01, 1.11071424e+01, + 1.37500000e+01, 6.57142878e+00, 3.73214293e+00, 1.58750000e+01, + 6.83571396e+01, 3.57500000e+01, 1.12857141e+01, 5.94107132e+01, + 1.02125000e+02, 1.42678576e+01, 2.75000000e+00, 1.84821434e+01, + 4.73750000e+01, 9.73214245e+00, 2.98214293e+00, 5.04642868e+01, + 1.19535713e+02, 3.58035698e+01, 4.46428585e+00, 2.03750000e+01, + 6.50357132e+01, 1.82321434e+01, 5.69642878e+00, 2.38750000e+01, + 5.83214302e+01, 3.11607151e+01, 6.66071415e+00, 9.23214245e+00, + 3.49642868e+01, 2.72500000e+01, 1.46607141e+01, 1.25000000e+01, + 1.46607141e+01, 1.94285717e+01, 1.67500000e+01, 1.75357151e+01, + 1.77142849e+01, 1.97857151e+01, 1.68750000e+01, 6.12500000e+00, + 2.78571434e+01, 6.91071415e+00, 1.75000000e+00, 5.69642878e+00, + 3.12857151e+01, 1.30178576e+01, 2.53571439e+00, 1.69107151e+01, + 1.14160713e+02, 3.67142868e+01, 1.51785719e+00, 7.32142878e+00, + 5.34464302e+01, 2.58392849e+01, 2.35714293e+00, 9.92857170e+00, + 1.13875000e+02, 8.99464264e+01, 7.60714293e+00, 4.64285707e+00, + 3.85357132e+01, 4.01964302e+01, 5.35714293e+00, 7.25000000e+00, + 3.70535698e+01, 8.06785736e+01, 4.54285698e+01, 8.32142830e+00, + 1.41964283e+01, 3.26071434e+01, 1.60178566e+01, 34., + 3.13529415e+01, 2.92941170e+01, 16., 3.67647052e+00, + 1.58823526e+00, 1.15588236e+01, 30., 4.01176453e+01, 73., + 6.46176453e+01, 3.05882359e+01, 1.04411764e+01, 1.93823528e+01, + 4.13235283e+01, 3.07647057e+01, 1.87941170e+01, 5.39705887e+01, + 7.10882339e+01, 5.75588226e+01, 4.85294113e+01, 7.57058792e+01, + 3.94117661e+01, 9.94117641e+00, 2.47058821e+00, 1.54411764e+01, + 2.61764698e+01, 2.97058830e+01, 9.05882339e+01, 9.85000000e+01, + 8.85294151e+00, 6.76470578e-01, 2.76176472e+01, 4.29705887e+01, + 3.97352943e+01, 2.07352943e+01, 5.29411745e+00, 2.44117641e+00, + 4.26470566e+00, 1.24705887e+01, 2.58823528e+01, 5.44705887e+01, + 7.72352905e+01, 5.68529396e+01, 1.37058821e+01, 3.52941179e+00, + 6.08823538e+00, 1.11176472e+01, 1.15588236e+01, 4.42941170e+01, + 90., 9.52941208e+01, 3.59117661e+01, 8.14705849e+00, + 2.44117641e+00, 3.85294127e+00, 9.61764717e+00, 3.03235302e+01, + 3.90294113e+01, 5.40882339e+01, 7.52647095e+01, 2.58235302e+01, + 9.41176474e-01, 1.67647064e+00, 1.66176472e+01, 6.42941208e+01, + 6.85882339e+01, 2.82941170e+01, 4.70588255e+00, 2.14705873e+00, + 2.52941179e+00, 6.85294104e+00, 1.06470585e+01, 4.20294113e+01, + 8.41470566e+01, 6.81470566e+01, 1.79117641e+01, 4.26470566e+00, + 5.32352924e+00, 5.73529434e+00, 1.98823528e+01, 2.24411774e+01, + 5.50294113e+01, 7.67352905e+01, 2.54117641e+01, 4.58823538e+00, + 6.11764717e+00, 1.72352943e+01, 2.35294113e+01, 1.76470585e+01, + 2.29117641e+01, 6.36470604e+01, 4.58235283e+01, 3., + 2.26470590e+00, 14., 9.35294151e+00, 8.66470566e+01, + 8.24117661e+01, 1.59117651e+01, 3.79411769e+00, 8.35294151e+00, + 4.14705896e+00, 2.47058821e+00, 9.97058868e+00, 5.95588226e+01, + 9.28529434e+01, 2.46470585e+01, 7.94117641e+00, 7.26470566e+00, + 8.38235283e+00, 8.05882359e+00, 1.41176472e+01, 1.73823528e+01, + 7.31764679e+01, 5.25294113e+01, 8.29411793e+00, 6.55882359e+00, + 1.35882349e+01, 2.47058830e+01, 1.29705887e+01, 4.73529434e+00, + 4.20588226e+01, 9.71176453e+01, 2.12058830e+01, 1.88235295e+00, + 4.97058821e+00, 1.81764698e+01, 1.30892859e+01, 3.63035698e+01, + 8.55357170e+00, 1.69642854e+00, 1.73214281e+00, 6.60714293e+00, + 1.03571424e+01, 7.46428585e+00, 1.27321424e+01, 1.56250000e+01, + 1.17678576e+01, 4.23214293e+00, 4.16071415e+00, 9.12500000e+00, + 1.40178576e+01, 1.37678576e+01, 1.11964283e+01, 9.35714245e+00, + 1.82678566e+01, 1.95000000e+01, 4.55357122e+00, 4.82142878e+00, + 8.64285755e+00, 1.34107141e+01, 4.05357122e+00, 1.91071427e+00, + 1.33214283e+01, 7.61250000e+01, 2.01428566e+01, 2.39285707e+00, + 2.62500000e+00, 5.80357122e+00, 5.53571415e+00, 1.05250000e+02, + 8.16428604e+01, 7.67857134e-01, 2.67857134e-01, 6.62500000e+00, + 1.37857141e+01, 3.12500000e+00, 3.80357146e+00, 5.07857132e+01, + 1.20375000e+02, 1.71071434e+01, 1.16071427e+00, 3.67857146e+00, + 1.15892859e+01, 7.16071415e+00, 2.32142854e+00, 7.07142878e+00, + 1.19160713e+02, 9.25535736e+01, 1.92857146e+00, 2.05357146e+00, + 9.10714245e+00, 9.42857170e+00, 5.23214293e+00, 1.58928573e+00, + 5.98928566e+01, 1.18571426e+02, 6.51785707e+00, 7.85714269e-01, + 9.64285755e+00, 3.50357132e+01, 3.67857146e+00, 4.64464302e+01, + 7.06250000e+01, 3.12500000e+00, 1.60714281e+00, 3.14107151e+01, + 6.42500000e+01, 5.32142878e+00, 3.35714293e+00, 2.88750000e+01, + 1.14821426e+02, 2.16964283e+01, 1.89285719e+00, 1.17321424e+01, + 6.94642868e+01, 1.94821434e+01, 3.58928561e+00, 7.23214293e+00, + 9.65892868e+01, 5.50178566e+01, 1.30357146e+00, 4.26785707e+00, + 7.73750000e+01, 6.60535736e+01, 5.48214293e+00, 2.33928561e+00, + 3.14464283e+01, 4.40357132e+01, 1.67857146e+00, 1.71428573e+00, + 6.58571396e+01, 1.14339287e+02, 2.82142854e+00, 5.41071415e+00, + 1.05892859e+01, 2.94642854e+00, 3.46428561e+00, 4.56250000e+01, + 9.38928604e+01, 1.02142859e+01, 3.87500000e+00, 4.25000000e+00, + 1.65535717e+01, 6.19642878e+00, 4.01785707e+00, 2.42857151e+01, + 1.07089287e+02, 3.91071434e+01, 4.01785707e+00, 2.41071439e+00, + 1.32321424e+01, 1.00178576e+01, 2.66071439e+00, 9.21428585e+00, + 1.03839287e+02, 8.50178604e+01, 6.64285707e+00, 2.08928561e+00, + 4.41071415e+00, 7.17857122e+00, 2.41071439e+00, 5.75000000e+00, + 6.77500000e+01, 7.96964264e+01, 1.25423727e+01, 1.17559319e+02, + 2.28305092e+01, 3.32203388e+00, 5.28813553e+00, 4.31355934e+01, + 9.20339012e+00, 2.98305082e+00, 1.47796612e+01, 1.31576279e+02, + 1.95254230e+01, 2.54237294e+00, 8.79660988e+00, 1.06966103e+02, + 13., 4.77966118e+00, 5.50847435e+00, 4.93220329e+01, + 7.11864424e+00, 2.15254235e+00, 1.71186447e+01, 1.44338989e+02, + 1.34237289e+01, 1.86440682e+00, 5.50847435e+00, 2.33559322e+01, + 6.52542353e+00, 4.38983059e+00, 7.08474588e+00, 4.98644066e+01, + 5.98305082e+00, 1.88135588e+00, 6.86440659e+00, 3.38813553e+01, + 1.39152546e+01, 3.76271176e+00, 6.22033882e+00, 4.43220329e+01, + 1.16271191e+01, 3.69491529e+00, 1.48813562e+01, 1.45322037e+02, + 2.32033901e+01, 2.74576283e+00, 8.05084705e+00, 7.94067764e+01, + 1.16440678e+01, 1.83050847e+00, 1.31016951e+01, 1.42694916e+02, + 2.15593224e+01, 2.03389835e+00, 1.44237289e+01, 1.29389832e+02, + 1.02711868e+01, 9.66101706e-01, 5.64406776e+00, 4.64576263e+01, + 9.74576283e+00, 5.81355953e+00, 2.28983059e+01, 1.40694916e+02, + 1.28135595e+01, 1.55932200e+00, 4.69491529e+00, 7.06779671e+00, + 8.25423717e+00, 4.62711859e+00, 4.55932188e+00, 1.07457628e+01, + 6.83050871e+00, 4.32203388e+00, 7.23728800e+00, 3.68305092e+01, + 1.13389826e+01, 4.79661036e+00, 7.42372894e+00, 50., + 1.10677967e+01, 3.69491529e+00, 1.89152546e+01, 1.39881363e+02, + 2.12881355e+01, 3.50847459e+00, 8.91525459e+00, 6.83898315e+01, + 1.23389826e+01, 2.40677977e+00, 1.33898306e+01, 1.14508476e+02, + 2.61694908e+01, 1.31525421e+01, 2.34406776e+01, 8.76949158e+01, + 8.88135624e+00, 3.28813553e+00, 3.08474565e+00, 3.13559318e+00, + 3.94915247e+00, 3.79661012e+00, 2.96610165e+00, 3.08474565e+00, + 3.10169482e+00, 2.84745765e+00, 4.16949129e+00, 5.37288141e+00, + 6.16949129e+00, 4.54237270e+00, 4.57627106e+00, 9.27118683e+00, + 4.28813553e+00, 3.01694918e+00, 9.10169506e+00, 2.59322033e+01, + 8.06779671e+00, 3.72881365e+00, 8.01694870e+00, 2.58983059e+01, + 6.25423717e+00, 3.11864400e+00, 2.13728809e+01, 7.69152527e+01, + 1.36440678e+01, 5.57627106e+00, 7.77966118e+00, 2.25423737e+01, + 5.08474588e+00, 5.45762730e+00, 4.36206913e+00, 2.01724148e+00, + 2.43103456e+00, 6.03965530e+01, 9.41724167e+01, 5.08620691e+00, + 2., 3.20689654e+00, 9.12068939e+00, 7.58620679e-01, + 1.08620691e+00, 1.07206894e+02, 1.11103447e+02, 2.08620691e+00, + 2.25862074e+00, 9.93103409e+00, 3.92413788e+01, 1.22413790e+00, + 1.24137926e+00, 3.22586212e+01, 1.43448277e+01, 5.68965495e-01, + 3.32758617e+00, 5.85517235e+01, 3.04137936e+01, 1.46551728e+00, + 1.34482753e+00, 6.86206913e+00, 2.44827580e+00, 4.13793117e-01, + 9.84482765e+00, 8.44137955e+01, 6.68965530e+00, 2.10344839e+00, + 1.77586210e+00, 4.93275871e+01, 1.27775864e+02, 1.33448277e+01, + 1.77586210e+00, 3.37931037e+00, 2.63965511e+01, 2.58620691e+00, + 8.79310369e-01, 5.99310341e+01, 1.23672417e+02, 6.51724148e+00, + 3.34482765e+00, 1.45862064e+01, 1.10189651e+02, 4.98275852e+00, + 5.86206913e-01, 7.51724148e+00, 1.11034479e+01, 7.41379321e-01, + 2.48275852e+00, 6.98448257e+01, 59., 5.70689678e+00, + 2.20689654e+00, 5.89655161e+00, 8.46551704e+00, 2.22413802e+00, + 6.70689678e+00, 6.17931023e+01, 5.34482765e+00, 2.39655161e+00, + 1.87931037e+00, 1.85000000e+01, 1.26689651e+02, 4.38448257e+01, + 1.98275864e+00, 2.08620691e+00, 3.19137936e+01, 7.39655161e+00, + 9.31034505e-01, 1.26896553e+01, 1.22413795e+02, 3.75689659e+01, + 3.22413802e+00, 9.58620644e+00, 1.27206894e+02, 2.86034489e+01, + 4.65517253e-01, 1.65517247e+00, 9.03448296e+00, 2.74137926e+00, + 1.37931037e+00, 2.71724129e+01, 7.18965530e+01, 1.43448277e+01, + 1.50000000e+00, 3.06896544e+00, 1.00517244e+01, 6.63793087e+00, + 4.15517235e+00, 2.02413788e+01, 2.87931037e+00, 3.18965507e+00, + 1.96551728e+00, 8.05172443e+00, 1.03551727e+02, 6.05689659e+01, + 2.53448272e+00, 1.20689654e+00, 1.43965521e+01, 7.62068987e+00, + 6.72413766e-01, 1.94827580e+00, 1.13620689e+02, 9.63103485e+01, + 2.51724148e+00, 3.24137926e+00, 8.64827576e+01, 5.60862083e+01, + 3.62068951e-01, 3.10344815e-01, 9.05172443e+00, 1.31896553e+01, + 1.77586210e+00, 4.65517235e+00, 5.79827576e+01, 5.31551743e+01, + 1., 4.31034476e-01, 3.86206889e+00, 6.63793087e+00, + 3.01724148e+00, 4.70689678e+00, 1.89500008e+01, 1.46999998e+01, + 11., 4.60374985e+01, 1.58125000e+01, 9.01249981e+00, + 1.30874996e+01, 2.08875008e+01, 3.13750000e+01, 1.22500000e+01, + 2.03374996e+01, 1.08400002e+02, 3.07000008e+01, 6.25000000e+00, + 1.38625002e+01, 7.43125000e+01, 3.06875000e+01, 1.28625002e+01, + 2.51749992e+01, 9.26875000e+01, 1.50375004e+01, 4.51249981e+00, + 1.55249996e+01, 9.33750000e+01, 2.18875008e+01, 1.03500004e+01, + 2.51124992e+01, 6.74124985e+01, 9.83749962e+00, 5.22499990e+00, + 1.90249996e+01, 7.71250000e+01, 2.13374996e+01, 1.06374998e+01, + 2.26625004e+01, 1.12987503e+02, 2.47999992e+01, 5.27500010e+00, + 1.47875004e+01, 6.82500000e+01, 2.81625004e+01, 7.93750000e+00, + 2.51124992e+01, 1.11750000e+02, 1.90249996e+01, 2.84999990e+00, + 1.73374996e+01, 1.09425003e+02, 3.00249996e+01, 1.03374996e+01, + 3.15000000e+01, 1.02937500e+02, 1.29750004e+01, 3.62500000e+00, + 27., 1.13612503e+02, 2.53250008e+01, 1.45874996e+01, + 2.74624996e+01, 5.13875008e+01, 7.53749990e+00, 6.25000000e+00, + 3.49625015e+01, 9.73625031e+01, 2.12000008e+01, 1.01999998e+01, + 1.75874996e+01, 9.00250015e+01, 2.55874996e+01, 7.87500000e+00, + 1.51999998e+01, 7.90625000e+01, 2.87374992e+01, 1.02500000e+01, + 2.26499996e+01, 8.50625000e+01, 1.24125004e+01, 3.98749995e+00, + 2.40375004e+01, 1.08849998e+02, 3.40250015e+01, 1.36625004e+01, + 1.60375004e+01, 5.04124985e+01, 9.07499981e+00, 7.58750010e+00, + 36., 1.11387497e+02, 1.95125008e+01, 1.43874998e+01, + 1.19250002e+01, 1.16000004e+01, 7.75000000e+00, 9.96249962e+00, + 2.47875004e+01, 4.46124992e+01, 1.68624992e+01, 8.89999962e+00, + 1.07749996e+01, 3.97249985e+01, 1.40874996e+01, 1.10124998e+01, + 1.81875000e+01, 5.85000000e+01, 2.99750004e+01, 1.16999998e+01, + 9.87500000e+00, 2.71124992e+01, 7.50000000e+00, 6.87500000e+00, + 2.42875004e+01, 8.84499969e+01, 2.08624992e+01, 1.65249996e+01, + 10., 8.82499981e+00, 7.05000019e+00, 8.27499962e+00, + 1.50749998e+01, 3.39124985e+01, 1.16625004e+01, 1.26750002e+01, + 9.97500038e+00, 8.18750000e+00, 6.16249990e+00, 6.55000019e+00, + 8.37500000e+00, 9.72500038e+00, 4.97222233e+00, 2.97222233e+00, + 4.08333349e+00, 7.83333349e+00, 5.97222233e+00, 5.11111116e+00, + 6.50000000e+00, 7.22222233e+00, 1.11111107e+01, 6.30555534e+00, + 1.78611107e+01, 5.30833321e+01, 2.33888893e+01, 1.18888893e+01, + 1.86944447e+01, 2.87777786e+01, 4.27500000e+01, 5.88888884e+00, + 3.21111107e+01, 7.12222214e+01, 3.60555573e+01, 1.19722223e+01, + 4.65277786e+01, 8.92777786e+01, 3.70277786e+01, 7.72222233e+00, + 2.33055553e+01, 7.24166641e+01, 5.73055573e+01, 1.34722223e+01, + 3.65833321e+01, 7.48888855e+01, 7.47222233e+00, 3.55555558e+00, + 7.25000000e+00, 2.49722214e+01, 1.67777786e+01, 4.80555534e+00, + 5.75000000e+00, 1.58055553e+01, 2.99722214e+01, 7.52777767e+00, + 2.67777786e+01, 8.37222214e+01, 3.50555573e+01, 6.75000000e+00, + 4.03888893e+01, 9.83611145e+01, 5.15277786e+01, 2.43611107e+01, + 4.77777786e+01, 6.93333359e+01, 2.95833340e+01, 2.06944447e+01, + 6.94166641e+01, 1.02027779e+02, 3.41388893e+01, 2.86111107e+01, + 2.80555553e+01, 6.43333359e+01, 7.92777786e+01, 5.29444427e+01, + 3.66111107e+01, 48., 2.46388893e+01, 3.91666675e+00, + 4.30555534e+00, 29., 3.02222214e+01, 5.83333349e+00, + 6.08333349e+00, 3.71944427e+01, 6.75000000e+01, 1.72500000e+01, + 1.88888893e+01, 7.22500000e+01, 4.87777786e+01, 1.27222223e+01, + 1.94166660e+01, 88., 5.68611107e+01, 3.64444427e+01, + 3.33888893e+01, 4.33055573e+01, 2.90555553e+01, 2.79444447e+01, + 3.20833321e+01, 4.78333321e+01, 3.25555573e+01, 2.51666660e+01, + 2.66666660e+01, 60., 7.10555573e+01, 5.50833321e+01, + 1.99166660e+01, 2.81666660e+01, 3.13333340e+01, 8.36111069e+00, + 2.80555558e+00, 1.41666670e+01, 2.53611107e+01, 1.01944447e+01, + 4.05555534e+00, 2.53611107e+01, 5.27777786e+01, 2.50555553e+01, + 1.06111107e+01, 2.75833340e+01, 3.77500000e+01, 2.45833340e+01, + 1.56944447e+01, 3.17500000e+01, 3.48055573e+01, 2.12500000e+01, + 2.47500000e+01, 4.33888893e+01, 2.52222214e+01, 1.75277786e+01, + 2.05277786e+01, 2.81388893e+01, 2.23888893e+01, 7.05555534e+00, + 1.83333340e+01, 8.15000000e+01, 4.82222214e+01, 9.41666698e+00, + 1.51944447e+01, 4.91388893e+01, 1.87500000e+00, 5.59749985e+01, + 2.68999996e+01, 2.37500000e+00, 7.69999981e+00, 3.02000008e+01, + 6.72499990e+00, 1.10000002e+00, 2.08250008e+01, 1.07250000e+02, + 1.99750004e+01, 4.87500000e+00, 4.92500019e+00, 1.72250004e+01, + 6.22499990e+00, 5.55000019e+00, 5.83750000e+01, 8.93249969e+01, + 2.27000008e+01, 5.44999981e+00, 3.75000000e+00, 7.50000000e+00, + 5.32499981e+00, 1.27749996e+01, 4.10499992e+01, 4.14500008e+01, + 1.38500004e+01, 4.87500000e+00, 3.87500000e+00, 3.42499995e+00, + 3.37500000e+00, 9.64999962e+00, 6.75000012e-01, 1.58249998e+01, + 8.75000000e+00, 2.92499995e+00, 5.06749992e+01, 9.57249985e+01, + 5.27500010e+00, 1.74999997e-01, 3.19249992e+01, 9.84749985e+01, + 1.28750000e+01, 5.62500000e+00, 1.86749992e+01, 2.16250000e+01, + 2.45000005e+00, 1.57500005e+00, 1.12349998e+02, 1.23224998e+02, + 1.31250000e+01, 5.19999981e+00, 8.69999981e+00, 1.12250004e+01, + 5.82499981e+00, 1.26250000e+01, 8.27500000e+01, 5.75000000e+01, + 1.70249996e+01, 3.84999990e+00, 3.50000000e+00, 4., + 4.82499981e+00, 1.98500004e+01, 1.87500000e+00, 4.12500000e+00, + 3.37500000e+00, 6.87500000e+00, 1.05974998e+02, 8.79250031e+01, + 2.90000010e+00, 5.50000012e-01, 2.12500000e+01, 3.44500008e+01, + 6.34999990e+00, 9.94999981e+00, 6.43249969e+01, 3.09750004e+01, + 5.74999988e-01, 5.00000000e-01, 131., 1.09849998e+02, + 5.97499990e+00, 3.97499990e+00, 8.02499962e+00, 6.52500010e+00, + 3.15000010e+00, 9.80000019e+00, 1.09650002e+02, 4.98499985e+01, + 1.06250000e+01, 3.77500010e+00, 4.05000019e+00, 5.07499981e+00, + 6.94999981e+00, 2.47749996e+01, 3.27500010e+00, 2.09999990e+00, + 3.72499990e+00, 2.75499992e+01, 1.09300003e+02, 3.06749992e+01, + 2.09999990e+00, 2.20000005e+00, 1.22250004e+01, 4.94999981e+00, + 3.82500005e+00, 1.66499996e+01, 8.40749969e+01, 1.78250008e+01, + 4.74999994e-01, 2.07500005e+00, 1.28024994e+02, 4.12500000e+01, + 4.12500000e+00, 4.59999990e+00, 6.69999981e+00, 2.87500000e+00, + 1.64999998e+00, 2.10750008e+01, 1.06425003e+02, 2.63999996e+01, + 4.30000019e+00, 3., 4.32499981e+00, 3.57500005e+00, + 5.17500019e+00, 2.65750008e+01, 2.18431377e+01, 1.32352943e+01, + 9.25490189e+00, 1.08431368e+01, 1.20588236e+01, 7.66666651e+00, + 7.62745094e+00, 1.65686283e+01, 8.31372547e+00, 1.84901962e+01, + 1.41960783e+01, 1.06666670e+01, 1.25294113e+01, 2.38823528e+01, + 1.15098038e+01, 7.58823538e+00, 2.25294113e+01, 4.33137245e+01, + 9.76470566e+00, 2.72549009e+00, 2.40784321e+01, 5.18039207e+01, + 8.50980377e+00, 3.92156863e+00, 1.54901962e+01, 3.32549019e+01, + 7.39215708e+00, 4.07843161e+00, 2.39607849e+01, 3.45098038e+01, + 4.72549009e+00, 3.29411769e+00, 5.50392151e+01, 6.08627434e+01, + 1.63725491e+01, 1.14509802e+01, 3.40784302e+01, 2.72745094e+01, + 8.90196037e+00, 1.06862745e+01, 2.89803925e+01, 2.83529415e+01, + 2.23725491e+01, 1.71372547e+01, 2.30196075e+01, 40., + 3.31176453e+01, 2.65098038e+01, 4.90784302e+01, 4.07450981e+01, + 1.15882349e+01, 1.38039217e+01, 4.25686264e+01, 6.61372528e+01, + 3.55882339e+01, 2.56274509e+01, 5.25882339e+01, 5.30588226e+01, + 8., 1.09215689e+01, 6.88627472e+01, 7.59607849e+01, + 1.41764708e+01, 1.40196075e+01, 5.34901962e+01, 9.41764679e+01, + 1.70196075e+01, 5.74509811e+00, 4.73333321e+01, 7.40392151e+01, + 8.68627453e+00, 5.41176462e+00, 5.22352943e+01, 8.46666641e+01, + 4.49215698e+01, 2.01568623e+01, 1.95882359e+01, 3.95882339e+01, + 3.06274509e+01, 2.63921566e+01, 4.45882339e+01, 3.49411774e+01, + 3.40196075e+01, 4.38235283e+01, 4.80980377e+01, 3.53921585e+01, + 3.60196075e+01, 3.55490189e+01, 7.05882339e+01, 4.02156868e+01, + 1.12941179e+01, 4.39411774e+01, 9.49607849e+01, 5.06078415e+01, + 9.19607830e+00, 2.01176472e+01, 1.78235302e+01, 4.89607849e+01, + 1.17058821e+01, 5.27450991e+00, 3.27450981e+01, 7.95098038e+01, + 1.29215689e+01, 3.98039222e+00, 3.62352943e+01, 1.05313728e+02, + 6.30588226e+01, 1.55294113e+01, 3.08823528e+01, 7.48039246e+01, + 3.01568623e+01, 7.88235283e+00, 3.86078415e+01, 8.41960754e+01, + 74., 3.39607849e+01, 3.58627434e+01, 4.25294113e+01, + 2.92156868e+01, 1.84313717e+01, 4.89019623e+01, 5.44901962e+01, + 1.81176472e+01, 2.89411774e+01, 6.81764679e+01, 6.21176453e+01, + 8.35294151e+00, 1.35490198e+01, 4.34146357e+00, 1.48536587e+01, + 2.87073174e+01, 7.29268312e+00, 3.07317066e+00, 2.86341457e+01, + 7.51707306e+01, 3.83170738e+01, 3.80487800e+00, 1.71219521e+01, + 3.49756088e+01, 6.63414621e+00, 3.43902445e+00, 4.22195129e+01, + 9.63414612e+01, 1.50731707e+01, 4.09756088e+00, 2.12682934e+01, + 2.66585369e+01, 5.48780489e+00, 6.97560978e+00, 3.67560959e+01, + 5.24634132e+01, 6.63414621e+00, 3.51219511e+00, 1.13170729e+01, + 1.12682924e+01, 4.26829290e+00, 7.56097555e+00, 1.33170729e+01, + 1.28048782e+01, 5.04878044e+00, 2.12195129e+01, 2.20975609e+01, + 2.40975609e+01, 2.81951218e+01, 1.94878044e+01, 4.33414650e+01, + 9.99512177e+01, 7.99024353e+01, 7.12195110e+00, 1.40243902e+01, + 2.45121956e+01, 1.37804880e+01, 1.53902435e+01, 8.66829300e+01, + 1.14536583e+02, 2.55121956e+01, 7.78048801e+00, 2.23170738e+01, + 2.01951218e+01, 5.73170710e+00, 1.16341467e+01, 1.11853661e+02, + 1.12390244e+02, 9.56097603e+00, 7.95121956e+00, 2.36585369e+01, + 1.60731716e+01, 4.70731688e+00, 2.01463413e+01, 1.08829269e+02, + 6.40731735e+01, 6.24390221e+00, 5.65365868e+01, 7.00975647e+01, + 2.55609760e+01, 1.62195129e+01, 2.53414631e+01, 3.39512177e+01, + 1.49024391e+01, 1.78536587e+01, 1.55365858e+01, 2.24146347e+01, + 3.03414631e+01, 2.35365849e+01, 2.69268284e+01, 3.07317066e+01, + 2.41219521e+01, 1.51219511e+01, 1.13414631e+01, 1.81219521e+01, + 2.53658543e+01, 24., 2.57073174e+01, 4.13902435e+01, + 3.72682915e+01, 1.35121956e+01, 1.32195120e+01, 2.32682934e+01, + 13., 1.77804871e+01, 7.23170700e+01, 9.09756088e+01, + 2.81463413e+01, 8.95121956e+00, 2.26829262e+01, 1.13268295e+02, + 6.27804871e+01, 4.70731688e+00, 1.08780489e+01, 4.82195129e+01, + 2.04878044e+01, 3.19512200e+00, 8., 7.61463394e+01, + 8.17073135e+01, 1.53170729e+01, 1.15853662e+01, 3.99024391e+01, + 2.92439022e+01, 6.26829290e+00, 7.87804890e+00, 2.83170738e+01, + 6.21219521e+01, 3.67317085e+01, 1.38048782e+01, 2.05853653e+01, + 3.19024391e+01, 1.87560978e+01, 1.39756098e+01, 1.77560978e+01, + 2.69512196e+01, 6.22439041e+01, 4.43902435e+01, 2.26341457e+01, + 1.80243912e+01, 2.40243912e+01, 1.88095236e+00, 5.10952377e+01, + 1.13738098e+02, 2.14047623e+01, 3.19047618e+00, 1.83333337e+00, + 1.61904764e+00, 8.33333313e-01, 4.33333349e+00, 6.99047623e+01, + 9.22380981e+01, 1.98809528e+01, 4.50000000e+00, 5.52380943e+00, + 3.52380943e+00, 2.07142854e+00, 6.85714293e+00, 4.23571434e+01, + 6.23333321e+01, 17., 4.40476179e+00, 4.42857122e+00, + 2.90476179e+00, 5.97619057e+00, 1.02857141e+01, 3.31428566e+01, + 3.27857132e+01, 8.57142830e+00, 3.57142854e+00, 2.54761910e+00, + 2.16666675e+00, 4.26190472e+00, 5.90476179e+00, 7.75238113e+01, + 1.00404762e+02, 8.90476227e+00, 1.57142854e+00, 4.71428585e+00, + 8.78571415e+00, 5.38095236e+00, 2.45000000e+01, 1.27714287e+02, + 8.79523773e+01, 8.61904716e+00, 6.28571415e+00, 1.76190472e+01, + 9.66666698e+00, 3.28571439e+00, 3.20714302e+01, 1.09476189e+02, + 6.45952377e+01, 1.69761906e+01, 1.45952377e+01, 3.05238094e+01, + 9.14285755e+00, 8.09523773e+00, 2.22857151e+01, 6.49523773e+01, + 4.40952377e+01, 1.26904764e+01, 5.26190472e+00, 9.54761887e+00, + 6.66666651e+00, 1.30238094e+01, 2.82380943e+01, 3.35000000e+01, + 1.16428576e+01, 3.88095236e+00, 9.88095284e+00, 2.13095245e+01, + 2.40238094e+01, 2.15238094e+01, 78., 9.71666641e+01, + 1.20952377e+01, 4.45238113e+00, 2.78095245e+01, 5.05000000e+01, + 2.43333340e+01, 1.57380953e+01, 1.07428574e+02, 1.07404762e+02, + 2.10714283e+01, 1.19523811e+01, 3.99523811e+01, 4.15952377e+01, + 1.27619047e+01, 1.16904764e+01, 5.42142868e+01, 6.07142868e+01, + 2.43809528e+01, 1.00238094e+01, 2.03333340e+01, 2.03095245e+01, + 1.24285717e+01, 1.87619057e+01, 4.62857132e+01, 2.40476189e+01, + 1.08809528e+01, 1.39047623e+01, 3.00476189e+01, 1.94047623e+01, + 1.01190472e+01, 1.85952377e+01, 8.96666641e+01, 3.92857132e+01, + 1.39761906e+01, 2.41666660e+01, 5.79285698e+01, 2.99761906e+01, + 9.04761887e+00, 2.11666660e+01, 1.14238098e+02, 4.19285698e+01, + 1.13809528e+01, 1.73095245e+01, 5.48333321e+01, 2.21428566e+01, + 1.00714283e+01, 2.20952377e+01, 6.75476227e+01, 3.63333321e+01, + 1.48809528e+01, 7.59523821e+00, 2.74523811e+01, 1.56666670e+01, + 1.65714283e+01, 2.37619057e+01, 2.52830181e+01, 1.03584909e+01, + 3.56603765e+00, 8.50943375e+00, 1.51320753e+01, 7.71698093e+00, + 1.26226416e+01, 1.32264147e+01, 1.04584908e+02, 1.63396225e+01, + 3.03773594e+00, 15., 2.87924538e+01, 8.81132030e+00, + 1.07547169e+01, 7.23207550e+01, 4.75283012e+01, 5.37735844e+00, + 7., 6.09811325e+01, 7.68301849e+01, 7.05660391e+00, + 1.28679247e+01, 3.72452812e+01, 1.63207550e+01, 5.37735844e+00, + 7.77358484e+00, 4.85660362e+01, 3.66037750e+01, 3.79245281e+00, + 3.77358484e+00, 1.54716978e+01, 4.34150925e+01, 9.35849094e+00, + 3.41509438e+00, 1.47735853e+01, 2.70566044e+01, 9.03773594e+00, + 1.84528294e+01, 3.16603775e+01, 1.18320755e+02, 8.11320782e+00, + 2.56603765e+00, 2.91698112e+01, 5.54339638e+01, 8.01886749e+00, + 1.12641506e+01, 1.07924530e+02, 3.77735863e+01, 2.94339633e+00, + 8.15094376e+00, 9.73962250e+01, 1.17396225e+02, 8.81132030e+00, + 7.43396235e+00, 2.98490562e+01, 2.11886787e+01, 4.11320734e+00, + 6.98113203e+00, 2.59811325e+01, 2.01886787e+01, 4.75471687e+00, + 4.75471687e+00, 2.27358494e+01, 8.02264175e+01, 6.92452812e+00, + 3.41509438e+00, 2.00377350e+01, 3.19433956e+01, 5.81132078e+00, + 8.90566063e+00, 5.86981125e+01, 1.16679245e+02, 2.98113203e+00, + 3.03773594e+00, 6.23396225e+01, 9.26415100e+01, 3.94339633e+00, + 4.86792469e+00, 9.45094376e+01, 38., 3.09433961e+00, + 3.64150953e+00, 9.26415100e+01, 1.19018867e+02, 4.92452812e+00, + 3.35849047e+00, 2.80377350e+01, 1.59622641e+01, 4.54716969e+00, + 6.28301907e+00, 8.41509438e+00, 8.07547188e+00, 5.28301907e+00, + 4.56603765e+00, 1.65471706e+01, 9.23773575e+01, 4.84905672e+00, + 2.75471687e+00, 1.50566034e+01, 2.43773594e+01, 3.22641516e+00, + 4.20754719e+00, 6.68301849e+01, 7.22075500e+01, 4.45283031e+00, + 6.03773594e+00, 7.42641525e+01, 1.02867928e+02, 4.28301907e+00, + 2.05660367e+00, 4.39245300e+01, 3.33207550e+01, 3.94339633e+00, + 3.67924523e+00, 4.43962250e+01, 7.61320724e+01, 7.54716969e+00, + 3.47169805e+00, 2.35471706e+01, 9.41509438e+00, 3.77358484e+00, + 3.73584914e+00, 5.03773594e+00, 5.58490562e+00, 4.41509438e+00, + 3.84905672e+00, 7.75471687e+00, 3.24358964e+00, 1.47435892e+00, + 1.42307687e+00, 2.93589735e+00, 3.96153855e+00, 2.08974361e+00, + 2.44871783e+00, 2.89743590e+00, 1.97435892e+00, 1.24358976e+00, + 1.26923072e+00, 3.50000000e+00, 4.66666651e+00, 3.66666675e+00, + 3.42307687e+00, 2.33333325e+00, 1.83333337e+00, 1.16666663e+00, + 1.06410253e+00, 2.39743590e+00, 4.91025639e+00, 3.46153855e+00, + 2.75641036e+00, 2.50000000e+00, 1.56410253e+00, 8.84615362e-01, + 8.97435904e-01, 1.52564108e+00, 3.24358964e+00, 2.33333325e+00, + 1.79487181e+00, 2.01282048e+00, 2.88333340e+01, 1.81153851e+01, + 1.90256405e+01, 3.26025658e+01, 4.40769234e+01, 4.07179489e+01, + 4.23846169e+01, 3.81794853e+01, 2.92179489e+01, 2.07435894e+01, + 2.38076916e+01, 4.04358978e+01, 5.53333321e+01, 5.74487190e+01, + 5.15000000e+01, 4.23205147e+01, 2.59743595e+01, 1.88461533e+01, + 2.21282043e+01, 3.38589745e+01, 5.38333321e+01, 6.31923065e+01, + 5.58717957e+01, 4.07692299e+01, 1.66538467e+01, 1.69230766e+01, + 2.26025639e+01, 3.19615383e+01, 4.98076935e+01, 4.92820511e+01, + 3.76666679e+01, 2.46538467e+01, 3.77051277e+01, 2.52820511e+01, + 2.38076916e+01, 40., 6.12692299e+01, 6.03076935e+01, + 5.64487190e+01, 5.18589745e+01, 4.13205147e+01, 3.03076916e+01, + 3.39487190e+01, 5.29871788e+01, 7.01666641e+01, 7.52307663e+01, + 7.61282043e+01, 6.53717957e+01, 3.25128212e+01, 3.10897427e+01, + 3.88846169e+01, 5.61410255e+01, 7.75897446e+01, 8.29487152e+01, + 7.59358978e+01, 5.46666679e+01, 1.87179489e+01, 2.10384617e+01, + 3.16794872e+01, 5.78846169e+01, 7.63717957e+01, 7.20384598e+01, + 5.45384598e+01, 2.98846149e+01, 2.85769234e+01, 2.39743595e+01, + 2.62179489e+01, 3.45000000e+01, 47., 5.17948723e+01, + 4.44358978e+01, 3.58717957e+01, 3.12179489e+01, 2.98461533e+01, + 4.05128212e+01, 5.17179489e+01, 6.19102554e+01, 6.18717957e+01, + 5.40256424e+01, 4.25000000e+01, 2.65512829e+01, 3.05641022e+01, + 5.34871788e+01, 7.39230804e+01, 7.14230804e+01, 5.95000000e+01, + 4.83333321e+01, 3.66025658e+01, 1.97435894e+01, 1.70256405e+01, + 4.75256424e+01, 8.16153870e+01, 6.56410294e+01, 4.07948723e+01, + 4.23461533e+01, 4.22435913e+01, 7.44794540e+01, 3.56164384e+00, + 2.75342464e+00, 1.13835621e+01, 20., 7.02739716e+00, + 2.27397251e+00, 27., 1.00794518e+02, 5.10958910e+00, + 1.98630142e+00, 7.82191772e+01, 1.19356163e+02, 6.04109573e+00, + 2.58904099e+00, 5.70821915e+01, 3.15479450e+01, 1.11095886e+01, + 3.15068483e+00, 3.57945213e+01, 3.81643829e+01, 3.16438365e+00, + 9.01369858e+00, 3.06301365e+01, 3.58767128e+01, 1.00273972e+01, + 2.06849313e+00, 1.47945201e+00, 1.75342464e+00, 3.19178081e+00, + 1.55616436e+01, 3.97534256e+01, 1.10356163e+02, 1.50958900e+01, + 2.78082180e+00, 1.04520550e+01, 3.10958900e+01, 1.00410957e+01, + 2.63013697e+00, 1.42054796e+01, 1.14356163e+02, 1.79041100e+01, + 2.95890403e+00, 3.59726028e+01, 1.26657532e+02, 2.67260265e+01, + 2.47945213e+00, 2.19452057e+01, 5.08767128e+01, 2.62191772e+01, + 5.02739716e+00, 9.21917820e+00, 3.27123299e+01, 4.63013697e+00, + 5.36986303e+00, 2.97123280e+01, 6.80958939e+01, 3.28767128e+01, + 5.52054787e+00, 2.80821919e+00, 2.38356161e+00, 2.15068483e+00, + 7.23287678e+00, 3.78082199e+01, 9.32876740e+01, 3.69589043e+01, + 4.20547962e+00, 7.58904123e+00, 2.34109592e+01, 1.18767128e+01, + 3.05479455e+00, 3.80821919e+00, 1.13616440e+02, 6.17260284e+01, + 3.20547938e+00, 8.02739716e+00, 1.26438354e+02, 8.90547943e+01, + 2.52054787e+00, 6.45205498e+00, 4.37945213e+01, 3.58219185e+01, + 9.43835640e+00, 3.46575332e+00, 4.27945213e+01, 2.88082199e+01, + 1.72602737e+00, 1.17397261e+01, 5.26301384e+01, 5.42054787e+01, + 1.40684929e+01, 2.71232867e+00, 1.10958910e+00, 6.16438329e-01, + 2.08219171e+00, 1.06986303e+01, 2.91232872e+01, 2.35753422e+01, + 2.02739716e+00, 4.65753412e+00, 1.85068493e+01, 1.41643839e+01, + 3.73972607e+00, 1.76712334e+00, 9.83424683e+01, 1.11013702e+02, + 2.95890403e+00, 2.60273981e+00, 7.67397232e+01, 9.25068512e+01, + 2.94520545e+00, 2.50684929e+00, 2.37671242e+01, 3.90547943e+01, + 7.90410948e+00, 3.53424668e+00, 5.56027412e+01, 1.03273972e+02, + 3.46575332e+00, 3.47945213e+00, 2.75205479e+01, 3.68219185e+01, + 1.48904114e+01, 2.78082180e+00, 2.27397251e+00, 6.15068483e+00, + 1.67123282e+00, 3.49315071e+00, 3.09523821e+00, 2.65079355e+00, + 2.66666675e+00, 3.06349206e+00, 3.07936502e+00, 1.95238090e+00, + 2., 2.92063498e+00, 4.85714293e+00, 3.28571439e+00, + 4.93650770e+00, 6.66666651e+00, 5.44444466e+00, 5.06349230e+00, + 6.47619057e+00, 6.42857122e+00, 5.84126997e+00, 3.06349206e+00, + 4.46031761e+00, 7.15873003e+00, 6.12698412e+00, 4.41269827e+00, + 6.39682531e+00, 6.15873003e+00, 3.85714293e+00, 2.85714293e+00, + 3.55555558e+00, 4.42857122e+00, 4.41269827e+00, 2.84126973e+00, + 3.34920645e+00, 3.93650794e+00, 1.86507931e+01, 1.32857141e+01, + 1.63174610e+01, 1.88095245e+01, 1.49523811e+01, 1.50634918e+01, + 1.70634918e+01, 1.90158730e+01, 2.91111107e+01, 2.26190472e+01, + 2.89365082e+01, 3.47777786e+01, 2.74603176e+01, 3.03174610e+01, + 3.38571434e+01, 3.64444427e+01, 2.86666660e+01, 2.26507931e+01, + 3.21904755e+01, 4.34285698e+01, 3.57142868e+01, 2.57460308e+01, + 3.03015881e+01, 3.31269836e+01, 1.79841270e+01, 1.87142849e+01, + 3.94603157e+01, 5.05079384e+01, 3.06984119e+01, 1.80793648e+01, + 1.72380943e+01, 1.94285717e+01, 1.98412704e+01, 2.08253975e+01, + 2.57142849e+01, 24., 1.70476189e+01, 1.89523811e+01, + 2.48412704e+01, 2.07460308e+01, 3.17301579e+01, 3.36349220e+01, + 4.40158730e+01, 5.34285698e+01, 3.90317459e+01, 3.13968258e+01, + 3.28412704e+01, 3.17301579e+01, 2.35079365e+01, 3.05873013e+01, + 6.93492050e+01, 1.18476189e+02, 6.03650780e+01, 2.50158730e+01, + 2.30476189e+01, 2.09841270e+01, 1.32698412e+01, 2.29047623e+01, + 1.31857147e+02, 1.60015869e+02, 4.24444427e+01, 1.03015871e+01, + 1.02698412e+01, 1.23174601e+01, 1.56984129e+01, 1.58730154e+01, + 1.84126987e+01, 2.63650799e+01, 2.07777786e+01, 1.87936516e+01, + 1.60158730e+01, 1.20634918e+01, 2.06349201e+01, 2.18571434e+01, + 4.29841270e+01, 9.89682541e+01, 5.16984138e+01, 2.43174610e+01, + 2.04444447e+01, 1.91746025e+01, 9.26984119e+00, 1.26984129e+01, + 7.48571396e+01, 1.63253967e+02, 9.86984100e+01, 1.26825399e+01, + 7.73015881e+00, 8.47619057e+00, 9.90476227e+00, 8.01587296e+00, + 1.14619049e+02, 1.63253967e+02, 5.87301598e+01, 5.34920645e+00, + 7.19047642e+00, 1.87142849e+01, 1.13589745e+01, 4.38461542e+00, + 5.12820530e+00, 2.76923084e+01, 3.35897446e+01, 5.23076916e+00, + 3.92307687e+00, 1.23333330e+01, 2.05897427e+01, 1.93846149e+01, + 3.18461533e+01, 1.78974361e+01, 6.56410265e+00, 7.46153831e+00, + 2.58974361e+01, 3.65897446e+01, 1.46410255e+01, 2.84358978e+01, + 4.63589745e+01, 1.98461533e+01, 2.10256405e+01, 3.56153831e+01, + 4.38974342e+01, 2.03333340e+01, 3.31282043e+01, 2.85897427e+01, + 1.19487181e+01, 7.58974361e+00, 1.68717957e+01, 2.26153851e+01, + 1.11025639e+01, 6.28205109e+00, 1.51538458e+01, 7.53846169e+00, + 2.12820506e+00, 4.53846169e+00, 4.05641022e+01, 4.23846169e+01, + 1.22564106e+01, 1.54102564e+01, 3.13333340e+01, 2.21538467e+01, + 2.01794872e+01, 7., 5.84615374e+00, 2.04615383e+01, + 5.93589745e+01, 53., 1.03333330e+01, 1.56153851e+01, + 2.73589745e+01, 2.85897427e+01, 2.31025639e+01, 4.03846169e+01, + 7.59487152e+01, 3.77179489e+01, 3.23846169e+01, 6.79487181e+00, + 7.12820530e+00, 1.60256405e+01, 2.42820511e+01, 2.40769234e+01, + 19., 3.70769234e+01, 1.22564106e+01, 1.06410255e+01, + 2.92307687e+00, 1.69230771e+00, 2.68974361e+01, 9.92051315e+01, + 4.02820511e+01, 1.04358978e+01, 4.65128212e+01, 7.63589706e+01, + 6.71282043e+01, 1.53076925e+01, 7.97435904e+00, 6.02820511e+01, + 1.04025642e+02, 5.22307701e+01, 1.08205128e+01, 3.23846169e+01, + 8.93076935e+01, 7.53846130e+01, 3.26410255e+01, 5.14358978e+01, + 1.05743591e+02, 6.04358978e+01, 1.76923084e+01, 2.94871783e+00, + 1.28461542e+01, 3.36923065e+01, 1.91794872e+01, 1.23589745e+01, + 4.84615402e+01, 8.75641022e+01, 5.33333349e+00, 1.71282043e+01, + 1.61794872e+01, 6.17948723e+00, 2.01025639e+01, 8.56666641e+01, + 5.53589745e+01, 6.94871807e+00, 1.13076925e+01, 3.47435913e+01, + 5.45897446e+01, 1.21025639e+01, 8.43589783e+00, 6.30256424e+01, + 1.09743591e+02, 1.93846149e+01, 6.76923084e+00, 1.35897436e+01, + 5.97435913e+01, 3.64615402e+01, 9.82051277e+00, 2.92307701e+01, + 1.12692307e+02, 4.34102554e+01, 1.25384617e+01, 4.46153831e+00, + 1.53589745e+01, 2.68205128e+01, 4.64102554e+00, 5.97435904e+00, + 5.79487190e+01, 80., 1.12121210e+01, 8.78787875e-01, + 5.48484850e+00, 2.09090900e+00, 4.75757599e+00, 5.27575760e+01, + 7.06666641e+01, 1.39090910e+01, 3.39393950e+00, 2.90909100e+00, + 7.84848499e+00, 2.90909100e+00, 1.86363640e+01, 7.59090881e+01, + 3.82424240e+01, 2.24242425e+00, 3.93939406e-01, 2.46666660e+01, + 1.61212120e+01, 5.39393950e+00, 2.47575760e+01, 4.12121201e+01, + 1.17272730e+01, 5.15151501e-01, 1.99696960e+01, 1.03757576e+02, + 1.62121220e+01, 2.78787875e+00, 1.53333330e+01, 2.68484840e+01, + 7., 1.48484850e+00, 2.88787880e+01, 2.01818180e+01, + 2.05151520e+01, 1.58787880e+01, 2.40909100e+01, 8.99090881e+01, + 1.12212120e+02, 58., 3.30303025e+00, 4.24242401e+00, + 4.33333349e+00, 8.33333302e+00, 4.93636360e+01, 1.28303024e+02, + 7.44848480e+01, 5.78787899e+00, 9.09090936e-02, 1.09090912e+00, + 4.54545468e-01, 4.18181801e+00, 5.29393921e+01, 1.17939392e+02, + 2.15151520e+01, 9.09090936e-02, 1.54242420e+01, 3.73939400e+01, + 2.09090900e+00, 5.15151501e+00, 3.52424240e+01, 4.37272720e+01, + 7.45454550e+00, 1.81818187e-01, 2.80606060e+01, 3.96969681e+01, + 3.95151520e+01, 2.96666660e+01, 2.86060600e+01, 3.44242439e+01, + 3.53333321e+01, 3.22424240e+01, 8.36363602e+00, 1.86363640e+01, + 2.06363640e+01, 2.37272720e+01, 7.40909119e+01, 1.13121216e+02, + 3.21212120e+01, 5.27272749e+00, 1.21212125e-01, 1.03030300e+00, + 1.48484850e+00, 6.06060600e+00, 1.08515152e+02, 1.25333336e+02, + 9.96969700e+00, 1.21212125e-01, 5.60606050e+00, 3.39393950e+00, + 1.30303025e+00, 7.60606050e+00, 7.59090881e+01, 5.78484840e+01, + 3.69696975e+00, 9.39393938e-01, 1.32424240e+01, 1.48484850e+01, + 1.24242420e+01, 1.43030300e+01, 1.56363640e+01, 1.16060610e+01, + 1.43333330e+01, 1.43030300e+01, 1.21212120e+01, 1.52121210e+01, + 1.70909100e+01, 1.82121220e+01, 5.48787880e+01, 4.72424240e+01, + 1.83030300e+01, 1.31818180e+01, 1.51515150e+00, 2.18181825e+00, + 3.69696975e+00, 1.87878780e+01, 1.17181816e+02, 7.75151520e+01, + 5.21212101e+00, 1.57575762e+00, 4.93939400e+00, 2.72727281e-01, + 3.33333343e-01, 1.09090910e+01, 9.66060638e+01, 3.74545441e+01, + 2., 6.09090900e+00, 3.95000005e+00, 2.65000010e+00, + 2.65000000e+01, 1.16800003e+02, 4.46250000e+01, 2.37500000e+00, + 4.62500000e+00, 7.75000000e+00, 2.65000010e+00, 4.44999981e+00, + 4.95250015e+01, 7.09749985e+01, 1.04250002e+01, 5.69999981e+00, + 1.47749996e+01, 1.09250002e+01, 4.82499981e+00, 3.00750008e+01, + 5.02999992e+01, 1.34750004e+01, 2.47499990e+00, 9.14999962e+00, + 1.87000008e+01, 9.55000019e+00, 1.64750004e+01, 9.13249969e+01, + 3.48499985e+01, 1.62500000e+00, 2.07500005e+00, 9.97500038e+00, + 9., 3.02500010e+00, 2.23250008e+01, 4.47499990e+00, + 7.37500000e+00, 7.52750015e+01, 8.93249969e+01, 1.45000000e+01, + 1.45749998e+01, 3.42500000e+01, 2.64750004e+01, 7.52500010e+00, + 1.43000002e+01, 4.33250008e+01, 3.75999985e+01, 2.94750004e+01, + 4.82999992e+01, 5.32500000e+01, 3.67249985e+01, 2.89500008e+01, + 1.23249998e+01, 1.02749996e+01, 1.56250000e+01, 4.67750015e+01, + 5.52500000e+01, 3.43750000e+01, 5.20750008e+01, 5.09000015e+01, + 1.07250004e+01, 6.25000000e+00, 3.03999996e+01, 6.46500015e+01, + 3.53750000e+01, 1.87999992e+01, 5.68750000e+01, 2.69750004e+01, + 8.64999962e+00, 2.14500008e+01, 9.35999985e+01, 5.47999992e+01, + 1.73500004e+01, 3.29749985e+01, 6.36500015e+01, 4.16749992e+01, + 2.24249992e+01, 3.41749992e+01, 6.51250000e+01, 60., + 3.87500000e+01, 4.44749985e+01, 5.62500000e+01, 4.55250015e+01, + 2.15000000e+01, 2.36749992e+01, 4.49500008e+01, 4.66250000e+01, + 2.55750008e+01, 3.02999992e+01, 7.27249985e+01, 4.05750008e+01, + 2.40249996e+01, 3.87999992e+01, 7.25749969e+01, 4.53499985e+01, + 1.35749998e+01, 2.60499992e+01, 2.69500008e+01, 35., 10., + 8.05000019e+00, 6.52249985e+01, 1.09900002e+02, 1.39250002e+01, + 5.80000019e+00, 2.64249992e+01, 4.97249985e+01, 3.05750008e+01, + 21., 4.01749992e+01, 5.93250008e+01, 21., 8.12500000e+00, + 1.60750008e+01, 2.31499996e+01, 2.78250008e+01, 2.46000004e+01, + 2.54249992e+01, 1.75750008e+01, 1.48249998e+01, 1.56000004e+01, + 2.62999992e+01, 9.77499962e+00, 1.45000000e+01, 2.43750000e+01, + 1.64249992e+01, 6.07499981e+00, 1.47500000e+01, 6.46500015e+01, + 2.22295074e+01, 5.62459030e+01, 6.83606577e+00, 2.90163946e+00, + 1.00491800e+01, 7.63934402e+01, 1.78196716e+01, 1.23770494e+01, + 7.29508209e+00, 2.77377052e+01, 5.19672108e+00, 2.86885238e+00, + 2.31147537e+01, 1.21245903e+02, 1.33278685e+01, 3.77049184e+00, + 5.18032789e+00, 1.88688526e+01, 5.47540998e+00, 4.78688526e+00, + 9.03278732e+00, 2.97377052e+01, 9.80327892e+00, 3.90163946e+00, + 3.42622948e+00, 4.68852472e+00, 4.06557369e+00, 4.06557369e+00, + 4.70491791e+00, 7.01639366e+00, 6.78688526e+00, 3.90163946e+00, + 2.31147537e+01, 1.34639343e+02, 2.19180336e+01, 2.78688526e+00, + 6.19672108e+00, 4.10491791e+01, 9.36065578e+00, 5.77049160e+00, + 1.69016399e+01, 1.09278687e+02, 1.02622948e+01, 9.18032765e-01, + 1.51147537e+01, 1.32557373e+02, 1.39672127e+01, 3.14754105e+00, + 7.01639366e+00, 4.64262314e+01, 7.36065578e+00, 2.22950816e+00, + 1.75573769e+01, 1.38885239e+02, 1.35737705e+01, 2.01639342e+00, + 5.44262314e+00, 1.88688526e+01, 5.36065578e+00, 4.36065578e+00, + 8.57377052e+00, 2.98852463e+01, 1.04262295e+01, 3.88524580e+00, + 8.36065578e+00, 6.40163956e+01, 1.01639347e+01, 2.59016395e+00, + 6.57377052e+00, 3.99344254e+01, 9.55737686e+00, 4.14754105e+00, + 2.41967220e+01, 1.41327866e+02, 1.46229506e+01, 9.50819671e-01, + 6.85245895e+00, 6.75737686e+01, 6.90163946e+00, 1.45901644e+00, + 1.23278685e+01, 1.10885246e+02, 9.50819683e+00, 9.18032765e-01, + 1.69836063e+01, 1.33295074e+02, 11., 1.13114750e+00, + 7.21311474e+00, 3.69344254e+01, 6.83606577e+00, 2.54098368e+00, + 1.53606558e+01, 1.26967216e+02, 1.35409832e+01, 1.72131145e+00, + 3.96721315e+00, 6.26229525e+00, 5.40983629e+00, 3.01639342e+00, + 3.49180317e+00, 1.04262295e+01, 4.98360634e+00, 4.67213106e+00, + 1.04098358e+01, 7.16557388e+01, 7.65573788e+00, 2.39344263e+00, + 6.96721315e+00, 4.46393433e+01, 7.24590158e+00, 3.19672132e+00, + 2.30655746e+01, 1.39426224e+02, 1.35245905e+01, 2.55737710e+00, + 6.81967211e+00, 5.37540970e+01, 6.26229525e+00, 1.40983605e+00, + 7.24590158e+00, 6.52295074e+01, 1.12950821e+01, 7.95081949e+00, + 1.94098358e+01, 1.02901642e+02, 1.16393442e+01, 1.67213118e+00, + 9.23076928e-01, 2.75641036e+00, 7.06410265e+00, 3.43589735e+00, + 1.12820518e+00, 6.02564096e-01, 4.61538464e-01, 3.71794879e-01, + 1.21794868e+00, 3.94871783e+00, 6.93589735e+00, 2.83333325e+00, + 1.34615386e+00, 7.05128193e-01, 5.89743614e-01, 5.51282048e-01, + 1.25641024e+00, 3.38461542e+00, 4.30769253e+00, 2.01282048e+00, + 1.37179482e+00, 8.71794879e-01, 6.41025662e-01, 6.02564096e-01, + 1.23076928e+00, 1.61538458e+00, 1.76923072e+00, 1.32051277e+00, + 1.37179482e+00, 1.32051277e+00, 8.33333313e-01, 6.79487169e-01, + 6.61538458e+00, 2.36282043e+01, 7.20897446e+01, 3.40256424e+01, + 7.19230747e+00, 4.07692289e+00, 4.02564096e+00, 3.98717952e+00, + 7.74358988e+00, 4.06410255e+01, 8.53846130e+01, 3.26153831e+01, + 6.98717928e+00, 5.15384626e+00, 5.60256433e+00, 3.92307687e+00, + 1.17435894e+01, 4.50384598e+01, 6.72179489e+01, 2.06282043e+01, + 6.39743567e+00, 5.21794891e+00, 5.74358988e+00, 5.34615374e+00, + 1.17435894e+01, 3.18076916e+01, 3.46025658e+01, 1.22179489e+01, + 7.01282072e+00, 5.74358988e+00, 5.07692289e+00, 6.19230747e+00, + 5.98717928e+00, 2.43205128e+01, 1.33858978e+02, 7.82692337e+01, + 6.46153831e+00, 5.69230747e+00, 1.49487181e+01, 9.65384579e+00, + 8.66666698e+00, 7.86282043e+01, 1.38923080e+02, 4.04102554e+01, + 5.82051277e+00, 9.48717976e+00, 1.75128212e+01, 7.66666651e+00, + 1.63589745e+01, 1.08474358e+02, 1.29230774e+02, 2.49743595e+01, + 6.46153831e+00, 1.03333330e+01, 1.06282053e+01, 7.52564096e+00, + 1.87692299e+01, 8.47307663e+01, 7.83974380e+01, 1.57692308e+01, + 5.52564096e+00, 6.30769253e+00, 5.65384626e+00, 7., + 2.78205132e+00, 9.74358940e+00, 1.23371796e+02, 6.48846130e+01, + 2.97435904e+00, 5.83333349e+00, 3.57820511e+01, 1.68461533e+01, + 3.21794868e+00, 6.65641022e+01, 1.31974365e+02, 1.64743595e+01, + 3.58974361e+00, 1.66666660e+01, 4.36794853e+01, 1.01282053e+01, + 8.91025639e+00, 1.32102570e+02, 1.20807693e+02, 6.01282072e+00, + 4.93589735e+00, 2.40897427e+01, 2.38461533e+01, 4.75641012e+00, + 2.33717957e+01, 1.25192307e+02, 5.92307701e+01, 9.89743614e+00, + 5.38461542e+00, 1.86282043e+01, 8.96153831e+00, 6.07692289e+00, + 4.34782600e+00, 2.79710150e+00, 1.25217390e+01, 1.06811590e+01, + 2.39130425e+00, 1.90434780e+01, 9.29855042e+01, 2.94492760e+01, + 1.89855075e+00, 5.79710150e+00, 1.05217390e+01, 3.21739125e+00, + 5.79710150e+00, 7.07246399e+01, 9.81304321e+01, 9.91304302e+00, + 3.15942025e+00, 1.48260870e+01, 9.23188400e+00, 1.49275362e+00, + 9.21739101e+00, 9.06231918e+01, 6.07536240e+01, 2.34782600e+00, + 1.68115940e+01, 4.41449280e+01, 1.05217390e+01, 1.76811600e+00, + 1.32318840e+01, 5.19420280e+01, 2.06376820e+01, 2.85507250e+00, + 2.15797100e+01, 1.11449280e+01, 1.11739130e+01, 7.92753601e+00, + 8.72463799e+00, 2.69420280e+01, 9.69565201e+01, 6.27246361e+01, + 8., 1.14782610e+01, 1.39855070e+01, 1.00724640e+01, + 1.81014500e+01, 9.59855042e+01, 1.11826088e+02, 2.56376820e+01, + 3.39130425e+00, 1.21884060e+01, 5.50724649e+00, 2.15942025e+00, + 2.43623180e+01, 1.25014496e+02, 9.02463760e+01, 6.44927549e+00, + 1.14492750e+01, 1.61304340e+01, 2.14492750e+00, 1.56521738e+00, + 39., 1.12391304e+02, 3.37681160e+01, 3.76811600e+00, + 3.00144920e+01, 1.85217400e+01, 1.79275360e+01, 1.61014500e+01, + 1.55362320e+01, 1.87681160e+01, 3.71159439e+01, 4.32898560e+01, + 1.73913040e+01, 1.72028980e+01, 2.07391300e+01, 2.05942020e+01, + 2.15072460e+01, 4.38405800e+01, 4.61594200e+01, 3.29565201e+01, + 1.59565220e+01, 1.74492760e+01, 9.07246399e+00, 9.01449299e+00, + 4.82318840e+01, 1.08434784e+02, 6.04347839e+01, 2.04202900e+01, + 5.78260851e+00, 7.97101450e+00, 1.42028987e+00, 5.57971001e+00, + 8.98260880e+01, 1.21014496e+02, 2.24347820e+01, 3.13043475e+00, + 2.14347820e+01, 2.55507240e+01, 1.80869560e+01, 1.30579710e+01, + 1.41304350e+01, 1.13188410e+01, 1.62898560e+01, 2.02028980e+01, + 1.67536240e+01, 1.74202900e+01, 1.78695660e+01, 1.47391300e+01, + 1.27536230e+01, 1.45652170e+01, 2.26376820e+01, 2.27101440e+01, + 2.46086960e+01, 2.17971020e+01, 1.88260860e+01, 2.86956520e+01, + 4.15362320e+01, 3.69710159e+01, 2.50434780e+01, 26., + 1.01884060e+01, 7.59420300e+00, 4.82608700e+00, 3.13333340e+01, + 1.05579712e+02, 7.16086960e+01, 1.36086960e+01, 8.42028999e+00, + 4.50980395e-01, 1.45098042e+00, 2.45098042e+00, 1.56862748e+00, + 5.49019635e-01, 2.74509817e-01, 1.56862751e-01, 3.92156877e-02, + 3.33333343e-01, 2.35294127e+00, 3.21568632e+00, 1.50980389e+00, + 3.13725495e+00, 4.70588237e-01, 3.13725501e-01, 9.80392173e-02, + 2.54901975e-01, 1.33333337e+00, 2.41176462e+00, 1.11764705e+00, + 1.72549021e+00, 5.29411793e-01, 1.96078432e+00, 3.92156869e-01, + 2.35294119e-01, 7.84313738e-01, 1.29411769e+00, 6.86274529e-01, + 3.52941185e-01, 3.13725501e-01, 1.45098042e+00, 4.50980395e-01, + 2.58823538e+00, 9.82352924e+00, 3.24705887e+01, 1.67647057e+01, + 5.09803915e+00, 2.68627453e+00, 2.84313726e+00, 1.98039210e+00, + 3.88235283e+00, 1.85098038e+01, 3.91372566e+01, 1.51372547e+01, + 5.19607830e+00, 3.15686274e+00, 3.35294127e+00, 2.56862736e+00, + 4.33333349e+00, 1.91568623e+01, 3.28823547e+01, 1.22549019e+01, + 5.74509811e+00, 4.35294104e+00, 5.62745094e+00, 2.72549009e+00, + 3.50980401e+00, 1.43333330e+01, 2.01764698e+01, 7.23529434e+00, + 3.84313726e+00, 3.05882359e+00, 5.90196085e+00, 3., + 2.17647052e+00, 1.00392160e+01, 5.59019623e+01, 1.86666660e+01, + 5.70588255e+00, 2.18431377e+01, 1.26549019e+02, 2.15490189e+01, + 4.17647076e+00, 2.07450981e+01, 6.95098038e+01, 1.73725491e+01, + 3.52941179e+00, 4.13529396e+01, 1.34725494e+02, 1.07058821e+01, + 7.60784292e+00, 2.65098038e+01, 5.31568642e+01, 1.48823528e+01, + 6., 5.57843132e+01, 1.08666664e+02, 9.47058868e+00, + 8.86274529e+00, 2.61176472e+01, 3.04313717e+01, 9.62745094e+00, + 5.94117641e+00, 2.12941170e+01, 3.05294113e+01, 1.82549019e+01, + 1.72549021e+00, 1.87450981e+01, 139., 2.99215679e+01, + 1.62745094e+00, 2.02941170e+01, 1.24352943e+02, 2.56274509e+01, + 2.39215684e+00, 4.89803925e+01, 1.43019608e+02, 1.62156868e+01, + 2.72549009e+00, 4.55686264e+01, 1.36901962e+02, 1.15686274e+01, + 4.23529434e+00, 6.91176453e+01, 1.29568634e+02, 1.80784321e+01, + 1.09803925e+01, 9.24117661e+01, 1.34843140e+02, 1.08823528e+01, + 6.74509811e+00, 4.22352943e+01, 4.09215698e+01, 1.57843142e+01, + 1.39215689e+01, 8.83725510e+01, 7.48823547e+01, 1.26666670e+01, + 3.57777786e+00, 1.62222219e+00, 1.24444449e+00, 9.11111116e-01, + 1., 2.95555544e+00, 5.77777767e+00, 5.95555544e+00, + 9.55555534e+00, 5.66666651e+00, 4.82222223e+00, 4.19999981e+00, + 1.06444445e+01, 2.36000004e+01, 1.80444450e+01, 16., + 8.91555557e+01, 8.46222229e+01, 4.17777777e+00, 2.75555563e+00, + 4.30888901e+01, 6.81111145e+01, 1.61333332e+01, 1.42888889e+01, + 1.46822220e+02, 1.43177780e+02, 1.51111114e+00, 1.44444442e+00, + 7.73111115e+01, 1.00511108e+02, 5.53333330e+00, 6.08888912e+00, + 5.26666689e+00, 3.79999995e+00, 1.93333328e+00, 1.53333330e+00, + 1.62222219e+00, 3.11111116e+00, 6.17777777e+00, 5.80000019e+00, + 1.70888882e+01, 1.02222223e+01, 4.24444437e+00, 4.88888884e+00, + 1.06888885e+01, 1.76222229e+01, 2.17999992e+01, 2.03333340e+01, + 4.23333321e+01, 3.32000008e+01, 5.73333311e+00, 9.13333321e+00, + 4.87111130e+01, 5.58888893e+01, 2.69111118e+01, 2.27333336e+01, + 1.48577774e+02, 1.41777771e+02, 6.04444456e+00, 1.06222219e+01, + 7.03333359e+01, 6.37999992e+01, 1.01555557e+01, 3.31555557e+01, + 4.95555544e+00, 4.24444437e+00, 2.77777767e+00, 2.44444442e+00, + 2.48888898e+00, 3.97777772e+00, 5.55555534e+00, 4.28888893e+00, + 2.19555550e+01, 1.74666672e+01, 6.71111107e+00, 6.17777777e+00, + 1.24444447e+01, 1.40666666e+01, 1.71777782e+01, 1.67999992e+01, + 3.33777771e+01, 1.74666672e+01, 1.02888889e+01, 1.62222214e+01, + 4.84666672e+01, 3.04222221e+01, 1.79333324e+01, 2.80222225e+01, + 1.45133331e+02, 7.96666641e+01, 7.35555553e+00, 1.96222229e+01, + 70., 3.36888885e+01, 9.31111145e+00, 8.45555573e+01, + 3.68888879e+00, 3.51111102e+00, 2.73333335e+00, 2.24444437e+00, + 2.28888893e+00, 3.40000010e+00, 3.66666675e+00, 3.33333325e+00, + 1.69555550e+01, 1.49333334e+01, 1.00888891e+01, 6.31111097e+00, + 9.08888912e+00, 1.17333336e+01, 1.18000002e+01, 1.42222223e+01, + 3.55555573e+01, 1.62888889e+01, 8.35555553e+00, 1.05555553e+01, + 3.23777771e+01, 2.56444435e+01, 1.13333330e+01, 2.27777786e+01, + 1.35444443e+02, 6.15999985e+01, 4.22222233e+00, 1.19555559e+01, + 4.95999985e+01, 3.18666668e+01, 7.68888903e+00, 4.50222206e+01, + 2.64705873e+00, 7.66666651e+00, 6.88235283e+00, 2.03921580e+00, + 1.62745094e+00, 3.37254906e+00, 3.68627453e+00, 2.39215684e+00, + 3.11764717e+00, 6.54901981e+00, 5.05882359e+00, 2.19607854e+00, + 2.45098042e+00, 2.60784316e+00, 2.90196085e+00, 2.82352948e+00, + 2.33333325e+00, 2.37254906e+00, 1.78431368e+00, 2.27450991e+00, + 3.39215684e+00, 3.21568632e+00, 2.70588231e+00, 3.29411769e+00, + 1.29411769e+00, 9.01960790e-01, 9.21568632e-01, 1.64705884e+00, + 2.60784316e+00, 2.98039222e+00, 2.49019599e+00, 2.31372547e+00, + 7., 2.15098038e+01, 3.33921585e+01, 1.26666670e+01, + 9.72549057e+00, 4.54901962e+01, 1.05647057e+02, 4.15490189e+01, + 8.43137264e+00, 4.15294113e+01, 3.64901962e+01, 7.11764717e+00, + 5.35294104e+00, 8.33333359e+01, 1.07156860e+02, 1.35686274e+01, + 9., 3.72549019e+01, 30., 7.31372547e+00, 8.21568584e+00, + 4.73725471e+01, 2.52352943e+01, 5.88235283e+00, 7.29411745e+00, + 1.30196075e+01, 8.88235283e+00, 6.50980377e+00, 9.47058868e+00, + 1.25294113e+01, 9.90196037e+00, 5.50980377e+00, 1.85294113e+01, + 2.11176472e+01, 3.23333321e+01, 1.80588226e+01, 1.24901962e+01, + 4.56274529e+01, 1.11313728e+02, 7.22745132e+01, 1.87254906e+01, + 4.86274529e+01, 3.47254906e+01, 8.05882359e+00, 1.46862745e+01, + 1.34411758e+02, 1.26960785e+02, 2.57450981e+01, 1.93333340e+01, + 5.75490189e+01, 2.82156868e+01, 4.52941179e+00, 5.43725471e+01, + 1.45882355e+02, 7.51176453e+01, 7.52941179e+00, 16., + 4.26078415e+01, 1.65098038e+01, 5.41176462e+00, 2.22941170e+01, + 5.42941170e+01, 1.06862745e+01, 4.33333349e+00, 2.49019604e+01, + 3.27647057e+01, 1.82745094e+01, 1.23137255e+01, 1.31568632e+01, + 1.67450981e+01, 1.59019604e+01, 1.74313717e+01, 2.76078434e+01, + 3.12745094e+01, 2.25490189e+01, 1.48039217e+01, 1.61372547e+01, + 3.08823528e+01, 2.90784321e+01, 2.12549019e+01, 3.49607849e+01, + 3.96470604e+01, 1.70980396e+01, 1.69411774e+01, 9.03725510e+01, + 1.25137253e+02, 2.91960793e+01, 1.52352943e+01, 1.86862736e+01, + 3.41568642e+01, 1.00392160e+01, 7.33333349e+00, 8.02941208e+01, + 9.77647095e+01, 2.34901962e+01, 5.64705896e+00, 8.15344849e+01, + 8.68965530e+00, 3.06896544e+00, 8.45344849e+01, 8.41724167e+01, + 1.87931037e+00, 1.79310346e+00, 6.00862083e+01, 9.45517273e+01, + 2.02241383e+01, 6.05172396e+00, 2.28965511e+01, 1.08448277e+01, + 5.68965495e-01, 4.51724148e+00, 6.72241364e+01, 3.02241383e+01, + 1.61551723e+01, 1.68275871e+01, 1.31034479e+01, 6.46551704e+00, + 6.03448296e+00, 1.48103447e+01, 3.65517235e+01, 2.09137936e+01, + 2.43793106e+01, 1.93103447e+01, 13., 1.12586203e+01, + 1.35517244e+01, 1.85517235e+01, 1.66724129e+01, 9.93448257e+01, + 3.85000000e+01, 4.86206913e+00, 4.79482765e+01, 1.06034485e+02, + 5.62068987e+00, 1.06896555e+00, 2.03793106e+01, 1.08500000e+02, + 8.35862045e+01, 1.28965521e+01, 9.79310322e+00, 9.63793087e+00, + 1.06896555e+00, 1.08620691e+00, 1.58103447e+01, 4.08103447e+01, + 4.32758636e+01, 3.05000000e+01, 1.80344830e+01, 9.17241383e+00, + 9.36206913e+00, 7.63793087e+00, 1.69655170e+01, 1.95517235e+01, + 2.67241383e+01, 2.56379318e+01, 1.69482765e+01, 1.33103447e+01, + 1.26724138e+01, 8.89655209e+00, 9.62068939e+00, 7.23793106e+01, + 6.11206894e+01, 6.13793087e+00, 1.31206894e+01, 1.12827583e+02, + 3.61551743e+01, 7.93103456e-01, 4.08620691e+00, 7.70172424e+01, + 118., 2.22241383e+01, 4.93103456e+00, 1.42931032e+01, + 6.65517235e+00, 5.68965495e-01, 2.43103456e+00, 3.18275871e+01, + 9.87241364e+01, 4.84137917e+01, 1.45689659e+01, 3.87931037e+00, + 4.48275852e+00, 2.46551728e+00, 4.96551704e+00, 1.17931032e+01, + 3.77931023e+01, 4.43793106e+01, 2.26206894e+01, 9.84482765e+00, + 6.75862074e+00, 6.37931013e+00, 6.37931013e+00, 3.36551743e+01, + 4.96896553e+01, 4.34482765e+00, 2.58620691e+00, 1.11068962e+02, + 8.99137955e+01, 1.31034482e+00, 1.58620691e+00, 2.94655170e+01, + 1.07155174e+02, 2.38448277e+01, 1.68965518e+00, 2.32586212e+01, + 3.55689659e+01, 1.41379309e+00, 6.03448272e-01, 1.18965521e+01, + 1.09293106e+02, 6.28793106e+01, 6.10344839e+00, 1.72413790e+00, + 9.75862026e+00, 2.96551728e+00, 1.65517247e+00, 8.27586174e+00, + 5.17413788e+01, 7.02931061e+01, 1.39655170e+01, 3.82758617e+00, + 3.46551728e+00, 4.15517235e+00, 4.25862074e+00, 3.66666675e+00, + 1.70175433e+00, 8.05263138e+00, 2.97368412e+01, 9.15789509e+00, + 6.38596487e+00, 7.89473677e+00, 7.52631569e+00, 4.01754379e+00, + 2.87719297e+00, 1.22631578e+01, 2.34035091e+01, 5.42105246e+00, + 6.98245621e+00, 2.18771935e+01, 1.81228065e+01, 5.03508759e+00, + 2.01754379e+00, 1.84736843e+01, 2.17368412e+01, 3.94736838e+00, + 5.08771944e+00, 4.52631569e+01, 2.62456131e+01, 3.52631569e+00, + 4.35087729e+00, 1.89824562e+01, 10., 1.59649122e+00, + 9.70175457e+00, 4.25789490e+01, 1.61228065e+01, 9.66666698e+00, + 1.75438595e+00, 7.91228056e+00, 3.69473686e+01, 1.46140347e+01, + 4.03508759e+00, 2.28771935e+01, 6.37894745e+01, 5.17543840e+00, + 1.75438595e+00, 1.79824562e+01, 43., 8.61403465e+00, + 4.68421030e+00, 1.07052635e+02, 127., 4.70175457e+00, + 4.36842108e+00, 2.73508778e+01, 2.82280693e+01, 7.01754379e+00, + 1.94210529e+01, 1.37754379e+02, 1.07614037e+02, 5.31578970e+00, + 1.33508768e+01, 3.14736843e+01, 1.29824562e+01, 5.56140327e+00, + 6.70701752e+01, 1.32543854e+02, 3.81929817e+01, 5.95614052e+01, + 2.38596487e+00, 6.33333349e+00, 3.36140366e+01, 1.78245621e+01, + 3.26315784e+00, 2.84736843e+01, 1.34842102e+02, 2.55614033e+01, + 4.66666651e+00, 1.56315794e+01, 3.32105255e+01, 1.59824562e+01, + 7.29824543e+00, 8.29298248e+01, 1.29210526e+02, 1.11754389e+01, + 1.11052628e+01, 2.38070183e+01, 2.49824562e+01, 1.24035091e+01, + 1.71228065e+01, 7.90350876e+01, 5.73157883e+01, 1.30350876e+01, + 1.48596487e+01, 2.27192974e+01, 1.86140347e+01, 2.25964909e+01, + 4.64561386e+01, 6.05964928e+01, 1.58596487e+01, 1.06649124e+02, + 2.20877190e+01, 4.61403513e+00, 1.69298248e+01, 2.52105255e+01, + 8.49122810e+00, 8.45614052e+00, 8.39824524e+01, 3.22105255e+01, + 1.36491232e+01, 1.15964909e+01, 2.08421059e+01, 2.60701752e+01, + 1.34561405e+01, 1.15964909e+01, 3.77192993e+01, 1.27368422e+01, + 9.66666698e+00, 1.67894745e+01, 1.67017536e+01, 1.36140347e+01, + 1.08947372e+01, 1.37192984e+01, 1.70526314e+01, 1.52807016e+01, + 5.28070164e+00, 1.47192984e+01, 4.08947372e+01, 2.42631588e+01, + 1.17719297e+01, 1.39649124e+01, 2.28771935e+01, 3.79220772e+00, + 9.49350643e+00, 1.10779219e+01, 4.07792187e+00, 1.90909088e+00, + 1.40259743e+00, 1.38961041e+00, 2.23376632e+00, 4.81818199e+00, + 1.03246756e+01, 1.01558437e+01, 5.05194807e+00, 3.07792211e+00, + 1.87012982e+00, 2.89610386e+00, 3.42857146e+00, 4.66233778e+00, + 8.74026012e+00, 7.96103907e+00, 3.71428561e+00, 3.07792211e+00, + 2.01298690e+00, 4.58441544e+00, 4.41558456e+00, 2.27272725e+00, + 3.98701310e+00, 3.94805193e+00, 2.23376632e+00, 2.01298690e+00, + 1.61038959e+00, 2.89610386e+00, 2.92207789e+00, 1.01948051e+01, + 3.70259743e+01, 3.61558456e+01, 1.09220781e+01, 6.18181801e+00, + 2.68961048e+01, 2.70519485e+01, 4.51948071e+00, 1.44155846e+01, + 4.84935074e+01, 3.88181801e+01, 1.25194807e+01, 5.33766222e+00, + 5.63636351e+00, 7.57142878e+00, 7.63636351e+00, 1.58181820e+01, + 4.08961029e+01, 2.71168823e+01, 1.01818180e+01, 5.98701286e+00, + 4.49350643e+00, 8.90909100e+00, 1.08961039e+01, 1.03506489e+01, + 2.01428566e+01, 1.41948051e+01, 6.92207813e+00, 4.89610386e+00, + 3.96103907e+00, 5.70129871e+00, 8.15584373e+00, 6.75324678e+00, + 9.34935074e+01, 7.85064926e+01, 7.23376608e+00, 8.28571415e+00, + 1.52792206e+02, 1.45584412e+02, 5.77922058e+00, 1.64155846e+01, + 6.69610367e+01, 4.22207794e+01, 9.48051929e+00, 8.89610386e+00, + 1.44129868e+02, 6.30909081e+01, 5.64935064e+00, 2.42207794e+01, + 6.52207794e+01, 3.50779228e+01, 9.37662315e+00, 5.01298714e+00, + 1.90259743e+01, 6.98701286e+00, 7.89610386e+00, 1.88571434e+01, + 3.56103897e+01, 1.87532463e+01, 6.14285707e+00, 3.20779228e+00, + 2.53246760e+00, 3.83116889e+00, 6.89610386e+00, 1.08961039e+01, + 1.31246750e+02, 9.06753235e+01, 4.80519485e+00, 1.21688309e+01, + 8.98701324e+01, 4.37922096e+01, 7.98701286e+00, 2.34155846e+01, + 1.39194809e+02, 4.46103897e+01, 5.29870129e+00, 3.52727280e+01, + 1.54571426e+02, 5.45454559e+01, 3.96103907e+00, 2.38961048e+01, + 5.90909081e+01, 1.78571434e+01, 5.15584421e+00, 3.56493492e+01, + 1.30207794e+02, 1.70909100e+01, 5.42857122e+00, 2.13506489e+01, + 3.55974045e+01, 1.46233768e+01, 3.16883111e+00, 3.18181825e+00, + 7.87013006e+00, 3.02597404e+00, 4.77922058e+00, 1.81081080e+00, + 1.51351357e+00, 2.91891885e+00, 5.51351357e+00, 4.43243265e+00, + 5.48648643e+00, 4.40540552e+00, 2.59459448e+00, 4.62162161e+00, + 2.35135126e+00, 4.02702713e+00, 9.21621609e+00, 1.08378382e+01, + 1.31891890e+01, 1.41891890e+01, 1.12432432e+01, 1.26756754e+01, + 5.10810804e+00, 3.35135126e+00, 4.70270252e+00, 1.16216221e+01, + 1.77567558e+01, 2.39189186e+01, 1.57297297e+01, 5.24324322e+00, + 1.91891897e+00, 1.64864862e+00, 1.81081080e+00, 7.35135126e+00, + 6.75675678e+00, 4.43243265e+00, 2.56756759e+00, 7.27027035e+00, + 3.40540552e+00, 8.94594574e+00, 2.48108101e+01, 1.03513517e+01, + 6.02702713e+00, 1.44324322e+01, 5.61891899e+01, 8.37837791e+00, + 3.21621633e+00, 9.29729748e+00, 3.86486473e+01, 2.46486492e+01, + 2.54324322e+01, 8.15945969e+01, 1.35270264e+02, 1.12432432e+01, + 7.13513517e+00, 1.67297306e+01, 6.98918915e+01, 6.83783798e+01, + 6.18918915e+01, 7.88378372e+01, 6.48108139e+01, 4.75675678e+00, + 5.08108091e+00, 9.43243217e+00, 1.57837839e+01, 2.67297306e+01, + 2.37567558e+01, 1.42162161e+01, 5.86486483e+00, 1.03243246e+01, + 7.83783793e-01, 8.43243217e+00, 6.13513527e+01, 9.16216183e+00, + 3.18918920e+00, 3.86216202e+01, 1.42837845e+02, 9.21621609e+00, + 9.72972989e-01, 3.14864864e+01, 1.45216217e+02, 3.15405407e+01, + 7.32432413e+00, 4.25945930e+01, 1.36810806e+02, 1.15945950e+01, + 3.91891885e+00, 3.58108101e+01, 1.31540543e+02, 4.68378372e+01, + 1.70540543e+01, 2.00270271e+01, 4.25135117e+01, 3.56756759e+00, + 4.21621609e+00, 9.97297287e+00, 1.45675678e+01, 1.15675678e+01, + 9.32432461e+00, 1.38378382e+01, 1.05675678e+01, 8.59459496e+00, + 4.05405402e-01, 1.78918915e+01, 1.36486481e+02, 1.73243237e+01, + 1.02702701e+00, 1.48648653e+01, 1.05567566e+02, 9.08108139e+00, + 8.64864886e-01, 1.80810814e+01, 1.40216217e+02, 1.77567558e+01, + 2.97297287e+00, 1.15135136e+01, 6.98918915e+01, 8.89189148e+00, + 1.78378379e+00, 4.86486483e+00, 2.82432442e+01, 9.02702713e+00, + 8.75675678e+00, 1.12162161e+01, 3.58108101e+01, 1.94594598e+00, + 7.83783793e-01, 9.72972989e-01, 1.32432437e+00, 2.21621633e+00, + 5.45945930e+00, 8., 8.89189148e+00, 3.01923084e+00, + 6.35961533e+01, 1.00500000e+02, 4.25000000e+00, 3.46153855e-01, + 4.09615374e+00, 1.87884617e+01, 5.82692289e+00, 2.48076916e+00, + 2.11346149e+01, 1.19576920e+02, 4.45769234e+01, 1.19230771e+00, + 1.92307687e+00, 1.97500000e+01, 1.41346149e+01, 3.13461542e+00, + 3.40384626e+00, 1.03269234e+02, 1.03365387e+02, 2.65384626e+00, + 9.42307711e-01, 2.40961533e+01, 4.81730766e+01, 1.31923075e+01, + 1.38461542e+00, 3.14807701e+01, 9.35576935e+01, 7.76923084e+00, + 1., 1.83269234e+01, 9.58846130e+01, 2.80769229e+00, + 2.44038467e+01, 8.63269196e+01, 1.13846149e+01, 2.61538458e+00, + 1.63461533e+01, 9.25576935e+01, 1.89423084e+01, 2.80769229e+00, + 9.42307663e+00, 1.06288460e+02, 4.56923065e+01, 2.78846145e+00, + 6.61538458e+00, 1.03019234e+02, 7.01730804e+01, 6.23076916e+00, + 4.11538458e+00, 7.18653870e+01, 6.71153870e+01, 3.36538458e+00, + 3.71153855e+00, 9.02692337e+01, 1.11576920e+02, 1.77692299e+01, + 3.28846145e+00, 1.87115383e+01, 4.20961533e+01, 4.50000000e+00, + 4.53846169e+00, 4.35000000e+01, 1.01346153e+02, 6.98076916e+00, + 5.86538458e+00, 2.22307701e+01, 8.15384579e+00, 7.84615374e+00, + 2.82500000e+01, 7.80192337e+01, 2.19807701e+01, 9.86538506e+00, + 4.53846169e+00, 2.60769234e+01, 1.49230766e+01, 8.03846169e+00, + 2.14038467e+01, 8.96538467e+01, 5.85576935e+01, 1.41923075e+01, + 5.07692289e+00, 1.27884617e+01, 1.23846149e+01, 5.92307711e+00, + 1.39038458e+01, 6.93269196e+01, 8.07307663e+01, 2.11153851e+01, + 4.82692289e+00, 3.73076916e+00, 5., 3.84615374e+00, + 7.53846169e+00, 4.10384598e+01, 7.67500000e+01, 4.50000000e+00, + 1.42307687e+00, 1.13461542e+00, 1.46153843e+00, 4.61538458e+00, + 1.72307701e+01, 2.28846149e+01, 1.06346149e+01, 6.59615374e+00, + 1.51923072e+00, 1.51923072e+00, 1.76923072e+00, 4.46153831e+00, + 1.54423075e+01, 3.04615383e+01, 2.34230766e+01, 8.30769253e+00, + 1.92307687e+00, 1.36538458e+00, 1.19230771e+00, 2.57692313e+00, + 9.73076916e+00, 3.43846169e+01, 4.12692299e+01, 9.42307663e+00, + 1.59615386e+00, 7.30769217e-01, 7.30769217e-01, 1., + 3.94230771e+00, 2.75192299e+01, 4.62692299e+01, 1.30434787e+00, + 1.97826087e+00, 1.71739125e+00, 1.36086960e+01, 7.72608719e+01, + 4.77826080e+01, 8.30434799e+00, 3.30434775e+00, 9.17391300e+00, + 1.56739130e+01, 4.97826099e+00, 1.22391300e+01, 5.63913040e+01, + 8.33260880e+01, 2.08260860e+01, 1.06956520e+01, 4.06739120e+01, + 5.50869560e+01, 2.82608700e+00, 4.17391300e+00, 3.29130440e+01, + 9.97608719e+01, 2.93478260e+01, 8.76086998e+00, 8.35000000e+01, + 1.22347824e+02, 1.41521740e+01, 2.15217400e+00, 2.14130440e+01, + 5.96521721e+01, 1.56739130e+01, 6.56521749e+00, 1.58695650e+00, + 1.15217388e+00, 1.34782612e+00, 8.73913002e+00, 8.33043442e+01, + 8.60869598e+01, 1.41739130e+01, 3.08695650e+00, 7.13043499e+00, + 1.43913040e+01, 8.80434799e+00, 1.51521740e+01, 6.15652161e+01, + 8.83695679e+01, 2.73043480e+01, 1.35869570e+01, 1.28043480e+01, + 3.33695641e+01, 1.24130430e+01, 1.05000000e+01, 2.14347820e+01, + 9.43260880e+01, 4.93913040e+01, 1.56086960e+01, 3.63260880e+01, + 9.81956558e+01, 1.54565220e+01, 3.41304350e+00, 1.33043480e+01, + 8.43478241e+01, 5.59130440e+01, 1.03478260e+01, 4.02173901e+00, + 1.91304350e+00, 2., 6.52173901e+00, 4.77608681e+01, + 9.06739120e+01, 2.27173920e+01, 5.76086950e+00, 2.65217400e+00, + 2.73913050e+00, 3.82608700e+00, 9.76086998e+00, 6.40217361e+01, + 1.24586960e+02, 4.60434799e+01, 8.69565201e+00, 9.45652199e+00, + 1.31956520e+01, 1.18043480e+01, 1.31521740e+01, 2.60652180e+01, + 6.49130402e+01, 5.06739120e+01, 2.24130440e+01, 9.15217400e+00, + 2.72391300e+01, 1.91304340e+01, 8.63043499e+00, 1.67391300e+01, + 5.71086960e+01, 5.29565201e+01, 1.48695650e+01, 7.30434799e+00, + 3.34782600e+00, 3.91304350e+00, 6.23913050e+00, 1.26086960e+01, + 3.17391300e+01, 1.63260860e+01, 8.65217400e+00, 2.84782600e+00, + 1.28260875e+00, 1.82608700e+00, 3.95652175e+00, 2.98043480e+01, + 1.10717392e+02, 5.22826080e+01, 6.23913050e+00, 2.67391300e+00, + 1.36956525e+00, 2.36956525e+00, 5.04347849e+00, 2.09130440e+01, + 9.76086960e+01, 7.43913040e+01, 1.12608700e+01, 4.39130449e+00, + 3.17391300e+00, 4.45652151e+00, 5.91304350e+00, 1.25652170e+01, + 4.21956520e+01, 5.09347839e+01, 1.45000000e+01, 7.63461542e+00, + 6.17307711e+00, 7.35961533e+01, 2.13461533e+01, 4.44230747e+00, + 1.74423084e+01, 2.91538467e+01, 7.75000000e+00, 9.25000000e+00, + 4.17115402e+01, 9.57884598e+01, 7.61538458e+00, 7.38461542e+00, + 2.31346149e+01, 20., 4.71153831e+00, 4.92307711e+00, + 1.16673080e+02, 1.04500000e+02, 3.90384626e+00, 5.65384626e+00, + 3.48653831e+01, 2.26346149e+01, 3.01923084e+00, 1.25384617e+01, + 1.12442307e+02, 4.05384598e+01, 2.44230771e+00, 6., + 7.48269196e+01, 2.28461533e+01, 2.65384626e+00, 3.84615374e+00, + 1.34615386e+00, 3.84615374e+00, 2.23076916e+00, 4.36538458e+00, + 6.35192299e+01, 8.90384598e+01, 1.22307692e+01, 7.53846169e+00, + 3.50000000e+00, 5.69230747e+00, 3.61538458e+00, 1.83653851e+01, + 8.65576935e+01, 5.13076935e+01, 7.67307711e+00, 9.46153831e+00, + 3.43653831e+01, 1.77115383e+01, 7.53846169e+00, 2.07692299e+01, + 4.82307701e+01, 2.06153851e+01, 4.90384626e+00, 33., + 1.13403847e+02, 2.14615383e+01, 4.03846169e+00, 1.39615383e+01, + 3.35000000e+01, 7.96153831e+00, 2.73076916e+00, 1.03461542e+01, + 9., 9.40384579e+00, 9.40384579e+00, 1.48846149e+01, + 8.38461533e+01, 1.05384613e+02, 2.75961533e+01, 3.82692313e+00, + 3.36538458e+00, 3.57692313e+00, 4.09615374e+00, 3.53461533e+01, + 1.22846153e+02, 7.53653870e+01, 8.98076916e+00, 3.86538458e+00, + 2.36538458e+00, 9.23076928e-01, 4.40384626e+00, 4.62307701e+01, + 1.02788460e+02, 3.15576916e+01, 4.07692289e+00, 2.59038467e+01, + 2.75384617e+01, 2.01923084e+00, 5.78846169e+00, 2.59615383e+01, + 3.39615402e+01, 8.26923084e+00, 4.61538458e+00, 1.77692299e+01, + 21., 2.43846149e+01, 2.32500000e+01, 2.12115383e+01, + 3.05576916e+01, 3.08653851e+01, 1.71538467e+01, 1.36346149e+01, + 1.25961542e+01, 1.37115383e+01, 1.77500000e+01, 5.22884598e+01, + 8.95961533e+01, 3.88653831e+01, 1.35000000e+01, 1.07692313e+00, + 1.63461542e+00, 1.76923072e+00, 7.40384626e+00, 8.01153870e+01, + 1.10057693e+02, 2.13269234e+01, 2.92307687e+00, 1.03461542e+01, + 1.96153843e+00, 6.73076928e-01, 5.78846169e+00, 4.41730766e+01, + 3.98269234e+01, 6.28846169e+00, 2.30769229e+00, 5.65454559e+01, + 1.23333330e+01, 2.03030300e+00, 1.45151520e+01, 4.86060600e+01, + 1.75757580e+01, 1.10303030e+01, 1.36060610e+01, 6.66666641e+01, + 1.89393940e+01, 6.36363649e+00, 1.25757580e+01, 2.67575760e+01, + 1.99090900e+01, 2.63636360e+01, 3.28787880e+01, 3.26666679e+01, + 9.33333302e+00, 7.66666651e+00, 1.32727270e+01, 2.53636360e+01, + 2.38181820e+01, 2.49393940e+01, 2.62727280e+01, 3.07878780e+01, + 5.84848499e+00, 3.12121201e+00, 2.80303040e+01, 6.48484879e+01, + 1.15757580e+01, 5.84848499e+00, 1.93333340e+01, 5.02727280e+01, + 3.90909081e+01, 9.21212101e+00, 1.25151520e+01, 5.70606079e+01, + 2.47575760e+01, 6.96969700e+00, 9.54545498e+00, 8.33030319e+01, + 8.87878799e+01, 2.72727280e+01, 1.31515150e+01, 3.40606079e+01, + 34., 2.60303040e+01, 2.71212120e+01, 3.38484840e+01, + 2.27878780e+01, 2.75757580e+01, 5.78787880e+01, 4.27878799e+01, + 2.25757580e+01, 3.34545441e+01, 3.84545441e+01, 2.86363640e+01, + 4.45454550e+00, 1.59090910e+01, 86., 6.45454559e+01, + 6.33333349e+00, 8.12121201e+00, 3.06060600e+01, 2.77878780e+01, + 2.38484840e+01, 1.02424240e+01, 1.36969700e+01, 5.76666679e+01, + 2.66969700e+01, 2.60606050e+00, 8.03030300e+00, 1.23696968e+02, + 6.83030319e+01, 1.88181820e+01, 2.29393940e+01, 7.91212158e+01, + 2.49393940e+01, 1.26666670e+01, 5.49090919e+01, 5.66969681e+01, + 1.93333340e+01, 2.72121220e+01, 9.07272720e+01, 9.82424240e+01, + 15., 1.64848480e+01, 3.07575760e+01, 3.34545441e+01, + 6.09090900e+00, 1.88181820e+01, 5.96666679e+01, 3.03636360e+01, + 2.93939400e+00, 5.87878799e+00, 4.13030319e+01, 3.62727280e+01, + 9.09090900e+00, 4.12121201e+00, 1.89090900e+01, 5.25757561e+01, + 9.27272701e+00, 2.24242425e+00, 1.55454550e+01, 1.24666664e+02, + 1.86969700e+01, 2.90909100e+00, 2.95757580e+01, 9.60909119e+01, + 1.10303030e+01, 1.24242425e+00, 4.30909081e+01, 5.89696960e+01, + 1.16666670e+01, 5.12121201e+00, 5.56060600e+01, 1.09060608e+02, + 4.24242401e+00, 1.48484850e+00, 1.86363640e+01, 3.76969681e+01, + 8.33333302e+00, 3.78787875e+00, 9.21212101e+00, 1.72121220e+01, + 2.42424250e+00, 3.06060600e+00, 2.43939400e+01, 5.33863640e+01, + 3.99772720e+01, 1.56818187e+00, 1.72727275e+00, 8.63409119e+01, + 8.98409119e+01, 7.29545450e+00, 4.13636351e+00, 3.42045441e+01, + 1.52954550e+01, 2.47727275e+00, 3., 1.69318180e+01, + 1.73181820e+01, 1.29090910e+01, 1.36136360e+01, 8.81818199e+00, + 3.86363626e+00, 2.95454550e+00, 4.04545450e+00, 6.02272749e+00, + 8.36363602e+00, 1.37954550e+01, 1.18863640e+01, 1.06818187e+00, + 8.40909064e-01, 2.06818175e+00, 2.27272725e+00, 1.61363637e+00, + 2.77272725e+00, 5.59090900e+00, 3.34090900e+00, 6.75909119e+01, + 7.03409119e+01, 4.06818199e+00, 5.13636351e+00, 1.30500000e+02, + 1.32340912e+02, 1.18636360e+01, 3.93181825e+00, 5.11818199e+01, + 5.35000000e+01, 5.77272749e+00, 2.70454550e+00, 2.44545460e+01, + 3.92954559e+01, 2.24545460e+01, 1.33181820e+01, 1.34318180e+01, + 9.36363602e+00, 3., 3.56818175e+00, 8.93181801e+00, + 1.43181820e+01, 2.07727280e+01, 1.41590910e+01, 1.22727275e+00, + 1.02272725e+00, 1.27272725e+00, 2.06818175e+00, 2.81818175e+00, + 4.84090900e+00, 8.15909100e+00, 3.18181825e+00, 6.96136398e+01, + 7.74545441e+01, 1.66590900e+01, 1.92500000e+01, 1.22522728e+02, + 1.37431824e+02, 5.02954559e+01, 8.61363602e+00, 4.73181801e+01, + 7.96363602e+01, 1.62045460e+01, 4.47727251e+00, 6.33409081e+01, + 1.17136360e+02, 7.04772720e+01, 1.05454550e+01, 2.63181820e+01, + 3.29090919e+01, 6.38636351e+00, 4.22727251e+00, 1.07727270e+01, + 2.75227280e+01, 2.23181820e+01, 9.38636398e+00, 3.38636374e+00, + 2.79545450e+00, 1.56818187e+00, 2.31818175e+00, 3.34090900e+00, + 5.97727251e+00, 7.09090900e+00, 2.25000000e+00, 5.84090919e+01, + 4.72727280e+01, 2.15909100e+01, 3.16590900e+01, 3.82727280e+01, + 5.97500000e+01, 3.24090919e+01, 2.28636360e+01, 1.85227280e+01, + 3.89090919e+01, 1.57727270e+01, 1.18863640e+01, 7.82954559e+01, + 1.28045456e+02, 7.56590881e+01, 7.29545450e+00, 3.34772720e+01, + 4.39318199e+01, 6.18181801e+00, 2.88636374e+00, 4.49090919e+01, + 8.99318161e+01, 2.14545460e+01, 4.34090900e+00, 8.11363602e+00, + 1.12500000e+01, 1.93181813e+00, 1.54545450e+00, 3.95454550e+00, + 7.65909100e+00, 3.52272725e+00, 1.43181813e+00, 3.66712341e+01, + 4.18630142e+01, 1.97808228e+01, 1.19726028e+01, 6.68493128e+00, + 3.91780829e+00, 5.72602749e+00, 2.01095886e+01, 2.37260265e+01, + 3.29315071e+01, 3.22465744e+01, 2.64520550e+01, 1.59589043e+01, + 1.28630133e+01, 1.48219175e+01, 1.63972607e+01, 1.28493147e+01, + 2.33972607e+01, 3.55616455e+01, 3.80684929e+01, 2.18356171e+01, + 1.09726028e+01, 1.21095886e+01, 1.07397261e+01, 1.34383564e+01, + 1.66027393e+01, 2.57260265e+01, 3.61780815e+01, 2.91095886e+01, + 1.39178085e+01, 9.72602749e+00, 1.01917810e+01, 3.22054787e+01, + 1.02301369e+02, 5.12876701e+01, 1.16164379e+01, 5.56164360e+00, + 8.89041138e+00, 3.30136991e+00, 6.57534266e+00, 2.08630142e+01, + 7.25205460e+01, 7.00547943e+01, 3.37945213e+01, 1.10410957e+01, + 7.93150663e+00, 9.45205498e+00, 9.46575356e+00, 1.13150682e+01, + 2.83287678e+01, 5.96438370e+01, 4.85342484e+01, 2.02739735e+01, + 8.79452038e+00, 1.28082190e+01, 1.35616436e+01, 1.72739735e+01, + 1.43424654e+01, 3.91232872e+01, 6.39452057e+01, 2.22602749e+01, + 7.67123270e+00, 8.38356209e+00, 1.53972607e+01, 1.22191782e+01, + 1.16383560e+02, 8.59862976e+01, 6.76712322e+00, 1.24520550e+01, + 2.90958900e+01, 4.68493128e+00, 9.04109597e-01, 8.54794502e+00, + 1.06191780e+02, 1.22205482e+02, 1.86712322e+01, 2.69863009e+00, + 6.32876730e+00, 8.78082180e+00, 3.45205474e+00, 7.23287678e+00, + 4.68082199e+01, 1.19958900e+02, 5.18767128e+01, 6.34246588e+00, + 3.50684929e+00, 9.17808247e+00, 7.02739716e+00, 6.71232891e+00, + 1.03561640e+01, 1.02917809e+02, 9.41369858e+01, 6.73972607e+00, + 2.08219171e+00, 4.28767109e+00, 8.04109573e+00, 4.97260284e+00, + 6.51232910e+01, 4.47808228e+01, 3.35616446e+00, 1.77123280e+01, + 92., 2.74657536e+01, 7.53424644e-01, 2.38356161e+00, + 6.54657516e+01, 1.06424660e+02, 7.84931517e+00, 3.23287678e+00, + 3.99178085e+01, 2.68493156e+01, 1.17808223e+00, 2.43835616e+00, + 2.92328758e+01, 1.19397263e+02, 3.12739735e+01, 1.58904111e+00, + 6.21917820e+00, 1.74109592e+01, 4.46575356e+00, 2.54794526e+00, + 7.83561659e+00, 8.74383545e+01, 6.07260284e+01, 1.43835616e+00, + 1.21917808e+00, 1.38356161e+01, 1.19315071e+01, 1.75740738e+01, + 2.43333340e+01, 2.26666660e+01, 1.94814816e+01, 1.27222223e+01, + 1.09074078e+01, 7.87037039e+00, 9.77777767e+00, 1.01666670e+01, + 1.34629631e+01, 1.39629631e+01, 2.18888893e+01, 7.38148117e+01, + 36., 4.90740728e+00, 4.24074078e+00, 5.07407427e+00, + 6.07407427e+00, 2.51851845e+00, 2.11851845e+01, 1.28222229e+02, + 3.54814796e+01, 5.18518507e-01, 2.96296299e-01, 8.27407379e+01, + 4.91851845e+01, 3.57407403e+00, 9.66666698e+00, 4.19074059e+01, + 1.09259262e+01, 5.92592597e-01, 1.12962961e+00, 2.24074078e+01, + 2.43333340e+01, 2.27407398e+01, 2.08703709e+01, 1.12222223e+01, + 3.59259248e+00, 3.37037039e+00, 1.40740738e+01, 1.64629631e+01, + 1.28888893e+01, 1.56851854e+01, 6.23333321e+01, 7.78333359e+01, + 9.18518543e+00, 2.25925922e+00, 7.40740728e+00, 3.61111116e+00, + 1.98148143e+00, 3.85185194e+00, 9.36111145e+01, 1.28462967e+02, + 7., 3.51851851e-01, 5.00000000e-01, 1.03740738e+02, + 1.87777786e+01, 4.72222233e+00, 2.18703709e+01, 4.38148155e+01, + 4.18518496e+00, 9.62962985e-01, 1.48148146e+01, 1.57407408e+01, + 1.45370369e+01, 4.01851845e+01, 4.02407417e+01, 6.35185194e+00, + 3.35185194e+00, 4.92592573e+00, 1.81666660e+01, 6.96296310e+00, + 5.14814806e+00, 3.17777786e+01, 1.27425926e+02, 4.68148155e+01, + 8.70370388e-01, 8.70370388e-01, 5.66666651e+00, 7.98148155e+00, + 2.12962961e+00, 1.11666670e+01, 1.23796295e+02, 8.35740738e+01, + 5.92592597e-01, 1.48148149e-01, 5.53703690e+00, 1.15425926e+02, + 6.79629612e+00, 6.09259272e+00, 2.41666660e+01, 1.86851845e+01, + 1.62962961e+00, 1.14814818e+00, 7.59074097e+01, 2.68518519e+00, + 7.07407427e+00, 9.45185165e+01, 7.05740738e+01, 1.29629624e+00, + 4.44444448e-01, 1.87037039e+00, 3.44444442e+00, 8.51851881e-01, + 2.55555558e+00, 5.88148155e+01, 1.23518517e+02, 8.27777767e+00, + 2.22222224e-01, 8.51851881e-01, 2.72222233e+00, 1.98148155e+01, + 3.35185194e+00, 1.57962961e+01, 7.37592621e+01, 1.13888893e+01, + 2.59259254e-01, 2.77777767e+00, 5.90370369e+01, 9.58333359e+01, + 3., 3.62962961e+00, 1.59444447e+01, 8.85185146e+00, + 1.66666663e+00, 3.81481481e+00, 1.16759262e+02, 1.88659799e+00, + 9.40206146e+00, 3.00824738e+01, 2.33402061e+01, 8.02061844e+00, + 7.05154657e+00, 8.33195877e+01, 3.07319584e+01, 3.08247423e+00, + 3.51546383e+00, 4.03195877e+01, 5.62164955e+01, 8.91752625e+00, + 5.06185579e+00, 1.09711342e+02, 1.21360825e+02, 9.12371159e+00, + 1.59793818e+00, 4.70515480e+01, 1.30309280e+02, 8.88659763e+00, + 2.52577329e+00, 6.02474213e+01, 1.35567017e+02, 9.95876312e+00, + 2.12371135e+00, 1.24845362e+01, 1.23783508e+02, 1.76082478e+01, + 2.13402057e+00, 1.22783508e+01, 5.19896889e+01, 2.49484539e+00, + 1.21649485e+01, 1.33216492e+02, 6.27319603e+01, 2.60824752e+00, + 8.60824776e+00, 1.24948456e+02, 5.44845352e+01, 4.68041229e+00, + 4.07216501e+00, 1.33391754e+02, 1.32030930e+02, 3.63917518e+00, + 5.13402081e+00, 9.75876312e+01, 8.53711319e+01, 8.63917542e+00, + 2.78350520e+00, 6.95463943e+01, 1.25206184e+02, 4.44329882e+00, + 5.62886620e+00, 3.62886581e+01, 4.75876274e+01, 1.28556700e+01, + 2.60824752e+00, 5.47422695e+00, 2.11752586e+01, 2.63917518e+00, + 4.27835035e+00, 23., 3.93814430e+01, 4.23711348e+00, + 4.17525768e+00, 6.79690704e+01, 1.90721645e+01, 2.53608251e+00, + 7.24742270e+00, 2.57010307e+01, 1.76288662e+01, 7.91752577e+00, + 2.69072175e+00, 2.65154648e+01, 1.87113400e+01, 3.35051537e+00, + 7.62886620e+00, 3.25876274e+01, 3.03608246e+01, 1.05979385e+01, + 2.96907210e+00, 3.22680402e+00, 3.86597943e+00, 3.24742270e+00, + 6.50515461e+00, 3.15773201e+01, 3.56804123e+01, 1.14432993e+01, + 2.69072175e+00, 1.75257730e+00, 1.98969078e+00, 2.90721655e+00, + 4.82474232e+00, 1.78659801e+01, 3.15051556e+01, 1.48453605e+00, + 5.36082447e-01, 3.71134013e-01, 4.74226803e-01, 8.65979373e-01, + 3.95876288e+00, 1.42577324e+01, 7.53608227e+00, 2.80412364e+00, + 9.58762884e-01, 6.28865957e-01, 7.73195863e-01, 1.08247423e+00, + 2.80412364e+00, 1.49278355e+01, 1.22886600e+01, 3.68041229e+00, + 1.07216489e+00, 6.90721631e-01, 7.52577305e-01, 1.03092778e+00, + 2.06185555e+00, 1.24432993e+01, 1.39175262e+01, 3.79381442e+00, + 7.93814421e-01, 5.77319562e-01, 9.79381442e-01, 1.13402057e+00, + 1.59793818e+00, 7.08247423e+00, 1.23505154e+01, 1.97777772e+00, + 3.86666656e+00, 4.80000019e+00, 3.91111112e+00, 3.86666656e+00, + 3.33333325e+00, 3.79999995e+00, 1.93333328e+00, 2.97555561e+01, + 1.40444441e+01, 1.38888893e+01, 6.79111099e+01, 8.14000015e+01, + 1.42222223e+01, 1.26888885e+01, 2.93555565e+01, 9.39555588e+01, + 1.19777775e+01, 1.67555561e+01, 9.62222214e+01, 9.27777786e+01, + 1.00888891e+01, 1.73555565e+01, 9.75333328e+01, 5.77999992e+01, + 22., 2.46000004e+01, 4.30222206e+01, 3.93333321e+01, + 2.52888889e+01, 2.96888885e+01, 6.23111115e+01, 2.51111102e+00, + 4.80000019e+00, 6.88888884e+00, 5.73333311e+00, 7.53333330e+00, + 4.68888903e+00, 5.11111116e+00, 2.82222223e+00, 5.34444427e+01, + 2.18666668e+01, 1.37111111e+01, 6.18666649e+01, 1.09955559e+02, + 2.90222225e+01, 1.46222219e+01, 3.86888885e+01, 1.14266670e+02, + 3.12888889e+01, 1.76000004e+01, 7.97111130e+01, 1.07266670e+02, + 2.30222225e+01, 1.27111111e+01, 7.64222260e+01, 7.21777802e+01, + 3.95111122e+01, 3.39777794e+01, 4.69111099e+01, 3.95111122e+01, + 1.94888897e+01, 1.95111103e+01, 4.72222214e+01, 4.35555553e+00, + 6.57777786e+00, 6.08888912e+00, 4.15555573e+00, 6.64444447e+00, + 4.73333311e+00, 3.11111116e+00, 3.20000005e+00, 4.31777763e+01, + 3.35999985e+01, 1.83999996e+01, 2.68888893e+01, 9.26666641e+01, + 5.75333328e+01, 1.43555555e+01, 22., 8.80888901e+01, + 4.95555573e+01, 2.90444450e+01, 3.28222237e+01, 9.26222229e+01, + 6.39555550e+01, 3.39333344e+01, 4.32444458e+01, 6.41111145e+01, + 3.87555542e+01, 2.25555553e+01, 3.63111115e+01, 4.30888901e+01, + 2.25555553e+01, 2.21777782e+01, 4.60666656e+01, 2.11111116e+00, + 3.71111107e+00, 3.48888898e+00, 1.77777779e+00, 2.37777781e+00, + 2.06666660e+00, 1.48888886e+00, 1.46666670e+00, 1.34888887e+01, + 1.52222223e+01, 1.20888891e+01, 8.33333302e+00, 2.82444439e+01, + 2.90444450e+01, 8.35555553e+00, 7.59999990e+00, 2.55777779e+01, + 2.28444443e+01, 1.66888885e+01, 8.33333302e+00, 3.60888901e+01, + 4.11555557e+01, 2.33777771e+01, 1.67999992e+01, 2.30222225e+01, + 2.32888889e+01, 1.18222218e+01, 1.39111109e+01, 2.18666668e+01, + 1.49111109e+01, 1.24666662e+01, 1.90666676e+01, 3.26399994e+01, + 2.00799999e+01, 1.46599998e+01, 1.96599998e+01, 1.41599998e+01, + 1.12600002e+01, 3.18600006e+01, 5.55999985e+01, 2.46000004e+01, + 2.59799995e+01, 2.48199997e+01, 3.76800003e+01, 5.06800003e+01, + 4.75200005e+01, 4.61800003e+01, 2.73999996e+01, 6.13999987e+00, + 8.22000027e+00, 1.76399994e+01, 3.85000000e+01, 9.56600037e+01, + 6.13400002e+01, 1.68999996e+01, 5.21999979e+00, 1.55400000e+01, + 2.51399994e+01, 1.00200005e+01, 2.05000000e+01, 7.25800018e+01, + 2.91200008e+01, 3.27999997e+00, 1.84000003e+00, 2.73999996e+01, + 3.22999992e+01, 27., 3.18600006e+01, 2.60799999e+01, + 1.03999996e+01, 8.69999981e+00, 2.08600006e+01, 1.76599998e+01, + 3.64199982e+01, 50., 6.66999969e+01, 5.92000008e+01, + 2.17000008e+01, 8.69999981e+00, 9.93999958e+00, 4.92000008e+00, + 9.02000046e+00, 2.82600002e+01, 7.57200012e+01, 1.08680000e+02, + 3.06000004e+01, 3.94000006e+00, 2.85999990e+00, 1.93400002e+01, + 1.41599998e+01, 8.88000011e+00, 4.72200012e+01, 8.88600006e+01, + 1.46599998e+01, 2.57999992e+00, 4.48000002e+00, 1.32200003e+01, + 2.18600006e+01, 3.69599991e+01, 4.36800003e+01, 3.23800011e+01, + 2.25599995e+01, 1.56800003e+01, 1.15200005e+01, 1.18599997e+01, + 1.68199997e+01, 5.83600006e+01, 8.53600006e+01, 4.77000008e+01, + 1.31800003e+01, 5.98000002e+00, 8.64000034e+00, 3.38000011e+00, + 5.90000010e+00, 4.43800011e+01, 1.02680000e+02, 8.33000031e+01, + 1.41999998e+01, 2.81999993e+00, 3.77999997e+00, 1.65400009e+01, + 5.76000023e+00, 1.65000000e+01, 8.02600021e+01, 6.81600037e+01, + 9.43999958e+00, 3.48000002e+00, 8.68000031e+00, 5.88000011e+00, + 4.63600006e+01, 9.93199997e+01, 5.71800003e+01, 2.06800003e+01, + 1.69599991e+01, 1.11000004e+01, 4.55999994e+00, 1.67999995e+00, + 1.30200005e+01, 9.97200012e+01, 1.00419998e+02, 2.68400002e+01, + 5.82000017e+00, 4.71999979e+00, 1.51999998e+00, 1.75999999e+00, + 6.57999992e+00, 8.00800018e+01, 1.06139999e+02, 2.01200008e+01, + 3.79999995e+00, 3.96000004e+00, 3.38000011e+00, 1.47600002e+01, + 3.51999998e+00, 4.41199989e+01, 9.04400024e+01, 1.84200001e+01, + 2.70000005e+00, 6.44000006e+00, 2.38199997e+01, 2.16666675e+00, + 2.45833325e+00, 4.85416651e+00, 4.15416679e+01, 4.58125000e+01, + 6.20833349e+00, 2.56250000e+00, 2., 4.47916651e+00, + 1.81250000e+00, 5.45833349e+00, 9.68125000e+01, 7.86666641e+01, + 7.47916651e+00, 2.81250000e+00, 7.18750000e+00, 1.17083330e+01, + 1.29166663e+00, 5.22916651e+00, 1.16416664e+02, 5.32291679e+01, + 5.27083349e+00, 5.04166651e+00, 3.40208321e+01, 2.11041660e+01, + 2.66666675e+00, 1.05208330e+01, 79., 8.47916698e+00, + 1.52083337e+00, 3.83333325e+00, 5.10208321e+01, 2.75000000e+00, + 3.10416675e+00, 4.39583349e+00, 4.66875000e+01, 7.78958359e+01, + 9.50000000e+00, 2.43750000e+00, 2.27083325e+00, 1.34375000e+01, + 2.60416675e+00, 3.18750000e+00, 9.62083359e+01, 1.15812500e+02, + 1.18333330e+01, 4.79166651e+00, 1.48750000e+01, 4.22500000e+01, + 5.91666651e+00, 3.06250000e+00, 1.16041664e+02, 1.00812500e+02, + 2.77083325e+00, 2.97916675e+00, 3.09791660e+01, 7.34791641e+01, + 8.85416698e+00, 2.70833325e+00, 3.03333340e+01, 1.38958330e+01, + 2.87500000e+00, 1.02083337e+00, 5.24583321e+01, 3.25000000e+00, + 3.58333325e+00, 3.47916675e+00, 2.61666660e+01, 9.00208359e+01, + 1.75416660e+01, 2.22916675e+00, 2.14583325e+00, 2.01250000e+01, + 4.68750000e+00, 2.37500000e+00, 6.58958359e+01, 1.25916664e+02, + 1.61250000e+01, 3.66666675e+00, 9.43750000e+00, 6.52916641e+01, + 1.81875000e+01, 2.33333325e+00, 6.16250000e+01, 1.05166664e+02, + 2.68750000e+00, 1.29166663e+00, 1.14375000e+01, 1.01729164e+02, + 2.77083340e+01, 2.81250000e+00, 6.75000000e+00, 1.33958330e+01, + 2.75000000e+00, 1.10416663e+00, 2.33958340e+01, 2.79166675e+00, + 2.37500000e+00, 3., 1.00625000e+01, 7.44583359e+01, + 2.72500000e+01, 3.14583325e+00, 2.27083325e+00, 1.53125000e+01, + 4.27083349e+00, 1.27083337e+00, 2.01041660e+01, 1.25979164e+02, + 3.81250000e+01, 2.79166675e+00, 3.58333325e+00, 4.63125000e+01, + 2.28333340e+01, 1.50000000e+00, 1.29583330e+01, 9.63333359e+01, + 1.68125000e+01, 4.37500000e-01, 2.37500000e+00, 7.81666641e+01, + 4.71041679e+01, 2.81250000e+00, 1.31250000e+00, 1.01041670e+01, + 4.66666651e+00, 8.33333313e-01, 4.29166651e+00, 8.11111069e+00, + 1.23333330e+01, 1.97333336e+01, 2.49555550e+01, 2.81777782e+01, + 3.88888893e+01, 3.94000015e+01, 1.80444450e+01, 1.82666664e+01, + 1.97333336e+01, 3.23555565e+01, 4.59555550e+01, 3.87555542e+01, + 3.07111111e+01, 5.06222229e+01, 3.96666679e+01, 1.67333336e+01, + 14., 1.34222221e+01, 8.10888901e+01, 1.28177780e+02, + 6.40222244e+01, 2.73333340e+01, 2.07111111e+01, 6.97777796e+00, + 4.17777777e+00, 1.86666667e+00, 7.71111107e+00, 2.28444443e+01, + 6.33333349e+00, 3.71111107e+00, 4.64444447e+00, 4.68888903e+00, + 5.32000008e+01, 1.28044449e+02, 6.25333328e+01, 2.12666664e+01, + 5.00888901e+01, 8.48444443e+01, 2.38888893e+01, 1.09333334e+01, + 1.55333338e+01, 1.29866669e+02, 1.29866669e+02, 3.36888885e+01, + 2.03111115e+01, 8.09111099e+01, 5.45555573e+01, 1.50444441e+01, + 7.95555544e+00, 4.65333328e+01, 1.32111115e+02, 9.81111145e+01, + 2.16222229e+01, 2.71333332e+01, 4.13555565e+01, 5.35555553e+00, + 2.13333344e+00, 2.73333335e+00, 7.08888912e+00, 8.68888855e+00, + 3.66666675e+00, 5.48888874e+00, 1.10666666e+01, 3.55555558e+00, + 3.20444450e+01, 1.28666672e+02, 4.77777786e+01, 3.82222223e+00, + 1.51777782e+01, 6.36666679e+01, 2.67999992e+01, 9.75555515e+00, + 1.32222223e+01, 1.15377777e+02, 7.70666656e+01, 7.68888903e+00, + 13., 5.23111115e+01, 3.94222221e+01, 1.08222218e+01, + 8.19999981e+00, 2.41333332e+01, 3.27999992e+01, 1.02222223e+01, + 9.91111088e+00, 2.67555561e+01, 2.91777782e+01, 1.64444447e+00, + 1.53333330e+00, 2.71111107e+00, 2.04444456e+00, 1.46666670e+00, + 1.75555551e+00, 4.24444437e+00, 4.42222214e+00, 2.37777781e+00, + 2.37777781e+00, 6.19999981e+00, 4.84444427e+00, 2.66666675e+00, + 3.31111121e+00, 1.23777781e+01, 8.28888893e+00, 3.53333330e+00, + 4.17777777e+00, 4.13333321e+00, 4.51111126e+00, 4.33333349e+00, + 3.13333344e+00, 6.13333321e+00, 7.17777777e+00, 2.79999995e+00, + 2.97777772e+00, 4.53333330e+00, 3.79999995e+00, 3.28888893e+00, + 2.64444447e+00, 3.93333340e+00, 3.02222228e+00, 2.88888901e-01, + 3.77777785e-01, 8.00000012e-01, 5.33333361e-01, 4.22222227e-01, + 6.66666687e-01, 6.22222245e-01, 3.55555564e-01, 3.28750000e+01, + 1.68125000e+01, 2.20833325e+00, 2.66666675e+00, 6.83333349e+00, + 1.54583330e+01, 1.18750000e+01, 1.53750000e+01, 2.58541660e+01, + 1.89166660e+01, 8.54166698e+00, 4.75000000e+00, 7.41666651e+00, + 1.14166670e+01, 1.38750000e+01, 2.07291660e+01, 2.24791660e+01, + 2.21041660e+01, 1.15625000e+01, 8.02083302e+00, 7.29166651e+00, + 9.20833302e+00, 1.11458330e+01, 1.63958340e+01, 1.15625000e+01, + 8.93750000e+00, 6.97916651e+00, 9.83333302e+00, 1.00625000e+01, + 9.41666698e+00, 1.04583330e+01, 1.29375000e+01, 3.58750000e+01, + 9.54166641e+01, 1.47083330e+01, 7.70833313e-01, 2.75000000e+00, + 1.61041660e+01, 1.44166670e+01, 8.47916698e+00, 1.68125000e+01, + 3.74583321e+01, 2.24375000e+01, 4.22916651e+00, 7.02083349e+00, + 1.75000000e+01, 2.69166660e+01, 2.13125000e+01, 1.93125000e+01, + 1.67500000e+01, 2.43750000e+01, 1.15000000e+01, 6.68750000e+00, + 1.01875000e+01, 2.21041660e+01, 2.89375000e+01, 9.66666698e+00, + 6.35416651e+00, 2.71875000e+01, 5.77083321e+01, 1.31875000e+01, + 6.47916651e+00, 1.13958330e+01, 1.70208340e+01, 1.08125000e+01, + 1.28104172e+02, 7.94791641e+01, 4.79166657e-01, 3.54166657e-01, + 1.85000000e+01, 3.14166660e+01, 3.47916675e+00, 4.85416651e+00, + 1.07458336e+02, 1.28041672e+02, 5.87500000e+00, 1.29166663e+00, + 6.81250000e+00, 2.86875000e+01, 9.91666698e+00, 4.43750000e+00, + 2.64791660e+01, 1.28520828e+02, 5.36041679e+01, 1.91666663e+00, + 3.06250000e+00, 2.29583340e+01, 1.81666660e+01, 3.39583325e+00, + 3.39583325e+00, 1.14791664e+02, 1.16645836e+02, 4.41666651e+00, + 1.33333337e+00, 2.04375000e+01, 3.49166679e+01, 3.83333325e+00, + 3.87916679e+01, 4.26041679e+01, 1.97916663e+00, 2.56250000e+00, + 60., 1.05333336e+02, 6., 3.60416675e+00, 4.28333321e+01, + 9.71875000e+01, 9.14583302e+00, 2.16666675e+00, 2.10833340e+01, + 1.08166664e+02, 1.69791660e+01, 3.08333325e+00, 1.25625000e+01, + 1.05062500e+02, 3.82708321e+01, 1.75000000e+00, 6.29166651e+00, + 1.05604164e+02, 5.43333321e+01, 3.87500000e+00, 3.02083325e+00, + 5.55000000e+01, 47., 1.62500000e+00, 2.14583325e+00, + 8.22083359e+01, 1.00770836e+02, 1.64461536e+01, 6.16461525e+01, + 6.77076950e+01, 1.80153847e+01, 2.52307701e+00, 2.26153851e+00, + 3.33846164e+00, 5.09230757e+00, 3.32461548e+01, 8.51999969e+01, + 6.08153839e+01, 1.03230772e+01, 2.16923070e+00, 1.46153843e+00, + 3.09230781e+00, 8.16923046e+00, 2.43999996e+01, 3.88923073e+01, + 2.98923073e+01, 1.21230774e+01, 6.43076944e+00, 4.56923056e+00, + 7.78461552e+00, 1.46153851e+01, 8.83076954e+00, 9.21538448e+00, + 1.16923075e+01, 1.24461536e+01, 6.84615374e+00, 4.32307673e+00, + 7.81538439e+00, 1.24153843e+01, 2.32923069e+01, 76., + 6.80615387e+01, 2.45846157e+01, 8.66153812e+00, 2.07846146e+01, + 1.95384617e+01, 1.77384624e+01, 6.17538452e+01, 1.13030769e+02, + 7.95076904e+01, 2.10461540e+01, 5.87692308e+00, 9.56923103e+00, + 1.09692307e+01, 2.23999996e+01, 8.11076889e+01, 1.09907692e+02, + 5.79692307e+01, 1.12769232e+01, 4.64615393e+00, 5., + 6.44615364e+00, 2.05538464e+01, 2.56615391e+01, 2.75846157e+01, + 1.79692307e+01, 1.35692310e+01, 7.75384617e+00, 6.27692318e+00, + 1.02153845e+01, 1.90461540e+01, 1.57230768e+01, 1.09061539e+02, + 5.77076912e+01, 9.27692318e+00, 1.10153847e+01, 3.64615402e+01, + 1.74307690e+01, 9.12307739e+00, 4.90923080e+01, 1.04892311e+02, + 4.80769234e+01, 2.51384621e+01, 1.43692312e+01, 3.09384613e+01, + 2.24769230e+01, 2.76769238e+01, 1.12323074e+02, 1.12830772e+02, + 4.69076920e+01, 1.28461542e+01, 4.55384636e+00, 7.10769224e+00, + 8.58461571e+00, 3.40923080e+01, 6.05384598e+01, 5.34307709e+01, + 1.91538467e+01, 8.80000019e+00, 5.98461533e+00, 4., + 6.41538477e+00, 2.01846161e+01, 1.65230770e+01, 7.15384598e+01, + 2.26615391e+01, 5.64615393e+00, 3.44153862e+01, 6.70307693e+01, + 9.13846111e+00, 2.49230766e+00, 5.62153854e+01, 1.17661537e+02, + 2.65076923e+01, 9.61538506e+00, 1.48153849e+01, 2.58153839e+01, + 9.90769196e+00, 1.09384613e+01, 9.39538498e+01, 8.99692307e+01, + 2.50923080e+01, 9.64615345e+00, 6.66153860e+00, 8.67692280e+00, + 8.83076954e+00, 3.03076916e+01, 7.43230743e+01, 5.20307693e+01, + 1.44769230e+01, 3.53846145e+00, 1.78461540e+00, 1.38461542e+00, + 2.81538463e+00, 1.75538464e+01, 7.67567587e+00, 1.35675678e+01, + 3.58648643e+01, 4.47027016e+01, 5.55675659e+01, 3.89729729e+01, + 2.37297306e+01, 8.83783817e+00, 3.81891899e+01, 4.55675659e+01, + 4.13243256e+01, 2.67297306e+01, 8.70540543e+01, 7.36486511e+01, + 4.07567558e+01, 1.79459457e+01, 4.27297287e+01, 3.55135117e+01, + 1.19729729e+01, 1.21351347e+01, 9.02162170e+01, 9.06756744e+01, + 1.24324322e+01, 1.48648653e+01, 3.47027016e+01, 3.14054050e+01, + 1.65405407e+01, 1.65675678e+01, 4.77837830e+01, 3.91621628e+01, + 7.72972965e+00, 1.09189186e+01, 2.40540552e+00, 7.83783770e+00, + 1.86216221e+01, 2.61351357e+01, 4.38378372e+01, 5.19459457e+01, + 3.15945950e+01, 6.37837839e+00, 2.13783779e+01, 3.83783798e+01, + 2.59189186e+01, 1.59189186e+01, 3.92972984e+01, 7.23243256e+01, + 5.95405388e+01, 2.11891899e+01, 2.02162170e+01, 5.19459457e+01, + 1.59459457e+01, 9.86486530e+00, 5.84054070e+01, 1.15972977e+02, + 4.35675659e+01, 1.22162161e+01, 7.78378391e+00, 2.40270271e+01, + 1.32162161e+01, 8.94594574e+00, 2.59189186e+01, 9.45135117e+01, + 6.37297287e+01, 5.89189196e+00, 2.21621633e+00, 1.02702701e+00, + 3.48648643e+00, 7.91891909e+00, 2.79189186e+01, 7.09459457e+01, + 4.84054070e+01, 9.78378391e+00, 5.18918896e+00, 7.18918896e+00, + 9.83783817e+00, 1.26756754e+01, 1.89729729e+01, 6.74594574e+01, + 7.09189224e+01, 1.83513508e+01, 9.13513470e+00, 3.02972965e+01, + 1.31351347e+01, 8.70270252e+00, 1.69189186e+01, 7.89459457e+01, + 7.42432404e+01, 2.48648643e+01, 6.83783770e+00, 1.82972965e+01, + 7.75675678e+00, 2.51351357e+00, 6.02702713e+00, 7.92972946e+01, + 1.07216217e+02, 2.94054050e+01, 9., 3.67567563e+00, + 3.64864874e+00, 5.78378391e+00, 1.22162161e+01, 4.15675659e+01, + 4.56756744e+01, 1.57837839e+01, 5.16216230e+00, 1.67567563e+00, + 2.51351357e+00, 5.62162161e+00, 13., 5.98918915e+01, + 9.22432404e+01, 2.19459457e+01, 2.91891885e+00, 1.10810816e+00, + 7.29729712e-01, 2.48648643e+00, 8.48648643e+00, 4.60540543e+01, + 9.43513489e+01, 3.16756763e+01, 5.05405426e+00, 2.62162161e+00, + 1.05405402e+00, 8.37837815e-01, 3.21621633e+00, 2.17297306e+01, + 7.08918915e+01, 3.46756744e+01, 1.43690472e+01, 1.18928576e+01, + 2.47619057e+00, 5.61904764e+00, 1.76071434e+01, 1.62380943e+01, + 6.08333349e+00, 2.66666675e+00, 1.20797623e+02, 1.29809525e+02, + 4.32142878e+00, 3.80952382e+00, 5.18095245e+01, 6.08571434e+01, + 5.08333349e+00, 4.44047642e+00, 4.47976189e+01, 7.03095245e+01, + 8.39285755e+00, 3.46428561e+00, 7.84047623e+01, 1.27892860e+02, + 6.45238113e+00, 5.03571415e+00, 2.74523811e+01, 3.73333321e+01, + 1.84761906e+01, 4.35714293e+00, 5.72619057e+00, 1.78095245e+01, + 3.15476179e+00, 5.90476179e+00, 2.86904764e+00, 3.07142854e+00, + 2.59523821e+00, 5.05952358e+00, 2.16309528e+01, 2.67738094e+01, + 8.54761887e+00, 3.39285707e+00, 4.83928566e+01, 1.17809525e+02, + 5.94047642e+00, 5.75000000e+00, 2.54404755e+01, 3.46428566e+01, + 1.00833330e+01, 4.22619057e+00, 4.89047623e+01, 1.40369049e+02, + 2.79523811e+01, 3.05952382e+00, 3.98809509e+01, 1.33726196e+02, + 1.61428566e+01, 2.73809528e+00, 1.30119047e+01, 6.91309509e+01, + 2.97142849e+01, 4.50000000e+00, 1.22023811e+01, 1.28880951e+02, + 4.15714302e+01, 2.89285707e+00, 1.71428573e+00, 1.79761910e+00, + 2.76190472e+00, 3.90476179e+00, 1.63809528e+01, 3.19404755e+01, + 1.22738094e+01, 3.41666675e+00, 4.36904764e+00, 1.38095236e+01, + 3.82142854e+00, 5.20238113e+00, 2.29761906e+01, 4.27976189e+01, + 1.91785717e+01, 5.14285707e+00, 1.12500000e+01, 1.26666664e+02, + 3.36071434e+01, 4.16666651e+00, 1.49761906e+01, 4.82619057e+01, + 1.94880943e+01, 4.19047642e+00, 5.63095236e+00, 1.38511902e+02, + 9.34047623e+01, 2.26190472e+00, 5.57142878e+00, 9.84047623e+01, + 5.44285698e+01, 3.47619057e+00, 1.42857146e+00, 1.45238090e+00, + 1.92857146e+00, 2.30952382e+00, 7.48809528e+00, 2.31071434e+01, + 1.09880953e+01, 2.25000000e+00, 1.71428573e+00, 1.28571427e+00, + 1.80952382e+00, 2.83333325e+00, 1.19166670e+01, 3.67261887e+01, + 1.96071434e+01, 3.33333325e+00, 1.71428573e+00, 6.13095236e+00, + 3.36904764e+00, 2.41666675e+00, 1.18928576e+01, 3.44642868e+01, + 2.30476189e+01, 4.50000000e+00, 2.14285707e+00, 4.05476189e+01, + 2.82142849e+01, 1.65476191e+00, 5.89285707e+00, 1.97261906e+01, + 1.90595245e+01, 5.85714293e+00, 4.37500000e+00, 1.12250004e+01, + 3.62500000e+00, 2.65000010e+00, 2.20000005e+00, 1.37500000e+00, + 1.92499995e+00, 2.47499990e+00, 4.44749985e+01, 2.31250000e+01, + 1.00500002e+01, 2.32749996e+01, 1.97999992e+01, 5.44999981e+00, + 6.30000019e+00, 4.18499985e+01, 1.23074997e+02, 1.22250004e+01, + 7.94999981e+00, 7.05000000e+01, 5.05750008e+01, 3.15000010e+00, + 2.79999995e+00, 1.24324997e+02, 4.55000000e+01, 3.50000000e+00, + 4.19999981e+00, 1.30199997e+02, 1.03525002e+02, 2.75000000e+00, + 2.52500010e+00, 6.46750031e+01, 4.47499990e+00, 9.19999981e+00, + 4.12500000e+00, 5.72499990e+00, 5.77500010e+00, 2.82500005e+00, + 5.19999981e+00, 4.57499981e+00, 8.98249969e+01, 5.26250000e+01, + 2.09249992e+01, 2.07749996e+01, 2.25000000e+01, 9.67500019e+00, + 7.22499990e+00, 6.44250031e+01, 1.20875000e+02, 7.03000031e+01, + 5.95250015e+01, 1.18199997e+02, 6.23750000e+01, 6.22499990e+00, + 4.09999990e+00, 9.31500015e+01, 2.71749992e+01, 1.15000000e+01, + 2.12749996e+01, 1.29250000e+02, 9.05250015e+01, 4.92500019e+00, + 8.47500038e+00, 3.16749992e+01, 4.42500019e+00, 5.65000010e+00, + 3., 2.45000005e+00, 3.62500000e+00, 3.82500005e+00, + 3.62500000e+00, 3.79999995e+00, 3.98250008e+01, 5.28499985e+01, + 3.13500004e+01, 1.75750008e+01, 9.97500038e+00, 1.01250000e+01, + 8.42500019e+00, 1.72500000e+01, 3.50250015e+01, 6.44499969e+01, + 8.59499969e+01, 8.62249985e+01, 2.41499996e+01, 1.32250004e+01, + 14., 1.49250002e+01, 1.44499998e+01, 1.53249998e+01, + 3.05000000e+01, 5.47000008e+01, 1.61000004e+01, 5.15000010e+00, + 8.64999962e+00, 1.87749996e+01, 6.49999976e-01, 1.25000000e+00, + 5.24999976e-01, 1.25000000e-01, 3.24999988e-01, 9.75000024e-01, + 8.24999988e-01, 3.00000012e-01, 1.64999998e+00, 4.84999990e+00, + 4.69999981e+00, 2.20000005e+00, 1.12500000e+00, 2.15000010e+00, + 2.25000000e+00, 7.74999976e-01, 1.72500002e+00, 2.92499995e+00, + 6.27500010e+00, 6.27500010e+00, 1.47500002e+00, 2.12500000e+00, + 2.75000000e+00, 2.67499995e+00, 1.62500000e+00, 2.40000010e+00, + 2.52500010e+00, 2.82500005e+00, 6.00000024e-01, 7.50000000e-01, + 1.29999995e+00, 2.70000005e+00, 6.22388077e+00, 2.20895519e+01, + 3.01940308e+01, 1.05820894e+01, 2.97014928e+00, 1.56716418e+00, + 1.68656719e+00, 2.17910457e+00, 7.50746250e+00, 2.44477615e+01, + 2.60895519e+01, 8.83582115e+00, 4.04477596e+00, 2.70149255e+00, + 1.68656719e+00, 2.22388053e+00, 6.35820913e+00, 1.43880596e+01, + 1.65074635e+01, 7.95522404e+00, 6.83582067e+00, 5.74626875e+00, + 4.58208942e+00, 3.31343293e+00, 5.49253750e+00, 8.92537308e+00, + 8.19402981e+00, 4.17910433e+00, 5.08955240e+00, 5.85074615e+00, + 7.55223894e+00, 3.55223870e+00, 8.07462692e+00, 5.72238808e+01, + 1.37626862e+02, 3.08059692e+01, 4.31343269e+00, 3.97014928e+00, + 9.40298462e+00, 6.89552259e+00, 1.41641788e+01, 1.14059700e+02, + 1.25059700e+02, 1.57611942e+01, 4.82089567e+00, 7.10447741e+00, + 5.76119423e+00, 4.08955240e+00, 2.15671635e+01, 7.28656693e+01, + 5.58059692e+01, 1.46716413e+01, 8.01492500e+00, 8.32835865e+00, + 7.11940289e+00, 8., 1.48507462e+01, 3.06567173e+01, + 2.48955231e+01, 8.59701538e+00, 7.70149231e+00, 7.86567163e+00, + 8.49253750e+00, 7.79104471e+00, 3.70149255e+00, 46., + 1.36880600e+02, 2.79701500e+01, 3.67164183e+00, 7.37313414e+00, + 1.40149250e+01, 7.23880577e+00, 1.16865673e+01, 1.47194031e+02, + 1.35164185e+02, 5.28358221e+00, 3.97014928e+00, 1.06417913e+01, + 9.41791058e+00, 4., 5.04029846e+01, 1.48507462e+02, + 6.21492538e+01, 6.73134327e+00, 6.82089567e+00, 1.51940298e+01, + 4.88059711e+00, 5.71641779e+00, 2.84626865e+01, 68., + 2.27910442e+01, 6.55223894e+00, 6.13432837e+00, 8.41791058e+00, + 6.31343269e+00, 8.40298462e+00, 9.55223846e+00, 1.37910452e+01, + 2.44626865e+01, 1.55223885e+01, 1.37462683e+01, 2.78507462e+01, + 3.75820885e+01, 2.04029846e+01, 2.04029846e+01, 6.00895538e+01, + 2.50149250e+01, 5.83582067e+00, 1.38208952e+01, 2.94179096e+01, + 2.21791039e+01, 8.70149231e+00, 1.08373131e+02, 1.41641785e+02, + 1.29850750e+01, 2.74626875e+00, 1.07014923e+01, 1.32238808e+01, + 3.77611947e+00, 3.88059711e+00, 8.10746231e+01, 9.24626846e+01, + 1.25223885e+01, 4.20895529e+00, 9.56716442e+00, 9.32835865e+00, + 5.31343269e+00, 5.35820913e+00, 5.06451607e+00, 2.06774197e+01, + 5.04032249e+01, 2.91612911e+01, 4.58064508e+00, 1.88709676e+00, + 2.33870959e+00, 3.12903237e+00, 1.41935480e+00, 7.67741919e+00, + 4.14516144e+01, 5.61935501e+01, 1.63870964e+01, 4.87096786e+00, + 2., 1.12903225e+00, 2.40322590e+00, 2.17741942e+00, + 2.08548393e+01, 4.37096786e+01, 2.32741928e+01, 7.32258081e+00, + 3.04838705e+00, 1.02741938e+01, 3.44677429e+01, 9.83870983e-01, + 6.14516115e+00, 3.66935501e+01, 1.89838715e+01, 3.79032254e+00, + 5.16129017e+00, 9.32258072e+01, 2.91935492e+00, 2.13709679e+01, + 4.36774178e+01, 2.10806446e+01, 3.70967746e+00, 5.53225803e+00, + 2.02741928e+01, 3.72580647e+00, 1.58064520e+00, 9.48387051e+00, + 4.44677429e+01, 3.55806465e+01, 1.02258062e+01, 4.66129017e+00, + 4.07580643e+01, 2.95967751e+01, 6.11290312e+00, 2.64516139e+00, + 2.77741928e+01, 5.62419357e+01, 1.06129036e+01, 4.64516115e+00, + 6.04838715e+01, 1.19951614e+02, 1.66774197e+01, 1.37096775e+00, + 1.78064518e+01, 1.20806450e+02, 1.75000000e+01, 1.77419353e+00, + 2.42419357e+01, 1.19548386e+02, 1.79032254e+00, 1.70322590e+01, + 1.00661293e+02, 1.55645161e+01, 1.77419353e+00, 1.89032249e+01, + 1.24129036e+02, 2.49677410e+01, 2.03225803e+00, 5.11290312e+00, + 1.13161293e+02, 72., 2.87096763e+00, 4.83870983e+00, + 1.21854836e+02, 8.99193573e+01, 3.80645156e+00, 2.59677410e+00, + 1.04645164e+02, 1.23322578e+02, 3.51612902e+00, 2.75806451e+00, + 7.45483856e+01, 9.80483856e+01, 6.06451607e+00, 1.88709676e+00, + 3.49193535e+01, 1.07548386e+02, 4.14516115e+00, 2.43548393e+00, + 1.51774197e+01, 3.04354839e+01, 1.96774197e+00, 1.03870964e+01, + 1.06919357e+02, 1.45806456e+01, 1.32258070e+00, 6.09677410e+00, + 2.77419357e+01, 1.07096777e+01, 3.59677410e+00, 3.24193549e+00, + 9.34354858e+01, 4.12741928e+01, 2., 5.90322590e+00, + 2.09838715e+01, 1.41451616e+01, 5.08064508e+00, 1.79032254e+00, + 2.95806446e+01, 2.76290321e+01, 2.16129041e+00, 5.17741919e+00, + 1.81774197e+01, 1.56935482e+01, 6.25806475e+00, 1.37096775e+00, + 2.09677410e+00, 2.91935492e+00, 1.51612902e+00, 2.95161295e+00, + 1.48064518e+01, 1.95161285e+01, 3., 2.46341467e+00, 10., + 7.11707306e+01, 4.66829262e+01, 4.73170710e+00, 3.65853667e+00, + 5., 3.34146333e+00, 1.56097555e+00, 1.69512196e+01, + 1.18560974e+02, 5.32195129e+01, 2.41463423e+00, 3.36585355e+00, + 5.73170710e+00, 3.29268289e+00, 3.70731711e+00, 3.81463432e+01, + 7.12439041e+01, 9.56097603e+00, 3.41463423e+00, 1.12926826e+01, + 8.31707287e+00, 5.58536577e+00, 1.92439022e+01, 3.76097565e+01, + 1.03170729e+01, 2.31707311e+00, 1.33658533e+01, 2.37804871e+01, + 8.58536625e+00, 4.39024401e+00, 3.60975599e+00, 1.01219511e+01, + 8.84878082e+01, 1.10975609e+02, 1.00975609e+01, 3.19512200e+00, + 3.58536577e+00, 7.58536577e+00, 4.65853643e+00, 4.09756088e+00, + 8.75853653e+01, 1.07341461e+02, 1.09024391e+01, 6.95121956e+00, + 8.43902397e+00, 1.61951218e+01, 1.62682934e+01, 1.27073174e+01, + 2.25609760e+01, 1.63170738e+01, 1.31707315e+01, 2.74390240e+01, + 2.64390240e+01, 2.04634151e+01, 3.66341476e+01, 3.08048782e+01, + 1.34878044e+01, 1.39024391e+01, 3.44146347e+01, 4.12439041e+01, + 1.83170738e+01, 1.12195120e+01, 1.04634142e+01, 8.21951199e+00, + 3.02926826e+01, 1.12536583e+02, 4.62439041e+01, 4.43902445e+00, + 3.70731711e+00, 3.39512177e+01, 2.25609760e+01, 4.60975599e+00, + 1.30731707e+01, 1.05512192e+02, 7.09024353e+01, 2.14878044e+01, + 1.91463413e+01, 4.28048782e+01, 4.53170738e+01, 2.12439022e+01, + 7.90243912e+00, 2.78048782e+01, 8.00975647e+01, 56., + 2.79024391e+01, 1.33902435e+01, 2.62439022e+01, 2.55609760e+01, + 2.02926826e+01, 2.58048782e+01, 4.35609741e+01, 2.23170738e+01, + 7.21951199e+00, 1.30975609e+01, 2.10243912e+01, 8.63414669e+00, + 1.45853662e+01, 6.17317085e+01, 6.35121956e+01, 1.07317076e+01, + 6.48780489e+00, 3.24390259e+01, 5.32682915e+01, 1.14146338e+01, + 6.73170710e+00, 7.36097565e+01, 1.21243904e+02, 1.90487804e+01, + 9.65853691e+00, 3.49512177e+01, 8.83658524e+01, 6.05365868e+01, + 2.08536587e+01, 3.61951218e+01, 1.01268295e+02, 5.15365868e+01, + 1.30243902e+01, 3.07317066e+00, 1.33658533e+01, 3.10487804e+01, + 3.00243912e+01, 2.88048782e+01, 3.99512177e+01, 3.00975609e+01, + 5.36585379e+00, 4.17058830e+01, 4.62745094e+00, 8.98235321e+01, + 1.52529419e+02, 3.40784302e+01, 9.21568584e+00, 1.19098038e+02, + 1.60862747e+02, 3.32352943e+01, 6.01960802e+00, 1.64509811e+01, + 3.46862755e+01, 9.72549057e+00, 1.41960783e+01, 1.31509811e+02, + 1.60941177e+02, 1.34901962e+01, 7.29411745e+00, 1.34901962e+01, + 1.48235292e+01, 1.73137264e+01, 2.35294113e+01, 7.09607849e+01, + 8.70784302e+01, 4.47058821e+00, 3.27450991e+00, 6.92156839e+00, + 7.58823538e+00, 1.02941179e+01, 1.24705887e+01, 1.46666670e+01, + 1.37647057e+01, 4.06666679e+01, 5.84313726e+00, 9.13725471e+00, + 2.34705887e+01, 1.40980396e+01, 1.71176472e+01, 1.19901962e+02, + 1.53823532e+02, 2.25098038e+01, 1.31176472e+01, 2.03137264e+01, + 2.31960793e+01, 3.18039207e+01, 4.35098038e+01, 7.40980377e+01, + 7.16470566e+01, 1.16666670e+01, 1.37058821e+01, 2.31960793e+01, + 2.59019604e+01, 3.37450981e+01, 4.34117661e+01, 3.54509811e+01, + 2.01960793e+01, 5.13725471e+00, 5.01960802e+00, 9.54901981e+00, + 1.25098038e+01, 1.56078434e+01, 1.93921566e+01, 1.29019604e+01, + 6.80392170e+00, 1.54705887e+01, 9.09803963e+00, 1.25294113e+01, + 1.82156868e+01, 2.32745094e+01, 2.54117641e+01, 4.45294113e+01, + 4.68627434e+01, 1.11764708e+01, 1.58627453e+01, 2.35882359e+01, + 2.78627453e+01, 4.18431358e+01, 4.26666679e+01, 2.32941170e+01, + 1.68627453e+01, 1.11960783e+01, 1.49019604e+01, 1.84705887e+01, + 2.40588226e+01, 3.19411774e+01, 3.86666679e+01, 2.12745094e+01, + 1.13921566e+01, 4.54901981e+00, 4.39215708e+00, 7.88235283e+00, + 1.30784311e+01, 1.27254906e+01, 1.61372547e+01, 1.12745094e+01, + 5.88235283e+00, 4.33333349e+00, 4.74509811e+00, 5.78431368e+00, + 8.74509811e+00, 1.54313726e+01, 1.54509802e+01, 8.88235283e+00, + 6.05882359e+00, 6.60784292e+00, 7.03921556e+00, 8.54901981e+00, + 1.32549019e+01, 1.95098038e+01, 2.02156868e+01, 1.11764708e+01, + 6.45098019e+00, 5.84313726e+00, 5.37254906e+00, 1.01764708e+01, + 1.86470585e+01, 1.42549019e+01, 1.29019604e+01, 1.09607840e+01, + 7.21568632e+00, 3.35294127e+00, 1.90196073e+00, 3.13725495e+00, + 5.21568632e+00, 5.05882359e+00, 6.78431368e+00, 4.92156839e+00, + 3.23529410e+00, 3.71428561e+00, 5.18367338e+00, 1.13061228e+01, + 1.46122446e+01, 1.25102043e+01, 1.03877554e+01, 9.63265324e+00, + 5.89795923e+00, 5.51020432e+00, 6.97959185e+00, 2.05510197e+01, + 3.36326523e+01, 1.68979588e+01, 1.09183674e+01, 1.03673468e+01, + 9.75510216e+00, 4.24489784e+00, 4.91836739e+00, 3.03877544e+01, + 4.84693871e+01, 1.65306129e+01, 1.05102043e+01, 1.72653065e+01, + 1.96938782e+01, 2.73469377e+00, 3.26530623e+00, 2.38163261e+01, + 3.86938782e+01, 1.18979588e+01, 8.61224461e+00, 2.38163261e+01, + 2.40816326e+01, 5.16326523e+00, 8.57142830e+00, 4.26122437e+01, + 5.59795914e+01, 1.67142849e+01, 1.82448978e+01, 3.42653046e+01, + 2.25714283e+01, 6.02040815e+00, 6.61224508e+00, 5.30408173e+01, + 8.21020432e+01, 1.53877554e+01, 1.22653065e+01, 5.99387741e+01, + 5.79591827e+01, 4.24489784e+00, 3.32653069e+00, 5.08775520e+01, + 8.12040787e+01, 1.23061228e+01, 1.01428576e+01, 6.17959175e+01, + 6.75918350e+01, 5.85714293e+00, 4.28571415e+00, 4.86326523e+01, + 8.29795914e+01, 1.11224489e+01, 1.00612249e+01, 5.04897957e+01, + 6.21632652e+01, 7.30612230e+00, 7.42857122e+00, 3.90816345e+01, + 6.65918350e+01, 1.38979588e+01, 1.37346935e+01, 5.23673477e+01, + 5.08367348e+01, 4.46938753e+00, 4.89795923e+00, 6.56122437e+01, + 1.05816330e+02, 1.65714283e+01, 1.20816326e+01, 6.57142868e+01, + 7.48775482e+01, 3.12244892e+00, 3.12244892e+00, 8.08571396e+01, + 112., 8.44897938e+00, 6.30612230e+00, 8.45102005e+01, + 1.05020409e+02, 4.18367338e+00, 3., 4.62448997e+01, + 7.36938782e+01, 1.01632652e+01, 6.36734676e+00, 7.25102005e+01, + 103., 5.83673477e+00, 5.02040815e+00, 4.66122437e+01, + 8.67142868e+01, 1.45102043e+01, 8.04081631e+00, 4.31020393e+01, + 6.39591827e+01, 5.83673477e+00, 3.08163261e+00, 4.78367348e+01, + 8.79387741e+01, 1.63469391e+01, 8.36734676e+00, 7.39795914e+01, + 1.04428574e+02, 5.24489784e+00, 3.71428561e+00, 2.36938782e+01, + 4.18163261e+01, 1.48979588e+01, 9.44897938e+00, 6.13877563e+01, + 8.37959213e+01, 3.44897962e+00, 4.10204077e+00, 1.10612249e+01, + 1.70204086e+01, 1.42653065e+01, 9.61224461e+00, 2.00816326e+01, + 2.36326523e+01, 3.43152161e+01, 2.43478251e+00, 9.22826099e+00, + 7.35978241e+01, 6.13478279e+01, 7.25000000e+00, 1.87282600e+01, + 9.16739120e+01, 1.24152176e+02, 1.21086960e+01, 3.29347825e+00, + 2.15108700e+01, 1.35000000e+01, 1.80434787e+00, 9.07608700e+00, + 1.26500000e+02, 1.12260872e+02, 1.75108700e+01, 2.55434775e+00, + 2.02173924e+00, 1.66304350e+00, 1.44565213e+00, 5.14130449e+00, + 7.65543442e+01, 1.16956520e+01, 2.90217400e+00, 1.02173913e+00, + 6.08695626e-01, 8.04347813e-01, 1.11956525e+00, 1.77173913e+00, + 6.82608700e+00, 3.74347839e+01, 5.43478251e+00, 1.42500000e+01, + 6.15108681e+01, 2.10108700e+01, 5.10869551e+00, 4.24456520e+01, + 1.21271736e+02, 1.19043480e+02, 1.15434780e+01, 5.96739149e+00, + 1.91630440e+01, 6.20652151e+00, 2.78260875e+00, 1.33043480e+01, + 1.32336960e+02, 1.03163040e+02, 1.39239130e+01, 4.43478251e+00, + 4.35869551e+00, 3.59782600e+00, 3.57608700e+00, 9.20652199e+00, + 8.78913040e+01, 7.93478251e+00, 3., 2.26086950e+00, + 1.41304350e+00, 1.60869563e+00, 1.52173913e+00, 2.73913050e+00, + 6.82608700e+00, 4.75978279e+01, 8.35869598e+00, 1.15108700e+01, + 2.59673920e+01, 6.67391300e+00, 5.90217400e+00, 3.50434799e+01, + 1.11684784e+02, 1.01010872e+02, 7.45652151e+00, 3.23913050e+00, + 5.64130449e+00, 3.85869575e+00, 4.33695650e+00, 2.47608700e+01, + 1.30228256e+02, 6.08369560e+01, 1.15326090e+01, 6.96739149e+00, + 7.03260851e+00, 7.51086950e+00, 7.81521749e+00, 1.50543480e+01, + 6.98804321e+01, 4.23913050e+00, 2.15217400e+00, 1.91304350e+00, + 1.61956525e+00, 2.60869575e+00, 2.56521749e+00, 3.33695650e+00, + 5.27173901e+00, 2.99456520e+01, 3.04347825e+00, 1.98913038e+00, + 3.05434775e+00, 2.35869575e+00, 4.15217400e+00, 4.00869560e+01, + 1.11086960e+02, 4.54021721e+01, 6.68478251e+00, 3.44565225e+00, + 4.67391300e+00, 6.68478251e+00, 7.10869551e+00, 2.60869560e+01, + 9.38043442e+01, 2.27608700e+01, 9.22826099e+00, 6.19565201e+00, + 6.50000000e+00, 1.00760870e+01, 1.01195650e+01, 1.22608700e+01, + 2.77391300e+01, 2.45652175e+00, 1.65217388e+00, 1.50000000e+00, + 1.25000000e+00, 1.83695650e+00, 1.91304350e+00, 2.43478251e+00, + 3.08695650e+00, 2.45312500e+00, 3.03125000e+00, 5.67187500e+00, + 3.43750000e+00, 1.12500000e+00, 1.06250000e+00, 3.01562500e+00, + 2.84375000e+00, 3.54218750e+01, 4.12031250e+01, 5.37968750e+01, + 4.04218750e+01, 1.81250000e+01, 1.61406250e+01, 2.93437500e+01, + 3.62812500e+01, 5.10937500e+01, 5.73125000e+01, 6.69062500e+01, + 5.85625000e+01, 4.22500000e+01, 4.15937500e+01, 3.34687500e+01, + 3.66406250e+01, 5.14843750e+01, 6.52656250e+01, 5.33125000e+01, + 3.75781250e+01, 6.62968750e+01, 7.56718750e+01, 4.29687500e+01, + 2.37031250e+01, 3.67187500e+00, 5.20312500e+00, 7.31250000e+00, + 3.84375000e+00, 1.81250000e+00, 1.39062500e+00, 4.35937500e+00, + 5.03125000e+00, 4.80937500e+01, 5.75468750e+01, 6.86093750e+01, + 5.18593750e+01, 2.59218750e+01, 1.97968750e+01, 3.72031250e+01, + 4.74531250e+01, 5.36093750e+01, 5.81093750e+01, 7.73125000e+01, + 7.91250000e+01, 5.05468750e+01, 3.34843750e+01, 4.02968750e+01, + 4.96718750e+01, 6.28437500e+01, 6.26875000e+01, 6.49843750e+01, + 5.62812500e+01, 5.49687500e+01, 4.47656250e+01, 3.00781250e+01, + 3.41250000e+01, 3.75000000e+00, 5., 8.15625000e+00, + 5.01562500e+00, 1.95312500e+00, 1.78125000e+00, 4.34375000e+00, + 4.35937500e+00, 4.67812500e+01, 5.48750000e+01, 7.23437500e+01, + 5.71093750e+01, 2.69843750e+01, 1.98906250e+01, 3.78125000e+01, + 4.66718750e+01, 5.37187500e+01, 5.57187500e+01, 8.14531250e+01, + 8.42187500e+01, 4.25781250e+01, 2.79218750e+01, 3.88906250e+01, + 5.01562500e+01, 5.12343750e+01, 5.15468750e+01, 6.54687500e+01, + 6.12343750e+01, 3.65781250e+01, 2.94375000e+01, 3.09062500e+01, + 4.01250000e+01, 2.75000000e+00, 2.70312500e+00, 6.09375000e+00, + 4.15625000e+00, 1.78125000e+00, 1.32812500e+00, 2.92187500e+00, + 3.01562500e+00, 2.98593750e+01, 2.71406250e+01, 5.13281250e+01, + 4.87812500e+01, 2.21875000e+01, 1.34843750e+01, 2.31718750e+01, + 3.23437500e+01, 3.90937500e+01, 3.93593750e+01, 5.82031250e+01, + 6.36406250e+01, 2.88125000e+01, 1.84687500e+01, 2.43281250e+01, + 3.90625000e+01, 3.43906250e+01, 3.52031250e+01, 4.25937500e+01, + 4.35468750e+01, 2.28593750e+01, 1.59218750e+01, 1.95468750e+01, + 3.22812500e+01, 1.37209308e+00, 2., 9.23255825e+00, + 9.06976700e+00, 2.65116286e+00, 1.48837209e+00, 1.34883726e+00, + 8.13953459e-01, 1.81395352e+00, 3.65116286e+00, 1.42558136e+01, + 8.93023300e+00, 2.76744175e+00, 1.09302330e+00, 6.27906978e-01, + 1.16279066e+00, 1.62790692e+00, 5.69767427e+00, 1.46046515e+01, + 7.09302330e+00, 1.65116274e+00, 6.74418628e-01, 5.58139563e-01, + 1., 1.13953483e+00, 5.90697670e+00, 1.04883718e+01, + 3.48837209e+00, 9.53488350e-01, 6.27906978e-01, 8.60465109e-01, + 7.44186044e-01, 2.72093034e+00, 5.27906990e+00, 2.05813961e+01, + 2.36279068e+01, 7.25581408e+00, 3.18604660e+00, 1.59302330e+01, + 1.59302330e+01, 3.60465121e+00, 8.18604660e+00, 2.56046505e+01, + 2.08139534e+01, 7.32558155e+00, 7.27906990e+00, 8.62558136e+01, + 4.76744194e+01, 3.88372087e+00, 8.81395340e+00, 3.09302330e+01, + 1.51162786e+01, 5.39534903e+00, 1.64418602e+01, 1.23674416e+02, + 2.94186039e+01, 5.95348835e+00, 9.65116310e+00, 2.17906971e+01, + 6.90697670e+00, 3.20930243e+00, 2.79767437e+01, 1.08023254e+02, + 8.18604660e+00, 4.48837233e+00, 2.55813956e+00, 4.38139534e+01, + 6.94186020e+01, 5.27906990e+00, 3., 8.55581360e+01, + 1.25813957e+02, 3.72093034e+00, 5.60465097e+00, 1.23627907e+02, + 1.04232559e+02, 3.79069757e+00, 6.67441845e+00, 1.23790695e+02, + 1.05116280e+02, 3.60465121e+00, 1.85813961e+01, 1.33348831e+02, + 6.01162796e+01, 3.11627913e+00, 1.88139534e+01, 1.22581398e+02, + 3.39534874e+01, 3.41860461e+00, 5.84651146e+01, 1.31348831e+02, + 1.10465117e+01, 2.72093034e+00, 4.11860466e+01, 1.12232559e+02, + 8.46511650e+00, 9.32558155e+00, 3.55813956e+00, 4.54418602e+01, + 1.17511627e+02, 6.65116262e+00, 2.88372087e+00, 2.07674427e+01, + 5.84186058e+01, 1.06279068e+01, 5.93023252e+00, 5.48372078e+01, + 5.96046524e+01, 3.83720922e+00, 1.14651165e+01, 2.92790699e+01, + 2.48139534e+01, 1.01627903e+01, 6.46511650e+00, 3.20465126e+01, + 1.00697670e+01, 3.34883714e+00, 2.27674427e+01, 3.40697670e+01, + 2.24651165e+01, 4.37209320e+00, 1.43953485e+01, 2.65116272e+01, + 2.04651165e+00, 5.25581408e+00, 2.39534893e+01, 2.42558136e+01, + 1.24883718e+01, 3.34615374e+00, 1.06346149e+01, 8.55192337e+01, + 1.58269234e+01, 2.46153855e+00, 1.63269234e+01, 1.16557693e+02, + 2.41346149e+01, 2.71153855e+00, 3.43269234e+01, 8.59807663e+01, + 7.96153831e+00, 3.23076916e+00, 6.34038467e+01, 1.21192307e+02, + 6.15384626e+00, 5.65384626e+00, 3.17307701e+01, 3.64615402e+01, + 5.03846169e+00, 3.03846145e+00, 9.75384598e+01, 1.02807693e+02, + 3.59615374e+00, 7.30769253e+00, 1.62884617e+01, 1.31730766e+01, + 3.84615374e+00, 2.59615374e+00, 5.05769234e+01, 2.87115383e+01, + 2.84615374e+00, 7.55769253e+00, 1.04230766e+01, 9.48269196e+01, + 2.18653851e+01, 3.80769229e+00, 2.36730766e+01, 4.21538467e+01, + 1.57884617e+01, 3.01923084e+00, 5.59230766e+01, 1.11461540e+02, + 7.50000000e+00, 8.36538506e+00, 4.37692299e+01, 4.77692299e+01, + 7.88461542e+00, 2.94230771e+00, 1.17403847e+02, 1.12269234e+02, + 3.86538458e+00, 9.48076916e+00, 8.27692337e+01, 5.76538467e+01, + 2.63461542e+00, 6.46153831e+00, 1.07807693e+02, 3.56538467e+01, + 2.38461542e+00, 8.67307663e+00, 1.21826920e+02, 4.78461533e+01, + 1.80769229e+00, 8.84615421e+00, 2.84615374e+00, 2.09615374e+00, + 2.76923084e+00, 6.32692289e+00, 3.32307701e+01, 4.70576935e+01, + 2.50961533e+01, 3.30769229e+00, 2.90384626e+00, 2.65384626e+00, + 3., 2.08653851e+01, 6.63653870e+01, 3.95192299e+01, + 1.13076925e+01, 3.86538458e+00, 3.31923065e+01, 1.19807692e+01, + 4., 3.30384598e+01, 5.66923065e+01, 1.91153851e+01, + 3.90384626e+00, 2.07307701e+01, 1.16653847e+02, 1.81730766e+01, + 3.05769229e+00, 2.16923084e+01, 5.05769234e+01, 7.25000000e+00, + 1.98076928e+00, 1.06153851e+01, 8.84615421e+00, 7.42307711e+00, + 7.50000000e+00, 1.29807692e+01, 2.85192299e+01, 4.50961533e+01, + 2.50769234e+01, 2.67307687e+00, 3.26923084e+00, 6.44230747e+00, + 1.08846149e+01, 3.37307701e+01, 5.95192299e+01, 3.78269234e+01, + 8.78846169e+00, 1.65384614e+00, 1.57692313e+00, 2.32692313e+00, + 9.17307663e+00, 4.39230766e+01, 4.80384598e+01, 1.71346149e+01, + 3.11538458e+00, 1.57500000e+01, 2.33461533e+01, 1.82692313e+00, + 7.03846169e+00, 3.19615383e+01, 2.35961533e+01, 6.73076916e+00, + 2.96153855e+00, 5.47727251e+00, 6.22727251e+00, 3.29545450e+00, + 1.43181813e+00, 1.31818187e+00, 7.27272749e+00, 7.70454550e+00, + 6.31818199e+00, 6.86363649e+00, 6.06818199e+00, 6.11363649e+00, + 2.43181825e+00, 1.61363637e+00, 4., 6.36363649e+00, + 8.54545498e+00, 4.88636351e+00, 4.45454550e+00, 8.70454502e+00, + 3.18181825e+00, 3.61363626e+00, 4.97727251e+00, 6.47727251e+00, + 7.22727251e+00, 2.61363626e+00, 2.56818175e+00, 6.79545450e+00, + 2.65909100e+00, 4.22727251e+00, 5.77272749e+00, 7.59090900e+00, + 5.27272749e+00, 7.95454550e+00, 2.44090900e+01, 6.32727280e+01, + 1.33181820e+01, 2.75000000e+00, 1.87500000e+01, 3.98636360e+01, + 1.42045450e+01, 1.15000000e+01, 1.89772720e+01, 7.58863602e+01, + 3.10454540e+01, 3.65909100e+00, 1.01590910e+01, 4.25909081e+01, + 3.82272720e+01, 8.38636398e+00, 2.13863640e+01, 7.38863602e+01, + 2.62727280e+01, 5., 1.49090910e+01, 7.88181839e+01, + 4.33863640e+01, 3.52272725e+00, 2.35000000e+01, 6.15000000e+01, + 9.70454502e+00, 5.31818199e+00, 1.94772720e+01, 8.48409119e+01, + 1.93181820e+01, 9.77272701e+00, 2.97954540e+01, 8.61590881e+01, + 1.74090900e+01, 4.36363649e+00, 5.22272720e+01, 1.27977272e+02, + 3.23181801e+01, 3.44318199e+01, 2.21136360e+01, 6.51363602e+01, + 3.36363640e+01, 1.37727270e+01, 4.51363640e+01, 1.23295456e+02, + 9.79318161e+01, 2.74090900e+01, 1.42272730e+01, 3.61818199e+01, + 3.20227280e+01, 1.75000000e+01, 3.67954559e+01, 1.11522728e+02, + 9.15000000e+01, 8.45454502e+00, 1.48409090e+01, 2.59545460e+01, + 1.28863640e+01, 1.09090910e+01, 4.40909081e+01, 9.68863602e+01, + 2.19772720e+01, 1.15909090e+01, 6.42954559e+01, 1.17113640e+02, + 9.88636398e+00, 6.88636351e+00, 3.22272720e+01, 8.39318161e+01, + 1.79545460e+01, 3.17500000e+01, 7.78409119e+01, 8.25454559e+01, + 2.19772720e+01, 2.71136360e+01, 4.33409081e+01, 6.15227280e+01, + 3.17727280e+01, 2.62045460e+01, 4.09318199e+01, 2.96818180e+01, + 2.33409100e+01, 2.47500000e+01, 3.29772720e+01, 2.77500000e+01, + 2.48636360e+01, 9.59090900e+00, 1.02500000e+01, 2.00681820e+01, + 2.50909100e+01, 1.62500000e+01, 1.97500000e+01, 1.94772720e+01, + 1.04318180e+01, 1.05149254e+02, 1.31940292e+02, 1.17611942e+01, + 2.22388053e+00, 2.41791034e+00, 3.50746274e+00, 1.43283582e+00, + 2.94029856e+00, 8.05074615e+01, 8.79850769e+01, 1.44626865e+01, + 4.68656731e+00, 4.28358221e+00, 5.10447741e+00, 5.80597019e+00, + 1.03731346e+01, 2.23134327e+01, 2.22238808e+01, 9.94029808e+00, + 4.79104471e+00, 5.10447741e+00, 6.56716394e+00, 8.19402981e+00, + 9.95522404e+00, 2.65671635e+00, 3.02985072e+00, 1.19402981e+00, + 3.58208954e-01, 4.32835817e-01, 1.07462692e+00, 1.52238810e+00, + 1.23880601e+00, 1.43417908e+02, 9.42835846e+01, 5.10447741e+00, + 5.52238798e+00, 9.05970192e+00, 8.25373173e+00, 3.29850745e+00, + 1.98208961e+01, 1.41134323e+02, 1.12910446e+02, 1.46268654e+01, + 4.71641779e+00, 4.34328365e+00, 3.70149255e+00, 5.26865673e+00, + 1.91044769e+01, 4.10597000e+01, 4.42835808e+01, 1.19402981e+01, + 4.04477596e+00, 3.83582091e+00, 5.43283606e+00, 8.49253750e+00, + 1.48059702e+01, 4.64179087e+00, 4.14925385e+00, 1.47761190e+00, + 5.67164183e-01, 2.98507452e-01, 9.25373137e-01, 1.41791046e+00, + 1.74626863e+00, 1.41044769e+02, 2.01044769e+01, 5.34328365e+00, + 1.34626865e+01, 2.06865673e+01, 1.11492538e+01, 7.73134327e+00, + 7.94626846e+01, 1.43149246e+02, 6.18208961e+01, 1.13731346e+01, + 7.61194038e+00, 6.35820913e+00, 4.79104471e+00, 6.64179087e+00, + 5.44179115e+01, 6.31194038e+01, 4.68955231e+01, 8.64179134e+00, + 3.05970144e+00, 2.52238798e+00, 3.14925385e+00, 7.65671635e+00, + 1.86119404e+01, 7.44776106e+00, 5.88059711e+00, 1.26865673e+00, + 3.73134315e-01, 2.38805965e-01, 4.77611929e-01, 1., + 1.86567163e+00, 9.91343307e+01, 1.02388058e+01, 8.05970192e+00, + 2.31791039e+01, 1.89701500e+01, 7.17910433e+00, 1.37761192e+01, + 1.21298508e+02, 1.11567162e+02, 2.83582096e+01, 7.76119423e+00, + 8.58208942e+00, 7.05970144e+00, 6.56716394e+00, 1.16567163e+01, + 7.50597000e+01, 5.92835808e+01, 2.37014923e+01, 4.43283606e+00, + 2.44776130e+00, 1.94029856e+00, 3., 7.62686586e+00, + 2.76716423e+01, 6.80597019e+00, 2.95522380e+00, 6.71641767e-01, + 2.08955228e-01, 1.19402982e-01, 1.79104477e-01, 8.50746274e-01, + 3.79104471e+00, 3.43750000e+00, 3.93750000e+00, 3.81250000e+00, + 2.96875000e+00, 5.21875000e+00, 5.09375000e+00, 2.93750000e+00, + 2.78125000e+00, 4.62500000e+00, 5.06250000e+00, 2.90625000e+00, + 3.71875000e+00, 7.31250000e+00, 5.31250000e+00, 2.68750000e+00, + 2.40625000e+00, 4.59375000e+00, 5.53125000e+00, 2.34375000e+00, + 3.15625000e+00, 4.90625000e+00, 4.15625000e+00, 3.28125000e+00, + 2.28125000e+00, 1.37500000e+00, 5.93750000e-01, 3.75000000e-01, + 3.75000000e-01, 5.62500000e-01, 6.25000000e-01, 8.12500000e-01, + 7.50000000e-01, 3.39687500e+01, 4.36250000e+01, 3.48437500e+01, + 1.95625000e+01, 2.20625000e+01, 2.61250000e+01, 1.70625000e+01, + 2.05000000e+01, 2.91875000e+01, 3.31562500e+01, 24., + 2.89687500e+01, 4.91875000e+01, 4.35000000e+01, 2.96875000e+01, + 2.39062500e+01, 3.62187500e+01, 3.12187500e+01, 1.91562500e+01, + 2.09687500e+01, 3.31250000e+01, 3.09687500e+01, 2.96562500e+01, + 2.16875000e+01, 1.23125000e+01, 6.18750000e+00, 4.37500000e+00, + 6.06250000e+00, 7.06250000e+00, 6.71875000e+00, 7.09375000e+00, + 6.65625000e+00, 5.29687500e+01, 1.62281250e+02, 1.22156250e+02, + 2.41250000e+01, 1.67187500e+01, 1.45000000e+01, 1.16562500e+01, + 1.77187500e+01, 5.29375000e+01, 8.21875000e+01, 6.74375000e+01, + 4.90312500e+01, 4.67500000e+01, 3.59375000e+01, 2.65000000e+01, + 3.05625000e+01, 4.13125000e+01, 4.86250000e+01, 3.85625000e+01, + 3.19687500e+01, 3.75937500e+01, 3.42187500e+01, 3.23750000e+01, + 3.08750000e+01, 1.03437500e+01, 9.93750000e+00, 8.25000000e+00, + 9.71875000e+00, 7.65625000e+00, 7.68750000e+00, 8.59375000e+00, + 7.65625000e+00, 5.34062500e+01, 1.78968750e+02, 1.50468750e+02, + 1.27500000e+01, 8.03125000e+00, 1.18125000e+01, 4.84375000e+00, + 7., 9.88437500e+01, 1.76281250e+02, 8.89687500e+01, + 2.45625000e+01, 1.93750000e+01, 18., 1.38125000e+01, + 2.28125000e+01, 4.55000000e+01, 5.67187500e+01, 3.52812500e+01, + 2.33125000e+01, 2.60312500e+01, 2.77500000e+01, 2.77187500e+01, + 2.81875000e+01, 8.34375000e+00, 7.87500000e+00, 6.71875000e+00, + 8.06250000e+00, 7.40625000e+00, 7.53125000e+00, 8.09375000e+00, + 7.09375000e+00, 3.81818175e+00, 5.34090900e+00, 5.31818199e+00, + 3.56818175e+00, 3.70454550e+00, 3.13636374e+00, 3.03409100e+00, + 2.21590900e+00, 4.48863649e+00, 7.07954550e+00, 6.07954550e+00, + 3.63636374e+00, 4.09090900e+00, 4.52272749e+00, 3.44318175e+00, + 3.01136374e+00, 5.11363649e+00, 6.01136351e+00, 5.28409100e+00, + 2.37500000e+00, 3.35227275e+00, 3.65909100e+00, 2.90909100e+00, + 3., 2.44318175e+00, 2.79545450e+00, 1.82954550e+00, + 1.17045450e+00, 1.21590912e+00, 1.22727275e+00, 1.61363637e+00, + 1.34090912e+00, 2.44318180e+01, 6.79659119e+01, 5.98750000e+01, + 1.91704540e+01, 1.28522730e+01, 1.07159090e+01, 1.10681820e+01, + 1.23522730e+01, 2.87954540e+01, 4.76136360e+01, 4.24431801e+01, + 2.39772720e+01, 2.36250000e+01, 2.66250000e+01, 2.08068180e+01, + 1.72613640e+01, 2.97159100e+01, 3.95454559e+01, 3.44545441e+01, + 1.96250000e+01, 2.24772720e+01, 2.71363640e+01, 2.21250000e+01, + 2.03977280e+01, 1.57727270e+01, 1.98522720e+01, 1.48295450e+01, + 9.78409100e+00, 1.03863640e+01, 1.18409090e+01, 1.15681820e+01, + 1.01250000e+01, 2.99886360e+01, 1.43886368e+02, 1.37931824e+02, + 1.81704540e+01, 8.21590900e+00, 8.67045498e+00, 8.14772701e+00, + 9.13636398e+00, 4.55568199e+01, 1.36090912e+02, 9.88068161e+01, + 2.46250000e+01, 1.87386360e+01, 1.72840900e+01, 1.34090910e+01, + 1.51477270e+01, 4.24886360e+01, 7.49772720e+01, 5.09204559e+01, + 2.60681820e+01, 2.28295460e+01, 2.57727280e+01, 2.39545460e+01, + 2.56477280e+01, 19., 2.83181820e+01, 2.11136360e+01, + 1.34545450e+01, 1.29204550e+01, 1.72840900e+01, 1.52045450e+01, + 1.39431820e+01, 3.43068199e+01, 1.44022720e+02, 1.20215912e+02, + 1.59204550e+01, 8.95454502e+00, 2.32500000e+01, 1.48068180e+01, + 1.01136360e+01, 6.20340919e+01, 1.53329544e+02, 1.09363640e+02, + 1.08295450e+01, 7.71590900e+00, 1.08863640e+01, 8., + 1.03181820e+01, 6.46136398e+01, 1.34500000e+02, 5.33068199e+01, + 1.30227270e+01, 1.02840910e+01, 1.16477270e+01, 1.19431820e+01, + 1.68409100e+01, 2.03181820e+01, 3.07386360e+01, 1.81931820e+01, + 9.94318199e+00, 9.53409100e+00, 1.20340910e+01, 1.14204550e+01, + 1.04545450e+01, 5.16567154e+01, 2.46268654e+00, 1.19402981e+01, + 5.62686577e+01, 1.11940298e+01, 4.77611929e-01, 4.89552259e+00, + 8.84477615e+01, 6.43880615e+01, 5.05970144e+00, 9.82089520e+00, + 2.69402981e+01, 5.32835817e+00, 1.25373137e+00, 1.79850750e+01, + 1.29507462e+02, 4.10447769e+01, 8.74626827e+00, 7.50746250e+00, + 1.35671644e+01, 6.59701490e+00, 4.58208942e+00, 3.91940308e+01, + 1.20522385e+02, 2.19402981e+01, 9.98507500e+00, 6.44776106e+00, + 3.31343293e+00, 2.46268654e+00, 9.64179134e+00, 4.06268654e+01, + 5.48208961e+01, 1.20313431e+02, 4.04477596e+00, 1.79104483e+00, + 1.94179096e+01, 1.29253731e+01, 1.74626863e+00, 4.43283606e+00, + 1.01716415e+02, 1.09447762e+02, 1.44626865e+01, 5.05970144e+00, + 1.68059692e+01, 1.14477615e+01, 4.92537308e+00, 1.11492538e+01, + 1.19656715e+02, 6.27462692e+01, 3.03880596e+01, 7.67164183e+00, + 7.91044760e+00, 1.00895519e+01, 9.61194038e+00, 1.94626865e+01, + 7.32537308e+01, 3.38955231e+01, 2.32537308e+01, 7.73134327e+00, + 6.16417933e+00, 7.86567163e+00, 1.16119404e+01, 2.01194038e+01, + 3.33283577e+01, 1.27895523e+02, 2.42388058e+01, 1.28358209e+00, + 6.47761202e+00, 1.37313433e+01, 4.76119423e+00, 3.16417909e+00, + 5.12238808e+01, 1.10895523e+02, 2.76119404e+01, 6.79104471e+00, + 10., 1.38059702e+01, 1.11940298e+01, 9.83582115e+00, + 6.56268692e+01, 5.58507462e+01, 4.57462692e+01, 1.41641788e+01, + 8.88059711e+00, 1.08656721e+01, 1.24477615e+01, 1.21044779e+01, + 3.19701500e+01, 3.58358192e+01, 4.35223885e+01, 1.36865673e+01, + 6.41791058e+00, 6.82089567e+00, 6.80597019e+00, 1.37910452e+01, + 2.51343288e+01, 1.17119400e+02, 6.83880615e+01, 8.95522416e-01, + 1.14925373e+00, 8.05970192e+00, 8.86567211e+00, 3.07462692e+00, + 1.33880596e+01, 9.46417923e+01, 6.64776154e+01, 6.34328365e+00, + 4.91044760e+00, 1.02089548e+01, 1.49850750e+01, 1.07910452e+01, + 1.88656712e+01, 2.89253731e+01, 3.89701500e+01, 1.45671644e+01, + 7.55223894e+00, 9.22388077e+00, 1.65522385e+01, 1.79253731e+01, + 1.51791048e+01, 2.88358212e+01, 3.34776115e+01, 1.69104481e+01, + 8.67164135e+00, 3.71641803e+00, 3.86567163e+00, 8.28358173e+00, + 2.00149250e+01, 32., 1.90285721e+01, 9.77142811e+00, + 1.31428576e+01, 3.08857136e+01, 3.07999992e+01, 3.38285713e+01, + 3.16857147e+01, 3.06857147e+01, 1.36285715e+01, 1.30571432e+01, + 1.60285721e+01, 2.27428570e+01, 2.62857151e+01, 4.42857132e+01, + 5.38285713e+01, 1.70857143e+01, 1.42285719e+01, 1.54571428e+01, + 1.56857147e+01, 18., 2.55714283e+01, 3.39714279e+01, + 3.18857136e+01, 2.94285703e+00, 2.51428580e+00, 2.31428576e+00, + 2.94285703e+00, 3.34285712e+00, 5.05714273e+00, 5.11428595e+00, + 4.37142849e+00, 5.21428566e+01, 4.35714302e+01, 9.77142811e+00, + 1.20285711e+01, 4.88571434e+01, 5.53142853e+01, 5.16857147e+01, + 4.40285721e+01, 3.97714272e+01, 1.68857136e+01, 1.58000002e+01, + 1.88857136e+01, 3.03142853e+01, 3.82000008e+01, 6.21714287e+01, + 6.75999985e+01, 1.54285717e+01, 9., 1.62571430e+01, + 2.25428562e+01, 2.54571438e+01, 3.07999992e+01, 4.96285706e+01, + 4.00285721e+01, 4.17142868e+00, 3.42857146e+00, 4.48571444e+00, + 3.28571439e+00, 3.31428576e+00, 4.45714283e+00, 7.94285727e+00, + 8.45714283e+00, 7.51428604e+01, 1.31914291e+02, 5.05142860e+01, + 7.59999990e+00, 3.35714302e+01, 6.61999969e+01, 4.99428558e+01, + 3.13142853e+01, 3.65428581e+01, 4.96857147e+01, 2.35142860e+01, + 2.07428570e+01, 3.28285713e+01, 4.61714287e+01, 6.60285721e+01, + 5.26857147e+01, 1.27428570e+01, 6.77142859e+00, 1.23428574e+01, + 2.38857136e+01, 2.92857151e+01, 3.18857136e+01, 4.83714294e+01, + 3.55142860e+01, 2.54285717e+00, 2.11428571e+00, 3.62857151e+00, + 5.25714302e+00, 4.19999981e+00, 3.48571420e+00, 6.51428556e+00, + 6.57142878e+00, 5.16285706e+01, 1.21457146e+02, 5.52857132e+01, + 9.08571434e+00, 3.22285728e+01, 1.43942856e+02, 1.35514282e+02, + 3.60857124e+01, 6.87428589e+01, 1.38742859e+02, 4.91714287e+01, + 1.25142860e+01, 3.72285728e+01, 1.05285713e+02, 5.34000015e+01, + 1.87999992e+01, 2.29714279e+01, 4.03428574e+01, 1.48000002e+01, + 18., 2.46285706e+01, 3.09714279e+01, 3.47999992e+01, + 1.90285721e+01, 1.85714281e+00, 1.88571429e+00, 3.02857137e+00, + 4.37142849e+00, 3.82857132e+00, 2.88571429e+00, 4.88571405e+00, + 3.20000005e+00, 1.06274509e+01, 1.03137255e+01, 1.46470585e+01, + 1.10784311e+01, 5.78431368e+00, 8.60784340e+00, 2.14117641e+01, + 1.92745094e+01, 1.79411774e+01, 3.03725491e+01, 2.47843132e+01, + 1.17843142e+01, 1.46470585e+01, 3.42156868e+01, 3.58039207e+01, + 1.54901962e+01, 2.04705887e+01, 4.44117661e+01, 1.69215679e+01, + 9.88235283e+00, 2.34705887e+01, 3.88235283e+01, 18., + 6.09803915e+00, 9.47450943e+01, 7.63333359e+01, 4.62745094e+00, + 2.90196085e+00, 5.94117641e+00, 6.33333349e+00, 2.49019599e+00, + 5.47058821e+00, 2.43333340e+01, 2.24705887e+01, 1.42156858e+01, + 9.25490189e+00, 2.00392151e+01, 4.42156868e+01, 4.34509811e+01, + 2.80784321e+01, 1.65294113e+01, 2.93921566e+01, 2.35882359e+01, + 2.08823528e+01, 2.76274509e+01, 4.07647057e+01, 2.93333340e+01, + 1.10588236e+01, 2.45686283e+01, 2.54313717e+01, 1.95686283e+01, + 2.39019604e+01, 3.45294113e+01, 2.48235302e+01, 7.58823538e+00, + 1.08431368e+01, 1.13137253e+02, 2.05882359e+01, 2.88235283e+00, + 4.07843161e+00, 6.31372547e+00, 3.64705873e+00, 1.60784316e+00, + 4.69803925e+01, 3.58431358e+01, 7.77450943e+01, 6.45490189e+01, + 2.93333340e+01, 3.58823547e+01, 8.54313736e+01, 6.91372528e+01, + 2.55882359e+01, 5.07843161e+00, 1.54313726e+01, 4.28431358e+01, + 4.86274529e+01, 4.30392151e+01, 5.21764717e+01, 4.74705887e+01, + 2.17647057e+01, 19., 3.96078420e+00, 8.39215660e+00, + 1.88039207e+01, 1.80980396e+01, 1.04117651e+01, 2.40588226e+01, + 6.80392151e+01, 1.01450981e+02, 4.23529434e+00, 2.03921580e+00, + 2.45098042e+00, 2.43137264e+00, 1.62745094e+00, 7.70588255e+00, + 1.24137253e+02, 6.15686274e+00, 3.89411774e+01, 5.19215698e+01, + 1.55098038e+01, 9.37254906e+00, 8.60784302e+01, 9.50588226e+01, + 6.80392170e+00, 2., 6.15686274e+00, 3.29019623e+01, + 2.60392151e+01, 1.15882349e+01, 2.94117641e+01, 1.12196075e+02, + 3.88039207e+01, 1.12156858e+01, 1.78431368e+00, 5.98039198e+00, + 9.17647076e+00, 3.72549009e+00, 3.11764717e+00, 9.39215698e+01, + 1.22156860e+02, 3.42352943e+01, 3.41176462e+00, 1.94117641e+00, + 2.47058821e+00, 1.70588231e+00, 2.74509811e+00, 2.29803925e+01, + 1.07235291e+02, 7.14285731e-01, 8.57142866e-01, 4.61904764e+00, + 4.09523821e+00, 2.98095245e+01, 4.14285707e+00, 1.04761910e+00, + 2.85714298e-01, 3.80952388e-01, 9.52380970e-02, 4.76190478e-01, + 2.95238090e+00, 2.95238094e+01, 2.71428561e+00, 4.76190478e-01, + 6.19047642e-01, 2.38095239e-01, 0., 0., 2.38095239e-01, + 2.23809528e+00, 7.14285731e-01, 6.66666687e-01, 9.52380955e-01, + 1.42857149e-01, 0., 0., 4.76190485e-02, 5.71428597e-01, + 3.80952388e-01, 7.61904776e-01, 1.38095236e+00, 7.04761887e+00, + 9.61904716e+00, 1.38095236e+01, 2.14761906e+01, 1.27523811e+02, + 27., 7.14285707e+00, 2.90476179e+00, 2.47619057e+00, + 1.23809528e+00, 1.42857146e+00, 13., 8.59047623e+01, + 1.05714283e+01, 4.33333349e+00, 5.28571415e+00, 9.04761910e-01, + 0., 0., 1.28571427e+00, 1.02380953e+01, 3.52380943e+00, + 1.16190472e+01, 1.26190472e+01, 8.09523821e-01, 4.76190485e-02, + 0., 1.42857149e-01, 1.47619045e+00, 1.57142854e+00, + 2.21428566e+01, 2.01428566e+01, 3.80952382e+00, 3.47619057e+00, + 4.52380943e+00, 1.92857151e+01, 1.36619049e+02, 4.26190491e+01, + 2.72857151e+01, 6.42857122e+00, 1.90476191e+00, 2.85714298e-01, + 2.85714298e-01, 8.47619057e+00, 8.05238113e+01, 19., + 7.31904755e+01, 3.72380943e+01, 6.57142878e+00, 1.80952382e+00, + 3.33333343e-01, 1.04761910e+00, 8.19047642e+00, 6.66666651e+00, + 1.04761902e+02, 1.06714287e+02, 1.06666670e+01, 3.47619057e+00, + 6.19047642e-01, 3.33333343e-01, 4.66666651e+00, 1.06190472e+01, + 1.12142860e+02, 1.18047623e+02, 3.85714293e+00, 8.19047642e+00, + 2.42857146e+00, 8.71428585e+00, 8.68095245e+01, 6.18095245e+01, + 6.73809509e+01, 1.60476189e+01, 2.03333340e+01, 5.19047642e+00, + 1.38095236e+00, 6.95238113e+00, 53., 3.66190491e+01, + 1.30952377e+02, 7.21428604e+01, 5.35238113e+01, 1.09047623e+01, + 3.04761910e+00, 1.05238094e+01, 3.20952377e+01, 1.61904755e+01, + 1.22238098e+02, 1.10523811e+02, 5.11904755e+01, 1.72857151e+01, + 3.19047618e+00, 4.90476179e+00, 3.69047623e+01, 1.83333340e+01, + 5.37142868e+01, 7.37619019e+01, 2.65000010e+00, 6.31666660e+00, + 1.35000000e+01, 1.11666670e+01, 4.38333321e+00, 1.51666665e+00, + 8.50000024e-01, 1.39999998e+00, 4.11666679e+00, 9.88333321e+00, + 1.80833340e+01, 1.10166664e+01, 3.86666656e+00, 1.73333335e+00, + 1.26666665e+00, 1.75000000e+00, 3.96666670e+00, 1.03833332e+01, + 1.73166676e+01, 8.68333340e+00, 3.06666660e+00, 1.53333330e+00, + 1., 1.41666663e+00, 4.38333321e+00, 9.10000038e+00, + 1.13500004e+01, 4.61666679e+00, 2.28333330e+00, 1.70000005e+00, + 1.28333330e+00, 1.64999998e+00, 5.81666660e+00, 1.65166664e+01, + 9.65500031e+01, 5.53499985e+01, 7.38333321e+00, 4.11666679e+00, + 5.75000000e+00, 7.33333349e+00, 6.69999981e+00, 4.20833321e+01, + 1.33399994e+02, 3.87333336e+01, 7.08333349e+00, 5.51666689e+00, + 7.90000010e+00, 6.34999990e+00, 1.00333338e+01, 7.18333359e+01, + 1.01183334e+02, 1.99333324e+01, 6.83333349e+00, 7.50000000e+00, + 7.51666689e+00, 6.44999981e+00, 9.85000038e+00, 3.60166664e+01, + 44., 1.34833336e+01, 5.30000019e+00, 6.46666670e+00, + 5.55000019e+00, 6.15000010e+00, 2.73333335e+00, 7.63333321e+00, + 1.42583328e+02, 1.28300003e+02, 3.11666656e+00, 2.26666665e+00, + 6.33333349e+00, 8.75000000e+00, 2.56666660e+00, 6.49833298e+01, + 1.47733337e+02, 4.42666664e+01, 2.03333330e+00, 3.93333340e+00, + 8., 4.48333311e+00, 5.73333311e+00, 1.45466660e+02, + 1.42833328e+02, 6.76666689e+00, 3.59999990e+00, 9.31666660e+00, + 7.13333321e+00, 2.41666675e+00, 1.77833328e+01, 1.36633331e+02, + 6.45000000e+01, 8.75000000e+00, 6.26666689e+00, 1.23999996e+01, + 6.23333311e+00, 5.28333330e+00, 7.09999990e+00, 5.15000010e+00, + 2.71000004e+01, 4.58166656e+01, 9.94999981e+00, 8.58333302e+00, + 2.70333328e+01, 2.48500004e+01, 9.64999962e+00, 2.33333340e+01, + 3.09333324e+01, 1.26333332e+01, 8.51666641e+00, 2.17000008e+01, + 3.89500008e+01, 2.07500000e+01, 1.63333340e+01, 7.91999969e+01, + 2.73833332e+01, 3.70000005e+00, 7.71666670e+00, 2.46000004e+01, + 2.42500000e+01, 7.71666670e+00, 6.49000015e+01, 1.38516663e+02, + 14., 2.13333344e+00, 6.18333340e+00, 1.26333332e+01, + 5.46666670e+00, 2.51666665e+00, 1.21537315e+02, 3.91492538e+01, + 1.17761192e+01, 1.38805971e+01, 2.18656712e+01, 1.20895519e+01, + 7.29850769e+00, 5.08656731e+01, 1.21223877e+02, 4.71791039e+01, + 1.72985077e+01, 1.36865673e+01, 2.44626865e+01, 1.95223885e+01, + 1.82686558e+01, 6.24029846e+01, 9.96716385e+01, 4.41194038e+01, + 9.05970192e+00, 3.10447764e+00, 5.29850769e+00, 6.34328365e+00, + 1.67313442e+01, 6.20597000e+01, 1.78955231e+01, 7.76119423e+00, + 2.08955216e+00, 3.28358203e-01, 2.68656731e-01, 4.77611929e-01, + 3.44776130e+00, 1.13731346e+01, 1.23164177e+02, 1.87761192e+01, + 9.31343269e+00, 1.41044779e+01, 1.64477615e+01, 1.07462683e+01, + 1.70298500e+01, 1.20492538e+02, 1.19522385e+02, 2.41791039e+01, + 1.10895519e+01, 1.05522385e+01, 1.53432837e+01, 1.42238808e+01, + 4.14328346e+01, 1.30283585e+02, 8.35970154e+01, 2.28805962e+01, + 6.70149231e+00, 2.50746274e+00, 3.05970144e+00, 5.77611923e+00, + 3.18358212e+01, 1.04268654e+02, 12., 4.53731346e+00, + 2.49253726e+00, 1., 7.61194050e-01, 1.08955228e+00, + 5.44776106e+00, 1.42388058e+01, 70., 7.29850769e+00, + 3.89552236e+00, 6.65671635e+00, 6.91044760e+00, 1.00298510e+01, + 5.95522385e+01, 1.34343277e+02, 6.89104462e+01, 1.61343288e+01, + 6.07462692e+00, 4.43283606e+00, 5.38805962e+00, 1.22537317e+01, + 6.18507462e+01, 1.30626862e+02, 3.82388077e+01, 1.70447769e+01, + 1.33134327e+01, 8.29850769e+00, 6.19402981e+00, 9.74626827e+00, + 2.87761192e+01, 6.17462692e+01, 4.91044760e+00, 2.92537308e+00, + 3.43283582e+00, 2.68656707e+00, 1.91044772e+00, 1.59701490e+00, + 4.70149231e+00, 6.80597019e+00, 2.25522385e+01, 7.25373125e+00, + 4.65671635e+00, 4.35820913e+00, 4.88059711e+00, 1.12985077e+01, + 4.83880615e+01, 8.59552231e+01, 2.53432827e+01, 1.68507462e+01, + 1.17910452e+01, 9.22388077e+00, 8.44776154e+00, 1.27313433e+01, + 3.23283577e+01, 4.66865654e+01, 1.53432837e+01, 1.36119404e+01, + 1.28656721e+01, 1.07313433e+01, 8.62686539e+00, 8.80597019e+00, + 1.55671644e+01, 1.79402981e+01, 2.47761202e+00, 1.94029856e+00, + 2.59701490e+00, 2.52238798e+00, 1.62686563e+00, 1.14925373e+00, + 3.31343293e+00, 2.88059711e+00, 5.90909100e+00, 4.65909100e+00, + 1.66136360e+01, 1.55681820e+01, 6.47727251e+00, 2.28181820e+01, + 1.01977272e+02, 5.48409081e+01, 3.75000000e+00, 9.43181801e+00, + 1.92045460e+01, 8.75000000e+00, 8.95454502e+00, 5.27272720e+01, + 1.16022728e+02, 2.32727280e+01, 7.45454550e+00, 1.81818180e+01, + 2.25454540e+01, 5.84090900e+00, 1.22272730e+01, 9.68636398e+01, + 1.13590912e+02, 1.38409090e+01, 7.27272749e+00, 1.73409100e+01, + 1.13636360e+01, 3.29545450e+00, 2.15454540e+01, 8.57045441e+01, + 3.87954559e+01, 5.84090900e+00, 1.91590900e+01, 2.17045460e+01, + 1.89772720e+01, 2.09545460e+01, 1.76590900e+01, 1.48181820e+01, + 1.85909100e+01, 2.41136360e+01, 6.75000000e+00, 1.10681820e+01, + 2.12727280e+01, 2.64318180e+01, 2.53863640e+01, 2.24545460e+01, + 1.95909100e+01, 1.02500000e+01, 1.23863640e+01, 2.19090900e+01, + 2.72727280e+01, 2.47045460e+01, 3.11818180e+01, 4.08636360e+01, + 2.79772720e+01, 1.45681820e+01, 1.48409090e+01, 2.18863640e+01, + 1.85454540e+01, 2.57954540e+01, 8.12272720e+01, 7.86136398e+01, + 2.95681820e+01, 1.46590910e+01, 1.18863640e+01, 7.57500000e+01, + 7.47500000e+01, 1.17045450e+01, 1.24772730e+01, 4.09772720e+01, + 2.92727280e+01, 5.18181801e+00, 4.70454550e+00, 2.88863640e+01, + 8.33636398e+01, 32., 1.12954550e+01, 2.46363640e+01, + 4.23409081e+01, 1.24545450e+01, 9.34090900e+00, 1.42500000e+01, + 7.45454559e+01, 7.49772720e+01, 2.22500000e+01, 1.06590910e+01, + 3.61136360e+01, 4.08181801e+01, 1.11818180e+01, 1.36363640e+01, + 3.82500000e+01, 9.43181839e+01, 6.44545441e+01, 1.34318180e+01, + 1.77954540e+01, 3.15681820e+01, 1.72727275e+00, 6.37954559e+01, + 9.77272720e+01, 5.79545450e+00, 2.34090900e+00, 2.06363640e+01, + 35., 4.40909100e+00, 1.81818187e+00, 3.82045441e+01, + 1.16295456e+02, 2.50681820e+01, 1.81818187e+00, 1.53409090e+01, + 4.73636360e+01, 1.35454550e+01, 3.97727275e+00, 1.28181820e+01, + 9.79545441e+01, 6.45227280e+01, 4.86363649e+00, 6.75000000e+00, + 34., 2.42954540e+01, 3.90909100e+00, 4.54545450e+00, + 2.96136360e+01, 5.16136360e+01, 9.97727299e+00, 5.40909100e+00, + 17., 1.47272730e+01, 1.19375000e+01, 9.79687500e+00, + 7.68750000e+00, 9.95312500e+00, 2.10781250e+01, 2.81250000e+01, + 1.93437500e+01, 1.35312500e+01, 1.92343750e+01, 1.13750000e+01, + 1.08437500e+01, 1.39218750e+01, 2.29218750e+01, 2.88281250e+01, + 3.08125000e+01, 3.14687500e+01, 1.40937500e+01, 7.79687500e+00, + 1.21875000e+01, 2.05937500e+01, 2.90937500e+01, 3.18593750e+01, + 2.78906250e+01, 2.63281250e+01, 1.04843750e+01, 7.34375000e+00, + 1.31406250e+01, 3.00781250e+01, 3.39843750e+01, 2.56718750e+01, + 1.90625000e+01, 1.44531250e+01, 1.56250000e+01, 1.17968750e+01, + 1.16406250e+01, 1.76562500e+01, 3.08906250e+01, 3.88906250e+01, + 3.78750000e+01, 2.83593750e+01, 2.46718750e+01, 1.49218750e+01, + 1.51875000e+01, 2.33593750e+01, 3.41562500e+01, 4.81406250e+01, + 5.56875000e+01, 4.85937500e+01, 1.44687500e+01, 1.26406250e+01, + 1.99687500e+01, 4.11875000e+01, 5.80312500e+01, 5.59062500e+01, + 4.35781250e+01, 2.72656250e+01, 2.52656250e+01, 1.43750000e+01, + 2.30156250e+01, 8.21875000e+01, 7.26562500e+01, 4.19375000e+01, + 2.90156250e+01, 4.34843750e+01, 2.02500000e+01, 1.16406250e+01, + 1.36718750e+01, 1.92968750e+01, 2.53125000e+01, 3.26718750e+01, + 4.06562500e+01, 3.51718750e+01, 1.83906250e+01, 1.59687500e+01, + 2.22343750e+01, 3.23125000e+01, 4.43437500e+01, 5.08750000e+01, + 4.82187500e+01, 3.52656250e+01, 1.88437500e+01, 1.53593750e+01, + 2.87812500e+01, 9.18593750e+01, 8.84843750e+01, 5.61562500e+01, + 3.83125000e+01, 3.60156250e+01, 4.89687500e+01, 1.03593750e+01, + 1.93125000e+01, 1.14453125e+02, 8.46093750e+01, 2.83125000e+01, + 2.80625000e+01, 1.10109375e+02, 1.35000000e+01, 9.48437500e+00, + 1.38281250e+01, 1.93593750e+01, 2.42187500e+01, 2.75781250e+01, + 2.84843750e+01, 2.31875000e+01, 1.58281250e+01, 1.40156250e+01, + 2.65000000e+01, 6.67500000e+01, 5.70312500e+01, 3.99375000e+01, + 3.12187500e+01, 2.94218750e+01, 3.63593750e+01, 8.40625000e+00, + 2.19843750e+01, 1.16250000e+02, 9.08437500e+01, 2.93125000e+01, + 2.94062500e+01, 1.00390625e+02, 5.61562500e+01, 2.15625000e+00, + 6.96875000e+00, 1.14562500e+02, 7.38125000e+01, 1.12656250e+01, + 1.96406250e+01, 1.20062500e+02, 2.24468079e+01, 4.48936176e+00, + 5.17021275e+00, 1.89361706e+01, 2.25106392e+01, 1.08297873e+01, + 2.51489353e+01, 4.63829803e+01, 3.43191490e+01, 7.63829803e+00, + 5.80851078e+00, 6.63829803e+00, 6.65957451e+00, 1.09574471e+01, + 4.65319138e+01, 8.26170197e+01, 2.70638294e+01, 5.27659559e+00, + 4.72340441e+00, 4.82978725e+00, 4.74468088e+00, 2.15531921e+01, + 7.64680862e+01, 9.42340393e+01, 1.42978725e+01, 7.25531912e+00, + 6.10638285e+00, 4.76595736e+00, 7.89361715e+00, 5.19574471e+01, + 8.38723373e+01, 4.84680862e+01, 4.47021294e+01, 8.76595783e+00, + 3.38297868e+00, 7.38297892e+00, 1.88936176e+01, 23., + 2.24468079e+01, 5.45957451e+01, 7.14255295e+01, 1.09787235e+01, + 5.29787254e+00, 7.68085098e+00, 7.14893627e+00, 1.37021275e+01, + 4.20851059e+01, 1.08659576e+02, 4.31489372e+01, 1.26595745e+01, + 1.39787235e+01, 1.61914902e+01, 1.38085108e+01, 2.05744686e+01, + 5.61702118e+01, 8.75957413e+01, 2.44255314e+01, 1.65106392e+01, + 1.17234039e+01, 1.43191490e+01, 1.66595745e+01, 2.30425529e+01, + 4.03191490e+01, 3.85744667e+01, 6.91914902e+01, 4.33404274e+01, + 3.78723407e+00, 3.59574461e+00, 8.97872353e+00, 2.44893608e+01, + 3.29787216e+01, 5.79361687e+01, 7.89787216e+01, 2.78936176e+01, + 9.61702156e+00, 8.63829803e+00, 8.87234020e+00, 2.24893608e+01, + 4.68936157e+01, 9.35319138e+01, 4.08723412e+01, 1.90425529e+01, + 1.92340431e+01, 2.01489353e+01, 30., 3.94680862e+01, + 4.80425529e+01, 5.73191490e+01, 1.79787235e+01, 1.09574471e+01, + 1.74893608e+01, 3.02978725e+01, 2.41063824e+01, 1.77446804e+01, + 2.70212765e+01, 3.43829803e+01, 4.42978706e+01, 8.57872314e+01, + 3.48085098e+01, 3.63829780e+00, 9., 2.90851059e+01, + 2.58085098e+01, 1.80212765e+01, 4.32553177e+01, 1.00872337e+02, + 8.49574432e+01, 9.68085098e+00, 5.17021275e+00, 1.32765961e+01, + 3.34468079e+01, 3.00638294e+01, 1.55319147e+01, 4.11702118e+01, + 1.02744682e+02, 4.76170197e+01, 1.55106382e+01, 1.55744677e+01, + 3.01914902e+01, 2.50212765e+01, 5.97872353e+00, 8.74468040e+00, + 8.32340393e+01, 7.82978745e+01, 1.22978725e+01, 7.42553186e+00, + 1.98936176e+01, 2.33829784e+01, 2.03333330e+00, 3.13333344e+00, + 1.13166666e+01, 4.06833344e+01, 4.83499985e+01, 1.78666668e+01, + 5.16666651e+00, 2.36666656e+00, 1.46666670e+00, 1.43333328e+00, + 6.09999990e+00, 3.32333336e+01, 3.71166649e+01, 1.71833324e+01, + 8.48333359e+00, 3.36666656e+00, 1.06816666e+02, 5.56666660e+00, + 3.11666656e+00, 2.05333328e+01, 3.36666679e+01, 8.19999981e+00, + 6.01666689e+00, 4.34333344e+01, 8.10333328e+01, 5.33333349e+00, + 1.48333335e+00, 3.39333344e+01, 1.10150002e+02, 5.09999990e+00, + 3.98333335e+00, 2.57833328e+01, 1.21666670e+00, 3.50000000e+00, + 2.50499992e+01, 5.06666679e+01, 3.56500015e+01, 8.69999981e+00, + 2.09999990e+00, 1.08333337e+00, 8.38333321e+00, 2.34999990e+00, + 1.56666670e+01, 4.18166656e+01, 3.33166656e+01, 1.11000004e+01, + 4.88333321e+00, 2.24500008e+01, 1.14966667e+02, 2.23333335e+00, + 4.33333349e+00, 6.01166649e+01, 5.13499985e+01, 4.33333349e+00, + 4.16666651e+00, 1.21133331e+02, 4.28166656e+01, 3.91666675e+00, + 2.15000010e+00, 8.42833328e+01, 1.02316666e+02, 3.21666670e+00, + 4.01666689e+00, 3.52000008e+01, 1.14999998e+00, 3.65000010e+00, + 2.70166664e+01, 3.22666664e+01, 1.88333340e+01, 5.46666670e+00, + 1.27666664e+01, 1.65333328e+01, 1.95166664e+01, 2.11666656e+00, + 1.76833324e+01, 4.97333336e+01, 1.55333338e+01, 5.31666660e+00, + 2.53500004e+01, 1.20516670e+02, 5.93833351e+01, 2.63333344e+00, + 7.88333321e+00, 1.23416664e+02, 5.60999985e+01, 2.03333330e+00, + 7.34999990e+00, 1.23633331e+02, 1.55833330e+01, 4.34999990e+00, + 2.54999995e+00, 6.27666664e+01, 3.65166664e+01, 2.15000010e+00, + 5.69999981e+00, 2.20333328e+01, 1.56666672e+00, 2.21666670e+00, + 3.42833328e+01, 3.70833321e+01, 4.83333349e+00, 2.98333335e+00, + 7.61166687e+01, 8.88166656e+01, 5.88333321e+00, 1.39999998e+00, + 4.19833336e+01, 1.21099998e+02, 5.84999990e+00, 1.88333333e+00, + 4.20666656e+01, 1.12099998e+02, 9.80000019e+00, 2.41666675e+00, + 1.11499996e+01, 1.07283333e+02, 1.45000000e+01, 2.23333335e+00, + 1.06666670e+01, 4.11666679e+01, 1.17500000e+01, 2.90000010e+00, + 1.41666663e+00, 6.88333321e+00, 2.46666670e+00, 1.61666667e+00, + 8.53333378e+00, 2.47166672e+01, 5.32786894e+00, 1.63934422e+00, + 1.25573769e+01, 1.68688526e+01, 6.50819683e+00, 1.06229506e+01, + 1.06688522e+02, 9.40163956e+01, 4.70491791e+00, 6.81967211e+00, + 2.09508190e+01, 1.04426231e+01, 5.75409842e+00, 3.45573769e+01, + 1.25918030e+02, 5.11147537e+01, 7.16393423e+00, 2.18196716e+01, + 2.07213116e+01, 4.19672108e+00, 3.13114762e+00, 8.28524628e+01, + 1.22655739e+02, 1.68360653e+01, 1.77377052e+01, 5.12622948e+01, + 1.25737705e+01, 1.04918027e+00, 3.63934422e+00, 9.56229477e+01, + 8.33278656e+01, 7.42622948e+00, 2.08360653e+01, 5.78688526e+00, + 1.16557379e+01, 1.90491810e+01, 1.41967211e+01, 1.01147537e+01, + 7.07704926e+01, 8.44754105e+01, 1.90491810e+01, 8.31147575e+00, + 1.41967211e+01, 1.41967211e+01, 1.11967211e+01, 2.62295074e+01, + 9.70983582e+01, 6.33770485e+01, 1.20491800e+01, 9.65573788e+00, + 1.02295084e+01, 3.60655737e+00, 5.91803265e+00, 7.41803284e+01, + 1.10311478e+02, 4.25081978e+01, 1.13278685e+01, 1.79344254e+01, + 4.32786894e+00, 1.08196723e+00, 1.13934422e+01, 1.15901642e+02, + 9.50327835e+01, 2.03934422e+01, 3.67213097e+01, 7.62295103e+00, + 4.88524580e+00, 8.39344215e+00, 1.47868853e+01, 1.39016390e+01, + 2.75081959e+01, 5.51475410e+01, 3.56065559e+01, 6.86885262e+00, + 5.11475420e+00, 6.40983629e+00, 9.49180317e+00, 1.97049179e+01, + 5.35573769e+01, 7.76065598e+01, 1.98032780e+01, 6.59016371e+00, + 5.73770475e+00, 6.36065578e+00, 9.88524628e+00, 3.71967201e+01, + 6.30655746e+01, 5.56721306e+01, 1.19344263e+01, 8.57377052e+00, + 4.08196735e+00, 3.80327868e+00, 2.28360653e+01, 7.10983582e+01, + 5.25573769e+01, 2.79180336e+01, 4.60819664e+01, 1.72950821e+01, + 1.62295079e+00, 1.65573776e+00, 4.86885262e+00, 1.58688526e+01, + 2.28032780e+01, 4.13278694e+01, 3.45409851e+01, 9.85245895e+00, + 4.47540998e+00, 4.65573788e+00, 7.24590158e+00, 2.14426231e+01, + 4.11147537e+01, 5.64918022e+01, 1.69180336e+01, 6.18032789e+00, + 6.81967211e+00, 8.31147575e+00, 1.63770485e+01, 2.87540989e+01, + 3.74098358e+01, 3.62950821e+01, 1.02131147e+01, 3.98360658e+00, + 3.90163946e+00, 1.35573769e+01, 2.50327873e+01, 2.21475410e+01, + 2.02459011e+01, 1.81803284e+01, 1.96774197e+00, 1.22580647e+00, + 2.88709688e+00, 1.04516125e+01, 7.61290312e+00, 4.61290312e+00, + 3.38709688e+00, 1.51612902e+00, 4.80645180e+00, 3.53225803e+00, + 1.01612902e+01, 3.01774197e+01, 1.41612902e+01, 5.58064508e+00, + 4.20967722e+00, 2.51612902e+00, 1.44354839e+01, 3.32258058e+00, + 1.24193544e+01, 3.35322571e+01, 1.33064518e+01, 3.82258058e+00, + 4.70967722e+00, 4.97903214e+01, 1.13064518e+01, 1.70967746e+00, + 1.56290321e+01, 7.28064499e+01, 8.85483837e+00, 1.87096775e+00, + 2.44032249e+01, 1.23435486e+02, 7.58064508e-01, 9.35483873e-01, + 3.59677410e+00, 2.06935482e+01, 1.53548384e+01, 6.79032278e+00, + 3.46774197e+00, 6.45161271e-01, 1.27419357e+01, 3.01612902e+00, + 1.19516125e+01, 4.21774178e+01, 2.58225803e+01, 8.87096786e+00, + 6.82258081e+00, 1.59838705e+01, 8.25483856e+01, 3.32258058e+00, + 9.33870983e+00, 8.32096786e+01, 3.53225822e+01, 3.56451607e+00, + 7.25806475e+00, 132., 2.24193554e+01, 3.40322590e+00, + 1.65645161e+01, 1.32774200e+02, 4.32741928e+01, 2.20967746e+00, + 1.16129036e+01, 9.49032288e+01, 3.70967746e-01, 5.64516127e-01, + 3.30645156e+00, 2.13709679e+01, 2.16774197e+01, 5.80645180e+00, + 1.37096775e+00, 3.70967746e-01, 7.52258072e+01, 4.12903214e+00, + 8.70967770e+00, 3.30967751e+01, 2.99354839e+01, 7.87096786e+00, + 4.27419376e+00, 5.61451607e+01, 1.20854836e+02, 4.30645180e+00, + 4.11290312e+00, 1.20193550e+02, 1.20080643e+02, 4.06451607e+00, + 5.22580624e+00, 1.20258064e+02, 1.79516125e+01, 5.58064508e+00, + 5., 89., 6.28387108e+01, 4.33870983e+00, 1.51774197e+01, + 3.39677429e+01, 5.64516127e-01, 4.67741936e-01, 1.56451619e+00, + 1.17258062e+01, 1.95806446e+01, 6.41935492e+00, 1.04838705e+00, + 4.67741936e-01, 1.13080643e+02, 6.72580624e+00, 3.69354844e+00, + 1.92741928e+01, 3.54354820e+01, 8.35483837e+00, 2.54838705e+00, + 3.70806465e+01, 1.03403229e+02, 8.88709641e+00, 2.56451607e+00, + 6.73709641e+01, 1.26290321e+02, 8.45161247e+00, 3.41935492e+00, + 4.27580643e+01, 2.04354839e+01, 7.41935492e+00, 4., + 1.44677420e+01, 2.94516125e+01, 4.04838705e+00, 1.05161295e+01, + 3.24032249e+01, 6.86486483e+00, 8.67567539e+00, 2.21621628e+01, + 1.98108101e+01, 1.54594593e+01, 8.72972965e+00, 7.54054070e+00, + 5.29729748e+00, 2.75135136e+01, 3.15405407e+01, 6.54864883e+01, + 7.98648682e+01, 5.05945930e+01, 2.23783779e+01, 23., + 2.40540543e+01, 3.88378372e+01, 5.34054070e+01, 7.88918915e+01, + 7.07027054e+01, 3.56486473e+01, 2.14054050e+01, 1.85405407e+01, + 2.18648643e+01, 2.48918915e+01, 4.67027016e+01, 6.00270271e+01, + 5.02162170e+01, 5.22972984e+01, 5.31351357e+01, 2.31081085e+01, + 1.01621618e+01, 7.75675678e+00, 1.22162161e+01, 2.67297306e+01, + 2.67837830e+01, 2.37027035e+01, 1.64594593e+01, 1.06486483e+01, + 5.89189196e+00, 3.86486473e+01, 6.15675659e+01, 8.75135117e+01, + 8.67837830e+01, 7.56756744e+01, 4.65945930e+01, 3.03513508e+01, + 2.52162170e+01, 5.37837830e+01, 7.36756744e+01, 8.08918915e+01, + 7.54864883e+01, 5.20270271e+01, 32., 3.32432442e+01, + 4.17567558e+01, 2.72702694e+01, 4.10810814e+01, 6.37837830e+01, + 7.18648682e+01, 5.80270271e+01, 3.64864883e+01, 1.98378372e+01, + 1.98918915e+01, 5.43243265e+00, 9.27027035e+00, 1.64324322e+01, + 2.65945950e+01, 2.34324322e+01, 1.51351347e+01, 1.06486483e+01, + 7.27027035e+00, 2.87837830e+01, 4.82162170e+01, 5.63243256e+01, + 7.77297287e+01, 7.65135117e+01, 6.31621628e+01, 4.22702713e+01, + 2.37567558e+01, 5.56486473e+01, 8.80540543e+01, 7.68648682e+01, + 7.32702713e+01, 62., 4.52162170e+01, 3.87567558e+01, + 2.98108101e+01, 2.72972965e+01, 4.04594612e+01, 5.28918915e+01, + 7.53513489e+01, 5.26756744e+01, 2.29729729e+01, 1.70270271e+01, + 1.88918915e+01, 2.59459448e+00, 4.10810804e+00, 6.70270252e+00, + 1.03243246e+01, 8.21621609e+00, 3.94594598e+00, 2.21621633e+00, + 2.40540552e+00, 9.45945930e+00, 1.05135136e+01, 2.04864864e+01, + 3.95135117e+01, 2.53243237e+01, 1.40540543e+01, 1.29189186e+01, + 8.75675678e+00, 1.86216221e+01, 2.87297306e+01, 2.39459457e+01, + 3.31891899e+01, 2.76486492e+01, 1.24864864e+01, 1.40540543e+01, + 9.35135174e+00, 1.38918915e+01, 1.42162161e+01, 1.79459457e+01, + 3.01081085e+01, 1.80270271e+01, 7.89189196e+00, 8.02702713e+00, + 9.21621609e+00, 3.34782600e+00, 8.63768101e+00, 1.06014496e+02, + 5.22173920e+01, 5.05797100e+00, 3.57971025e+00, 7.82608700e+00, + 5.82608700e+00, 5.55072451e+00, 5.35217400e+01, 1.20811592e+02, + 1.99130440e+01, 4.20289850e+00, 5.37681150e+00, 1.13623190e+01, + 5.24637699e+00, 1.03333330e+01, 7.92318878e+01, 7.56086960e+01, + 9.17391300e+00, 3.85507250e+00, 7.42028999e+00, 1.05797100e+01, + 4.86956501e+00, 1.13623190e+01, 2.96666660e+01, 2.11159420e+01, + 6.23188400e+00, 2.75362325e+00, 4.18840599e+00, 7.69565201e+00, + 5.57971001e+00, 2.84057975e+00, 8.13043499e+00, 1.10811592e+02, + 8.46376801e+01, 3.60869575e+00, 5.28985500e+00, 1.47101450e+01, + 8.97101402e+00, 2.84057975e+00, 6.59130402e+01, 1.19536232e+02, + 1.69275360e+01, 3.84057975e+00, 1.09420290e+01, 1.38260870e+01, + 3.94202900e+00, 1.42173910e+01, 1.36043472e+02, 1.02057968e+02, + 3.78260875e+00, 3.78260875e+00, 1.07391300e+01, 7.85507250e+00, + 2.50724649e+00, 3.98985519e+01, 1.30492752e+02, 2.99130440e+01, + 5.78260851e+00, 5.65217400e+00, 1.17536230e+01, 8.95652199e+00, + 6.18840599e+00, 1.28260870e+01, 1.29565220e+01, 3.06231880e+01, + 3.02608700e+01, 1.51594200e+01, 1.79420280e+01, 4.04057961e+01, + 3.33188400e+01, 1.12028990e+01, 2.51449280e+01, 3.48405800e+01, + 1.74492760e+01, 1.83623180e+01, 4.15072479e+01, 4.17681160e+01, + 1.77391300e+01, 3.18695660e+01, 8.06521759e+01, 1.45797100e+01, + 4.24637699e+00, 9.89855099e+00, 2.19855080e+01, 1.18695650e+01, + 5.21739149e+00, 1.20681160e+02, 1.33260864e+02, 5.78260851e+00, + 2.37681150e+00, 6.60869551e+00, 9.15942001e+00, 3.15942025e+00, + 4.04347849e+00, 24., 1.40289860e+01, 1.79130440e+01, + 1.99420280e+01, 2.12608700e+01, 1.51159420e+01, 1.81014500e+01, + 2.55362320e+01, 2.25362320e+01, 1.93333340e+01, 1.93333340e+01, + 2.15797100e+01, 3.01304340e+01, 2.97391300e+01, 2.56956520e+01, + 2.21884060e+01, 3.91014481e+01, 1.87246380e+01, 7.60869551e+00, + 1.08985510e+01, 3.08985500e+01, 2.94347820e+01, 1.33478260e+01, + 1.45942030e+01, 1.24724640e+02, 3.22173920e+01, 2.05797100e+00, + 3.57971025e+00, 1.00869570e+01, 6.47826099e+00, 2.44927526e+00, + 1.98695660e+01, 5.82926846e+00, 5.19512177e+00, 1.57073174e+01, + 4.24390259e+01, 2.47804871e+01, 7.02439022e+00, 3.02439022e+00, + 4.48780489e+00, 1.15853662e+01, 1.22926826e+01, 5.46341476e+01, + 5.72439041e+01, 2.23658543e+01, 8.95121956e+00, 1.44390240e+01, + 1.81219521e+01, 12., 2.34878044e+01, 9.13414612e+01, + 3.21219521e+01, 1.02682924e+01, 8.29268265e+00, 2.44634151e+01, + 1.89024391e+01, 1.30731707e+01, 4.48536568e+01, 6.19512177e+01, + 1.17804880e+01, 4.68292665e+00, 7.56097555e+00, 1.53902435e+01, + 1.04878044e+01, 1.00243902e+01, 5.07317066e+00, 2.16585369e+01, + 1.05682930e+02, 3.84634132e+01, 1.13170729e+01, 8.21951199e+00, + 1.84634151e+01, 8.02439022e+00, 6.34146357e+00, 1.05024391e+02, + 1.24926826e+02, 1.46585369e+01, 7.56097555e+00, 2.46341457e+01, + 3.28536568e+01, 3.82926822e+00, 2.35365849e+01, 1.21512192e+02, + 6.70731735e+01, 5.31707335e+00, 1.04634142e+01, 3.20243912e+01, + 1.64390240e+01, 5.26829290e+00, 9.02926865e+01, 1.14756096e+02, + 8.70731735e+00, 4.21951199e+00, 1.27317076e+01, 1.65609760e+01, + 4.82926846e+00, 5.70731688e+00, 2.17073178e+00, 1.18292685e+01, + 1.26097565e+02, 8.95365829e+01, 6.14634132e+00, 4.48780489e+00, + 1.16097565e+01, 1.89268284e+01, 1.36829271e+01, 5.57073174e+01, + 9.70487823e+01, 1.46585369e+01, 5.53658533e+00, 3.45853653e+01, + 4.70731697e+01, 1.23414631e+01, 31., 74., 3.85365868e+01, + 1.82682934e+01, 4.82195129e+01, 8.41951218e+01, 3.55365868e+01, + 4.19512177e+00, 4.19756088e+01, 4.11219521e+01, 9.70731735e+00, + 1.54634142e+01, 3.43902435e+01, 1.87073174e+01, 2.43902445e+00, + 7.26829290e+00, 3.87804890e+00, 2.31707311e+00, 50., + 1.13536583e+02, 1.27073174e+01, 1.95121956e+00, 5.85365868e+00, + 27., 2.40731716e+01, 3.09268284e+01, 1.94146347e+01, + 1.31219511e+01, 5.73170710e+00, 1.72926826e+01, 3.30487823e+01, + 1.34878044e+01, 2.75365849e+01, 6.81463394e+01, 3.56341476e+01, + 2.10487804e+01, 2.95121956e+01, 4.42439041e+01, 29., + 4.70731688e+00, 1.40487804e+01, 2.31219521e+01, 1.89512196e+01, + 2.54146347e+01, 2.66341457e+01, 1.64146347e+01, 6.09756088e+00, + 4.90909100e+00, 3.74025965e+00, 5.58441544e+00, 7.36363649e+00, + 5.98701286e+00, 5.29870129e+00, 4.98701286e+00, 5.41558456e+00, + 8.14285755e+00, 6.74025965e+00, 1.18181820e+01, 1.76103897e+01, + 1.29870129e+01, 8.05194759e+00, 9.50649357e+00, 9.75324631e+00, + 7.33766222e+00, 7.27272749e+00, 1.64155846e+01, 2.40259743e+01, + 1.25844154e+01, 7.68831158e+00, 1.01688309e+01, 9.10389614e+00, + 3.62337661e+00, 5.50649357e+00, 2.68701305e+01, 4.23506508e+01, + 8.48051929e+00, 3.27272725e+00, 4.28571415e+00, 4.35064936e+00, + 8.76623344e+00, 7.05194807e+00, 9.72727299e+00, 1.73896103e+01, + 1.34415588e+01, 1.06103897e+01, 1.01038961e+01, 9.10389614e+00, + 1.25454550e+01, 1.02207794e+01, 25., 5.59480515e+01, + 3.04545460e+01, 1.75064926e+01, 1.94935074e+01, 1.65714283e+01, + 7.87013006e+00, 8.71428585e+00, 5.59350662e+01, 1.28519485e+02, + 3.48181801e+01, 7.83116865e+00, 9.79220772e+00, 1.06233768e+01, + 2.38961029e+00, 6.98701286e+00, 9.24675293e+01, 1.37961044e+02, + 2.01688309e+01, 2.28571439e+00, 3.20779228e+00, 4.14285707e+00, + 9.24675369e+00, 7.84415579e+00, 1.24675322e+01, 2.96233768e+01, + 1.78571434e+01, 8.03896141e+00, 7.85714293e+00, 8.66233730e+00, + 8.24675369e+00, 6.41558456e+00, 3.03246746e+01, 1.28155838e+02, + 6.07012978e+01, 1.06493511e+01, 8.53246784e+00, 9.90909100e+00, + 3.55844164e+00, 3.23376632e+00, 5.52467537e+01, 1.47480515e+02, + 6.39220772e+01, 5.67532444e+00, 5.23376608e+00, 1.03766232e+01, + 7.98701286e+00, 6.48051929e+00, 7.20129852e+01, 1.26701302e+02, + 2.36103897e+01, 4.59740257e+00, 1.74545460e+01, 4.96103897e+01, + 3.75324678e+00, 4.20779228e+00, 9.23376656e+00, 4.05454559e+01, + 3.08311691e+01, 7.02597380e+00, 4.70129871e+00, 4.10389614e+00, + 3.50649357e+00, 2.06493497e+00, 1.49350653e+01, 1.35532471e+02, + 1.01142860e+02, 8.66233730e+00, 3.44155836e+00, 6.49350643e+00, + 1.44155846e+01, 3.33766222e+00, 2.38831177e+01, 1.33792206e+02, + 6.86363602e+01, 6.19480515e+00, 7.67532444e+00, 4.95194817e+01, + 3.45844154e+01, 5.15584421e+00, 2.98311691e+01, 9.41948090e+01, + 1.89090900e+01, 3.46753240e+00, 2.85974026e+01, 1.13675323e+02, + 4.34693871e+01, 5.22857132e+01, 5.82244911e+01, 5.35714302e+01, + 2.43775501e+01, 18., 2.44387760e+01, 3.78163261e+01, + 4.81836739e+01, 6.12551003e+01, 7.29693909e+01, 7.08163300e+01, + 3.66428566e+01, 2.59591827e+01, 2.69387760e+01, 35., + 5.07346954e+01, 6.61836700e+01, 7.46632690e+01, 5.76224480e+01, + 3.63775520e+01, 3.41326523e+01, 3.07653065e+01, 3.65510216e+01, + 3.78877563e+01, 5.39693871e+01, 5.67040825e+01, 4.27448997e+01, + 3.75510216e+01, 49., 2.70714283e+01, 2.95408173e+01, + 5.31734695e+01, 6.05102043e+01, 6.84285736e+01, 6.47142868e+01, + 3.37346954e+01, 2.13367348e+01, 2.70510197e+01, 3.82959175e+01, + 6.76632690e+01, 7.24591827e+01, 8.26122437e+01, 7.94489822e+01, + 4.52244911e+01, 2.88877544e+01, 3.48775520e+01, 5.01224480e+01, + 6.63469391e+01, 6.89285736e+01, 8.64693909e+01, 7.87857132e+01, + 4.51530609e+01, 2.77142849e+01, 3.18469391e+01, 4.94897957e+01, + 4.68571434e+01, 5.15204086e+01, 7.30408173e+01, 6.57142868e+01, + 3.42448997e+01, 2.26224499e+01, 2.28775501e+01, 3.70918350e+01, + 3.88163261e+01, 3.34081650e+01, 4.14795914e+01, 5.09591827e+01, + 2.60918369e+01, 1.64897957e+01, 2.17551022e+01, 3.11836739e+01, + 5.51734695e+01, 5.31020393e+01, 5.64897957e+01, 5.91326523e+01, + 3.67040825e+01, 2.28163261e+01, 2.48265305e+01, 3.93163261e+01, + 4.98469391e+01, 5.14387741e+01, 5.81938782e+01, 5.95918350e+01, + 4.02857132e+01, 2.22244892e+01, 2.29387760e+01, 3.59183655e+01, + 3.73775520e+01, 3.40204086e+01, 4.42959175e+01, 4.62040825e+01, + 2.74591827e+01, 1.56020412e+01, 1.90102043e+01, 3.04285717e+01, + 4.12244892e+00, 3.60204077e+00, 3.52040815e+00, 4.66326523e+00, + 2.67346931e+00, 1.71428573e+00, 1.80612242e+00, 2.90816331e+00, + 5.39795923e+00, 5.50000000e+00, 5.32653046e+00, 5.64285707e+00, + 4.48979568e+00, 2.50000000e+00, 2.15306115e+00, 3.36734700e+00, + 6.17346954e+00, 7.63265324e+00, 6.52040815e+00, 6.20408154e+00, + 5.48979568e+00, 2.75510216e+00, 2., 3.17346931e+00, + 4.58163261e+00, 4.51020432e+00, 4.73469400e+00, 4.40816307e+00, + 3.73469377e+00, 2.47959185e+00, 1.93877554e+00, 2.88775516e+00, + 1.35087717e+00, 6.84210539e-01, 1.22807014e+00, 1.96491230e+00, + 1.63157892e+00, 1.21052635e+00, 8.42105269e-01, 1.03508770e+00, + 1.70175433e+00, 1.52631581e+00, 1.85964918e+00, 1.71929824e+00, + 1.66666663e+00, 1.66666663e+00, 8.77192974e-01, 1.05263162e+00, + 1.49122810e+00, 1.87719297e+00, 2.61403513e+00, 1.98245609e+00, + 1.17543864e+00, 8.77192974e-01, 5.08771956e-01, 8.77192974e-01, + 8.94736826e-01, 1.64912283e+00, 2.89473677e+00, 2.07017541e+00, + 8.59649122e-01, 4.21052635e-01, 2.80701756e-01, 3.50877196e-01, + 9.49122810e+00, 9.80701733e+00, 1.41929827e+01, 1.55614033e+01, + 1.23157892e+01, 1.36666670e+01, 1.16315794e+01, 9.52631569e+00, + 1.05614033e+01, 1.57719297e+01, 2.78947372e+01, 2.43508778e+01, + 1.45614033e+01, 1.50877190e+01, 1.20350876e+01, 1.06666670e+01, + 9.64912319e+00, 1.60701752e+01, 5.03157883e+01, 3.87894745e+01, + 1.34561405e+01, 9.92982483e+00, 8.01754379e+00, 7.42105246e+00, + 5.45614052e+00, 1.56140347e+01, 6.56666641e+01, 3.71578941e+01, + 8.84210491e+00, 5.19298267e+00, 4.10526323e+00, 3.40350866e+00, + 8.42105293e+00, 1.17894735e+01, 3.36315804e+01, 5.11052628e+01, + 1.94210529e+01, 1.19473686e+01, 1.23333330e+01, 1.09824562e+01, + 6.64912271e+00, 1.57368422e+01, 9.72280731e+01, 1.36473679e+02, + 2.22631588e+01, 9.03508759e+00, 8.42105293e+00, 8.64912319e+00, + 2.96491218e+00, 1.44210529e+01, 1.52701752e+02, 1.46842102e+02, + 1.24385967e+01, 4.17543840e+00, 4.84210539e+00, 4.75438595e+00, + 2.71929836e+00, 39., 1.55543854e+02, 8.10526352e+01, + 4.77192974e+00, 2.66666675e+00, 6.70175457e+00, 3.64912271e+00, + 4.92982435e+00, 4.92982435e+00, 3.93508759e+01, 1.28807022e+02, + 3.44736824e+01, 4.64912271e+00, 3.94736838e+00, 6.56140327e+00, + 3.31578946e+00, 3.28070164e+00, 9.12982483e+01, 1.54684204e+02, + 3.18245621e+01, 2.43859649e+00, 5.35087729e+00, 1.21403513e+01, + 3.61403513e+00, 5.26315784e+00, 1.27824562e+02, 1.31491226e+02, + 6.64912271e+00, 2.94736838e+00, 1.61929817e+01, 2.12280693e+01, + 4.07017565e+00, 2.12982464e+01, 1.17578949e+02, 4.14210510e+01, + 1.49122810e+00, 4.78947353e+00, 3.20877190e+01, 2.20350876e+01, + 9.59183693e+00, 1.06530609e+01, 7.71428585e+00, 6.30612230e+00, + 5.79591846e+00, 7.69387770e+00, 1.10816326e+01, 1.47755098e+01, + 1.29183674e+01, 8.53061199e+00, 5.57142878e+00, 9.46938801e+00, + 1.94897957e+01, 1.17959185e+01, 1.00204086e+01, 13., + 2.68163261e+01, 4.69387770e+00, 1.91836739e+00, 4.23265305e+01, + 1.18142860e+02, 2.45510197e+01, 2.85714293e+00, 9.63265324e+00, + 1.02551018e+02, 1.13469391e+01, 1.85714281e+00, 2.09795914e+01, + 7.54897995e+01, 1.08979588e+01, 1.93877554e+00, 2.70612240e+01, + 1.55510206e+01, 1.35918369e+01, 9.87755108e+00, 9.73469353e+00, + 6.34693861e+00, 8.08163261e+00, 1.51428576e+01, 2.00408173e+01, + 1.22653065e+01, 6.69387770e+00, 1.19591837e+01, 7.70408173e+01, + 3.34081650e+01, 6.08163261e+00, 7.97959185e+00, 1.59591837e+01, + 3.72857132e+01, 1.95918369e+00, 4.40816307e+00, 1.20653061e+02, + 1.07877548e+02, 2.65306115e+00, 2.18367338e+00, 4.03469391e+01, + 1.07020409e+02, 5.63265324e+00, 1.89795923e+00, 4.13061218e+01, + 5.06734695e+01, 3.22448969e+00, 3.34693885e+00, 6.94081650e+01, + 6.36734676e+00, 8.24489784e+00, 8.10816345e+01, 5.80408173e+01, + 2.83673477e+00, 2.34693885e+00, 9.38775539e+00, 1.38979588e+01, + 5.55102062e+00, 1.91836739e+00, 6.19795914e+01, 126., + 1.66938782e+01, 1.28571427e+00, 7.18367338e+00, 3.10408173e+01, + 4.83673477e+01, 2.57142854e+00, 1.39183674e+01, 1.17857140e+02, + 3.32448997e+01, 1.26530612e+00, 6.36734676e+00, 9.98163300e+01, + 8.25918350e+01, 5.89795923e+00, 2.79591846e+00, 2.64081631e+01, + 1.72244892e+01, 4.22448969e+00, 7.85714293e+00, 8.92244873e+01, + 1.36734688e+00, 5.95918369e+00, 1.04387756e+02, 5.60408173e+01, + 5.10204077e-01, 5.91836751e-01, 2.34081631e+01, 2.45918369e+01, + 6.30612230e+00, 2.36734700e+00, 5.12448997e+01, 8.76122437e+01, + 2.42857146e+00, 1.02040815e+00, 2.51836739e+01, 84., + 3.06122456e+01, 3.42857146e+00, 9.14285755e+00, 3.92653046e+01, + 6.22448969e+00, 2.97959185e+00, 1.43469391e+01, 1.04020409e+02, + 4.21632652e+01, 6.69387770e+00, 3.51020408e+00, 6.91836739e+00, + 4.81632662e+00, 4.91836739e+00, 1.07755098e+01, 6.21632652e+01, + 4.51851845e+00, 3.14814806e+00, 1.81481481e+00, 7.40740716e-01, + 4.92592573e+00, 4.92222214e+01, 6.83703690e+01, 1.17777777e+01, + 1.24444447e+01, 8.55555534e+00, 2.11111116e+00, 1.96296299e+00, + 2.25925922e+01, 7.61481476e+01, 4.71111107e+01, 1.41481485e+01, + 1.59259262e+01, 2.32962971e+01, 7.62962961e+00, 4.66666651e+00, + 3.15925922e+01, 4.20740738e+01, 3.43703690e+01, 1.31851854e+01, + 2.95185184e+01, 6.80370407e+01, 9.37036991e+00, 5., + 1.96296291e+01, 2.88148155e+01, 2.76666660e+01, 1.54814816e+01, + 7.37037039e+00, 3.33333325e+00, 2.55555558e+00, 2.96296287e+00, + 1.26666670e+01, 7.37777786e+01, 9.81851883e+01, 2.78148155e+01, + 1.14814816e+01, 3.81481481e+00, 8.88888896e-01, 1.77777779e+00, + 4.07407417e+01, 1.16148148e+02, 1.07740738e+02, 3.12222214e+01, + 4.25925922e+00, 1.70370376e+00, 5.92592597e-01, 3.77777767e+00, + 5.22222214e+01, 9.77407379e+01, 7.39259262e+01, 1.28518515e+01, + 2.51481476e+01, 2.23333340e+01, 3., 7.92592573e+00, + 3.02962971e+01, 2.77777786e+01, 3.60370369e+01, 1.89629631e+01, + 2.04074078e+01, 1.29629631e+01, 1.10370369e+01, 10., + 1.71851845e+01, 4.03703690e+01, 4.57407417e+01, 3.30370369e+01, + 5.73333321e+01, 3.74074059e+01, 2.32592602e+01, 33., + 7.80740738e+01, 9.70740738e+01, 8.15185165e+01, 6.07407417e+01, + 6.11111116e+00, 6.33333349e+00, 7.18518496e+00, 3.82962952e+01, + 1.19592590e+02, 1.03185188e+02, 4.94074059e+01, 1.16666670e+01, + 7.88888884e+00, 4.48148155e+00, 3.22222233e+00, 1.66666660e+01, + 5.20740738e+01, 3.02592602e+01, 1.21111107e+01, 2.40740752e+00, + 7.18518496e+00, 7.81481504e+00, 1.28518515e+01, 1.34814816e+01, + 1.67777786e+01, 1.48888893e+01, 14., 1.18148146e+01, + 2.47037029e+01, 2.71111107e+01, 3.21111107e+01, 7.18148117e+01, + 6.29259262e+01, 1.75555553e+01, 8.92592621e+00, 1.28518515e+01, + 5.40740728e+00, 7.77777767e+00, 16., 9.76666641e+01, + 1.10074074e+02, 1.94074078e+01, 6.81481504e+00, 5.40740728e+00, + 6.81481504e+00, 1.18518519e+00, 5.22222233e+00, 3.30370369e+01, + 4.36666679e+01, 8.62963009e+00, 2.92592597e+00, 4.37037039e+00, + 8.80952358e+00, 1.47619045e+00, 1.71904755e+01, 1.06119049e+02, + 3.52142868e+01, 2.35714293e+00, 4.26190472e+00, 32., + 1.33333330e+01, 1.92857146e+00, 3.40714302e+01, 1.11809525e+02, + 1.57380953e+01, 1.95238090e+00, 1.73333340e+01, 8.64047623e+01, + 6.19047642e+00, 1.28571427e+00, 3.04047623e+01, 5.72619057e+01, + 4.09523821e+00, 1.97619045e+00, 6.86666641e+01, 1.08523811e+02, + 2.02380943e+00, 1.16666663e+00, 1.87380943e+01, 1.54047623e+01, + 1.21428573e+00, 7.66666651e+00, 1.06785713e+02, 4.94047623e+01, + 4.03571434e+01, 1.83333337e+00, 6.30952358e+00, 1.11023811e+02, + 7.16190491e+01, 2.21428561e+00, 2.76190472e+00, 6.42142868e+01, + 7.00714264e+01, 3., 7.85714293e+00, 6.45476227e+01, + 1.93809528e+01, 1.16666663e+00, 1.18571424e+01, 1.23023811e+02, + 3.05476189e+01, 7., 8.71428585e+00, 1.62380943e+01, + 4.73809528e+00, 2.71428561e+00, 4.30238113e+01, 1.07452377e+02, + 1.21190472e+01, 9.09523773e+00, 8.80952358e+00, 6.66666651e+00, + 3.52380943e+00, 7.54761887e+00, 4.96904755e+01, 3.49761887e+01, + 9.32857132e+01, 6.02380943e+00, 1.88095236e+00, 7.12142868e+01, + 85., 2.71428561e+00, 1.52380955e+00, 5.62380943e+01, + 1.10071426e+02, 1.52380953e+01, 4.14285707e+00, 2.00714283e+01, + 1.67380943e+01, 1.71428573e+00, 2.52380943e+00, 8.56904755e+01, + 3.77380943e+01, 1.95000000e+01, 1.34047623e+01, 1.35238094e+01, + 8.85714245e+00, 4.21428585e+00, 6.97619057e+00, 2.87857151e+01, + 2.30476189e+01, 2.19523811e+01, 1.55714283e+01, 8.78571415e+00, + 5.69047642e+00, 6.33333349e+00, 9.50000000e+00, 1.57380953e+01, + 9.68333359e+01, 1.95476189e+01, 1.50000000e+00, 2.03809528e+01, + 7.14761887e+01, 7.92857122e+00, 1.33333337e+00, 1.80714283e+01, + 1.00666664e+02, 4.32857132e+01, 5.47619057e+00, 7., + 1.44047623e+01, 3.33333325e+00, 1.52380955e+00, 1.75476189e+01, + 2.54285717e+01, 26., 1.45476189e+01, 8.69047642e+00, + 7.61904764e+00, 5.14285707e+00, 5.33333349e+00, 1.04047623e+01, + 1.83809528e+01, 2.06190472e+01, 1.31428576e+01, 7.33333349e+00, + 5.02380943e+00, 4.73809528e+00, 4.45238113e+00, 9.71428585e+00, + 7.73913050e+00, 3.72898560e+01, 1.29275360e+01, 3.01449275e+00, + 1.14347830e+01, 1.01478264e+02, 2.99710140e+01, 2.52173924e+00, + 1.37536230e+01, 3.22753639e+01, 1.49275360e+01, 3.98550725e+00, + 9.40579700e+00, 2.18260860e+01, 8.73913002e+00, 5.62318850e+00, + 1.36666670e+01, 2.43623180e+01, 1.17826090e+01, 3.69565225e+00, + 2.66666675e+00, 1.63768113e+00, 9.10144901e+00, 8.40579700e+00, + 4.81159401e+00, 7.30434799e+00, 3.98550725e+00, 1.85507250e+00, + 3.01449275e+00, 1.10144925e+00, 4.82608700e+00, 4.42028999e+00, + 3.24057961e+01, 1.34086960e+02, 2.47536240e+01, 2.17391300e+00, + 2.11014500e+01, 1.27188408e+02, 24., 3.18840575e+00, + 2.45507240e+01, 5.70144920e+01, 10., 3.91304350e+00, + 5.49420280e+01, 1.31942032e+02, 1.48695650e+01, 6.34782600e+00, + 2.73913040e+01, 3.55362320e+01, 1.26376810e+01, 3.55072474e+00, + 7.69565201e+00, 8.66666698e+00, 7.46376801e+00, 8.42028999e+00, + 1.03333330e+01, 1.28840580e+01, 4.88405800e+00, 1.97101450e+00, + 3.07246375e+00, 1.04347825e+00, 3.18840575e+00, 3.78260875e+00, + 6.13478279e+01, 1.24449272e+02, 6.71014500e+00, 4.28985500e+00, + 2.57971020e+01, 4.44202881e+01, 9.26086998e+00, 5.26086950e+00, + 9.57246399e+01, 1.25652176e+02, 5.82608700e+00, 3.71014500e+00, + 1.14971016e+02, 1.34782608e+02, 4.76811600e+00, 3.85507250e+00, + 2.80434780e+01, 2.73768120e+01, 7.95652151e+00, 3.44927526e+00, + 5.40579720e+01, 5.60289841e+01, 5.21739149e+00, 7.63768101e+00, + 1.37826090e+01, 1.25652170e+01, 3.50724649e+00, 1.36231887e+00, + 2.75362325e+00, 1.85507250e+00, 2.98550725e+00, 3.33333325e+00, + 2.73478260e+01, 2.43188400e+01, 1.39130437e+00, 9.73913002e+00, + 3.30144920e+01, 2.37536240e+01, 8.63768101e+00, 3.86956525e+00, + 1.32014496e+02, 1.06072464e+02, 3.53623199e+00, 5.27536249e+00, + 9.82173920e+01, 6.10579720e+01, 3.75362325e+00, 5.33333349e+00, + 3.24637680e+01, 1.98550720e+01, 4.76811600e+00, 4.13043499e+00, + 1.09420288e+02, 5.89420280e+01, 6.55072451e+00, 6.85507250e+00, + 1.28115940e+01, 9.13043499e+00, 2.44927526e+00, 5.21739125e-01, + 7.97101438e-01, 2.30434775e+00, 3.23188400e+00, 3.82608700e+00, + 3.74509811e+00, 2.33333325e+00, 5.49019623e+00, 1.66274509e+01, + 8.07843113e+00, 2.82352948e+00, 2.43137264e+00, 1.92156863e+00, + 4.98039198e+00, 2.92156863e+00, 1.19215689e+01, 2.97843132e+01, + 1.34705887e+01, 3.58823538e+00, 2.21568632e+00, 4.90196085e+00, + 5.76470566e+00, 2.49019599e+00, 1.26666670e+01, 2.96666660e+01, + 1.12941179e+01, 7.23529434e+00, 1.51764708e+01, 7.32156830e+01, + 2.94117641e+00, 1.47058821e+00, 2.94705887e+01, 6.33725471e+01, + 5.47058821e+00, 7.56862736e+00, 5.54705887e+01, 1.03843140e+02, + 1.84313726e+00, 2.03921580e+00, 7.78431368e+00, 2.77647057e+01, + 1.63529415e+01, 5.39215708e+00, 4.05882359e+00, 1.96078432e+00, + 28., 3.50980401e+00, 1.08235292e+01, 3.30784302e+01, + 1.81960793e+01, 4.96078444e+00, 5.52941179e+00, 8.18235321e+01, + 3.08235302e+01, 2.11764717e+00, 1.58039217e+01, 1.28568634e+02, + 2.99215679e+01, 5.58823538e+00, 2.15294113e+01, 1.34411758e+02, + 6.54901981e+00, 2.82352948e+00, 4.99215698e+01, 1.29352936e+02, + 1.06666670e+01, 7.70588255e+00, 3.02745094e+01, 6.48823547e+01, + 1.00980396e+01, 2.50980401e+00, 7.33333349e+00, 2.39215679e+01, + 1.93725491e+01, 5.92156839e+00, 3.23529410e+00, 8.09803963e+00, + 1.07274513e+02, 3.64705873e+00, 5.66666651e+00, 6.88431396e+01, + 5.06666679e+01, 4.09803915e+00, 5., 1.25941177e+02, + 3.56666679e+01, 3.03921580e+00, 7.98039198e+00, 1.33137253e+02, + 9.43137283e+01, 3.27450991e+00, 1.08823528e+01, 8.58823547e+01, + 1.84705887e+01, 5.39215708e+00, 7.86274529e+00, 3.84313736e+01, + 5.70588255e+00, 4.29411745e+00, 2.34313717e+01, 3.64509811e+01, + 3.96862755e+01, 2.13725495e+00, 3.82352948e+00, 1.17254906e+01, + 1.42745094e+01, 5.23529434e+00, 1.78431368e+00, 1.71176472e+01, + 1.19686272e+02, 3.62745094e+00, 2.11764717e+00, 6.94901962e+01, + 1.14686272e+02, 4.50980377e+00, 2.41176462e+00, 7.37647095e+01, + 2.39607849e+01, 4.39215708e+00, 2.25490189e+00, 6.11960793e+01, + 8.33333359e+01, 3.70588231e+00, 1.00784311e+01, 3.01372547e+01, + 2.72352943e+01, 5.49019623e+00, 2.90196085e+00, 1.64705884e+00, + 1.52941179e+00, 3.49019599e+00, 1.77843132e+01, 3.67254906e+01, + 1.65789473e+00, 2.60526323e+00, 9.49210510e+01, 9.86052628e+01, + 4.34210539e+00, 1.73684216e+00, 1.73421059e+01, 2.07894745e+01, + 1.31578946e+00, 6.84210539e+00, 1.16763161e+02, 6.75526352e+01, + 2.15789485e+00, 3.76315784e+00, 6.13421059e+01, 2.71842098e+01, + 1.07894742e+00, 2.56842098e+01, 1.19526314e+02, 2.02631588e+01, + 7.89473712e-01, 1.36052628e+01, 80., 1.08157892e+01, + 1.52631581e+00, 5.53421059e+01, 1.10131577e+02, 4.89473677e+00, + 1.21052635e+00, 2.25000000e+01, 3.93157883e+01, 2.68421054e+00, + 8.84210491e+00, 1.63157892e+00, 4.49473686e+01, 7.49473648e+01, + 3.10526323e+00, 8.42105269e-01, 4.47894745e+01, 1.06736839e+02, + 6.36842108e+00, 3.47368431e+00, 3.84210510e+01, 2.16315784e+01, + 6.84210539e-01, 2.34210515e+00, 1.19894737e+02, 1.11815788e+02, + 2.92105269e+00, 7.76315784e+00, 2.79473686e+01, 4.36842108e+00, + 7.36842096e-01, 3.74736824e+01, 1.25473686e+02, 3.58157883e+01, + 1.18421054e+00, 1.98684216e+01, 2.45263157e+01, 1.47368419e+00, + 1.34210527e+00, 1.02842102e+02, 1.12394737e+02, 2.84210515e+00, + 5.03157883e+01, 4.92105246e+00, 7.94736862e+00, 2.07631588e+01, + 2.55263162e+00, 2.63157904e-01, 1.28421049e+01, 1.17763161e+02, + 2.62368412e+01, 1.02631578e+01, 1.15263157e+01, 7.73684216e+00, + 1.97368419e+00, 1.89473689e+00, 3.01842098e+01, 7.08684235e+01, + 1.73947372e+01, 1.86315784e+01, 1.54210529e+01, 5.63157892e+00, + 2.39473677e+00, 1.37105265e+01, 4.79210510e+01, 2.95789471e+01, + 8.84210491e+00, 1.46315794e+01, 8.34210491e+00, 3.36842108e+00, + 7.10526323e+00, 7.58421021e+01, 4.98684196e+01, 7.81578970e+00, + 6.07105255e+01, 1.71842098e+01, 5.15789461e+00, 6.65789461e+00, + 3.13157892e+00, 6.57894731e-01, 2.26315784e+00, 3.31052628e+01, + 2.28947372e+01, 1.53947372e+01, 9.28947353e+00, 6.78947353e+00, + 2.84210515e+00, 2.57894731e+00, 7.50000000e+00, 1.85263157e+01, + 2.28421059e+01, 2.23947372e+01, 1.12631578e+01, 5.92105246e+00, + 4.05263138e+00, 6.21052647e+00, 1.21315794e+01, 1.62894745e+01, + 2.15263157e+01, 2.65000000e+01, 1.15263157e+01, 7.28947353e+00, + 1.22105265e+01, 2.53421059e+01, 1.20263157e+01, 1.10789471e+01, + 2.95000005e+00, 2.59999990e+00, 1.89999998e+00, 1.18750000e+00, + 1.53750002e+00, 1.96249998e+00, 2.72499990e+00, 3.01250005e+00, + 8.18750000e+00, 8.53750038e+00, 4.58750010e+00, 3.20000005e+00, + 4.41249990e+00, 6.01249981e+00, 6.66249990e+00, 6.03749990e+00, + 7.59999990e+00, 7.91249990e+00, 6.93750000e+00, 7.80000019e+00, + 8.98750019e+00, 1.01250000e+01, 1.05874996e+01, 5.30000019e+00, + 4.69999981e+00, 3.95000005e+00, 1.05375004e+01, 2.12500000e+01, + 1.16875000e+01, 8.21249962e+00, 8.58749962e+00, 4.81250000e+00, + 6.33750010e+00, 5.94999981e+00, 3.40000010e+00, 2.56250000e+00, + 3.31250000e+00, 4., 5.34999990e+00, 5.19999981e+00, + 1.35625000e+01, 1.57375002e+01, 1.20124998e+01, 1.27500000e+01, + 1.18500004e+01, 1.13249998e+01, 1.34624996e+01, 12., + 9.57499981e+00, 1.21999998e+01, 2.58750000e+01, 4.98499985e+01, + 2.47000008e+01, 1.08874998e+01, 9.41250038e+00, 8.88749981e+00, + 9.83749962e+00, 7.63749981e+00, 3.56624985e+01, 8.40875015e+01, + 2.86749992e+01, 9.08749962e+00, 1.32875004e+01, 2.52500000e+01, + 5.12500000e+00, 6.11250019e+00, 5.34999990e+00, 5.72499990e+00, + 4.17500019e+00, 3.56250000e+00, 4.61250019e+00, 4.55000019e+00, + 9.13749981e+00, 1.13625002e+01, 2.24624996e+01, 5.02874985e+01, + 2.24125004e+01, 9.23750019e+00, 9.06250000e+00, 8.89999962e+00, + 8.31250000e+00, 6.43750000e+00, 4.30999985e+01, 1.29774994e+02, + 3.81500015e+01, 6.31250000e+00, 6.41249990e+00, 4.84000015e+01, + 2.22749996e+01, 6.25000000e+00, 4.15750008e+01, 1.25037498e+02, + 1.96000004e+01, 4.06250000e+00, 4.81500015e+01, 1.70225006e+02, + 2.29999995e+00, 2.77500010e+00, 8.13749981e+00, 1.91250000e+01, + 6.75000000e+00, 2.34999990e+00, 3.17499995e+00, 2.42499995e+00, + 6.18750000e+00, 4.06250000e+00, 2.32625008e+01, 9.67125015e+01, + 3.35499992e+01, 5.76249981e+00, 5.56250000e+00, 2.05375004e+01, + 5.28624992e+01, 4.76249981e+00, 2.41875000e+01, 1.30524994e+02, + 3.72750015e+01, 5.16249990e+00, 2.02875004e+01, 1.68375000e+02, + 4.06375008e+01, 4.48750019e+00, 3.12749996e+01, 1.62600006e+02, + 3.64249992e+01, 3.07500005e+00, 3.37625008e+01, 1.75125000e+02, + 2.07068958e+01, 4.55172396e+00, 1.24310341e+01, 1.63275871e+01, + 6.94827604e+00, 5.79310322e+00, 2.56206894e+01, 4.68448257e+01, + 7.46551704e+00, 1.12758617e+01, 3.24655190e+01, 1.78965511e+01, + 6.05172396e+00, 1.43620691e+01, 7.81724167e+01, 4.57758636e+01, + 1.13620691e+01, 24., 3.31379318e+01, 8.75862026e+00, + 3.75862074e+00, 3.56724129e+01, 1.02275864e+02, 3.47068977e+01, + 1.27413797e+01, 2.87413788e+01, 1.98103447e+01, 5.81034470e+00, + 1.13793106e+01, 7.98965530e+01, 8.96896515e+01, 1.40862064e+01, + 4.75000000e+01, 2.95689659e+01, 1.67241383e+01, 1.45000000e+01, + 1.62586212e+01, 1.78448277e+01, 1.98275871e+01, 3.14655170e+01, + 2.57413788e+01, 2.35862064e+01, 2.63448277e+01, 1.84482765e+01, + 1.05862064e+01, 1.33448277e+01, 3.58620682e+01, 5.34482765e+01, + 2.97241383e+01, 2.88103447e+01, 2.76551723e+01, 1.76896553e+01, + 1.18448277e+01, 1.33275862e+01, 3.74310341e+01, 5.43448257e+01, + 2.85172405e+01, 2.57241383e+01, 3.18448277e+01, 3.67931023e+01, + 3.23275871e+01, 3.95172424e+01, 3.34482765e+01, 2.60172405e+01, + 3.09310341e+01, 8.33448257e+01, 5.68620682e+01, 7.91379309e+00, + 1.10517244e+01, 3.03620682e+01, 2.02068958e+01, 7.27586222e+00, + 1.72758617e+01, 7.51206894e+01, 111., 1.62241383e+01, + 6.94827604e+00, 3.11896553e+01, 4.80517235e+01, 2.10517235e+01, + 1.32758617e+01, 4.83275871e+01, 1.18827583e+02, 4.29655190e+01, + 7.29310322e+00, 1.31724138e+01, 4.88448257e+01, 2.74827595e+01, + 12., 1.95172405e+01, 1.10844826e+02, 9.51551743e+01, + 2.46379318e+01, 1.04137936e+01, 3.94310341e+01, 3.67241364e+01, + 4.68965530e+00, 2.49482765e+01, 2.48103447e+01, 3.56896544e+00, + 4.15517235e+00, 2.09827595e+01, 2.28275871e+01, 3.48275852e+00, + 3.86206889e+00, 3.41551743e+01, 8.79482727e+01, 1.18275862e+01, + 2.93103456e+00, 3.24310341e+01, 6.72931061e+01, 8.87931061e+00, + 2.86206889e+00, 2.10862064e+01, 1.03431038e+02, 2.37758617e+01, + 2.34482765e+00, 1.93965511e+01, 8.23965530e+01, 2.17241383e+01, + 2.25862074e+00, 7.29310322e+00, 6.62931061e+01, 3.41379318e+01, + 5.13793087e+00, 1.04482756e+01, 5.74482765e+01, 2.86379318e+01, + 4.48108101e+01, 2.13513517e+00, 7.16216230e+00, 1.01918922e+02, + 5.29729729e+01, 7.81081104e+00, 1.42432432e+01, 1.05189186e+02, + 5.89189196e+00, 7.83783793e-01, 1.62702694e+01, 9.78378372e+01, + 2.37027035e+01, 1.77027035e+01, 4.29189186e+01, 4.27567558e+01, + 5.89189196e+00, 1.54054058e+00, 1.28378382e+01, 2.02432442e+01, + 4.97297287e+00, 2.51081085e+01, 6.39459457e+01, 2.44594593e+01, + 3.54054046e+00, 2.43243241e+00, 5.18918896e+00, 2.02702713e+00, + 3.59459448e+00, 2.97567558e+01, 5.07027016e+01, 1.54324322e+01, + 4.47837830e+01, 2.21621633e+00, 3., 1.05324326e+02, + 1.01864868e+02, 9.29729748e+00, 2.28918915e+01, 7.05405426e+01, + 1.04054050e+01, 2.21621633e+00, 2.43243241e+00, 2.40810814e+01, + 1.11891890e+01, 1.27567568e+01, 6.78918915e+01, 6.34864883e+01, + 5.29729748e+00, 1.72972977e+00, 1.27027023e+00, 6.48648620e-01, + 1.54054058e+00, 2.74594593e+01, 1.00324326e+02, 6.57297287e+01, + 2.94594598e+00, 1.83783782e+00, 1.81081080e+00, 1.37837839e+00, + 5.08108091e+00, 4.84054070e+01, 99., 3.70810814e+01, + 3.81621628e+01, 8.21621609e+00, 2.27027035e+00, 3.76486473e+01, + 8.91891861e+01, 1.20270271e+01, 1.70540543e+01, 4.98108101e+01, + 3.97027016e+01, 1.18378382e+01, 1.91891897e+00, 1.78378379e+00, + 4.37837839e+00, 1.01351347e+01, 4.65675659e+01, 9.16756744e+01, + 4.02162170e+01, 1.37567568e+01, 7.81081104e+00, 8.02702713e+00, + 1.52432432e+01, 2.89189186e+01, 9.40270233e+01, 9.68918915e+01, + 7.97297287e+00, 4.91891909e+00, 6.13513517e+00, 1.11621618e+01, + 2.45945950e+01, 4.95945930e+01, 8.03783798e+01, 3.87567558e+01, + 3.80270271e+01, 2.18378372e+01, 5.64864874e+00, 6.89189196e+00, + 6.58648682e+01, 2.12432442e+01, 5.67567587e+00, 2.78648643e+01, + 5.60270271e+01, 4.30540543e+01, 1.18108110e+01, 3.02702713e+00, + 4.37837839e+00, 7.02702713e+00, 1.23513517e+01, 4.21351357e+01, + 5.95135117e+01, 5.85675659e+01, 31., 2.20810814e+01, + 2.35945950e+01, 1.91081085e+01, 2.51351357e+01, 4.37567558e+01, + 1.10810814e+01, 1.31351347e+01, 1.65675678e+01, 2.27027035e+01, + 2.19729729e+01, 19., 1.90540543e+01, 1.33513517e+01, + 6.14925385e+00, 3.16417909e+00, 2.11940289e+00, 2.28358197e+00, + 3.61194038e+00, 5.31343269e+00, 5.61194038e+00, 4.80597019e+00, + 6.77611923e+00, 4.85074615e+00, 3.10447764e+00, 3.71641803e+00, + 5.82089567e+00, 7.38805962e+00, 6.11940289e+00, 5.29850769e+00, + 6.58208942e+00, 4.52238798e+00, 3.97014928e+00, 4.55223894e+00, + 6.07462692e+00, 6.86567163e+00, 6.85074615e+00, 6.49253750e+00, + 5.08955240e+00, 3.74626875e+00, 4.19402981e+00, 5.71641779e+00, + 5.11940289e+00, 5.22388077e+00, 8.07462692e+00, 6.83582067e+00, + 8.08955193e+00, 5.91044760e+00, 7.88059711e+00, 7.37313414e+00, + 7.71641779e+00, 9.10447788e+00, 8.13432789e+00, 7.88059711e+00, + 1.08358212e+01, 6.65671635e+00, 1.32089548e+01, 1.32089548e+01, + 1.12537317e+01, 1.15074625e+01, 1.28805971e+01, 1.28955221e+01, + 1.06865673e+01, 5.37313414e+00, 2.23432827e+01, 2.39552231e+01, + 9.95522404e+00, 1.07611942e+01, 2.76865673e+01, 2.79701500e+01, + 7.04477596e+00, 4.14925385e+00, 2.55970154e+01, 2.57761192e+01, + 6.25373125e+00, 8.68656731e+00, 6.45223846e+01, 5.54925385e+01, + 9.17910480e+00, 7.22388077e+00, 2.01194038e+01, 1.58208952e+01, + 6.37313414e+00, 1.94328365e+01, 5.17910461e+01, 3.03134327e+01, + 1.02537317e+01, 7.01492548e+00, 3.41641808e+01, 2.91641788e+01, + 5.85074615e+00, 1.17014923e+01, 1.12611938e+02, 9.92537308e+01, + 5.01492548e+00, 3.92537308e+00, 5.02238808e+01, 4.04925385e+01, + 3.91044784e+00, 4.44776106e+00, 1.30805969e+02, 1.21686569e+02, + 3.37313437e+00, 2.98507452e+00, 8.09104462e+01, 6.39253731e+01, + 4.32835817e+00, 7.29850769e+00, 1.24835823e+02, 1.08626869e+02, + 1.67910442e+01, 1.49402981e+01, 3.93880615e+01, 2.50895519e+01, + 4.65671635e+00, 9.40298462e+00, 6.47761230e+01, 6.12537308e+01, + 1.33432837e+01, 1.68507462e+01, 1.06089554e+02, 8.02985077e+01, + 4.52238798e+00, 5.73134327e+00, 8.92089539e+01, 8.12835846e+01, + 3.37313437e+00, 5.32835817e+00, 1.30850754e+02, 1.11298508e+02, + 2.56716418e+00, 2.20895529e+00, 6.88955231e+01, 5.92238808e+01, + 2.73134327e+00, 3.74626875e+00, 1.18865669e+02, 9.84477615e+01, + 2.28358197e+00, 2.19402981e+00, 4.55820885e+01, 3.63880615e+01, + 2.39433956e+01, 2.32641506e+01, 8.01886749e+00, 2.94339633e+00, + 7.03773594e+00, 1.64150944e+01, 2.30566044e+01, 1.84716988e+01, + 4.47358475e+01, 47., 1.78301888e+01, 8.24528313e+00, + 1.49056606e+01, 2.74339619e+01, 3.77358475e+01, 3.71320763e+01, + 5.09056587e+01, 4.49245300e+01, 2.00188675e+01, 1.18867922e+01, + 1.92830181e+01, 3.01886787e+01, 4.16415100e+01, 44., + 4.18867912e+01, 3.15283012e+01, 1.85660381e+01, 1.12830191e+01, + 1.50377359e+01, 2.16226406e+01, 3.48301888e+01, 3.56603775e+01, + 2.55660381e+01, 3.47735863e+01, 1.33018866e+01, 5.84905672e+00, + 9.15094376e+00, 2.01320763e+01, 2.14528294e+01, 1.44339619e+01, + 5.65849075e+01, 6.57169800e+01, 2.68113213e+01, 1.41320753e+01, + 1.72641506e+01, 2.85094337e+01, 4.05471687e+01, 3.67735863e+01, + 6.50943375e+01, 6.15471687e+01, 3.36603775e+01, 1.88490562e+01, + 2.04716988e+01, 2.78490562e+01, 4.43773575e+01, 4.91509438e+01, + 5.62264137e+01, 4.12452812e+01, 3.00754719e+01, 2.86981125e+01, + 2.01886787e+01, 2.08490562e+01, 4.03962250e+01, 5.11132088e+01, + 2.52452831e+01, 2.87924538e+01, 1.26603775e+01, 6.90566015e+00, + 1.13773584e+01, 2.10188675e+01, 2.26603775e+01, 1.50943394e+01, + 5.93018875e+01, 5.36603775e+01, 2.47358494e+01, 1.54339619e+01, + 1.88113213e+01, 30., 4.46037750e+01, 4.26792450e+01, + 6.93018875e+01, 5.61320763e+01, 3.67735863e+01, 3.35471687e+01, + 1.98490562e+01, 2.89056606e+01, 5.05849075e+01, 6.22641525e+01, + 5.71132088e+01, 3.47169800e+01, 5.36226425e+01, 9.99811325e+01, + 2.54905663e+01, 1.58867922e+01, 5.08867912e+01, 7.99622650e+01, + 2.38113213e+01, 2.35094337e+01, 8.94339657e+00, 4.64150953e+00, + 7.41509438e+00, 1.42264147e+01, 1.62264156e+01, 1.43207550e+01, + 5.22830200e+01, 4.36981125e+01, 1.98490562e+01, 2.28301888e+01, + 1.53396225e+01, 2.61132069e+01, 3.02830181e+01, 3.41698112e+01, + 5.72264137e+01, 3.37735863e+01, 5.71698112e+01, 1.13528305e+02, + 2.15849056e+01, 1.90188675e+01, 4.47547188e+01, 7.96037750e+01, + 3.09245281e+01, 1.03584909e+01, 7.38679276e+01, 1.30301880e+02, + 1.60377350e+01, 4.73584890e+00, 6.18867912e+01, 1.33622635e+02, + 3.05194807e+00, 6.29870129e+00, 4.49350643e+00, 3.76623368e+00, + 6.14285707e+00, 1.16233768e+01, 6.70129871e+00, 4.09090900e+00, + 5.40259743e+00, 4.36363649e+00, 3.59740257e+00, 4.55844164e+00, + 6.25974035e+00, 9.05194759e+00, 8.58441544e+00, 6.36363649e+00, + 6.36363649e+00, 2.55844164e+00, 2.84415579e+00, 4.66233778e+00, + 6.01298714e+00, 6.50649357e+00, 9., 7.27272749e+00, + 4.19480515e+00, 1.81818187e+00, 2.53246760e+00, 4.01298714e+00, + 4.66233778e+00, 4.84415579e+00, 5.20779228e+00, 6.02597380e+00, + 7.32467556e+00, 2.72077923e+01, 1.87402592e+01, 6.22077942e+00, + 1.69090900e+01, 6.71818161e+01, 3.43376617e+01, 6.89610386e+00, + 1.05064936e+01, 2.28701305e+01, 1.67012978e+01, 9.23376656e+00, + 1.52077923e+01, 2.60129871e+01, 1.75974026e+01, 10., + 8.63636398e+00, 1.20649347e+01, 1.07402601e+01, 9.68831158e+00, + 1.32727270e+01, 13., 1.40389614e+01, 1.12207794e+01, + 6.25974035e+00, 6.89610386e+00, 6.61038971e+00, 7.49350643e+00, + 9.51948071e+00, 1.01168833e+01, 9.01298714e+00, 8.94805241e+00, + 10., 5.53896103e+01, 3.37402611e+01, 4.72727251e+00, + 1.90779228e+01, 1.28974030e+02, 1.05519478e+02, 7.90909100e+00, + 9.87012959e+00, 4.79480515e+01, 3.21298714e+01, 6.87013006e+00, + 2.15584412e+01, 1.26779221e+02, 1.09207794e+02, 8.79220772e+00, + 8.27272701e+00, 36., 3.22467537e+01, 1.09480524e+01, + 1.51038961e+01, 6.04935074e+01, 5.23896103e+01, 1.31558437e+01, + 6.06493521e+00, 1.58961039e+01, 1.79870129e+01, 1.02337666e+01, + 1.07662334e+01, 1.60259743e+01, 1.91558437e+01, 1.07142859e+01, + 1.16103897e+01, 1.17519478e+02, 9.89610367e+01, 1.00389614e+01, + 7.12986994e+00, 5.43766251e+01, 4.56623383e+01, 7.98701286e+00, + 8.23376656e+00, 1.10844154e+02, 8.94155807e+01, 5.14285707e+00, + 1.44805193e+01, 1.21987015e+02, 1.04103897e+02, 8.45454502e+00, + 5.05194807e+00, 5.23506508e+01, 4.66753235e+01, 7.22077942e+00, + 1.44155846e+01, 1.29142853e+02, 1.25233765e+02, 1.65324669e+01, + 3.72727275e+00, 1.95454540e+01, 2.46623383e+01, 8.11688328e+00, + 9.57142830e+00, 9.52727280e+01, 8.78311691e+01, 1.67662334e+01, + 3.90588226e+01, 1.69705887e+01, 1.73529410e+00, 4.26470566e+00, + 3.67941170e+01, 1.46176472e+01, 1.94117641e+00, 2.47058821e+00, + 9.59117661e+01, 4.76470604e+01, 7.11764717e+00, 6.02941179e+00, + 3.02352943e+01, 2.08529415e+01, 9.26470566e+00, 1.45882349e+01, + 2.88235302e+01, 1.98529415e+01, 1.40588236e+01, 1.02058821e+01, + 1.20882349e+01, 2.26470585e+01, 2.05882359e+01, 2.12941170e+01, + 1.68823528e+01, 5.61764717e+00, 5.79411745e+00, 3.23823547e+01, + 6.02647057e+01, 1.71764698e+01, 1.13235292e+01, 19., + 1.49411764e+01, 1.64705887e+01, 5., 4.88235283e+00, + 2.80294113e+01, 1.94705887e+01, 2.50000000e+00, 2.58823538e+00, + 7.03823547e+01, 1.08676468e+02, 3.60294113e+01, 9.64705849e+00, + 4.35882339e+01, 4.18823547e+01, 7.67647076e+00, 7.08823538e+00, + 8.13823547e+01, 8.44117661e+01, 3.11176472e+01, 2.31470585e+01, + 4.74705887e+01, 2.77647057e+01, 2.98823528e+01, 2.67058830e+01, + 2.41764698e+01, 9.05882359e+00, 1.97647057e+01, 8.90588226e+01, + 8.59411774e+01, 1.25294113e+01, 1.11764708e+01, 2.35882359e+01, + 5.94117641e+00, 8.61764717e+00, 6.94117641e+00, 4.50000000e+00, + 1.27647057e+01, 1.17647057e+01, 2.35294127e+00, 2.76470590e+00, + 7.96470566e+01, 4.66470604e+01, 1.41764708e+01, 9.41176510e+00, + 7.46176453e+01, 4.56470604e+01, 4.05882359e+00, 1.07058821e+01, + 1.30441177e+02, 6.66764679e+01, 8.47058868e+00, 1.65588226e+01, + 1.02411766e+02, 3.08529415e+01, 9.58823490e+00, 2.38235302e+01, + 4.47941170e+01, 1.21176472e+01, 7.58823538e+00, 3.33235283e+01, + 1.25676468e+02, 2.47647057e+01, 4.76470566e+00, 1.54705887e+01, + 8.61764717e+00, 6.47058821e+00, 4.94117641e+00, 5.52941179e+00, + 9.23529434e+00, 3.14705873e+00, 1.29411769e+00, 5.17647076e+00, + 7.17058792e+01, 1.78235302e+01, 4.47058821e+00, 1.09705887e+01, + 7.03529434e+01, 1.73823528e+01, 1.50000000e+00, 1.13529415e+01, + 130., 3.88235283e+01, 1.88235295e+00, 1.20294113e+01, + 1.02235291e+02, 1.64705887e+01, 6.47058845e-01, 9.20588207e+00, + 4.92058830e+01, 1.36176472e+01, 1.79411769e+00, 1.14117651e+01, + 1.15470589e+02, 1.79411774e+01, 2.67647052e+00, 6.32352924e+00, + 2.20689654e+00, 3.91379309e+00, 4.10344839e+00, 5.79310322e+00, + 5.21379318e+01, 1.24465515e+02, 3.02758617e+01, 1.63793099e+00, + 8.12068939e+00, 1.15000000e+01, 1.15344830e+01, 3.32758617e+00, + 1.46551723e+01, 1.10500000e+02, 9.14827576e+01, 1.01724138e+01, + 1.86379318e+01, 2.66206894e+01, 4.71034470e+01, 1.73448277e+01, + 3.70689654e+00, 2.32413788e+01, 9.91034470e+01, 5.42413788e+01, + 1.20517244e+01, 1.60689659e+01, 5.29482765e+01, 5.28103447e+01, + 1.12241383e+01, 9.03448296e+00, 8.48103485e+01, 9.25862045e+01, + 3.32758617e+00, 5.56896544e+00, 5.25862074e+00, 8.72413826e+00, + 4.81206894e+01, 8.40689621e+01, 2.11724129e+01, 2.86206889e+00, + 4.68965530e+00, 1.08275862e+01, 2.41034489e+01, 1.15689659e+01, + 4.46206894e+01, 1.14396553e+02, 8.81551743e+01, 6.55172396e+00, + 1.46724138e+01, 1.86379318e+01, 5.71379318e+01, 3.02241383e+01, + 2.46724129e+01, 7.62068939e+01, 1.14758621e+02, 2.86896553e+01, + 2.47586212e+01, 2.29137936e+01, 5.27241364e+01, 4.35000000e+01, + 1.57758617e+01, 2.59655170e+01, 8.90344849e+01, 6.24482765e+01, + 4.98275852e+00, 5.98275852e+00, 3.89655161e+00, 6.43103456e+00, + 3.13965511e+01, 4.41896553e+01, 1.36034479e+01, 5.41379309e+00, + 4.34482765e+00, 3.51724148e+00, 4.93103456e+00, 7.51724148e+00, + 4.57758636e+01, 9.94827576e+01, 3.86896553e+01, 5.96551704e+00, + 1.23965521e+01, 6.50000000e+00, 1.58448277e+01, 1.55517244e+01, + 2.93103447e+01, 9.33448257e+01, 7.15517273e+01, 1.92413788e+01, + 2.48793106e+01, 1.12931032e+01, 1.38965521e+01, 1.20344830e+01, + 1.43620691e+01, 4.26206894e+01, 6.79827576e+01, 4.08793106e+01, + 5.43103456e+00, 5.22413778e+00, 3.63793111e+00, 3.67241383e+00, + 1.01034479e+01, 1.58448277e+01, 9.44827557e+00, 5.65517235e+00, + 4.18965530e+00, 2.46551728e+00, 1.20689654e+00, 3., + 1.38620691e+01, 4.75689659e+01, 2.86206894e+01, 6.01724148e+00, + 3.03448272e+00, 1.06896555e+00, 5.86206913e-01, 1.31034482e+00, + 1.05000000e+01, 5.86896553e+01, 5.38448257e+01, 1.00862064e+01, + 4.82758617e+00, 8.62068951e-01, 5.86206913e-01, 7.06896544e-01, + 2.93103456e+00, 2.63448277e+01, 5.28103447e+01, 2.45172405e+01, + 2.56744194e+01, 1.33488369e+01, 1.08372097e+01, 2.40232563e+01, + 1.78372097e+01, 2.12558136e+01, 2.82325573e+01, 5.26976738e+01, + 1.58139534e+01, 1.15581398e+01, 1.09534883e+01, 2.41860466e+01, + 8.34186020e+01, 7.75581360e+01, 3.17209301e+01, 2.01627903e+01, + 1.08139534e+01, 6.16279078e+00, 4.11627913e+00, 1.98604660e+01, + 1.01348839e+02, 6.30930214e+01, 1.23953485e+01, 6.60465097e+00, + 5.27906990e+00, 7.32558155e+00, 2.37209296e+00, 6.93023252e+00, + 1.89302330e+01, 8.67441845e+00, 3.93023252e+00, 2.02325583e+00, + 2.63720932e+01, 1.66976738e+01, 1.57441864e+01, 2.66744194e+01, + 2.72558136e+01, 1.93023262e+01, 2.66744194e+01, 3.83255806e+01, + 2.39302330e+01, 1.43023252e+01, 1.53255816e+01, 6.40232544e+01, + 1.09558136e+02, 3.94186058e+01, 1.85116272e+01, 2.42558136e+01, + 1.70930233e+01, 5.04651165e+00, 5.30232573e+00, 8.16744156e+01, + 1.29534882e+02, 3.13488369e+01, 9.60465145e+00, 1.67906971e+01, + 8.62790680e+00, 3.53488374e+00, 3.20930243e+00, 1.22790699e+01, + 2.30930233e+01, 1.00697670e+01, 9.51162815e+00, 9.76744175e+00, + 2.58372097e+01, 2.61395340e+01, 3.14883728e+01, 3.60232544e+01, + 3.18372097e+01, 2.28372097e+01, 2.27209301e+01, 2.43488369e+01, + 1.82790699e+01, 9.86046505e+00, 24., 1.26534882e+02, + 1.12279068e+02, 2.71627903e+01, 2.23488369e+01, 3.46279068e+01, + 2.16279068e+01, 4.72093010e+00, 5.95348835e+00, 1.10325584e+02, + 1.10232559e+02, 1.44418602e+01, 7.11627913e+00, 2.23488369e+01, + 9.06976700e+00, 3.32558131e+00, 3.69767451e+00, 9.81395340e+00, + 1.18604650e+01, 5.48837233e+00, 3.95348835e+00, 8.04651165e+00, + 1.69069767e+01, 1.63023262e+01, 8.12325592e+01, 9.99069748e+01, + 2.32093029e+01, 1.12093019e+01, 1.62790699e+01, 2.22325573e+01, + 1.19534883e+01, 5.39534903e+00, 5.69069786e+01, 1.29674423e+02, + 4.71627922e+01, 4.39534903e+00, 9.41860485e+00, 2.54883728e+01, + 1.38604650e+01, 4.90697670e+00, 1.05348835e+01, 6.10697670e+01, + 3.02790699e+01, 5.97674417e+00, 6.25581408e+00, 1.72325573e+01, + 9.11627865e+00, 1.76744187e+00, 3.20930243e+00, 8.11627865e+00, + 5.02325583e+00, 2.67441869e+00, 3.62790704e+00, 2.12558136e+01, + 5.96153831e+00, 2.26923084e+00, 1.30769229e+00, 6.53846145e-01, + 6.15384638e-01, 1.19230771e+00, 1.80769229e+00, 2.88461542e+00, + 5.24615402e+01, 2.61538467e+01, 1.27692308e+01, 8.42307663e+00, + 8.15384579e+00, 1.15000000e+01, 1.78076916e+01, 3.15000000e+01, + 6.53461533e+01, 3.41538467e+01, 1.55384617e+01, 1.11538458e+01, + 1.74230766e+01, 2.11538467e+01, 1.98461533e+01, 3.58461533e+01, + 4.11153831e+01, 1.99230766e+01, 2.15769234e+01, 3.16153851e+01, + 1.94230766e+01, 2.20769234e+01, 1.85000000e+01, 2.79615383e+01, + 6.30769253e+00, 3.92307687e+00, 2.07692313e+00, 1.26923072e+00, + 8.07692289e-01, 1.42307687e+00, 2.69230771e+00, 4.46153831e+00, + 6.58461533e+01, 3.90384598e+01, 2.36923084e+01, 2.56538467e+01, + 1.16923075e+01, 1.14615383e+01, 2.10769234e+01, 4.76923065e+01, + 7.28846130e+01, 4.45769234e+01, 7.46538467e+01, 8.00769196e+01, + 2.33461533e+01, 2.05384617e+01, 28., 5.17692299e+01, + 4.13461533e+01, 2.31923084e+01, 1.00884613e+02, 8.76538467e+01, + 1.80384617e+01, 1.58461542e+01, 3.75000000e+01, 6.63846130e+01, + 6.19230747e+00, 4.26923084e+00, 2.65384626e+00, 1.53846157e+00, + 1.69230771e+00, 1.61538458e+00, 3.26923084e+00, 5.11538458e+00, + 4.83461533e+01, 4.05000000e+01, 3.44230766e+01, 5.73461533e+01, + 4.99615402e+01, 2.33461533e+01, 23., 3.81153831e+01, + 5.41538467e+01, 5.45000000e+01, 8.68076935e+01, 1.10384613e+02, + 6.43076935e+01, 3.39230766e+01, 5.07692299e+01, 6.65000000e+01, + 2.08076916e+01, 2.31538467e+01, 9.41153870e+01, 7.65000000e+01, + 5.88461542e+00, 9.38461494e+00, 7.74230804e+01, 8.36923065e+01, + 4.65384626e+00, 3.73076916e+00, 2.26923084e+00, 9.61538434e-01, + 1.19230771e+00, 1.69230771e+00, 2.19230771e+00, 2.88461542e+00, + 3.41153831e+01, 3.07692299e+01, 1.61153851e+01, 2.10384617e+01, + 4.56538467e+01, 4.15000000e+01, 3.01538467e+01, 2.38076916e+01, + 4.01538467e+01, 4.79615402e+01, 2.29230766e+01, 2.66153851e+01, + 5.03076935e+01, 6.71538467e+01, 9.95769196e+01, 5.88846169e+01, + 2.28076916e+01, 1.88076916e+01, 3.19615383e+01, 1.71538467e+01, + 4.46153831e+00, 1.72307701e+01, 9.89230804e+01, 8.18461533e+01, + 7.98113203e+00, 5.52830172e+00, 5.60377359e+00, 1.52264147e+01, + 2.19433956e+01, 1.67169819e+01, 7.41509438e+00, 5.62264156e+00, + 1.13018866e+01, 1.06226416e+01, 1.02264147e+01, 4.69622650e+01, + 7.46415100e+01, 1.85283012e+01, 6.75471687e+00, 7.47169828e+00, + 1.03018866e+01, 2.84905672e+00, 3.98113203e+00, 5.66415100e+01, + 1.13943398e+02, 1.21886797e+01, 1.64150941e+00, 5.62264156e+00, + 9.52830219e+00, 1.01886797e+00, 1.73584902e+00, 2.19433956e+01, + 6.17735863e+01, 7.22641516e+00, 2.52830195e+00, 6.37735844e+00, + 3.96226406e+00, 6.50943375e+00, 1.97547169e+01, 4.81698112e+01, + 3.19433956e+01, 1.47169809e+01, 6.62264156e+00, 5.16981125e+00, + 5.73584890e+00, 3.26415086e+00, 1.58301888e+01, 1.12283020e+02, + 7.88490601e+01, 9., 3.11320758e+00, 9.62264156e+00, + 7.26415110e+00, 1.13207543e+00, 4.71698093e+00, 104., + 9.33396225e+01, 3.84905672e+00, 1.84905660e+00, 1.30566034e+01, + 1.83018875e+01, 6.41509414e-01, 2.16981125e+00, 3.59433975e+01, + 4.26981125e+01, 4.33962250e+00, 3.54716992e+00, 3.83396225e+01, + 1.54716980e+00, 5.56603765e+00, 6.26037750e+01, 9.92075500e+01, + 1.86226406e+01, 4.60377359e+00, 7.20754719e+00, 4.22641516e+00, + 1.47169816e+00, 8.11320782e-01, 3.51132088e+01, 1.27830185e+02, + 3.90943413e+01, 2.69811320e+00, 1.27735853e+01, 1.25849056e+01, + 1.52830184e+00, 5.09433985e-01, 9.50943375e+00, 9.34716949e+01, + 3.71320763e+01, 3.28301883e+00, 2.41320763e+01, 4.05660362e+01, + 2.39622650e+01, 6.03773594e-01, 2.73584914e+00, 2.46037731e+01, + 1.25471697e+01, 2.60377359e+00, 2.49245281e+01, 1.13018867e+02, + 3.77358496e-01, 4.35849047e+00, 4.95660362e+01, 4.98867912e+01, + 6.16981125e+00, 2.16603775e+01, 7.36226425e+01, 4.75471687e+00, + 6.03773594e-01, 1.22641504e+00, 2.72452831e+01, 5.47358475e+01, + 8.83018875e+00, 8.37735844e+00, 1.00547173e+02, 4.53207550e+01, + 1.98113203e+00, 9.24528301e-01, 1.47735853e+01, 3.04905663e+01, + 6.32075453e+00, 4.37735844e+00, 1.09716980e+02, 1.20132072e+02, + 1.52641506e+01, 1.18867922e+00, 9.22641468e+00, 3.00566044e+01, + 2.88679242e+00, 1.56603777e+00, 5.52830200e+01, 1.20132072e+02, + 1.41800003e+01, 5.88000011e+00, 1.18900002e+02, 1.35899994e+02, + 1.00400000e+01, 4.78000021e+00, 5.74399986e+01, 9.30599976e+01, + 4.07599983e+01, 8.73999977e+00, 5.98199997e+01, 1.32220001e+02, + 1.48199997e+01, 7.96000004e+00, 2.42399998e+01, 7.38600006e+01, + 5.72999992e+01, 9.26000023e+00, 9.89999962e+00, 2.27600002e+01, + 5.82000017e+00, 6.73999977e+00, 2.22199993e+01, 9.76600037e+01, + 30., 5.76000023e+00, 3.20000005e+00, 2.51999998e+00, + 2.88000011e+00, 4.42000008e+00, 1.40400000e+01, 5.87200012e+01, + 2.70799999e+01, 5.73999977e+00, 5.22200012e+01, 6.02599983e+01, + 4.94000006e+00, 1.06199999e+01, 6.11599998e+01, 8.21399994e+01, + 4.90400009e+01, 6.36000013e+00, 1.04200001e+01, 1.41999998e+01, + 4.23999977e+00, 7.63999987e+00, 7.30199966e+01, 1.29179993e+02, + 4.33800011e+01, 7.51999998e+00, 5.55999994e+00, 5.40000010e+00, + 4., 7.21999979e+00, 5.75200005e+01, 1.26599998e+02, + 1.94200001e+01, 6.55999994e+00, 5.38000011e+00, 5.80000019e+00, + 4.82000017e+00, 7.13999987e+00, 2.67000008e+01, 5.66599998e+01, + 1.19600000e+01, 1.39999998e+00, 1.89999998e+00, 1.72000003e+00, + 1.34000003e+00, 6.48000002e+00, 9.99000015e+01, 1.09239998e+02, + 2.17199993e+01, 4.90000010e+00, 4.48000002e+00, 3.53999996e+00, + 3.20000005e+00, 6.51999998e+00, 8.10999985e+01, 1.22800003e+02, + 2.05599995e+01, 8.06000042e+00, 9., 1.11000004e+01, + 7.38000011e+00, 9.84000015e+00, 4.72799988e+01, 7.31600037e+01, + 1.07200003e+01, 8.57999992e+00, 8.22000027e+00, 8.53999996e+00, + 6.63999987e+00, 7., 1.49600000e+01, 1.90799999e+01, + 3.72000003e+00, 3.19999993e-01, 4.19999987e-01, 6.20000005e-01, + 3.79999995e-01, 1.34000003e+00, 1.58400002e+01, 1.92199993e+01, + 4.26000023e+00, 1.77999997e+00, 1.51999998e+00, 2.07999992e+00, + 1.38000000e+00, 2.22000003e+00, 1.17799997e+01, 1.31400003e+01, + 3.66000009e+00, 2.42000008e+00, 2.92000008e+00, 4.01999998e+00, + 2.70000005e+00, 2.77999997e+00, 6.44000006e+00, 6.98000002e+00, + 1.91999996e+00, 1.10000002e+00, 1.86000001e+00, 2.22000003e+00, + 1.27999997e+00, 1.24000001e+00, 2.74000001e+00, 2.57999992e+00, + 1.04324326e+02, 7.84324341e+01, 9.51351357e+00, 7.64864874e+00, + 4.31351357e+01, 3.62702713e+01, 7.62162161e+00, 14., + 9.52702713e+01, 1.10648651e+02, 3.41891899e+01, 2.82972965e+01, + 4.17837830e+01, 2.09189186e+01, 1.21081085e+01, 1.50270271e+01, + 1.27567568e+01, 4.80270271e+01, 3.47837830e+01, 4.10270271e+01, + 5.43783798e+01, 3.08918915e+01, 1.62702694e+01, 7.43243265e+00, + 1.19459457e+01, 1.68108101e+01, 8.16216183e+00, 1.57027025e+01, + 9.72162170e+01, 8.85945969e+01, 7.43243265e+00, 1.91891897e+00, + 5.59729729e+01, 7.07027054e+01, 6.43243265e+00, 7.27027035e+00, + 3.27027016e+01, 5.48648643e+01, 1.77297306e+01, 1.11891890e+01, + 9.91081085e+01, 1.29189194e+02, 2.67837830e+01, 1.16216221e+01, + 5.58918915e+01, 5.72162170e+01, 11., 4.91891909e+00, + 2.53783779e+01, 9.65675659e+01, 7.12162170e+01, 2.65675678e+01, + 4.17027016e+01, 4.31081085e+01, 8.32432461e+00, 4.56756735e+00, + 1.33513517e+01, 3.48378372e+01, 4.12162170e+01, 4.33243256e+01, + 8.68918915e+01, 46., 9.45945930e+00, 6.35135126e+00, + 1.71621628e+01, 1.69729729e+01, 9.24324322e+00, 7.89189196e+00, + 12., 2.18378372e+01, 1.49189186e+01, 1.47837839e+01, + 3.66756744e+01, 1.06567566e+02, 2.91621628e+01, 8.75675678e+00, + 2.26486492e+01, 5.12162170e+01, 2.58378372e+01, 9.56756783e+00, + 1.94054050e+01, 9.98648682e+01, 9.70540543e+01, 3.79729729e+01, + 1.82972965e+01, 4.04324341e+01, 1.73243237e+01, 6.89189196e+00, + 9.72972965e+00, 2.48648643e+01, 8.07837830e+01, 9.42432404e+01, + 3.06486492e+01, 1.66486492e+01, 1.88648643e+01, 2.24864864e+01, + 3.59459448e+00, 1.91891897e+00, 2.05405402e+00, 1.59459460e+00, + 1.72972977e+00, 1.37837839e+00, 1.40540540e+00, 2.83783793e+00, + 2.24324322e+00, 5.32432413e+00, 3.89189196e+00, 2.13513517e+00, + 3.78378367e+00, 6.08108091e+00, 5., 2.86486483e+00, + 1.97297299e+00, 1.58378382e+01, 1.94054050e+01, 7.32432413e+00, + 3.13513517e+00, 5.29729748e+00, 5.43243265e+00, 2.43243241e+00, + 1.32432437e+00, 5.86486483e+00, 1.72432442e+01, 1.35405407e+01, + 1.86486483e+00, 2.21621633e+00, 6., 6.62162161e+00, + 2.85740738e+01, 2.59259262e+01, 1.55555553e+01, 1.11111107e+01, + 6.98703690e+01, 2.48888893e+01, 8.46296310e+00, 1.27962961e+01, + 1.10870369e+02, 3.52222214e+01, 1.02777777e+01, 1.81851845e+01, + 1.13240738e+02, 2.54074078e+01, 3.24074078e+00, 1.09074078e+01, + 1.01851852e+02, 2.81296291e+01, 9.72222233e+00, 2.26851845e+01, + 7.26111145e+01, 8.51851845e+00, 2.94444442e+00, 1.72777786e+01, + 5.77777786e+01, 1.82407398e+01, 1.13518515e+01, 1.55370369e+01, + 2.09814816e+01, 4.46296310e+00, 4.29629612e+00, 2.09814816e+01, + 3.00925922e+01, 2.54629631e+01, 1.63148155e+01, 1.32777777e+01, + 7.53333359e+01, 2.47222214e+01, 1.23333330e+01, 1.74259262e+01, + 1.21203705e+02, 3.62777786e+01, 8.37036991e+00, 2.41296291e+01, + 1.25259262e+02, 3.23888893e+01, 2.88888884e+00, 1.47037039e+01, + 1.14500000e+02, 3.50370369e+01, 1.00740738e+01, 2.29814816e+01, + 8.28703690e+01, 1.10185184e+01, 2.77777767e+00, 1.86481476e+01, + 6.91851883e+01, 2.48148155e+01, 16., 1.42037039e+01, + 1.86481476e+01, 6.74074078e+00, 6.62962961e+00, 2.19814816e+01, + 2.37592602e+01, 2.41111107e+01, 1.82222214e+01, 1.26296301e+01, + 6.85370407e+01, 1.60370369e+01, 9.94444466e+00, 1.43518515e+01, + 1.10703705e+02, 2.50555553e+01, 7.05555534e+00, 2.29259262e+01, + 1.26277779e+02, 3.21481476e+01, 2.74074078e+00, 1.54814816e+01, + 113., 2.92407398e+01, 8., 1.82222214e+01, 6.98703690e+01, + 1.04259262e+01, 2.46296287e+00, 1.84259262e+01, 6.74814835e+01, + 2.30740738e+01, 1.14444447e+01, 8.81481457e+00, 1.45370369e+01, + 7.20370388e+00, 7.94444466e+00, 2.00555553e+01, 1.45370369e+01, + 1.61666660e+01, 1.47037039e+01, 1.02037039e+01, 4.29814796e+01, + 9.35185146e+00, 7.37037039e+00, 1.04074078e+01, 7.53333359e+01, + 1.99259262e+01, 8.62963009e+00, 1.67962971e+01, 1.12222221e+02, + 2.89629631e+01, 4.64814806e+00, 1.08888893e+01, 7.99814835e+01, + 2.08518524e+01, 9.50000000e+00, 1.38703699e+01, 4.10185204e+01, + 8.94444466e+00, 6.31481504e+00, 1.79259262e+01, 4.52592583e+01, + 1.82777786e+01, 1.09444447e+01, 7.27777767e+00, 9.01851845e+00, + 4.11111116e+00, 5.24074078e+00, 1.50555553e+01, 5.34210539e+00, + 2.89473683e-01, 4.21052635e-01, 2.89473683e-01, 1.44473686e+01, + 4.67368431e+01, 2.16578941e+01, 2.03157902e+01, 5.18421030e+00, + 6.05263174e-01, 3.68421048e-01, 8.42105269e-01, 1.07368422e+01, + 2.69210529e+01, 7., 2.97368431e+00, 1.09815788e+02, + 6.60526323e+00, 5.52631557e-01, 7.89473712e-01, 1.05263162e+00, + 1.13157892e+00, 2.50000000e+00, 9.71052647e+00, 1.12815788e+02, + 1.28157892e+01, 4.50000000e+00, 4.21052647e+00, 5.63157892e+00, + 7.94736862e+00, 7.23684216e+00, 1.91842098e+01, 3.84210515e+00, + 3.86842108e+00, 2.60526323e+00, 3.92105269e+00, 2.89210529e+01, + 8.47894745e+01, 3.75000000e+01, 1.91578941e+01, 7.71052647e+00, + 3.73684216e+00, 8.42105269e-01, 1.52631581e+00, 3.43684196e+01, + 1.16736839e+02, 1.09052635e+02, 1.15263157e+01, 1.21157898e+02, + 7.97368431e+00, 1.05263162e+00, 2.02631569e+00, 2.92105269e+00, + 3.41315804e+01, 1.13210526e+02, 5.57631569e+01, 1.25526314e+02, + 1.55263157e+01, 9.13157940e+00, 1.25000000e+01, 1.03947372e+01, + 1.30526314e+01, 3.33684196e+01, 5.70526314e+01, 6.31578970e+00, + 4.05263138e+00, 2.34210515e+00, 6.44736862e+00, 7.63157892e+00, + 2.18947372e+01, 1.51578951e+01, 1.35789471e+01, 3.16315784e+01, + 2.10263157e+01, 8.71052647e+00, 1.20263157e+01, 1.71315784e+01, + 7.76842117e+01, 1.07894737e+02, 3.45000000e+01, 6.29736824e+01, + 2.23421059e+01, 7.31578970e+00, 1.42631578e+01, 2.26578941e+01, + 6.20789490e+01, 1.26236839e+02, 6.24736824e+01, 6.22894745e+01, + 1.10789471e+01, 1.46052628e+01, 2.04736843e+01, 1.74736843e+01, + 1.57368422e+01, 3.76315804e+01, 5.52368431e+01, 6.44736862e+00, + 4.68421030e+00, 2.63157892e+00, 1.10789471e+01, 6., + 1.37105265e+01, 9.10526276e+00, 9.73684216e+00, 4.14473686e+01, + 1.68421059e+01, 6.10526323e+00, 1.33947372e+01, 1.79210529e+01, + 1.70263157e+01, 1.19210529e+01, 1.66315784e+01, 46., + 2.37894745e+01, 6.84210539e+00, 1.85000000e+01, 3.82894745e+01, + 2.00789471e+01, 11., 2.10263157e+01, 32., 1.15789471e+01, + 7.50000000e+00, 1.80526314e+01, 2.30789471e+01, 1.16052628e+01, + 1.09736843e+01, 2.26578941e+01, 9.29473648e+01, 6.22368431e+01, + 7.81578970e+00, 6.39473677e+00, 2.84473686e+01, 2.37105255e+01, + 8.39473724e+00, 1.40263157e+01, 6.38157883e+01, 5.59736824e+01, + 3.35789490e+01, 1.45789471e+01, 2.53947372e+01, 2.12105255e+01, + 1.35263157e+01, 1.55526314e+01, 5.02631569e+01, 5.99736824e+01, + 2.17894745e+01, 5.50000000e+00, 2.68421054e+00, 2.60526323e+00, + 8.92105293e+00, 1.88947372e+01, 4.17631569e+01, 3.98157883e+01, + 6.78947353e+00, 1.15789473e+00, 5.26315808e-01, 1.02631581e+00, + 3.71052623e+00, 1.41315794e+01, 1.17657898e+02, 3.24736824e+01, + 1.26578951e+01, 2.60263157e+01, 6.32631569e+01, 2.47105255e+01, + 1.09473686e+01, 5.25789490e+01, 9.32105255e+01, 4.35526314e+01, + 3.85263176e+01, 3.05789471e+01, 6.81842117e+01, 4.01842117e+01, + 3.12105255e+01, 5.52368431e+01, 7.97631607e+01, 5.55789490e+01, + 2.42894745e+01, 5.76315784e+00, 1.17631578e+01, 1.13421049e+01, + 2.13947372e+01, 5.67368431e+01, 6.03684196e+01, 3.53157883e+01, + 4.92105246e+00, 6.05263174e-01, 2.36842111e-01, 8.94736826e-01, + 1.10789471e+01, 3.93947372e+01, 9.89736862e+01, 2.01315784e+01, + 2.03947372e+01, 4.52631569e+01, 4.39473686e+01, 1.27105265e+01, + 1.99210529e+01, 1.02894737e+02, 7.46578979e+01, 3.40263176e+01, + 2.84736843e+01, 3.31052628e+01, 4.92105255e+01, 2.50263157e+01, + 4.99210510e+01, 8.82368393e+01, 7.45526352e+01, 3.03157902e+01, + 1.07368422e+01, 4.73684216e+00, 8.84210491e+00, 9.57894707e+00, + 3.60789490e+01, 8.98421021e+01, 5.57105255e+01, 1.66578941e+01, + 2.68421054e+00, 5.00000000e-01, 2.36842111e-01, 1.55263162e+00, + 1.45000000e+01, 54., 2.73684216e+01, 5.71052647e+00, + 9.26315784e+00, 1.85263157e+01, 1.13157892e+01, 1.66842098e+01, + 5.05263176e+01, 9.03684235e+01, 2.56315784e+01, 9.63157940e+00, + 6.31578970e+00, 8.68421078e+00, 7.34210539e+00, 1.15789471e+01, + 6.01578941e+01, 8.02894745e+01, 3.55789490e+01, 7.36842108e+00, + 2.23684216e+00, 1.42105258e+00, 2.05263162e+00, 4.47368431e+00, + 3.47894745e+01, 8.01578979e+01, 2.98421059e+01, 7.92105246e+00, + 2.21052623e+00, 1.31578946e+00, 1.36842108e+00, 3.05263162e+00, + 1.27894735e+01, 3.54210510e+01, 3.57391319e+01, 5., + 1.48913040e+01, 1.57173910e+01, 2.30434775e+00, 6.34782600e+00, + 3.41086960e+01, 7.70652161e+01, 1.17173910e+01, 4.43478251e+00, + 1.10869570e+01, 8.80434799e+00, 1.23260870e+01, 4.22608681e+01, + 6.89347839e+01, 5.08913040e+01, 1.95652175e+00, 1.47608700e+01, + 16., 7.43478251e+00, 3.12173920e+01, 6.69782639e+01, + 3.50434799e+01, 6.47826099e+00, 4.95652151e+00, 3.84565201e+01, + 2.20217400e+01, 5.04347849e+00, 2.52391300e+01, 5.28043480e+01, + 1.36304350e+01, 1.19565213e+00, 8.15217361e+01, 1.54347830e+01, + 6.67391300e+00, 1.01086960e+01, 5.54347849e+00, 8.02173901e+00, + 4.50217400e+01, 1.14695656e+02, 2.98695660e+01, 2.01086960e+01, + 3.02608700e+01, 4.80434799e+01, 5.01086960e+01, 7.18043442e+01, + 9.01304321e+01, 7.18260880e+01, 1.63043475e+00, 4., + 1.29347830e+01, 3.63043480e+01, 9.27826080e+01, 1.03608696e+02, + 3.54347839e+01, 4.69565201e+00, 6.58695650e+00, 1.79347820e+01, + 9.52173901e+00, 1.20434780e+01, 6.84565201e+01, 7.36739120e+01, + 1.07173910e+01, 2.67391300e+00, 8.30869598e+01, 4.53043480e+01, + 2.16956520e+01, 2.14782600e+01, 1.34347830e+01, 9.60869598e+00, + 1.44565220e+01, 5.81739120e+01, 2.10652180e+01, 3.59782600e+01, + 6.64130402e+01, 7.05869598e+01, 5.42391319e+01, 3.65434799e+01, + 2.45434780e+01, 1.98695660e+01, 7.78260851e+00, 8.93478298e+00, + 2.32608700e+01, 5.09347839e+01, 89., 6.69130402e+01, + 1.52173910e+01, 4.65217400e+00, 4.43478251e+00, 6., + 5.60869551e+00, 3.43478279e+01, 9.62391281e+01, 5.80217400e+01, + 7.28260851e+00, 2.30434775e+00, 5.36956520e+01, 5.17391319e+01, + 1.18695650e+01, 9.39130402e+00, 1.06739130e+01, 1.11521740e+01, + 5.69565201e+00, 1.00869570e+01, 1.12608700e+01, 1.66521740e+01, + 2.22173920e+01, 2.66521740e+01, 2.44130440e+01, 2.14565220e+01, + 1.36956520e+01, 8.17391300e+00, 7.39130449e+00, 8.13043499e+00, + 1.74565220e+01, 5.22826080e+01, 6.84130402e+01, 3.19130440e+01, + 1.02608700e+01, 5.97826099e+00, 3.23913050e+00, 1.95652175e+00, + 6.36956501e+00, 6.22826080e+01, 8.40652161e+01, 2.55000000e+01, + 3.82608700e+00, 2.32608700e+00, 1.75000000e+01, 1.27500000e+01, + 1.38541670e+01, 1.16666670e+01, 1.11875000e+01, 1.09375000e+01, + 2.05833340e+01, 1.99583340e+01, 2.01250000e+01, 1.64166660e+01, + 2.93958340e+01, 4.21875000e+01, 5.46250000e+01, 3.95000000e+01, + 29., 2.28750000e+01, 1.25000000e+00, 2.37500000e+00, 8., + 4.33333321e+01, 8.36458359e+01, 3.60625000e+01, 1.71666660e+01, + 4.06250000e+00, 6.16250000e+01, 1.36041670e+01, 2.22916675e+00, + 2.50416660e+01, 4.72708321e+01, 1.49375000e+01, 1.01875000e+01, + 1.22708330e+01, 1.19166670e+01, 2.04166660e+01, 5.85000000e+01, + 4.70416679e+01, 1.81458340e+01, 1.01250000e+01, 9.75000000e+00, + 1.09791670e+01, 1.26666670e+01, 1.93750000e+01, 6.73750000e+01, + 9.10833359e+01, 3.85625000e+01, 8.14583302e+00, 4.97916651e+00, + 7.29166651e+00, 1.60416663e+00, 4.58333349e+00, 2.97916660e+01, + 9.87916641e+01, 5.36875000e+01, 1.05625000e+01, 4.33333349e+00, + 1.47916663e+00, 8.49583359e+01, 5.39583349e+00, 7.56250000e+00, + 5.91875000e+01, 4.40208321e+01, 5.93750000e+00, 3.75000000e+00, + 4.48541679e+01, 3.54166675e+00, 3.30208321e+01, 1.07750000e+02, + 4.91041679e+01, 7.56250000e+00, 3.25000000e+00, 1.97916663e+00, + 2.43750000e+00, 2.04166675e+00, 1.54583330e+01, 9.59791641e+01, + 8.30833359e+01, 8.56250000e+00, 1.72916663e+00, 1.47916663e+00, + 8.33333313e-01, 1.00833330e+01, 5.12500000e+00, 5.27500000e+01, + 9.27083359e+01, 1.54791670e+01, 1.72916663e+00, 2.91666675e+00, + 3.41041679e+01, 9.23125000e+01, 3.50000000e+00, 1.06041670e+01, + 9.08750000e+01, 4.27291679e+01, 1.27083337e+00, 2.85416675e+00, + 1.16895836e+02, 2.08333325e+00, 2.72083340e+01, 5.73125000e+01, + 1.81041660e+01, 4.77083349e+00, 8.16666698e+00, 1.95000000e+01, + 5.08333349e+00, 2.60416675e+00, 1.21875000e+01, 6.84375000e+01, + 3.54791679e+01, 3.91666675e+00, 5.52083349e+00, 3.85208321e+01, + 4.12500000e+01, 1.60208340e+01, 4.02083349e+00, 4.16666679e+01, + 7.60833359e+01, 5.04166651e+00, 9.37500000e-01, 3.40833321e+01, + 1.15520836e+02, 3.56250000e+01, 2.02083325e+00, 1.46666670e+01, + 1.20500000e+02, 3.30833321e+01, 8.54166687e-01, 7.64583349e+00, + 1.05812500e+02, 31., 7.00985947e+01, 8.09859180e+00, + 3.73239446e+00, 1.38732395e+01, 3.79577446e+01, 1.90140839e+01, + 1.08732395e+01, 1.70845070e+01, 2.32394371e+01, 7.16901398e+00, + 8.35211277e+00, 1.55492954e+01, 1.95211277e+01, 2.75492954e+01, + 2.10985909e+01, 1.17042255e+01, 8.18309879e+00, 8.46478844e+00, + 1.06478872e+01, 1.30563383e+01, 1.48450708e+01, 2.35633812e+01, + 2.04647884e+01, 8.35211277e+00, 6.15492964e+00, 5.97183084e+00, + 8.15492916e+00, 1.06760559e+01, 1.02676058e+01, 1.46619720e+01, + 1.43239441e+01, 4.74084511e+01, 1.06183098e+02, 1.47183094e+01, + 5.57746458e+00, 3.07183094e+01, 1.00366196e+02, 1.93380280e+01, + 1.08450708e+01, 5.11830978e+01, 1.04394363e+02, 1.61690140e+01, + 9.07042217e+00, 2.56478882e+01, 5.73098602e+01, 3.10281696e+01, + 1.93239441e+01, 2.05352116e+01, 2.38873234e+01, 1.36338024e+01, + 1.76901417e+01, 2.36056347e+01, 2.96619720e+01, 3.79718323e+01, + 2.82394371e+01, 1.63943653e+01, 9.43661976e+00, 9.85915470e+00, + 1.26619720e+01, 19., 1.79718304e+01, 2.27746487e+01, + 2.27042255e+01, 3.66056328e+01, 8.15774612e+01, 8.29577446e+00, + 5.05633783e+00, 3.45352097e+01, 1.08154930e+02, 2.21971836e+01, + 1.13661976e+01, 5.72676048e+01, 1.25774651e+02, 2.23521118e+01, + 4.63380289e+00, 3.40281677e+01, 1.18577461e+02, 2.92112675e+01, + 1.02957745e+01, 3.72112694e+01, 1.00464790e+02, 2.42394371e+01, + 1.16338024e+01, 2.45633812e+01, 5.56056328e+01, 3.44084511e+01, + 2.03802814e+01, 1.72957745e+01, 21., 1.31549292e+01, + 1.19295778e+01, 2.14647884e+01, 2.50140839e+01, 2.50845070e+01, + 2.00281696e+01, 3.27042236e+01, 5.85774651e+01, 9., + 7.11267614e+00, 2.75070419e+01, 8.29014053e+01, 2.15070419e+01, + 1.16619720e+01, 3.16338024e+01, 8.91830978e+01, 1.06338024e+01, + 3.73239446e+00, 2.74366188e+01, 1.15661972e+02, 3.40140839e+01, + 1.17887325e+01, 4.68450699e+01, 1.18957748e+02, 1.99014091e+01, + 5.26760578e+00, 2.51267605e+01, 1.05323944e+02, 3.10140839e+01, + 1.10281687e+01, 1.94507046e+01, 6.39295769e+01, 1.70563374e+01, + 6.78873253e+00, 1.52676058e+01, 3.69859161e+01, 2.39295769e+01, + 1.36478872e+01, 9.31333313e+01, 9.32888870e+01, 1.39999998e+00, + 9.33333337e-01, 2.67555561e+01, 3.09333324e+01, 1.22222221e+00, + 1.13333333e+00, 6.99111099e+01, 6.57777786e+01, 8.44444454e-01, + 1.46666670e+00, 1.08622223e+02, 1.04333336e+02, 1.44444442e+00, + 1.31111109e+00, 2.44666672e+01, 2.21777782e+01, 3.26666665e+00, + 5.28888893e+00, 6.16222229e+01, 5.73555565e+01, 3.46666670e+00, + 2.42222214e+00, 8.04444408e+00, 7.68888903e+00, 3.77777767e+00, + 3.22222233e+00, 5.13333321e+00, 4.48888874e+00, 3.06666660e+00, + 3.15555549e+00, 6.44222260e+01, 6.34666672e+01, 2.53333330e+00, + 1.35555553e+00, 3.27111130e+01, 4.15111122e+01, 2.37777781e+00, + 2.35555553e+00, 1.17111115e+02, 1.15199997e+02, 1.55555558e+00, + 1.97777772e+00, 8.16222229e+01, 8.54222260e+01, 2.06666660e+00, + 2.82222223e+00, 2.86000004e+01, 3.04444447e+01, 3.75555563e+00, + 4.80000019e+00, 1.18666664e+02, 1.14488892e+02, 4.82222223e+00, + 2.35555553e+00, 1.38444443e+01, 1.73333340e+01, 4.28888893e+00, + 3.64444447e+00, 7.26666689e+00, 1.07111111e+01, 6.35555553e+00, + 4.13333321e+00, 1.91111107e+01, 1.65333328e+01, 3.88888884e+00, + 3.82222223e+00, 2.39555550e+01, 2.60222225e+01, 3.77777767e+00, + 5.84444427e+00, 1.15955559e+02, 1.15422226e+02, 7.55555534e+00, + 6.24444437e+00, 3.69555550e+01, 3.72444458e+01, 3.48888898e+00, + 1.37777777e+01, 3.67555542e+01, 5.17111130e+01, 1.67555561e+01, + 1.94888897e+01, 1.14022224e+02, 1.04688889e+02, 2.01333332e+01, + 4.02222204e+00, 1.36222219e+01, 2.00888882e+01, 5.88888884e+00, + 4.66666651e+00, 2.40666676e+01, 4.18222237e+01, 2.11555557e+01, + 4.35555553e+00, 1.11111107e+01, 4.19999981e+00, 3.40000010e+00, + 4.64444447e+00, 1.25111113e+01, 8.24444485e+00, 2.59999990e+00, + 8.80000019e+00, 6.81333313e+01, 4.97777786e+01, 8.02222252e+00, + 7.33333349e+00, 2.10444450e+01, 1.74444447e+01, 4.22222233e+00, + 2.92444439e+01, 2.98444443e+01, 4.08444443e+01, 2.68444443e+01, + 2.71333332e+01, 4.38666649e+01, 3.21777763e+01, 1.25111113e+01, + 8.84444427e+00, 4.97777796e+00, 1.00222225e+01, 6.80000019e+00, + 8.95555592e+00, 2.67999992e+01, 3.90222206e+01, 1.81555557e+01, + 3.59999990e+00, 6.13333344e-01, 5.19999981e-01, 1.46666670e+00, + 8.03999996e+00, 2.01733341e+01, 1.21466665e+01, 2.54666662e+00, + 8.53333354e-01, 1.62666667e+00, 2.24000001e+00, 5.50666666e+00, + 4.30133324e+01, 1.11506668e+02, 6.16399994e+01, 1.02799997e+01, + 3.13333344e+00, 1.65599995e+01, 2.31066666e+01, 1.54799995e+01, + 3.50933342e+01, 8.33866653e+01, 8.16800003e+01, 2.63333340e+01, + 1.29466667e+01, 4.68133316e+01, 5.11199989e+01, 2.20933342e+01, + 1.68133335e+01, 5.52933350e+01, 1.01160004e+02, 3.89599991e+01, + 1.52399998e+01, 1.37333333e+00, 7.33333349e-01, 1.54666662e+00, + 6.28000021e+00, 2.20933342e+01, 1.99866657e+01, 5.36000013e+00, + 2.02666664e+00, 1.57333338e+00, 1.30666661e+00, 3.82666659e+00, + 2.71599998e+01, 1.15639999e+02, 1.08839996e+02, 2.22933331e+01, + 4.55999994e+00, 1.08933334e+01, 1.62666664e+01, 1.78799992e+01, + 3.06933327e+01, 8.40666656e+01, 9.97333298e+01, 4.27066650e+01, + 2.00266666e+01, 2.34400005e+01, 4.17066650e+01, 2.39733334e+01, + 2.05333328e+01, 3.51466675e+01, 8.56666641e+01, 5.42133331e+01, + 2.79733334e+01, 2.57333326e+00, 1.57333338e+00, 2.16000009e+00, + 5.21333313e+00, 1.11199999e+01, 1.27066669e+01, 5.88000011e+00, + 3.92000008e+00, 4.17333317e+00, 2.48000002e+00, 4.32000017e+00, + 1.56266670e+01, 8.46133347e+01, 1.10800003e+02, 3.62266655e+01, + 8.90666676e+00, 3.86666656e+00, 3.51999998e+00, 6.01333332e+00, + 1.31333332e+01, 8.21200027e+01, 1.21279999e+02, 6.28133316e+01, + 1.28666668e+01, 1.06266670e+01, 1.60799999e+01, 1.42399998e+01, + 1.51466665e+01, 2.95066662e+01, 7.64933319e+01, 5.92533340e+01, + 2.15733337e+01, 2.75999999e+00, 1.49333334e+00, 2.01333332e+00, + 3.54666662e+00, 4.15999985e+00, 4.26666689e+00, 4.28000021e+00, + 3.85333323e+00, 8.46666622e+00, 4.70666647e+00, 5.82666683e+00, + 10., 2.94133339e+01, 5.16933327e+01, 2.70266666e+01, + 1.41333332e+01, 3.22666669e+00, 1.78666663e+00, 2.27999997e+00, + 5.62666655e+00, 4.08800011e+01, 1.08226669e+02, 6.38266678e+01, + 1.00533333e+01, 2.35999990e+00, 1.49333334e+00, 1.97333336e+00, + 3.58666658e+00, 18., 8.84933319e+01, 8.70533371e+01, + 1.31466665e+01, 2.09090900e+00, 4.82954550e+00, 5.60227251e+00, + 2.40909100e+00, 1.77272725e+00, 1.04545450e+00, 9.31818187e-01, + 1.01136363e+00, 2.68181825e+00, 4.44318199e+00, 3.40909100e+00, + 2.02272725e+00, 2.29545450e+00, 2.75000000e+00, 2.39772725e+00, + 1.59090912e+00, 2.98863626e+00, 2.98863626e+00, 2.40909100e+00, + 2.21590900e+00, 2.46590900e+00, 2.60227275e+00, 2.25000000e+00, + 1.90909088e+00, 2.78409100e+00, 2.78409100e+00, 1.46590912e+00, + 1.53409088e+00, 1.67045450e+00, 1.40909088e+00, 1.20454550e+00, + 1.32954550e+00, 1.07954550e+01, 4.86363640e+01, 73., + 1.91250000e+01, 7.34090900e+00, 5.80681801e+00, 5.22727251e+00, + 5.07954550e+00, 1.83863640e+01, 5.62386360e+01, 5.55681801e+01, + 1.74772720e+01, 1.04659090e+01, 1.06590910e+01, 9.76136398e+00, + 9.36363602e+00, 1.92613640e+01, 3.42500000e+01, 3.15454540e+01, + 1.68522720e+01, 1.41818180e+01, 1.49659090e+01, 1.24090910e+01, + 1.06136360e+01, 1.61818180e+01, 2.15795460e+01, 1.81590900e+01, + 1.17045450e+01, 1.20568180e+01, 1.21363640e+01, 9.94318199e+00, + 9.61363602e+00, 9.02272701e+00, 9.76704559e+01, 1.45465912e+02, + 2.99659100e+01, 5.07954550e+00, 8.46590900e+00, 1.04659090e+01, + 5.17045450e+00, 1.93522720e+01, 1.39045456e+02, 1.38568176e+02, + 1.69090900e+01, 6.92045450e+00, 8.45454502e+00, 7.44318199e+00, + 5.72727251e+00, 2.56363640e+01, 1.20988640e+02, 8.80340881e+01, + 1.55113640e+01, 9.13636398e+00, 1.12386360e+01, 8.65909100e+00, + 8.82954502e+00, 21., 4.71704559e+01, 3.33181801e+01, + 1.32272730e+01, 1.12045450e+01, 1.29659090e+01, 1.13636360e+01, + 1.13181820e+01, 5.35227251e+00, 8.12840881e+01, 1.21363640e+02, + 1.88068180e+01, 6.80681801e+00, 2.78636360e+01, 3.08068180e+01, + 8.38636398e+00, 1.34204550e+01, 1.43113632e+02, 1.25113640e+02, + 9.34090900e+00, 5.27272749e+00, 2.51590900e+01, 1.46590910e+01, + 5.72727251e+00, 3.51477280e+01, 1.47863632e+02, 8.71931839e+01, + 7.38636351e+00, 5.43181801e+00, 1.44772730e+01, 5.98863649e+00, + 5.76136351e+00, 3.31022720e+01, 1.01238640e+02, 3.93181801e+01, + 6.22727251e+00, 4.65909100e+00, 7.06818199e+00, 5.67045450e+00, + 7.57954550e+00, 1.25205479e+01, 6.50684929e+00, 3.98630142e+00, + 3.91780829e+00, 6.47945213e+00, 8.69863033e+00, 1.06027393e+01, + 8.89041138e+00, 1.64794521e+01, 8.94520569e+00, 6.17808199e+00, + 6.65753412e+00, 1.21643839e+01, 1.27808218e+01, 1.46986303e+01, + 1.53972607e+01, 1.13287668e+01, 9.31506824e+00, 5.91780806e+00, + 7.82191801e+00, 1.39178085e+01, 1.34383564e+01, 1.25068493e+01, + 1.12739725e+01, 8.28767109e+00, 5.65753412e+00, 4.15068483e+00, + 6., 1.03013697e+01, 1.34794521e+01, 1.54794521e+01, + 8.89041138e+00, 3.39863014e+01, 1.99041100e+01, 1.16712332e+01, + 1.27397261e+01, 1.96849308e+01, 2.43287678e+01, 2.67671242e+01, + 2.63287678e+01, 4.12328758e+01, 2.82191772e+01, 1.86164379e+01, + 2.14383564e+01, 3.19863014e+01, 3.63013687e+01, 3.58630142e+01, + 3.72465744e+01, 3.63972588e+01, 2.63698635e+01, 2.03835621e+01, + 2.26712322e+01, 3.23424644e+01, 3.84520531e+01, 4.30410957e+01, + 3.72054787e+01, 2.78082199e+01, 2.15342464e+01, 1.63287678e+01, + 1.83972607e+01, 2.80547943e+01, 3.46986313e+01, 3.89726028e+01, + 2.93835621e+01, 3.69178085e+01, 1.97123280e+01, 1.41095886e+01, + 1.61506844e+01, 2.23698635e+01, 2.86712322e+01, 3.04109592e+01, + 3.06164379e+01, 4.67945213e+01, 2.86027393e+01, 2.97808228e+01, + 2.95890408e+01, 3.60136986e+01, 4.21369858e+01, 4.71780815e+01, + 4.54931488e+01, 4.61780815e+01, 3.03835621e+01, 5.17945213e+01, + 4.38767128e+01, 3.42191772e+01, 4.02054787e+01, 5.41780815e+01, + 4.91643829e+01, 2.90410957e+01, 2.21232872e+01, 7.37808228e+01, + 6.91095886e+01, 3.04109592e+01, 3.17808228e+01, 4.33424644e+01, + 3.93287659e+01, 2.38493156e+01, 1.70136986e+01, 4.63013687e+01, + 4.22465744e+01, 1.88356171e+01, 19., 2.59726028e+01, + 2.51232872e+01, 2.69452057e+01, 2.15205479e+01, 1.05452057e+02, + 9.93561630e+01, 2.34109592e+01, 2.43287678e+01, 5.69178085e+01, + 5.10273972e+01, 1.73150692e+01, 2.03972607e+01, 1.28630142e+02, + 1.12575340e+02, 1.69041100e+01, 2.56575336e+01, 9.44246597e+01, + 7.43150711e+01, 1.13287668e+01, 1.40136986e+01, 1.25150688e+02, + 1.04054794e+02, 1.33835621e+01, 2.25616436e+01, 1.11972603e+02, + 8.96164398e+01, 1.46166668e+01, 5.55000019e+00, 9.83333359e+01, + 7.10999985e+01, 3.33333325e+00, 1.12666664e+01, 4.55499992e+01, + 2.38166676e+01, 1.54166670e+01, 2.28500004e+01, 1.13933334e+02, + 3.13999996e+01, 3.13333344e+00, 1.82666664e+01, 4.72000008e+01, + 1.23666668e+01, 3.78333330e+00, 7.01166687e+01, 1.21183334e+02, + 7.58333349e+00, 3.65000010e+00, 2.99166660e+01, 4.31500015e+01, + 4.44999981e+00, 3., 1.07066666e+02, 9.36999969e+01, + 2.26666665e+00, 2.65000010e+00, 5.71500015e+01, 3.92333336e+01, + 2.58333325e+00, 1.24499998e+01, 2.48333335e+00, 1.08000002e+01, + 1.46166668e+01, 3.33333325e+00, 2.18500004e+01, 6.38833351e+01, + 2.12333336e+01, 9.44999981e+00, 3., 7.01666689e+00, + 2.25000000e+00, 4.26666689e+00, 4.39166679e+01, 7.19833298e+01, + 1.90833340e+01, 2.11666656e+00, 1.26666670e+01, 1.28666668e+01, + 1.86666667e+00, 1.05333338e+01, 5.79333344e+01, 4.56500015e+01, + 8.26666641e+00, 8.03333378e+00, 6.41833344e+01, 2.43999996e+01, + 3.01666665e+00, 1.11166668e+01, 3.80499992e+01, 2.22500000e+01, + 4.18333340e+00, 1.39666662e+01, 3.36666656e+00, 1.54999995e+00, + 1.13333333e+00, 1.66666663e+00, 1.82999992e+01, 8.65666656e+01, + 5.38166656e+01, 6.58333349e+00, 2.75000000e+00, 1.68333328e+00, + 2.11666656e+00, 5.05000019e+00, 6.73833313e+01, 1.16416664e+02, + 3.82500000e+01, 1.23333335e+00, 8.66666675e-01, 6.83333337e-01, + 1.08333337e+00, 1.66833324e+01, 9.76333313e+01, 8.94499969e+01, + 1.01499996e+01, 4.08333349e+00, 4.69999981e+00, 4.49999988e-01, + 2.29999995e+00, 2.19166660e+01, 7.16666641e+01, 3.88666649e+01, + 4.44999981e+00, 3.55333328e+01, 1.47333336e+01, 1.00666666e+01, + 8.53333378e+00, 9.26666641e+00, 1.92999992e+01, 5.14666672e+01, + 5.51833344e+01, 2.22333336e+01, 1.80333328e+01, 1.65166664e+01, + 1.69666672e+01, 1.67333336e+01, 4.67500000e+01, 7.16500015e+01, + 3.71666679e+01, 1.02833338e+01, 7.81666660e+00, 7.40000010e+00, + 1.01999998e+01, 3.67000008e+01, 9.62333298e+01, 6.34666672e+01, + 1.35666666e+01, 6.66666687e-01, 3.83333325e-01, 5.66666663e-01, + 4.80000019e+00, 4.46833344e+01, 8.34666672e+01, 3.49000015e+01, + 3.34999990e+00, 6.32727289e+00, 2.36181812e+01, 3.04363632e+01, + 7.40000010e+00, 8.19999981e+00, 2.03272724e+01, 2.14545460e+01, + 7., 2.78363628e+01, 1.15599998e+02, 2.65090904e+01, + 2.67272735e+00, 7., 1.60545464e+01, 7.09090900e+00, + 3.25454545e+00, 1.04618179e+02, 1.40254547e+02, 9.85454559e+00, + 5.14545441e+00, 8.47272682e+00, 1.01272726e+01, 4.85454559e+00, + 6.67272711e+00, 3.37818184e+01, 3.38545456e+01, 7.03636360e+00, + 3.98181820e+00, 5.21818161e+00, 5.41818190e+00, 5.03636360e+00, + 1.03636360e+01, 2.46181812e+01, 2.75454540e+01, 2.08363628e+01, + 1.48000002e+01, 2.84545460e+01, 4.27818184e+01, 2.67636356e+01, + 1.25636368e+01, 5.21454544e+01, 4.66181831e+01, 1.04181814e+01, + 1.10363636e+01, 3.62363625e+01, 3.68727264e+01, 9.83636379e+00, + 8.01818180e+00, 1.43109085e+02, 1.04672729e+02, 3.81818175e+00, + 5.25454569e+00, 1.50909090e+01, 7.23636341e+00, 2.96363640e+00, + 1.26909094e+01, 9.06909103e+01, 3.99636345e+01, 8.16363621e+00, + 4.30909109e+00, 1.01999998e+01, 6.09090900e+00, 6.83636379e+00, + 1.57090912e+01, 1.90727272e+01, 1.93090916e+01, 2.03272724e+01, + 3.07090912e+01, 3.35636368e+01, 2.38181820e+01, 2.62545452e+01, + 2.18727264e+01, 4.66727257e+01, 1.46909094e+01, 1.07454548e+01, + 2.46000004e+01, 3.80181808e+01, 1.62363644e+01, 8.19999981e+00, + 3.10545464e+01, 1.43254547e+02, 1.53454542e+01, 2.70909095e+00, + 6., 1.01272726e+01, 3.50909090e+00, 2.74545455e+00, + 1.07745453e+02, 9.11818161e+01, 1.65636368e+01, 4.07272720e+00, + 3.90909100e+00, 7.25454569e+00, 4.87272739e+00, 7.19999981e+00, + 4.11454544e+01, 5.49090910e+00, 7.21818161e+00, 2.85272732e+01, + 3.70727272e+01, 1.44545450e+01, 9.19999981e+00, 3.96727257e+01, + 2.82545452e+01, 2.55090904e+01, 2.12727284e+00, 5.52727270e+00, + 1.46363640e+01, 8.60000038e+00, 3.38181829e+00, 3.12909088e+01, + 1.24472725e+02, 1.02563637e+02, 5.54545450e+00, 2.25454545e+00, + 4.40000010e+00, 3.74545455e+00, 2.32727265e+00, 1.18545456e+01, + 1.39781815e+02, 3.37090912e+01, 7.21818161e+00, 2.05454540e+00, + 2.16363645e+00, 2.18181825e+00, 2.61818171e+00, 9.98181820e+00, + 3.94727287e+01, 1.26666670e+01, 1.04615383e+01, 3.36153831e+01, + 3.89487190e+01, 1.11025639e+01, 1.83333340e+01, 4.98717957e+01, + 5.27692299e+01, 2.55128212e+01, 2.31025639e+01, 3.84102554e+01, + 4.11282043e+01, 1.80256405e+01, 1.92051277e+01, 4.70256424e+01, + 5.02307701e+01, 2.67692299e+01, 2.92307701e+01, 2.50769234e+01, + 2.54358978e+01, 2.78205128e+01, 4.09743576e+01, 2.49743595e+01, + 2.34615383e+01, 6.64102554e+00, 8.38461494e+00, 3.46153855e+00, + 2.97435904e+00, 7.25641012e+00, 1.13589745e+01, 4.41025639e+00, + 3.33333325e+00, 3.16153851e+01, 2.12564106e+01, 1.88717957e+01, + 3.63846169e+01, 4.49487190e+01, 5.58205147e+01, 5.73589745e+01, + 4.40512810e+01, 3.14358978e+01, 2.01794872e+01, 3.57692299e+01, + 7.15384598e+01, 5.09487190e+01, 3.93076935e+01, 5.02307701e+01, + 5.83076935e+01, 4.87948723e+01, 1.93589745e+01, 3.06923084e+01, + 7.34871826e+01, 3.67948723e+01, 1.72051277e+01, 2.04871788e+01, + 7.37179489e+01, 1.07948713e+01, 3.69230771e+00, 6.71794891e+00, + 1.27692308e+01, 8.94871807e+00, 5.43589735e+00, 3.48717952e+00, + 1.43333330e+01, 2.59230766e+01, 3.83846169e+01, 7.86923065e+01, + 6.11282043e+01, 3.13333340e+01, 3.48205147e+01, 5.81538467e+01, + 3.67179489e+01, 1.88717957e+01, 1.03846149e+01, 6.92051315e+01, + 1.09948715e+02, 4.05897446e+01, 2.28974361e+01, 8.56153870e+01, + 9.04358978e+01, 4.13589745e+01, 1.02564106e+01, 3.44871788e+01, + 8.39230804e+01, 2.15897427e+01, 6.97435904e+00, 4.07692299e+01, + 1.02051285e+02, 7.64102554e+00, 2.82051277e+00, 5.38461542e+00, + 7.84615374e+00, 2.28205132e+00, 2.17948723e+00, 6.53846169e+00, + 2.39230766e+01, 1.14615383e+01, 2.91538467e+01, 9.31282043e+01, + 5.65641022e+01, 6.07692289e+00, 1.48717947e+01, 8.13333359e+01, + 6.25128212e+01, 1.86153851e+01, 1.58974361e+01, 6.21538467e+01, + 7.13846130e+01, 1.00512819e+01, 1.18717947e+01, 7.43076935e+01, + 9.36153870e+01, 2.06153851e+01, 15., 2.01282043e+01, + 2.62051277e+01, 1.12564106e+01, 1.02564106e+01, 2.92820511e+01, + 6.07692299e+01, 2.38461542e+00, 4.12820530e+00, 4.10256433e+00, + 2.46153855e+00, 2.76923084e+00, 2.25641036e+00, 2.84615374e+00, + 4.61538458e+00, 2.74057980e+01, 1.76521740e+01, 1.63913040e+01, + 1.36666670e+01, 1.29565220e+01, 1.88260860e+01, 3.88115959e+01, + 4.06231880e+01, 5.20434799e+01, 3.63623199e+01, 2.98405800e+01, + 2.55362320e+01, 2.84202900e+01, 4.52173920e+01, 7.25507278e+01, + 7.05507278e+01, 5.58985519e+01, 3.49130440e+01, 2.93478260e+01, + 2.80144920e+01, 3.33623199e+01, 5.87101440e+01, 8.37391281e+01, + 7.77391281e+01, 4.55507240e+01, 3.67536240e+01, 2.53188400e+01, + 2.18550720e+01, 4.30869560e+01, 7.41594238e+01, 7.71594238e+01, + 5.92463760e+01, 3.55507240e+01, 2.50434780e+01, 2.56956520e+01, + 2.37391300e+01, 1.73043480e+01, 2.61449280e+01, 4.44202881e+01, + 5.25362320e+01, 6.50434799e+01, 4.84637680e+01, 4.55797119e+01, + 3.95797119e+01, 3.38840561e+01, 5.06376801e+01, 8.04637680e+01, + 8.61739120e+01, 7.07826080e+01, 5.54637680e+01, 4.38115959e+01, + 3.79420280e+01, 3.78115959e+01, 5.57826080e+01, 8.43333359e+01, + 8.91304321e+01, 6.05072479e+01, 4.17536240e+01, 3.26811600e+01, + 3.24637680e+01, 4.02028999e+01, 5.48695641e+01, 7.04057999e+01, + 7.72898560e+01, 2.74057980e+01, 1.63043480e+01, 1.82173920e+01, + 1.98550720e+01, 1.51159420e+01, 1.87681160e+01, 2.79565220e+01, + 3.42318840e+01, 5.79855080e+01, 3.27971001e+01, 3.20579720e+01, + 3.27391319e+01, 2.88550720e+01, 3.37246361e+01, 5.56086960e+01, + 6.76956558e+01, 5.76521721e+01, 3.78695641e+01, 2.86811600e+01, + 2.90144920e+01, 3.06376820e+01, 4.07536240e+01, 6.53913040e+01, + 7.22028961e+01, 4.73188400e+01, 3.82463760e+01, 3.00724640e+01, + 2.54637680e+01, 3.01739140e+01, 3.54782600e+01, 5.24347839e+01, + 5.51884041e+01, 2.39130425e+00, 1.21739125e+00, 1.05797100e+00, + 1.56521738e+00, 1.78260875e+00, 1.66666663e+00, 2.17391300e+00, + 2.37681150e+00, 8.05797100e+00, 3.07246375e+00, 2.55072474e+00, + 3.49275351e+00, 3.68115950e+00, 2.92753625e+00, 4.55072451e+00, + 6.71014500e+00, 6.63768101e+00, 3.21739125e+00, 2.76811600e+00, + 2.46376801e+00, 3.10144925e+00, 3.66666675e+00, 6.01449299e+00, + 7.31884050e+00, 5.15942049e+00, 3.10144925e+00, 2.71014500e+00, + 2.36231875e+00, 2.56521749e+00, 3.07246375e+00, 4.68115950e+00, + 6.04347849e+00, 1.71724129e+01, 5.13793087e+00, 1.15172415e+01, + 2.26034489e+01, 2.45000000e+01, 2.69310341e+01, 4.27068977e+01, + 4.37241364e+01, 8.44310379e+01, 1.75862064e+01, 7.43103456e+00, + 1.23620691e+01, 1.76379318e+01, 1.48103447e+01, 1.60862064e+01, + 7.82586212e+01, 1.07120689e+02, 4.88448257e+01, 9.34482765e+00, + 7.05172396e+00, 5.10344839e+00, 1.44827580e+00, 2.17241383e+00, + 4.84137917e+01, 3.68103447e+01, 3.25000000e+01, 5.48275852e+00, + 1.34482753e+00, 1.08620691e+00, 1.43103445e+00, 2.56896544e+00, + 7.37931013e+00, 2.32413788e+01, 1.41379309e+01, 5.11034470e+01, + 7.18793106e+01, 3.36724129e+01, 2.39482765e+01, 7.98620682e+01, + 9.53275833e+01, 6.47241364e+01, 1.32241383e+01, 1.72241383e+01, + 5.58965530e+01, 3.07931042e+01, 1.19655170e+01, 4.35344810e+01, + 1.15362068e+02, 1.02431038e+02, 4.57241364e+01, 1.10344830e+01, + 1.83275871e+01, 1.61724129e+01, 2.91379309e+00, 6.48275852e+00, + 7.32241364e+01, 6.07241364e+01, 3.72068977e+01, 4.12068987e+00, + 1.06896555e+00, 1.37931037e+00, 9.82758641e-01, 2.75862074e+00, + 1.34482756e+01, 2.46379318e+01, 1.67068958e+01, 5.85517235e+01, + 6.17758636e+01, 1.75689659e+01, 2.04827595e+01, 8.58275833e+01, + 8.77068939e+01, 4.62931023e+01, 2.16379318e+01, 2.61551723e+01, + 5.74310341e+01, 2.05344830e+01, 1.97586212e+01, 4.87931023e+01, + 9.16206894e+01, 8.20689621e+01, 3.34482765e+01, 9.63793087e+00, + 1.50862064e+01, 1.06379309e+01, 8.24137974e+00, 1.57758617e+01, + 6.02931023e+01, 6.60344849e+01, 1.94655170e+01, 2.31034493e+00, + 6.20689631e-01, 6.89655185e-01, 1.82758617e+00, 4.63793087e+00, + 2.93275871e+01, 2.51379318e+01, 1.06206894e+01, 1.58103447e+01, + 1.87068958e+01, 1.49310341e+01, 2.69310341e+01, 4.68275871e+01, + 3.83620682e+01, 3.19310341e+01, 1.59655170e+01, 1.02931032e+01, + 1.67068958e+01, 1.53103447e+01, 2.57586212e+01, 4.15344810e+01, + 4.82413788e+01, 5.70344810e+01, 1.09482756e+01, 3.17241383e+00, + 3.15517235e+00, 4.12068987e+00, 8.25862026e+00, 2.29137936e+01, + 6.84310379e+01, 3.74827576e+01, 6.17241383e+00, 1.60344827e+00, + 5.68965495e-01, 6.55172408e-01, 2.39655161e+00, 1.02758617e+01, + 3.74482765e+01, 1.60750008e+01, 8.80000019e+00, 2.97499990e+00, + 1.00500002e+01, 1.29975006e+02, 6.64000015e+01, 4.75000000e+00, + 6.17500019e+00, 3.27000008e+01, 2.43999996e+01, 1.30249996e+01, + 1.60499992e+01, 6.23750000e+01, 3.86500015e+01, 7.69999981e+00, + 1.51499996e+01, 3.34000015e+01, 2.37000008e+01, 2.53500004e+01, + 3.26500015e+01, 2.43999996e+01, 1.27500000e+01, 1.39499998e+01, + 2.66499996e+01, 2.32749996e+01, 9.62500000e+00, 1.20749998e+01, + 2.52500000e+01, 2.57500000e+01, 1.27749996e+01, 1.66749992e+01, + 2.96250000e+01, 7.62500000e+00, 1.04499998e+01, 5.05000019e+00, + 3.90000010e+00, 8.60999985e+01, 1.30524994e+02, 1.82749996e+01, + 4.97499990e+00, 9.55000019e+00, 1.67749996e+01, 1.08500004e+01, + 6.44999981e+00, 5.33750000e+01, 1.34800003e+02, 3.12250004e+01, + 3.37500000e+00, 1.72999992e+01, 2.79500008e+01, 2.48750000e+01, + 1.46000004e+01, 8.82499981e+00, 3.68750000e+01, 36., + 1.46750002e+01, 2.06000004e+01, 1.82999992e+01, 3.67249985e+01, + 3.81250000e+01, 1.34250002e+01, 6.19999981e+00, 3.75250015e+01, + 5.27750015e+01, 3.27500010e+00, 5.50000000e+00, 3.77500010e+00, + 4.30000019e+00, 1.87749996e+01, 8.71750031e+01, 3.61749992e+01, + 5.72499990e+00, 3.70000005e+00, 5.17500019e+00, 4.05000019e+00, + 4.02500010e+00, 1.63750000e+01, 1.40375000e+02, 1.10449997e+02, + 7.97499990e+00, 4.09999990e+00, 6., 8.47500038e+00, + 3.22499990e+00, 3.67499995e+00, 1.20875000e+02, 1.40774994e+02, + 1.43750000e+01, 6.72499990e+00, 8.35000038e+00, 2.09750004e+01, + 1.28249998e+01, 3.27500010e+00, 1.63250008e+01, 1.36300003e+02, + 7.59749985e+01, 3.17499995e+00, 3.67499995e+00, 2.79999995e+00, + 3.77500010e+00, 9.85000038e+00, 2.39500008e+01, 2.14500008e+01, + 5.44999981e+00, 2.95000005e+00, 2.45000005e+00, 2.45000005e+00, + 4.25000000e+00, 1.49750004e+01, 4.67000008e+01, 3.99000015e+01, + 1.01750002e+01, 3.25000000e+00, 2.40000010e+00, 6.02500010e+00, + 3.97499990e+00, 1.06750002e+01, 5.45000000e+01, 7.86750031e+01, + 1.31750002e+01, 5.34999990e+00, 4., 1.00500002e+01, + 6.34999990e+00, 5.80000019e+00, 2.52000008e+01, 7.31750031e+01, + 1.94249992e+01, 3.94285698e+01, 9.78571396e+01, 5.94642878e+00, + 7.85714269e-01, 2., 1.22500000e+01, 5.75000000e+00, 2., + 1.26071424e+01, 5.33928566e+01, 1.60178566e+01, 2.75000000e+00, + 4.08928585e+00, 1.09285717e+01, 1.42321424e+01, 7.12500000e+00, + 8.89285755e+00, 1.67321434e+01, 1.82321434e+01, 8.07142830e+00, + 5.60714293e+00, 9.32142830e+00, 1.51428576e+01, 1.19642859e+01, + 5.35714293e+00, 4.57142878e+00, 1.51785717e+01, 1.96607151e+01, + 1.02142859e+01, 6.71428585e+00, 9.42857170e+00, 8.48214245e+00, + 1.31250000e+01, 1.08642860e+02, 3.63392868e+01, 1., + 2.51785707e+00, 4.38571434e+01, 2.58392849e+01, 2.78571439e+00, + 5.07142878e+00, 1.14875000e+02, 1.06589287e+02, 2.28571439e+00, + 1.83928573e+00, 1.51607141e+01, 2.17142849e+01, 3.19642854e+00, + 2.73214293e+00, 4.96428566e+01, 1.14696426e+02, 2.27678566e+01, + 3.66071439e+00, 7.08928585e+00, 1.78035717e+01, 5.73214293e+00, + 1.55357146e+00, 6.08928585e+00, 1.00232140e+02, 6.82142868e+01, + 5.57142878e+00, 3.03571439e+00, 2.12678566e+01, 1.16607141e+01, + 3.96428561e+00, 2.97857151e+01, 2.17142849e+01, 2.19642854e+00, + 3.82142854e+00, 9.24821396e+01, 9.79642868e+01, 6.33928585e+00, + 4.03571415e+00, 5.48035698e+01, 7.31785736e+01, 2.35714293e+00, + 2.01785707e+00, 5.57678566e+01, 1.13357140e+02, 1.06607141e+01, + 3.41071439e+00, 3.23035698e+01, 1.04964287e+02, 1.30178576e+01, + 1.64285719e+00, 1.62321434e+01, 1.05017860e+02, 2.81071434e+01, + 2.76785707e+00, 7.48214293e+00, 7.63392868e+01, 3.32500000e+01, + 1.76785719e+00, 4.75000000e+00, 9.20535736e+01, 5.89642868e+01, + 3.12500000e+00, 4.21428585e+00, 5.44642878e+00, 3.19642854e+00, + 8.53571415e+00, 5.89821434e+01, 6.43392868e+01, 8.08928585e+00, + 4.53571415e+00, 6.30357122e+00, 1.33928576e+01, 4.19642878e+00, + 6.78571415e+00, 5.39642868e+01, 9.98750000e+01, 1.20357141e+01, + 5.87500000e+00, 4.53571415e+00, 1.93571434e+01, 7.05357122e+00, + 5.69642878e+00, 2.60357151e+01, 1.02089287e+02, 2.70178566e+01, + 4.87500000e+00, 2.82142854e+00, 1.41071424e+01, 9.23214245e+00, + 4.30357122e+00, 1.04821424e+01, 7.47500000e+01, 4.11071434e+01, + 3.59677410e+00, 1.90322578e+00, 3.14516139e+00, 6.03225822e+01, + 8.41451645e+01, 8.58064556e+00, 2.64516139e+00, 4.06451607e+00, + 7.33870983e+00, 2.37096763e+00, 6.51612902e+00, 1.23774193e+02, + 1.01048386e+02, 2.53225803e+00, 2.72580647e+00, 9.83870983e+00, + 1.71451607e+01, 1.00967741e+01, 2.43225803e+01, 4.77419357e+01, + 1.29032259e+01, 5.03225803e+00, 2.05483875e+01, 3.50483856e+01, + 1.01612902e+01, 1.23387098e+01, 2.77258072e+01, 1.61935482e+01, + 1.03709679e+01, 1.74838715e+01, 3.68870964e+01, 24., + 4.58064508e+00, 1.74193549e+00, 2.12903237e+00, 3.55322571e+01, + 1.31758072e+02, 3.39677429e+01, 3.77419353e+00, 3.90322590e+00, + 1.55322580e+01, 6.61290312e+00, 3.33870959e+00, 4.89032249e+01, + 1.28612900e+02, 2.46612911e+01, 2.83870959e+00, 1.04354839e+01, + 4.69677429e+01, 2.40645161e+01, 2.40483875e+01, 2.74032249e+01, + 2.37580643e+01, 1.15645161e+01, 2.07096767e+01, 4.60161285e+01, + 2.21774197e+01, 1.94677410e+01, 3.45000000e+01, 2.56935482e+01, + 2.03548393e+01, 2.05483875e+01, 3.15645161e+01, 2.92096767e+01, + 3.50000000e+00, 2.54838705e+00, 2.62903237e+00, 9.09677410e+00, + 1.13193550e+02, 8.44354858e+01, 4.82258081e+00, 2.46774197e+00, + 1.06935482e+01, 8.45161247e+00, 2.80645156e+00, 5.25806475e+00, + 1.25145164e+02, 1.21241936e+02, 6.08064508e+00, 4.27419376e+00, + 3.99677429e+01, 4.06774178e+01, 2.17096767e+01, 1.22419357e+01, + 1.86290321e+01, 3.68064499e+01, 2.00967751e+01, 2.02741928e+01, + 1.85483875e+01, 2.70967751e+01, 3.53225822e+01, 24., + 1.70806446e+01, 1.93870964e+01, 3.18548393e+01, 2.62741928e+01, + 2.80645156e+00, 3.56451607e+00, 3.53225803e+00, 6.96774197e+00, + 3.99193535e+01, 5.07741928e+01, 6.61290312e+00, 2.41935492e+00, + 3.75806451e+00, 6.90322590e+00, 4.33870983e+00, 3.87096763e+00, + 5.65806465e+01, 1.34774200e+02, 2.35806446e+01, 2.38709688e+00, + 9.96774197e+00, 1.90161285e+01, 1.18387098e+01, 2.79032254e+00, + 7.41935492e+00, 1.12306450e+02, 7.48709641e+01, 5.91935492e+00, + 9.43548393e+00, 1.98064518e+01, 3.08064518e+01, 1.29354839e+01, + 5.03225803e+00, 2.11612911e+01, 7.45483856e+01, 2.13225803e+01, + 1.83428574e+01, 1.63142853e+01, 1.00285711e+01, 1.40285711e+01, + 8.37142849e+00, 5.31428576e+00, 5.31428576e+00, 1.01714287e+01, + 4.41714287e+01, 3.33714294e+01, 4.84857140e+01, 8.18857117e+01, + 3.30571442e+01, 1.33142853e+01, 2.01714287e+01, 4.42000008e+01, + 4.41142845e+01, 3.06857147e+01, 9.85999985e+01, 1.15400002e+02, + 2.85142860e+01, 1.31428576e+01, 4.97142868e+01, 8.65999985e+01, + 1.58571424e+01, 1.26857147e+01, 94., 9.13142853e+01, + 5.88571405e+00, 7., 7.02857132e+01, 8.83714294e+01, + 2.13999996e+01, 1.88571434e+01, 1.20285711e+01, 1.71428566e+01, + 2.55142860e+01, 1.39428568e+01, 6.62857151e+00, 1.01714287e+01, + 4.67428589e+01, 5.24571419e+01, 3.69428558e+01, 6.13714294e+01, + 7.25714264e+01, 5.95428581e+01, 5.10571442e+01, 4.72571411e+01, + 4.38571434e+01, 4.68285713e+01, 5.21714287e+01, 4.92285728e+01, + 2.87428570e+01, 4.14000015e+01, 1.01485718e+02, 96., + 2.42571430e+01, 1.93428574e+01, 5.15714302e+01, 3.40571442e+01, + 6.34285736e+00, 1.78571434e+01, 1.07228569e+02, 1.00771431e+02, + 1.52571430e+01, 1.65142860e+01, 1.00285711e+01, 4., + 8.22857189e+00, 9.48571396e+00, 8.80000019e+00, 1.02285719e+01, + 3.23142853e+01, 3.67428589e+01, 1.77714291e+01, 7.91428566e+00, + 1.93428574e+01, 4.30571442e+01, 6.74285736e+01, 4.51714287e+01, + 4.13714294e+01, 2.72000008e+01, 1.80285721e+01, 9.34285736e+00, + 7.14285707e+00, 2.07999992e+01, 8.32857132e+01, 8.34571457e+01, + 30., 2.20571423e+01, 1.33714285e+01, 9.17142868e+00, + 8.60000038e+00, 1.75142860e+01, 5.58571434e+01, 4.78857155e+01, + 2.94285703e+00, 2.91428566e+00, 1.60000002e+00, 4.85714287e-01, + 3.14285725e-01, 8.85714293e-01, 1.37142861e+00, 1.57142854e+00, + 6.42857122e+00, 5.02857161e+00, 2.74285722e+00, 1.02857149e+00, + 1.02857149e+00, 1.85714281e+00, 5.34285736e+00, 5.94285727e+00, + 6.91428566e+00, 5.05714273e+00, 2.14285707e+00, 1.34285712e+00, + 1.39999998e+00, 1.68571424e+00, 4., 6.59999990e+00, + 5.88571405e+00, 3.42857146e+00, 1.77142859e+00, 1.48571432e+00, + 1.79999995e+00, 1.71428573e+00, 2.08571434e+00, 3.54285717e+00, + 1.16207794e+02, 1.24025974e+01, 1.98701298e+00, 1.34025974e+01, + 3.35714302e+01, 1.11428576e+01, 4.28571415e+00, 2.55324669e+01, + 1.17584419e+02, 1.37272730e+01, 2.15584421e+00, 3.08181820e+01, + 1.29506500e+02, 2.16883125e+01, 3.36363626e+00, 2.82207794e+01, + 2.59610386e+01, 1.18961039e+01, 2.62337661e+00, 6.10389614e+00, + 3.28701286e+01, 4.66233778e+00, 2.94805193e+00, 1.04675322e+01, + 6.05194807e+00, 2.06493497e+00, 5.58441579e-01, 2.72727281e-01, + 1.94805190e-01, 3.11688304e-01, 4.80519474e-01, 2.32467532e+00, + 1.25636360e+02, 3.09090900e+00, 3.41558433e+00, 3.81038971e+01, + 4.93246765e+01, 8.74026012e+00, 6.33766222e+00, 9.61948090e+01, + 1.04480522e+02, 8.05194759e+00, 3.02597404e+00, 1.07233765e+02, + 1.35298706e+02, 6.46753263e+00, 4.75324678e+00, 6.17532463e+01, + 3.62597389e+01, 1.27792206e+01, 3., 9.40259743e+00, + 2.02987022e+01, 3.15584421e+00, 4.38961029e+00, 2.06363640e+01, + 7.55844164e+00, 1.84415579e+00, 5.32467544e-01, 4.02597398e-01, + 2.72727281e-01, 2.85714298e-01, 6.62337661e-01, 4.09090900e+00, + 9.24545441e+01, 2.12987018e+00, 5.38961029e+00, 1.11662338e+02, + 6.71558456e+01, 4.05194807e+00, 7.84415579e+00, 1.31454544e+02, + 4.42597389e+01, 8.44155884e+00, 3.94805193e+00, 1.23155846e+02, + 1.04233765e+02, 2.97402596e+00, 4.83116865e+00, 4.74935074e+01, + 3.69090919e+01, 9.77922058e+00, 2.09090900e+00, 3.20779228e+00, + 3.18181825e+00, 1.79220784e+00, 5.42857122e+00, 3.24675331e+01, + 6.10389614e+00, 1.32467532e+00, 4.02597398e-01, 3.11688304e-01, + 1.55844152e-01, 1.55844152e-01, 6.75324678e-01, 4.58441544e+00, + 2.19480515e+01, 1.96103895e+00, 9.98701286e+00, 1.30142853e+02, + 3.87012978e+01, 2.22077918e+00, 7.83116865e+00, 7.88441544e+01, + 2.69870129e+01, 4.74025965e+00, 2.25974035e+00, 4.16493492e+01, + 1.91818180e+01, 2.28571439e+00, 8.72727299e+00, 4.02467537e+01, + 2.53506489e+01, 4.83116865e+00, 1.18181813e+00, 1.01298702e+00, + 1.01298702e+00, 1.48051953e+00, 5.66233778e+00, 2.70649357e+01, + 3.66233778e+00, 7.66233742e-01, 1.81818187e-01, 2.20779225e-01, + 2.20779225e-01, 2.46753246e-01, 6.75324678e-01, 3.44155836e+00, + 1.02045450e+01, 15., 1.61136360e+01, 1.29772730e+01, + 9.02272701e+00, 1.85000000e+01, 1.67045460e+01, 8.06818199e+00, + 1.71590900e+01, 4.10909081e+01, 3.82500000e+01, 2.31136360e+01, + 2.39090900e+01, 9.39545441e+01, 5.23863640e+01, 1.34772730e+01, + 1.18863640e+01, 1.22159088e+02, 7.85227280e+01, 1.49545450e+01, + 3.05454540e+01, 1.48545456e+02, 106., 6.56818199e+00, + 1.55454550e+01, 1.43522720e+02, 1.40204544e+02, 4.05000000e+01, + 2.66136360e+01, 1.33977280e+02, 1.00840912e+02, 7.22727251e+00, + 1.15681820e+01, 1.22954550e+01, 1.75681820e+01, 1.82500000e+01, + 1.27045450e+01, 9.77272701e+00, 8.90909100e+00, 9.15909100e+00, + 2.53863640e+01, 3.02500000e+01, 4.06363640e+01, 3.85227280e+01, + 2.46590900e+01, 2.41136360e+01, 1.75000000e+01, 2.03863640e+01, + 2.29090900e+01, 4.40227280e+01, 4.52045441e+01, 3.83409081e+01, + 3.57954559e+01, 7.09772720e+01, 37., 1.42954550e+01, + 1.19090910e+01, 3.70454559e+01, 4.10227280e+01, 2.59090900e+01, + 3.77045441e+01, 1.26613640e+02, 7.46590881e+01, 9.20454502e+00, + 1.27272730e+01, 1.37727270e+01, 1.87954540e+01, 1.85454540e+01, + 1.21136360e+01, 7.34090900e+00, 7.43181801e+00, 8.77272701e+00, + 2.10227280e+01, 2.57045460e+01, 3.62727280e+01, 3.95000000e+01, + 2.74772720e+01, 1.73181820e+01, 1.60227280e+01, 1.84545460e+01, + 1.94318180e+01, 2.98409100e+01, 4.03181801e+01, 4.37272720e+01, + 3.37954559e+01, 2.15681820e+01, 1.54318180e+01, 1.45454550e+01, + 1.93863640e+01, 2.52272720e+01, 3.24772720e+01, 3.20681801e+01, + 3.17954540e+01, 2.87954540e+01, 1.56818180e+01, 1.02272730e+01, + 5.79545450e+00, 7.84090900e+00, 8.95454502e+00, 9.63636398e+00, + 7.70454550e+00, 4.52272749e+00, 4.54545450e+00, 5.15909100e+00, + 1.40681820e+01, 2.11818180e+01, 2.22727280e+01, 2.38863640e+01, + 1.91363640e+01, 1.14772730e+01, 1.08409090e+01, 1.14545450e+01, + 1.32954550e+01, 1.78181820e+01, 2.57954540e+01, 3.25227280e+01, + 2.27272720e+01, 1.05681820e+01, 8.56818199e+00, 1.09772730e+01, + 1.24545450e+01, 1.38181820e+01, 1.73636360e+01, 2.05454540e+01, + 1.66363640e+01, 9.81818199e+00, 8.29545498e+00, 7.34090900e+00, + 9.05000019e+00, 5.63333321e+00, 1.76666665e+00, 1.93333328e+00, + 4.48333311e+00, 8.01666641e+00, 6.44999981e+00, 5.94999981e+00, + 1.79500008e+01, 9.93333340e+00, 4.34999990e+00, 6.19999981e+00, + 9.58333302e+00, 1.47666664e+01, 1.11333332e+01, 1.08166666e+01, + 1.75833340e+01, 1.04833336e+01, 5.18333340e+00, 4.44999981e+00, + 1.06000004e+01, 1.56166668e+01, 1.27833338e+01, 1.37500000e+01, + 1.33833332e+01, 8.75000000e+00, 5.53333330e+00, 3.70000005e+00, + 7.01666689e+00, 1.26166668e+01, 1.45000000e+01, 1.20166664e+01, + 2.86333332e+01, 1.34833336e+01, 7.83333349e+00, 8.61666679e+00, + 1.05000000e+01, 1.92833328e+01, 1.87166672e+01, 1.87999992e+01, + 5.16166649e+01, 2.33333340e+01, 1.22166662e+01, 1.46833334e+01, + 2.12666664e+01, 3.28833351e+01, 3.46500015e+01, 3.79000015e+01, + 4.47333336e+01, 2.39166660e+01, 1.26333332e+01, 1.04166670e+01, + 2.23166676e+01, 3.29333344e+01, 3.43499985e+01, 3.90999985e+01, + 3.66333351e+01, 2.10499992e+01, 1.44499998e+01, 1.18833332e+01, + 1.76166668e+01, 2.51833324e+01, 3.68166656e+01, 4.13499985e+01, + 3.15166664e+01, 1.40666666e+01, 6.33333349e+00, 5.50000000e+00, + 9.63333321e+00, 1.88333340e+01, 2.17666664e+01, 2.62666664e+01, + 5.35999985e+01, 2.27000008e+01, 1.16666670e+01, 1.18833332e+01, + 1.96333332e+01, 3.46500015e+01, 5.32333336e+01, 6.17166672e+01, + 4.95166664e+01, 1.94333324e+01, 2.05833340e+01, 2.11000004e+01, + 2.17500000e+01, 3.62999992e+01, 8.30833359e+01, 9.22333298e+01, + 3.95333328e+01, 1.60333328e+01, 3.15499992e+01, 3.16166668e+01, + 1.58000002e+01, 2.87500000e+01, 1.01116669e+02, 1.12166664e+02, + 3.19833336e+01, 1.24499998e+01, 7.05000019e+00, 6.23333311e+00, + 7.03333330e+00, 1.42833338e+01, 2.85833340e+01, 3.87999992e+01, + 5.48166656e+01, 2.44166660e+01, 2.81333332e+01, 2.02166672e+01, + 1.09499998e+01, 1.91499996e+01, 9.29166641e+01, 1.16416664e+02, + 2.86499996e+01, 1.69500008e+01, 6.43499985e+01, 4.00833321e+01, + 7.31666660e+00, 1.48833332e+01, 1.38616669e+02, 1.37750000e+02, + 1.41833334e+01, 1.25000000e+01, 8.43666687e+01, 5.83666649e+01, + 5.56666660e+00, 1.36833334e+01, 1.32199997e+02, 1.27750000e+02, + 5.39166689e+00, 1.71833324e+01, 3.06666660e+00, 4.97499990e+00, + 2.40166664e+01, 3.51166649e+01, 1.18916664e+01, 2.86666656e+00, + 4.08333321e+01, 1.42508331e+02, 2.04750004e+01, 4.67500019e+00, + 2.16000004e+01, 6.98833313e+01, 1.59333334e+01, 3.84999990e+00, + 2.44833336e+01, 1.45300003e+02, 4.87083321e+01, 2.83333325e+00, + 1.98166676e+01, 1.42108337e+02, 5.46333351e+01, 3.97499990e+00, + 9.99166679e+00, 5.43250008e+01, 2.88666668e+01, 4.35833311e+00, + 5.42500019e+00, 1.17833336e+02, 8.46999969e+01, 4.19166660e+00, + 2.59166670e+00, 2.49166656e+00, 3.40833330e+00, 5.25833321e+00, + 2.21583328e+01, 4.59666672e+01, 1.62000008e+01, 4.37500000e+00, + 4.62500000e+00, 3.86833344e+01, 1.01333332e+01, 6.22499990e+00, + 2.68916664e+01, 6.10833321e+01, 2.81000004e+01, 5.73333311e+00, + 8.44999981e+00, 1.45758331e+02, 9.02666702e+01, 4.88333321e+00, + 1.38416662e+01, 6.52833328e+01, 3.52916679e+01, 6.23333311e+00, + 3.90833330e+00, 1.41108337e+02, 1.38091660e+02, 5.70833349e+00, + 4.73333311e+00, 9.76416702e+01, 9.23333359e+01, 4.80833340e+00, + 3.04999995e+00, 2.80833340e+00, 3.78333330e+00, 4.44166660e+00, + 1.18583336e+01, 3.49916649e+01, 1.60166664e+01, 4.54166651e+00, + 3.21666670e+00, 2.45000005e+00, 2.66666675e+00, 4.34166670e+00, + 1.76749992e+01, 5.93250008e+01, 2.96000004e+01, 5.71666670e+00, + 2.84999990e+00, 7.33333349e+00, 6.23333311e+00, 3.67499995e+00, + 1.50833330e+01, 5.73166656e+01, 3.72083321e+01, 7.88333321e+00, + 2.34166670e+00, 3.41666679e+01, 4.34416656e+01, 3.54166675e+00, + 8.05833340e+00, 3.18750000e+01, 3.18250008e+01, 9.75000000e+00, + 1.59166670e+00, 1.70833337e+00, 1.95000005e+00, 1.77499998e+00, + 3.24166656e+00, 1.02833338e+01, 6.92500019e+00, 1.99166667e+00, + 1.61666667e+00, 1.34166670e+00, 1.44166672e+00, 1.63333333e+00, + 4.43333340e+00, 2.08583336e+01, 1.48416662e+01, 2.82500005e+00, + 1.42499995e+00, 9.16666687e-01, 9.16666687e-01, 1.21666670e+00, + 3.87500000e+00, 2.41000004e+01, 2.21749992e+01, 3.65833330e+00, + 9.58333313e-01, 3.83333325e-01, 4.33333337e-01, 7.33333349e-01, + 2.72499990e+00, 1.90833340e+01, 2.23333340e+01, 4.47499990e+00, + 1.61363637e+00, 2.16590900e+01, 9.52272720e+01, 2.16363640e+01, + 1.97727275e+00, 8.18181813e-01, 8.63636374e-01, 4.09090906e-01, + 3.25000000e+00, 4.83181801e+01, 1.01772728e+02, 1.13863640e+01, + 1.52272725e+00, 1.47727275e+00, 1.47727275e+00, 8.18181813e-01, + 6.86363649e+00, 5.67954559e+01, 7.09772720e+01, 5.93181801e+00, + 2.15909100e+00, 2.84090900e+00, 2.22727275e+00, 1.68181813e+00, + 6.40909100e+00, 3.22954559e+01, 2.54318180e+01, 4.50000000e+00, + 4.15909100e+00, 3.86363626e+00, 2.18181825e+00, 2.36363626e+00, + 2.36363626e+00, 3.73863640e+01, 1.19045456e+02, 1.97045460e+01, + 2.02272725e+00, 6.31818199e+00, 1.43409090e+01, 3.95454550e+00, + 4.27272749e+00, 9.96363602e+01, 1.18386360e+02, 8.40909100e+00, + 2.61363626e+00, 1.07954550e+01, 1.42045450e+01, 2.72727275e+00, + 6.75000000e+00, 1.16863640e+02, 1.05295456e+02, 4.63636351e+00, + 2.79545450e+00, 1.13181820e+01, 7.68181801e+00, 1.20454550e+00, + 1.16363640e+01, 1.06590912e+02, 6.50227280e+01, 3.27272725e+00, + 2.72727275e+00, 5.15909100e+00, 2.25000000e+00, 9.77272749e-01, + 2.79545450e+00, 1.67727280e+01, 6.93636398e+01, 5.52272749e+00, + 2.72727281e-01, 4.97727251e+00, 6.90454559e+01, 2.26363640e+01, + 3.63636374e+00, 7.10909119e+01, 7.71590881e+01, 9.54545438e-01, + 7.95454562e-01, 2.53636360e+01, 7.71590881e+01, 1.11363640e+01, + 7.06818199e+00, 1.19295456e+02, 6.86363602e+01, 1.45454550e+00, + 2.18181825e+00, 4.18863640e+01, 3.57954559e+01, 3.50000000e+00, + 1.69318180e+01, 1.19772728e+02, 3.21363640e+01, 1.70454550e+00, + 3.75000000e+00, 2.42500000e+01, 7.04545450e+00, 1.36363637e+00, + 3.06818175e+00, 2.36363626e+00, 1.18863640e+01, 3.81818175e+00, + 7.04545438e-01, 4.97727251e+00, 7.67727280e+01, 4.30681801e+01, + 2.31818175e+00, 8.86363602e+00, 1.06818180e+01, 7.95454562e-01, + 5.00000000e-01, 3.05227280e+01, 1.06840912e+02, 2.46590900e+01, + 5.22727251e+00, 3.51818199e+01, 6.59090900e+00, 5.90909064e-01, + 2.54545450e+00, 8.21590881e+01, 7.19090881e+01, 5.47727251e+00, + 2.55227280e+01, 9.26363602e+01, 5.13636351e+00, 4.77272719e-01, + 7.56818199e+00, 5.95909081e+01, 1.43863640e+01, 1.29545450e+00, + 8.86440659e+00, 8.28813553e+00, 1.41355927e+02, 1.25440681e+02, + 3.81355929e+00, 4.52542353e+00, 1.12254234e+02, 1.06610168e+02, + 9.54237270e+00, 5.98305082e+00, 1.16355934e+02, 1.44508469e+02, + 1.09661016e+01, 9.01694870e+00, 5.07457619e+01, 7.71016922e+01, + 2.37457619e+01, 8.62711906e+00, 2.76949158e+01, 8.73559341e+01, + 9.64406776e+00, 9.13559341e+00, 2.80338974e+01, 5.48135605e+01, + 5.26271172e+01, 6.93220329e+00, 2.59322023e+00, 4.76271200e+00, + 2.86440682e+00, 3.50847459e+00, 1.48983049e+01, 7.81016922e+01, + 2.00847454e+01, 9.81355953e+00, 8.37796631e+01, 5.13050842e+01, + 6.81355953e+00, 1.17796612e+01, 3.81525421e+01, 4.65762711e+01, + 1.86271191e+01, 1.05254240e+01, 2.35762711e+01, 2.79491520e+01, + 1.24067793e+01, 1.86101704e+01, 4.88644066e+01, 5.10847473e+01, + 3.72711868e+01, 9.47457600e+00, 4.50847435e+00, 5.25423717e+00, + 7.11864424e+00, 1.02711868e+01, 4.97966118e+01, 9.83050842e+01, + 5.08305092e+01, 6.01694918e+00, 2.30508471e+00, 1.71186435e+00, + 2., 3.74576283e+00, 2.92881355e+01, 1.05423729e+02, + 9.83050823e+00, 5.86440659e+00, 3.77966094e+00, 3.37288141e+00, + 4.49152565e+00, 1.38983049e+01, 5.48474579e+01, 3.22881355e+01, + 1.62033901e+01, 6., 3.13559318e+00, 2.72881365e+00, + 4.25423717e+00, 1.04576273e+01, 7.22711868e+01, 7.91355896e+01, + 2.57966099e+01, 3.44067788e+00, 1.49152541e+00, 2.23728824e+00, + 3.28813553e+00, 6.55932188e+00, 6.08474579e+01, 1.08796608e+02, + 2.50847454e+01, 5.38983059e+00, 4.55932188e+00, 4.49152565e+00, + 4.22033882e+00, 6.61016941e+00, 2.46949158e+01, 6.75932236e+01, + 1.37288141e+00, 6.44067824e-01, 1.69491529e-01, 1.69491529e-01, + 2.88135588e-01, 3.16949153e+00, 2.38644066e+01, 1.12542372e+01, + 4.18644047e+00, 6.27118647e-01, 1.35593221e-01, 1.52542368e-01, + 1.86440676e-01, 2.18644071e+00, 2.30169487e+01, 24., + 5.81355953e+00, 8.81355941e-01, 6.44067824e-01, 9.49152529e-01, + 1.03389835e+00, 2.11864400e+00, 1.28983049e+01, 2.15762711e+01, + 4.66101694e+00, 2.05084753e+00, 1.96610165e+00, 2.08474565e+00, + 1.84745765e+00, 2.33898306e+00, 4.10169506e+00, 7.59322023e+00, + 3.11711717e+00, 3.44144154e+00, 3.12612605e+00, 5.05405426e+00, + 1.40630627e+01, 1.48018017e+01, 4.76576567e+00, 2.82882881e+00, + 4.12612629e+00, 3.84684682e+00, 6.04504490e+00, 2.16756763e+01, + 9.97387390e+01, 1.00099098e+02, 1.83963966e+01, 5.92792797e+00, + 9.37837791e+00, 1.06216221e+01, 8.77477455e+00, 2.20180187e+01, + 1.04639641e+02, 1.15792793e+02, 2.77027035e+01, 1.08558559e+01, + 1.97297306e+01, 3.67207222e+01, 2.22702694e+01, 1.52432432e+01, + 7.73963928e+01, 1.03189186e+02, 3.73333321e+01, 1.11981983e+01, + 4.75675678e+00, 5.57657671e+00, 5.14414406e+00, 5.25225210e+00, + 1.02972975e+01, 1.26036034e+01, 8.09909916e+00, 5.17117119e+00, + 1.01081085e+01, 7.41441441e+00, 9.04504490e+00, 1.71711712e+01, + 7.60090103e+01, 1.09846848e+02, 4.35405388e+01, 1.32702703e+01, + 6.12612629e+00, 5.01801825e+00, 4.40540552e+00, 1.22252254e+01, + 1.06468468e+02, 1.37945953e+02, 6.44324341e+01, 1.55585585e+01, + 1.02882881e+01, 1.85045052e+01, 1.13423424e+01, 1.07747746e+01, + 6.08378372e+01, 1.31900894e+02, 6.78468475e+01, 1.53693695e+01, + 6.33333349e+00, 6.03603601e+00, 5.68468475e+00, 4.58558559e+00, + 6.50450468e+00, 8.82882881e+00, 8.91891861e+00, 6.67567587e+00, + 1.63063068e+01, 1.32432432e+01, 1.55135136e+01, 1.75405407e+01, + 3.37207222e+01, 4.85855865e+01, 3.48378372e+01, 2.14504509e+01, + 1.01891890e+01, 5.69369364e+00, 6.42342329e+00, 1.34684687e+01, + 5.41981964e+01, 1.27693695e+02, 7.77117081e+01, 1.84504509e+01, + 4.83783770e+00, 3.03603601e+00, 2.49549556e+00, 4.39639616e+00, + 2.76576576e+01, 1.31027023e+02, 1.19207207e+02, 1.68018017e+01, + 3.36036038e+00, 2.90090084e+00, 2.75675678e+00, 2.48648643e+00, + 3.18918920e+00, 4.81981993e+00, 4.27927923e+00, 3.27027035e+00, + 8.67567539e+00, 7.99099112e+00, 9.27027035e+00, 9.26126099e+00, + 1.11891890e+01, 1.43963966e+01, 1.27027025e+01, 1.08018017e+01, + 9.89189148e+00, 5.83783770e+00, 7.81981993e+00, 1.01351347e+01, + 1.69189186e+01, 2.57567558e+01, 2.05135136e+01, 1.27297297e+01, + 6.26126146e+00, 3.06306314e+00, 4.05405426e+00, 5.47747755e+00, + 1.31441441e+01, 3.67207222e+01, 3.49729729e+01, 1.10720720e+01, + 2.37916660e+01, 2.84583340e+01, 2.29166675e+00, 8.91666698e+00, + 4.67500000e+01, 4.82083321e+01, 9.54166698e+00, 7.04166651e+00, + 9.26250000e+01, 6.10416679e+01, 3.79166675e+00, 1.43333330e+01, + 5.65000000e+01, 5.66666679e+01, 1.56666670e+01, 3.34166679e+01, + 5.07500000e+01, 6.22916679e+01, 1.62916660e+01, 1.12083330e+01, + 7.35833359e+01, 1.05333336e+02, 4.89166679e+01, 2.07500000e+01, + 3.97500000e+01, 6.72083359e+01, 1.40833330e+01, 2.45833325e+00, + 2.44583340e+01, 5.27500000e+01, 3.95833321e+01, 1.08750000e+01, + 3.63333321e+01, 1.04166670e+01, 5.25000000e+00, 2.01250000e+01, + 7.07500000e+01, 3.28750000e+01, 9.70833302e+00, 2.18333340e+01, + 1.10333336e+02, 2.97916660e+01, 8.29166698e+00, 3.39166679e+01, + 6.27500000e+01, 3.38333321e+01, 2.34166660e+01, 9.44166641e+01, + 2.92083340e+01, 2.24166660e+01, 2.84166660e+01, 3.27500000e+01, + 3.65000000e+01, 6.23750000e+01, 6.30833321e+01, 4.42916679e+01, + 2.74166660e+01, 4.57500000e+01, 1.47083330e+01, 1.27916670e+01, + 5.67916679e+01, 8.75833359e+01, 3.96250000e+01, 1.15833330e+01, + 4.92916679e+01, 1.70416660e+01, 5.16666651e+00, 1.23333330e+01, + 6.72500000e+01, 3.37916679e+01, 7.83333349e+00, 1.37916670e+01, + 1.09833336e+02, 6.64583359e+01, 1.60833340e+01, 2.93333340e+01, + 7.64166641e+01, 3.05000000e+01, 6.25000000e+00, 2.96666660e+01, + 2.42500000e+01, 4.26666679e+01, 4.65833321e+01, 4.18333321e+01, + 4.17500000e+01, 2.34583340e+01, 1.88750000e+01, 1.87500000e+01, + 2.52500000e+01, 2.22916660e+01, 1.51666670e+01, 2.14166660e+01, + 5.25000000e+01, 3.29166679e+01, 1.51666670e+01, 1.25833330e+01, + 1.92916660e+01, 1.15416670e+01, 4.20833349e+00, 5.37500000e+00, + 2.73333340e+01, 3.04166660e+01, 7.91666651e+00, 9.45833302e+00, + 6.78333359e+01, 69., 3.04166675e+00, 5.37500000e+00, + 5.72916679e+01, 67., 5.95833349e+00, 4.75000000e+00, + 3.22500000e+01, 5.19583321e+01, 1.24166670e+01, 6.16666651e+00, + 2.89166660e+01, 3.76666679e+01, 9.95833302e+00, 9.83333302e+00, + 2.15416660e+01, 2.29166660e+01, 9.83333302e+00, 6.25000000e+00, + 2.49166660e+01, 2.52916660e+01, 1.33333330e+01, 1.37083330e+01, + 1.91428566e+00, 1.54285717e+00, 2.51428580e+00, 2.94285703e+00, + 1.97142851e+00, 1.42857146e+00, 2.14285707e+00, 2.91428566e+00, + 7.51428556e+00, 5.82857132e+00, 1.44285717e+01, 2.78285713e+01, + 1.57714281e+01, 6.57142878e+00, 7.57142878e+00, 1.28571424e+01, + 5.65714264e+00, 7.25714302e+00, 1.95142860e+01, 9.54000015e+01, + 8.44571457e+01, 7.22857141e+00, 4.71428585e+00, 1.04571428e+01, + 3.25714278e+00, 1.88571429e+00, 7.59999990e+00, 1.12657143e+02, + 1.20800003e+02, 9.62857151e+00, 5., 5.45714283e+00, + 8.00000012e-01, 1.02857149e+00, 3.94285703e+00, 8., + 5.19999981e+00, 2.51428580e+00, 3.68571424e+00, 2.14285707e+00, + 3.65714288e+00, 5.65714264e+00, 2.02571430e+01, 6.81428604e+01, + 46., 1.15142860e+01, 8.57142830e+00, 6.22857141e+00, + 1.09142857e+01, 1.65714283e+01, 2.75714283e+01, 1.12657143e+02, + 1.18142860e+02, 2.91428566e+01, 2.79999995e+00, 3.34285712e+00, + 1.06285715e+01, 7.31428576e+00, 8.02857113e+00, 5.56571426e+01, + 1.31914291e+02, 6.11428566e+01, 6.62857151e+00, 5.77142859e+00, + 1.42857149e-01, 2.85714298e-01, 2.48571420e+00, 1.24571428e+01, + 1.53714285e+01, 4.77142859e+00, 2.22857141e+00, 4.85714287e-01, + 1.37142861e+00, 2.42857146e+00, 1.20285711e+01, 7.32857132e+01, + 9.08857117e+01, 2.51142864e+01, 5.28571415e+00, 1.45714283e+00, + 1.85428562e+01, 2.91714287e+01, 2.50857143e+01, 7.31714249e+01, + 1.14714287e+02, 5.55428581e+01, 8.91428566e+00, 7.17142868e+00, + 2.25142860e+01, 3.64857140e+01, 1.33428574e+01, 1.48000002e+01, + 1.09685715e+02, 1.23542854e+02, 1.76000004e+01, 1.04285717e+01, + 5.71428575e-02, 2.85714287e-02, 7.14285731e-01, 8., + 1.83999996e+01, 7.97142839e+00, 1.97142851e+00, 2.57142872e-01, + 8.85714293e-01, 2.17142868e+00, 4.68571424e+00, 3.85428581e+01, + 9.27714310e+01, 4.77142868e+01, 7.91428566e+00, 1.62857139e+00, + 11., 2.81142864e+01, 2.08857136e+01, 4.40857124e+01, + 8.09142838e+01, 5.60857124e+01, 2.20857143e+01, 1.53428574e+01, + 2.02000008e+01, 5.61714287e+01, 2.31142864e+01, 2.70571423e+01, + 5.26571426e+01, 1.00199997e+02, 2.29714279e+01, 1.89142857e+01, + 1.85454547e+00, 1.34545457e+00, 3.41818190e+00, 5.07272720e+00, + 4.70909071e+00, 9.29090881e+00, 9.69090939e+00, 9.87272739e+00, + 1.39999998e+00, 2.83636355e+00, 5.21818161e+00, 4.87272739e+00, + 1.11636362e+01, 2.77090912e+01, 6.69090891e+00, 2.29090905e+00, + 2.85454535e+00, 5.25454569e+00, 4.36363649e+00, 3.07272720e+00, + 2.16545448e+01, 3.83272743e+01, 3.76363635e+00, 1.32727277e+00, + 4.47272730e+00, 4.54545450e+00, 1.87272727e+00, 2.98181820e+00, + 2.57272720e+01, 3.45454559e+01, 1.96363640e+00, 6.00000024e-01, + 5.85454559e+00, 4.85454559e+00, 1.21818180e+01, 1.61454544e+01, + 2.38181820e+01, 3.93454552e+01, 4.33272743e+01, 2.19818172e+01, + 6.56363630e+00, 9.58181858e+00, 1.47454548e+01, 1.46181822e+01, + 4.65090904e+01, 7.45999985e+01, 4.04545441e+01, 1.32181816e+01, + 1.09090910e+01, 1.82545452e+01, 1.36545458e+01, 1.45818186e+01, + 9.48727264e+01, 9.98909073e+01, 1.69636364e+01, 7.01818180e+00, + 2.10909100e+01, 1.88363628e+01, 6.16363621e+00, 1.30181818e+01, + 1.03690910e+02, 8.40909119e+01, 6.14545441e+00, 7.27272749e+00, + 8.56363678e+00, 9., 1.01636362e+01, 1.55454550e+01, + 3.30727272e+01, 5.83818169e+01, 5.36909103e+01, 2.26181812e+01, + 9.96363640e+00, 1.10727272e+01, 1.01818180e+01, 1.64545460e+01, + 5.62909088e+01, 8.23636398e+01, 6.06181831e+01, 1.89090900e+01, + 1.55818186e+01, 1.10363636e+01, 6.19999981e+00, 1.69454536e+01, + 1.15400002e+02, 1.07072731e+02, 3.31818199e+01, 9.47272682e+00, + 2.82000008e+01, 1.21999998e+01, 3.07272720e+00, 1.93454552e+01, + 1.29600006e+02, 8.09818192e+01, 1.30545454e+01, 1.53999996e+01, + 10., 1.29454546e+01, 1.02181816e+01, 1.97272720e+01, + 3.16909084e+01, 3.10363636e+01, 2.49636364e+01, 1.48000002e+01, + 1.25818186e+01, 1.51818180e+01, 1.02363634e+01, 2.56181812e+01, + 5.40181808e+01, 5.22545471e+01, 3.43090897e+01, 1.57272730e+01, + 1.54545450e+01, 6.67272711e+00, 4.45454550e+00, 3.81272736e+01, + 1.16654549e+02, 7.07090912e+01, 2.98181820e+01, 1.18545456e+01, + 2.13999996e+01, 2.69090915e+00, 1.27272725e+00, 3.68727264e+01, + 1.23945457e+02, 5.13636360e+01, 2.62545452e+01, 2.20727272e+01, + 3.15576916e+01, 2.48269234e+01, 2.60384617e+01, 2.62500000e+01, + 2.86538467e+01, 5.09423065e+01, 6.68653870e+01, 4.46153831e+01, + 1.84230766e+01, 5.26153831e+01, 1.78653851e+01, 8.23076916e+00, + 5.80384598e+01, 1.24096153e+02, 7.34807663e+01, 1.07884617e+01, + 3.68269234e+01, 5.43653831e+01, 6.94230747e+00, 3.80769229e+00, + 4.85769234e+01, 8.64423065e+01, 1.42884617e+01, 4.40384626e+00, + 9.69230747e+00, 1.02115383e+01, 2.23076916e+00, 1.98076928e+00, + 3.63461542e+00, 4.94230747e+00, 4.07692289e+00, 2.73076916e+00, + 2.73846149e+01, 2.69807701e+01, 2.45961533e+01, 2.53269234e+01, + 3.05576916e+01, 1.68461533e+01, 1.76346149e+01, 2.29423084e+01, + 2.33076916e+01, 4.30192299e+01, 2.07115383e+01, 1.83846149e+01, + 6.47307663e+01, 7.95192337e+01, 1.91153851e+01, 1.35192308e+01, + 4.89038467e+01, 5.66538467e+01, 6.05769253e+00, 5.53846169e+00, + 1.06365387e+02, 1.22923080e+02, 8.11538506e+00, 5.25000000e+00, + 2.78653851e+01, 31., 2.96153855e+00, 1.03846157e+00, + 1.63461533e+01, 1.73653851e+01, 1.67307687e+00, 2.34615374e+00, + 3.14615383e+01, 4.95576935e+01, 1.46923075e+01, 1.14038458e+01, + 3.55576935e+01, 3.64615402e+01, 1.02115383e+01, 8.19230747e+00, + 2.56923084e+01, 3.81346169e+01, 2.37884617e+01, 1.26923075e+01, + 2.44807701e+01, 2.76346149e+01, 1.65576916e+01, 1.99615383e+01, + 4.29038467e+01, 2.59807701e+01, 7.30769253e+00, 2.66346149e+01, + 1.19519234e+02, 1.00192307e+02, 1.14230766e+01, 1.85000000e+01, + 2.85576916e+01, 1.93461533e+01, 1.57692313e+00, 6.03846169e+00, + 5.52884598e+01, 2.89230766e+01, 1.38461542e+00, 3.63461542e+00, + 3.00192299e+01, 7.56538467e+01, 2.28461533e+01, 4.65384626e+00, + 1.81538467e+01, 5.34230766e+01, 2.53269234e+01, 6.61538458e+00, + 1.96923084e+01, 2.84423084e+01, 4.26923065e+01, 3.43461533e+01, + 1.29615383e+01, 2.56730766e+01, 3.65769234e+01, 2.97115383e+01, + 2.71923084e+01, 1.15961542e+01, 2.02500000e+01, 9.57307663e+01, + 9.92692337e+01, 2.85384617e+01, 1.47692308e+01, 3.51923065e+01, + 1.57115383e+01, 6.15384626e+00, 1.36538458e+00, 2.28846149e+01, + 4.57115402e+01, 7.75000000e+00, 3.26923084e+00, 11., + 7.39240503e+00, 1.03544302e+01, 1.15405060e+02, 1.27607597e+02, + 5.73417711e+00, 5.20253181e+00, 1.00506332e+02, 1.12721519e+02, + 1.21139240e+01, 4.59493685e+00, 1.36556961e+02, 1.50936707e+02, + 5.83544302e+00, 3.16455698e+00, 6.06962013e+01, 1.15708862e+02, + 20., 6.05063295e+00, 6.37594948e+01, 1.38101273e+02, + 1.25189877e+01, 4.20253181e+00, 2.76075954e+01, 6.86075974e+01, + 1.07594938e+01, 6.50632906e+00, 1.26582279e+01, 1.34177217e+01, + 2.93670893e+00, 2.97468352e+00, 1.64430370e+01, 3.28987350e+01, + 9.39240551e+00, 8.29113960e+00, 1.31873413e+02, 1.22569618e+02, + 1.19113922e+01, 5.54430389e+00, 4.99493675e+01, 6.64556961e+01, + 1.94556961e+01, 6.74683523e+00, 5.55949364e+01, 8.09113922e+01, + 2.86075950e+00, 3.92405057e+00, 4.69113922e+01, 1.06848099e+02, + 1.84430370e+01, 8.64556980e+00, 9.26582241e+00, 9.13924026e+00, + 4.82278490e+00, 5.73417711e+00, 3.33924065e+01, 6.40379715e+01, + 1.06835442e+01, 5.65822792e+00, 4.15189886e+00, 3.32911396e+00, + 3.59493661e+00, 4.89873409e+00, 1.55696201e+01, 2.33670883e+01, + 9.15189838e+00, 2.94936705e+00, 5.77215195e+00, 1.28101263e+01, + 8.10126591e+00, 5.24050617e+00, 4.15949364e+01, 5.74810143e+01, + 1.31772156e+01, 6.12658215e+00, 4.68354416e+00, 5.36708879e+00, + 4.65822792e+00, 5.45569611e+00, 2.91392403e+01, 4.98860741e+01, + 1.24303799e+01, 8.11392403e+00, 5.88607597e+00, 4.46835423e+00, + 5.30379725e+00, 7.74683523e+00, 1.70379753e+01, 2.12784805e+01, + 8.25316429e+00, 4.87341785e+00, 4.25316477e+00, 3.54430389e+00, + 3.73417711e+00, 5.25316477e+00, 8.10126591e+00, 1.28227844e+01, + 4.01265812e+00, 2.60759497e+00, 2.31645560e+00, 2.41772151e+00, + 1.86075950e+00, 3.35443044e+00, 1.16329117e+01, 1.25443039e+01, + 4.96202517e+00, 3.58227849e+00, 2.73417711e+00, 2.64556956e+00, + 2.92405057e+00, 4.58227825e+00, 9.18987370e+00, 9.48101234e+00, + 5.26582289e+00, 3.60759497e+00, 3.35443044e+00, 2.83544302e+00, + 3.35443044e+00, 4.41772175e+00, 7.51898718e+00, 1.03291140e+01, + 3.16455698e+00, 1.64556956e+00, 1.67088604e+00, 1.72151899e+00, + 2.17721510e+00, 2.45569611e+00, 3.93670893e+00, 7.56962013e+00, + 2.25714278e+00, 4.91428566e+00, 8.65142822e+01, 8.61999969e+01, + 1.21714287e+01, 1.17428570e+01, 1.31942856e+02, 1.03428574e+02, + 6.40000010e+00, 4.28571415e+00, 1.04085716e+02, 1.39571426e+02, + 6.25714302e+01, 4.43714294e+01, 1.12599998e+02, 7.86285706e+01, + 9.60000038e+00, 6.14285707e+00, 3.34571419e+01, 7.82285690e+01, + 6.44285736e+01, 3.19428577e+01, 2.96571426e+01, 2.03999996e+01, + 6.28571451e-01, 7.14285731e-01, 9.42857146e-01, 3.88571429e+00, + 5.57142878e+00, 2.28571439e+00, 1.34285712e+00, 1.08571434e+00, + 4.34285736e+00, 6., 1.44514282e+02, 1.26342857e+02, + 7.62857151e+00, 5.59999990e+00, 9.86857147e+01, 8.63714294e+01, + 1.04285717e+01, 5.77142859e+00, 1.04885712e+02, 1.17657143e+02, + 2.45428562e+01, 1.16285715e+01, 6.47142868e+01, 7.56571426e+01, + 6.77142859e+00, 4.82857132e+00, 1.93142853e+01, 3.40571442e+01, + 2.53142853e+01, 1.48285713e+01, 2.01142864e+01, 2.22285709e+01, + 4.57142860e-01, 6.85714304e-01, 1.20000005e+00, 1.57142854e+00, + 2.68571424e+00, 1.57142854e+00, 2.14285707e+00, 1.37142861e+00, + 5.88571405e+00, 1.02285719e+01, 3.24285698e+01, 4.04285698e+01, + 1.76571426e+01, 1.08857145e+01, 4.03142853e+01, 3.93714294e+01, + 7.94285727e+00, 1.12285719e+01, 1.69714279e+01, 2.44571438e+01, + 2.36000004e+01, 1.51428576e+01, 1.84285717e+01, 2.16285706e+01, + 5.19999981e+00, 6.54285717e+00, 9.34285736e+00, 1.29142857e+01, + 1.67999992e+01, 1.39142857e+01, 9.97142887e+00, 6.80000019e+00, + 6.00000024e-01, 6.85714304e-01, 1.17142856e+00, 1.62857139e+00, + 1.88571429e+00, 1.54285717e+00, 1.25714290e+00, 7.42857158e-01, + 4.85714293e+00, 8.22857189e+00, 8.91428566e+00, 1.18857145e+01, + 1.30857143e+01, 1.29428568e+01, 7.68571424e+00, 5.40000010e+00, + 6.85714293e+00, 8.28571415e+00, 8.45714283e+00, 12., + 1.67999992e+01, 1.50285711e+01, 7.45714283e+00, 7.02857161e+00, + 6.62857151e+00, 6.22857141e+00, 5.05714273e+00, 6.97142839e+00, + 1.09142857e+01, 9.05714321e+00, 5.19999981e+00, 5.02857161e+00, + 6.00000024e-01, 6.28571451e-01, 8.00000012e-01, 1.14285719e+00, + 2.08571434e+00, 1.05714285e+00, 4.85714287e-01, 4.28571433e-01, + 2.71754379e+01, 1.88771935e+01, 5.66666651e+00, 5.59649134e+00, + 7.43508759e+01, 2.33333340e+01, 2.33333325e+00, 6.89473677e+00, + 4.75964928e+01, 5.40526314e+01, 1.33859653e+01, 2.80701756e+00, + 1.66666663e+00, 5.61403513e-01, 1.77192986e+00, 1.25263157e+01, + 6.03859634e+01, 7.99122772e+01, 3.07719307e+01, 1.04385967e+01, + 7.29824543e+00, 5.15789461e+00, 6.78947353e+00, 1.76491222e+01, + 1.58771935e+01, 2.88245621e+01, 2.54210529e+01, 1.73684216e+01, + 1.40526314e+01, 1.12280703e+01, 1.25789471e+01, 1.03508768e+01, + 3.54035072e+01, 4.39473686e+01, 7.38596487e+00, 4.50877190e+00, + 9.34035110e+01, 1.08017548e+02, 2.10526323e+00, 3.01754379e+00, + 3.10877190e+01, 5.57719307e+01, 2.69824562e+01, 7.12280703e+00, + 1.25087719e+01, 1.55438595e+01, 1.29824567e+00, 4.98245621e+00, + 3.56315804e+01, 9.43859634e+01, 5.63859634e+01, 8.70175457e+00, + 2.12280703e+00, 6.31578922e-01, 6.14035070e-01, 2.42105269e+00, + 1.46666670e+01, 6.87192993e+01, 7.76491241e+01, 2.26140347e+01, + 5.31578970e+00, 2.80701756e+00, 3.89473677e+00, 4.01754379e+00, + 3.79122810e+01, 1.12122810e+02, 8.10526276e+00, 2.07017541e+00, + 5.28771935e+01, 1.19157898e+02, 8.56140327e+00, 1.56140351e+00, + 1.43157892e+01, 47., 2.05789471e+01, 6.15789461e+00, + 2.51228065e+01, 1.15157898e+02, 2.39473686e+01, 3.07017541e+00, + 1.85087719e+01, 5.04912262e+01, 4.04561386e+01, 8.91228104e+00, + 5.52631569e+00, 2.01578941e+01, 1.21403513e+01, 3.17543864e+00, + 6.59649134e+00, 4.45789490e+01, 5.17719307e+01, 1.29473686e+01, + 2.98245621e+00, 2.68421054e+00, 2.85964918e+00, 8.77192974e-01, + 9.68421078e+00, 1.01403511e+02, 1.49649124e+01, 1.38596487e+00, + 8.98245621e+00, 47., 9.38596535e+00, 1.36842108e+00, + 4.38596487e+00, 1.09508774e+02, 4.98771935e+01, 1.75438595e+00, + 7.14035082e+00, 1.17719299e+02, 5.52456131e+01, 1.56140351e+00, + 4.29824543e+00, 4.27894745e+01, 4.41403503e+01, 2.85964918e+00, + 3.47368431e+00, 1.09350876e+02, 1.04157898e+02, 2.63157892e+00, + 3.21052623e+00, 1.74912281e+01, 3.28070183e+01, 4.42105246e+00, + 2.35087729e+00, 2.75614033e+01, 8.97017517e+01, 5.15789461e+00, + 2.37500000e+00, 4.37500000e+00, 3.60416675e+00, 2.18750000e+00, + 1.13541670e+01, 9.85000000e+01, 3.09791660e+01, 1.81250000e+00, + 9.37500000e-01, 9.18750000e+00, 5.33333349e+00, 2.91666675e+00, + 4.27083321e+01, 1.11020836e+02, 9.20833302e+00, 2.50000000e-01, + 1.77291660e+01, 9.17083359e+01, 1.17083330e+01, 5.70833349e+00, + 2.39791660e+01, 3.12291660e+01, 1.89583337e+00, 6.87500000e-01, + 6.82708359e+01, 1.13041664e+02, 7.89583349e+00, 3.62500000e+00, + 5., 7.85416651e+00, 3.35416675e+00, 4.83333349e+00, + 1.46458330e+01, 1.98333340e+01, 1.30625000e+01, 1.14583330e+01, + 31., 6.24583321e+01, 1.51875000e+01, 5.77083349e+00, + 4.25000000e+00, 6.29166651e+00, 2.77083325e+00, 5.58333349e+00, + 1.13270836e+02, 1.15645836e+02, 3.77083325e+00, 1.02083337e+00, + 1.05208330e+01, 1.97291660e+01, 3.56250000e+00, 1.15416670e+01, + 9.27500000e+01, 5.75416679e+01, 6.45833313e-01, 4.16666657e-01, + 1.10416664e+02, 1.06625000e+02, 4.68750000e+00, 4.79166651e+00, + 8.93750000e+00, 5.91666651e+00, 1.41666663e+00, 2.95833325e+00, + 1.97708340e+01, 3.11250000e+01, 2.50625000e+01, 2.11875000e+01, + 2.57500000e+01, 1.77291660e+01, 3.77083325e+00, 5.91666651e+00, + 8.83333302e+00, 9.89583302e+00, 7.02083349e+00, 3.33958321e+01, + 1.24791664e+02, 4.72708321e+01, 1.04166663e+00, 1.50000000e+00, + 5.16666651e+00, 2.62500000e+00, 3.14583325e+00, 2.80625000e+01, + 1.23437500e+02, 3.16250000e+01, 3.54166657e-01, 1.14583337e+00, + 1.09958336e+02, 4.10208321e+01, 5.04166651e+00, 8.56250000e+00, + 1.43750000e+01, 3.52083325e+00, 8.95833313e-01, 8.41666698e+00, + 1.35208330e+01, 1.55833330e+01, 18., 2.19791660e+01, + 1.16458330e+01, 4.52083349e+00, 3.77083325e+00, 7.79166651e+00, + 6.47916651e+00, 5.35416651e+00, 7.70833349e+00, 80., + 1.00458336e+02, 6.70833349e+00, 1.18750000e+00, 2.12500000e+00, + 5.43750000e+00, 9.37500000e-01, 3.41666675e+00, 6.26875000e+01, + 1.06083336e+02, 4.60416651e+00, 7.29166687e-01, 5.08333349e+00, + 1.04312500e+02, 6.97916651e+00, 3.77083325e+00, 8.41666698e+00, + 9.56250000e+00, 1.54166663e+00, 1.25000000e+00, 3.64583321e+01, + 1.87638893e+01, 1.58194447e+01, 1.27777777e+01, 3.64722214e+01, + 5.10277786e+01, 2.09305553e+01, 1.20555553e+01, 2.00416660e+01, + 6.92916641e+01, 1.80972214e+01, 8.02777767e+00, 6.35694427e+01, + 9.37638855e+01, 2.75555553e+01, 9.58333302e+00, 4.74444427e+01, + 7.24861145e+01, 1.85138893e+01, 7.20833349e+00, 3.51250000e+01, + 4.29027786e+01, 1.46250000e+01, 9.12500000e+00, 5.22222214e+01, + 2.25277786e+01, 9.19444466e+00, 7.23611116e+00, 1.17777777e+01, + 1.17777777e+01, 8.44444466e+00, 6.97222233e+00, 2.01666660e+01, + 3.29861107e+01, 1.60138893e+01, 1.20555553e+01, 6.91666641e+01, + 7.79027786e+01, 1.53194447e+01, 1.35000000e+01, 3.69027786e+01, + 9.60138855e+01, 1.11805553e+01, 8.47222233e+00, 9.03888855e+01, + 1.05458336e+02, 1.42777777e+01, 8.76388931e+00, 8.14166641e+01, + 8.18888855e+01, 1.33055553e+01, 1.04166670e+01, 3.87222214e+01, + 4.57916679e+01, 1.84861107e+01, 1.36388893e+01, 6.91527786e+01, + 1.91388893e+01, 1.02083330e+01, 1.16805553e+01, 1.28888893e+01, + 1.02361107e+01, 1.01666670e+01, 1.05833330e+01, 1.91527786e+01, + 4.59166679e+01, 1.09027777e+01, 9.93055534e+00, 9.00277786e+01, + 8.92500000e+01, 9.44444466e+00, 9.72222233e+00, 4.83333321e+01, + 1.04166664e+02, 8.08333302e+00, 7.52777767e+00, 8.65555573e+01, + 9.03750000e+01, 9.08333302e+00, 6.93055534e+00, 9.83333359e+01, + 5.49027786e+01, 1.32777777e+01, 1.22638893e+01, 3.05138893e+01, + 3.33750000e+01, 1.98472214e+01, 1.48750000e+01, 5.48611107e+01, + 1.25833330e+01, 9.87500000e+00, 9.62500000e+00, 1.02500000e+01, + 8.66666698e+00, 9.69444466e+00, 1.08472223e+01, 1.66111107e+01, + 4.53055573e+01, 7.72222233e+00, 1.35555553e+01, 7.25694427e+01, + 6.08611107e+01, 1.05833330e+01, 9.40277767e+00, 5.90416679e+01, + 7.62638855e+01, 9.84722233e+00, 9.79166698e+00, 3.89305573e+01, + 4.47500000e+01, 1.30694447e+01, 1.04027777e+01, 7.68611145e+01, + 3.13472214e+01, 1.22361107e+01, 1.14027777e+01, 1.73611107e+01, + 1.70277786e+01, 1.46250000e+01, 1.36805553e+01, 3.03611107e+01, + 9.33333302e+00, 7., 6.98611116e+00, 7.62500000e+00, + 5.88888884e+00, 6.63888884e+00, 7.95833349e+00, 1.23194447e+01, + 2.22888889e+01, 9.19999981e+00, 3.16222229e+01, 9.86444473e+01, + 1.99555550e+01, 1.77777779e+00, 9.28888893e+00, 4.92000008e+01, + 4.62444458e+01, 1.48222218e+01, 2.56000004e+01, 2.64888897e+01, + 2.06666660e+00, 2.53333330e+00, 2.22000008e+01, 5.43333321e+01, + 4.07555542e+01, 6.19999981e+00, 6.64444447e+00, 2.62222219e+00, + 1.77777779e+00, 1.54888887e+01, 6.62444458e+01, 7.75777740e+01, + 8.71111107e+00, 4.11111116e+00, 4.53333330e+00, 1.53333330e+00, + 9.13333321e+00, 5.75333328e+01, 7.62666702e+01, 2.94888897e+01, + 4.64666672e+01, 1.31777782e+01, 1.57777777e+01, 4.37777786e+01, + 2.00666676e+01, 4.02222204e+00, 1.56000004e+01, 5.65999985e+01, + 9.47333298e+01, 2.00888882e+01, 5.71111107e+00, 2.46666670e+00, + 5.33333361e-01, 8.22222233e-01, 2.65333328e+01, 1.02577774e+02, + 9.71777802e+01, 4.52666664e+01, 2.01777782e+01, 8.28888893e+00, + 4.95555544e+00, 1.40666666e+01, 7.93111115e+01, 1.17244446e+02, + 1.98888893e+01, 2.11777782e+01, 2.84888897e+01, 2.97333336e+01, + 3.81555557e+01, 7.76222229e+01, 9.44444427e+01, 4.12888870e+01, + 7.61777802e+01, 1.14888887e+01, 4.37777758e+00, 9.95555592e+00, + 1.18888893e+01, 3.26666665e+00, 1.07111111e+01, 6.06222229e+01, + 1.12577774e+02, 2.10444450e+01, 1.28888893e+00, 6.44444466e-01, + 4.00000006e-01, 8.88888896e-01, 1.61777782e+01, 100., + 8.63333359e+01, 5.02888870e+01, 2.71555557e+01, 1.55333338e+01, + 1.16888885e+01, 1.07777777e+01, 2.74666672e+01, 8.40222244e+01, + 1.75555553e+01, 2.55555553e+01, 3.56222229e+01, 3.21333351e+01, + 2.86222229e+01, 2.51777782e+01, 1.91333332e+01, 1.79111118e+01, + 7.22444458e+01, 1.68444443e+01, 5.77777803e-01, 4.66666669e-01, + 9.62222195e+00, 1.00222225e+01, 1.64444447e+00, 3.06222229e+01, + 1.16244446e+02, 4.66666679e+01, 3.22222233e+00, 1.22222221e+00, + 1.28888893e+00, 2.31111121e+00, 4.62222242e+00, 4.19777794e+01, + 5.42000008e+01, 4.29777794e+01, 1.40444441e+01, 1.01777782e+01, + 1.33555555e+01, 1.13999996e+01, 1.21555557e+01, 2.53333340e+01, + 1.78666668e+01, 1.57111111e+01, 1.19111109e+01, 1.16666670e+01, + 1.27333336e+01, 1.26000004e+01, 1.81777782e+01, 1.98222218e+01, + 5.80434799e+00, 7.06304321e+01, 4.30217400e+01, 2.84782600e+00, + 2.52173924e+00, 8.78260899e+00, 2.47826076e+00, 4.56521749e-01, + 3.52173924e+00, 5.52391319e+01, 7.96304321e+01, 7.32608700e+00, + 1.76086962e+00, 3.86956525e+00, 6.50000000e+00, 1.95652175e+00, + 2.91304350e+00, 2.20217400e+01, 8.55434799e+01, 2.22826080e+01, + 1.45652175e+00, 1.54347825e+00, 6.15217400e+00, 4.32608700e+00, + 2.54347825e+00, 5.04347849e+00, 6.19565201e+01, 5.46739120e+01, + 1.21739125e+00, 4.56521749e-01, 2.10869575e+00, 3.82608700e+00, + 1.69565213e+00, 3.66521721e+01, 3.38260880e+01, 2., + 5.84782600e+00, 8.87826080e+01, 2.93478260e+01, 7.17391312e-01, + 1.36956525e+00, 4.79130440e+01, 9.68913040e+01, 6.65217400e+00, + 1.26086962e+00, 2.25434780e+01, 2.28478260e+01, 1.21739125e+00, + 1.50000000e+00, 1.93913040e+01, 1.14413040e+02, 2.92391300e+01, + 9.78260875e-01, 3.52173924e+00, 1.48478260e+01, 3.28260875e+00, + 1.28260875e+00, 3.30434775e+00, 7.50869598e+01, 5.15434799e+01, + 1.02173913e+00, 1.10869563e+00, 1.30434780e+01, 9.50000000e+00, + 1.71739125e+00, 7.36956501e+00, 6.71739149e+00, 1.78260875e+00, + 3.63043475e+00, 1.33500000e+02, 1.00673912e+02, 2.89130425e+00, + 1., 6.47826099e+00, 1.79130440e+01, 3.15217400e+00, + 1.93478262e+00, 1.11804344e+02, 1.30043472e+02, 3.04347825e+00, + 1.23913038e+00, 3.82608700e+00, 2.28043480e+01, 8.19565201e+00, + 1.76086962e+00, 4.16739120e+01, 1.27456520e+02, 1.77826080e+01, + 8.69565189e-01, 1.54347825e+00, 1.05652170e+01, 8.36956501e+00, + 1.69565213e+00, 6.47826099e+00, 1.25521736e+02, 6.20652161e+01, + 1.91304350e+00, 2.82608700e+00, 4.56521749e+00, 2.39130425e+00, + 4.04347849e+00, 49., 6.29347839e+01, 6.50000000e+00, + 2.30434775e+00, 3.08695650e+00, 4.23913050e+00, 1.93478262e+00, + 2.78260875e+00, 5.71304359e+01, 1.05500000e+02, 1.44130430e+01, + 2.39130425e+00, 1.86956525e+00, 2.82608700e+00, 2.17391300e+00, + 2.47826076e+00, 3.54347839e+01, 1.20326088e+02, 2.25217400e+01, + 1.80434787e+00, 1.17391300e+00, 2.08695650e+00, 2.56521749e+00, + 2.41304350e+00, 1.09782610e+01, 1.01326088e+02, 40., 32., + 2.64117641e+01, 1.70294113e+01, 2.84705887e+01, 6.04411774e+01, + 6.17352943e+01, 2.44411774e+01, 2.21470585e+01, 7.37352905e+01, + 4.24705887e+01, 1.02058821e+01, 2.03529415e+01, 7.39705887e+01, + 6.91470566e+01, 2.50882359e+01, 2.82352943e+01, 4.62941170e+01, + 2.39411774e+01, 7.32352924e+00, 9.55882359e+00, 1.92941170e+01, + 1.63823528e+01, 1.82647057e+01, 2.07647057e+01, 4., + 5.29411745e+00, 2.61764717e+00, 3.64705873e+00, 4.91176462e+00, + 5.67647076e+00, 6.76470566e+00, 5.20588255e+00, 37., + 3.10588226e+01, 2.27941170e+01, 2.44411774e+01, 6.49411774e+01, + 6.49117661e+01, 3.43823547e+01, 2.91176472e+01, 1.00205879e+02, + 3.92352943e+01, 9.88235283e+00, 3.48823547e+01, 1.20941177e+02, + 7.34117661e+01, 2.09117641e+01, 4.20882339e+01, 8.23529434e+01, + 2.27352943e+01, 8.97058868e+00, 1.56176472e+01, 4.22941170e+01, + 2.25588226e+01, 1.70882359e+01, 3.62352943e+01, 3.67647052e+00, + 4.82352924e+00, 4., 6.41176462e+00, 8.52941132e+00, + 9.97058868e+00, 7.14705896e+00, 4.67647076e+00, 3.42647057e+01, + 3.13235302e+01, 24., 4.18823547e+01, 7.07941208e+01, + 3.97941170e+01, 3.43823547e+01, 3.36764717e+01, 1.03529411e+02, + 2.07352943e+01, 1.22058821e+01, 7.20882339e+01, 1.21705879e+02, + 2.66176472e+01, 1.30882349e+01, 6.76176453e+01, 7.79705887e+01, + 1.32941179e+01, 1.14117651e+01, 1.95000000e+01, 4.09705887e+01, + 1.96470585e+01, 1.37352943e+01, 4.62941170e+01, 2.55882359e+00, + 3.11764717e+00, 4.97058821e+00, 5.29411745e+00, 8.94117641e+00, + 1.05588236e+01, 5.79411745e+00, 3.82352948e+00, 4.75882339e+01, + 3.52058830e+01, 2.11176472e+01, 5.53529396e+01, 7.37058792e+01, + 1.84705887e+01, 1.68235302e+01, 2.63235302e+01, 9.44117661e+01, + 1.83529415e+01, 1.27941179e+01, 6.59411774e+01, 1.07294121e+02, + 1.66470585e+01, 7.17647076e+00, 6.48823547e+01, 3.74117661e+01, + 1.30588236e+01, 1.22352943e+01, 1.42058821e+01, 1.81176472e+01, + 1.55882349e+01, 1.11764708e+01, 2.72058830e+01, 2.17647052e+00, + 2.67647052e+00, 4.76470566e+00, 4.17647076e+00, 4.32352924e+00, + 5.41176462e+00, 4.29411745e+00, 2.55882359e+00, 1.01076927e+01, + 9.92307663e+00, 1.56153851e+01, 8.19999981e+00, 4.86153841e+00, + 2.21692314e+01, 6.66923065e+01, 2.52307701e+01, 9.38461494e+00, + 1.11076927e+01, 3.48769226e+01, 1.47692308e+01, 8.01538467e+00, + 2.51384621e+01, 1.17123077e+02, 3.99384613e+01, 7.41538477e+00, + 8.80000019e+00, 5.87846146e+01, 1.98461533e+01, 5.07692289e+00, + 1.91384621e+01, 1.36953842e+02, 4.40461540e+01, 2.26153851e+00, + 5.32307673e+00, 6.92307663e+01, 1.82615376e+01, 4.10769224e+00, + 1.26153851e+01, 1.34461533e+02, 3.00307693e+01, 1.67538452e+01, + 1.91230774e+01, 96., 4.32461548e+01, 1.09076920e+01, + 6.32307673e+00, 4.45692291e+01, 2.93076916e+01, 9.72307682e+00, + 1.58000002e+01, 1.34646149e+02, 8.20615387e+01, 1.65846157e+01, + 6.47692299e+00, 7.48153839e+01, 3.38615379e+01, 4.44615364e+00, + 1.01999998e+01, 1.42230774e+02, 7.71999969e+01, 8.73846149e+00, + 6.47692299e+00, 8.38307724e+01, 2.66000004e+01, 1.76923072e+00, + 9.50769234e+00, 1.40800003e+02, 4.49384613e+01, 2.73846149e+00, + 7.38461542e+00, 7.10615387e+01, 1.75384617e+01, 2.53846145e+00, + 5.98461533e+00, 7.74153824e+01, 3.98769226e+01, 8.15384579e+00, + 7.24615383e+00, 4.69384613e+01, 1.80923080e+01, 3.38461542e+00, + 4.53846169e+00, 6.49076920e+01, 3.86923065e+01, 1.06153851e+01, + 7.52307701e+00, 6.70153809e+01, 2.84153843e+01, 3.21538472e+00, + 3.81538463e+00, 3.46153831e+01, 1.88769226e+01, 6.50769234e+00, + 7.43076944e+00, 6.50769196e+01, 2.67230778e+01, 2.46153855e+00, + 4.63076925e+00, 1.88307686e+01, 8.18461514e+00, 4.27692318e+00, + 7.84615374e+00, 4.47076912e+01, 1.32769232e+01, 5.07692337e-01, + 8.92307699e-01, 5.04615402e+00, 4.15384626e+00, 1.50769234e+00, + 2.72307682e+00, 1.40307693e+01, 5.41538477e+00, 1.09230769e+00, + 1.43076921e+00, 2.40000010e+00, 3.26153851e+00, 2.69230771e+00, + 3., 1.04307690e+01, 4.87692308e+00, 1.03076923e+00, + 1.33846152e+00, 2.55384612e+00, 3.24615383e+00, 3.23076916e+00, + 2.95384622e+00, 5.56923056e+00, 3.06153846e+00, 7.07692325e-01, + 1.41538465e+00, 2.75384617e+00, 2.24615383e+00, 2.15384626e+00, + 2.83076930e+00, 3.59999990e+00, 1.52307689e+00, 7.28378391e+00, + 3.15675678e+01, 4.65810814e+01, 2.94324322e+01, 1.13378382e+01, + 5.34189186e+01, 7.47567596e+01, 1.18108110e+01, 3.20270276e+00, + 1.71351357e+01, 5.77432442e+01, 4.62702713e+01, 1.28918915e+01, + 2.93783779e+01, 1.09324326e+02, 3.91081085e+01, 4.91891909e+00, + 5.40540552e+00, 3.05270271e+01, 3.80810814e+01, 9.41891861e+00, + 8.43243217e+00, 1.09567566e+02, 1.02648651e+02, 2.09324322e+01, + 4.52702713e+00, 1.19729729e+01, 1.91351357e+01, 4.45945930e+00, + 2.67567563e+00, 5.84054070e+01, 1.20527023e+02, 9.37837791e+00, + 2.56756763e+01, 4.09324341e+01, 1.32837839e+01, 1.05945950e+01, + 4.55810814e+01, 9.51891861e+01, 2.09054050e+01, 1.34459457e+01, + 1.63918915e+01, 4.85675659e+01, 2.05270271e+01, 9.51351357e+00, + 2.57702694e+01, 1.12554054e+02, 5.50945930e+01, 2.22702694e+01, + 1.02972975e+01, 3.12432442e+01, 2.12837830e+01, 7.82432413e+00, + 1.26351347e+01, 1.02027023e+02, 1.03797295e+02, 3.76621628e+01, + 6.56756735e+00, 7.47297287e+00, 7.52702713e+00, 3.97297287e+00, + 6.82432413e+00, 5.13243256e+01, 1.13527023e+02, 8.10810852e+00, + 4.40540552e+00, 5.50000000e+00, 4.02702713e+00, 8.25675678e+00, + 3.97702713e+01, 7.43783798e+01, 2.74729729e+01, 1.60540543e+01, + 4.66216230e+00, 6.85135126e+00, 4., 5.54054070e+00, + 2.71351357e+01, 8.88378372e+01, 7.13648682e+01, 2.25405407e+01, + 2.94594598e+00, 3.08108115e+00, 2.39189196e+00, 3.72972965e+00, + 1.47432432e+01, 8.84594574e+01, 1.12432434e+02, 2.04864864e+01, + 3.21621633e+00, 1.71621621e+00, 1.48648643e+00, 2.98648643e+00, + 9.31081104e+00, 5.49459457e+01, 9.72297287e+01, 1.29729724e+00, + 1.62162155e-01, 2.70270277e-02, 1.89189196e-01, 1.33783782e+00, + 9.47297287e+00, 2.55810814e+01, 1.06756754e+01, 3.93243241e+00, + 2.83783793e-01, 4.05405387e-02, 1.08108111e-01, 6.62162185e-01, + 7.04054070e+00, 3.07567558e+01, 2.34594593e+01, 6.68918896e+00, + 6.35135114e-01, 2.43243247e-01, 3.64864856e-01, 9.72972989e-01, + 3.81081080e+00, 1.88513508e+01, 2.79594593e+01, 4.77027035e+00, + 1.10810816e+00, 8.51351380e-01, 1.27027023e+00, 1.93243241e+00, + 2.90540552e+00, 7.58108091e+00, 1.27297297e+01, 1.22647057e+01, + 2.76470590e+00, 5.94117641e+00, 4.21470604e+01, 2.97058830e+01, + 6.26470566e+00, 5.97058821e+00, 3.26470604e+01, 4.37647057e+01, + 8.61764717e+00, 2.34117641e+01, 9.19705887e+01, 3.42647057e+01, + 4.41176462e+00, 1.41470585e+01, 1.11205879e+02, 5.61764717e+01, + 3.92941170e+01, 4.64411774e+01, 4.67647057e+01, 1.57058821e+01, + 1.97352943e+01, 3.26470604e+01, 7.14411774e+01, 2.92352943e+01, + 2.79117641e+01, 2.37647057e+01, 4.32647057e+01, 6.42647095e+01, + 5.30294113e+01, 2.94411774e+01, 2.34411774e+01, 31., + 9.70588207e+00, 5.58823538e+00, 3.41470604e+01, 4.36176453e+01, + 1.27352943e+01, 7.79411745e+00, 4.04705887e+01, 7.91176453e+01, + 1.75000000e+01, 1.04705887e+01, 6.77352905e+01, 5.54411774e+01, + 2.15588226e+01, 1.85294113e+01, 7.70588226e+01, 7.00588226e+01, + 3.18823528e+01, 4.08529396e+01, 6.11176453e+01, 3.62941170e+01, + 2.84705887e+01, 2.67352943e+01, 56., 4.12352943e+01, + 1.94705887e+01, 4.51764717e+01, 1.11588234e+02, 4.84411774e+01, + 1.39117651e+01, 1.08529415e+01, 5.82352943e+01, 2.19117641e+01, + 4.31176453e+01, 1.15294113e+01, 8.79411793e+00, 3.52647057e+01, + 3.40294113e+01, 5.88235283e+00, 8.50000000e+00, 5.95294113e+01, + 6.31470604e+01, 3.14411774e+01, 2.70588226e+01, 3.66764717e+01, + 4.62941170e+01, 2.95000000e+01, 3.63235283e+01, 3.10588226e+01, + 1.06176472e+01, 4.38529396e+01, 1.11705879e+02, 4.46470604e+01, + 1.79117641e+01, 2.53823528e+01, 6.12941170e+01, 2.94117641e+01, + 4.47058821e+00, 2.79705887e+01, 1.17147057e+02, 2.54117641e+01, + 4.52941179e+00, 2.47352943e+01, 1.11382355e+02, 3.38235283e+00, + 1.46764708e+01, 4.97058821e+00, 1.67647064e+00, 8.76470566e+00, + 1.85882359e+01, 2.79411769e+00, 1.11764705e+00, 8.97058868e+00, + 3.77941170e+01, 3.42941170e+01, 1.08529415e+01, 7.14705896e+00, + 2.01470585e+01, 8.91176510e+00, 5.17647076e+00, 5.05882359e+00, + 3.17647052e+00, 2.69411774e+01, 5.54705887e+01, 1.30294113e+01, + 5.29411745e+00, 1.70588226e+01, 3.29411774e+01, 7.70588255e+00, + 2.52941179e+00, 7.20588255e+00, 2.49705887e+01, 6.50000000e+00, + 2.02941179e+00, 1.39117651e+01, 5.06470604e+01, 1.15277779e+00, + 9.30555582e-01, 1.40277779e+00, 1.61111116e+00, 1.34722221e+00, + 1.23611116e+00, 1.75000000e+00, 1.86111116e+00, 1.01250000e+01, + 1.01388893e+01, 1.12500000e+01, 1.35000000e+01, 1.11805553e+01, + 1.04305553e+01, 1.16527777e+01, 1.14722223e+01, 1.05000000e+01, + 1.25833330e+01, 1.74444447e+01, 3.15833340e+01, 2.26388893e+01, + 1.22361107e+01, 1.37222223e+01, 1.27777777e+01, 5.05555534e+00, + 6.98611116e+00, 2.22361107e+01, 1.08291664e+02, 4.05833321e+01, + 4.95833349e+00, 5.47222233e+00, 6.34722233e+00, 1.65277779e+00, + 1.61111116e+00, 2.36111116e+00, 2.69444442e+00, 2.45833325e+00, + 1.70833337e+00, 2.66666675e+00, 2.33333325e+00, 1.15277777e+01, + 1.30138893e+01, 1.91944447e+01, 2.43750000e+01, 1.90277786e+01, + 1.29027777e+01, 1.47777777e+01, 1.36666670e+01, 1.09166670e+01, + 1.15277777e+01, 2.52777786e+01, 1.08416664e+02, 7.53194427e+01, + 1.43194447e+01, 1.26388893e+01, 1.34027777e+01, 2.72222233e+00, + 2.59722233e+00, 2.30972214e+01, 1.56208328e+02, 1.17097221e+02, + 5.51388884e+00, 4.34722233e+00, 7.09722233e+00, 1.33333337e+00, + 1.52777779e+00, 3.25000000e+00, 5.08333349e+00, 3.45833325e+00, + 1.95833337e+00, 2.41666675e+00, 1.97222221e+00, 9.25000000e+00, + 1.10972223e+01, 1.87638893e+01, 4.50277786e+01, 3.46527786e+01, + 1.50277777e+01, 1.14444447e+01, 1.00277777e+01, 7.45833349e+00, + 8.75000000e+00, 2.23472214e+01, 1.42402771e+02, 1.40638885e+02, + 1.32916670e+01, 5.16666651e+00, 5.59722233e+00, 7.41666651e+00, + 3.61111116e+00, 9.37500000e+00, 1.41513885e+02, 1.48694443e+02, + 14., 3.83333325e+00, 9.88888931e+00, 4.86111104e-01, + 8.47222209e-01, 2.05555558e+00, 6.45833349e+00, 6.44444466e+00, + 2.29166675e+00, 1.80555558e+00, 1.01388884e+00, 5.70833349e+00, + 7.79166651e+00, 1.27222223e+01, 5.10138893e+01, 5.88888893e+01, + 1.64722214e+01, 7.90277767e+00, 4.87500000e+00, 9.26388931e+00, + 1.00694447e+01, 1.45972223e+01, 9.26250000e+01, 1.46027771e+02, + 2.53333340e+01, 4.40277767e+00, 4.69444466e+00, 1.79166660e+01, + 1.01111107e+01, 6.20833349e+00, 5.32916679e+01, 1.38277771e+02, + 45., 7.87500000e+00, 1.10833330e+01, 5.69767427e+00, + 9.30232584e-01, 6.97674394e-01, 6.97674394e-01, 1.23255813e+00, + 1.86046517e+00, 4.95348835e+00, 6.74418592e+00, 1.76046505e+01, + 8.30232525e+00, 8.06976700e+00, 1.14651165e+01, 1.69302330e+01, + 1.90232563e+01, 2.63488369e+01, 2.29534893e+01, 2.85813961e+01, + 1.68604660e+01, 1.09534883e+01, 2.52093029e+01, 7.94418640e+01, + 4.91395340e+01, 2.69069767e+01, 2.14186039e+01, 8.30930252e+01, + 2.87906971e+01, 7.18604660e+00, 2.72790699e+01, 9.77674408e+01, + 3.84651146e+01, 1.20697670e+01, 2.17906971e+01, 4.62790680e+00, + 2.30232549e+00, 1.16279066e+00, 1.02325583e+00, 1.32558143e+00, + 1.95348835e+00, 6.04651165e+00, 5.86046505e+00, 2.12790699e+01, + 1.48372097e+01, 1.21627903e+01, 1.46511631e+01, 1.86279068e+01, + 2.35116272e+01, 3.10697670e+01, 2.49069767e+01, 3.76046524e+01, + 1.75116272e+01, 1.44418602e+01, 3.72558136e+01, 1.03139534e+02, + 6.25813942e+01, 3.43488388e+01, 2.87906971e+01, 1.12162788e+02, + 3.03023262e+01, 6.53488350e+00, 4.14186058e+01, 1.16860466e+02, + 4.72093010e+01, 1.83488369e+01, 5.17906990e+01, 2.86046505e+00, + 2.27906966e+00, 1.93023252e+00, 1.69767439e+00, 1.23255813e+00, + 2.41860461e+00, 5.41860485e+00, 3.37209296e+00, 2.16511631e+01, + 1.53953485e+01, 1.50232553e+01, 1.86046505e+01, 2.18837204e+01, + 2.81395340e+01, 2.92325573e+01, 2.56511631e+01, 4.99069786e+01, + 2.11162796e+01, 1.68372097e+01, 3.92325592e+01, 1.11534882e+02, + 5.72093010e+01, 3.07906971e+01, 3.06976738e+01, 1.26279068e+02, + 2.77674427e+01, 7.79069757e+00, 4.88139534e+01, 1.22418602e+02, + 4.03488388e+01, 1.34883718e+01, 6.62325592e+01, 1.76744187e+00, + 1.72093022e+00, 2.09302330e+00, 1.39534879e+00, 1.44186044e+00, + 2.46511626e+00, 4.20930243e+00, 2.67441869e+00, 1.75813961e+01, + 1.33023252e+01, 1.34186049e+01, 1.27906981e+01, 1.69767437e+01, + 2.05581398e+01, 2.42093029e+01, 2.34186039e+01, 4.06744194e+01, + 16., 1.14418602e+01, 4.08139534e+01, 107., 4.59069786e+01, + 2.65116272e+01, 2.73488369e+01, 1.21744186e+02, 2.88139534e+01, + 6.25581408e+00, 3.74651146e+01, 1.17069771e+02, 3.83953476e+01, + 1.03953485e+01, 5.47441864e+01, 4.96551704e+00, 3.43965530e+01, + 2.84827595e+01, 9.68965530e+00, 8.20689678e+00, 6.28275871e+01, + 3.70517235e+01, 3.70689654e+00, 6.50000000e+00, 1.15051727e+02, + 8.54827576e+01, 1.93448277e+01, 1.31551723e+01, 1.11637932e+02, + 6.53448257e+01, 4.12068987e+00, 6.63793087e+00, 1.34568970e+02, + 130., 2.10689659e+01, 1.03620691e+01, 1.02379311e+02, + 6.12413788e+01, 4.94827604e+00, 1.15000000e+01, 1.22775864e+02, + 1.05017242e+02, 2.09655170e+01, 1.01379309e+01, 7.67758636e+01, + 4.69482765e+01, 9.48275852e+00, 8.17241383e+00, 1.18103447e+01, + 1.53275862e+01, 1.45862064e+01, 9.96551704e+00, 1.36724138e+01, + 1.02758617e+01, 6.75862074e+00, 1.05000000e+01, 2.42931042e+01, + 2.63793106e+01, 1.92413788e+01, 1.42413797e+01, 6.13793106e+01, + 3.55862083e+01, 7.74137926e+00, 7.70689678e+00, 6.66034470e+01, + 5.16379318e+01, 1.46034479e+01, 1.34655170e+01, 1.22741379e+02, + 7.99827576e+01, 4.46551704e+00, 7.50000000e+00, 1.19724136e+02, + 8.97068939e+01, 1.74827595e+01, 1.11724138e+01, 1.17844826e+02, + 7.59827576e+01, 5.81034470e+00, 7.01724148e+00, 7.75862074e+00, + 1.20517244e+01, 1.49137936e+01, 9.77586174e+00, 5.44827604e+00, + 4.68965530e+00, 5.67241383e+00, 1.08448277e+01, 1.49137936e+01, + 1.95862064e+01, 2.04137936e+01, 1.60862064e+01, 1.26034479e+01, + 8.56896591e+00, 9.10344791e+00, 1.12068968e+01, 1.99482765e+01, + 2.38448277e+01, 2.09827595e+01, 1.78103447e+01, 2.36551723e+01, + 1.25172415e+01, 6.81034470e+00, 8.60344791e+00, 2.08620682e+01, + 2.05517235e+01, 1.40862064e+01, 1.43965521e+01, 5.76724129e+01, + 2.56724129e+01, 4.60344839e+00, 4.50000000e+00, 5.43103456e+00, + 8., 8.27586174e+00, 5.29310322e+00, 2.67241383e+00, + 2.89655161e+00, 4.05172396e+00, 6.48275852e+00, 7.81034470e+00, + 1.10862064e+01, 1.19310341e+01, 8.65517235e+00, 5.12068987e+00, + 5.43103456e+00, 5.36206913e+00, 5.55172396e+00, 8.17241383e+00, + 9.72413826e+00, 1.23793106e+01, 1.19482756e+01, 7.39655161e+00, + 4.96551704e+00, 3.79310346e+00, 5.58620691e+00, 8.25862026e+00, + 9.63793087e+00, 9.29310322e+00, 8.36206913e+00, 7.12068987e+00, + 4.01724148e+00, 2.84482765e+00, 2.75000000e+00, 5.83750000e+01, + 5.47031250e+01, 2.10937500e+00, 2.92187500e+00, 69., + 7.47031250e+01, 6.53125000e+00, 9.17187500e+00, 3.64531250e+01, + 1.77187500e+01, 2.60937500e+00, 3.39062500e+00, 9.59375000e+01, + 4.90781250e+01, 7.68750000e+00, 1.09687500e+01, 2.30625000e+01, + 1.25937500e+01, 3.75000000e+00, 9.39062500e+00, 2.57500000e+01, + 8.15625000e+00, 6.84375000e+00, 8.12500000e+00, 1.73281250e+01, + 7.82812500e+00, 2.18750000e+00, 5.40625000e+00, 1.25000000e+00, + 3.70312500e+00, 3.70312500e+00, 4.10937500e+00, 9.06562500e+01, + 6.30625000e+01, 2.54687500e+00, 8.25000000e+00, 3.44375000e+01, + 2.68750000e+01, 7.62500000e+00, 1.91250000e+01, 1.31390625e+02, + 4.63593750e+01, 2.18750000e+00, 1.21093750e+01, 1.10703125e+02, + 3.56718750e+01, 5.43750000e+00, 1.89843750e+01, 7.28437500e+01, + 1.11093750e+01, 3.21875000e+00, 3.70156250e+01, 1.27187500e+02, + 1.47656250e+01, 3.48437500e+00, 1.56562500e+01, 2.57656250e+01, + 9.90625000e+00, 2.51562500e+00, 1.12812500e+01, 1.82500000e+01, + 6.95312500e+00, 4.51562500e+00, 2.60937500e+00, 6.21875000e+00, + 2.23437500e+00, 3.29687500e+00, 2.03437500e+01, 4.20625000e+01, + 2.45937500e+01, 4.37500000e+00, 2.95781250e+01, 1.04250000e+02, + 9.17187500e+00, 4.32812500e+00, 2.50468750e+01, 4.00156250e+01, + 1.40625000e+01, 4.51562500e+00, 8.52968750e+01, 1.29203125e+02, + 5.57812500e+00, 2.35937500e+00, 6.89531250e+01, 1.16796875e+02, + 5.95312500e+00, 2.90625000e+00, 1.95312500e+01, 2.45468750e+01, + 5.54687500e+00, 2.37500000e+00, 5.40156250e+01, 7.42031250e+01, + 5.64062500e+00, 4.25000000e+00, 7.18750000e-01, 8.28125000e-01, + 1.76562500e+00, 5.79687500e+00, 2.98593750e+01, 4.25625000e+01, + 2.42500000e+01, 2.81250000e+00, 9.82812500e+00, 9.95312500e+00, + 1.01562500e+00, 7.23437500e+00, 3.57500000e+01, 3.42343750e+01, + 1.68750000e+01, 4.87500000e+00, 1.12265625e+02, 9.37343750e+01, + 1.23437500e+00, 3.76562500e+00, 4.98437500e+01, 3.50937500e+01, + 5.46875000e+00, 4.81250000e+00, 4.65000000e+01, 2.68750000e+01, + 1.79687500e+00, 2.20312500e+00, 9.63750000e+01, 5.80312500e+01, + 2.92187500e+00, 3.12500000e+00, 2., 4.80487823e+00, + 5.80487823e+00, 3.83414650e+01, 7.26341476e+01, 2.90487804e+01, + 3.39024401e+00, 2.07317066e+00, 1.16097565e+01, 4.32926826e+01, + 3.84634132e+01, 5.31707306e+01, 6.94634171e+01, 6.67804871e+01, + 2.82926826e+01, 1.61951218e+01, 2.29268284e+01, 7.67804871e+01, + 5.17317085e+01, 3.07560978e+01, 3.53170738e+01, 1.00439026e+02, + 6.65365829e+01, 2.80975609e+01, 1.35609760e+01, 4.80487823e+01, + 4.68048782e+01, 1.44878044e+01, 1.88536587e+01, 8.27804871e+01, + 7.79512177e+01, 1.35609760e+01, 1.14634144e+00, 1.65853655e+00, + 4.04878044e+00, 2.43170738e+01, 8.65609741e+01, 7.05365829e+01, + 1.28780489e+01, 3.48780489e+00, 1.11951218e+01, 2.19512196e+01, + 3.24634132e+01, 4.65365868e+01, 7.26585388e+01, 7.69756088e+01, + 5.21707306e+01, 3.37804871e+01, 2.51219521e+01, 5.34634132e+01, + 5.10975609e+01, 4.20487823e+01, 3.39024391e+01, 7.04878082e+01, + 7.99268265e+01, 5.76097565e+01, 1.15853662e+01, 3.85365868e+01, + 5.15853653e+01, 1.39024391e+01, 1.41463413e+01, 6.24390259e+01, + 75., 2.89024391e+01, 4.87804890e-01, 3.65853667e-01, + 1.68292677e+00, 1.03414631e+01, 6.23902435e+01, 7.13658524e+01, + 2.41951218e+01, 2.24390244e+00, 3.02439022e+00, 2.48780489e+00, + 5.19512177e+00, 1.30731707e+01, 5.70487823e+01, 9.29512177e+01, + 5.97073174e+01, 1.82926826e+01, 9.31707287e+00, 5.92682934e+00, + 1.06829271e+01, 1.83414631e+01, 2.22195129e+01, 53., + 7.89024353e+01, 4.17073174e+01, 1.02926826e+01, 6.73170710e+00, + 9.48780441e+00, 9.17073154e+00, 1.17317076e+01, 2.55609760e+01, + 5.77317085e+01, 4.69512177e+01, 1.14634144e+00, 9.26829278e-01, + 1.31707323e+00, 4.07317066e+00, 2.34390240e+01, 3.24390259e+01, + 2.04146347e+01, 2.90243912e+00, 4.87804890e-01, 2.19512194e-01, + 2.43902445e-01, 2.02439022e+00, 2.23658543e+01, 6.18048782e+01, + 5.55609741e+01, 6.65853643e+00, 1.41463411e+00, 5.85365832e-01, + 6.09756112e-01, 2.80487800e+00, 7.87804890e+00, 4.28780479e+01, + 7.68536606e+01, 2.00487804e+01, 3.07317066e+00, 5.60975611e-01, + 2.68292695e-01, 1.51219511e+00, 3.29268289e+00, 1.83414631e+01, + 6.24634132e+01, 3.58048782e+01, 6., 1.42258062e+01, + 5.51935501e+01, 1.72419357e+01, 6.59677410e+00, 4.27419376e+00, + 8.69354820e+00, 6.67741919e+00, 8.95161247e+00, 3.35161285e+01, + 5.26774178e+01, 1.29838705e+01, 5.32258081e+00, 6.45161295e+00, + 1.05967741e+01, 5.90322590e+00, 1.23709679e+01, 2.90161285e+01, + 2.57096767e+01, 1.01129036e+01, 3.98387098e+00, 5.37096786e+00, + 7.14516115e+00, 6.40322590e+00, 1.24354839e+01, 1.71451607e+01, + 1.21451616e+01, 4.85483885e+00, 3.03225803e+00, 3.29032254e+00, + 4.19354820e+00, 4.06451607e+00, 3.79032254e+00, 2.26774197e+01, + 1.42032257e+02, 6.87258072e+01, 3.27419353e+00, 5.50000000e+00, + 1.33064518e+01, 8.77419376e+00, 4.11290312e+00, 1.24870964e+02, + 1.44016129e+02, 1.29193544e+01, 4.12903214e+00, 9.85483837e+00, + 1.21129036e+01, 4.69354820e+00, 1.72419357e+01, 1.44887100e+02, + 1.01080643e+02, 8.75806427e+00, 6.08064508e+00, 1.33064518e+01, + 1.38870964e+01, 6.95161295e+00, 2.31290321e+01, 6.09354820e+01, + 2.32903233e+01, 6.38709688e+00, 4.24193525e+00, 6.93548393e+00, + 1.00967741e+01, 1.03387098e+01, 7.14516115e+00, 1.62580643e+01, + 5.41451607e+01, 3.18548393e+01, 8.70967770e+00, 1.68709679e+01, + 3.21451607e+01, 1.78225803e+01, 8.33870983e+00, 6.20161285e+01, + 6.12258072e+01, 1.27258062e+01, 1.16129036e+01, 2.44516125e+01, + 2.36774197e+01, 9., 5.35806465e+01, 1.43774200e+02, + 4.05806465e+01, 3.11290312e+00, 5., 9.80645180e+00, + 6.01612902e+00, 2.88709688e+00, 8.27903214e+01, 1.33822586e+02, + 1.24516125e+01, 3.01612902e+00, 5.43548393e+00, 8.40322590e+00, + 3.80645156e+00, 6.16129017e+00, 1.49032259e+01, 1.44354839e+01, + 2.30967751e+01, 1.97580643e+01, 1.73870964e+01, 2.43709679e+01, + 3.35000000e+01, 2.42419357e+01, 2.00967751e+01, 2.28709679e+01, + 1.85806446e+01, 1.43548384e+01, 2.44677410e+01, 3.78548393e+01, + 2.31935482e+01, 1.31935482e+01, 6.87580643e+01, 5.20645180e+01, + 6.04838705e+00, 5.03225803e+00, 1.80967751e+01, 2.32903233e+01, + 10., 7.80645180e+00, 1.36725800e+02, 8.18871002e+01, + 3.40322590e+00, 2.08064508e+00, 6.87096786e+00, 5.66129017e+00, + 1.66129029e+00, 7.32258081e+00, 1.15714288e+00, 1.50000000e+00, + 2.91428566e+00, 7.97142839e+00, 1.42285719e+01, 7.64285707e+00, + 2.47142863e+00, 1.38571429e+00, 3.77142859e+00, 3.40000010e+00, + 5.17142868e+00, 4.48714294e+01, 1.13728569e+02, 2.08999996e+01, + 3.84285712e+00, 3.09999990e+00, 4.75714302e+00, 2.07142854e+00, + 2.62857151e+00, 1.04142860e+02, 1.44914291e+02, 7.44285727e+00, + 1.92857146e+00, 4.68571424e+00, 2.02428570e+01, 7.81428576e+00, + 8.92857170e+00, 3.02428570e+01, 2.23571434e+01, 2.74285722e+00, + 7.45714283e+00, 2.08999996e+01, 1.61428571e+00, 2.08571434e+00, + 3.90000010e+00, 8.60000038e+00, 1.70142860e+01, 1.15428572e+01, + 3.72857141e+00, 2.37142849e+00, 4.85714293e+00, 4.85714293e+00, + 6.40000010e+00, 2.38428574e+01, 1.34042862e+02, 5.88571434e+01, + 5.59999990e+00, 3.97142863e+00, 7.98571444e+00, 4.14285707e+00, + 1.79999995e+00, 2.37428570e+01, 1.50314285e+02, 8.38142853e+01, + 3.70000005e+00, 5.18571424e+00, 3.58142853e+01, 1.86285706e+01, + 1.05571432e+01, 1.05142860e+01, 2.92428570e+01, 1.81571426e+01, + 1.29142857e+01, 1.71142864e+01, 2.72857141e+00, 3.01428580e+00, + 3.61428571e+00, 6.68571424e+00, 1.48142853e+01, 1.18428574e+01, + 4.42857122e+00, 2.91428566e+00, 7.14285707e+00, 7.98571444e+00, + 6.71428585e+00, 1.42857141e+01, 91., 7.09285736e+01, + 9.58571434e+00, 5., 6.52857161e+00, 6.75714302e+00, + 2.40000010e+00, 4.78571415e+00, 1.42957138e+02, 1.49085709e+02, + 1.13857145e+01, 3.24285722e+00, 2.65714283e+01, 2.67571430e+01, + 1.26142855e+01, 4.57142878e+00, 3.45428581e+01, 9.14857178e+01, + 2.43428574e+01, 1.04714289e+01, 2.58571434e+00, 2.68571424e+00, + 2.77142859e+00, 5.17142868e+00, 1.11428576e+01, 1.00285711e+01, + 3.78571439e+00, 2.02857137e+00, 6.21428585e+00, 7.42857122e+00, + 7.54285717e+00, 1.22142859e+01, 3.65285721e+01, 3.39000015e+01, + 9.75714302e+00, 5.27142859e+00, 4.47142839e+00, 1.21000004e+01, + 7.04285717e+00, 7.87142849e+00, 6.71428604e+01, 1.32542862e+02, + 1.84142857e+01, 3.94285703e+00, 6.11428595e+00, 14., + 1.00285711e+01, 2.95714283e+00, 2.40428562e+01, 1.41357147e+02, + 6.53285751e+01, 3.79999995e+00, 9.24782639e+01, 1.56521740e+01, + 1.41304350e+00, 7.13043499e+00, 2.64347820e+01, 1.38043480e+01, + 1.86956525e+00, 2.53695660e+01, 1.13130432e+02, 1.91739140e+01, + 6.84782600e+00, 2.85869560e+01, 5.18913040e+01, 2.25434780e+01, + 1.11956520e+01, 6.40869598e+01, 1.16304350e+01, 9.84782600e+00, + 1.53043480e+01, 2.16739140e+01, 1.91086960e+01, 1.76956520e+01, + 1.92608700e+01, 1.87173920e+01, 1.05000000e+01, 1.36956520e+01, + 1.39347830e+01, 1.29347830e+01, 2.89130440e+01, 2.90434780e+01, + 1.66956520e+01, 8.71739101e+00, 1.00695656e+02, 4.53043480e+01, + 1.67391300e+00, 6.17391300e+00, 2.20434780e+01, 2.54565220e+01, + 4.36956501e+00, 1.18695650e+01, 1.25978264e+02, 1.03195656e+02, + 1.12173910e+01, 1.45000000e+01, 5.79565201e+01, 6.54782639e+01, + 1.43043480e+01, 1.97608700e+01, 1.33043480e+01, 2.06739140e+01, + 1.66304340e+01, 15., 2.45000000e+01, 4.16086960e+01, + 2.83695660e+01, 1.37173910e+01, 1.32608700e+01, 7.76086950e+00, + 1.45869570e+01, 3.93260880e+01, 3.26739120e+01, 1.35652170e+01, + 2.12826080e+01, 2.98478260e+01, 2.34347820e+01, 3.50217400e+01, + 2.60869575e+00, 2.32608700e+00, 1.42391300e+01, 2.25869560e+01, + 8.47826099e+00, 4.32608700e+00, 6.08913040e+01, 1.37195648e+02, + 7.89347839e+01, 6.02173901e+00, 1.98695660e+01, 5.87391319e+01, + 2.33695660e+01, 5.17391300e+00, 8.43478298e+00, 9.01521759e+01, + 1.36173920e+02, 3.95434799e+01, 1.26086960e+01, 5.80217400e+01, + 5.60652161e+01, 1.18260870e+01, 5.56521749e+00, 1.17826090e+01, + 1.12478264e+02, 1.07391304e+02, 1.44782610e+01, 1.22173910e+01, + 4.22826080e+01, 2.99782600e+01, 2.41304350e+00, 2.47826076e+00, + 1.60869563e+00, 1.04347825e+00, 3.28260875e+00, 8.97826099e+00, + 5.63043499e+00, 2.04347825e+00, 1.91304350e+00, 2.44347820e+01, + 2.21304340e+01, 2.50000000e+00, 4.73913050e+00, 1.96739140e+01, + 1.61521740e+01, 2.80434775e+00, 8.91304374e-01, 2.71956520e+01, + 8.50434799e+01, 1.48260870e+01, 2.45652175e+00, 1.65000000e+01, + 2.48043480e+01, 5.97826099e+00, 1.17391300e+00, 6.82608700e+00, + 5.11521721e+01, 2.75869560e+01, 1.39130437e+00, 1.03260870e+01, + 2.93913040e+01, 1.12608700e+01, 2.16438351e+01, 1.29602737e+02, + 2.61369858e+01, 2.54794526e+00, 1.12465754e+01, 8.59315033e+01, + 1.72739735e+01, 2.10958910e+00, 1.32876711e+01, 8.16849289e+01, + 2.93972607e+01, 3.60273981e+00, 7.86301374e+00, 1.15342468e+02, + 6.13424644e+01, 3.50684929e+00, 1.14109592e+01, 3.83287659e+01, + 2.61780815e+01, 8.68493176e+00, 3.38356161e+00, 4.72876701e+01, + 5.74246559e+01, 3.67123294e+00, 4.67123270e+00, 2.53972607e+01, + 2.85890408e+01, 1.50684929e+01, 4.52054787e+00, 7.31506872e+00, + 3.21643829e+01, 6.26027393e+00, 3.76712322e+00, 8.79041061e+01, + 3.11643829e+01, 2.95890403e+00, 1.16575346e+01, 3.00958900e+01, + 1.53561640e+01, 3., 5.63013697e+00, 1.33835617e+02, + 1.22054794e+02, 2.78082180e+00, 5.78082180e+00, 6.83698654e+01, + 5.19315071e+01, 3.79452062e+00, 3.93150687e+00, 1.13041100e+02, + 1.33630142e+02, 5.19178104e+00, 2.73972607e+00, 8.34109573e+01, + 1.17219177e+02, 6.93150663e+00, 3.13698626e+00, 3.26575356e+01, + 1.27397263e+02, 2.07671242e+01, 2.71232867e+00, 3.21643829e+01, + 1.19082191e+02, 1.85479450e+01, 1.46575344e+00, 1.68493152e+00, + 1.56164384e+00, 2.02739716e+00, 9.02739716e+00, 3.72328758e+01, + 2.25753422e+01, 3.61643839e+00, 2.15068483e+00, 1.99315071e+01, + 2.16438351e+01, 2.23287678e+00, 8.75342464e+00, 3.63835602e+01, + 3.48356171e+01, 7.60273981e+00, 2.58904099e+00, 4.67534256e+01, + 9.48630142e+01, 3.15068483e+00, 4.78082180e+00, 1.95479450e+01, + 3.28904114e+01, 1.29726028e+01, 3.17808223e+00, 2.31232872e+01, + 1.11986298e+02, 8.79452038e+00, 2.28767133e+00, 9.63013744e+00, + 2.66575336e+01, 1.42739725e+01, 8.90410960e-01, 5.06849289e-01, + 6.02739751e-01, 1.06849313e+00, 2.89041090e+00, 1.91369858e+01, + 1.42465754e+01, 1.93150687e+00, 1.47945201e+00, 6.30136967e-01, + 6.43835604e-01, 1.21917808e+00, 3.19178081e+00, 2.16575336e+01, + 2.37671242e+01, 4.23287678e+00, 2.04109597e+00, 6.43835604e-01, + 6.16438329e-01, 1., 2.38356161e+00, 1.56575346e+01, + 2.61917801e+01, 7.61643839e+00, 2.06849313e+00, 8.21917832e-01, + 6.02739751e-01, 7.12328792e-01, 1.31506848e+00, 7.53424644e+00, + 1.96849308e+01, 8.56164360e+00, 1.26764708e+01, 4.16176453e+01, + 3.44705887e+01, 1.14117651e+01, 5.32352924e+00, 8.11764717e+00, + 2.00294113e+01, 1.35588236e+01, 2.36176472e+01, 3.89411774e+01, + 5.92352943e+01, 3.76764717e+01, 1.39705887e+01, 1.62941170e+01, + 3.42058830e+01, 2.97058830e+01, 24., 5.79705887e+01, + 6.45882339e+01, 1.78823528e+01, 2.51764698e+01, 9.57941208e+01, + 7.57647095e+01, 2.13235302e+01, 4.29411745e+00, 3.39411774e+01, + 3.32941170e+01, 2.41176462e+00, 7.73529434e+00, 1.04147057e+02, + 8.80588226e+01, 2.67647052e+00, 3.73529410e+00, 6.42352905e+01, + 9.01176453e+01, 1.41470585e+01, 3.29411769e+00, 3.09411774e+01, + 4.11470604e+01, 5.67647076e+00, 6.64705896e+00, 5.66470604e+01, + 1.16823532e+02, 7.66176453e+01, 1.16764708e+01, 3.27352943e+01, + 4.89411774e+01, 1.54117651e+01, 9.41176510e+00, 1.19558823e+02, + 1.25617645e+02, 3.71176453e+01, 6.38235283e+00, 5.57352943e+01, + 6.69117661e+01, 1.15882349e+01, 1.67647064e+00, 1.25441177e+02, + 1.18264709e+02, 2.20588231e+00, 1.88235295e+00, 7.87058792e+01, + 6.36764717e+01, 1.67647064e+00, 3.52941179e+00, 1.19411764e+01, + 2.02941170e+01, 4.82352924e+00, 3.29411769e+00, 2.38823528e+01, + 3.36764717e+01, 3.97058821e+00, 2.50000000e+00, 7.70588255e+00, + 2.12352943e+01, 1.37941179e+01, 6.79411745e+00, 2.94117641e+01, + 5.31176453e+01, 9.61764717e+00, 1.41176474e+00, 2.62941170e+01, + 2.52647057e+01, 1.00882349e+01, 6.05882359e+00, 5.65000000e+01, + 6.54411774e+01, 6.35294104e+00, 1.11764705e+00, 6.69117661e+01, + 5.84117661e+01, 4., 2.32352948e+00, 6.92058792e+01, + 5.81470604e+01, 1.76470590e+00, 3.02941179e+00, 4.17647076e+00, + 6.29411745e+00, 5.67647076e+00, 3.14705873e+00, 3.11764717e+00, + 3.38235283e+00, 2.58823538e+00, 2.52941179e+00, 5.08823538e+00, + 7.73529434e+00, 7.73529434e+00, 5.61764717e+00, 6.85294104e+00, + 5.88235283e+00, 2.26470590e+00, 2.05882359e+00, 5.26470566e+00, + 6.50000000e+00, 6.52941179e+00, 7.44117641e+00, 1.34117651e+01, + 7.73529434e+00, 2.41176462e+00, 1.64705884e+00, 1.12941179e+01, + 8.44117641e+00, 4.35294104e+00, 3.91176462e+00, 2.13823528e+01, + 1.14705887e+01, 1.38235295e+00, 1.22857141e+00, 3.71428579e-01, + 3.42857152e-01, 5.71428597e-01, 3.42857152e-01, 4.28571433e-01, + 6.85714304e-01, 7.14285731e-01, 6.34285736e+00, 1.20000005e+00, + 2.02857137e+00, 2.17142868e+00, 1.11428571e+00, 3.51428580e+00, + 8.25714302e+00, 7.37142849e+00, 1.85714281e+00, 1.60000002e+00, + 1., 9.14285719e-01, 1.28571427e+00, 7.19999981e+00, + 1.24571428e+01, 4.57142878e+00, 1.85714281e+00, 1., + 7.14285731e-01, 5.71428597e-01, 7.71428585e-01, 2.71428561e+00, + 3.51428580e+00, 2.25714278e+00, 1.20857143e+01, 2.68571424e+00, + 3.08571434e+00, 3.14285707e+00, 3.68571424e+00, 3.94285703e+00, + 4.57142878e+00, 4.14285707e+00, 6.85142822e+01, 1.69714279e+01, + 1.01142855e+01, 9.42857170e+00, 9.91428566e+00, 2.59142857e+01, + 4.38857155e+01, 5.75714302e+01, 3.57999992e+01, 1.68857136e+01, + 6.59999990e+00, 5.45714283e+00, 2.46857147e+01, 7.97428589e+01, + 7.40857162e+01, 4.12285728e+01, 1.19428568e+01, 1.42285719e+01, + 4.05714273e+00, 2.85714293e+00, 1.11714287e+01, 3.31142845e+01, + 2.42000008e+01, 1.06857147e+01, 1.24285717e+01, 4.11428595e+00, + 2.08571434e+00, 2.57142854e+00, 7.02857161e+00, 7.77142859e+00, + 1.15714283e+01, 5., 1.26314285e+02, 7.75714264e+01, + 5.91428566e+00, 8.28571415e+00, 1.97428570e+01, 3.21428566e+01, + 4.09142876e+01, 5.67428589e+01, 1.02057144e+02, 6.86857147e+01, + 4.25714302e+00, 2.68571424e+00, 7.61142883e+01, 1.32857147e+02, + 6.24000015e+01, 4.62285728e+01, 2.60571423e+01, 3.10857143e+01, + 3.51428580e+00, 2.71428561e+00, 6.31142845e+01, 9.66857147e+01, + 2.56285706e+01, 8.54285717e+00, 1.97142851e+00, 2.28571439e+00, + 1.65714288e+00, 1.48571432e+00, 6.17142868e+00, 1.00857143e+01, + 1.06571426e+01, 2.91428566e+00, 7.87714310e+01, 7.64857178e+01, + 5.40000010e+00, 5.62857151e+00, 2.25714283e+01, 2.97714291e+01, + 1.76285706e+01, 1.23428574e+01, 1.17371429e+02, 1.25599998e+02, + 2.17142868e+00, 1.54285717e+00, 5.53714294e+01, 7.94857178e+01, + 8.25714302e+00, 6.74285698e+00, 4.29142876e+01, 4.41714287e+01, + 2.71428561e+00, 1.34285712e+00, 8.47714310e+01, 1.09057144e+02, + 10., 4.28571415e+00, 3.21518993e+00, 3.81012654e+00, + 4.05063295e+00, 4.70886087e+00, 3.96202540e+00, 2.94936705e+00, + 3.21518993e+00, 2.51898742e+00, 8.02531624e+00, 9.40506363e+00, + 1.08860760e+01, 2.44556961e+01, 2.09746838e+01, 8.10126591e+00, + 6.24050617e+00, 5.74683523e+00, 5.40506315e+00, 4.98734188e+00, + 1.42025318e+01, 1.11607597e+02, 5.01392403e+01, 5.51898718e+00, + 3.31645560e+00, 5.01265812e+00, 2.44303799e+00, 1.51898730e+00, + 4.50126572e+01, 1.48215195e+02, 2.32911396e+01, 1.36708856e+00, + 2.62025309e+00, 6.16455698e+00, 3.29113913e+00, 4.77215195e+00, + 4.98734188e+00, 6.97468376e+00, 7.30379725e+00, 4.55696201e+00, + 4., 2.86075950e+00, 9.36708832e+00, 9.44303799e+00, + 1.26455698e+01, 5.35949364e+01, 5.94936714e+01, 1.25316458e+01, + 6.30379725e+00, 6.34177208e+00, 4.63291121e+00, 2.82278490e+00, + 9.63291168e+00, 1.55316452e+02, 1.40367096e+02, 5.74683523e+00, + 2.16455698e+00, 5.20253181e+00, 1.18227844e+01, 2.39240503e+00, + 2.06708870e+01, 1.38721512e+02, 4.59746819e+01, 8.48101258e-01, + 2.74683547e+00, 1.62278481e+01, 3.05063295e+00, 4.24050617e+00, + 4.91139221e+00, 8.36708832e+00, 1.06582279e+01, 5.41772175e+00, + 3.82278490e+00, 3.35443044e+00, 7.31645584e+00, 7.03797483e+00, + 8.37974644e+00, 6.83417740e+01, 1.18215187e+02, 1.72025318e+01, + 4.97468376e+00, 4.46835423e+00, 4.24050617e+00, 1.64556956e+00, + 2.56962037e+00, 1.44329117e+02, 1.55316452e+02, 7.15189886e+00, + 1.88607597e+00, 3.97468352e+00, 3.86455688e+01, 5.53164577e+00, + 4.11392403e+00, 3.72278481e+01, 3.43164558e+01, 2.48101258e+00, + 3.49367094e+00, 3.04430370e+01, 2.29113913e+00, 3.26582289e+00, + 3.88607597e+00, 7.59493685e+00, 1.13291140e+01, 5.15189886e+00, + 2.51898742e+00, 1.84810126e+00, 5.21518993e+00, 5.73417711e+00, + 6.10126591e+00, 3.66075935e+01, 1.20898735e+02, 2.43670883e+01, + 3.02531648e+00, 2.64556956e+00, 6.18987322e+00, 1.97468352e+00, + 1.24050629e+00, 3.89113922e+01, 1.55037979e+02, 4.51898727e+01, + 1.96202528e+00, 3.67088604e+00, 5.38227844e+01, 9.17721558e+00, + 1.97468352e+00, 3.50632906e+00, 1.92911396e+01, 1.00632915e+01, + 4.26582289e+00, 2.11392403e+01, 2.55172420e+00, 7.24137902e-01, + 4.13793117e-01, 4.13793117e-01, 3.79310340e-01, 5.86206913e-01, + 8.62068951e-01, 2.37931037e+00, 1.32413797e+01, 4.65517235e+00, + 4.75862074e+00, 3.75862074e+00, 3.82758617e+00, 4.86206913e+00, + 6.93103456e+00, 1.21724138e+01, 1.43103447e+01, 6.10344839e+00, + 1.12413797e+01, 5.96551704e+00, 5., 7.79310322e+00, + 1.74827595e+01, 1.69310341e+01, 7.96551704e+00, 3.62068963e+00, + 1.71034489e+01, 6.96551704e+00, 3.96551728e+00, 6.65517235e+00, + 2.31379318e+01, 1.87586212e+01, 1.21034479e+01, 2.34482765e+00, + 9.65517223e-01, 1.55172420e+00, 1.68965518e+00, 1.68965518e+00, + 1.93103445e+00, 5.51724148e+00, 5.75862083e+01, 2.13448277e+01, + 1.65517235e+01, 1.04482756e+01, 6.17241383e+00, 7.93103456e+00, + 4.49655190e+01, 7.96896515e+01, 3.54137917e+01, 27., + 5.02758636e+01, 1.44827585e+01, 3.41379309e+00, 2.58275871e+01, + 1.43068970e+02, 1.04241379e+02, 4.44827604e+00, 1.21724138e+01, + 6.86206894e+01, 1.62758617e+01, 2.27586198e+00, 3.26896553e+01, + 1.46689651e+02, 5.62068977e+01, 1.38275862e+01, 7.20689678e+00, + 2.20689654e+00, 1.89655173e+00, 2.48275852e+00, 4.86206913e+00, + 6.82758617e+00, 4.68965530e+00, 7.94482727e+01, 8.63103485e+01, + 5.31724129e+01, 1.16206894e+01, 12., 1.31379309e+01, + 2.27241383e+01, 4.84482765e+01, 5.29655190e+01, 9.95862045e+01, + 1.49551727e+02, 2.76206894e+01, 4.48275852e+00, 1.37241383e+01, + 8.13448257e+01, 6.14482765e+01, 4., 4.84827576e+01, + 1.50379303e+02, 3.98275871e+01, 1.24137926e+00, 1.61034489e+01, + 9.09310379e+01, 2.38965511e+01, 2.51724148e+00, 1.65517247e+00, + 7.24137902e-01, 6.89655185e-01, 1.06896555e+00, 5.79310322e+00, + 1.04827585e+01, 3., 1.46206894e+01, 1.71379318e+01, + 1.27241383e+01, 4.48275852e+00, 6.72413778e+00, 1.13103447e+01, + 1.58275862e+01, 1.35862064e+01, 1.22068968e+01, 2.44482765e+01, + 6.05517235e+01, 1.13448277e+01, 7.17241383e+00, 1.64482765e+01, + 2.57241383e+01, 1.25862064e+01, 6.27586222e+00, 1.67241383e+01, + 6.61724167e+01, 1.35862064e+01, 4.10344839e+00, 9.89655209e+00, + 3.16206894e+01, 1.26896553e+01, 2.83333325e+00, 3.11111116e+00, + 2.14074078e+01, 7.51666641e+01, 1.91111107e+01, 3.29629636e+00, + 2.62962961e+00, 2.92592597e+00, 2.37037039e+00, 3.33333325e+00, + 6.69814835e+01, 1.10370369e+02, 1.27777777e+01, 2.05555558e+00, + 3.98148155e+00, 7.11111116e+00, 2.29629636e+00, 5.85185194e+00, + 9.72777786e+01, 9.39444427e+01, 5.37037039e+00, 1.98148143e+00, + 9.07407379e+00, 9.72222233e+00, 2.55555558e+00, 9.59259224e+00, + 9.50555573e+01, 3.31851845e+01, 2.53703713e+00, 2.27777767e+00, + 1.45925922e+01, 8.33333302e+00, 2.66666675e+00, 1.66666663e+00, + 2.65000000e+01, 1.20351852e+02, 3.52407417e+01, 2.25925922e+00, + 2.55555558e+00, 9., 6.09259272e+00, 3.37037039e+00, + 6.53888855e+01, 1.20240738e+02, 1.32222223e+01, 1.68518519e+00, + 7.46296310e+00, 3.24629631e+01, 7.96296310e+00, 4.24074078e+00, + 6.52222214e+01, 6.88703690e+01, 5.07407427e+00, 2.22222233e+00, + 3.71111107e+01, 7.44444427e+01, 3.87037039e+00, 4.25925922e+00, + 4.67037048e+01, 2.21481476e+01, 1.57407403e+00, 3.18518519e+00, + 7.72777786e+01, 5.84629631e+01, 9.14814854e+00, 1.94444442e+00, + 1.07407408e+01, 1.19981483e+02, 5.65925941e+01, 1.68518519e+00, + 1.94444442e+00, 2.25370369e+01, 3.02592602e+01, 3.07407403e+00, + 13., 6.89444427e+01, 1.13333330e+01, 1.50000000e+00, + 1.03148146e+01, 1.02388885e+02, 2.42037029e+01, 2.61111116e+00, + 1.21666670e+01, 3.25740738e+01, 3.42592597e+00, 1.40740740e+00, + 4.78333321e+01, 1.25962959e+02, 1.03518515e+01, 2.79629636e+00, + 1.16481485e+01, 1.46111107e+01, 1.59259260e+00, 5.64814806e+00, + 6.96481476e+01, 6.40370407e+01, 3.11111107e+01, 1.85185182e+00, + 2.61111116e+00, 5.79814796e+01, 4.85000000e+01, 1.09259260e+00, + 1.83333337e+00, 3.60555573e+01, 6.96851883e+01, 3.20370364e+00, + 2.85185194e+00, 2.54629631e+01, 1.04444447e+01, 8.14814806e-01, + 4.83333349e+00, 9.46851883e+01, 3.93703690e+01, 6.64814806e+00, + 4.90740728e+00, 1.31666670e+01, 4.48148155e+00, 1.70370376e+00, + 1.68518524e+01, 70., 1.32037039e+01, 8.07407379e+00, + 5.59259272e+00, 4.31481504e+00, 2.53703713e+00, 4.12962961e+00, + 2.03888893e+01, 2.22592602e+01, 5.40983629e+00, 8.91803265e+00, + 1.56721315e+01, 5.16393423e+00, 5.88524580e+00, 2.90655746e+01, + 7.41147537e+01, 9.80327892e+00, 4.78688526e+00, 1.09836063e+01, + 2.00327873e+01, 6.86885262e+00, 5.81967211e+00, 3.55737686e+01, + 8.84754105e+01, 5.90163946e+00, 4.72131157e+00, 1.25245905e+01, + 2.04426231e+01, 6.68852472e+00, 5.24590158e+00, 2.68852463e+01, + 4.68032799e+01, 6.36065578e+00, 3.75409842e+00, 12., + 1.37377052e+01, 4.86885262e+00, 4.31147528e+00, 8.60655785e+00, + 1.29672127e+01, 5.83606577e+00, 8.18032742e+00, 3.96393433e+01, + 116., 2.72786884e+01, 2.96721315e+00, 2.19344254e+01, + 9.13278656e+01, 2.50655746e+01, 5.31147528e+00, 6.39672127e+01, + 1.23540985e+02, 9.67213154e+00, 2.42622948e+00, 5.65409851e+01, + 1.17163933e+02, 1.12459021e+01, 3.91803288e+00, 6.85737686e+01, + 1.01475410e+02, 5.08196735e+00, 4.91803265e+00, 1.04622948e+02, + 1.22983604e+02, 6.03278685e+00, 4.36065578e+00, 2.93934422e+01, + 3.01475410e+01, 5., 6.29508209e+00, 9.75901642e+01, + 9.19508209e+01, 6.55737686e+00, 6.96721315e+00, 1.88852463e+01, + 6.40163956e+01, 1.78688526e+01, 2.67213106e+00, 1.82459011e+01, + 3.63934441e+01, 1.47704916e+01, 4.75409842e+00, 4.68032799e+01, + 9.25901642e+01, 6.83606577e+00, 4.40983629e+00, 3.34098358e+01, + 4.74262314e+01, 1.20819674e+01, 3.96721315e+00, 9.60163956e+01, + 1.06573769e+02, 5.06557369e+00, 8.22950840e+00, 3.74754105e+01, + 3.52950821e+01, 5.54098368e+00, 6.24590158e+00, 1.03885246e+02, + 8.40655746e+01, 5.86885262e+00, 8.37704945e+00, 5.80655746e+01, + 3.22459030e+01, 2.54098368e+00, 7.32786894e+00, 3.75409842e+00, + 2.90163946e+00, 2.29508185e+00, 1.93442619e+00, 1.02786884e+01, + 2.39508190e+01, 1.83606548e+01, 4.08196735e+00, 5.11475420e+00, + 5.42622948e+00, 4.42622948e+00, 6.40983629e+00, 2.52622948e+01, + 3.43934441e+01, 1.17213116e+01, 2.80327868e+00, 5.72131157e+00, + 6.24590158e+00, 4.98360634e+00, 1.25737705e+01, 3.38524590e+01, + 2.80327873e+01, 5.44262314e+00, 5.93442631e+00, 3.21311493e+01, + 1.40163937e+01, 2.85245895e+00, 1.11803274e+01, 2.12786884e+01, + 1.79344254e+01, 2.88524580e+00, 1.56216221e+01, 7.19594574e+01, + 5.97702713e+01, 1.39729729e+01, 3.10810804e+00, 2.37837839e+00, + 2.28378367e+00, 3.70270276e+00, 2.43513508e+01, 6.54594574e+01, + 4.93513527e+01, 1.21891890e+01, 5.09459448e+00, 5.44594574e+00, + 6.60810804e+00, 8.24324322e+00, 1.98783779e+01, 3.31216202e+01, + 2.34054050e+01, 1.00270271e+01, 8.95945930e+00, 1.07567568e+01, + 1.09459457e+01, 1.12567568e+01, 9.55405426e+00, 1.09729729e+01, + 7.78378391e+00, 4.48648643e+00, 4.67567587e+00, 6.21621609e+00, + 6.67567587e+00, 7.33783770e+00, 5.91216202e+01, 1.18918922e+02, + 5.77162170e+01, 2.00405407e+01, 1.12162161e+01, 1.46081085e+01, + 3.95945954e+00, 4.22972965e+00, 5.39729729e+01, 1.16783783e+02, + 7.09729767e+01, 1.25810814e+01, 5.29729748e+00, 4.51351357e+00, + 3.75675678e+00, 8.85135174e+00, 5.15540543e+01, 9.99189224e+01, + 4.25810814e+01, 8.60810852e+00, 6.32432413e+00, 6.54054070e+00, + 8.28378391e+00, 1.45405407e+01, 1.99729729e+01, 2.60540543e+01, + 1.30270271e+01, 5.58108091e+00, 5.50000000e+00, 5.64864874e+00, + 7.36486483e+00, 1.13108110e+01, 1.16635132e+02, 9.64054031e+01, + 1.47567568e+01, 1.47702703e+01, 3.19459457e+01, 2.77432442e+01, + 7.35135126e+00, 1.51891890e+01, 8.26756744e+01, 1.01256760e+02, + 4.81486473e+01, 1.74324322e+01, 2.58648643e+01, 1.95945950e+01, + 1.44729729e+01, 1.69459457e+01, 8.88783798e+01, 1.14581078e+02, + 3.31351357e+01, 6.05405426e+00, 2.51351357e+00, 3.44594598e+00, + 1.00540543e+01, 2.13513508e+01, 3.51756744e+01, 3.99459457e+01, + 1.04189186e+01, 3.28378367e+00, 2.43243241e+00, 2.40540552e+00, + 5.98648643e+00, 1.41621618e+01, 1.17905403e+02, 4.66891899e+01, + 1.47162161e+01, 1.98243237e+01, 5.17297287e+01, 1.92027035e+01, + 9.08108139e+00, 3.82837830e+01, 8.96756744e+01, 5.87837830e+01, + 3.99324341e+01, 1.99594593e+01, 4.29729729e+01, 2.45000000e+01, + 2.32027035e+01, 3.38918915e+01, 9.04594574e+01, 8.02162170e+01, + 2.07027035e+01, 5.59459448e+00, 6.67567587e+00, 7.08108091e+00, + 1.41081085e+01, 3.32162170e+01, 4.48918915e+01, 3.46621628e+01, + 4.33783770e+00, 1.05405402e+00, 8.37837815e-01, 1.01351357e+00, + 4.68918896e+00, 1.48513517e+01, 1.09142857e+01, 2.64857140e+01, + 1.67999992e+01, 4.54285717e+00, 2.22857141e+00, 5.27142868e+01, + 2.14285717e+01, 1.57142854e+00, 8.60000038e+00, 4.27999992e+01, + 3.61428566e+01, 1.20857143e+01, 2.79999995e+00, 6.40000010e+00, + 5.28571415e+00, 1.77142859e+00, 4.51428556e+00, 3.12571430e+01, + 4.50285721e+01, 2.17999992e+01, 4.34285736e+00, 2.62857151e+00, + 3.11428571e+00, 2.79999995e+00, 1.22857141e+00, 9.45714283e+00, + 3.11714287e+01, 2.41428566e+01, 7.59999990e+00, 3.40000010e+00, + 8.94285679e+00, 7.62857151e+00, 3.08571434e+00, 1.04914284e+02, + 8.62285690e+01, 2.37142849e+00, 2.85714293e+00, 1.21742859e+02, + 9.50285721e+01, 2.17142868e+00, 4.54285717e+00, 5.04000015e+01, + 8.54000015e+01, 5.19999981e+00, 3., 8.59142838e+01, + 1.35828568e+02, 5.85714293e+00, 3.25714278e+00, 2.26000004e+01, + 7.91999969e+01, 16., 2.57142854e+00, 2.30285721e+01, + 1.31742859e+02, 2.99142857e+01, 2.20000005e+00, 7.68571424e+00, + 7.14857178e+01, 4.19714279e+01, 2.59999990e+00, 3.74285722e+00, + 1.21114288e+02, 8.36857147e+01, 1.68571424e+00, 6.98285751e+01, + 8.36571426e+01, 2.85714293e+00, 6.42857122e+00, 2.12857151e+01, + 1.92285709e+01, 5.68571424e+00, 2.25714278e+00, 7.61999969e+01, + 1.34314285e+02, 4.68571424e+00, 3.42857146e+00, 2.53999996e+01, + 6.25142860e+01, 8.37142849e+00, 3.20000005e+00, 2.41428566e+01, + 1.33742859e+02, 2.78857136e+01, 2.25714278e+00, 1.30571432e+01, + 8.33714294e+01, 1.69428577e+01, 4.37142849e+00, 5.57142878e+00, + 1.22771431e+02, 6.07714272e+01, 1.62857139e+00, 3.71428561e+00, + 3.88285713e+01, 2.23999996e+01, 7.14285731e-01, 5.71428597e-01, + 8.57142866e-01, 9.42857146e-01, 3.28571439e+00, 1.92857151e+01, + 2.04285717e+01, 4.57142878e+00, 1.17142856e+00, 9.71428573e-01, + 3.14285707e+00, 1.05714285e+00, 2.48571420e+00, 2.03428574e+01, + 3.20571442e+01, 7.94285727e+00, 2.34285712e+00, 1.34285712e+00, + 6.17142868e+00, 1.34285712e+00, 1.82857144e+00, 1.15714283e+01, + 3.00857143e+01, 1.41714287e+01, 3.57142854e+00, 1., + 2.37142849e+00, 8.57142866e-01, 9.14285719e-01, 4.42857122e+00, + 1.84857140e+01, 1.62285709e+01, 7.57575750e+00, 2.83333325e+00, + 4.51515150e+00, 2.23787880e+01, 6.30303049e+00, 4.27272749e+00, + 7.62121201e+00, 2.93333340e+01, 1.30757580e+01, 1.62121212e+00, + 6.77272749e+00, 4.33181801e+01, 7.09090900e+00, 2.45454550e+00, + 2.05606060e+01, 1.32757568e+02, 9.46969700e+00, 1.53030300e+00, + 1.20606060e+01, 1.01378784e+02, 1.26515150e+01, 4.87878799e+00, + 2.93181820e+01, 1.22287880e+02, 4.81818199e+00, 3.69696975e+00, + 2.28939400e+01, 1.12303032e+02, 1.38484850e+01, 5.78787899e+00, + 1.08484850e+01, 3.33939400e+01, 1.22424240e+01, 2.09090900e+00, + 8.36363602e+00, 4.61969681e+01, 6.33333349e+00, 2.18181825e+00, + 2.34242420e+01, 1.37500000e+02, 1.09090910e+01, 9.24242437e-01, + 1.84545460e+01, 1.27848488e+02, 9.13636398e+00, 1.37878788e+00, + 2.26212120e+01, 1.33666672e+02, 7.43939400e+00, 2.10606050e+00, + 3.02575760e+01, 1.42727280e+02, 1.48636360e+01, 2.03030300e+00, + 1.20606060e+01, 6.62727280e+01, 6.57575750e+00, 4.12121201e+00, + 1.56060610e+01, 5.39848480e+01, 9.12121201e+00, 3.84848475e+00, + 9.98484802e+00, 3.50606079e+01, 1.46666670e+01, 6.30303049e+00, + 1.83939400e+01, 112., 1.30757580e+01, 2.34848475e+00, + 1.49090910e+01, 1.12803032e+02, 7.93939400e+00, 1.98484850e+00, + 2.37878780e+01, 1.40833328e+02, 1.60454540e+01, 1.62121212e+00, + 1.08181820e+01, 6.82878799e+01, 9.07575798e+00, 4.98484850e+00, + 1.17878790e+01, 6.64848480e+01, 1.02424240e+01, 3.78787875e+00, + 1.05909090e+01, 5.44848480e+01, 4.92424250e+00, 4.54545450e+00, + 5.90909100e+00, 8.77272701e+00, 6.43939400e+00, 4.37878799e+00, + 6.43939400e+00, 13., 7.57575750e+00, 4.89393950e+00, + 1.39696970e+01, 1.11333336e+02, 2.25151520e+01, 4.10606050e+00, + 7.06060600e+00, 3.15454540e+01, 8.66666698e+00, 3.59090900e+00, + 7.53030300e+00, 4.76818199e+01, 1.22575760e+01, 4.31818199e+00, + 9.36363602e+00, 3.86666679e+01, 5.25757599e+00, 4.54545450e+00, + 6.07575750e+00, 8.42424202e+00, 6.69696951e+00, 4.80303049e+00, + 6.18181801e+00, 1.40606060e+01, 3.60606050e+00, 3.18181825e+00, + 3.75757575e+00, 4.36363649e+00, 4.03030300e+00, 4.22727251e+00, + 3.93939400e+00, 4.28787899e+00, 1.61538458e+00, 2.23076916e+00, + 2.56923079e+00, 1.77846146e+01, 4.87230759e+01, 1.17384615e+01, + 2.55384612e+00, 1.44615388e+00, 1.26461535e+01, 3.04615378e+00, + 1.90769231e+00, 3.48307686e+01, 1.24415382e+02, 1.96307697e+01, + 3.55384612e+00, 6.32307673e+00, 5.03230782e+01, 7.40000010e+00, + 9.84615386e-01, 3.77538452e+01, 1.03676926e+02, 6.24615383e+00, + 2.53846145e+00, 1.79692307e+01, 9.34000015e+01, 1.54461536e+01, + 1.35384619e+00, 5.56923056e+00, 8.55384636e+00, 1.39999998e+00, + 8.92307699e-01, 3.37230759e+01, 3., 3.55384612e+00, + 3.93846154e+00, 1.23538465e+01, 5.55846138e+01, 2.60461540e+01, + 4.33846140e+00, 2.50769234e+00, 1.68461533e+01, 7.03076935e+00, + 2.81538463e+00, 1.36000004e+01, 1.26969231e+02, 6.74153824e+01, + 4.56923056e+00, 5.92307711e+00, 5.66307678e+01, 2.06307697e+01, + 1.36923075e+00, 1.23076925e+01, 1.14123077e+02, 3.74153862e+01, + 2.07692313e+00, 8.92307663e+00, 1.04569229e+02, 5.67384605e+01, + 2.95384622e+00, 2.41538453e+00, 9.16923046e+00, 3.95384622e+00, + 8.61538470e-01, 9.46153831e+00, 2.83076930e+00, 4.64615393e+00, + 4.04615402e+00, 7.36923075e+00, 4.24615402e+01, 3.51538467e+01, + 6.69230747e+00, 2.61538458e+00, 1.10153847e+01, 8.18461514e+00, + 3.20000005e+00, 7.69230747e+00, 1.18446152e+02, 1.03584618e+02, + 8.04615402e+00, 4.55384636e+00, 2.80461540e+01, 2.37230778e+01, + 1.52307689e+00, 2.59999990e+00, 1.18230766e+02, 1.15569229e+02, + 3.92307687e+00, 4.50769234e+00, 6.69230804e+01, 8.55076904e+01, + 5.09230757e+00, 1.13846159e+00, 1.39384613e+01, 1.66769238e+01, + 1.69230771e+00, 2.35384607e+00, 2.50769234e+00, 3.40000010e+00, + 3.40000010e+00, 4.61538458e+00, 2.35538464e+01, 3.06461544e+01, + 6.61538458e+00, 2.63076925e+00, 3.86153841e+00, 5.67692327e+00, + 4.16923094e+00, 5.73846149e+00, 5.87230759e+01, 8.48000031e+01, + 1.09846153e+01, 3.47692299e+00, 8.01538467e+00, 1.39230766e+01, + 2.26153851e+00, 1.90769231e+00, 8.35846176e+01, 1.29215378e+02, + 9.44615364e+00, 2.53846145e+00, 1.45692310e+01, 4.47076912e+01, + 5.41538477e+00, 7.53846169e-01, 2.03538456e+01, 7.54461517e+01, + 8.75384617e+00, 1.93846154e+00, 1.05555558e+00, 1.23888893e+01, + 8.28333359e+01, 1.20833330e+01, 1.02777779e+00, 1.07222223e+01, + 1.38444443e+02, 3.29444427e+01, 1.19444447e+01, 2.09444447e+01, + 7.78333359e+01, 2.06388893e+01, 9.22222233e+00, 3.20277786e+01, + 138., 4.30555573e+01, 2.42777786e+01, 2.45555553e+01, + 4.62777786e+01, 2.28333340e+01, 1.95000000e+01, 3.58888893e+01, + 9.16388855e+01, 5.69722214e+01, 1.34166670e+01, 1.28888893e+01, + 1.30833330e+01, 1.35277777e+01, 1.19444447e+01, 1.86111107e+01, + 3.33333321e+01, 3.45277786e+01, 3.22222233e+00, 2.01666660e+01, + 1.42694443e+02, 3.17777786e+01, 7.22222209e-01, 7.80555534e+00, + 8.18611145e+01, 2.59166660e+01, 8.77777767e+00, 5.78055573e+01, + 1.40111115e+02, 4.02500000e+01, 5.33333349e+00, 2.12777786e+01, + 7.55277786e+01, 1.94444447e+01, 1.81388893e+01, 1.11166664e+02, + 1.23944443e+02, 2.37500000e+01, 14., 3.57222214e+01, + 4.57222214e+01, 1.08333330e+01, 1.11111107e+01, 7.25833359e+01, + 8.58055573e+01, 1.50555553e+01, 1.03055553e+01, 2.68055553e+01, + 3.08611107e+01, 8.30555534e+00, 3.55555558e+00, 3.19444442e+00, + 2.85833340e+01, 8.05555534e+00, 1.16666663e+00, 6.38888884e+00, + 4.36666679e+01, 1.94166660e+01, 5.44444466e+00, 1.08055553e+01, + 2.32222214e+01, 5.75000000e+00, 2.25000000e+00, 21., + 5.01666679e+01, 1.61944447e+01, 7.75000000e+00, 5.09166679e+01, + 4.12222214e+01, 4.05555534e+00, 3.72222233e+00, 3.03333340e+01, + 4.41111107e+01, 7.83333349e+00, 4.69444466e+00, 5.63333321e+01, + 8.67500000e+01, 4.16666651e+00, 1.91666663e+00, 1.67777786e+01, + 3.81666679e+01, 8.13888931e+00, 1.50000000e+00, 6.66666687e-01, + 3.88888896e-01, 2.50000000e-01, 3.33333343e-01, 1.33333337e+00, + 6.61111116e+00, 4.55555534e+00, 1.58333337e+00, 8.88888896e-01, + 9.72222209e-01, 7.77777791e-01, 6.11111104e-01, 4.33333349e+00, + 9.16666698e+00, 3.36111116e+00, 8.05555582e-01, 8.05555582e-01, + 9.72222209e-01, 7.77777791e-01, 9.44444418e-01, 6.66666651e+00, + 1.35555553e+01, 3.02777767e+00, 5.55555582e-01, 2.02777767e+00, + 4.36111116e+00, 3.61111104e-01, 5.00000000e-01, 4.66666651e+00, + 1.42500000e+01, 3.08333325e+00, 2.35517235e+01, 4.54482765e+01, + 1.23908043e+01, 7.31034470e+00, 2.18735638e+01, 4.52758636e+01, + 9.71264362e+00, 7.94252872e+00, 3.72298851e+01, 6.84252853e+01, + 1.38965521e+01, 9.16091919e+00, 2.21034489e+01, 4.02873573e+01, + 1.24597702e+01, 9.85057449e+00, 2.48965511e+01, 2.60574703e+01, + 9.78160954e+00, 1.52643681e+01, 2.06321831e+01, 1.52758617e+01, + 1.75747128e+01, 1.35517244e+01, 9.80459785e+00, 6.86206913e+00, + 7.45977020e+00, 8.39080429e+00, 1.13678160e+01, 1.24942532e+01, + 1.47126436e+01, 1.07586203e+01, 2.93448277e+01, 5.52413788e+01, + 1.90459766e+01, 1.32873564e+01, 4.40229874e+01, 7.57126465e+01, + 1.83218384e+01, 1.30919542e+01, 6.11954041e+01, 1.01758621e+02, + 2.15862064e+01, 1.19080458e+01, 4.97931023e+01, 8.78275833e+01, + 1.49195404e+01, 1.09425287e+01, 6.30229874e+01, 8.77931061e+01, + 1.51839085e+01, 1.38620691e+01, 3.57126427e+01, 4.51034470e+01, + 2.00459766e+01, 1.60229893e+01, 1.86206894e+01, 1.75172405e+01, + 1.22183905e+01, 1.37471266e+01, 1.98275871e+01, 1.98620682e+01, + 2.08965511e+01, 1.48045979e+01, 2.26091957e+01, 4.26781616e+01, + 1.85747128e+01, 1.24022989e+01, 4.69080467e+01, 8.31954041e+01, + 1.92873554e+01, 1.18850574e+01, 6.31379318e+01, 9.34827576e+01, + 1.13678160e+01, 1.01839085e+01, 6.41839066e+01, 1.02218391e+02, + 1.50574713e+01, 9.55172443e+00, 7.67931061e+01, 1.08655174e+02, + 1.33563223e+01, 1.08160915e+01, 5.10574722e+01, 8.62528763e+01, + 1.17816095e+01, 8.22988510e+00, 3.25057487e+01, 5.61494255e+01, + 1.45747128e+01, 1.35632181e+01, 2.07011490e+01, 2.32528744e+01, + 1.76206894e+01, 1.27471266e+01, 1.53793106e+01, 2.56781616e+01, + 1.80114937e+01, 1.14252872e+01, 2.58045979e+01, 5.10229874e+01, + 1.65287361e+01, 1.04367819e+01, 4.14482765e+01, 7.31264343e+01, + 1.48390808e+01, 9.87356281e+00, 5.63448257e+01, 9.75057449e+01, + 1.43448277e+01, 9.78160954e+00, 4.89425278e+01, 9.27011490e+01, + 1.28045979e+01, 1.01264372e+01, 4.57356339e+01, 9.43333359e+01, + 1.49080458e+01, 6.56321859e+00, 3.73678169e+01, 8.01264343e+01, + 1.63563213e+01, 7.59770107e+00, 1.90114937e+01, 4.10919533e+01, + 1.44367819e+01, 7.55172396e+00, 1.86301365e+01, 1.12739725e+01, + 1.48219175e+01, 2.62739735e+01, 3.12191772e+01, 2.05479450e+01, + 3.20684929e+01, 3.46301384e+01, 2.97808228e+01, 1.66575336e+01, + 1.76164379e+01, 2.79726028e+01, 4.10821915e+01, 3.67260284e+01, + 6.04657516e+01, 6.02739716e+01, 2.01643829e+01, 1.14246578e+01, + 1.61780815e+01, 2.89315071e+01, 4.87397270e+01, 5.42602730e+01, + 5.82054787e+01, 3.91369858e+01, 1.49589043e+01, 9.79452038e+00, + 1.18493147e+01, 1.92739735e+01, 3.22739716e+01, 4.90273972e+01, + 5.30958900e+01, 35., 2.99178085e+01, 1.62465744e+01, + 2.30136986e+01, 3.16712322e+01, 3.16164379e+01, 2.90410957e+01, + 5.54794502e+01, 6.24109573e+01, 4.26986313e+01, 2.66986294e+01, + 3.90547943e+01, 4.86164398e+01, 5.63424644e+01, 5.02739716e+01, + 7.73698654e+01, 7.61232910e+01, 3.10410957e+01, 2.35753422e+01, + 3.34931488e+01, 4.88630142e+01, 6.40273972e+01, 6.34520531e+01, + 8.03835602e+01, 6.09863014e+01, 2.07123280e+01, 1.67260265e+01, + 1.93835621e+01, 2.96027393e+01, 4.14657516e+01, 55., + 6.91232910e+01, 4.81643829e+01, 2.71643829e+01, 2.06712322e+01, + 2.58630142e+01, 3.36438370e+01, 3.29726028e+01, 3.61917801e+01, + 4.99863014e+01, 4.70958900e+01, 3.93150673e+01, 2.85616436e+01, + 3.47534256e+01, 4.59863014e+01, 5.32465744e+01, 5.46164398e+01, + 6.80958939e+01, 6.66712341e+01, 3.45890427e+01, 2.52328758e+01, + 2.83972607e+01, 3.70958900e+01, 4.93972588e+01, 6.31917801e+01, + 7.56438370e+01, 6.43287659e+01, 2.48082199e+01, 2.15068493e+01, + 2.05068493e+01, 2.88493156e+01, 4.23835602e+01, 5.92465744e+01, + 5.55479469e+01, 3.73287659e+01, 2.89315071e+01, 2.79863014e+01, + 1.95479450e+01, 2.42739735e+01, 2.85205479e+01, 3.39863014e+01, + 4.07534256e+01, 3.12328758e+01, 3.82739716e+01, 2.97397251e+01, + 2.67534256e+01, 2.79589043e+01, 3.55205498e+01, 4.58356171e+01, + 6.27123299e+01, 5.93561630e+01, 2.92328758e+01, 2.05479450e+01, + 2.45753422e+01, 2.72328758e+01, 4.26164398e+01, 5.20410957e+01, + 6.37945213e+01, 5.86986313e+01, 1.76164379e+01, 1.15205479e+01, + 1.92465744e+01, 4.68082199e+01, 4.77671242e+01, 4.57397270e+01, + 4.81780815e+01, 5.03698616e+01, 6.53191471e+00, 8.45531921e+01, + 1.10574471e+02, 1.56170216e+01, 5.63829803e+00, 47., + 6.38510628e+01, 1.36595745e+01, 1.16382980e+01, 9.83617020e+01, + 1.27510635e+02, 3.26808510e+01, 1.14680853e+01, 42., + 7.01276627e+01, 1.89787235e+01, 1.06808510e+01, 5.09361687e+01, + 1.28063828e+02, 9.73829803e+01, 2.78510647e+01, 3.98510628e+01, + 7.01702118e+01, 2.45744686e+01, 9.19148922e+00, 5.53191490e+01, + 1.09404259e+02, 5.06170197e+01, 1.05744677e+01, 3.37872353e+01, + 6.79361725e+01, 2.08723412e+01, 1.01063833e+01, 3.17021275e+01, + 4.73617020e+01, 1.27021275e+01, 6.21276617e+00, 5.50212784e+01, + 8.08297882e+01, 1.62340431e+01, 9.12765980e+00, 5.08723412e+01, + 8.01489334e+01, 2.35319157e+01, 1.03829784e+01, 6.59148941e+01, + 1.10872337e+02, 2.16595745e+01, 9.82978725e+00, 2.77872334e+01, + 8.11063843e+01, 4.82553177e+01, 1.31063833e+01, 4.68297882e+01, + 1.06234039e+02, 3.74255333e+01, 7.85106373e+00, 3.16382980e+01, + 6.05106392e+01, 2.56382980e+01, 8.48936176e+00, 4.85106392e+01, + 8.90851059e+01, 2.26595745e+01, 1.01489363e+01, 13., + 1.25106382e+01, 1.23404255e+01, 1.01489363e+01, 1.13191490e+01, + 9.82978725e+00, 8.21276569e+00, 1.15106382e+01, 1.77659569e+01, + 1.95531921e+01, 1.90212765e+01, 1.41489363e+01, 1.87872334e+01, + 1.80851059e+01, 9.29787254e+00, 9.25531960e+00, 1.50851068e+01, + 1.81489353e+01, 2.15744686e+01, 1.75957451e+01, 1.97234039e+01, + 2.17872334e+01, 8.70212746e+00, 6.87234020e+00, 1.48085108e+01, + 1.59361706e+01, 1.67234039e+01, 1.30212765e+01, 1.84042549e+01, + 1.67446804e+01, 6.42553186e+00, 2.21276593e+00, 2.08510637e+00, + 2.10638309e+00, 3.23404264e+00, 3.89361691e+00, 1.59574473e+00, + 1.23404253e+00, 1.46808505e+00, 2.25531912e+00, 3.02127671e+00, + 4.12765980e+00, 5.61702108e+00, 4.72340441e+00, 2.12765956e+00, + 1.27659571e+00, 1.40425527e+00, 1.89361703e+00, 3.29787230e+00, + 4.70212746e+00, 4.76595736e+00, 3.95744681e+00, 3.23404264e+00, + 2.29787230e+00, 1.40425527e+00, 1.65957451e+00, 1.63829792e+00, + 1.89361703e+00, 2.46808505e+00, 3.63829780e+00, 5.04255342e+00, + 3.25531912e+00, 1.93617022e+00, 4.71142845e+01, 1.20599998e+02, + 6., 8.28571439e-01, 1.13999996e+01, 5.93142853e+01, + 7.91428566e+00, 3., 3.84571419e+01, 9.65428543e+01, + 9.39999962e+00, 6.40000010e+00, 4.21142845e+01, 1.22285713e+02, + 2.04571438e+01, 4.65714264e+00, 1.33142853e+01, 4.77714272e+01, + 2.21714287e+01, 6.97142839e+00, 2.51428566e+01, 9.57142868e+01, + 6.27428589e+01, 1.36000004e+01, 6.45714283e+00, 2.42857151e+01, + 1.41428576e+01, 1.68571424e+00, 4.22857141e+00, 3.40857124e+01, + 3.41714287e+01, 7.40000010e+00, 4.89714279e+01, 7.33428574e+01, + 4.31428576e+00, 3.94285703e+00, 2.70285721e+01, 4.49428558e+01, + 1.16000004e+01, 1.18000002e+01, 9.63428574e+01, 1.06657143e+02, + 1.67428570e+01, 2.49428577e+01, 3.33142853e+01, 6.39142876e+01, + 1.93714294e+01, 2.50571423e+01, 1.84571438e+01, 3.10857143e+01, + 2.10571423e+01, 2.83999996e+01, 3.18285713e+01, 8.91714249e+01, + 8.89142838e+01, 2.68857136e+01, 8.94285679e+00, 2.25428562e+01, + 1.30285711e+01, 5.82857132e+00, 2.59428577e+01, 9.57714310e+01, + 5.06285706e+01, 9.94285679e+00, 4.65999985e+01, 1.94571438e+01, + 3.31428576e+00, 5.48571444e+00, 2.95142860e+01, 2.66571426e+01, + 6.02857161e+00, 1.24285717e+01, 1.19257141e+02, 8.20285721e+01, + 1.22857141e+01, 1.24571428e+01, 3.38857155e+01, 3.15428562e+01, + 9.62857151e+00, 2.88571434e+01, 3.64571419e+01, 4.48857155e+01, + 2.69428577e+01, 2.41428566e+01, 3.31428566e+01, 2.59428577e+01, + 1.71142864e+01, 1.46857147e+01, 9.08571434e+00, 1.35714283e+01, + 1.37428570e+01, 1.35714283e+01, 3.72571411e+01, 4.66285706e+01, + 9.37142849e+00, 6., 1.60857143e+01, 1.38571424e+01, 3., + 3.37142849e+00, 1.39142857e+01, 2.19714279e+01, 5.48571444e+00, + 5.42857122e+00, 6.08285713e+01, 9.26285706e+01, 5.25714302e+00, + 4.40000010e+00, 2.20571423e+01, 3.94857140e+01, 7.22857141e+00, + 3.91428566e+00, 2.46285706e+01, 8.57142868e+01, 1.97714291e+01, + 7.02857161e+00, 2.19428577e+01, 3.65142860e+01, 8.22857189e+00, + 3.77142859e+00, 6.02857161e+00, 2.31428566e+01, 1.69428577e+01, + 7.31428576e+00, 1.59714289e+01, 2.42000008e+01, 8.34285736e+00, + 4.42857122e+00, 6.62500000e+00, 3.67187500e+00, 4.95312500e+00, + 1.03437500e+01, 9.26562500e+00, 1.14687500e+01, 6.56250000e+00, + 2.46875000e+00, 5.79687500e+00, 3.29687500e+00, 1.05468750e+01, + 2.00625000e+01, 1.65000000e+01, 2.09687500e+01, 1.67812500e+01, + 4.87500000e+00, 8., 3.09375000e+00, 1.37500000e+01, + 2.15781250e+01, 1.92031250e+01, 2.39062500e+01, 2.06875000e+01, + 1.21875000e+01, 5.62500000e+00, 3., 1.12968750e+01, + 1.22812500e+01, 8.25000000e+00, 1.32968750e+01, 2.77343750e+01, + 2.26718750e+01, 7.54687500e+00, 4.46875000e+00, 9.42187500e+00, + 2.53125000e+01, 1.63437500e+01, 7.20312500e+00, 4.01562500e+00, + 2.60937500e+00, 7.57812500e+00, 4.90625000e+00, 1.85781250e+01, + 3.71875000e+01, 2.03125000e+01, 8.28125000e+00, 8.95312500e+00, + 1.81718750e+01, 8.76562500e+00, 3.57812500e+00, 1.97343750e+01, + 4.36875000e+01, 1.79687500e+01, 1.65468750e+01, 5.38750000e+01, + 1.20968750e+02, 3.93750000e+00, 2.43750000e+00, 6.15468750e+01, + 8.55156250e+01, 1.11562500e+01, 2.27812500e+01, 1.07140625e+02, + 1.20328125e+02, 6.10937500e+00, 2.79687500e+00, 9.20312500e+00, + 3.07656250e+01, 2.15000000e+01, 7.09375000e+00, 5.81250000e+00, + 6.10937500e+00, 4.09843750e+01, 3.64062500e+00, 1.12343750e+01, + 4.99843750e+01, 1.92343750e+01, 4.64062500e+00, 1.04062500e+01, + 1.24562500e+02, 2.35625000e+01, 2.67187500e+00, 3.28125000e+01, + 1.34875000e+02, 2.56875000e+01, 4.12500000e+00, 3.41406250e+01, + 1.34828125e+02, 1.02031250e+01, 4.84375000e+00, 6.40781250e+01, + 1.23609375e+02, 7.62500000e+00, 8.71875000e+00, 3.26250000e+01, + 4.55312500e+01, 2.68281250e+01, 1.67187500e+00, 5.82812500e+00, + 2.17343750e+01, 1.74218750e+01, 4.39062500e+00, 2.87500000e+00, + 3.08125000e+01, 9.23906250e+01, 2.32812500e+00, 4.64062500e+00, + 1.06125000e+02, 6.51562500e+01, 2.82812500e+00, 4.71875000e+00, + 1.27781250e+02, 2.21875000e+01, 4.68750000e+00, 9.07812500e+00, + 1.26218750e+02, 5.17187500e+01, 2.79687500e+00, 1.08750000e+01, + 4.89062500e+01, 1.90937500e+01, 4.71875000e+00, 4.09375000e+00, + 1.09218750e+01, 1.95312500e+00, 4.37500000e+00, 2.20312500e+01, + 3.28906250e+01, 3.21311474e+00, 9.96721268e+00, 2.35737705e+01, + 9.36065578e+00, 5.40983629e+00, 4.82131157e+01, 1.30754105e+02, + 2.68524590e+01, 5.95081949e+00, 5.06557369e+00, 1.36721315e+01, + 1.10655737e+01, 4.29508209e+00, 1.17704916e+01, 1.45213120e+02, + 1.19262299e+02, 1.56557379e+01, 2.63934422e+00, 4.16393423e+00, + 7.67213106e+00, 4.03278685e+00, 5.04918051e+00, 1.22262299e+02, + 1.57065567e+02, 2.47049179e+01, 5.14754105e+00, 3.18032789e+00, + 6.59016371e+00, 5.98360634e+00, 6.90163946e+00, 5.07704926e+01, + 1.25770493e+02, 5.73770475e+00, 4.83606577e+00, 4.19672108e+00, + 2.78688526e+00, 4.22950840e+00, 4.42786903e+01, 1.47098358e+02, + 5.14754105e+01, 1.13606558e+01, 4.42622948e+00, 4.57377052e+00, + 4.72131157e+00, 4.57377052e+00, 2.04098358e+01, 1.51344269e+02, + 1.28229507e+02, 1.51147537e+01, 7.06557369e+00, 6.34426212e+00, + 9.42622948e+00, 9.16393471e+00, 1.80163937e+01, 1.13737701e+02, + 1.21081970e+02, 1.32131147e+01, 7.31147528e+00, 6.83606577e+00, + 9.78688526e+00, 1.05245905e+01, 1.49016390e+01, 4.48688507e+01, + 5.34590149e+01, 6.86885262e+00, 4.26229525e+00, 5.49180317e+00, + 5.81967211e+00, 5.50819683e+00, 1.45409832e+01, 5.00491791e+01, + 2.99508190e+01, 1.22459021e+01, 6.40983629e+00, 7.75409842e+00, + 9.52459049e+00, 7.62295103e+00, 1.46229506e+01, 4.63934441e+01, + 3.82950821e+01, 1.33770494e+01, 7.59016371e+00, 7.70491791e+00, + 9.91803265e+00, 1.16065578e+01, 1.39836063e+01, 2.91967220e+01, + 2.57868843e+01, 9.50819683e+00, 7.78688526e+00, 7., + 8.67213154e+00, 1.05409832e+01, 1.08524590e+01, 1.69180336e+01, + 1.71147537e+01, 8.03278685e-01, 3.27868849e-01, 4.09836054e-01, + 7.86885262e-01, 8.19672108e-01, 1.37704921e+00, 2.26229501e+00, + 1.78688526e+00, 1.67213118e+00, 6.55737698e-01, 6.55737698e-01, + 8.52459013e-01, 1.55737710e+00, 1.63934422e+00, 1.70491803e+00, + 2.16393447e+00, 1.22950816e+00, 7.04918027e-01, 8.03278685e-01, + 1.06557381e+00, 2.27868843e+00, 1.18032789e+00, 1.24590158e+00, + 1.36065578e+00, 1.57377052e+00, 1.39344263e+00, 7.21311450e-01, + 1.03278685e+00, 1.34426224e+00, 9.18032765e-01, 1.01639342e+00, + 1.31147540e+00, 2.32608700e+00, 1.36956525e+00, 1.71739125e+00, + 2.56521749e+00, 4.39130449e+00, 1.10217390e+01, 1.13260870e+01, + 3.41304350e+00, 1.45000000e+01, 6.69565201e+00, 3.36956525e+00, + 6.73913050e+00, 1.69782600e+01, 1.65434780e+01, 1.93260860e+01, + 1.42391300e+01, 9.43913040e+01, 1.91739140e+01, 3.78260875e+00, + 1.21086960e+01, 2.98478260e+01, 1.43695650e+01, 1.62391300e+01, + 6.80434799e+01, 5.88478279e+01, 4.63043499e+00, 4.78260851e+00, + 3.47391319e+01, 7.17608719e+01, 1.67608700e+01, 1.26304350e+01, + 4.81956520e+01, 3.39130425e+00, 2.45652175e+00, 2.93478251e+00, + 4.47826099e+00, 4.52173901e+00, 5.65217400e+00, 5.86956501e+00, + 4.54347849e+00, 2.44130440e+01, 7.65217400e+00, 5.65217400e+00, + 1.55434780e+01, 2.74782600e+01, 1.28478260e+01, 1.34347830e+01, + 2.09130440e+01, 1.31152176e+02, 6.19565201e+00, 2.58695650e+00, + 2.48043480e+01, 5.13478279e+01, 9.97826099e+00, 1.01086960e+01, + 1.10847824e+02, 6.04347839e+01, 2.60869575e+00, 3.26086950e+00, + 7.03695679e+01, 1.27521736e+02, 1.48913040e+01, 9.76086998e+00, + 4.67173920e+01, 4.08695650e+00, 2.73913050e+00, 2.76086950e+00, + 4.82608700e+00, 6.02173901e+00, 4.63043499e+00, 6.15217400e+00, + 5.89130449e+00, 5.24130440e+01, 7.30434799e+00, 4.89130449e+00, + 2.33695660e+01, 3.68913040e+01, 9.86956501e+00, 1.36739130e+01, + 4.22608681e+01, 1.32521744e+02, 4.34782600e+00, 5.17391300e+00, + 3.45000000e+01, 7.27826080e+01, 6.43478251e+00, 7.52173901e+00, + 1.08717392e+02, 4.49782600e+01, 4.45652151e+00, 4.10869551e+00, + 7.74782639e+01, 1.30630432e+02, 9.73913002e+00, 4.63043499e+00, + 2.79130440e+01, 5.45652151e+00, 2.95652175e+00, 2.04347825e+00, + 5.08695650e+00, 7.63043499e+00, 4.26086950e+00, 4.84782600e+00, + 6., 7.73043442e+01, 6.15217400e+00, 3.91304350e+00, + 2.01739140e+01, 3.31086960e+01, 6.82608700e+00, 7.76086950e+00, + 5.13478279e+01, 1.17673912e+02, 7.08695650e+00, 4.97826099e+00, + 3.65217400e+01, 8.06739120e+01, 6.34782600e+00, 4.32608700e+00, + 7.28478241e+01, 2.95652180e+01, 4.10869551e+00, 3.54347825e+00, + 4.50434799e+01, 1.10413040e+02, 1.33260870e+01, 3.32608700e+00, + 1.74782600e+01, 6.69841290e+00, 4.55555534e+00, 3.49206352e+00, + 6.68253946e+00, 4.55396843e+01, 4.44920616e+01, 9., + 4.03174591e+00, 3.33650780e+01, 3.14603176e+01, 4.17460299e+00, + 4.28571415e+00, 8.40793686e+01, 7.42380981e+01, 6.20634937e+00, + 5.44444466e+00, 3.60952377e+01, 8.02380981e+01, 1.54285717e+01, + 2.71428561e+00, 4.85555573e+01, 5.97301598e+01, 1.42857146e+00, + 1.04761910e+00, 1.74126987e+01, 5.86666679e+01, 2.91587296e+01, + 4.14285707e+00, 3.17460322e+00, 7.77777767e+00, 1.95238090e+00, + 8.25396836e-01, 3.04761910e+00, 2.74603176e+00, 2.68253970e+00, + 6.63492060e+00, 5.34444427e+01, 9.42539673e+01, 1.66666660e+01, + 4.34920645e+00, 1.80158730e+01, 2.66190472e+01, 6.63492060e+00, + 6.82539701e+00, 5.92857132e+01, 9.69047623e+01, 1.73174610e+01, + 8.84126949e+00, 1.57936506e+01, 7.12380981e+01, 1.73333340e+01, + 3.73015881e+00, 6.06349220e+01, 1.22269844e+02, 8.98412704e+00, + 2.65079355e+00, 8.11111069e+00, 8.41746063e+01, 4.84444427e+01, + 2.42857146e+00, 7.30158710e+00, 5.93174591e+01, 1.13333330e+01, + 5.87301612e-01, 2.58730149e+00, 2.04761910e+00, 2.57142854e+00, + 4.88888884e+00, 3.56825409e+01, 1.01333336e+02, 2.74603176e+01, + 4.58730173e+00, 4.49206352e+00, 8., 4.30158710e+00, + 4.71428585e+00, 3.22857132e+01, 1.16190475e+02, 4.77619057e+01, + 7.74603176e+00, 7.77777767e+00, 3.58730164e+01, 1.16031742e+01, + 3.71428561e+00, 2.48888893e+01, 1.18984123e+02, 4.46825409e+01, + 7.07936525e+00, 2.57142854e+00, 4.42857132e+01, 2.68888893e+01, + 2.38095236e+00, 6.92063475e+00, 1.19555557e+02, 5.79047623e+01, + 2.58730149e+00, 3.80952382e+00, 3.49206352e+00, 4.95238113e+00, + 5.93650770e+00, 1.55079365e+01, 4.10793648e+01, 1.94920635e+01, + 7.26984119e+00, 2.44444442e+00, 2.25396824e+00, 2.73015881e+00, + 4.71428585e+00, 1.85079365e+01, 9.38888855e+01, 5.08253975e+01, + 6.76190472e+00, 2.39682531e+00, 5.74603176e+00, 3.26984119e+00, + 2.42857146e+00, 8.42857170e+00, 1.02285713e+02, 8.29365082e+01, + 6.65079355e+00, 1.85714281e+00, 1.06190472e+01, 6.23809528e+00, + 1.17460322e+00, 2.79365087e+00, 9.15714264e+01, 9.10476227e+01, + 6.49206352e+00, 7.24137902e-01, 9.48275864e-01, 9.65517223e-01, + 1.10344827e+00, 1.36206901e+00, 1.27586210e+00, 1.44827580e+00, + 1.08620691e+00, 1.12068963e+00, 1.56896555e+00, 1.10344827e+00, + 1.34482753e+00, 1.56896555e+00, 1.70689654e+00, 1.86206901e+00, + 1.24137926e+00, 1.34482753e+00, 1.50000000e+00, 1.20689654e+00, + 1.18965518e+00, 1.58620691e+00, 1.63793099e+00, 1.53448272e+00, + 1.25862074e+00, 9.65517223e-01, 9.65517223e-01, 1.68965518e+00, + 1.20689654e+00, 8.27586234e-01, 1.01724136e+00, 1.06896555e+00, + 7.93103456e-01, 4.53448296e+00, 7.55172396e+00, 2.05172405e+01, + 7.31034470e+00, 6.37931013e+00, 9.62068939e+00, 2.25000000e+01, + 8.58620644e+00, 5.29310322e+00, 5.82758617e+00, 2.67758617e+01, + 8.60344791e+00, 7.56896544e+00, 1.29482756e+01, 2.80172405e+01, + 1.24310341e+01, 5.96551704e+00, 5.81034470e+00, 2.46206894e+01, + 1.06206894e+01, 8.41379356e+00, 1.24137936e+01, 2.80862064e+01, + 1.26034479e+01, 5.96551704e+00, 5., 1.75517235e+01, + 1.03448277e+01, 6.12068987e+00, 8.05172443e+00, 2.35000000e+01, + 1.53275862e+01, 3.29310346e+00, 1.06551723e+01, 4.82413788e+01, + 7.56896544e+00, 2.60344839e+00, 2.30344830e+01, 1.48086212e+02, + 1.78965511e+01, 1.98275864e+00, 9.86206913e+00, 6.88103485e+01, + 1.00344830e+01, 2.72413802e+00, 2.79137936e+01, 1.51672409e+02, + 1.99482765e+01, 2.03448272e+00, 9.31034470e+00, 7.13275833e+01, + 1.25689659e+01, 3.17241383e+00, 2.82758617e+01, 1.51672409e+02, + 2.29827595e+01, 4.74137926e+00, 7.58620691e+00, 5.09827576e+01, + 1.37068968e+01, 6.32758617e+00, 25., 1.44862076e+02, + 2.75000000e+01, 3.24137926e+00, 1.85517235e+01, 1.48706894e+02, + 1.60344830e+01, 1.32758617e+00, 6.75862074e+00, 7.23275833e+01, + 1.15862064e+01, 1.17241383e+00, 1.99310341e+01, 1.51672409e+02, + 1.63275871e+01, 9.48275864e-01, 9.93103409e+00, 9.39310379e+01, + 1.06206894e+01, 1.53448272e+00, 2.34137936e+01, 1.51379303e+02, + 1.59482756e+01, 2.18965507e+00, 1.17068968e+01, 9.47413788e+01, + 9.65517235e+00, 2.53448272e+00, 2.11724129e+01, 1.35534485e+02, + 1.61896553e+01, 5.93103456e+00, 1.29137936e+01, 7.60862045e+01, + 9.06896591e+00, 1.84918041e+01, 2.47049179e+01, 2.76229515e+01, + 2.11147537e+01, 1.83442631e+01, 2.09836063e+01, 1.32131147e+01, + 1.22295084e+01, 2.23278694e+01, 5.13934441e+01, 4.35245895e+01, + 2.72295074e+01, 2.11475410e+01, 8.27868881e+01, 3.23442612e+01, + 1.48524590e+01, 2.41475410e+01, 1.49491806e+02, 3.86065559e+01, + 1.21639347e+01, 2.78360653e+01, 1.53459015e+02, 3.93442612e+01, + 7.27868843e+00, 2.43114758e+01, 1.64967209e+02, 2.86065578e+01, + 3.88524580e+00, 1.71147537e+01, 1.42032791e+02, 1.96885242e+01, + 2.11475420e+00, 2.07377052e+01, 2.36065578e+01, 2.80327873e+01, + 3.07049179e+01, 2.16885242e+01, 1.41639347e+01, 1.38524590e+01, + 1.61147537e+01, 2.89344254e+01, 3.67213097e+01, 3.92131157e+01, + 3.82622948e+01, 3.15901642e+01, 2.49836063e+01, 20., + 2.20163937e+01, 3.46393433e+01, 6.13442612e+01, 5.02622948e+01, + 3.34590149e+01, 2.58032780e+01, 8.39180298e+01, 2.43278694e+01, + 2.11639347e+01, 2.55737705e+01, 1.43934433e+02, 3.60655746e+01, + 1.33442621e+01, 2.99508190e+01, 1.51295074e+02, 3.07377052e+01, + 7.72131157e+00, 1.79672127e+01, 2.02622948e+01, 2.39672127e+01, + 3.07049179e+01, 1.89180336e+01, 1.09672127e+01, 1.45573769e+01, + 1.78688526e+01, 2.52950821e+01, 2.60819664e+01, 2.92295074e+01, + 3.69672127e+01, 2.51147537e+01, 1.74098358e+01, 1.92459011e+01, + 1.97377052e+01, 2.87049179e+01, 3.05409832e+01, 3.43770485e+01, + 3.40491791e+01, 2.42622948e+01, 2.09672127e+01, 1.83278694e+01, + 2.23934422e+01, 2.10983601e+01, 3.61967201e+01, 3.64098358e+01, + 2.44918041e+01, 2.00655746e+01, 5.86885262e+01, 1.65573769e+01, + 1.41311474e+01, 1.30819674e+01, 1.46229506e+01, 1.55901642e+01, + 1.88360653e+01, 1.06229506e+01, 6.49180317e+00, 8.50819683e+00, + 1.04098358e+01, 1.55901642e+01, 1.44918032e+01, 1.66065578e+01, + 2.42950821e+01, 1.25245905e+01, 8.96721268e+00, 1.12786884e+01, + 1.30327873e+01, 1.65081959e+01, 1.55901642e+01, 1.83114758e+01, + 2.21967220e+01, 1.28688526e+01, 1.03934422e+01, 1.10327873e+01, + 1.22950821e+01, 1.22950821e+01, 1.12950821e+01, 1.77704926e+01, + 1.62131157e+01, 8.86885262e+00, 7.73770475e+00, 8.34426212e+00, + 1.20491800e+01, 1.63333340e+01, 6.53333330e+00, 9., + 1.43466663e+01, 1.68266659e+01, 1.88133335e+01, 3.38133316e+01, + 3.49199982e+01, 1.78533325e+01, 8.30666637e+00, 1.34399996e+01, + 2.00133343e+01, 2.15866661e+01, 2.20266666e+01, 3.92133331e+01, + 3.79199982e+01, 1.85066662e+01, 1.35466671e+01, 1.56933336e+01, + 2.22000008e+01, 3.07066669e+01, 3.02666664e+01, 4.28133316e+01, + 3.32799988e+01, 1.76000004e+01, 1.01733332e+01, 1.09866667e+01, + 1.43199997e+01, 1.77066669e+01, 1.75466671e+01, 2.82800007e+01, + 2.85466671e+01, 2.86399994e+01, 1.96000004e+01, 1.79466667e+01, + 2.40933342e+01, 3.28666649e+01, 4.41333351e+01, 5.80133324e+01, + 5.07599983e+01, 3.22666664e+01, 1.84666672e+01, 2.53999996e+01, + 3.65466652e+01, 3.88800011e+01, 3.82133331e+01, 6.91466675e+01, + 6.78933334e+01, 3.22400017e+01, 1.93733330e+01, 2.74799995e+01, + 4.58800011e+01, 4.92799988e+01, 5.04533348e+01, 7.38399963e+01, + 6.51733322e+01, 2.99733334e+01, 1.64666672e+01, 1.72399998e+01, + 3.04666672e+01, 3.36133347e+01, 3.72000008e+01, 5.56133347e+01, + 5.89733315e+01, 4.04933319e+01, 5.39199982e+01, 1.69866657e+01, + 2.30400009e+01, 4.42799988e+01, 8.37733307e+01, 6.86266632e+01, + 4.21599998e+01, 4.03466682e+01, 2.75733337e+01, 2.51599998e+01, + 3.45999985e+01, 4.25333328e+01, 5.77999992e+01, 7.60800018e+01, + 6.15600014e+01, 3.21866684e+01, 1.76533337e+01, 2.29599991e+01, + 3.83466682e+01, 4.91599998e+01, 4.71599998e+01, 7.33600006e+01, + 7.33066635e+01, 2.59066658e+01, 1.27866669e+01, 1.47200003e+01, + 2.45599995e+01, 2.86800003e+01, 3.04133339e+01, 5.51466675e+01, + 6.65866699e+01, 5.13066673e+01, 1.01213333e+02, 2.62933331e+01, + 9.78666687e+00, 5.45200005e+01, 1.09360001e+02, 5.84133339e+01, + 2.28933334e+01, 3.32533340e+01, 47., 2.74400005e+01, + 1.96800003e+01, 4.77866669e+01, 7.86399994e+01, 8.08000031e+01, + 4.26933327e+01, 3.24133339e+01, 2.28266659e+01, 1.86399994e+01, + 2.00400009e+01, 3.62933350e+01, 4.81066666e+01, 6.27466660e+01, + 5.77733345e+01, 1.77999992e+01, 1.03333330e+01, 1.35866671e+01, + 1.83600006e+01, 2.22000008e+01, 2.38133335e+01, 4.18933334e+01, + 4.52000008e+01, 3.44230771e+00, 3.26923084e+00, 22., + 3.54038467e+01, 2.02500000e+01, 7.53846169e+00, 2.56923084e+01, + 7.30576935e+01, 3.86538467e+01, 1.86538458e+00, 1.65000000e+01, + 1.31480774e+02, 2.95961533e+01, 4.21153831e+00, 2.86923084e+01, + 1.46769226e+02, 2.83461533e+01, 5.17307711e+00, 7.75000000e+00, + 1.45423080e+02, 6.81538467e+01, 2.44230771e+00, 6.92307711e+00, + 7.43461533e+01, 1.64615383e+01, 7.01923084e+00, 2.73076916e+00, + 1.34230766e+01, 6.86538458e+00, 1.76923072e+00, 5.92307711e+00, + 1.76538467e+01, 5., 3.19230771e+00, 1.00250000e+02, + 1.42115387e+02, 6.11538458e+00, 4.21153831e+00, 1.06980766e+02, + 1.38500000e+02, 1.56538458e+01, 4.48076916e+00, 7.55576935e+01, + 1.48942307e+02, 1.30769234e+01, 2.59615374e+00, 2.88076916e+01, + 111., 2.73461533e+01, 7.50000000e+00, 9.17307663e+00, + 7.65384598e+01, 8.92307663e+00, 3.82692313e+00, 1.37692308e+01, + 4.30961533e+01, 2.04807701e+01, 6.30769253e+00, 2.90384626e+00, + 1.88461542e+00, 1.78846157e+00, 3.23076916e+00, 9.53846169e+00, + 2.98269234e+01, 1.07500000e+01, 3.82692313e+00, 1.05346153e+02, + 1.12826920e+02, 2.36538458e+00, 4.51923084e+00, 2.67500000e+01, + 3.53846169e+01, 2.17307701e+01, 4.53846169e+00, 1.71153851e+01, + 3.66346169e+01, 2.65384626e+00, 4.92307711e+00, 2.75384617e+01, + 5.09807701e+01, 2.05000000e+01, 5.57692289e+00, 3.55769229e+00, + 3.09615374e+00, 3.67307687e+00, 5.19230747e+00, 2.01730766e+01, + 4.68846169e+01, 1.56153851e+01, 4.61538458e+00, 2.88461542e+00, + 2.28846145e+00, 2.28846145e+00, 3.57692313e+00, 9.55769253e+00, + 2.61538467e+01, 8.53846169e+00, 2., 1.48076928e+00, + 1.15384614e+00, 1.17307687e+00, 3.53846145e+00, 2.13461533e+01, + 2.79615383e+01, 1.07500000e+01, 3.61538458e+00, 2.13461542e+00, + 1.98076928e+00, 2.44230771e+00, 4.15384626e+00, 2.07500000e+01, + 2.82500000e+01, 1.06153851e+01, 4.11538458e+00, 2.67307687e+00, + 2.78846145e+00, 3.36538458e+00, 4.57692289e+00, 1.39807692e+01, + 2.37692299e+01, 8.51923084e+00, 2.84615374e+00, 2.51923084e+00, + 2.01923084e+00, 2.13461542e+00, 2.75000000e+00, 6.40384626e+00, + 1.62115383e+01, 6.90425568e+01, 1.20765961e+02, 3.08297863e+01, + 8.82978725e+00, 25., 4.01276588e+01, 1.58936167e+01, 10., + 2.32978725e+01, 5.34042549e+01, 2.92127666e+01, 1.66808510e+01, + 2.47872334e+01, 4.40425529e+01, 2.96595745e+01, 1.18510637e+01, + 1.39787235e+01, 1.52978725e+01, 2.70212765e+01, 3.70638313e+01, + 2.53617020e+01, 1.90212765e+01, 2.89148941e+01, 2.07872334e+01, + 1.16382980e+01, 8.04255295e+00, 2.45319157e+01, 7.85106354e+01, + 5.22553177e+01, 1.65319157e+01, 1.44468088e+01, 2.25106392e+01, + 2.87234039e+01, 1.35191483e+02, 7.00425568e+01, 3.31914902e+00, + 1.30638294e+01, 3.88723412e+01, 2.70851059e+01, 3.51063824e+00, + 1.53829784e+01, 1.31680847e+02, 1.39851059e+02, 2.82127666e+01, + 1.10425529e+01, 4.91914902e+01, 6.04468079e+01, 9.23404217e+00, + 5.89361715e+00, 40., 1.41276596e+02, 1.05297874e+02, + 1.68510647e+01, 2.46382980e+01, 6.44042587e+01, 2.38723412e+01, + 6.70212746e+00, 7.68085098e+00, 7.33191452e+01, 1.16893616e+02, + 2.32553196e+01, 6.57446814e+00, 2.86808510e+01, 3.70851059e+01, + 6.12765980e+00, 2.05319157e+01, 1.22340422e+01, 1.51063836e+00, + 5.87234020e+00, 1.77446804e+01, 1.91914902e+01, 4.19148922e+00, + 4.34042549e+00, 4.42340431e+01, 7.91702118e+01, 6.38297892e+00, + 3.29787230e+00, 1.78297863e+01, 3.36382980e+01, 9.10638332e+00, + 5.25531912e+00, 1.96170216e+01, 8.62978745e+01, 2.58085098e+01, + 2.48936176e+00, 7.80851078e+00, 3.09148941e+01, 1.99148941e+01, + 6.17021275e+00, 5.21276617e+00, 2.84680843e+01, 1.69787235e+01, + 3.29787230e+00, 3.89361691e+00, 18., 2.61489353e+01, + 3.19148928e-01, 3.40425521e-01, 6.38297871e-02, 0., + 4.25531901e-02, 6.80851042e-01, 6.59574449e-01, 2.76595742e-01, + 5.74468076e-01, 5.10638297e-01, 2.12765962e-01, 2.12765951e-02, + 8.51063803e-02, 5.53191483e-01, 6.59574449e-01, 6.38297856e-01, + 5.95744669e-01, 2.34042555e-01, 2.34042555e-01, 1.06382981e-01, + 0., 1.91489369e-01, 1., 2.04255319e+00, 4.04255331e-01, + 2.12765951e-02, 1.27659574e-01, 1.48936167e-01, 6.38297871e-02, + 6.38297871e-02, 8.51063848e-01, 3.38297868e+00, 4.53571434e+01, + 3.66071434e+01, 1.03571427e+00, 1.78571427e+00, 2.72500000e+01, + 3.18214283e+01, 3.60714293e+00, 2.53571439e+00, 1.15321426e+02, + 8.58214264e+01, 3.21428567e-01, 7.50000000e-01, 6.27500000e+01, + 6.65357132e+01, 4.25000000e+00, 6.28571415e+00, 6.05357132e+01, + 4.41428566e+01, 2.78571439e+00, 4.28571415e+00, 1.11821426e+02, + 1.03321426e+02, 3.46428561e+00, 3.17857146e+00, 2.07142849e+01, + 2.66071434e+01, 3.35714293e+00, 2.39285707e+00, 17., + 1.43571424e+01, 8.03571415e+00, 4.64285707e+00, 2.01071434e+01, + 1.37857141e+01, 1.21428573e+00, 6.46428585e+00, 3.53928566e+01, + 2.68928566e+01, 7.89285707e+00, 6.96428585e+00, 1.24785713e+02, + 9.75000000e+01, 5.71428585e+00, 1.16785717e+01, 5.39285698e+01, + 3.51428566e+01, 6.60714293e+00, 3.02857151e+01, 5.69285698e+01, + 50., 1.52857141e+01, 2.53214283e+01, 1.08071426e+02, + 1.06642860e+02, 4.22857132e+01, 1.31428576e+01, 2.72500000e+01, + 4.34642868e+01, 7.78571415e+00, 2.10714293e+00, 2.55714283e+01, + 7.35000000e+01, 5.56785698e+01, 6.89285707e+00, 2.16428566e+01, + 4.25000000e+00, 2.89285707e+00, 1.12142859e+01, 3.46071434e+01, + 1.34642859e+01, 4.92857122e+00, 2.04642849e+01, 1.18857140e+02, + 3.03928566e+01, 7.85714293e+00, 2.31785717e+01, 4.16071434e+01, + 1.33214283e+01, 9.10714245e+00, 1.04321426e+02, 3.78214302e+01, + 2.52857151e+01, 2.65714283e+01, 3.26785698e+01, 3.74642868e+01, + 5.05357132e+01, 4.17500000e+01, 2.83571434e+01, 1.14642859e+01, + 2.66071434e+01, 1.05000000e+01, 6.64285707e+00, 4.35714302e+01, + 8.99642868e+01, 3.39285698e+01, 5.53571415e+00, 3.88928566e+01, + 6.28571415e+00, 2.03571439e+00, 5.07142878e+00, 2.65000000e+01, + 1.41785717e+01, 3.14285707e+00, 1.03214283e+01, 110., + 4.34285698e+01, 4.32142878e+00, 1.29642859e+01, 3.75000000e+01, + 17., 2.89285707e+00, 2.27142849e+01, 2.31428566e+01, + 2.62500000e+01, 1.64642849e+01, 1.52500000e+01, 2.38214283e+01, + 1.56071424e+01, 7.75000000e+00, 8.46428585e+00, 7.10714293e+00, + 1.13928576e+01, 7.32142878e+00, 9., 3.56071434e+01, + 2.52857151e+01, 5.46428585e+00, 3.89285707e+00, 2.87500000e+00, + 1.26875000e+02, 1.21125000e+02, 5.42500019e+00, 4.13749981e+00, + 6.01375008e+01, 5.99500008e+01, 3.65000010e+00, 3.46250010e+00, + 9.25124969e+01, 1.38962494e+02, 7.08750010e+00, 2.56250000e+00, + 6.60625000e+01, 1.25887497e+02, 8.27499962e+00, 2.54999995e+00, + 2.83374996e+01, 1.36962494e+02, 3.30750008e+01, 2.77500010e+00, + 2.52500000e+01, 1.33462494e+02, 2.95000000e+01, 2.62500000e+00, + 5.63749981e+00, 1.27662498e+02, 79., 2.63750005e+00, + 5.44999981e+00, 1.05387497e+02, 5.63125000e+01, 2.25000000e+00, + 2.76000004e+01, 4.15875015e+01, 3.42499995e+00, 7.52500010e+00, + 3.46250000e+01, 3.63624992e+01, 1.17749996e+01, 4.31250000e+00, + 4.42500000e+01, 1.08762497e+02, 5.51249981e+00, 5.30000019e+00, + 2.46749992e+01, 4.73624992e+01, 2.21375008e+01, 5.37500000e+00, + 1.79249992e+01, 1.22675003e+02, 2.06124992e+01, 3.84999990e+00, + 1.44125004e+01, 4.58499985e+01, 2.60375004e+01, 6.76249981e+00, + 4.51249981e+00, 8.17249985e+01, 3.06250000e+01, 2.38750005e+00, + 7.98750019e+00, 2.89500008e+01, 2.93125000e+01, 1.87500000e+00, + 1.08749998e+00, 1.11249995e+00, 1.39999998e+00, 4.11250019e+00, + 2.92625008e+01, 3.86375008e+01, 9., 3.54999995e+00, + 1.52499998e+00, 1.23749995e+00, 1.63750005e+00, 4.03749990e+00, + 2.75499992e+01, 5.33125000e+01, 1.65249996e+01, 4.73750019e+00, + 1.98749995e+00, 1.28750002e+00, 1.79999995e+00, 3.23749995e+00, + 1.65874996e+01, 5.01624985e+01, 2.50249996e+01, 5.30000019e+00, + 1.70000005e+00, 1.17499995e+00, 1.52499998e+00, 1.88750005e+00, + 7.63749981e+00, 37., 2.75249996e+01, 5.50000012e-01, + 3.49999994e-01, 2.37499997e-01, 2.50000000e-01, 6.12500012e-01, + 6.33750010e+00, 9.06250000e+00, 1.89999998e+00, 8.37499976e-01, + 2.37499997e-01, 2.24999994e-01, 3.37500006e-01, 6.62500024e-01, + 6.75000000e+00, 1.43750000e+01, 3.52500010e+00, 1.08749998e+00, + 4.00000006e-01, 1.74999997e-01, 2.50000000e-01, 4.62500006e-01, + 3.71250010e+00, 1.54375000e+01, 6.03749990e+00, 1.36249995e+00, + 5.74999988e-01, 2.50000000e-01, 3.12500000e-01, 3.49999994e-01, + 1.79999995e+00, 1.11499996e+01, 7.06250000e+00, 1.14733330e+02, + 7.90000010e+00, 7.98333311e+00, 7.06166687e+01, 5.70666656e+01, + 7.03333330e+00, 1.21999998e+01, 1.16650002e+02, 3.40666656e+01, + 4.88333321e+00, 2.65833340e+01, 1.35233337e+02, 1.16933334e+02, + 4.93333340e+00, 9.48333359e+00, 4.94000015e+01, 2.56000004e+01, + 1.01333332e+01, 2.03333340e+01, 5.56500015e+01, 2.49500008e+01, + 5.61666679e+00, 1.02333336e+01, 3.87666664e+01, 7.43333340e+00, + 7.65000010e+00, 7.88333321e+00, 7.88333321e+00, 5.46666670e+00, + 4.06666660e+00, 4.88333321e+00, 8.05000019e+00, 8.90833359e+01, + 4.78333330e+00, 1.12833338e+01, 1.30966660e+02, 1.22416664e+02, + 5.08333349e+00, 5.65000010e+00, 9.24833298e+01, 4.31333351e+01, + 1.04499998e+01, 1.85166664e+01, 1.24166664e+02, 1.02516670e+02, + 7.18333340e+00, 9.98333359e+00, 55., 2.07666664e+01, + 1.56499996e+01, 1.74500008e+01, 1.44166670e+01, 1.27333336e+01, + 9.25000000e+00, 1.11000004e+01, 2.51666660e+01, 6.83333349e+00, + 9.38333321e+00, 9.36666679e+00, 7.75000000e+00, 6.26666689e+00, + 5.16666651e+00, 5.53333330e+00, 5.48333311e+00, 5.13499985e+01, + 8.78333378e+00, 1.04333334e+01, 1.33566666e+02, 1.28566666e+02, + 6.08333349e+00, 4.13333321e+00, 4.12500000e+01, 3.74166679e+01, + 1.58833332e+01, 1.72999992e+01, 4.33333321e+01, 4.65666656e+01, + 1.11333332e+01, 9.76666641e+00, 3.37000008e+01, 1.60166664e+01, + 1.66166668e+01, 1.48166666e+01, 1.10500002e+01, 9.83333302e+00, + 8.80000019e+00, 1.01833334e+01, 1.30500002e+01, 5.75000000e+00, + 7.78333330e+00, 9.16666698e+00, 9.23333359e+00, 7.65000010e+00, + 5.36666679e+00, 5.01666689e+00, 4.38333321e+00, 2.82500000e+01, + 9.61666679e+00, 1.45500002e+01, 8.62666702e+01, 7.21833344e+01, + 6.61666679e+00, 5.19999981e+00, 1.94333324e+01, 2.21499996e+01, + 1.32666664e+01, 1.27833338e+01, 1.21666670e+01, 1.24833336e+01, + 7.84999990e+00, 7.48333311e+00, 1.48000002e+01, 1.08500004e+01, + 1.22833338e+01, 11., 9.01666641e+00, 6.69999981e+00, + 5.83333349e+00, 6.83333349e+00, 9.10000038e+00, 4.55000019e+00, + 6.58333349e+00, 7.80000019e+00, 6.36666679e+00, 5.41666651e+00, + 4.36666679e+00, 3.54999995e+00, 3.34999990e+00, 6.92063475e+00, + 4.66666651e+00, 6.06349230e+00, 3.61904764e+00, 2., + 2.47619057e+00, 5.87301588e+00, 5.15873003e+00, 3.19047618e+00, + 4.22222233e+00, 5.90476179e+00, 3.98412704e+00, 2.85714293e+00, + 2.77777767e+00, 2.31746030e+00, 1.90476191e+00, 1.61904764e+00, + 2.73015881e+00, 3.57142854e+00, 3.19047618e+00, 3.22222233e+00, + 3.01587296e+00, 2.42857146e+00, 2.01587296e+00, 8.25396836e-01, + 8.41269851e-01, 1.53968251e+00, 1.68253970e+00, 1.82539678e+00, + 1.46031749e+00, 1.23809528e+00, 1.33333337e+00, 7.33333349e+00, + 3.45555573e+01, 4.82539673e+01, 1.40634918e+01, 4.33333349e+00, + 2.77777767e+00, 4.52380943e+00, 4.25396824e+00, 1.00634918e+01, + 3.63809509e+01, 4.71269836e+01, 1.52539682e+01, 5.09523821e+00, + 3.01587296e+00, 3.60317469e+00, 4.95238113e+00, 1.02698412e+01, + 3.13809528e+01, 3.10793648e+01, 1.07619047e+01, 5.88888884e+00, + 4.92063475e+00, 5.31746054e+00, 6.30158710e+00, 6.66666651e+00, + 1.41746035e+01, 1.28095236e+01, 6.26984119e+00, 4.61904764e+00, + 4.71428585e+00, 5.41269827e+00, 5.36507940e+00, 9.22222233e+00, + 5.27460327e+01, 7.01428604e+01, 1.19047623e+01, 4.53968239e+00, + 8.40158768e+01, 1.05047623e+02, 5.53968239e+00, 1.43650789e+01, + 6.83174591e+01, 7.09682541e+01, 1.42063494e+01, 5.52380943e+00, + 3.45714302e+01, 3.99841270e+01, 7.03174591e+00, 1.80793648e+01, + 6.28571434e+01, 4.68730164e+01, 1.13650789e+01, 4.88888884e+00, + 5.57142878e+00, 7.73015881e+00, 7.61904764e+00, 1.32063494e+01, + 3.50952377e+01, 2.26507931e+01, 6.53968239e+00, 3.14285707e+00, + 2.63492060e+00, 3.76190472e+00, 5.69841290e+00, 3.33333325e+00, + 1.16730156e+02, 1.40190475e+02, 6.39682531e+00, 3.82539678e+00, + 1.34142853e+02, 1.48936508e+02, 4.04761887e+00, 7.79365063e+00, + 9.82380981e+01, 8.99206314e+01, 9.01587296e+00, 1.02222223e+01, + 1.51095245e+02, 1.48333328e+02, 5.20634937e+00, 1.56031742e+01, + 5.85873032e+01, 4.21587296e+01, 1.03809528e+01, 1.59047623e+01, + 1.02761902e+02, 5.82698402e+01, 6.38095236e+00, 1.61269836e+01, + 3.70158730e+01, 1.94126987e+01, 3.47619057e+00, 2.61904764e+00, + 9.42857170e+00, 6., 6.09523821e+00, 3.75999999e+00, + 5.48800011e+01, 5.36399994e+01, 2.96000004e+00, 2.79999995e+00, + 6.11399994e+01, 5.80800018e+01, 7.46000004e+00, 8.53999996e+00, + 4.95400009e+01, 7.44199982e+01, 9.69999981e+00, 4.88000011e+00, + 4.45800018e+01, 6.00200005e+01, 2.52199993e+01, 8.47999954e+00, + 3.08199997e+01, 6.47399979e+01, 1.11199999e+01, 5.17999983e+00, + 2.36000004e+01, 5.51800003e+01, 3.03799992e+01, 4.07999992e+00, + 3.31399994e+01, 3.89399986e+01, 5.50000000e+00, 7.01999998e+00, + 26., 3.16200008e+01, 1.06199999e+01, 9.68000031e+00, + 7.84000015e+01, 5.82599983e+01, 3.18000007e+00, 5.01999998e+00, + 7.92399979e+01, 7.86600037e+01, 1.00799999e+01, 2.27399998e+01, + 5.73800011e+01, 5.52000008e+01, 1.58400002e+01, 1.38599997e+01, + 6.72200012e+01, 9.81800003e+01, 5.71800003e+01, 1.91000004e+01, + 2.57399998e+01, 4.71599998e+01, 2.53400002e+01, 1.97399998e+01, + 4.97599983e+01, 8.83600006e+01, 65., 7.30000019e+00, + 3.30200005e+01, 3.69199982e+01, 1.27799997e+01, 1.52600002e+01, + 6.68399963e+01, 5.97999992e+01, 1.55000000e+01, 2.49400005e+01, + 7.14000015e+01, 4.16800003e+01, 2.72000003e+00, 1.32600002e+01, + 6.80199966e+01, 5.03800011e+01, 1.15799999e+01, 6.01800003e+01, + 8.98199997e+01, 34., 1.72199993e+01, 3.05599995e+01, + 5.87000008e+01, 4.37799988e+01, 2.62199993e+01, 3.32999992e+01, + 3.54000015e+01, 3.28199997e+01, 4.09599991e+01, 3.65200005e+01, + 3.92000008e+01, 3.05400009e+01, 3.38800011e+01, 1.29799995e+01, + 1.46999998e+01, 3.28800011e+01, 3.12600002e+01, 2.41599998e+01, + 3.27599983e+01, 2.47600002e+01, 1.63999996e+01, 1.27399998e+01, + 1.64400005e+01, 6.73999977e+00, 4.59999990e+00, 1.30799999e+01, + 4.24199982e+01, 2.43600006e+01, 8.34000015e+00, 3.47400017e+01, + 7.38399963e+01, 2.48600006e+01, 7.51999998e+00, 2.20200005e+01, + 6.95199966e+01, 2.88999996e+01, 7.76000023e+00, 1.48400002e+01, + 6.57600021e+01, 4.93400002e+01, 1.67199993e+01, 2.00599995e+01, + 6.07599983e+01, 3.60200005e+01, 5.84000015e+00, 7.03999996e+00, + 2.20400009e+01, 4.08800011e+01, 1.52799997e+01, 8.35999966e+00, + 2.92199993e+01, 3.66599998e+01, 10., 1.44912281e+01, + 2.24035091e+01, 4.52807007e+01, 1.61052628e+01, 9.56140327e+00, + 4.18947372e+01, 9.29824524e+01, 3.12456131e+01, 1.80526314e+01, + 2.47368412e+01, 7.44385986e+01, 5.66842117e+01, 1.40877190e+01, + 2.04561405e+01, 1.03333336e+02, 8.15614014e+01, 2.07543869e+01, + 1.04210529e+01, 3.70877190e+01, 5.49824562e+01, 1.21228065e+01, + 1.01403513e+01, 7.32105255e+01, 9.62280731e+01, 5.32631569e+01, + 1.89824562e+01, 7.66666651e+00, 1.47368422e+01, 2.82456136e+00, + 2.15789485e+00, 1.20701752e+01, 6.33508759e+01, 1.32982454e+01, + 1.54561405e+01, 4.85789490e+01, 2.53508778e+01, 3.17368412e+01, + 6.61754379e+01, 8.51403503e+01, 2.38596497e+01, 4.41403503e+01, + 2.70877190e+01, 6.94736862e+01, 5.32631569e+01, 2.97192974e+01, + 4.32807007e+01, 9.50701752e+01, 6.92105255e+01, 4.65263176e+01, + 2.01578941e+01, 2.96666660e+01, 3.72631569e+01, 1.77192974e+01, + 2.08771935e+01, 5.90526314e+01, 7.18596497e+01, 5.98245621e+01, + 1.31403513e+01, 5.26315784e+00, 8., 4.43859673e+00, + 6.19298267e+00, 1.72280693e+01, 6.21052628e+01, 1.16842108e+01, + 5.40350866e+00, 8.98245621e+00, 1.03508768e+01, 2.92631588e+01, + 7.79649124e+01, 5.66140366e+01, 1.76842098e+01, 3.21403503e+01, + 1.35087719e+01, 1.75263157e+01, 2.11929817e+01, 2.49649124e+01, + 6.36666679e+01, 7.84035110e+01, 4.46140366e+01, 3.84912262e+01, + 9.28070164e+00, 6.64912271e+00, 8.91228104e+00, 1.42105265e+01, + 2.06666660e+01, 5.83508759e+01, 7.28421021e+01, 4.22807007e+01, + 3.91228080e+00, 1.35087717e+00, 1.28070176e+00, 3.78947377e+00, + 6.22807026e+00, 3.23508759e+01, 8.08070145e+01, 2.68421054e+00, + 7.89473712e-01, 3.68421048e-01, 8.24561417e-01, 9.80701733e+00, + 5.03684196e+01, 4.89298248e+01, 1.00701752e+01, 4.64912271e+00, + 1.14035082e+00, 7.71929801e-01, 1.29824567e+00, 7.22807026e+00, + 5.22807007e+01, 7.67719269e+01, 2.66842098e+01, 1.32456141e+01, + 1.01754391e+00, 3.15789461e-01, 4.73684222e-01, 2.42105269e+00, + 1.62631588e+01, 6.30701752e+01, 6.61052628e+01, 1.60877190e+01, + 2.59649134e+00, 1.35087717e+00, 1.85964918e+00, 2.78947377e+00, + 7.87719297e+00, 3.11052628e+01, 4.81929817e+01, 4.10714302e+01, + 4.09523811e+01, 1.28571427e+00, 1.14285719e+00, 3.48333321e+01, + 7.51666641e+01, 7.42857122e+00, 4.14285707e+00, 8.94761887e+01, + 9.58333359e+01, 1.42857146e+00, 6.19047642e-01, 6.78571415e+00, + 2.65714283e+01, 8.69047642e+00, 5.50000000e+00, 2.74285717e+01, + 3.96904755e+01, 4.28571415e+00, 3.80952382e+00, 6.90476179e+00, + 17., 1.47619047e+01, 8.85714245e+00, 9.35714245e+00, + 4.21428585e+00, 4.21428585e+00, 5.90476179e+00, 8.26190472e+00, + 1.03571424e+01, 1.20714283e+01, 1.09523811e+01, 1.40952377e+01, + 6.08809509e+01, 5.52380943e+00, 3.61904764e+00, 2.77857151e+01, + 1.06571426e+02, 2.03333340e+01, 3.30952382e+00, 4.02857132e+01, + 1.16761902e+02, 1.23571424e+01, 9.04761910e-01, 7.45238113e+00, + 9.09523773e+01, 3.85952377e+01, 4.35714293e+00, 2.46666660e+01, + 1.19261902e+02, 3.81428566e+01, 2.95238090e+00, 3.80952382e+00, + 3.22380943e+01, 2.55000000e+01, 4.35714293e+00, 6.04761887e+00, + 4.51428566e+01, 4.70476189e+01, 7.76190472e+00, 4.59523821e+00, + 1.36904764e+01, 1.84047623e+01, 7.07142878e+00, 3.97619057e+00, + 2.61428566e+01, 7.21428585e+00, 5.59523821e+00, 27., + 7.86428604e+01, 3.09523811e+01, 5.54761887e+00, 6., + 7.97380981e+01, 3.41904755e+01, 4.28571415e+00, 1.00714283e+01, + 1.09809525e+02, 7.29047623e+01, 6.66666651e+00, 7.30952358e+00, + 1.03690475e+02, 7.46666641e+01, 3.95238090e+00, 3.14285707e+00, + 7.69761887e+01, 9.36666641e+01, 7.45238113e+00, 3.97619057e+00, + 6.66666641e+01, 1.00476189e+02, 1.05238094e+01, 1.45238090e+00, + 2.46190472e+01, 7.15000000e+01, 6.61904764e+00, 1.64285719e+00, + 1.73809528e+00, 2.35714293e+00, 4.50000000e+00, 2.23095245e+01, + 7.49523773e+01, 3.23571434e+01, 5.57142878e+00, 3.21428561e+00, + 1.17142859e+01, 1.12619047e+01, 5.92857122e+00, 1.57619047e+01, + 6.53571396e+01, 4.97619057e+01, 9.21428585e+00, 3.78571439e+00, + 2.56666660e+01, 3.81904755e+01, 4.90476179e+00, 8.80952358e+00, + 5.10476189e+01, 6.56904755e+01, 1.06904764e+01, 2.90476179e+00, + 1.79047623e+01, 5.46666679e+01, 5.66666651e+00, 3.97619057e+00, + 2.66666660e+01, 6.85476227e+01, 1.21190472e+01, 1.14838705e+01, + 3.35376358e+01, 2.65161285e+01, 6.10752678e+00, 2.92473125e+00, + 2.90322590e+00, 4., 4.62365580e+00, 1.31182795e+01, + 1.70215054e+01, 1.37096777e+01, 8.87096786e+00, 7.67741919e+00, + 7.49462366e+00, 6.77419376e+00, 8.80645180e+00, 1.07849464e+01, + 9.36559105e+00, 9.23655891e+00, 8.67741966e+00, 6.74193525e+00, + 5.70967722e+00, 6.95698929e+00, 9.80645180e+00, 3.36559129e+00, + 2.56989241e+00, 2.51612902e+00, 2.97849464e+00, 2.73118281e+00, + 1.94623661e+00, 2.53763437e+00, 2.74193549e+00, 4.04193535e+01, + 1.19946236e+02, 9.83010788e+01, 1.86451607e+01, 7.17204285e+00, + 6.09677410e+00, 7.06451607e+00, 1.00752687e+01, 5.99462357e+01, + 1.14354836e+02, 7.87204285e+01, 2.03763447e+01, 1.15698929e+01, + 9.09677410e+00, 9.19354820e+00, 1.80967751e+01, 3.80215073e+01, + 4.35591393e+01, 3.34193535e+01, 2.38924732e+01, 1.74193554e+01, + 1.41935482e+01, 1.98709679e+01, 2.78709679e+01, 1.10860214e+01, + 9.69892502e+00, 1.00752687e+01, 9.56989288e+00, 8.11827946e+00, + 6.50537634e+00, 9.26881695e+00, 1.06129036e+01, 4.85053749e+01, + 1.11935486e+02, 8.10107498e+01, 2.60215054e+01, 1.62365589e+01, + 2.02150536e+01, 2.19354839e+01, 2.15161285e+01, 1.01913979e+02, + 1.32709671e+02, 8.67634430e+01, 1.66129036e+01, 7.55913973e+00, + 8.72043037e+00, 1.10752687e+01, 2.34623661e+01, 8.53978500e+01, + 1.00268814e+02, 4.63548393e+01, 1.60537643e+01, 1.13225803e+01, + 9.96774197e+00, 1.49677420e+01, 2.94946232e+01, 1.42473116e+01, + 1.52150536e+01, 1.23763437e+01, 1.02473116e+01, 8.68817234e+00, + 7.29032278e+00, 9.80645180e+00, 1.19569893e+01, 3.31720428e+01, + 9.92903214e+01, 6.26881714e+01, 2.05806446e+01, 2.23010750e+01, + 3.95806465e+01, 2.13010750e+01, 1.58602152e+01, 8.70645142e+01, + 1.19569893e+02, 5.81505394e+01, 1.39569893e+01, 8.69892502e+00, + 1.25161295e+01, 1.42365589e+01, 2.47526875e+01, 1.12258064e+02, + 1.20311829e+02, 3.25591393e+01, 7.41935492e+00, 5.37634420e+00, + 4.81720448e+00, 6.94623661e+00, 2.54838715e+01, 2.27096767e+01, + 2.08709679e+01, 9., 6.53763437e+00, 6.11827946e+00, + 4.01075268e+00, 5.74193525e+00, 1.03763437e+01, 1.17708330e+01, + 6.02083349e+00, 3.91458321e+01, 7.78750000e+01, 1.08541670e+01, + 3.72916675e+00, 2.26875000e+01, 4.16458321e+01, 7.18750000e+00, + 1.12083330e+01, 5.60625000e+01, 4.43541679e+01, 1.48333330e+01, + 2.94791660e+01, 6.85208359e+01, 3.82708321e+01, 8.29166698e+00, + 4.93333321e+01, 4.26875000e+01, 1.02083330e+01, 1.07916670e+01, + 2.51458340e+01, 2.09166660e+01, 4.29166651e+00, 4.90833321e+01, + 1.06750000e+02, 1.98750000e+01, 1.22916663e+00, 2.43750000e+00, + 4.47916651e+00, 2.14583325e+00, 1.52083337e+00, 4.67291679e+01, + 2.26458340e+01, 3.53750000e+01, 4.22083321e+01, 2.08541660e+01, + 4.97916651e+00, 18., 5.72916679e+01, 2.38333340e+01, + 2.40833340e+01, 7.05416641e+01, 6.96666641e+01, 3.49583321e+01, + 3.32083321e+01, 6.30208321e+01, 6.00625000e+01, 1.11875000e+01, + 1.47500000e+01, 2.27916660e+01, 2.05208340e+01, 3.18958340e+01, + 4.79583321e+01, 3.40625000e+01, 1.33333330e+01, 7.28958359e+01, + 4.61250000e+01, 3.10416675e+00, 1.68750000e+00, 1.07708330e+01, + 1.61250000e+01, 5.70833349e+00, 9.06250000e+00, 3.25833321e+01, + 2.06041660e+01, 1.12291670e+01, 1.15625000e+01, 1.86458340e+01, + 1.76250000e+01, 5.72916651e+00, 1.53750000e+01, 3.72083321e+01, + 2.44166660e+01, 2.77916660e+01, 3.06458340e+01, 14., + 9.50000000e+00, 3.97708321e+01, 6.18333321e+01, 1.90833340e+01, + 8.20833302e+00, 1.85208340e+01, 5.11250000e+01, 5.35000000e+01, + 3.72500000e+01, 6.71458359e+01, 7.38333359e+01, 6.07291679e+01, + 5.06250000e+00, 2.16666675e+00, 1.64166660e+01, 3.18333340e+01, + 2.03333340e+01, 1.70625000e+01, 6.48333359e+01, 1.18958330e+01, + 1.22708330e+01, 3.56250000e+00, 2.02083325e+00, 1.23958330e+01, + 8.86875000e+01, 4.76666679e+01, 7.12500000e+00, 3.40416679e+01, + 4.31250000e+01, 5.11041679e+01, 2.34166660e+01, 4.27083349e+00, + 1.87916660e+01, 7.31666641e+01, 5.72916679e+01, 2.02291660e+01, + 1.81041660e+01, 5.99583321e+01, 8.72291641e+01, 2.93125000e+01, + 1.33541670e+01, 7.36666641e+01, 9.61875000e+01, 2.24791660e+01, + 2.54166675e+00, 8.18750000e+00, 3.91041679e+01, 1.98125000e+01, + 7.81250000e+00, 3.54375000e+01, 1.07812500e+02, 4.50000000e+00, + 7.25000000e+00, 1.28269234e+01, 7.76923084e+00, 3.14807701e+01, + 9.41923065e+01, 7.83846130e+01, 1.12115383e+01, 1.94038467e+01, + 2.14038467e+01, 5.16153831e+01, 3.61730766e+01, 2.26153851e+01, + 4.21923065e+01, 9.83846130e+01, 5.90192299e+01, 3.86346169e+01, + 2.57500000e+01, 6.37884598e+01, 6.55576935e+01, 2.49615383e+01, + 2.25576916e+01, 8.25961533e+01, 9.81153870e+01, 2.87307701e+01, + 1.60384617e+01, 2.02692299e+01, 3.61346169e+01, 1.55384617e+01, + 1.25769234e+01, 2.98461533e+01, 6.62500000e+01, 1.73076928e+00, + 3., 5.19230747e+00, 4.92307711e+00, 4.34038467e+01, + 1.07826920e+02, 5.21153831e+01, 4.96153831e+00, 1.14423075e+01, + 9.28846169e+00, 1.97115383e+01, 1.75769234e+01, 3.22500000e+01, + 9.49423065e+01, 9.58269196e+01, 3.11538467e+01, 3.95192299e+01, + 2.17115383e+01, 2.74423084e+01, 3.51538467e+01, 2.68269234e+01, + 6.18076935e+01, 9.58846130e+01, 6.53076935e+01, 3.94038467e+01, + 1.79230766e+01, 9.23076916e+00, 1.56346149e+01, 1.44038458e+01, + 2.19038467e+01, 5.33269234e+01, 6.98653870e+01, 4.05769253e+00, + 2.59615374e+00, 2.32692313e+00, 3.30769229e+00, 2.45192299e+01, + 7.95000000e+01, 4.03653831e+01, 7.42307711e+00, 5.82692289e+00, + 2.90384626e+00, 2.40384626e+00, 2.75000000e+00, 2.06923084e+01, + 1.00519234e+02, 8.45192337e+01, 1.88461533e+01, 1.39807692e+01, + 6.40384626e+00, 5.01923084e+00, 6.26923084e+00, 1.23076925e+01, + 7.23076935e+01, 9.97500000e+01, 4.68076935e+01, 2.12115383e+01, + 5.21153831e+00, 2.73076916e+00, 3.65384626e+00, 4.19230747e+00, + 2.37692299e+01, 7.90192337e+01, 6.59038467e+01, 4.19230747e+00, + 2.30769229e+00, 1.21153843e+00, 1.65384614e+00, 7.25000000e+00, + 1.99230766e+01, 1.42307692e+01, 5.36538458e+00, 3.25000000e+00, + 9.23076928e-01, 3.26923072e-01, 9.23076928e-01, 7.51923084e+00, + 4.11923065e+01, 3.88269234e+01, 8.50000000e+00, 2.96153855e+00, + 2.50000000e-01, 1.53846160e-01, 4.23076928e-01, 3.11538458e+00, + 3.07115383e+01, 5.67692299e+01, 2.17692299e+01, 5.30769253e+00, + 4.61538464e-01, 2.11538464e-01, 3.07692319e-01, 6.92307711e-01, + 1.07307692e+01, 4.05769234e+01, 3.16153851e+01, 3.19696975e+00, + 2.46969700e+00, 3.57575750e+00, 7.54545450e+00, 4.45454550e+00, + 2.21212125e+00, 1.92424238e+00, 1.63636363e+00, 1.66666663e+00, + 2.86363626e+00, 7.89393950e+00, 1.53181820e+01, 6.48484850e+00, + 2.69696975e+00, 2.27272725e+00, 1.18181813e+00, 1.80303025e+00, + 2.53030300e+00, 1.10454550e+01, 1.80303040e+01, 6.21212101e+00, + 2.01515150e+00, 2.21212125e+00, 1.68181813e+00, 2.96969700e+00, + 2.48484850e+00, 1.18787880e+01, 1.53181820e+01, 3.46969700e+00, + 8.78787875e-01, 2.04545450e+00, 3.37878799e+00, 9.60606098e+00, + 4.68181801e+00, 1.17727270e+01, 2.68636360e+01, 1.16363640e+01, + 4.22727251e+00, 2.74242425e+00, 3.37878799e+00, 3.21212125e+00, + 5.13636351e+00, 2.42121220e+01, 4.41666679e+01, 1.48636360e+01, + 4.59090900e+00, 4.12121201e+00, 5.80303049e+00, 3.48484850e+00, + 4.81818199e+00, 2.68333340e+01, 4.20606079e+01, 1.22424240e+01, + 3.60606050e+00, 3.47272720e+01, 5.83333321e+01, 3.90909100e+00, + 4.13636351e+00, 3.10909100e+01, 3.16818180e+01, 6.33333349e+00, + 5.03030300e+00, 1.04727272e+02, 8.77272720e+01, 9.12121201e+00, + 4.04545450e+00, 1.64090900e+01, 3.88484840e+01, 1.50606060e+01, + 4.72727251e+00, 5.71212101e+00, 1.27272730e+01, 8.28787899e+00, + 3.57575750e+00, 2.21818180e+01, 5.66515160e+01, 1.51363640e+01, + 3.92424250e+00, 3.45909081e+01, 1.20166664e+02, 5.50000000e+00, + 2.65151525e+00, 7.28181839e+01, 1.29030304e+02, 6.12121201e+00, + 2.36363626e+00, 9.69545441e+01, 1.39242432e+02, 3.66666675e+00, + 3.63636374e+00, 1.26515152e+02, 1.28954544e+02, 2.37878799e+00, + 3.83333325e+00, 8.57424240e+01, 9.11515121e+01, 2.28484840e+01, + 3.43939400e+00, 1.06666670e+01, 2.96060600e+01, 1.41666670e+01, + 5.10606050e+00, 1.07121210e+01, 7.09393921e+01, 3.58030319e+01, + 2.95454550e+00, 2.32727280e+01, 1.27303032e+02, 3.21363640e+01, + 2.31818175e+00, 2.01363640e+01, 1.34969696e+02, 8.95454502e+00, + 3.40909100e+00, 5.41060600e+01, 1.36818176e+02, 1.34848480e+01, + 2.66666675e+00, 2.19848480e+01, 6.64242401e+01, 1.01666670e+01, + 3.92424250e+00, 2.60303040e+01, 4.21363640e+01, 1.57575762e+00, + 5.07575750e+00, 2.61060600e+01, 3.29545441e+01, 3.34615374e+00, + 6.13461542e+00, 3.06923084e+01, 8.59615402e+01, 1.34038458e+01, + 2.40384626e+00, 3.38461542e+00, 4.38461542e+00, 1.88461542e+00, + 4.61538458e+00, 1.10461540e+02, 1.28846161e+02, 6.67307711e+00, + 1.92307687e+00, 4.30769253e+00, 4.86538458e+00, 1.30769229e+00, + 1.75769234e+01, 1.30461533e+02, 6.32500000e+01, 1.73076928e+00, + 2., 4.73076916e+00, 3.50000000e+00, 1.55769229e+00, + 8.63461533e+01, 1.23730766e+02, 6.53846169e+00, 1.84615386e+00, + 3.32692313e+00, 4.19230747e+00, 1.55769229e+00, 6.71153831e+00, + 2.86538458e+00, 1.39615383e+01, 1.32730774e+02, 8.21153870e+01, + 3.23076916e+00, 3.51923084e+00, 8., 5.50000000e+00, + 1.96153843e+00, 4.52884598e+01, 1.10134613e+02, 2.15192299e+01, + 5.86538458e+00, 1.21923075e+01, 1.46923075e+01, 7.32692289e+00, + 1.18269234e+01, 5.24423065e+01, 2.57307701e+01, 6., + 1.19230766e+01, 2.75769234e+01, 2.02500000e+01, 8.32692337e+00, + 5.11730766e+01, 3.49615402e+01, 2.80769229e+00, 3.40384626e+00, + 1.65769234e+01, 2.04615383e+01, 8.75000000e+00, 1.95384617e+01, + 3.94230771e+00, 2.38461542e+00, 8.06538467e+01, 1.25846153e+02, + 1.24615383e+01, 5.13461542e+00, 1.54038458e+01, 3.94230766e+01, + 1.12692308e+01, 1.07115383e+01, 3.51538467e+01, 4.83846169e+01, + 2.17692299e+01, 2.61153851e+01, 4.90961533e+01, 3.04423084e+01, + 1.81538467e+01, 2.14615383e+01, 1.98269234e+01, 2.63461533e+01, + 29., 3.68846169e+01, 3.95576935e+01, 3.54615402e+01, + 3.09615383e+01, 1.46538458e+01, 9.42307663e+00, 2.77307701e+01, + 4.55769234e+01, 3.01346149e+01, 2.49615383e+01, 2.76730766e+01, + 1.64230766e+01, 3.53846145e+00, 1.07307692e+01, 1.19307693e+02, + 5.40769234e+01, 3.53846145e+00, 8.19230747e+00, 5.44230766e+01, + 3.97884598e+01, 1.59038458e+01, 2.14615383e+01, 5.39230766e+01, + 3.40576935e+01, 1.45961542e+01, 2.15000000e+01, 3.28076935e+01, + 2.57115383e+01, 1.98076916e+01, 1.62500000e+01, 3.29423065e+01, + 2.32115383e+01, 1.27884617e+01, 1.86538467e+01, 3.27115402e+01, + 1.94807701e+01, 1.81923084e+01, 2.51153851e+01, 2.97115383e+01, + 1.34423075e+01, 8.38461494e+00, 1.91346149e+01, 8.48809528e+00, + 1.72857151e+01, 1.35523804e+02, 1.26202377e+02, 1.29166670e+01, + 1.19166670e+01, 1.26142860e+02, 1.25511902e+02, 1.39166670e+01, + 1.56785717e+01, 1.14142860e+02, 1.20785713e+02, 2.26190472e+01, + 1.64166660e+01, 1.32345245e+02, 1.33488098e+02, 1.89523811e+01, + 1.77857151e+01, 4.50357132e+01, 5.43333321e+01, 3.09880943e+01, + 2.36309528e+01, 8.07142868e+01, 8.80238113e+01, 9.26190472e+00, + 1.14880953e+01, 1.50357141e+01, 2.12380943e+01, 2.07619057e+01, + 1.82380943e+01, 2.22500000e+01, 17., 1.96071434e+01, + 1.72142849e+01, 3.81785698e+01, 4.90476189e+01, 3.56190491e+01, + 2.73095245e+01, 8.27976227e+01, 8.35238113e+01, 2.20833340e+01, + 2.56309528e+01, 4.11428566e+01, 4.86190491e+01, 4.50357132e+01, + 3.93214302e+01, 5.19404755e+01, 4.09285698e+01, 2.01309528e+01, + 2.45595245e+01, 3.60595245e+01, 4.47261887e+01, 4.16309509e+01, + 3.62023811e+01, 3.29642868e+01, 2.37976189e+01, 1.03571424e+01, + 1.33571424e+01, 1.90952377e+01, 2.53452377e+01, 2.71071434e+01, + 2.35714283e+01, 1.54166670e+01, 1.13333330e+01, 1.57976189e+01, + 1.82857151e+01, 2.58452377e+01, 2.98571434e+01, 3.04047623e+01, + 2.61190472e+01, 2.28690472e+01, 1.97380943e+01, 1.73928566e+01, + 2.15833340e+01, 2.66547623e+01, 3.28214302e+01, 3.98571434e+01, + 3.65714302e+01, 2.63095245e+01, 2.01547623e+01, 1.81190472e+01, + 1.98690472e+01, 2.24761906e+01, 3.03690472e+01, 4.11666679e+01, + 3.43571434e+01, 2.34642849e+01, 1.96904755e+01, 9.80952358e+00, + 1.04642859e+01, 1.29523811e+01, 1.77023811e+01, 2.49166660e+01, + 2.12380943e+01, 1.27738094e+01, 9.85714245e+00, 7., + 8.17857170e+00, 1.01071424e+01, 1.19761906e+01, 1.34404764e+01, + 1.01071424e+01, 7.26190472e+00, 6.83333349e+00, 9.52380943e+00, + 9.42857170e+00, 1.15119047e+01, 1.34404764e+01, 1.76071434e+01, + 1.36904764e+01, 8.75000000e+00, 9.17857170e+00, 8.03571415e+00, + 8.60714245e+00, 1.01309528e+01, 1.36666670e+01, 1.91071434e+01, + 1.36428576e+01, 8.28571415e+00, 6.98809528e+00, 3.55952382e+00, + 4.19047642e+00, 6.25000000e+00, 7.54761887e+00, 1.07142859e+01, + 8.35714245e+00, 4.72619057e+00, 3.01190472e+00, 9.77499962e+00, + 1.39999998e+00, 3.95000005e+00, 1.02500000e+01, 7.30000019e+00, + 2.70000005e+00, 5.94999981e+00, 2.15249996e+01, 2.51250000e+01, + 2.07500005e+00, 1.05249996e+01, 2.18750000e+01, 1.03500004e+01, + 4.19999981e+00, 6.12249985e+01, 1.20699997e+02, 4.25000000e+00, + 4.84999990e+00, 27., 3.01749992e+01, 7.69999981e+00, + 1.99500008e+01, 1.16750000e+02, 9.65500031e+01, 3.34999990e+00, + 1.04750004e+01, 2.81000004e+01, 1.68750000e+01, 5.82499981e+00, + 4.94249992e+01, 9.76750031e+01, 2.57999992e+01, 7.75999985e+01, + 1.19750004e+01, 3.59999990e+00, 1.16999998e+01, 1.08249998e+01, + 4.05000019e+00, 3.27500010e+00, 4.81500015e+01, 1.16500000e+02, + 2.63500004e+01, 1.64249992e+01, 4.25999985e+01, 3.93499985e+01, + 1.17749996e+01, 2.33250008e+01, 1.19724998e+02, 1.02250004e+01, + 1.12500000e+01, 2.88999996e+01, 4.25750008e+01, 2.64750004e+01, + 1.73750000e+01, 3.02500000e+01, 2.85750008e+01, 1.14250002e+01, + 1.77999992e+01, 2.30499992e+01, 1.63999996e+01, 1.35500002e+01, + 2.56749992e+01, 2.28750000e+01, 9.87500000e+00, 7.37249985e+01, + 5.00499992e+01, 6.62500000e+00, 8.85000038e+00, 1.67000008e+01, + 1.06499996e+01, 2.09999990e+00, 8.60000038e+00, 1.14400002e+02, + 1.16550003e+02, 2.56499996e+01, 2.08500004e+01, 4.11250000e+01, + 2.93999996e+01, 7.92500019e+00, 1.51750002e+01, 1.32250004e+01, + 3.69500008e+01, 3.41500015e+01, 2.11000004e+01, 2.40249996e+01, + 2.88750000e+01, 1.82500000e+01, 8.10000038e+00, 1.09250002e+01, + 1.32250004e+01, 2.55499992e+01, 37., 1.21999998e+01, + 1.05249996e+01, 1.43999996e+01, 1.46750002e+01, 1.37749996e+01, + 2.51250000e+01, 4.87500000e+00, 3.79999995e+00, 1.86250000e+01, + 2.08250008e+01, 3.07500005e+00, 1.97500002e+00, 3.09500008e+01, + 1.23849998e+02, 5.04249992e+01, 4.72499990e+00, 1.98750000e+01, + 3.37500000e+01, 9.19999981e+00, 1.67499995e+00, 9.50000000e+00, + 9.23750000e+01, 1.04375000e+02, 2.30249996e+01, 8.07499981e+00, + 2.62500000e+01, 2.52250004e+01, 5.37500000e+00, 4.22499990e+00, + 1.54250002e+01, 87., 6.02500000e+01, 4.72499990e+00, + 7.52500010e+00, 2.27500000e+01, 1.43750000e+01, 7.08910894e+00, + 7.12871265e+00, 6.15841579e+00, 1.03564358e+01, 3.47425728e+01, + 4.42673264e+01, 1.73267326e+01, 8.00990105e+00, 4.72277212e+00, + 4.09900999e+00, 5.17821789e+00, 1.55049505e+01, 8.55247498e+01, + 1.25841583e+02, 4.61683159e+01, 1.07029705e+01, 9.42574215e+00, + 9.93069267e+00, 1.34653463e+01, 1.53069305e+01, 6.67821808e+01, + 1.28188126e+02, 7.30297012e+01, 1.88019810e+01, 1.85148506e+01, + 1.81188126e+01, 2.39702969e+01, 1.88118820e+01, 3.24059410e+01, + 1.05306931e+02, 9.67425766e+01, 2.81287136e+01, 1.50990095e+01, + 1.21782179e+01, 1.02178221e+01, 1.16435642e+01, 2.19405937e+01, + 33., 2.36138611e+01, 1.49108915e+01, 1.28118811e+01, + 9.35643578e+00, 8.46534634e+00, 1.56732674e+01, 6.09702988e+01, + 1.19841583e+02, 7.41188126e+01, 2.07227726e+01, 6.84158421e+00, + 4.62376261e+00, 5.55445528e+00, 1.00495052e+01, 6.00891075e+01, + 1.34673264e+02, 1.11455444e+02, 2.13465347e+01, 1.19603958e+01, + 7.32673264e+00, 8.28712845e+00, 7.76237631e+00, 2.18217831e+01, + 1.15237625e+02, 1.19534653e+02, 3.29009895e+01, 1.42277231e+01, + 1.16039600e+01, 8.57425785e+00, 8.56435680e+00, 1.30693073e+01, + 1.85346527e+01, 1.64455452e+01, 1.21782179e+01, 2.04059410e+01, + 1.41485147e+01, 1.05841579e+01, 1.31485147e+01, 2.49801979e+01, + 4.65841599e+01, 4.47524757e+01, 2.51683159e+01, 1.19504948e+01, + 7.76237631e+00, 7.13861370e+00, 8.06930733e+00, 2.75544548e+01, + 1.06702972e+02, 9.45742569e+01, 2.36930695e+01, 6.89108896e+00, + 2.91089106e+00, 2.42574263e+00, 3.52475238e+00, 1.59702969e+01, + 1.02821785e+02, 1.13316833e+02, 2.42772274e+01, 1.83168316e+00, + 1.10891092e+00, 7.92079210e-01, 1.11881185e+00, 2.26732683e+00, + 2.77227712e+00, 2.05940604e+00, 1.33663368e+00, 3.65346527e+00, + 2.29702973e+00, 1.36633658e+00, 1.83168316e+00, 3.37623763e+00, + 3.89108920e+00, 4.19801998e+00, 3.95049500e+00, 3.33663368e+00, + 2.20792079e+00, 1.80198026e+00, 1.94059408e+00, 3.85148525e+00, + 7.28712893e+00, 6.65346527e+00, 4.72277212e+00, 1.73267329e+00, + 7.62376249e-01, 7.42574275e-01, 1.04950500e+00, 3.47524762e+00, + 1.18415842e+01, 1.30990095e+01, 4., 9.49499969e+01, + 9.75000024e-01, 6.25000000e-01, 4.44999981e+00, 6.07499981e+00, + 2.65000010e+00, 1.08999996e+01, 1.32750000e+02, 2.64500008e+01, + 2.50000000e+00, 5.05000019e+00, 1.54750004e+01, 1.60249996e+01, + 1.08249998e+01, 4.34000015e+01, 1.05474998e+02, 12., + 8.32499981e+00, 1.24250002e+01, 1.56750002e+01, 1.16499996e+01, + 1.60499992e+01, 5.94500008e+01, 3.87999992e+01, 1.29499998e+01, + 9.67500019e+00, 8.05000019e+00, 3.97499990e+00, 6.17500019e+00, + 3.17250004e+01, 5.67500000e+01, 2.58500004e+01, 1.35074997e+02, + 8.30000019e+00, 8.75000000e-01, 3.84999990e+00, 1.28249998e+01, + 7.82499981e+00, 7.67500019e+00, 1.01550003e+02, 4.58750000e+01, + 5.82499981e+00, 5.97499990e+00, 1.23999996e+01, 3.08999996e+01, + 3.16499996e+01, 3.07500000e+01, 5.94000015e+01, 3.63250008e+01, + 1.23249998e+01, 6.44999981e+00, 7.30000019e+00, 1.34499998e+01, + 2.83250008e+01, 4.97750015e+01, 5.94749985e+01, 2.32000008e+01, + 8.27499962e+00, 2.67499995e+00, 2.82500005e+00, 7.94999981e+00, + 2.75750008e+01, 5.31749992e+01, 4.83499985e+01, 1.35725006e+02, + 7.99749985e+01, 2., 1.14999998e+00, 9.87500000e+00, + 1.61000004e+01, 6.47499990e+00, 2.31000004e+01, 6.79749985e+01, + 3.29249992e+01, 4.25000000e+00, 3.37500000e+00, 1.86749992e+01, + 4.09500008e+01, 3.40750008e+01, 3.57000008e+01, 4.57750015e+01, + 1.45749998e+01, 7.82499981e+00, 5.75000000e+00, 1.33999996e+01, + 3.59249992e+01, 4.62500000e+01, 5.80750008e+01, 2.82250004e+01, + 1.02500000e+01, 9., 9.22500038e+00, 1.46499996e+01, + 2.25499992e+01, 2.95750008e+01, 3.76250000e+01, 1.14925003e+02, + 1.21074997e+02, 2.15000010e+00, 1.74999997e-01, 4.80000019e+00, + 3.40250015e+01, 7.12500000e+00, 5.02500010e+00, 6.00499992e+01, + 1.08849998e+02, 1.52749996e+01, 1.95000005e+00, 5.52500010e+00, + 1.88500004e+01, 2.07999992e+01, 1.44499998e+01, 27., + 4.58499985e+01, 2.57749996e+01, 6.05000019e+00, 9.80000019e+00, + 2.36250000e+01, 3.25999985e+01, 2.83500004e+01, 1.72500000e+01, + 1.28999996e+01, 2.19249992e+01, 9.94999981e+00, 1.06499996e+01, + 1.79249992e+01, 2.48250008e+01, 2.31000004e+01, 7.14680862e+01, + 1.29148932e+01, 3.51063824e+00, 8.65957451e+00, 2.14680843e+01, + 8., 7.91489363e+00, 2.35957451e+01, 2.04680843e+01, + 1.20212765e+01, 6.63829803e+00, 6.25531912e+00, 2.04255314e+01, + 2.40638294e+01, 1.71276588e+01, 1.44893618e+01, 3.93829803e+01, + 1.52978725e+01, 3.06382990e+00, 7.44680834e+00, 6.99361725e+01, + 3.22127647e+01, 6.42553186e+00, 1.17234039e+01, 2.34680843e+01, + 1.22553196e+01, 3.36170220e+00, 8.44680882e+00, 4.89574471e+01, + 1.07446804e+01, 2.40425539e+00, 4.72340441e+00, 1.06872337e+02, + 3.92127647e+01, 7.06382990e+00, 6.38297892e+00, 2.90425529e+01, + 1.99787235e+01, 1.15106382e+01, 3.07872334e+01, 2.94468079e+01, + 1.84042549e+01, 1.48510637e+01, 1.20212765e+01, 2.33617020e+01, + 4.12127647e+01, 3.51276588e+01, 3.34042549e+01, 4.60212784e+01, + 1.02978725e+01, 5.80851078e+00, 4.38085098e+01, 1.11404259e+02, + 3.87659569e+01, 1.54468088e+01, 3.61914902e+01, 4.32978706e+01, + 1.35957451e+01, 4.08510637e+00, 2.39361706e+01, 7.64042587e+01, + 9.44680882e+00, 2.87234044e+00, 1.27021275e+01, 9.48510666e+01, + 9.90851059e+01, 29., 7.93617010e+00, 3.64680862e+01, + 3.23404274e+01, 8.89361668e+00, 1.25531912e+01, 5.57234039e+01, + 5.94042549e+01, 3.65744667e+01, 3.78085098e+01, 3.93191490e+01, + 2.50638294e+01, 3.06595745e+01, 2.95531921e+01, 3.88085098e+01, + 1.14042549e+01, 2.12553196e+01, 1.06808510e+02, 1.09617020e+02, + 1.85744686e+01, 1.30212765e+01, 4.22765961e+01, 3.96595726e+01, + 8.08510685e+00, 4., 3.08936176e+01, 4.95531921e+01, + 4.87234020e+00, 4.48936176e+00, 2.44893608e+01, 8.01063843e+01, + 6.37659569e+01, 1.99787235e+01, 8.25531960e+00, 5.50638313e+01, + 3.90425529e+01, 8.55319118e+00, 8.72340393e+00, 1.01723404e+02, + 6.27872353e+01, 2.13617020e+01, 3.43404274e+01, 8.26595764e+01, + 2.16170216e+01, 2.14255314e+01, 2.47234039e+01, 5.05531921e+01, + 1.36382980e+01, 1.45319147e+01, 6.32127647e+01, 1.08276596e+02, + 1.79361706e+01, 6.97872353e+00, 3.35319138e+01, 2.49787235e+01, + 8.51063824e+00, 4.42553186e+00, 1.25531912e+01, 1.69361706e+01, + 5.76595736e+00, 3.80851054e+00, 1.66595745e+01, 2.68571424e+00, + 0., 2.85714287e-02, 3.14285725e-01, 7.22857141e+00, + 1.48285713e+01, 4.65714264e+00, 7.65714264e+00, 1.05714285e+00, + 0., 0., 0., 1.48571432e+00, 9.28571415e+00, 4.40000010e+00, + 3.62857151e+00, 9.51428604e+00, 1.14285719e+00, 5.71428575e-02, + 8.57142881e-02, 1.42857149e-01, 4.28571433e-01, 5.42857170e-01, + 1.05714285e+00, 5.33714294e+01, 3.71428561e+00, 2.00000003e-01, + 2.85714287e-02, 5.14285743e-01, 1.42857146e+00, 1.45714283e+00, + 7.31428576e+00, 1.22285719e+01, 5.71428597e-01, 1.88571429e+00, + 4.57142878e+00, 3.21428566e+01, 7.95714264e+01, 6.05142860e+01, + 5.21142845e+01, 6.40000010e+00, 8.57142881e-02, 2.57142872e-01, + 1.05714285e+00, 5.54285698e+01, 115., 3.21714287e+01, + 3.01714287e+01, 3.74285698e+01, 5.54285717e+00, 9.71428573e-01, + 1.91428566e+00, 6.14285707e+00, 1.61142864e+01, 1.00857143e+01, + 4.08571434e+00, 1.40628571e+02, 3.33714294e+01, 3.11428571e+00, + 1.02857149e+00, 4.11428595e+00, 9.60000038e+00, 8.94285679e+00, + 3.20285721e+01, 1.68571434e+01, 7.34285736e+00, 6.74285698e+00, + 8.05714321e+00, 2.31714287e+01, 52., 4.49428558e+01, + 2.42571430e+01, 1.00571432e+01, 4.14285707e+00, 3.08571434e+00, + 6.42857122e+00, 7.78000031e+01, 1.40171432e+02, 7.48857117e+01, + 2.48857136e+01, 2.36000004e+01, 2.94285703e+00, 2.22857141e+00, + 3.79999995e+00, 1.68285713e+01, 1.01857140e+02, 1.24571426e+02, + 1.29428568e+01, 1.33971436e+02, 4.85142860e+01, 1.20285711e+01, + 2.97142863e+00, 4.51428556e+00, 21., 74., 5.27428589e+01, + 1.49714289e+01, 9.22857189e+00, 4.48571444e+00, 1.08000002e+01, + 1.18285713e+01, 2.06571426e+01, 2.13142853e+01, 1.99142857e+01, + 1.98857136e+01, 1.38857145e+01, 7.19999981e+00, 2.03999996e+01, + 2.78571434e+01, 7.15714264e+01, 4.94285698e+01, 22., + 1.27142859e+01, 7.02857161e+00, 7.97142839e+00, 1.54571428e+01, + 1.96857147e+01, 7.62285690e+01, 9.98000031e+01, 1.62000008e+01, + 4.68571434e+01, 1.66857147e+01, 7.77142859e+00, 8.28571415e+00, + 8.22857189e+00, 2.98571434e+01, 7.04571457e+01, 38., + 5.86111116e+00, 1.66666663e+00, 2.33333325e+00, 6.86111116e+00, + 3.66666675e+00, 7.86111116e+00, 4.59444427e+01, 4.51388893e+01, + 4.94444466e+00, 1.11111116e+00, 2.83333325e+00, 3.36111116e+00, + 3.50000000e+00, 1.33888893e+01, 8.99166641e+01, 7.42222214e+01, + 1.36111116e+00, 1.55555558e+00, 3.50000000e+00, 1.69444442e+00, + 1.19444442e+00, 2.06944447e+01, 1.11805557e+02, 5.45555573e+01, + 1.02777779e+00, 2., 4.13888884e+00, 1.61111116e+00, + 2.52777767e+00, 3.62777786e+01, 9.84444427e+01, 2.21111107e+01, + 5.73611107e+01, 2.11111107e+01, 9.36111069e+00, 8.36111069e+00, + 5.86111116e+00, 8.05555534e+00, 4.67777786e+01, 9.30277786e+01, + 3.76111107e+01, 1.15833330e+01, 1.14722223e+01, 1.88611107e+01, + 2.35000000e+01, 3.85833321e+01, 9.45833359e+01, 99., + 1.23888893e+01, 9.38888931e+00, 10., 7.41666651e+00, + 9.47222233e+00, 3.55000000e+01, 1.03416664e+02, 6.22777786e+01, + 1.79166660e+01, 8.52777767e+00, 5.19444466e+00, 3.88888884e+00, + 1.65277786e+01, 5.72500000e+01, 9.87777786e+01, 4.67500000e+01, + 9.64722214e+01, 8.03333359e+01, 2.55000000e+01, 1.12222223e+01, + 8.36111069e+00, 6.11111116e+00, 8.86111069e+00, 4.29166679e+01, + 7.04722214e+01, 7.54444427e+01, 4.56666679e+01, 3.82500000e+01, + 3.15833340e+01, 2.35833340e+01, 2.55277786e+01, 4.42222214e+01, + 3.09722214e+01, 3.03333340e+01, 2.58055553e+01, 2.09444447e+01, + 1.45833330e+01, 1.36111107e+01, 2.48888893e+01, 2.94722214e+01, + 3.91666679e+01, 3.02222214e+01, 3.00277786e+01, 25., + 2.47222214e+01, 2.12222214e+01, 2.52500000e+01, 3.15833340e+01, + 4.31666679e+01, 8.15555573e+01, 2.91111107e+01, 5.83333349e+00, + 6.63888884e+00, 8.88888931e+00, 1.83333337e+00, 3.58333325e+00, + 3.92777786e+01, 1.12166664e+02, 6.39166679e+01, 1.23055553e+01, + 7.38888884e+00, 1.02777777e+01, 7.36111116e+00, 5.50000000e+00, + 2.03055553e+01, 6.38888893e+01, 6.84444427e+01, 1.94722214e+01, + 6.16666651e+00, 8.38888931e+00, 1.22222223e+01, 9.80555534e+00, + 8.38888931e+00, 3.08333340e+01, 5.93055573e+01, 3.51111107e+01, + 7.72222233e+00, 3.55555558e+00, 5.05555534e+00, 4.50000000e+00, + 4.93424644e+01, 1.04383564e+01, 8.21917820e+00, 1.11369867e+01, + 1.17260275e+01, 8.79452038e+00, 1.96849308e+01, 6.91232910e+01, + 2.82328758e+01, 2.44383564e+01, 2.26301365e+01, 2.26438351e+01, + 2.11232872e+01, 18., 2.98219185e+01, 3.94520531e+01, + 2.24931507e+01, 2.52739735e+01, 3.09589043e+01, 3.11369858e+01, + 3.65068512e+01, 3.63561630e+01, 2.77260265e+01, 2.31643829e+01, + 8.46575356e+00, 8.94520569e+00, 1.46986303e+01, 3.32739716e+01, + 7.57123260e+01, 4.56027412e+01, 1.73150692e+01, 8.20547962e+00, + 6.51506882e+01, 4.29863014e+01, 1.68767128e+01, 1.43013697e+01, + 1.56164379e+01, 1.79452057e+01, 2.17260265e+01, 4.04794502e+01, + 2.58356171e+01, 2.12054787e+01, 2.59863014e+01, 2.99452057e+01, + 3.53698616e+01, 2.82876720e+01, 2.61917801e+01, 2.91232872e+01, + 2.13698635e+01, 2.06986294e+01, 3.55616455e+01, 5.47123299e+01, + 4.61917801e+01, 2.24931507e+01, 1.78082199e+01, 2.24657536e+01, + 8.49315071e+00, 8.60273933e+00, 2.06438351e+01, 8.51369858e+01, + 7.90821915e+01, 2.16438351e+01, 8.72602749e+00, 9.06849289e+00, + 4.81369858e+01, 1.04821915e+02, 7.11643829e+01, 2.10547943e+01, + 1.52054796e+01, 1.68767128e+01, 9.58904076e+00, 1.19041100e+01, + 1.50136986e+01, 5.53698616e+01, 103., 5.99726028e+01, + 2.58219185e+01, 1.83287678e+01, 1.36438360e+01, 1.09589043e+01, + 7.61643839e+00, 1.69178085e+01, 9.59726028e+01, 1.04260277e+02, + 3.31232872e+01, 8.43835640e+00, 8.60273933e+00, 9.15068531e+00, + 4.34246588e+00, 5.08219194e+00, 4.55068512e+01, 1.09945206e+02, + 4.22191772e+01, 5.01369858e+00, 2.67123294e+00, 5.08219194e+00, + 1.07671232e+01, 6.89452057e+01, 7.53835602e+01, 1.58904114e+01, + 1.11369867e+01, 2.94657536e+01, 6.95890427e+00, 8.49315047e-01, + 1.56164384e+00, 5.26849327e+01, 1.14904106e+02, 4.52328758e+01, + 6.47945213e+00, 9.82191753e+00, 5.79452038e+00, 7.94520557e-01, + 1.17808223e+00, 1.69452057e+01, 107., 7.88219147e+01, + 8.80821896e+00, 2.69863009e+00, 5.28767109e+00, 3.04109597e+00, + 5.75342464e+00, 4.28767109e+00, 5.16301384e+01, 6.71643829e+01, + 9.19178104e+00, 1.83561647e+00, 8.15068531e+00, 2.45479450e+01, + 8.50000024e-01, 2.62000008e+01, 86., 6., 1.35000002e+00, + 3.20250015e+01, 7.50250015e+01, 4.42500019e+00, 2.37500000e+00, + 8.11999969e+01, 9.85000000e+01, 4.42500019e+00, 2.22499990e+00, + 4.51500015e+01, 4.54500008e+01, 2.47499990e+00, 1.08249998e+01, + 1.00074997e+02, 6.95000000e+01, 4.97499990e+00, 3.12500000e+00, + 2.95750008e+01, 1.61499996e+01, 4.15000010e+00, 2.12999992e+01, + 7.71999969e+01, 3.13250008e+01, 4.92500019e+00, 2.77500010e+00, + 8.05000019e+00, 4.25000000e+00, 6.55000019e+00, 1.92499995e+00, + 6.77500010e+00, 1.74750004e+01, 2.90000010e+00, 2.17499995e+00, + 78., 1.02849998e+02, 7.42500019e+00, 1.20000005e+00, + 3.75999985e+01, 3.14249992e+01, 2.25000000e+00, 1.01000004e+01, + 1.24699997e+02, 7.20999985e+01, 1.14999998e+00, 7.25000000e+00, + 1.06275002e+02, 4.02750015e+01, 3.67499995e+00, 1.70750008e+01, + 9.32500000e+01, 1.80750008e+01, 1.20000005e+00, 2.77250004e+01, + 1.13500000e+02, 2.72000008e+01, 4.52500010e+00, 6.92500019e+00, + 3.33750000e+01, 6.97499990e+00, 5.55000019e+00, 9.05000019e+00, + 1.33750000e+01, 1.20500002e+01, 8.14999962e+00, 8.10000038e+00, + 2.25000000e+01, 1.80249996e+01, 8.14999962e+00, 5.44999981e+00, + 1.22749996e+01, 8.05000019e+00, 5.02500010e+00, 3.63750000e+01, + 1.03525002e+02, 1.97749996e+01, 3.67499995e+00, 6.15000010e+00, + 3.91250000e+01, 5.82499981e+00, 3.37500000e+00, 9.52500000e+01, + 1.21550003e+02, 4.15000010e+00, 1.74999997e-01, 4.28750000e+01, + 1.03275002e+02, 9.32499981e+00, 5.90000010e+00, 2.91749992e+01, + 3.91500015e+01, 2.57500005e+00, 1.57500005e+00, 1.38249998e+01, + 1.27250004e+01, 1.16999998e+01, 1.36000004e+01, 9.02499962e+00, + 7.02500010e+00, 6.94999981e+00, 1.20500002e+01, 1.25749998e+01, + 1.56750002e+01, 1.22250004e+01, 1.21000004e+01, 3.65499992e+01, + 3.17250004e+01, 7.87500000e+00, 7.90000010e+00, 3.65000010e+00, + 8.85000038e+00, 3.22499990e+00, 8.25000000e+00, 1.20224998e+02, + 6.42750015e+01, 6.75000012e-01, 1.74999997e-01, 4.04749985e+01, + 3.83499985e+01, 3.32500005e+00, 7.44999981e+00, 6.53499985e+01, + 2.16000004e+01, 3.49999994e-01, 3.24999988e-01, 1.04535713e+02, + 5.98571434e+01, 2.20714283e+01, 2.45000000e+01, 2.69642849e+01, + 8.85714245e+00, 8.42857170e+00, 4.38928566e+01, 1.90714283e+01, + 2.54285717e+01, 2.75714283e+01, 5.82500000e+01, 7.21071396e+01, + 4.23571434e+01, 1.67857151e+01, 8.96428585e+00, 2.11071434e+01, + 1.65000000e+01, 7.14285707e+00, 3.22142868e+01, 1.24428574e+02, + 7.55000000e+01, 6.17857122e+00, 3.57142854e+00, 1.51071424e+01, + 1.02142859e+01, 1.50000000e+00, 5.25000000e+00, 3.93928566e+01, + 1.52857141e+01, 1.96428573e+00, 3.17857146e+00, 1.05750000e+02, + 1.03892860e+02, 2.15000000e+01, 1.83571434e+01, 4.85000000e+01, + 2.00714283e+01, 3.07142854e+00, 9.50000000e+00, 3.26071434e+01, + 6.48214264e+01, 4.46428566e+01, 5.89285698e+01, 6.84642868e+01, + 2.72857151e+01, 6.67857122e+00, 6.32142878e+00, 1.90357151e+01, + 1.43214283e+01, 1.37142859e+01, 6.37142868e+01, 1.27678574e+02, + 4.35357132e+01, 6.07142878e+00, 1.11785717e+01, 1.01785717e+01, + 4.67857122e+00, 2.50000000e+00, 1.17500000e+01, 6.08571434e+01, + 1.41785717e+01, 2.17857146e+00, 4.96428585e+00, 6.68571396e+01, + 1.04785713e+02, 4.18214302e+01, 1.11785717e+01, 3.26071434e+01, + 3.15357151e+01, 9.39285755e+00, 5.39285707e+00, 2.81428566e+01, + 6.98214264e+01, 8.71071396e+01, 6.62500000e+01, 4.74642868e+01, + 2.13928566e+01, 7.07142878e+00, 9.75000000e+00, 1.51071424e+01, + 1.46785717e+01, 4.04642868e+01, 1.00785713e+02, 1.01357140e+02, + 1.92142849e+01, 1.21071424e+01, 2.80714283e+01, 4.75000000e+00, + 1.60714281e+00, 3.53571439e+00, 1.96428566e+01, 3.59642868e+01, + 5.64285707e+00, 3.42857146e+00, 9.21428585e+00, 1.14285717e+01, + 3.17500000e+01, 3.02857151e+01, 5.85714293e+00, 7.46428585e+00, + 1.32500000e+01, 5.46428585e+00, 2.64285707e+00, 6.46428585e+00, + 2.03214283e+01, 7.02857132e+01, 3.91785698e+01, 7.14285707e+00, + 5.28571415e+00, 6.10714293e+00, 7.03571415e+00, 4.89285707e+00, + 4.60714293e+00, 3.11785717e+01, 4.78928566e+01, 20., + 4.14285707e+00, 1.03928576e+01, 2.05357151e+01, 1.82142854e+00, + 6.78571403e-01, 1.57142854e+00, 7.28571415e+00, 7.25000000e+00, + 1.50000000e+00, 2.57142854e+00, 7.42857122e+00, 2.28194447e+01, + 8.63055573e+01, 6.94444466e+00, 3.90277767e+00, 1.45138893e+01, + 2.86527786e+01, 8.81944466e+00, 2.31944442e+00, 3.33888893e+01, + 1.34236115e+02, 2.49861107e+01, 2.56944442e+00, 2.48472214e+01, + 1.23569443e+02, 2.28055553e+01, 3.25000000e+00, 1.11388893e+01, + 6.46805573e+01, 2.46388893e+01, 3.97222233e+00, 1.36944447e+01, + 1.28638885e+02, 5.62500000e+01, 2.86111116e+00, 8.55555534e+00, + 3.06111107e+01, 2.73055553e+01, 8.70833302e+00, 3.48611116e+00, + 3.42500000e+01, 3.35833321e+01, 2.09722233e+00, 1.88888884e+00, + 1.13333330e+01, 4.70833349e+00, 4.76388884e+00, 1.77222214e+01, + 40., 1.54444447e+01, 2.87500000e+00, 6.76388884e+00, + 1.26055557e+02, 4.51388893e+01, 4.76388884e+00, 1.47916670e+01, + 4.70694427e+01, 2.18472214e+01, 3.97222233e+00, 5.56944466e+00, + 1.36625000e+02, 1.16291664e+02, 3.19444442e+00, 7.01388884e+00, + 1.11291664e+02, 7.05972214e+01, 3.81944442e+00, 3.73611116e+00, + 8.75833359e+01, 1.07888885e+02, 4.54166651e+00, 2.68055558e+00, + 1.04513885e+02, 1.28541672e+02, 4.59722233e+00, 1.45833337e+00, + 1.33333337e+00, 1.77777779e+00, 3.26388884e+00, 1.17777777e+01, + 3.96805573e+01, 1.83750000e+01, 3.38888884e+00, 1.66666663e+00, + 3.94444442e+00, 3.22222233e+00, 3.20833325e+00, 1.42222223e+01, + 5.50416679e+01, 2.99861107e+01, 5.18055534e+00, 2.16666675e+00, + 4.51944427e+01, 3.81250000e+01, 3.30555558e+00, 9.77777767e+00, + 4.31388893e+01, 3.21527786e+01, 8.02777767e+00, 2.59722233e+00, + 6.82777786e+01, 1.05902779e+02, 3.63888884e+00, 3.29166675e+00, + 2.29722214e+01, 3.11388893e+01, 9.61111069e+00, 1.40277779e+00, + 1.40277779e+00, 1.41666663e+00, 1.61111116e+00, 4.55555534e+00, + 1.56111107e+01, 1.08333330e+01, 2.01388884e+00, 1.18055558e+00, + 1.04166663e+00, 1.16666663e+00, 1.65277779e+00, 5.22222233e+00, + 2.72083340e+01, 2.15555553e+01, 3.37500000e+00, 1.02777779e+00, + 6.11111104e-01, 9.58333313e-01, 1.36111116e+00, 3.61111116e+00, + 3.07916660e+01, 2.89027786e+01, 4.95833349e+00, 1.27777779e+00, + 9.58333313e-01, 9.44444418e-01, 1.05555558e+00, 1.79166663e+00, + 1.82222214e+01, 2.77500000e+01, 7.33333349e+00, 2.26666660e+01, + 1.31794872e+01, 7.56410265e+00, 2.84871788e+01, 105., 18., + 4.64102554e+00, 6.69230747e+00, 3.79230766e+01, 1.12564106e+01, + 3.12820506e+00, 1.64615383e+01, 6.85384598e+01, 2.78461533e+01, + 1.45641022e+01, 2.67692299e+01, 2.93333340e+01, 1.37435894e+01, + 7.41025639e+00, 1.05384617e+01, 3.91025658e+01, 4.21025658e+01, + 2.69743595e+01, 2.72820511e+01, 1.86923084e+01, 1.57692308e+01, + 1.00512819e+01, 9.43589783e+00, 1.98461533e+01, 2.77692299e+01, + 1.51794872e+01, 10., 3.60512810e+01, 3.41282043e+01, + 1.53589745e+01, 1.08205128e+01, 1.02717949e+02, 7.72307663e+01, + 1.91282043e+01, 9.17948723e+00, 6.99230804e+01, 7.14102554e+01, + 1.98461533e+01, 1.24102564e+01, 8.52564087e+01, 9.20769196e+01, + 2.04871788e+01, 1.73076916e+01, 4.75128212e+01, 6.20256424e+01, + 4.13333321e+01, 3.21794853e+01, 6.97179489e+01, 6.94615402e+01, + 2.14102573e+01, 1.45128202e+01, 1.21794872e+01, 1.25897436e+01, + 1.53589745e+01, 2.20256405e+01, 3.23076935e+01, 2.38205128e+01, + 5.79487181e+00, 5.53846169e+00, 1.63589745e+01, 3.35384598e+01, + 1.20512819e+01, 9.41025639e+00, 4.15641022e+01, 8.69230804e+01, + 2.57435894e+01, 8.84615421e+00, 1.49743586e+01, 5.96410255e+01, + 2.38717957e+01, 6.74358988e+00, 3.90512810e+01, 1.23307693e+02, + 3.95128212e+01, 4.15384626e+00, 6.46153831e+00, 3.08461533e+01, + 3.51025658e+01, 1.87948723e+01, 1.72307701e+01, 8.02820511e+01, + 6.85128174e+01, 4.43589735e+00, 3.87179494e+00, 4.20512819e+00, + 1.12820511e+01, 1.45384617e+01, 1.27179489e+01, 1.37435894e+01, + 6.14615402e+01, 2.38974361e+01, 3.38461542e+00, 8.33333302e+00, + 7., 7.89743567e+00, 1.14615383e+01, 3.85384598e+01, + 3.15641022e+01, 1.05641022e+01, 6.02564096e+00, 2.31538467e+01, + 1.15384617e+01, 4.10256433e+00, 6.58974361e+00, 8.09230804e+01, + 6.89487152e+01, 2.23333340e+01, 3.71794868e+00, 1.29487181e+01, + 1.31025639e+01, 2.82051277e+00, 2.17948723e+00, 7.73589706e+01, + 1.16384613e+02, 1.84358978e+01, 3.28205132e+00, 2.30769229e+00, + 5.58974361e+00, 2.97435904e+00, 1.12820518e+00, 1.32051287e+01, + 1.17897438e+02, 5.55128212e+01, 1.44390240e+01, 1.53170729e+01, + 6.43902445e+00, 3.82926822e+00, 4.92682934e+00, 3.02195129e+01, + 2.63902435e+01, 1.16341467e+01, 2.06097565e+01, 2.62682934e+01, + 6.95121956e+00, 5.41463423e+00, 3.23414650e+01, 8.58048782e+01, + 2.21951218e+01, 9.34146309e+00, 2.44390240e+01, 3.15121956e+01, + 6.41463423e+00, 6.90243912e+00, 3.96097565e+01, 5.03170738e+01, + 8.46341419e+00, 6.21951199e+00, 1.04878044e+01, 1.03902435e+01, + 4.92682934e+00, 4.24390221e+00, 6.60975599e+00, 6.04878044e+00, + 7.65853643e+00, 7.26829290e+00, 2.46097565e+01, 3.63170738e+01, + 2.25853653e+01, 1.21463413e+01, 6.78048801e+00, 1.49512196e+01, + 2.44878044e+01, 1.99756088e+01, 2.68536587e+01, 2.38780479e+01, + 2.65121956e+01, 2.42682934e+01, 6.08292694e+01, 5.91463432e+01, + 2.30243912e+01, 2.28048782e+01, 3.76341476e+01, 4.74634132e+01, + 1.11951218e+01, 1.86829262e+01, 8.35365829e+01, 8.91219482e+01, + 1.69268284e+01, 8.48780441e+00, 1.92926826e+01, 3.16829262e+01, + 1.30243902e+01, 6.92682934e+00, 1.16585369e+01, 2.16829262e+01, + 7.53658533e+00, 4.17073154e+00, 9.82926846e+00, 7.73170700e+01, + 8.44390259e+01, 2.41707325e+01, 6.48780489e+00, 3.24634132e+01, + 2.95121956e+01, 7.51219511e+00, 1.94146347e+01, 1.02268295e+02, + 9.82926865e+01, 3.51951218e+01, 1.94878044e+01, 6.34878044e+01, + 3.01219521e+01, 2.30487804e+01, 2.02195129e+01, 9.51219482e+01, + 3.72682915e+01, 9.90243912e+00, 3.20975609e+01, 1.19975609e+02, + 3.24878044e+01, 8.63414669e+00, 1.27073174e+01, 58., + 1.81219521e+01, 4.48780489e+00, 1.11951218e+01, 9.59268265e+01, + 2.48536587e+01, 1.53658533e+00, 2.87804890e+00, 1.94390240e+01, + 3.16829262e+01, 1.08048782e+01, 5.39024401e+00, 3.37317085e+01, + 2.64634151e+01, 2.39024401e+00, 5.80487823e+00, 8.36585388e+01, + 4.82439041e+01, 1.17804880e+01, 8.56097603e+00, 7.32926865e+01, + 3.22926826e+01, 3.43902445e+00, 7.34146357e+00, 1.26073174e+02, + 4.19756088e+01, 3.63414645e+00, 7.29268312e+00, 8.64146347e+01, + 1.56341467e+01, 1., 4.68292665e+00, 8.74390259e+01, + 2.81463413e+01, 1.68292677e+00, 7.75609779e+00, 9.70731735e+01, + 1.25853662e+01, 2.92682916e-01, 2.81034493e+00, 4.53448296e+00, + 8.08620644e+00, 2.49137936e+01, 3.15517235e+01, 1.25172415e+01, + 3.62068963e+00, 1.93103445e+00, 1.02068968e+01, 8.77586174e+00, + 1.35172415e+01, 1.09603447e+02, 66., 1.23793106e+01, + 6.44827604e+00, 1.01896553e+01, 6.60344839e+00, 3.89655161e+00, + 4.07586212e+01, 1.28310349e+02, 2.29137936e+01, 3.67241383e+00, + 7.67241383e+00, 1.41379309e+01, 3.31034493e+00, 4.51724148e+00, + 5.63965530e+01, 4.79482765e+01, 3.60344839e+00, 3.75862074e+00, + 13., 1.17241383e+01, 4.93103456e+00, 6.25862074e+00, + 8.72413826e+00, 2.82413788e+01, 6.33275871e+01, 2.32931042e+01, + 6.34482765e+00, 4.12068987e+00, 1.18965521e+01, 5.34482765e+00, + 6.44827604e+00, 1.28775864e+02, 1.41189651e+02, 1.63965511e+01, + 7.36206913e+00, 1.09482756e+01, 2.02931042e+01, 7.08620691e+00, + 1.75344830e+01, 9.14655151e+01, 5.46206894e+01, 5.22413778e+00, + 1.79827595e+01, 3.79482765e+01, 2.00689659e+01, 15., + 3.10862064e+01, 3.25344810e+01, 1.68965511e+01, 1.65172405e+01, + 5.02413788e+01, 4.80689659e+01, 7.10344839e+00, 5.93103456e+00, + 6.84482765e+00, 1.55862064e+01, 6.88448257e+01, 3.45517235e+01, + 8.82758617e+00, 4.53448296e+00, 1.03275862e+01, 4.56896544e+00, + 2.60344839e+00, 3.41379318e+01, 1.42586212e+02, 7.69482727e+01, + 4.12068987e+00, 5.29310322e+00, 3.83275871e+01, 1.71551723e+01, + 1.49827585e+01, 2.62586212e+01, 6.14137917e+01, 2.37586212e+01, + 1.06379309e+01, 3.11379318e+01, 2.72758617e+01, 2.09655170e+01, + 3.08448277e+01, 2.95172405e+01, 2.02413788e+01, 1.50172415e+01, + 2.30517235e+01, 3.31724129e+01, 4.39655161e+00, 3.91379309e+00, + 4.62068987e+00, 8.96551704e+00, 3.31379318e+01, 3.36206894e+01, + 1.09137936e+01, 3.93103456e+00, 7.63793087e+00, 6.24137926e+00, + 2.58620691e+00, 5.39655161e+00, 1.30310349e+02, 1.35482758e+02, + 7.05172396e+00, 3.25862074e+00, 1.94482765e+01, 2.00862064e+01, + 8.39655209e+00, 6.53448296e+00, 5.21379318e+01, 1.04706894e+02, + 1.47241383e+01, 7.51724148e+00, 1.97413788e+01, 2.77068958e+01, + 2.27758617e+01, 1.27758617e+01, 1.14310341e+01, 1.83103447e+01, + 2.83448277e+01, 1.93793106e+01, 2.23589745e+01, 3.15384626e+00, + 6.15384626e+00, 2.75384617e+01, 1.50256414e+01, 2.43589735e+00, + 5.79487181e+00, 3.79487190e+01, 3.27948723e+01, 3.61538458e+00, + 9.82051277e+00, 3.20769234e+01, 1.14871798e+01, 3.07692313e+00, + 4.77692299e+01, 1.20538460e+02, 2.03333340e+01, 1.03076925e+01, + 1.83333340e+01, 1.91538467e+01, 1.55641022e+01, 3.11282043e+01, + 8.79487152e+01, 7.07948685e+01, 1.33333330e+01, 1.14358978e+01, + 9.84615421e+00, 1.76666660e+01, 3.42051277e+01, 7.61538467e+01, + 5.36153831e+01, 1.37948713e+01, 8.46666641e+01, 4.35897446e+00, + 4.20512819e+00, 4.30256424e+01, 3.44358978e+01, 3.23076916e+00, + 4.41025639e+00, 9.27948685e+01, 7.85384598e+01, 1.07692308e+01, + 1.08205128e+01, 2.82564106e+01, 1.61538467e+01, 4.30769253e+00, + 1.60512829e+01, 1.05846153e+02, 1.81282043e+01, 1.45384617e+01, + 1.56153851e+01, 1.97948723e+01, 2.05897427e+01, 1.86923084e+01, + 2.31538467e+01, 2.78461533e+01, 2.28461533e+01, 1.33846149e+01, + 8.12820530e+00, 2.49487171e+01, 7.31025620e+01, 5.91025658e+01, + 1.24615383e+01, 1.14871798e+01, 1.18743591e+02, 1.71282043e+01, + 2.87179494e+00, 2.56666660e+01, 4.66923065e+01, 8.53846169e+00, + 3.58974361e+00, 8.31025620e+01, 6.55897446e+01, 2.13846149e+01, + 9.28205109e+00, 1.66410255e+01, 2.31025639e+01, 1.01282053e+01, + 9.38461494e+00, 4.82307701e+01, 1.71025639e+01, 1.33846149e+01, + 1.25128202e+01, 2.51025639e+01, 2.89743595e+01, 1.28974361e+01, + 1.10512819e+01, 1.78717957e+01, 3.01025639e+01, 6.46153831e+00, + 6.97435904e+00, 8.33076935e+01, 8.41538467e+01, 8.02564144e+00, + 7.10256433e+00, 3.21538467e+01, 1.09512817e+02, 6.18717957e+01, + 6., 1.33076925e+01, 4.23589745e+01, 1.89487171e+01, + 5.48717928e+00, 3.49743576e+01, 4.87435913e+01, 4.14615402e+01, + 2.32051277e+01, 1.80769234e+01, 2.30769234e+01, 2.55128212e+01, + 1.93333340e+01, 2.50512829e+01, 1.42051287e+01, 1.11282053e+01, + 3.08205128e+01, 7.32307663e+01, 2.71282043e+01, 8.05128193e+00, + 1.77948723e+01, 3.67179489e+01, 2.04871788e+01, 2.92307687e+00, + 1.16153851e+01, 1.03153847e+02, 5.95641022e+01, 2.58974361e+00, + 6.74358988e+00, 3.37948723e+01, 4.91044760e+00, 5.35074615e+01, + 3.54029846e+01, 4.35820913e+00, 1.13134327e+01, 7.32686539e+01, + 4.94029846e+01, 5.68656731e+00, 5.34328365e+00, 9.61044769e+01, + 1.03029854e+02, 6.07462692e+00, 5.80597019e+00, 6.22388077e+01, + 8.23283615e+01, 7.91044760e+00, 3.61194038e+00, 7.80597000e+01, + 1.30925369e+02, 1.49402981e+01, 1.97014928e+00, 2.60298500e+01, + 1.04194031e+02, 1.53731346e+01, 4.04477596e+00, 2.76716423e+01, + 1.26268654e+02, 3.90447769e+01, 1.26865673e+00, 7.25373125e+00, + 90., 3.53731346e+01, 4.37313414e+00, 8.88059711e+00, + 9.34328365e+00, 6.94029856e+00, 1.60447769e+01, 7.40149231e+01, + 7.50746231e+01, 1.42388058e+01, 5.71641779e+00, 1.70149250e+01, + 3.00298500e+01, 6.74626875e+00, 1.09701490e+01, 7.39104462e+01, + 1.09059700e+02, 2.26268654e+01, 6.49253750e+00, 1.33582087e+01, + 5.42238808e+01, 8.94029808e+00, 5.56716394e+00, 3.53731346e+01, + 1.13865669e+02, 4.50895538e+01, 7.88059711e+00, 6.34328365e+00, + 4.56417923e+01, 1.35522385e+01, 3.73134327e+00, 1.12686567e+01, + 9.80149231e+01, 5.93880615e+01, 2.58208966e+00, 1.55223882e+00, + 1.70149255e+00, 3.07462692e+00, 1.36865673e+01, 5.74626884e+01, + 6.91044769e+01, 1.26119404e+01, 6.14925385e+00, 2.55223870e+00, + 2.55223870e+00, 4.56716394e+00, 9.59701538e+00, 5.14776115e+01, + 9.28806000e+01, 2.42537308e+01, 7.14925385e+00, 2.97014928e+00, + 3.95522380e+00, 4.34328365e+00, 6.73134327e+00, 3.13731346e+01, + 9.32089539e+01, 3.79850731e+01, 7.17910433e+00, 2.70149255e+00, + 2.92537308e+00, 3.46268654e+00, 4.25373125e+00, 1.49402981e+01, + 7.52835846e+01, 4.11940308e+01, 3.58208954e-01, 4.47761208e-01, + 1.19402982e-01, 4.47761193e-02, 1.79104483e+00, 5.97014904e+00, + 4.76119423e+00, 1.22388065e+00, 9.40298498e-01, 3.58208954e-01, + 1.49253726e-01, 2.38805965e-01, 1.58208954e+00, 6.29850769e+00, + 6.56716394e+00, 2.64179111e+00, 9.85074639e-01, 4.47761208e-01, + 1.34328365e-01, 2.38805965e-01, 1.05970144e+00, 4.53731346e+00, + 7.22388077e+00, 3.92537308e+00, 9.25373137e-01, 2.98507452e-01, + 1.49253726e-01, 1.64179102e-01, 6.71641767e-01, 2.13432837e+00, + 6.43283606e+00, 4.70149231e+00, 2.67142849e+01, 7.67714310e+01, + 6.82857132e+00, 1.42857146e+00, 1.97714291e+01, 7.71142883e+01, + 1.25714283e+01, 5.31428576e+00, 3.20285721e+01, 5.52571411e+01, + 8.60000038e+00, 4.97142839e+00, 2.10857143e+01, 3.73428574e+01, + 1.98285713e+01, 1.32857141e+01, 1.69142857e+01, 1.07428570e+01, + 5.48571444e+00, 5.45714283e+00, 1.83428574e+01, 2.13142853e+01, + 2.33999996e+01, 1.76571426e+01, 7.71428585e+00, 3.08571434e+00, + 3.48571420e+00, 4.82857132e+00, 7.42857122e+00, 9.37142849e+00, + 1.52857141e+01, 1.34571428e+01, 3.23714294e+01, 8.98857117e+01, + 9.42857170e+00, 2.25714278e+00, 3.35428581e+01, 1.15485718e+02, + 2.20857143e+01, 6.80000019e+00, 3.62285728e+01, 1.01057144e+02, + 3.25428581e+01, 4.48571444e+00, 2.73999996e+01, 9.01428604e+01, + 4.65999985e+01, 1.69142857e+01, 2.09714279e+01, 6.49142838e+01, + 2.78571434e+01, 5.59999990e+00, 1.26571426e+01, 3.49714279e+01, + 3.72571411e+01, 1.89428577e+01, 8.11428547e+00, 1.65714283e+01, + 6.77142859e+00, 6.28571415e+00, 9.91428566e+00, 1.51999998e+01, + 2.12000008e+01, 1.38285713e+01, 6.45428543e+01, 9.58285751e+01, + 8.80000019e+00, 1.36000004e+01, 4.39428558e+01, 9.80857162e+01, + 3.29714279e+01, 2.04571438e+01, 3.17142849e+01, 5.61428566e+01, + 2.55428562e+01, 1.64571438e+01, 28., 1.07599998e+02, + 9.98857117e+01, 3.97428589e+01, 2.17142849e+01, 7.69142838e+01, + 3.05428562e+01, 8.31428528e+00, 2.22285709e+01, 1.01485718e+02, + 8.00571442e+01, 2.14285717e+01, 2.03714294e+01, 6.14285698e+01, + 1.27714281e+01, 5.74285698e+00, 1.30571432e+01, 4.49428558e+01, + 1.87428570e+01, 6.59999990e+00, 9.11142883e+01, 5.71428566e+01, + 6.40000010e+00, 1.36571426e+01, 4.87428589e+01, 3.25142860e+01, + 1.18571424e+01, 3.20857124e+01, 3.51142845e+01, 2.33428574e+01, + 2.59428577e+01, 3.64000015e+01, 2.97714291e+01, 3.22571411e+01, + 4.04000015e+01, 3.01714287e+01, 1.32571430e+01, 2.16571426e+01, + 2.36000004e+01, 2.55428562e+01, 3.86857147e+01, 6.97428589e+01, + 3.32000008e+01, 1.65142860e+01, 2.12285709e+01, 4.64285698e+01, + 7.80000019e+00, 5.97142839e+00, 2.26285706e+01, 7.44285736e+01, + 1.06285715e+01, 3.94285703e+00, 1.59259260e+00, 1.62962961e+00, + 2.75925922e+00, 3.96296287e+00, 6.94444466e+00, 9.68518543e+00, + 3.83333325e+00, 1.44444442e+00, 2.16666675e+00, 3.98148155e+00, + 6., 1.21296301e+01, 4.85370369e+01, 6.75925903e+01, + 1.82592602e+01, 3.40740752e+00, 3.72407417e+01, 7.96851883e+01, + 1.13148146e+01, 1.65740738e+01, 8.77962952e+01, 9.46111145e+01, + 1.67407398e+01, 3.51851845e+00, 9.80185165e+01, 1.50592590e+02, + 1.83333340e+01, 6.87037039e+00, 8.07962952e+01, 1.31055557e+02, + 1.54444447e+01, 4.25925922e+00, 2.35185194e+00, 2.05555558e+00, + 4.74074078e+00, 5.62962961e+00, 5.83333349e+00, 9.68518543e+00, + 4.87037039e+00, 2.87037039e+00, 5.98148155e+00, 7.03703690e+00, + 8.85185146e+00, 1.57222223e+01, 3.90555573e+01, 7.26296310e+01, + 2.82037029e+01, 7.74074078e+00, 4.96296310e+00, 1.20925922e+01, + 6.98148155e+00, 1.57592592e+01, 9.34074097e+01, 135., + 3.39629631e+01, 4.29629612e+00, 3.31851845e+01, 1.34129623e+02, + 2.13518524e+01, 8.12963009e+00, 7.48333359e+01, 1.23814812e+02, + 2.20925922e+01, 4.07407427e+00, 2.38888884e+00, 3.22222233e+00, + 5.61111116e+00, 4.42592573e+00, 4.01851845e+00, 5.11111116e+00, + 4.12962961e+00, 2.51851845e+00, 7.75925922e+00, 1.08888893e+01, + 1.59814816e+01, 1.73888893e+01, 2.06481476e+01, 3.63888893e+01, + 2.40370369e+01, 1.15925922e+01, 5.42592573e+00, 6.48148155e+00, + 9., 1.50555553e+01, 5.11666679e+01, 1.08296295e+02, + 4.22777786e+01, 9.59259224e+00, 2.70370364e+00, 1.48148146e+01, + 4.35185194e+00, 5.75925922e+00, 5.89629631e+01, 1.31629623e+02, + 4.33888893e+01, 4.40740728e+00, 1.16666663e+00, 2.44444442e+00, + 3.70370364e+00, 2.66666675e+00, 2.24074078e+00, 2.74074078e+00, + 1.83333337e+00, 1.07407403e+00, 6.07407427e+00, 9.33333302e+00, + 1.25185184e+01, 1.23148146e+01, 9.68518543e+00, 1.34444447e+01, + 1.11851854e+01, 8.77777767e+00, 7.98148155e+00, 9.29629612e+00, + 1.10370369e+01, 1.26481485e+01, 1.73333340e+01, 3.16111107e+01, + 1.86481476e+01, 1.03703699e+01, 2.90740752e+00, 3.18518519e+00, + 3.40740752e+00, 5.38888884e+00, 2.23148155e+01, 7.16111145e+01, + 2.31851845e+01, 4.33333349e+00, 4.54807711e+00, 3.32692313e+00, + 2.89423084e+00, 3.41346145e+00, 2.97115374e+00, 3.25961542e+00, + 4.45192289e+00, 4.20192289e+00, 6.67307711e+00, 3.93269229e+00, + 3.97115374e+00, 6.07692289e+00, 5.74038458e+00, 4.54807711e+00, + 5.03846169e+00, 5.97115374e+00, 4.19230747e+00, 3.89423084e+00, + 5.83653831e+00, 7.82692289e+00, 5.31730747e+00, 3.96153855e+00, + 3.21153855e+00, 4.36538458e+00, 2.47115374e+00, 4.15384626e+00, + 9.32692337e+00, 8.76923084e+00, 3.70192313e+00, 2.81730771e+00, + 1.82692313e+00, 2.09615374e+00, 1.27884617e+01, 1.02596149e+01, + 1.22307692e+01, 1.38365383e+01, 1.20288458e+01, 1.24807692e+01, + 1.56346149e+01, 1.30865383e+01, 1.60096149e+01, 1.55000000e+01, + 2.56634617e+01, 3.49230766e+01, 2.20096149e+01, 1.49134617e+01, + 1.63750000e+01, 1.49230766e+01, 9.72115421e+00, 1.53942308e+01, + 6.43557663e+01, 7.78365402e+01, 2.22788467e+01, 1.03653851e+01, + 9.80769253e+00, 1.00288458e+01, 4.32692289e+00, 1.47211542e+01, + 1.11625000e+02, 9.30096130e+01, 1.21057692e+01, 5.09615374e+00, + 4.79807711e+00, 3.78846145e+00, 1.06057692e+01, 1.17692308e+01, + 1.96346149e+01, 2.98173084e+01, 1.87692299e+01, 1.32596149e+01, + 1.26250000e+01, 9.54807663e+00, 9.28846169e+00, 1.21057692e+01, + 4.87115402e+01, 1.28028839e+02, 4.60961533e+01, 1.25576925e+01, + 9.72115421e+00, 8.82692337e+00, 3.32692313e+00, 9.29807663e+00, + 1.27538460e+02, 1.52865387e+02, 3.45865402e+01, 4.67307711e+00, + 4.48076916e+00, 5.38461542e+00, 2.63461542e+00, 1.11923075e+01, + 1.47423080e+02, 1.42153839e+02, 1.05576925e+01, 3.67307687e+00, + 8.04807663e+00, 7.14423084e+00, 6.72115374e+00, 8.15384579e+00, + 1.65288467e+01, 6.19423065e+01, 3.61153831e+01, 9.60576916e+00, + 5.27884626e+00, 4.68269253e+00, 5.36538458e+00, 4.94230747e+00, + 3.05192299e+01, 1.48826920e+02, 9.08653870e+01, 6.80769253e+00, + 3.32692313e+00, 6.25000000e+00, 4.74038458e+00, 2.92307687e+00, + 5.65769234e+01, 1.47855774e+02, 4.76634598e+01, 5.78846169e+00, + 7.79807711e+00, 1.88557701e+01, 8.45192337e+00, 8.76923084e+00, + 6.66442337e+01, 8.53269196e+01, 12., 5.38461542e+00, + 2.25961533e+01, 4.01153831e+01, 2.06153851e+01, 2.25384617e+01, + 2.17179489e+01, 9.41025639e+00, 5.97435904e+00, 1.99743595e+01, + 4.16923065e+01, 2.97435894e+01, 6.51282072e+00, 1.02564106e+01, + 2.39743595e+01, 2.36666660e+01, 2.34871788e+01, 3.27948723e+01, + 4.89230766e+01, 1.91794872e+01, 4.72307701e+01, 4.92307711e+00, + 3.41025639e+00, 7.23076916e+00, 15., 1.54615383e+01, + 1.11282053e+01, 4.25384598e+01, 1.11307693e+02, 1.60256405e+01, + 1.56410253e+00, 1.30769229e+00, 1.38461542e+00, 1.05128205e+00, + 1.12820518e+00, 5.91025658e+01, 2.63333340e+01, 5.16410255e+01, + 5.52564087e+01, 1.74102573e+01, 8.79487133e+00, 37., + 9.13076935e+01, 3.64615402e+01, 9.51282024e+00, 1.58974361e+01, + 6.43846130e+01, 6.47692337e+01, 3.14615383e+01, 3.43076935e+01, + 1.02615387e+02, 6.49487152e+01, 3.77692299e+01, 3.87179494e+00, + 1.00769234e+01, 3.27692299e+01, 2.00256405e+01, 1.08205128e+01, + 4.68974342e+01, 1.13076920e+02, 8.95128174e+01, 1.74871788e+01, + 4.82051277e+00, 5.71794891e+00, 1.53846157e+00, 7.69230783e-01, + 4.82051277e+00, 9.32820511e+01, 1.15641022e+01, 3.26666679e+01, + 7.28205109e+01, 1.82564106e+01, 7.15384626e+00, 4.23333321e+01, + 1.12615387e+02, 2.84871788e+01, 1.32051287e+01, 1.46410255e+01, + 7.67179489e+01, 4.60256424e+01, 9.43589783e+00, 1.94358978e+01, + 1.17410255e+02, 7.87692337e+01, 2.64102573e+01, 7.79487181e+00, + 1.84615383e+01, 3.64102554e+01, 7., 7.79487181e+00, + 6.49230804e+01, 1.01512817e+02, 5.32564087e+01, 1.83846149e+01, + 3.89743590e+00, 6.23076916e+00, 1.92307687e+00, 2.48717952e+00, + 8.56410217e+00, 6.06666679e+01, 1.09230766e+01, 8.41025639e+00, + 3.17692299e+01, 1.45384617e+01, 1.52307692e+01, 3.19230766e+01, + 5.17435913e+01, 1.82564106e+01, 2.74358978e+01, 9.10256386e+00, + 2.98717957e+01, 1.47435894e+01, 9.38461494e+00, 1.33846149e+01, + 4.67948723e+01, 4.64358978e+01, 2.54358978e+01, 8.28205109e+00, + 8.10256386e+00, 1.22051287e+01, 7.05128193e+00, 8.02564144e+00, + 2.43333340e+01, 4.83846169e+01, 3.32307701e+01, 6.69230747e+00, + 2., 2.51282048e+00, 1.58974361e+00, 3.12820506e+00, + 8.82051277e+00, 42., 2.52647057e+01, 2.69558830e+01, + 1.12500000e+01, 2.67647052e+00, 3.64705873e+00, 1.47647057e+01, + 4.67647076e+00, 6.13235283e+00, 2.63382359e+01, 5.03676453e+01, + 2.90294113e+01, 6.25000000e+00, 2.36764717e+00, 3.29411769e+00, + 5.08823538e+00, 7.10294104e+00, 1.45000000e+01, 38., + 5.13529396e+01, 2.52647057e+01, 6.23529434e+00, 3.16176462e+00, + 6.57352924e+00, 8.82352924e+00, 4.08823538e+00, 8.70588207e+00, + 3.39705887e+01, 4.06176453e+01, 1.81176472e+01, 5.07352924e+00, + 4.42647076e+00, 4.01470566e+00, 1.44852943e+01, 5.54705887e+01, + 1.63676472e+01, 3.16176462e+00, 5.88235283e+00, 1.03985291e+02, + 4.42941170e+01, 3., 1.71176472e+01, 4.63235283e+01, + 2.85000000e+01, 9.94117641e+00, 3.77941179e+00, 3.79558830e+01, + 3.83970604e+01, 3.75000000e+00, 7., 4.13970604e+01, + 4.32205887e+01, 2.34705887e+01, 6.89705896e+00, 6.69117641e+00, + 2.00882359e+01, 4.36764717e+00, 1.63235295e+00, 1.28823528e+01, + 31., 3.06764698e+01, 1.37205887e+01, 4.17647076e+00, + 2.22058830e+01, 1.28382349e+01, 4.36764717e+00, 1.23294121e+02, + 9.21029434e+01, 1.88235295e+00, 3.27941179e+00, 7.63088226e+01, + 5.43970604e+01, 3.30882359e+00, 4.39705896e+00, 9.12647095e+01, + 1.15014709e+02, 4.73529434e+00, 2.70588231e+00, 9.65147095e+01, + 1.20955879e+02, 5.45588255e+00, 3.57352948e+00, 3.12941170e+01, + 1.09676468e+02, 1.48529415e+01, 3.16176462e+00, 3.97205887e+01, + 1.25529411e+02, 2.00735302e+01, 2.14705873e+00, 7.48529434e+00, + 9.79411774e+01, 4.33529396e+01, 3.75000000e+00, 8.10294151e+00, + 1.18985291e+02, 5.37352943e+01, 1.08823526e+00, 2.65441170e+01, + 2.65147057e+01, 1.60294116e+00, 5.11764717e+00, 1.93088226e+01, + 1.77794113e+01, 4.94117641e+00, 2.22058821e+00, 5.32058830e+01, + 9.86176453e+01, 3.54411769e+00, 3.58823538e+00, 1.46323528e+01, + 2.31617641e+01, 7.41176462e+00, 3.04411769e+00, 2.63235302e+01, + 1.22294121e+02, 1.11911764e+01, 2.29411769e+00, 9.92647076e+00, + 3.16029415e+01, 1.01617651e+01, 3.33823538e+00, 5.19117641e+00, + 1.00720589e+02, 3.01176472e+01, 1.58823526e+00, 4.86764717e+00, + 23., 1.21323528e+01, 5.80000019e+00, 1.21272726e+01, + 3.69272728e+01, 3.12727280e+01, 9.69090939e+00, 3.65454555e+00, + 3.94545460e+00, 5.29090929e+00, 7.40000010e+00, 2.20181828e+01, + 6.74181824e+01, 2.90545464e+01, 6.05454540e+00, 3.23636365e+00, + 7.49090910e+00, 7.21818161e+00, 9.07272720e+00, 4.10181808e+01, + 5.58545456e+01, 1.10727272e+01, 3.85454535e+00, 3.21818185e+00, + 5.32727289e+00, 4.81818199e+00, 8.30909061e+00, 2.76909084e+01, + 2.10545464e+01, 6.81818199e+00, 4.29090929e+00, 4.40000010e+00, + 3.43636370e+00, 3.61818171e+00, 7.96363640e+00, 8.81818199e+00, + 1.02763634e+02, 1.24345451e+02, 1.23636360e+01, 5.63636351e+00, + 1.17272730e+01, 1.81454544e+01, 5.76363659e+00, 2.02000008e+01, + 1.35890915e+02, 8.72909088e+01, 5.21818161e+00, 6.09090900e+00, + 1.82727280e+01, 1.26727276e+01, 6.09090900e+00, 1.15963638e+02, + 1.35218185e+02, 1.19454546e+01, 3.23636365e+00, 7.52727270e+00, + 1.11999998e+01, 5.76363659e+00, 1.35090914e+01, 1.27872726e+02, + 7.88181839e+01, 5.76363659e+00, 5.47272730e+00, 8.65454578e+00, + 8.45454502e+00, 5.32727289e+00, 8.36363602e+00, 3.96363640e+00, + 5.46545448e+01, 1.21254547e+02, 1.52363634e+01, 4.25454569e+00, + 1.86363640e+01, 2.83636360e+01, 5.98181820e+00, 1.23818178e+01, + 8.31636353e+01, 4.76181831e+01, 1.06363640e+01, 2.18909092e+01, + 5.20363655e+01, 2.56545448e+01, 5.40000010e+00, 6.74363632e+01, + 7.26909103e+01, 9.83636379e+00, 8.80000019e+00, 2.50727272e+01, + 2.29454536e+01, 5.01818180e+00, 2.94181824e+01, 133., + 3.96181831e+01, 2.07272720e+00, 4.01818180e+00, 8.47272682e+00, + 4., 1.94545460e+00, 3.04545460e+01, 1.17272730e+01, + 2.03999996e+01, 3.82909088e+01, 2.27272720e+01, 9.60000038e+00, + 2.06727276e+01, 4.79818192e+01, 2.04727268e+01, 1.67999992e+01, + 4.12727280e+01, 4.25454559e+01, 2.86000004e+01, 2.95636368e+01, + 5.17090912e+01, 4.54000015e+01, 1.22727270e+01, 1.85090904e+01, + 18., 1.57454548e+01, 2.73272724e+01, 3.84727287e+01, + 2.46363640e+01, 1.24727268e+01, 4.04363632e+01, 3.87636375e+01, + 4.10909081e+00, 2.78181815e+00, 1.13090906e+01, 1.52727270e+01, + 6.12727261e+00, 5.16363621e+00, 6.38596487e+00, 7.12280703e+00, + 2.13508778e+01, 3.85438614e+01, 2.77543869e+01, 1.18771935e+01, + 6.15789461e+00, 5.78947353e+00, 1.61403513e+00, 2.98245621e+00, + 1.16140347e+01, 4.02456131e+01, 5.01228065e+01, 1.57017546e+01, + 3.91228080e+00, 1.85964918e+00, 1.91228065e+01, 1.21052635e+00, + 5.50877190e+00, 2.41052628e+01, 3.13859653e+01, 1.29122810e+01, + 8.70175457e+00, 1.94736843e+01, 1.03719299e+02, 1.87719297e+00, + 1.31578946e+00, 3.12631588e+01, 5.62105255e+01, 3.24561405e+00, + 4.33333349e+00, 6.85964890e+01, 2.28070164e+00, 8.57894707e+00, + 3.61228065e+01, 4.45614052e+01, 2.37017536e+01, 6.36842108e+00, + 2.29824567e+00, 1.71929824e+00, 1.66666663e+00, 3.91228080e+00, + 2.53333340e+01, 4.65964928e+01, 3.63859634e+01, 9.24561405e+00, + 4.24561405e+00, 7.66666651e+00, 4.16315804e+01, 1.49122810e+00, + 9.91228104e+00, 4.23157883e+01, 2.55438595e+01, 6.14035082e+00, + 7.92982435e+00, 1.10842102e+02, 6.15789490e+01, 2.05263162e+00, + 2.50877190e+00, 1.07631577e+02, 7.54210510e+01, 1.63157892e+00, + 2.87719297e+00, 1.01631577e+02, 1.07017541e+00, 8.35087681e+00, + 3.19473686e+01, 2.86666660e+01, 1.37192984e+01, 4.49122810e+00, + 3.05263157e+01, 1.80877190e+01, 3.87719297e+00, 3.28070164e+00, + 2.91754379e+01, 4.59298248e+01, 1.43508768e+01, 5.63157892e+00, + 5.96140366e+01, 1.10877190e+02, 1.92456131e+01, 1.80701756e+00, + 2.34035091e+01, 124., 1.81052628e+01, 2.45614028e+00, + 3.00350876e+01, 1.26280701e+02, 1.53859653e+01, 3.14035082e+00, + 5.96491241e+00, 1.14578949e+02, 3.16491222e+01, 1.64912283e+00, + 5.14035082e+00, 3.92280693e+01, 1.14035082e+00, 3.22807026e+00, + 7.67543869e+01, 3.88947372e+01, 2.85964918e+00, 3.49122810e+00, + 1.04122810e+02, 5.37017555e+01, 2.85964918e+00, 1.91228068e+00, + 9.24385986e+01, 1.17087723e+02, 2.45614028e+00, 2.31578946e+00, + 6.71052628e+01, 9.04035110e+01, 7.87719297e+00, 2.28070164e+00, + 3.79298248e+01, 1.13385963e+02, 3.85964918e+00, 1.87719297e+00, + 1.48070173e+01, 3.74736824e+01, 1.24385967e+01, 2.56140351e+00, + 2.57894731e+00, 1.77543869e+01, 2.01754379e+00, 1.82456136e+00, + 7.64912271e+00, 2.09122810e+01, 9.93432846e+01, 2.89552236e+00, + 9.22388077e+00, 1.38477615e+02, 6.66268692e+01, 4.41791058e+00, + 1.09850750e+01, 1.53895523e+02, 4.85820885e+01, 6.28358221e+00, + 5.68656731e+00, 1.54089554e+02, 1.41134323e+02, 6.52238798e+00, + 1.18507462e+01, 7.18358231e+01, 4.54925385e+01, 1.04626865e+01, + 3.91044784e+00, 1.12835817e+01, 8.89552212e+00, 2.47761202e+00, + 1.07611942e+01, 4.43731346e+01, 1.44925375e+01, 3.13432837e+00, + 8.50746274e-01, 5.22388041e-01, 3.58208954e-01, 6.56716406e-01, + 2.02985072e+00, 1.18656721e+01, 3.47164192e+01, 6.62686586e+00, + 3.52985077e+01, 1.57477615e+02, 5.93880615e+01, 3.10447764e+00, + 1.91641788e+01, 1.31194031e+02, 4.09552231e+01, 7.05970144e+00, + 5.44776106e+00, 1.11402985e+02, 3.54179115e+01, 4.98507452e+00, + 2.31044769e+01, 7.45970154e+01, 4.47462692e+01, 7.53731346e+00, + 2.44776130e+00, 1.88059700e+00, 2.46268654e+00, 3.55223870e+00, + 1.66567173e+01, 64., 1.33880596e+01, 2.55223870e+00, + 7.61194050e-01, 6.41791046e-01, 8.95522416e-01, 9.40298498e-01, + 2.83582091e+00, 1.58059702e+01, 1.70298500e+01, 4.58208942e+00, + 1.91940308e+01, 1.01597015e+02, 9.80597019e+00, 6.46268654e+00, + 2.67761192e+01, 5.39701500e+01, 3.29403000e+01, 5.52238798e+00, + 3.31343293e+00, 4.68656731e+00, 3.43283582e+00, 6.05970144e+00, + 2.69850750e+01, 7.68656693e+01, 3.07910442e+01, 6.05970144e+00, + 3.23880601e+00, 2.43283582e+00, 2.74626875e+00, 4.37313414e+00, + 1.54626865e+01, 5.12238808e+01, 8.43283558e+00, 1.73134327e+00, + 1.13432837e+00, 1.34328353e+00, 1.20895517e+00, 1.17910445e+00, + 3.29850745e+00, 1.18656721e+01, 1.12537317e+01, 2.55223870e+00, + 1.65671647e+00, 2.16417909e+00, 2.46268654e+00, 4.37313414e+00, + 2.25820904e+01, 3.90447769e+01, 1.74477615e+01, 3.80597019e+00, + 2.28358197e+00, 2.58208966e+00, 3.31343293e+00, 4.37313414e+00, + 1.92537308e+01, 4.64776115e+01, 1.32537317e+01, 3.41791034e+00, + 3.32835817e+00, 3.65671635e+00, 3.83582091e+00, 4.01492548e+00, + 1.08208952e+01, 2.90298500e+01, 3., 9.10447776e-01, + 8.80596995e-01, 1.62686563e+00, 1.50746274e+00, 1.16417909e+00, + 2.07462692e+00, 5.17910433e+00, 1.16428576e+01, 2.32857151e+01, + 1.76666660e+01, 1.56190472e+01, 3.85476189e+01, 1.15833336e+02, + 8.85476227e+01, 1.49285717e+01, 2.21428566e+01, 4.35238113e+01, + 1.06666670e+01, 5.28571415e+00, 6.04761887e+01, 1.28642853e+02, + 3.76190491e+01, 4.26190472e+00, 1.45952377e+01, 2.07857151e+01, + 7.59523821e+00, 7.38095236e+00, 2.14285717e+01, 2.59285717e+01, + 1.01904764e+01, 4.61904764e+00, 1.19047618e+00, 3.64285707e+00, + 1.52380955e+00, 1.28571427e+00, 1.26190472e+00, 1.21428573e+00, + 1.19047618e+00, 4.52380955e-01, 1.58571424e+01, 2.72857151e+01, + 2.37142849e+01, 2.84047623e+01, 4.35476189e+01, 5.43333321e+01, + 2.80476189e+01, 1.34047623e+01, 2.09523811e+01, 3.29523811e+01, + 8.45238113e+00, 1.28333330e+01, 1.24785713e+02, 1.34261902e+02, + 1.51904764e+01, 4.69047642e+00, 3.92619057e+01, 4.06666679e+01, + 5.76190472e+00, 6., 8.43333359e+01, 8.39761887e+01, + 5.64285707e+00, 5.07142878e+00, 2.52380943e+00, 2.33333325e+00, + 1.07142854e+00, 1.61904764e+00, 1.85714281e+00, 1.19047618e+00, + 1.09523809e+00, 6.90476179e-01, 2.49761906e+01, 4.55714302e+01, + 2.96190472e+01, 2.38809528e+01, 2.55000000e+01, 2.03333340e+01, + 8.19047642e+00, 1.10714283e+01, 1.93095245e+01, 2.79761906e+01, + 1.72619057e+01, 3.01666660e+01, 1.23857140e+02, 9.35238113e+01, + 1.40952377e+01, 1.13809528e+01, 3.04047623e+01, 2.28571434e+01, + 4., 2.22857151e+01, 1.31785721e+02, 8.04285736e+01, + 3.66666675e+00, 6.26190472e+00, 4.19047642e+00, 3.69047618e+00, + 9.28571403e-01, 1.59523809e+00, 2.71428561e+00, 8.33333313e-01, + 4.52380955e-01, 7.61904776e-01, 2.18809528e+01, 5.32619057e+01, + 3.37857132e+01, 1.86904755e+01, 1.50952377e+01, 2.32619057e+01, + 1.33571424e+01, 9.80952358e+00, 2.12619057e+01, 25., + 3.96904755e+01, 8.69285736e+01, 86., 1.95714283e+01, + 1.41904764e+01, 2.13571434e+01, 1.48095236e+01, 5.69047642e+00, + 6.59523821e+00, 7.26666641e+01, 1.15142860e+02, 1.86190472e+01, + 5.30952358e+00, 1.53571424e+01, 3.40476179e+00, 1.78571427e+00, + 4.04761910e-01, 1.52380955e+00, 2.97619057e+00, 7.14285731e-01, + 4.04761910e-01, 1.35714281e+00, 2.72698421e+01, 1.26666670e+01, + 1.24920635e+01, 6.27936516e+01, 4.73492050e+01, 2.00476189e+01, + 1.67777786e+01, 6.43809509e+01, 7.33174591e+01, 7.96825409e+00, + 5.96825409e+00, 1.05333336e+02, 8.60634918e+01, 2.11428566e+01, + 1.46190472e+01, 1.07269844e+02, 4.75079384e+01, 5.42857122e+00, + 7.47619057e+00, 4.01904755e+01, 3.06349201e+01, 2.04444447e+01, + 1.36984129e+01, 7.55873032e+01, 4.03174591e+00, 3.57142854e+00, + 6.88888884e+00, 1.10793648e+01, 1.13968258e+01, 1.32698412e+01, + 1.00476189e+01, 9.53968239e+00, 4.50793648e+01, 1.12857141e+01, + 1.26031742e+01, 1.07190475e+02, 8.19365082e+01, 2.32857151e+01, + 1.45873013e+01, 7.95714264e+01, 1.02984123e+02, 6.53968239e+00, + 9.20634937e+00, 1.03857140e+02, 7.96031723e+01, 2.07936516e+01, + 1.46984129e+01, 1.25809525e+02, 2.42222214e+01, 6.85714293e+00, + 1.22857141e+01, 28., 3.16984119e+01, 3.04444447e+01, + 1.81904755e+01, 4.37142868e+01, 5.39682531e+00, 4.95238113e+00, + 7.50793648e+00, 1.01746035e+01, 1.20317459e+01, 16., + 1.31111107e+01, 9.82539654e+00, 6.30793648e+01, 5.36507940e+00, + 1.04285717e+01, 1.13825394e+02, 8.04761887e+01, 1.65079365e+01, + 1.12063494e+01, 1.03555557e+02, 7.59523773e+01, 8.42857170e+00, + 1.23968258e+01, 53., 4.04761887e+01, 2.32063484e+01, + 1.45396824e+01, 1.08031746e+02, 9.12698460e+00, 8.42857170e+00, + 1.43174601e+01, 2.32857151e+01, 2.53650799e+01, 2.95396824e+01, + 1.86666660e+01, 1.52380953e+01, 4.90476179e+00, 5.50793648e+00, + 7.88888884e+00, 7.61904764e+00, 1.09841270e+01, 1.64285717e+01, + 1.12063494e+01, 7.03174591e+00, 4.97777786e+01, 4.03174591e+00, + 5.11111116e+00, 6.33333321e+01, 3.70476189e+01, 1.24603176e+01, + 8.61904716e+00, 9.04761887e+01, 2.46349201e+01, 7.65079355e+00, + 1.03015871e+01, 1.81111107e+01, 2.15714283e+01, 1.81587296e+01, + 1.02222223e+01, 3.20317459e+01, 5.46031761e+00, 6.96825409e+00, + 1.02698412e+01, 1.09523811e+01, 1.52539682e+01, 1.82698421e+01, + 1.22539682e+01, 7.84126997e+00, 2.55555558e+00, 4.09523821e+00, + 5., 4.47619057e+00, 7.58730173e+00, 1.14285717e+01, + 6.95238113e+00, 2.80952382e+00, 1.18679247e+01, 1.02641506e+01, + 5.24528313e+00, 1.90566039e+00, 2.09433961e+00, 1.11132078e+01, + 2.84716988e+01, 1.90566044e+01, 1.34716978e+01, 1.50377359e+01, + 2.92452836e+00, 1.37735844e+00, 2.08301888e+01, 7.16981125e+01, + 3.15283012e+01, 8.32075500e+00, 3.76415100e+01, 4.92641525e+01, + 2., 1.90566039e+00, 8.60188675e+01, 1.13716980e+02, + 9.07547188e+00, 2.73584914e+00, 8.00188675e+01, 8.38490601e+01, + 4.24528313e+00, 2.45283008e+00, 4.93962250e+01, 4.98113213e+01, + 2.05660367e+00, 4.22641516e+00, 1.77169819e+01, 1.55094337e+01, + 1.23207550e+01, 6.60377359e+00, 6.45283031e+00, 1.01509438e+01, + 1.43773584e+01, 1.91698112e+01, 2.51886787e+01, 1.73018875e+01, + 8.20754719e+00, 8.13207531e+00, 3.12830181e+01, 2.87924538e+01, + 1.42452831e+01, 1.73018875e+01, 3.77735863e+01, 1.86037731e+01, + 1.75471699e+00, 2.01886787e+01, 1.24867928e+02, 6.60566025e+01, + 4.73584890e+00, 6.03773594e+00, 1.09471695e+02, 5.32264137e+01, + 2.45283008e+00, 9.92452812e+00, 9.70566025e+01, 3.60566025e+01, + 1.50943398e+00, 8., 2.36415100e+01, 2.54716988e+01, + 1.79433956e+01, 7.77358484e+00, 5.47169828e+00, 7., + 1.17358494e+01, 1.87924538e+01, 2.80188675e+01, 1.62452831e+01, + 1.18113203e+01, 3.55094337e+01, 3.82641525e+01, 1.16226416e+01, + 9.75471687e+00, 2.23207550e+01, 3.80188675e+01, 7.90566015e+00, + 2.94339633e+00, 9.68301849e+01, 1.26169815e+02, 1.07924528e+01, + 1.66037738e+00, 1.18679247e+01, 1.17018867e+02, 2.10188675e+01, + 2.41509438e+00, 3.50188675e+01, 91., 1.03396225e+01, + 1.83018863e+00, 27., 1.98679237e+01, 1.84716988e+01, + 2.05283012e+01, 1.29245281e+01, 1.92452836e+00, 1.75471699e+00, + 5.60377359e+00, 1.85094337e+01, 1.42830191e+01, 8.07547188e+00, + 2.46037731e+01, 9.77547150e+01, 2.68867931e+01, 1.88679242e+00, + 2.67924523e+00, 1.24150944e+01, 3.70188675e+01, 3.07547164e+00, + 6.35849047e+00, 1.22471695e+02, 8.67169800e+01, 8.11320782e-01, + 6.79245293e-01, 3.42830200e+01, 9.91509399e+01, 7.07547188e+00, + 2.92452836e+00, 3.41698112e+01, 3.87358475e+01, 2.73584914e+00, + 2.54716992e+00, 5.52075462e+01, 9.23076928e-01, 1.63269234e+01, + 1.08884613e+02, 2.86538467e+01, 1.78846157e+00, 2.75000000e+00, + 6.90384626e+00, 2.26923084e+00, 1.90384614e+00, 5.28461533e+01, + 1.13538460e+02, 1.24038458e+01, 1.61538458e+00, 4.40384626e+00, + 9.07692337e+00, 2.07692313e+00, 2.84615374e+00, 7.40576935e+01, + 1.00269234e+02, 7.55769253e+00, 2.40384626e+00, 5.57692289e+00, + 6.05769253e+00, 1.57692313e+00, 4.71153831e+00, 6.43461533e+01, + 5.52307701e+01, 4.55769253e+00, 2.71153855e+00, 4.38461542e+00, + 2.63461542e+00, 1.82692313e+00, 2.15384626e+00, 1.38653851e+01, + 1.05442307e+02, 2.43269234e+01, 7.30769217e-01, 4.03846169e+00, + 5.35384598e+01, 2.22692299e+01, 2.36538458e+00, 5.61538467e+01, + 1.09250000e+02, 4.65384626e+00, 9.23076928e-01, 1.91153851e+01, + 7.35192337e+01, 1.15192308e+01, 2.51923084e+00, 1.10980766e+02, + 1.04211540e+02, 2.88461542e+00, 2.23076916e+00, 3.46730766e+01, + 3.94038467e+01, 2.46153855e+00, 7.76923084e+00, 1.17865387e+02, + 6.92115402e+01, 2.82692313e+00, 2.44230771e+00, 2.18076916e+01, + 8.05769253e+00, 1.32692313e+00, 5.11538458e+00, 3.19230771e+00, + 1.72500000e+01, 5.17307711e+00, 5.57692289e-01, 2.80769229e+00, + 9.32307663e+01, 7.50384598e+01, 3.26923084e+00, 1.28653851e+01, + 1.99615383e+01, 1.38461542e+00, 3.26923072e-01, 3.29615402e+01, + 1.22230766e+02, 3.55961533e+01, 2.80769229e+00, 4.09807701e+01, + 1.90769234e+01, 2.69230783e-01, 1.69230771e+00, 9.26346130e+01, + 1.03942307e+02, 5.61538458e+00, 1.12115383e+01, 9.34038467e+01, + 1.67692299e+01, 4.80769217e-01, 5.86538458e+00, 8.24423065e+01, + 2.97692299e+01, 1.90384614e+00, 1.32500000e+01, 4.26923084e+00, + 6.25000000e+00, 3.42307687e+00, 1.09615386e+00, 2.96153855e+00, + 2.49807701e+01, 3.88461533e+01, 8.44230747e+00, 6.75000000e+00, + 7.65384626e+00, 1.55769229e+00, 1.23076928e+00, 1.00384617e+01, + 3.88269234e+01, 2.19423084e+01, 6.07692289e+00, 9.73076916e+00, + 4., 5.00000000e-01, 7.80769253e+00, 5.29038467e+01, + 4.36153831e+01, 9.65384579e+00, 7.13461542e+00, 2.21923084e+01, + 1.34615386e+00, 3.26923072e-01, 2.69038467e+01, 9.52500000e+01, + 1.93269234e+01, 1.71153843e+00, 3.24423065e+01, 5.15192299e+01, + 1.34423075e+01, 6.15384626e+00, 5.77692299e+01, 8.93461533e+01, + 1.10961542e+01, 4.94230747e+00, 6.03269234e+01, 9.64807663e+01, + 2.23653851e+01, 8.05769253e+00, 4.93461533e+01, 6.58269196e+01, + 9.71153831e+00, 5.03846169e+00, 4.24807701e+01, 5.24038467e+01, + 1.25961542e+01, 1.22115383e+01, 3.80384598e+01, 30., + 8.11538506e+00, 6.73076916e+00, 3.03653851e+01, 2.65192299e+01, + 1.07884617e+01, 1.00769234e+01, 1.64038467e+01, 1.11730766e+01, + 7.17307711e+00, 7.15384626e+00, 2.10192299e+01, 2.53461533e+01, + 1.85384617e+01, 1.15384617e+01, 4.05961533e+01, 7.00192337e+01, + 1.54423075e+01, 8.92307663e+00, 7.81346130e+01, 1.00884613e+02, + 1.55769234e+01, 5.78846169e+00, 9.76923065e+01, 1.14807693e+02, + 1.06538458e+01, 4.07692289e+00, 7.29230804e+01, 9.25192337e+01, + 9.75000000e+00, 6.44230747e+00, 4.97115402e+01, 5.74038467e+01, + 6.86538458e+00, 4.61538458e+00, 3.96538467e+01, 4.53076935e+01, + 1.03846149e+01, 9.11538506e+00, 2.59807701e+01, 2.53461533e+01, + 9.03846169e+00, 6.65384626e+00, 1.79807701e+01, 1.69230766e+01, + 1.85192299e+01, 1.38461542e+01, 20., 1.91346149e+01, + 9.67307663e+00, 1.08076925e+01, 51., 5.69230766e+01, + 1.36538458e+01, 7.38461542e+00, 9.33269196e+01, 1.07384613e+02, + 7.44230747e+00, 8., 9.05961533e+01, 1.06884613e+02, + 7.05769253e+00, 5.90384626e+00, 7.76923065e+01, 9.51153870e+01, + 6.42307711e+00, 4.63461542e+00, 4.05000000e+01, 5.09423065e+01, + 9.01923084e+00, 8.26923084e+00, 2.88076916e+01, 3.00576916e+01, + 6.88461542e+00, 5.09615374e+00, 1.11346149e+01, 9.63461494e+00, + 1.16923075e+01, 1.04807692e+01, 1.31153851e+01, 9.94230747e+00, + 7.57692289e+00, 8.69230747e+00, 2.35961533e+01, 2.15961533e+01, + 1.61730766e+01, 1.02500000e+01, 4.16153831e+01, 4.55576935e+01, + 7.09615374e+00, 9.03846169e+00, 5.18461533e+01, 6.65000000e+01, + 1.02500000e+01, 7.46153831e+00, 7.45576935e+01, 9.73076935e+01, + 1.17500000e+01, 6.30769253e+00, 3.61153831e+01, 5.20769234e+01, + 7.55769253e+00, 8.23076916e+00, 2.38846149e+01, 3.15384617e+01, + 8.53846169e+00, 5.42307711e+00, 1.04137936e+01, 1.80459766e+01, + 8.40229893e+00, 7.03448296e+00, 1.75977020e+01, 3.01954021e+01, + 8.66666698e+00, 5.50574732e+00, 8.49425316e+00, 9.65517235e+00, + 9.75862026e+00, 9.86206913e+00, 12., 1.19195404e+01, + 8.27586174e+00, 7.04597712e+00, 6.80459785e+00, 7.43678141e+00, + 8.95402336e+00, 8.20689678e+00, 1.03103447e+01, 1.21609192e+01, + 8.62068939e+00, 6.90804577e+00, 3.90804601e+00, 4.54022980e+00, + 5.12643671e+00, 5.74712658e+00, 7.03448296e+00, 8.49425316e+00, + 7.02298832e+00, 4.93103456e+00, 1.55517244e+01, 5.32183914e+01, + 1.28735628e+01, 7.01149416e+00, 3.29885063e+01, 1.36068970e+02, + 2.43103447e+01, 8.01149464e+00, 1.42413797e+01, 3.63218384e+01, + 1.84482765e+01, 1.44827585e+01, 2.13218384e+01, 5.01724129e+01, + 1.71724129e+01, 8.31034470e+00, 1.09885054e+01, 1.56666670e+01, + 1.58275862e+01, 1.30229883e+01, 1.24712648e+01, 1.61609192e+01, + 1.40114946e+01, 1.02183905e+01, 6.47126436e+00, 7.04597712e+00, + 7.72413778e+00, 7.51724148e+00, 8.81609154e+00, 1.08505745e+01, + 1.05057468e+01, 8.34482765e+00, 1.83908043e+01, 1.32873566e+02, + 1.56206894e+01, 2.25287366e+00, 2.24597702e+01, 1.54402298e+02, + 2.16896553e+01, 5.71264362e+00, 1.37126436e+01, 8.31839066e+01, + 1.86206894e+01, 7.40229893e+00, 2.87356319e+01, 1.57816086e+02, + 2.62183914e+01, 4.17241383e+00, 1.26896553e+01, 4.16781616e+01, + 1.98965511e+01, 1.16091957e+01, 1.60574703e+01, 5.15517235e+01, + 1.93678169e+01, 9.20689678e+00, 7.31034470e+00, 1.08045979e+01, + 10., 8.52873516e+00, 8.11494255e+00, 9.70114899e+00, + 9.85057449e+00, 7.43678141e+00, 1.82643681e+01, 1.60310349e+02, + 2.03678169e+01, 2.10344839e+00, 8.67816067e+00, 9.87816086e+01, + 1.01494255e+01, 1.86206901e+00, 1.47586203e+01, 1.32172409e+02, + 1.85172405e+01, 5.40229893e+00, 2.30804596e+01, 1.57321838e+02, + 2.41724129e+01, 2.49425292e+00, 1.08850574e+01, 5.48965530e+01, + 1.80229893e+01, 9.88505745e+00, 2.62413788e+01, 1.41942535e+02, + 3.18735638e+01, 5.89655161e+00, 7.01149416e+00, 2.14827595e+01, + 1.23333330e+01, 7.20689678e+00, 9.44827557e+00, 2.96436787e+01, + 1.58390808e+01, 5.29885054e+00, 1.10816326e+01, 8.94285736e+01, + 4.89795914e+01, 5.63265324e+00, 3.20408154e+00, 2.28979588e+01, + 1.02448978e+01, 3.91836739e+00, 2.67959175e+01, 9.73061218e+01, + 5.64285698e+01, 6.44897938e+00, 3.95918369e+00, 8.30612278e+00, + 5.34693861e+00, 8.77550983e+00, 4.14897957e+01, 1.03122452e+02, + 4.04693871e+01, 4.77551031e+00, 3.12244892e+00, 4.38775492e+00, + 5.06122446e+00, 8.34693909e+00, 1.78367348e+01, 3.42448997e+01, + 1.56734695e+01, 5.73469400e+00, 3.59183669e+00, 5.63265324e+00, + 6.55102062e+00, 6.81632662e+00, 2.09591827e+01, 1.08367348e+02, + 2.41632652e+01, 3.06122446e+00, 1.77142849e+01, 7.59795914e+01, + 1.16122446e+01, 2.26530623e+00, 5.19795914e+01, 1.08142860e+02, + 3.44897957e+01, 8.87755108e+00, 1.42040815e+01, 4.08571434e+01, + 1.03877554e+01, 1.14897957e+01, 6.44897995e+01, 1.07306122e+02, + 4.57755089e+01, 6.85714293e+00, 5.02040815e+00, 6.91836739e+00, + 7.04081631e+00, 1.58163261e+01, 5.07346954e+01, 7.59795914e+01, + 1.97959175e+01, 2.67346931e+00, 1.48979592e+00, 2.59183669e+00, + 4.16326523e+00, 9.36734676e+00, 1.89183674e+01, 5.70204086e+01, + 6.06122446e+00, 2.83673477e+00, 8.18367310e+01, 1.01367348e+02, + 3.34693885e+00, 1.30612242e+00, 8.17346954e+01, 1.08632652e+02, + 1.09387751e+01, 6.22448969e+00, 3.44489784e+01, 4.80816345e+01, + 6.46938753e+00, 7.30612230e+00, 7.12857132e+01, 7.96938782e+01, + 25., 1.01224489e+01, 1.65102043e+01, 1.82653065e+01, 12., + 2.16938782e+01, 6.60204086e+01, 6.75714264e+01, 1.30204086e+01, + 1.48979592e+00, 7.95918345e-01, 1.06122446e+00, 2.97959185e+00, + 1.57346935e+01, 1.15918369e+01, 1.39183674e+01, 2.93877554e+00, + 8.14285755e+00, 1.11142860e+02, 5.73877563e+01, 1.36734688e+00, + 9.59183693e-01, 9.04081650e+01, 7.02653046e+01, 5.32653046e+00, + 5.85714293e+00, 5.43061218e+01, 2.50612240e+01, 1.73469388e+00, + 4.08163261e+00, 8.40612259e+01, 5.02244911e+01, 1.03061228e+01, + 6.26530600e+00, 2.13877544e+01, 1.62040825e+01, 9.16326523e+00, + 1.88775501e+01, 4.81632652e+01, 2.91632652e+01, 6.40816307e+00, + 1.91836739e+00, 1.38775516e+00, 1.63265312e+00, 4.57142878e+00, + 1.87755108e+01, 4.92063493e-01, 6.66666687e-01, 1., + 1.28571427e+00, 2.57142854e+00, 2.20634913e+00, 8.73015881e-01, + 5.07936537e-01, 4.68253946e+00, 5.36507940e+00, 7.09523821e+00, + 1.33492060e+01, 6.21269836e+01, 4.06825409e+01, 6.41269827e+00, + 3.52380943e+00, 4.82539701e+00, 3.22222233e+00, 3.26984119e+00, + 2.57142849e+01, 1.56285721e+02, 8.79365082e+01, 4.71428585e+00, + 2.76190472e+00, 1.86825390e+01, 1.18412695e+01, 1.69841266e+00, + 2.40634918e+01, 1.26761902e+02, 3.76507950e+01, 1.77777779e+00, + 6.25396824e+00, 1., 1.52380955e+00, 1.68253970e+00, + 1.49206352e+00, 2.15873027e+00, 1.98412693e+00, 1.63492060e+00, + 1.17460322e+00, 9.11111069e+00, 1.06349211e+01, 1.03174601e+01, + 1.23333330e+01, 4.06349220e+01, 4.21269836e+01, 1.32380953e+01, + 8.36507893e+00, 4.88888884e+00, 5.07936525e+00, 4.80952358e+00, + 1.08095236e+01, 1.55190475e+02, 1.50253967e+02, 1.06666670e+01, + 3.96825385e+00, 1.10793648e+01, 8.22222233e+00, 1.55555558e+00, + 3.22222233e+00, 1.38349213e+02, 1.43333328e+02, 5.85714293e+00, + 3.68253970e+00, 1.47619045e+00, 1.58730161e+00, 1.74603176e+00, + 1.11111116e+00, 1.42857146e+00, 2.31746030e+00, 2.07936502e+00, + 1.58730161e+00, 1.15873013e+01, 1.49841270e+01, 1.15079365e+01, + 1.22380953e+01, 2.52539692e+01, 2.79365082e+01, 1.36666670e+01, + 1.02063494e+01, 8.80952358e+00, 1.11111107e+01, 8.65079403e+00, + 1.28730154e+01, 9.64920654e+01, 1.21634918e+02, 1.55873013e+01, + 6.26984119e+00, 4., 6.57142878e+00, 4.63492060e+00, + 3.93650794e+00, 1.05793648e+02, 1.57888885e+02, 2.26666660e+01, + 1.88888884e+00, 8.57142866e-01, 1.31746030e+00, 1.49206352e+00, + 1.19047618e+00, 1.57142854e+00, 1.88888884e+00, 1.28571427e+00, + 6.50793672e-01, 8.68253994e+00, 1.14603176e+01, 8.58730125e+00, + 8.50793648e+00, 1.72063484e+01, 1.94761906e+01, 9.68253994e+00, + 7.85714293e+00, 1.05714283e+01, 1.26507940e+01, 9.31746006e+00, + 8.98412704e+00, 3.78571434e+01, 4.61428566e+01, 1.26190472e+01, + 8.34920597e+00, 3.50793648e+00, 6.26984119e+00, 6.06349230e+00, + 5.66666651e+00, 42., 1.18571426e+02, 2.15714283e+01, + 4.09523821e+00, 6.78333330e+00, 4.33333349e+00, 3.73333335e+00, + 2.26666665e+00, 1.41666663e+00, 1.66666663e+00, 4.66666651e+00, + 6.73333311e+00, 2.34666672e+01, 2.12999992e+01, 1.33500004e+01, + 9.06666660e+00, 2.56666660e+01, 1.53500004e+01, 1.41666670e+01, + 20., 9.52666702e+01, 2.35833340e+01, 6.94999981e+00, + 3.70333328e+01, 1.24316666e+02, 3.57333336e+01, 9.85000038e+00, + 2.19333324e+01, 9.97333298e+01, 2.31166668e+01, 7.33333349e+00, + 1.93333340e+01, 7.31166687e+01, 1.78166676e+01, 7.21666670e+00, + 2.52166672e+01, 7.63333321e+00, 5.75000000e+00, 5.15000010e+00, + 2.63333344e+00, 1.51666665e+00, 2.38333344e+00, 5.19999981e+00, + 6.76666689e+00, 3.21666679e+01, 2.92333336e+01, 1.84333324e+01, + 1.57666664e+01, 3.32333336e+01, 1.34333334e+01, 1.63833332e+01, + 2.62833328e+01, 1.16150002e+02, 2.43666668e+01, 9.53333378e+00, + 6.02833328e+01, 1.32416672e+02, 3.29833336e+01, 1.02500000e+01, + 43., 1.11916664e+02, 2.42666664e+01, 1.18166666e+01, + 2.56499996e+01, 7.43666687e+01, 2.07166672e+01, 1.26166668e+01, + 4.26333351e+01, 7.11666679e+00, 7.06666660e+00, 6.56666660e+00, + 3.29999995e+00, 1.79999995e+00, 2.73333335e+00, 4.51666689e+00, + 4.81666660e+00, 2.57333336e+01, 3.11833324e+01, 2.30666676e+01, + 1.77999992e+01, 3.90666656e+01, 1.25666666e+01, 1.50666666e+01, + 2.14166660e+01, 1.18083336e+02, 2.99333324e+01, 1.13833332e+01, + 5.12000008e+01, 1.32516663e+02, 3.14166660e+01, 7.40000010e+00, + 4.10999985e+01, 1.03066666e+02, 3.18166676e+01, 2.07666664e+01, + 2.91000004e+01, 6.18166656e+01, 1.51999998e+01, 1.22500000e+01, + 3.43166656e+01, 4.05000019e+00, 5.33333349e+00, 6.51666689e+00, + 3.95000005e+00, 1.73333335e+00, 1.76666665e+00, 3.33333325e+00, + 4.21666670e+00, 1.82166672e+01, 2.40499992e+01, 1.93166676e+01, + 14., 2.62500000e+01, 1.00166664e+01, 1.28999996e+01, + 1.61000004e+01, 9.04000015e+01, 3.01666660e+01, 1.25666666e+01, + 3.43833351e+01, 1.27733330e+02, 4.08666649e+01, 6.28333330e+00, + 2.29833336e+01, 8.12166672e+01, 3.32500000e+01, 1.76166668e+01, + 2.30499992e+01, 5.57166672e+01, 1.30500002e+01, 8.93333340e+00, + 2.02666664e+01, 5.82978725e+00, 3.44680858e+00, 5.65957451e+00, + 1.70638294e+01, 4.30425529e+01, 4.69574471e+01, 2.49574471e+01, + 9.65957451e+00, 1.46808505e+00, 8.08510661e-01, 2.80851054e+00, + 1.90638294e+01, 5.04680862e+01, 4.44680862e+01, 1.62340431e+01, + 4.80851078e+00, 5.14255333e+01, 1.91914902e+01, 2.53191495e+00, + 1.26170216e+01, 3.17234039e+01, 2.12765961e+01, 1.17446804e+01, + 9.74468040e+00, 1.12170212e+02, 3.02127666e+01, 1.06382978e+00, + 5.95744658e+00, 9.09361725e+01, 2.62340431e+01, 2.04255319e+00, + 1.37446804e+01, 1.21914892e+01, 7.82978725e+00, 1.73829784e+01, + 5.21489372e+01, 6.61063843e+01, 3.24680862e+01, 1.45531912e+01, + 1.15531912e+01, 1.65957451e+00, 1.78723407e+00, 7.55319166e+00, + 4.92340431e+01, 7.02765961e+01, 3.43829803e+01, 8.23404217e+00, + 2.97872329e+00, 6.68085098e+01, 5.14893627e+00, 4.95744658e+00, + 2.95957451e+01, 41., 1.97659569e+01, 9.89361668e+00, + 3.12765961e+01, 1.22319145e+02, 8.55319118e+00, 1.57446814e+00, + 3.57021294e+01, 1.11340424e+02, 1.01063833e+01, 2.55319142e+00, + 5.84255333e+01, 5.48936176e+00, 5.59574461e+00, 3.33617020e+01, + 7.37021255e+01, 3.80851059e+01, 8.31914902e+00, 4.53191471e+00, + 4.97872353e+00, 1.48936164e+00, 2.53191495e+00, 1.83617020e+01, + 5.67659569e+01, 4.38723412e+01, 1.48085108e+01, 5.82978725e+00, + 6.25531912e+00, 8.36595764e+01, 2.89361691e+00, 8.31914902e+00, + 4.47021294e+01, 3.02340431e+01, 1.05957451e+01, 7.85106373e+00, + 9.89361725e+01, 9.29787216e+01, 4.19148922e+00, 2.48936176e+00, + 1.00702126e+02, 1.10744682e+02, 2.46808505e+00, 2.36170220e+00, + 8.23404236e+01, 1.08510637e+00, 6.10638285e+00, 2.91702137e+01, + 3.62340431e+01, 1.10851068e+01, 2.34042549e+00, 5.40425539e+00, + 5.48936176e+00, 5.80851078e+00, 2.63829780e+00, 1.80638294e+01, + 3.90212784e+01, 1.51276598e+01, 5.23404264e+00, 1.75957451e+01, + 69., 5.16808510e+01, 1.68085110e+00, 9.12765980e+00, + 9.63829803e+01, 2.77446804e+01, 2.80851054e+00, 1.02978725e+01, + 1.21085106e+02, 2.48297863e+01, 3.46808505e+00, 2.89361691e+00, + 1.03085106e+02, 5.66170197e+01, 1.44680846e+00, 3.53191495e+00, + 3.58510628e+01, 2.94864864e+01, 2.08108115e+00, 1.46486483e+01, + 1.19081078e+02, 3.36486473e+01, 1.21621621e+00, 8.32432461e+00, + 1.08459457e+02, 1.00540543e+01, 6.21621609e+00, 5.14594612e+01, + 1.19486488e+02, 1.40540543e+01, 2.75675678e+00, 1.40810814e+01, + 4.38648643e+01, 1.22432432e+01, 7., 3.71081085e+01, + 3.50810814e+01, 4.16216230e+00, 5.21621609e+00, 2.28108101e+01, + 2.75135136e+01, 9.56756783e+00, 5.16216230e+00, 1.72702694e+01, + 4.35135126e+00, 5.75675678e+00, 1.72162170e+01, 3.09729729e+01, + 2.55675678e+01, 3.58108101e+01, 4.89189196e+00, 5.72972965e+00, + 1.24243240e+02, 9.61621628e+01, 2.10810804e+00, 5.56756735e+00, + 5.20270271e+01, 2.47027035e+01, 1.11081085e+01, 1.53513517e+01, + 3.84594612e+01, 1.11081085e+01, 4.94594574e+00, 2.06216221e+01, + 4.65135117e+01, 4.13783798e+01, 9.05405426e+00, 5.81081104e+00, + 2.64864874e+00, 1.45945942e+00, 2.91891885e+00, 3.67027016e+01, + 8.53783798e+01, 2.81891899e+01, 6., 3.05405402e+00, + 2.51351357e+00, 4.10810804e+00, 2.69729729e+01, 7.88918915e+01, + 9.07297287e+01, 2.90810814e+01, 5.21621609e+00, 4.45945930e+00, + 49., 9.46216202e+01, 6.75675678e+00, 9.62162209e+00, + 3.11351357e+01, 4.14054070e+01, 9.94594574e+00, 9.91891861e+00, + 1.07567568e+01, 4.21621609e+00, 4.24324322e+00, 2.64594593e+01, + 8.25135117e+01, 7.24864883e+01, 1.35405407e+01, 4.45945930e+00, + 1.35135138e+00, 6.21621609e-01, 1.72972977e+00, 4.12702713e+01, + 1.21135132e+02, 5.26216202e+01, 2.67027035e+01, 1.98378372e+01, + 1.23783779e+01, 9.54054070e+00, 2.02432442e+01, 6.12432442e+01, + 9.35945969e+01, 2.89729729e+01, 5.75675678e+00, 2.13513517e+00, + 6.89189196e+00, 7.58108139e+01, 2.12162170e+01, 7.32432413e+00, + 2.28378372e+01, 6.65135117e+01, 8.81081104e+00, 2.45945954e+00, + 1.78378379e+00, 1.94594598e+00, 1.56756759e+00, 9.72972965e+00, + 7.05135117e+01, 9.19459457e+01, 2.53243237e+01, 7.43243265e+00, + 3.64864874e+00, 5.10810804e+00, 6.43243265e+00, 2.21891899e+01, + 8.71081085e+01, 2.81621628e+01, 1.81351357e+01, 1.45945950e+01, + 1.21081085e+01, 1.33783779e+01, 1.21891890e+01, 1.87567558e+01, + 3.61891899e+01, 8.42622948e+00, 7.26065598e+01, 1.89180336e+01, + 3.27868849e-01, 2.49180317e+00, 6.97377014e+01, 3.69672127e+01, + 2.09836054e+00, 4.15901642e+01, 1.19229507e+02, 1.89836063e+01, + 1.34426224e+00, 7.32786894e+00, 3.98032799e+01, 6.24590158e+00, + 1.73770487e+00, 4.91639328e+01, 1.07622948e+02, 1.85901642e+01, + 2.11475420e+00, 6.13114738e+00, 1.02459021e+01, 2.18032789e+00, + 3.11475420e+00, 2.68688526e+01, 5.42622948e+01, 1.16885242e+01, + 2.67213106e+00, 4.13114738e+00, 4.11475420e+00, 2.80327868e+00, + 3.54098368e+00, 5.95081949e+00, 1.59836063e+01, 1.49180329e+00, + 1.47540987e-01, 1.49672127e+01, 1.07131149e+02, 48., + 4.06557369e+00, 6.00327873e+01, 8.88688507e+01, 2.95081973e+00, + 9.34426248e-01, 4.44918022e+01, 1.09459015e+02, 1.12131147e+01, + 2.81967211e+00, 9.83114777e+01, 1.09754097e+02, 8.36065578e+00, + 2.55737710e+00, 2.40655746e+01, 2.66229515e+01, 2.42622948e+00, + 4.34426212e+00, 5.21803284e+01, 7.06229477e+01, 9.81967258e+00, + 2.26229501e+00, 3.73770499e+00, 4.16393423e+00, 2.67213106e+00, + 7.18032789e+00, 7.54098368e+00, 6.72131157e+00, 2.04918027e+00, + 2.11475420e+00, 2.63442631e+01, 4.97704926e+01, 1.77213116e+01, + 7.50819683e+00, 43., 2.17540989e+01, 8.03278685e-01, + 4.39344263e+00, 1.00426231e+02, 9.96885223e+01, 6.70491791e+00, + 4.81967211e+00, 1.15344261e+02, 7.91475372e+01, 3.27868843e+00, + 5.16393423e+00, 5.94918022e+01, 3.42131157e+01, 1.91803277e+00, + 7.52459002e+00, 7.55245895e+01, 5.92950821e+01, 5.96721315e+00, + 2.09836054e+00, 7.72131157e+00, 4.54098368e+00, 2.68852448e+00, + 9.85245895e+00, 8.95081997e+00, 5.03278685e+00, 2.60655737e+00, + 1.14098358e+01, 2.66721306e+01, 1.08360653e+01, 5.93442631e+00, + 8.59016418e+00, 2.88688526e+01, 6.65573788e+00, 8.36065590e-01, + 2.79836063e+01, 1.13393440e+02, 2.90327873e+01, 2.26229501e+00, + 8.45901680e+00, 1.06393440e+02, 2.33114758e+01, 1.91803277e+00, + 1.41311474e+01, 7.19672165e+01, 1.46885242e+01, 1.85245907e+00, + 1.71311474e+01, 7.49836044e+01, 2.88688526e+01, 2.88524580e+00, + 2.57377052e+00, 9.91803265e+00, 3.21311474e+00, 3.40983605e+00, + 1.27377052e+01, 1.76721306e+01, 2.66557369e+01, 4.18524590e+01, + 1.24262295e+01, 1.21967211e+01, 5.46065559e+01, 9.74590149e+01, + 3.32622948e+01, 2.06393452e+01, 4.92131157e+01, 7.74590149e+01, + 1.58852463e+01, 1.48032789e+01, 72., 1.21639343e+02, + 4.22459030e+01, 1.51475410e+01, 7.30819702e+01, 1.14213112e+02, + 1.08032789e+01, 6.73770475e+00, 6.91803284e+01, 1.27737701e+02, + 3.49508209e+01, 1.16721315e+01, 7.09344254e+01, 1.19540985e+02, + 7.83606577e+00, 3.31147552e+00, 5.32459030e+01, 1.20081970e+02, + 2.69508190e+01, 3.21639328e+01, 2.07868843e+01, 1.47704916e+01, + 8.62295055e+00, 1.45409832e+01, 3.46721306e+01, 5.82950821e+01, + 4.16885262e+01, 4.11967201e+01, 2.56885242e+01, 2.29016399e+01, + 1.35573769e+01, 2.28196716e+01, 5.74098358e+01, 9.19508209e+01, + 5.49180336e+01, 3.36393433e+01, 2.75409832e+01, 3.75737686e+01, + 1.53934422e+01, 2.15573769e+01, 6.29836082e+01, 1.07360657e+02, + 5.59016380e+01, 2.61147537e+01, 3.09672127e+01, 4.84098358e+01, + 1.02459021e+01, 1.25901642e+01, 6.50819702e+01, 112., + 4.54590149e+01, 2.62786884e+01, 2.27213116e+01, 1.26393442e+01, + 6.73770475e+00, 1.03934422e+01, 2.02622948e+01, 1.81967220e+01, + 2.32459011e+01, 3.77049179e+01, 2.88524590e+01, 1.52786884e+01, + 1.23606558e+01, 1.61803284e+01, 2.13606548e+01, 2.13442631e+01, + 3.04590168e+01, 3.75245895e+01, 2.24098358e+01, 1.33770494e+01, + 1.34426231e+01, 1.63114758e+01, 2.10163937e+01, 3.00163937e+01, + 3.46885262e+01, 3.22950821e+01, 1.49672127e+01, 8.91803265e+00, + 1.06885242e+01, 1.55737705e+01, 1.91803284e+01, 2.92786884e+01, + 3.49836082e+01, 5.85245895e+00, 4.98360634e+00, 2.93442631e+00, + 1.47540987e+00, 1.67213118e+00, 2.40983605e+00, 2.26229501e+00, + 3.73770499e+00, 8.68852425e+00, 8.06557369e+00, 3.78688526e+00, + 2.57377052e+00, 2.73770499e+00, 3.39344263e+00, 2.88524580e+00, + 5.22950840e+00, 9.13114738e+00, 8.32786846e+00, 3.83606553e+00, + 2.67213106e+00, 2.67213106e+00, 3.63934422e+00, 3.68852448e+00, + 5.52459002e+00, 6.83606577e+00, 4.47540998e+00, 2.34426236e+00, + 2.47540975e+00, 2.78688526e+00, 3.18032789e+00, 3.67213106e+00, + 5.16393423e+00, 1.46666670e+01, 3.95555544e+00, 7.84444427e+00, + 9.80000019e+00, 7.15555573e+00, 1.68888893e+01, 6.09777794e+01, + 7.06444473e+01, 1.95111103e+01, 8.04444408e+00, 1.07111111e+01, + 8.22222233e+00, 1.52888889e+01, 5.68444443e+01, 9.27333298e+01, + 5.64444427e+01, 1.74666672e+01, 1.01111107e+01, 8.35555553e+00, + 1.09111109e+01, 5.16222229e+01, 1.07044441e+02, 1.00088890e+02, + 3.52444458e+01, 6.28888893e+00, 9.42222214e+00, 4.68888903e+00, + 1.10666666e+01, 5.60444450e+01, 69., 3.21111107e+01, + 7.73333311e+00, 2.02222214e+01, 9.71111107e+00, 1.20666666e+01, + 1.36000004e+01, 2.28222218e+01, 2.26222229e+01, 3.36888885e+01, + 4.91777763e+01, 3.84222221e+01, 3.51111107e+01, 2.99111118e+01, + 2.22222214e+01, 2.16666660e+01, 2.85777779e+01, 3.55333328e+01, + 3.92888870e+01, 2.37999992e+01, 3.36222229e+01, 4.37111130e+01, + 7.06222229e+01, 9.53333359e+01, 5.99555550e+01, 3.00444450e+01, + 20., 2.71111107e+00, 6., 9.68888855e+00, 5.58444443e+01, + 1.04333336e+02, 3.61111107e+01, 5.06666660e+00, 8.88888896e-01, + 1.64666672e+01, 2.36222229e+01, 3.61555557e+01, 2.51555557e+01, + 2.85111103e+01, 2.06666660e+01, 1.66000004e+01, 1.85111103e+01, + 1.38444443e+01, 1.80444450e+01, 4.28888893e+01, 6.31111107e+01, + 3.54444427e+01, 1.41111107e+01, 1.45111113e+01, 1.66222229e+01, + 6.02222204e+00, 1.06888885e+01, 3.80444450e+01, 1.15066666e+02, + 7.88888855e+01, 6.97777796e+00, 4.46666670e+00, 9.93333340e+00, + 4.46666670e+00, 4.26666689e+00, 1.25333338e+01, 8.88666687e+01, + 8.19111099e+01, 5.53333330e+00, 1.75555551e+00, 4.40000010e+00, + 4.91111088e+00, 3.63777771e+01, 8.68666687e+01, 3.96666679e+01, + 1.26222219e+01, 7.66666651e+00, 8.24444485e+00, 3.79999995e+00, + 3.28888893e+00, 1.64444447e+01, 8.71999969e+01, 9.68888855e+01, + 1.54666662e+01, 1.82222223e+00, 6.37777758e+00, 8.51111126e+00, + 2.02222228e+00, 3.02222228e+00, 5.01555557e+01, 1.09888885e+02, + 3.09111118e+01, 1.15555561e+00, 3.40000010e+00, 7.91111088e+00, + 6.68888903e+00, 2.51111102e+00, 1.58444443e+01, 5.94222221e+01, + 2.76000004e+01, 2.59999990e+00, 2.04444456e+00, 1.61333332e+01, + 2.21063824e+01, 2.40425539e+00, 1.04468088e+01, 3.09148941e+01, + 1.18297873e+01, 2.65957451e+00, 3.48936157e+01, 1.15340424e+02, + 1.38510637e+01, 6.51063824e+00, 2.15531921e+01, 2.58723412e+01, + 7.93617010e+00, 5.72340441e+00, 4.50638313e+01, 7.42765961e+01, + 1.31489363e+01, 1.44680853e+01, 2.38297863e+01, 1.88936176e+01, + 1.90851059e+01, 3.07446804e+01, 3.90851059e+01, 2.26170216e+01, + 2.47234039e+01, 1.80425529e+01, 2.04468079e+01, 4.50425529e+01, + 6.94468079e+01, 4.22553177e+01, 2.24680843e+01, 2.41702137e+01, + 5.23191490e+01, 1.48723402e+01, 9.06382942e+00, 2.62765961e+01, + 3.01702137e+01, 8.59574509e+00, 1.11276598e+01, 6.45744705e+01, + 1.82340431e+01, 1.19148932e+01, 1.84042549e+01, 2.14042549e+01, + 1.52340422e+01, 9.89361668e+00, 1.23404255e+01, 2.33829784e+01, + 2.18297863e+01, 9.61702156e+00, 2.37659569e+01, 6.42340393e+01, + 2.96595745e+01, 1.04042549e+01, 1.30638294e+01, 3.31276588e+01, + 3.07021275e+01, 5.53191471e+00, 1.65744686e+01, 1.09063828e+02, + 9.28723373e+01, 1.40638294e+01, 8.89361668e+00, 4.01276588e+01, + 3.74680862e+01, 5.89361687e+01, 3.95531921e+01, 1.98723412e+01, + 2.18297863e+01, 2.82127666e+01, 2.65957451e+01, 2.31063824e+01, + 1.02553196e+01, 1.66382980e+01, 6.75106354e+01, 7.28936157e+01, + 1.42765961e+01, 1.48297873e+01, 3.80638313e+01, 3.52127647e+01, + 1.36808510e+01, 3.72340417e+00, 6.56170197e+01, 1.26936172e+02, + 1.82765961e+01, 4.44680834e+00, 2.84680843e+01, 5.92978706e+01, + 1.55531912e+01, 2.42553186e+00, 3.02978725e+01, 1.07893616e+02, + 2.29148941e+01, 1.93617022e+00, 1.37872343e+01, 5.41489372e+01, + 6.76595736e+00, 6.16808510e+01, 9.44255295e+01, 4.28723412e+01, + 1.22765961e+01, 1.71914902e+01, 2.44255314e+01, 1.21489363e+01, + 3.70212770e+00, 1.92978725e+01, 1.16021278e+02, 9.33404236e+01, + 4., 6.38297892e+00, 3.10638294e+01, 2.93617020e+01, + 7.59574461e+00, 1.72340429e+00, 4.39148941e+01, 9.05106354e+01, + 4.51063824e+00, 1.70212770e+00, 2.29148941e+01, 5.17446823e+01, + 6.31914902e+00, 2.36170220e+00, 6.72340441e+00, 1.45531912e+01, + 4.23404264e+00, 2.02127671e+00, 8.85106373e+00, 2.50851059e+01, + 1.51020408e+00, 8.16326559e-01, 5.30612230e-01, 2.51020408e+00, + 3.06122446e+00, 1.55102038e+00, 2.55102038e+00, 1.48979592e+00, + 7.10204077e+00, 3.38775516e+00, 3.85714293e+00, 6.42857122e+00, + 7.10204077e+00, 7.93877554e+00, 1.07551022e+01, 7.26530600e+00, + 7.24489784e+00, 4.28571415e+00, 1.35510206e+01, 2.26530609e+01, + 9.06122494e+00, 8.34693909e+00, 2.15102043e+01, 1.82653065e+01, + 2.81632662e+00, 4.16326523e+00, 1.96938782e+01, 2.40816326e+01, + 5.81632662e+00, 7.16326523e+00, 5.01428566e+01, 3.61428566e+01, + 2.59183669e+00, 2.04081631e+00, 2.10204077e+00, 3.53061223e+00, + 3.77551031e+00, 2.89795923e+00, 6.18367338e+00, 2.89795923e+00, + 23., 8.57142830e+00, 1.42653065e+01, 3.67346954e+01, + 2.04693871e+01, 1.08979588e+01, 2.18163261e+01, 7.06734695e+01, + 2.83469391e+01, 8.61224461e+00, 2.84693871e+01, 4.61224480e+01, + 1.74285717e+01, 1.23877554e+01, 1.18326530e+02, 1.38387756e+02, + 1.06734695e+01, 1.50204086e+01, 3.77959175e+01, 2.79795914e+01, + 1.04285717e+01, 3.93469391e+01, 1.34142853e+02, 9.81836700e+01, + 5.46938753e+00, 1.73469388e+00, 2.46938777e+00, 8.71428585e+00, + 9.24489784e+00, 3.48979592e+00, 2.48979592e+00, 7.04081631e+00, + 1.12795921e+02, 1.77346935e+01, 1.24285717e+01, 3.89183655e+01, + 3.31428566e+01, 9.97959137e+00, 1.40204086e+01, 1.16142860e+02, + 1.01081635e+02, 2.35102043e+01, 2.76326523e+01, 5.24081650e+01, + 3.58775520e+01, 1.50816326e+01, 4.60612259e+01, 1.31714279e+02, + 2.14081631e+01, 1.75918369e+01, 3.25102043e+01, 3.06326523e+01, + 2.42857151e+01, 2.40204086e+01, 3.79387741e+01, 3.97346954e+01, + 1.21020412e+01, 4.34693861e+00, 1.26530612e+00, 5.95918369e+00, + 1.25510206e+01, 4.10204077e+00, 1.69387758e+00, 5.91836739e+00, + 1.13612244e+02, 7.62040787e+01, 9.10204124e+00, 2.01836739e+01, + 4.56530609e+01, 1.84693871e+01, 6.38775492e+00, 3.56326523e+01, + 8.50612259e+01, 7.61224518e+01, 2.87142849e+01, 2.26530609e+01, + 3.21020393e+01, 2.58367348e+01, 1.57346935e+01, 3.37551003e+01, + 1.73469391e+01, 17., 3.64285698e+01, 3.54285698e+01, + 1.77959175e+01, 1.84897957e+01, 1.77959175e+01, 2.07959175e+01, + 2.43902445e+00, 3.17073166e-01, 4.07317066e+00, 3.92926826e+01, + 3.50243912e+01, 5.19512177e+00, 1.30487804e+01, 1.06829271e+01, + 4.70731688e+00, 9.26829278e-01, 2.70731711e+00, 6.80487823e+00, + 4.53658533e+00, 7.70731688e+00, 2.34634151e+01, 1.80243912e+01, + 2.31707311e+00, 3.65853667e-01, 8.04878056e-01, 3.17073166e-01, + 6.09756112e-01, 4.29268312e+00, 3.70487823e+01, 3.13414631e+01, + 3.90243888e-01, 6.34146333e-01, 7.31707335e-01, 0., + 2.43902430e-02, 5.29268312e+00, 4.21707306e+01, 1.82439022e+01, + 5.60975599e+00, 7.31707335e-01, 1.73170733e+00, 1.16585369e+01, + 3.65853653e+01, 1.57317076e+01, 5.10243912e+01, 3.00487804e+01, + 1.06585369e+01, 1.48780489e+00, 7.31707335e-01, 1.29268289e+00, + 9.73170757e+00, 2.26341457e+01, 1.05902435e+02, 9.45365829e+01, + 1.05609760e+01, 2.41463423e+00, 4.14634138e-01, 3.17073166e-01, + 2.02439022e+00, 1.48536587e+01, 1.25097565e+02, 1.18780487e+02, + 4.39024401e+00, 1.39024389e+00, 2.92682916e-01, 2.19512194e-01, + 1.17073166e+00, 1.62682934e+01, 9.37560959e+01, 5.53902435e+01, + 2.86341457e+01, 6.63414621e+00, 2.60975599e+00, 4.75609779e+00, + 1.88292675e+01, 1.76829262e+01, 8.35609741e+01, 7.35853653e+01, + 6.44390259e+01, 15., 3.75609756e+00, 5.90243912e+00, + 2.93902435e+01, 3.25121956e+01, 1.16365852e+02, 118., + 2.67804871e+01, 2.30487804e+01, 9.90243912e+00, 9.60975647e+00, + 3.28780479e+01, 4.66829262e+01, 1.01585365e+02, 8.86097565e+01, + 1.17804880e+01, 1.37804880e+01, 5.14634132e+00, 3.43902445e+00, + 8.14634132e+00, 2.67560978e+01, 5.99512177e+01, 3.23414650e+01, + 4.14634132e+01, 2.90731716e+01, 11., 2.92682934e+00, + 9.68292713e+00, 1.70243912e+01, 1.81463413e+01, 2.93658543e+01, + 9.06829300e+01, 6.03658524e+01, 2.47317066e+01, 2.13414631e+01, + 4.00487823e+01, 2.31951218e+01, 1.77317066e+01, 4.73902435e+01, + 3.31707306e+01, 3.52195129e+01, 2.22195129e+01, 2.58780479e+01, + 4.74146347e+01, 2.98292675e+01, 1.96585369e+01, 1.61219521e+01, + 1.37073174e+01, 1.98536587e+01, 8.53658581e+00, 6.95121956e+00, + 1.00975609e+01, 1.15853662e+01, 1.45609760e+01, 1.14390240e+01, + 5.33333349e+00, 1.23809528e+00, 1.76190472e+00, 1.85714281e+00, + 1.54761906e+01, 8.76190472e+00, 1.69523811e+01, 3.19047618e+00, + 2.48571434e+01, 1.57142854e+00, 2., 2.85714298e-01, + 2.52380943e+00, 2.23809528e+00, 16., 1.56666670e+01, + 8.28571415e+00, 1.61904764e+00, 2.23809528e+00, 4.28571433e-01, + 7.14285731e-01, 8.09523821e-01, 1.40952377e+01, 1.93809528e+01, + 1.23809528e+00, 8.09523821e-01, 1.28571427e+00, 3.80952388e-01, + 9.04761910e-01, 8.57142866e-01, 4.23809528e+00, 6.23809528e+00, + 1.38095236e+01, 4.38095236e+00, 4.19047642e+00, 3.38095236e+00, + 3.31904755e+01, 1.05380951e+02, 1.47476196e+02, 4.40952377e+01, + 8.41428604e+01, 7.71428585e+00, 4., 2.47619057e+00, + 6.28571415e+00, 34., 1.51857147e+02, 1.24523811e+02, + 4.96190491e+01, 7.85714293e+00, 6.23809528e+00, 6.90476179e+00, + 7.23809528e+00, 1.50952377e+01, 6.11904755e+01, 6.63333359e+01, + 5.66666651e+00, 3.76190472e+00, 4.90476179e+00, 5.61904764e+00, + 6.95238113e+00, 8.95238113e+00, 1.76666660e+01, 1.40952377e+01, + 1.92380943e+01, 3.26190491e+01, 1.59047623e+01, 5.61904764e+00, + 2.00476189e+01, 1.00047623e+02, 1.31714279e+02, 3.57142868e+01, + 4.46190491e+01, 2.41428566e+01, 1.23333330e+01, 9.95238113e+00, + 1.44285717e+01, 5.00476189e+01, 107., 6.82380981e+01, + 3.29523811e+01, 2.02857151e+01, 1.51428576e+01, 1.95238094e+01, + 1.69523811e+01, 1.89523811e+01, 3.56190491e+01, 3.48095245e+01, + 6.61904764e+00, 5.76190472e+00, 8.95238113e+00, 1.18095236e+01, + 7.38095236e+00, 7.80952358e+00, 1.61904755e+01, 1.12380953e+01, + 4.12380943e+01, 7.42380981e+01, 1.91904755e+01, 6.76190472e+00, + 3.49523811e+01, 8.36666641e+01, 2.82380943e+01, 1.08095236e+01, + 2.69047623e+01, 4.53809509e+01, 2.02857151e+01, 8.19047642e+00, + 3.51428566e+01, 7.69047623e+01, 2.06190472e+01, 9.23809528e+00, + 1.76666660e+01, 2.33333340e+01, 1.58095236e+01, 1.27619047e+01, + 15., 2.21428566e+01, 1.79523811e+01, 1.16666670e+01, + 6.66666651e+00, 9.80952358e+00, 7.33333349e+00, 6.23809528e+00, + 4.71428585e+00, 6.33333349e+00, 1.31428576e+01, 1.04285717e+01, + 3.63529396e+01, 5.05882359e+00, 15., 5.62352943e+01, + 4.54117661e+01, 1.38235292e+01, 3.13529415e+01, 7.24705887e+01, + 7.17647095e+01, 8.11764717e+00, 1.72352943e+01, 4.22941170e+01, + 7.54705887e+01, 2.44117641e+01, 2.92941170e+01, 8.35294113e+01, + 8.14705887e+01, 1.28235292e+01, 6.76470566e+00, 5.20588226e+01, + 1.10470589e+02, 3.18823528e+01, 1.34705887e+01, 4.81764717e+01, + 4.51176453e+01, 7.11764717e+00, 3.58823538e+00, 1.78823528e+01, + 3.05294113e+01, 1.55882349e+01, 1.12352943e+01, 3.18823528e+01, + 4.78235283e+01, 1.63529415e+01, 2.62352943e+01, 4.58235283e+01, + 2.14705887e+01, 1.05882349e+01, 3.72941170e+01, 9.86470566e+01, + 2.77058830e+01, 2.81176472e+01, 3.69411774e+01, 2.93529415e+01, + 4.41764717e+01, 5.99411774e+01, 4.94705887e+01, 4.84705887e+01, + 6.86470566e+01, 2.84117641e+01, 1.22352943e+01, 3.34117661e+01, + 9.74705887e+01, 9.96470566e+01, 3.36470604e+01, 2.71176472e+01, + 5.16470604e+01, 1.69411774e+01, 2.29411769e+00, 8.35294151e+00, + 2.71176472e+01, 2.82941170e+01, 1.35294113e+01, 1.85294113e+01, + 6.43529434e+01, 2.92941170e+01, 1.90588226e+01, 3.23529396e+01, + 3.64117661e+01, 8.64705849e+00, 1.22941179e+01, 3.45294113e+01, + 3.91764717e+01, 5.22941170e+01, 4.75294113e+01, 4.35882339e+01, + 3.41176453e+01, 3.17647057e+01, 29., 2.45294113e+01, + 6.78823547e+01, 1.60588226e+01, 1.58235292e+01, 7.29411774e+01, + 1.08117645e+02, 3.21176453e+01, 9.70588207e+00, 3.77058830e+01, + 6.18235283e+01, 6.52941179e+00, 3.35294127e+00, 1.68235302e+01, + 3.52941170e+01, 1.58823528e+01, 7.41176462e+00, 2.98235302e+01, + 4.12941170e+01, 2.72941170e+01, 8.41176510e+00, 1.06470585e+01, + 3.34117661e+01, 1.47647057e+01, 9.05882359e+00, 1.41764708e+01, + 2.83529415e+01, 2.75882359e+01, 1.70588226e+01, 3.56470604e+01, + 4.24705887e+01, 1.82352943e+01, 1.74705887e+01, 2.15294113e+01, + 6.84705887e+01, 7.29411745e+00, 6.23529434e+00, 5.84117661e+01, + 8.22352905e+01, 8.52941132e+00, 5.17647076e+00, 5.58235283e+01, + 3.36470604e+01, 5.64705896e+00, 6.17647076e+00, 1.32352943e+01, + 21., 1.06470585e+01, 4.05882359e+00, 1.95294113e+01, + 3.53488374e+00, 8.83720970e+00, 4.77441864e+01, 5.21627922e+01, + 5.74418592e+00, 8.60465109e-01, 1.09302330e+00, 1.88372087e+00, + 7.13953495e+00, 1.99534893e+01, 5.98837204e+01, 4.06279068e+01, + 5.16279078e+00, 2.46511626e+00, 4.25581408e+00, 4.41860485e+00, + 1.18372097e+01, 3.54651146e+01, 5.72325592e+01, 2.47906971e+01, + 3.83720922e+00, 1.72093022e+00, 3.41860461e+00, 4.18604660e+00, + 1.29302330e+01, 5.09534874e+01, 4.59302330e+01, 9.69767475e+00, + 1.76744187e+00, 8.13953459e-01, 1.44186044e+00, 2.30232549e+00, + 5.39534903e+00, 1.35581398e+01, 8.48604660e+01, 7.05116272e+01, + 6.93023252e+00, 2.97674417e+00, 4.01162796e+01, 3.30930214e+01, + 1.01627903e+01, 2.14883728e+01, 1.03069771e+02, 4.15581398e+01, + 7.32558155e+00, 1.17441864e+01, 6.46511612e+01, 2.54883728e+01, + 1.50465117e+01, 4.22325592e+01, 9.47674408e+01, 2.66511631e+01, + 7.88372087e+00, 1.65813961e+01, 5.16046524e+01, 1.68837204e+01, + 2.03488369e+01, 5.73023262e+01, 6.43255844e+01, 1.56976748e+01, + 5.25581408e+00, 1.32093019e+01, 1.95581398e+01, 1.14418602e+01, + 1.53488374e+00, 2.18604660e+00, 7.73720932e+01, 5.80930214e+01, + 2.41860461e+00, 1.37441864e+01, 1.05348839e+02, 5.48837204e+01, + 1.34883726e+00, 7.27906990e+00, 1.05279068e+02, 2.90697670e+01, + 3.16279078e+00, 4.93953476e+01, 1.08534882e+02, 1.74883728e+01, + 1.60465121e+00, 4.04883728e+01, 1.12581398e+02, 1.03023252e+01, + 4.53488350e+00, 6.13023262e+01, 7.51860428e+01, 5.20930243e+00, + 5.13953495e+00, 8.57441864e+01, 9.65348816e+01, 6.23255825e+00, + 4.93023252e+00, 3.44418602e+01, 2.75116272e+01, 4.79069757e+00, + 3.46511626e+00, 3.32558131e+00, 1.15116282e+01, 1.01162786e+01, + 1.67441857e+00, 1.23023252e+01, 8.21162796e+01, 40., + 2.06976748e+00, 3.93023252e+00, 1.15813951e+01, 5.55813932e+00, + 4.37209320e+00, 6.66976776e+01, 9.92093048e+01, 1.04186049e+01, + 4.65116292e-01, 6.04651165e+00, 1.32093019e+01, 3.48837209e+00, + 8.97674465e+00, 1.12279068e+02, 7.49534912e+01, 8.13953459e-01, + 4.88372087e-01, 2.66279068e+01, 2.07209301e+01, 3.53488374e+00, + 1.59767447e+01, 8.98139572e+01, 1.77441864e+01, 2.32558146e-01, + 5.44897938e+00, 2.36734700e+00, 1.81632650e+00, 2., + 1.61224484e+00, 1.38775516e+00, 2.08163261e+00, 3.51020408e+00, + 5.59387741e+01, 2.24285717e+01, 1.15510206e+01, 1.08979588e+01, + 9.42857170e+00, 1.18367348e+01, 2.76326523e+01, 6.08163261e+01, + 2.54897957e+01, 1.93877544e+01, 2.60816326e+01, 1.04693880e+01, + 5.51020432e+00, 33., 1.01734695e+02, 6.31428566e+01, + 1.53877554e+01, 1.76938782e+01, 2.53673477e+01, 3.40816331e+00, + 1.97959185e+00, 3.55510216e+01, 9.91224518e+01, 3.39795914e+01, + 1.01428576e+01, 7.12244892e+00, 2.59183669e+00, 3.08163261e+00, + 4.48979568e+00, 4.28571415e+00, 2.04081631e+00, 3.10204077e+00, + 8.74081650e+01, 9.86122437e+01, 4.10816345e+01, 1.28775511e+01, + 1.67142849e+01, 2.47959175e+01, 2.59183674e+01, 4.43877563e+01, + 5.44489784e+01, 1.15061226e+02, 1.04346939e+02, 1.01632652e+01, + 6.26530600e+00, 3.93469391e+01, 8.79387741e+01, 5.51020393e+01, + 2.54081631e+01, 8.24897995e+01, 9.01020432e+01, 5.40816307e+00, + 1.61224484e+00, 5.02448997e+01, 9.54081650e+01, 2.43877544e+01, + 3.59183669e+00, 3.71428561e+00, 2.22448969e+00, 1.51020408e+00, + 2.32653069e+00, 4.48979568e+00, 2.89795923e+00, 2.44897962e+00, + 2.23265305e+01, 5.39387741e+01, 3.31428566e+01, 7.24489784e+00, + 1.15510206e+01, 3.53673477e+01, 2.51428566e+01, 1.63469391e+01, + 1.57551022e+01, 9.74693909e+01, 1.05591835e+02, 9.51020432e+00, + 1.07346935e+01, 5.11020393e+01, 5.98979607e+01, 1.49591837e+01, + 9.91836739e+00, 9.73673477e+01, 1.27326530e+02, 9.65306091e+00, + 3.48979592e+00, 3.03469391e+01, 6.58979568e+01, 1.26326532e+01, + 1.73469388e+00, 1.30612242e+00, 1., 7.75510192e-01, + 7.75510192e-01, 1.04081631e+00, 1.73469388e+00, 1.83673465e+00, + 1.08571424e+01, 9.36734676e+00, 7.06122446e+00, 4.10204077e+00, + 4.77551031e+00, 9.24489784e+00, 1.06938772e+01, 1.09591837e+01, + 9.85714245e+00, 1.37142859e+01, 1.45918369e+01, 7.24489784e+00, + 8.81632614e+00, 1.97959175e+01, 2.78163261e+01, 1.04285717e+01, + 1.01632652e+01, 2.14897957e+01, 2.56326523e+01, 5.46938753e+00, + 5., 1.78163261e+01, 3.64285698e+01, 12., 2.61818171e+00, + 2.29090905e+00, 6.98181820e+00, 3.41818199e+01, 2.06545448e+01, + 6.70909071e+00, 4.85454559e+00, 4.19999981e+00, 2.18181825e+00, + 2.18181825e+00, 1.36000004e+01, 9.78000031e+01, 4.54181824e+01, + 4.59999990e+00, 3.43636370e+00, 4.45454550e+00, 4.36363649e+00, + 2.01818180e+00, 2.57818184e+01, 1.08036362e+02, 2.89090900e+01, + 3.01818180e+00, 6.05454540e+00, 2.25272732e+01, 5.01818180e+00, + 2.03636360e+00, 3.44727287e+01, 9.52363663e+01, 7.25454569e+00, + 1.96363640e+00, 1.68545456e+01, 4.52181816e+01, 1.89090908e+00, + 1.81818187e+00, 5.94545460e+00, 6.36909103e+01, 5.83090897e+01, + 6.23636341e+00, 3.25454545e+00, 2.87272716e+00, 6.58181810e+00, + 1.69090915e+00, 8.14545441e+00, 1.12490906e+02, 8.29818192e+01, + 6., 3.69090915e+00, 1.50363636e+01, 2.28545456e+01, + 1.98181820e+00, 1.25090914e+01, 1.17036362e+02, 5.09454536e+01, + 3.20000005e+00, 6.61818171e+00, 6.74363632e+01, 2.47818184e+01, + 1.83636367e+00, 1.18727274e+01, 7.36727295e+01, 1.03272724e+01, + 6.54545426e-01, 1.37818184e+01, 9.96181793e+01, 2.69090915e+00, + 1.16363633e+00, 2.94545460e+00, 5.74363632e+01, 8.47636337e+01, + 7.72727251e+00, 2.29090905e+00, 2.94545460e+00, 2.21090908e+01, + 2.36363626e+00, 3.30909085e+00, 9.62181854e+01, 1.07036362e+02, + 9.34545422e+00, 3.49090910e+00, 2.48181820e+01, 7.20909119e+01, + 3.67272735e+00, 3.20000005e+00, 9.80363617e+01, 7.21454544e+01, + 1.78181815e+00, 2.50909090e+00, 7.37636337e+01, 6.51090927e+01, + 7.12727261e+00, 3.12727284e+00, 2.31454544e+01, 9.67272758e+00, + 4.18181807e-01, 5.40000010e+00, 8.11999969e+01, 4.07272720e+00, + 1.03636360e+00, 1.39999998e+00, 2.85090904e+01, 8.37636337e+01, + 1.28363638e+01, 1.58181822e+00, 2.58181810e+00, 3.18181820e+01, + 3.96363640e+00, 1.89090908e+00, 5.63818169e+01, 1.10400002e+02, + 9.07272720e+00, 2.74545455e+00, 1.50909090e+01, 9.59090881e+01, + 1.40727272e+01, 1.38181818e+00, 3.64909096e+01, 6.63272705e+01, + 1.96363640e+00, 6.72727287e-01, 3.14181824e+01, 6.32727280e+01, + 1.87454548e+01, 3.59999990e+00, 6.40000010e+00, 7.70909071e+00, + 6.00000024e-01, 7.81818211e-01, 2.04363632e+01, 1.99459457e+01, + 6.43243265e+00, 3.78378367e+00, 2.91621628e+01, 1.95405407e+01, + 2.54054046e+00, 1.81081080e+00, 1.49459457e+01, 1.96486492e+01, + 12., 8.70270252e+00, 1.54324322e+01, 1.29459457e+01, + 4.24324322e+00, 1.32432437e+00, 1.11351347e+01, 1.67297306e+01, + 1.24594593e+01, 7.83783770e+00, 5.54054070e+00, 9.89189148e+00, + 6.89189196e+00, 4.32432413e+00, 3.59459448e+00, 6.45945930e+00, + 5.10810804e+00, 1.75675678e+00, 1.81081080e+00, 4.05405426e+00, + 4.72972965e+00, 2.83783793e+00, 1.54054058e+00, 6.95405426e+01, + 1.67297306e+01, 1.30810814e+01, 7.28648682e+01, 6.55135117e+01, + 1.11081085e+01, 1.21351347e+01, 7.04324341e+01, 5.60540543e+01, + 3.38918915e+01, 2.17837830e+01, 4.72432442e+01, 4.94054070e+01, + 2.44594593e+01, 1.72702694e+01, 5.02162170e+01, 8.11351318e+01, + 4.98378372e+01, 2.86486492e+01, 3.51891899e+01, 5.90810814e+01, + 1.99189186e+01, 7.54054070e+00, 2.43513508e+01, 4.10540543e+01, + 2.26486492e+01, 9.97297287e+00, 1.59459457e+01, 2.33783779e+01, + 1.42432432e+01, 7.83783770e+00, 1.07027025e+01, 9.32432404e+01, + 3.03783779e+01, 1.31891890e+01, 4.78378372e+01, 6.60810776e+01, + 2.64864864e+01, 2.85135136e+01, 8.45675659e+01, 3.86486473e+01, + 2.46216221e+01, 1.84594593e+01, 3.66756744e+01, 6.22972984e+01, + 6.96756744e+01, 6.72162170e+01, 7.02162170e+01, 7.69459457e+01, + 2.27297306e+01, 1.17567568e+01, 5.24054070e+01, 8.55675659e+01, + 3.52162170e+01, 24., 7.48378372e+01, 6.17297287e+01, + 1.53513517e+01, 9.48648643e+00, 3.29729729e+01, 3.59459457e+01, + 7.83783770e+00, 6.94594574e+00, 3.66486473e+01, 9.63783798e+01, + 8.64324341e+01, 3.46756744e+01, 2.89189186e+01, 4.93783798e+01, + 2.55405407e+01, 1.35675678e+01, 3.07027035e+01, 4.84324341e+01, + 4.75135117e+01, 4.73243256e+01, 5.68648643e+01, 3.70810814e+01, + 3.36486473e+01, 4.10810814e+01, 4.48648643e+01, 5.89729729e+01, + 9.62162209e+00, 2.15405407e+01, 9.80540543e+01, 7.12162170e+01, + 1.98108101e+01, 3.12432442e+01, 8.93513489e+01, 4.06486473e+01, + 6.13513517e+00, 6.81081104e+00, 3.23243256e+01, 2.28108101e+01, + 4.43243265e+00, 8.40540504e+00, 4.78108101e+01, 1.00833330e+01, + 9.64999962e+00, 9.70500031e+01, 1.20216667e+02, 2.08166676e+01, + 1.58166666e+01, 1.26599998e+02, 1.29750000e+02, 2.10666676e+01, + 1.69500008e+01, 5.11500015e+01, 8.54833298e+01, 4.50333328e+01, + 3.40666656e+01, 1.05216667e+02, 1.21500000e+02, 1.38333330e+01, + 1.67666664e+01, 2.72833328e+01, 4.24500008e+01, 47., + 3.68499985e+01, 3.94833336e+01, 34., 3.81666660e+00, + 5.11666679e+00, 8.43333340e+00, 1.43833332e+01, 1.56333332e+01, + 1.15500002e+01, 1.03333330e+01, 6.19999981e+00, 1.80333328e+01, + 2.21333332e+01, 4.82833328e+01, 6.23333321e+01, 4.73166656e+01, + 3.97333336e+01, 7.22833328e+01, 6.81833344e+01, 2.29666672e+01, + 3.00499992e+01, 4.74666672e+01, 6.72166672e+01, 7.06833344e+01, + 5.49000015e+01, 4.55499992e+01, 3.30333328e+01, 1.77666664e+01, + 2.49833336e+01, 3.43333321e+01, 5.66500015e+01, 5.78333321e+01, + 4.75000000e+01, 3.86333351e+01, 2.25000000e+01, 6.18333340e+00, + 7.25000000e+00, 1.10333338e+01, 1.71666660e+01, 1.93333340e+01, + 1.57333336e+01, 1.35500002e+01, 8.26666641e+00, 1.96166668e+01, + 2.26833324e+01, 3.54666672e+01, 4.79666672e+01, 4.99500008e+01, + 4.89000015e+01, 3.55333328e+01, 2.37000008e+01, 2.41666660e+01, + 2.72000008e+01, 3.77833328e+01, 5.49333344e+01, 7.15666656e+01, + 6.36166649e+01, 4.18499985e+01, 28., 2.14666672e+01, + 2.34333324e+01, 3.09666672e+01, 4.75166664e+01, 5.81500015e+01, + 4.65666656e+01, 3.37000008e+01, 2.20333328e+01, 6.21666670e+00, + 8.18333340e+00, 1.07500000e+01, 1.52500000e+01, 2.07333336e+01, + 1.55666666e+01, 9.53333378e+00, 5.03333330e+00, 1.59666662e+01, + 1.73500004e+01, 2.07000008e+01, 2.78666668e+01, 3.70833321e+01, + 3.08500004e+01, 1.76833324e+01, 1.31833334e+01, 1.90333328e+01, + 2.25833340e+01, 2.75499992e+01, 3.80333328e+01, 5.08166656e+01, + 3.79333344e+01, 2.30166664e+01, 1.64666672e+01, 1.25833330e+01, + 1.76166668e+01, 2.07666664e+01, 2.88666668e+01, 4.22333336e+01, + 3.36500015e+01, 2.02833328e+01, 1.25500002e+01, 3.34999990e+00, + 5.71666670e+00, 7.31666660e+00, 8.50000000e+00, 1.19666662e+01, + 1.10166664e+01, 5.94999981e+00, 3.09999990e+00, 2.40000010e+00, + 1.10000002e+00, 1.10000002e+00, 3.45000005e+00, 2.44500008e+01, + 4.27500000e+01, 3.43499985e+01, 9.97500038e+00, 1.28500004e+01, + 3.08750000e+01, 3.17499995e+00, 5.32499981e+00, 2.74249992e+01, + 29., 2.17999992e+01, 1.31000004e+01, 9.57500000e+01, + 1.08275002e+02, 4.90000010e+00, 3.97499990e+00, 4.80999985e+01, + 6.65000000e+01, 7.40000010e+00, 7.67500019e+00, 3.19750004e+01, + 2.62999992e+01, 2.72499990e+00, 2.20000005e+00, 8.73499985e+01, + 8.72500000e+01, 4.09999990e+00, 4.57499981e+00, 5.72499990e+00, + 4.59999990e+00, 7.32499981e+00, 2.09249992e+01, 6.57750015e+01, + 6.23250008e+01, 2.86000004e+01, 9.52499962e+00, 2.75000000e+00, + 3.09999990e+00, 2.65000010e+00, 2.51749992e+01, 6.02999992e+01, + 3.19249992e+01, 1.43500004e+01, 4.94999981e+00, 1.11949997e+02, + 6.99499969e+01, 4.15000010e+00, 1.51250000e+01, 4.73750000e+01, + 2.12250004e+01, 6.67500019e+00, 6.07499981e+00, 9.43750000e+01, + 3.90250015e+01, 2.37500000e+00, 5.90000010e+00, 1.19849998e+02, + 6.54250031e+01, 2.92499995e+00, 5.65000010e+00, 5.72499990e+00, + 6.97499990e+00, 1.73250008e+01, 6.94250031e+01, 6.69749985e+01, + 1.95499992e+01, 5.90000010e+00, 5.09999990e+00, 1.85000002e+00, + 2.15000010e+00, 7.75000000e+00, 5.79749985e+01, 5.62000008e+01, + 1.21250000e+01, 3.20000005e+00, 2.45000005e+00, 1.09599998e+02, + 1.82000008e+01, 5.34999990e+00, 3.06000004e+01, 3.92999992e+01, + 7.59999990e+00, 2.70000005e+00, 1.96250000e+01, 1.06900002e+02, + 1.77749996e+01, 2.29999995e+00, 3.08750000e+01, 1.19925003e+02, + 1.56750002e+01, 1.79999995e+00, 1.73250008e+01, 1.20000005e+00, + 3.09999990e+00, 2.11000004e+01, 6.29249992e+01, 2.91250000e+01, + 3.20000005e+00, 1.50000000e+00, 1.22500002e+00, 4.42500019e+00, + 2.57500005e+00, 1.64249992e+01, 5.02999992e+01, 2.42999992e+01, + 3.27500010e+00, 3.90000010e+00, 8.80000019e+00, 1.05675003e+02, + 4.17500019e+00, 5.87500000e+00, 3.75999985e+01, 3.02999992e+01, + 2.67499995e+00, 1.45000005e+00, 7.45250015e+01, 7.19749985e+01, + 3.84999990e+00, 1.82500005e+00, 5.97500000e+01, 1.00349998e+02, + 2.59999990e+00, 1.77499998e+00, 3.30750008e+01, 5.44489784e+01, + 5.23877563e+01, 1.49795914e+01, 1.82857151e+01, 3.16734695e+01, + 4.12244911e+01, 5.37551003e+01, 3.67551003e+01, 1.66530609e+01, + 1.99387760e+01, 3.08979588e+01, 3.31428566e+01, 4.02244911e+01, + 6.29591827e+01, 6.62040787e+01, 4.14489784e+01, 1.40816326e+01, + 4.44489784e+01, 2.32244892e+01, 1.64693871e+01, 4.06734695e+01, + 1.03877548e+02, 4.24081650e+01, 1.20204086e+01, 2.13265305e+01, + 6.48367310e+01, 1.55306120e+01, 4.04081631e+00, 1.82040825e+01, + 7.69387741e+01, 1.99795914e+01, 3.36734700e+00, 7.72653046e+01, + 9.80204086e+01, 3.35102043e+01, 2.40204086e+01, 5.09183655e+01, + 5.21020393e+01, 1.37551022e+01, 1.66326523e+01, 2.99387760e+01, + 5.55306129e+01, 7.05510178e+01, 6.19795914e+01, 5.55918350e+01, + 4.40612259e+01, 1.84897957e+01, 2.14081631e+01, 2.34897957e+01, + 4.77551003e+01, 5.56938782e+01, 40., 4.03061218e+01, + 5.63061218e+01, 3.62448997e+01, 2.26326523e+01, 2.04693871e+01, + 3.99183655e+01, 1.85918369e+01, 1.86122456e+01, 4.18367348e+01, + 7.67142868e+01, 2.40612240e+01, 8.61224461e+00, 2.31632652e+01, + 9.37959213e+01, 3.11428566e+01, 7.26530600e+00, 32., + 8.52653046e+01, 2.79795914e+01, 6.67346954e+00, 1.96938782e+01, + 1.04367348e+02, 7.29387741e+01, 1.47959185e+01, 2.94489803e+01, + 8.79387741e+01, 3.63265305e+01, 8.75510216e+00, 2.03061218e+01, + 6.26734695e+01, 7.16326523e+01, 3.07346935e+01, 1.81224499e+01, + 5.34285698e+01, 4.20816345e+01, 2.31632652e+01, 1.64285717e+01, + 2.13673477e+01, 2.80816326e+01, 4.27142868e+01, 3.01020412e+01, + 2.28775501e+01, 2.15510197e+01, 2.06530609e+01, 4.93877554e+00, + 1.16734695e+01, 5.02040815e+00, 3.24489784e+00, 7.73469400e+00, + 2.68775501e+01, 1.55306120e+01, 5.48979568e+00, 8.08163261e+00, + 31., 1.71428566e+01, 3.04081631e+00, 6.42857122e+00, + 4.15102043e+01, 3.34081650e+01, 7.89795923e+00, 7.40816307e+00, + 2.30408173e+01, 2.81836739e+01, 1.44081631e+01, 6.67346954e+00, + 2.08367348e+01, 3.04285717e+01, 1.42040815e+01, 4.89795923e+00, + 5.77551031e+00, 1.00408163e+01, 1.73265305e+01, 7.10204077e+00, + 5.06122446e+00, 1.74081631e+01, 1.64285717e+01, 5.82528725e+01, + 1.05517244e+01, 1.32068968e+01, 2.75977020e+01, 1.97126446e+01, + 2.23218384e+01, 1.21689651e+02, 1.45379303e+02, 6.57816086e+01, + 2.60344830e+01, 2.32758617e+01, 3.11264362e+01, 3.29655190e+01, + 3.86666679e+01, 8.52758636e+01, 1.33816086e+02, 3.87701149e+01, + 2.51034489e+01, 2.89770107e+01, 2.90919533e+01, 2.99080467e+01, + 3.51149406e+01, 4.95172424e+01, 6.13103447e+01, 7.13793087e+00, + 5.96551704e+00, 7.26436758e+00, 5.68965530e+00, 6.22988510e+00, + 6.72413778e+00, 7.96551704e+00, 7.85057449e+00, 5.18390808e+01, + 2.40114937e+01, 2.66206894e+01, 3.85057487e+01, 3.99425278e+01, + 4.54597702e+01, 9.44827576e+01, 1.17735634e+02, 5.81609192e+01, + 3.96321831e+01, 4.17816086e+01, 5.05517235e+01, 5.73448257e+01, + 6.43333359e+01, 8.17356339e+01, 8.91264343e+01, 3.92643661e+01, + 3.26896553e+01, 3.83793106e+01, 4.13333321e+01, 4.84252892e+01, + 5.04942513e+01, 6.20689659e+01, 5.65057487e+01, 7.16091967e+00, + 5.57471275e+00, 7.79310322e+00, 7.52873564e+00, 8.24137974e+00, + 1.01839085e+01, 1.30804596e+01, 9.93103409e+00, 3.20344810e+01, + 2.28735638e+01, 2.47931042e+01, 3.27816086e+01, 3.58160934e+01, + 3.67011490e+01, 4.48045959e+01, 5.05287361e+01, 4.52413788e+01, + 2.98275871e+01, 3.39885063e+01, 4.31034470e+01, 4.90114937e+01, + 4.71839066e+01, 5.01839066e+01, 5.76436768e+01, 3.17011490e+01, + 2.17471256e+01, 3.01379318e+01, 3.38275871e+01, 4.14367828e+01, + 3.91839066e+01, 3.95632172e+01, 4.27011490e+01, 4.82758617e+00, + 3.44827580e+00, 6.13793087e+00, 6.56321859e+00, 6.48275852e+00, + 7.33333349e+00, 7.91954041e+00, 6.59770107e+00, 4.40229893e+00, + 2.93103456e+00, 2.50574708e+00, 4.29885054e+00, 5.37931013e+00, + 4.45977020e+00, 4.89655161e+00, 5.87356329e+00, 6.58620691e+00, + 3.91954017e+00, 4.78160906e+00, 6.21839094e+00, 7.20689678e+00, + 4.72413778e+00, 5.13793087e+00, 7.51724148e+00, 4.01149416e+00, + 2.44827580e+00, 3.63218379e+00, 5.50574732e+00, 5.78160906e+00, + 4.50574732e+00, 4.32183886e+00, 4.90804577e+00, 7.70114958e-01, + 4.94252861e-01, 6.32183909e-01, 7.01149404e-01, 6.32183909e-01, + 6.78160906e-01, 5.51724136e-01, 7.01149404e-01, 1.40781250e+01, + 2.25625000e+01, 2.38281250e+01, 1.27656250e+01, 8.92187500e+00, + 1.17812500e+01, 1.42500000e+01, 1.29062500e+01, 1.31875000e+01, + 1.24687500e+01, 2.94218750e+01, 4.78593750e+01, 3.39531250e+01, + 2.17187500e+01, 2.06875000e+01, 1.74687500e+01, 1.96875000e+00, + 4.50000000e+00, 1.60468750e+01, 5.78125000e+01, 5.82343750e+01, + 2.67812500e+01, 1.10312500e+01, 2.62500000e+00, 1.51093750e+01, + 1.23437500e+00, 5.96875000e+00, 3.35781250e+01, 3.09062500e+01, + 1.62187500e+01, 1.25625000e+01, 1.25468750e+01, 1.14531250e+01, + 4.42812500e+01, 7.28437500e+01, 2.33125000e+01, 5.01562500e+00, + 2.62500000e+00, 3.03125000e+00, 5.89062500e+00, 5.76562500e+00, + 2.21406250e+01, 7.08750000e+01, 6.84687500e+01, 2.25312500e+01, + 6.32812500e+00, 3.81250000e+00, 3.95312500e+00, 1.37500000e+00, + 4.76562500e+00, 3.46093750e+01, 7.03906250e+01, 3.78593750e+01, + 1.38437500e+01, 6.48437500e+00, 4.23437500e+00, 3.12500000e+01, + 1.65625000e+00, 1.06250000e+01, 4.55000000e+01, 2.46250000e+01, + 1.07656250e+01, 1.10937500e+01, 8.87343750e+01, 4.67187500e+00, + 3.67500000e+01, 5.03437500e+01, 1.23281250e+01, 3.68750000e+00, + 4.89062500e+00, 1.73906250e+01, 2.54687500e+00, 2.43750000e+00, + 21., 6.37031250e+01, 3.14062500e+01, 9.70312500e+00, + 4.93750000e+00, 2.92968750e+01, 1.68125000e+01, 4.10937500e+00, + 4.79687500e+00, 3.77031250e+01, 4.97656250e+01, 1.36875000e+01, + 6.81250000e+00, 5.40781250e+01, 9.94062500e+01, 2.06875000e+01, + 1.76562500e+00, 2.10468750e+01, 1.11343750e+02, 1.69687500e+01, + 3.04687500e+00, 3.06875000e+01, 1.22578125e+02, 1.89062500e+00, + 1.85468750e+01, 7.95937500e+01, 7.85937500e+00, 1.29687500e+00, + 1.67656250e+01, 1.15468750e+02, 1.53437500e+01, 2.29687500e+00, + 7.40625000e+00, 9.89531250e+01, 4.35781250e+01, 1.95312500e+00, + 4.54687500e+00, 1.15296875e+02, 7.56562500e+01, 3.59375000e+00, + 2.68750000e+00, 1.02890625e+02, 1.15187500e+02, 2.43750000e+00, + 2.46875000e+00, 8.03593750e+01, 1.00250000e+02, 5.75000000e+00, + 1.75000000e+00, 4.52343750e+01, 1.15718750e+02, 4.17187500e+00, + 1.98437500e+00, 1.60468750e+01, 3.74687500e+01, 3.03225803e+00, + 1.27741938e+01, 1.00322578e+02, 2.77096767e+01, 1.25806451e+00, + 4.12903214e+00, 5.02258072e+01, 2.85806446e+01, 3.29032254e+00, + 4.84516144e+01, 1.05645164e+02, 7.67741919e+00, 2.06451607e+00, + 2.43548393e+01, 8.80967712e+01, 1.97419357e+01, 2.96774197e+00, + 1.02225807e+02, 1.03580643e+02, 2.90322590e+00, 2.16129041e+00, + 5.76774178e+01, 6.48709641e+01, 4.70967722e+00, 6.77419376e+00, + 1.16548386e+02, 6.86774216e+01, 2.16129041e+00, 3., + 4.19677429e+01, 1.63225803e+01, 1.32258070e+00, 1.09677420e+01, + 5.09677410e+00, 2.66774197e+01, 6.03225803e+00, 1.93548381e-01, + 8.38709652e-01, 7.87096786e+01, 1.07354836e+02, 7.77419376e+00, + 1.62580643e+01, 2.16129036e+01, 6.12903237e-01, 3.22580636e-01, + 1.81290321e+01, 1.19032257e+02, 7.54838715e+01, 4.77419376e+00, + 3.79677429e+01, 1.73870964e+01, 2.58064508e-01, 1.90322578e+00, + 9.81935501e+01, 1.17322578e+02, 1.97096767e+01, 1.37741938e+01, + 9.25483856e+01, 1.88064518e+01, 4.19354826e-01, 9.51612949e+00, + 1.17451614e+02, 4.73870964e+01, 2.35483861e+00, 3.15161285e+01, + 8.87096786e+00, 4.83870983e+00, 3.48387098e+00, 8.38709652e-01, + 1.70967746e+00, 2.15483875e+01, 81., 2.23548393e+01, + 1.14838705e+01, 7.41935492e+00, 3.06451607e+00, 2.41935492e+00, + 7.51612902e+00, 3.40322571e+01, 5.15806465e+01, 1.44516125e+01, + 1.64193554e+01, 4.64516115e+00, 1.70967746e+00, 6.64516115e+00, + 4.34838715e+01, 4.40645180e+01, 1.92258072e+01, 9.54838753e+00, + 1.93548393e+01, 1.64516127e+00, 7.09677398e-01, 3.74193535e+01, + 1.11838707e+02, 2.24193554e+01, 4.12903214e+00, 3.25806465e+01, + 1.91290321e+01, 5.67741919e+00, 2.48387098e+00, 1.93548381e+00, + 2.51612902e+00, 5.45161295e+00, 2.62580643e+01, 2.50967751e+01, + 1.64838715e+01, 8.03225803e+00, 4.77419376e+00, 5.58064508e+00, + 8.38709641e+00, 9.58064556e+00, 1.75483875e+01, 2.35161285e+01, + 2.00645161e+01, 9.32258034e+00, 6.90322590e+00, 8.67741966e+00, + 1.27419357e+01, 1.14838705e+01, 1.45483875e+01, 1.30645161e+01, + 1.29032259e+01, 3.09677410e+00, 7.58064508e+00, 5.55161285e+01, + 3.54193535e+01, 5.09677410e+00, 5.61290312e+00, 4.85925941e+01, + 2.99135799e+01, 3.12345672e+00, 2.50617290e+00, 8.52345657e+01, + 6.87901230e+01, 4.20987654e+00, 6.04938269e+00, 3.53209877e+01, + 2.85802460e+01, 9.91357994e+00, 2.79012346e+00, 1.05802469e+01, + 1.09506168e+01, 3.33333325e+00, 1.55555553e+01, 4.27777786e+01, + 4.96790123e+01, 2.07407398e+01, 4.04938269e+00, 3.51851845e+00, + 3.06172848e+00, 3.51851845e+00, 1.23456793e+01, 2.03703709e+01, + 3.66913567e+01, 2.98518524e+01, 1.03703699e+01, 9.06172848e+00, + 6.96296310e+00, 7.33333349e+00, 8.01234531e+00, 6.46296310e+01, + 1.10098763e+02, 4.04938269e+00, 1.98765433e+00, 5.52839508e+01, + 1.05493828e+02, 6.55555534e+00, 2.87654328e+00, 2.57283955e+01, + 4.42222214e+01, 1.50864201e+01, 3.65432096e+00, 2.93950615e+01, + 1.01876541e+02, 1.03209877e+01, 5.74074078e+00, 2.81358032e+01, + 5.35802460e+01, 3.29382706e+01, 7.86419773e+00, 4.02469158e+00, + 6.90123463e+00, 3.12345672e+00, 6.23456812e+00, 1.33827162e+01, + 4.06172829e+01, 4.39259262e+01, 1.50617285e+01, 3.16049385e+00, + 1.25925922e+00, 1.75308645e+00, 3.96296287e+00, 2.77037029e+01, + 1.18481483e+02, 1.12222223e+01, 2.81481481e+00, 1.21851854e+01, + 4.39135818e+01, 8.14814854e+00, 2.14814806e+00, 1.40493832e+01, + 1.20913582e+02, 3.64444427e+01, 2.43209887e+00, 1.57654324e+01, + 1.23617287e+02, 4.23827171e+01, 2.06172848e+00, 1.00493832e+01, + 5.06172829e+01, 3.45802460e+01, 5.77777767e+00, 4.39506149e+00, + 1.07481483e+02, 7.60123444e+01, 2.62962961e+00, 5.56790113e+00, + 2.96666660e+01, 3.32592583e+01, 1.18148146e+01, 2.29629636e+00, + 2.12098770e+01, 4.85802460e+01, 2.70370364e+00, 2.22222233e+00, + 1.85679016e+01, 4.29629612e+00, 2.41975307e+00, 8.74074078e+00, + 1.86172848e+01, 9.48148155e+00, 2.35802460e+00, 3.39506173e+00, + 1.05679016e+02, 5.00864182e+01, 2.41975307e+00, 6.23456812e+00, + 3.46172829e+01, 1.57160492e+01, 2.40740752e+00, 2.34567904e+00, + 1.06481483e+02, 1.03234566e+02, 2.20987654e+00, 2.71604943e+00, + 7.55679016e+01, 6.60246887e+01, 2.37037039e+00, 1.56790125e+00, + 3.71234550e+01, 9.13086395e+01, 4.35802460e+00, 1.27160490e+00, + 4.59629631e+01, 1.03753090e+02, 4.02469158e+00, 1.47540987e+00, + 2.01639342e+00, 1.21311474e+00, 1.81967211e+00, 8.31803284e+01, + 1.34278687e+02, 8., 1.31147540e+00, 8.72131157e+00, + 1.76885242e+01, 2.55737710e+00, 1.36065578e+00, 5.57868843e+01, + 1.35360657e+02, 1.33770494e+01, 2.36065578e+00, 2.38524590e+01, + 8.03114777e+01, 1.63606548e+01, 2.75409842e+00, 5.01639366e+00, + 2.54590168e+01, 1.38852463e+01, 6.93442631e+00, 1.49836063e+01, + 7.45737686e+01, 4.47049179e+01, 8.95081997e+00, 4.47540998e+00, + 1.04262295e+01, 1.18852463e+01, 1.40819674e+01, 3.77049184e+00, + 5.65573788e+00, 4.70491791e+00, 4.59016371e+00, 3.11475410e+01, + 1.02049179e+02, 2.11311474e+01, 3.73770499e+00, 1.95081973e+00, + 3.50819683e+00, 1.90163934e+00, 1.88524592e+00, 3.50655746e+01, + 1.45360657e+02, 6.28688507e+01, 1.93442619e+00, 6.11475420e+00, + 2.00327873e+01, 8.39344215e+00, 2.47540975e+00, 7.83606577e+00, + 1.37655731e+02, 1.10590164e+02, 5.19672108e+00, 8.03278732e+00, + 4.00163918e+01, 3.24754105e+01, 5.67213106e+00, 2.13114762e+00, + 3.28032799e+01, 8.28688507e+01, 2.10983601e+01, 7.32786894e+00, + 1.07540979e+01, 8.95081997e+00, 6.31147528e+00, 1.68688526e+01, + 3.01147537e+01, 1.32950821e+01, 5.54098368e+00, 4.86885262e+00, + 8.18032742e+00, 6.63934422e+00, 4.90163946e+00, 2.40491810e+01, + 1.08540985e+02, 4.10983620e+01, 5.01639366e+00, 1.86885250e+00, + 3.49180317e+00, 6.18032789e+00, 3.90163946e+00, 1.75737705e+01, + 1.41245895e+02, 1.09196724e+02, 2.96721315e+00, 2.85245895e+00, + 5.04918051e+00, 1.12622948e+01, 4.57377052e+00, 6.60655737e+00, + 8.94098358e+01, 1.23950821e+02, 1.01475410e+01, 5.47540998e+00, + 6.34426212e+00, 5.14754105e+00, 4.36065578e+00, 7.77049160e+00, + 1.25081968e+01, 6.06557369e+00, 3.80327868e+00, 5.93442631e+00, + 7.81967211e+00, 6.78688526e+00, 4.67213106e+00, 1.01147537e+01, + 2.28360653e+01, 1.12295084e+01, 4.95081949e+00, 3.47540975e+00, + 4.45901632e+00, 5.75409842e+00, 3.57377052e+00, 1.13606558e+01, + 4.33442612e+01, 2.29344254e+01, 4.37704897e+00, 1.98360658e+00, + 1.70491803e+00, 2.60655737e+00, 1.95081973e+00, 5.37704897e+00, + 3.99180336e+01, 3.81803284e+01, 5.88524580e+00, 2.02702713e+00, + 2.59459448e+00, 2.70270276e+00, 5.74324322e+00, 4.48513527e+01, + 4.61081085e+01, 6.31081104e+00, 1.86486483e+00, 4.56756735e+00, + 3.28378367e+00, 1.50000000e+00, 7.44594574e+00, 1.33864868e+02, + 1.30486481e+02, 6.74324322e+00, 2.68918920e+00, 2.62297306e+01, + 3.59054070e+01, 7.43243265e+00, 8.91891861e+00, 4.31216202e+01, + 5.89594612e+01, 1.16756754e+01, 8.50000000e+00, 4.08783798e+01, + 9.44054031e+01, 2.97432442e+01, 1.12162161e+01, 1.55270271e+01, + 2.62162170e+01, 1.19054050e+01, 9.77027035e+00, 3.82432437e+00, + 4.67567587e+00, 5.58108091e+00, 7.12162161e+00, 2.49189186e+01, + 3.42702713e+01, 1.04594593e+01, 4.64864874e+00, 3.47297287e+00, + 4.18918896e+00, 3.41891885e+00, 5.79729748e+00, 9.83513489e+01, + 1.50797302e+02, 2.38513508e+01, 3.45945954e+00, 6.79729748e+00, + 1.12432432e+01, 5.20270252e+00, 3.79729724e+00, 5.05000000e+01, + 1.50040543e+02, 4.74324341e+01, 4.94594574e+00, 1.54729729e+01, + 4.86351357e+01, 2.06621628e+01, 8.60810852e+00, 1.49054050e+01, + 5.69324341e+01, 4.05540543e+01, 1.11486483e+01, 5.79729748e+00, + 8.32432461e+00, 8.54054070e+00, 6.72972965e+00, 1.30405407e+01, + 1.85270271e+01, 1.10675678e+01, 6.13513517e+00, 6.95945930e+00, + 9.47297287e+00, 9.93243217e+00, 8.60810852e+00, 3.24324341e+01, + 9.46621628e+01, 3.52162170e+01, 9.35135174e+00, 3.14864874e+00, + 4.39189196e+00, 3.78378367e+00, 4., 2.79729729e+01, + 1.50567566e+02, 93., 7.45945930e+00, 2.77027035e+00, + 4.41891909e+00, 4.91891909e+00, 2.97297287e+00, 1.06081085e+01, + 1.38581085e+02, 1.30459457e+02, 7.91891909e+00, 4.39189196e+00, + 5.71621609e+00, 5.50000000e+00, 3.75675678e+00, 6.43243265e+00, + 9.83783817e+00, 6.74324322e+00, 3.98648643e+00, 7.31081104e+00, + 1.01351347e+01, 9.18918896e+00, 5.83783770e+00, 1.24864864e+01, + 2.44729729e+01, 1.67972965e+01, 7.66216230e+00, 4.08108091e+00, + 6.64864874e+00, 7.02702713e+00, 5.21621609e+00, 1.55405407e+01, + 4.90405388e+01, 2.98783779e+01, 7.52702713e+00, 2.32432437e+00, + 2.32432437e+00, 4.12162161e+00, 3.25675678e+00, 1.00945950e+01, + 5.81621628e+01, 5.26216202e+01, 6.66216230e+00, 3.12121201e+00, + 1.21818180e+01, 2.11212120e+01, 5.24242401e+00, 3.60606050e+00, + 2.52121220e+01, 6.92424240e+01, 9.93939400e+00, 5.57575750e+00, + 2.61818180e+01, 2.31818180e+01, 4.87878799e+00, 1.04545450e+01, + 7.56060638e+01, 9.26666641e+01, 9.21212101e+00, 5.27272749e+00, + 2.93030300e+01, 2.18181820e+01, 4.48484850e+00, 2.73939400e+01, + 8.52727280e+01, 5.05454559e+01, 5.42424250e+00, 3.63636374e+00, + 1.90303040e+01, 2.44848480e+01, 5.03030300e+00, 5.78787899e+00, + 1.32727270e+01, 3.28787880e+01, 4., 9.36363602e+00, + 1.37575760e+01, 1.85454540e+01, 9.36363602e+00, 5.96969700e+00, + 7.15151501e+00, 2.23333340e+01, 2.07575760e+01, 22., + 3.06060600e+01, 2.36666660e+01, 2.06666660e+01, 2.18484840e+01, + 3.49393921e+01, 3.58484840e+01, 2.96060600e+01, 3.08181820e+01, + 4.09090919e+01, 4.86666679e+01, 2.53030300e+01, 4.03939400e+01, + 9.22424240e+01, 9.77878799e+01, 2.55454540e+01, 7.06060600e+00, + 2.18787880e+01, 6.32727280e+01, 1.21818180e+01, 8.27272701e+00, + 5.88484840e+01, 1.24181816e+02, 1.53939390e+01, 6.57575750e+00, + 2.36666660e+01, 6.42727280e+01, 1.28181820e+01, 4.24242401e+00, + 7.24242401e+00, 2.16666660e+01, 1.86969700e+01, 1.27272730e+01, + 1.93939400e+01, 7.84848480e+01, 7.90909119e+01, 1.95757580e+01, + 9.72727299e+00, 29., 47., 1.94545460e+01, 4.18181801e+01, + 1.07939392e+02, 1.05363640e+02, 3.12424240e+01, 1.67272720e+01, + 4.81212120e+01, 3.28484840e+01, 5.75757599e+00, 4.53636360e+01, + 1.22848488e+02, 3.25151520e+01, 6.06060600e+00, 2.44242420e+01, + 7.78484879e+01, 1.30303030e+01, 2.87878799e+00, 11., + 8.74242401e+01, 1.39090910e+01, 2.03030300e+00, 1.01818180e+01, + 3.71212120e+01, 9.30303001e+00, 2.36363626e+00, 6.90909100e+00, + 8.16060638e+01, 4.63333321e+01, 4.96969700e+00, 7.81818199e+00, + 4.33333321e+01, 1.91212120e+01, 2.18181825e+00, 6.09090900e+00, + 3.57575760e+01, 4.92424240e+01, 1.07878790e+01, 1.06666670e+01, + 4.49090919e+01, 2.04545460e+01, 1.78787875e+00, 1.02727270e+01, + 2.75757580e+01, 8.78787899e+00, 4.27272749e+00, 1.29393940e+01, + 4.21515160e+01, 1.47575760e+01, 8.08939362e+01, 2.83636360e+01, + 3.50000000e+00, 7.06060600e+00, 8.70757599e+01, 4.73333321e+01, + 1.46363640e+01, 1.39090910e+01, 3.30909081e+01, 1.97878780e+01, + 5., 1.45606060e+01, 8.06969681e+01, 3.18181820e+01, + 6.45454550e+00, 7.34848499e+00, 1.17424240e+01, 6.80303049e+00, + 5.56060600e+00, 7., 8., 6.37878799e+00, 6.93939400e+00, + 7.36363649e+00, 1.69696975e+00, 1.24242425e+00, 1.60606062e+00, + 2.10606050e+00, 2.56060600e+00, 2.92424250e+00, 3.65151525e+00, + 2.69696975e+00, 1.33727280e+02, 5.60151520e+01, 1.33333337e+00, + 5.71212101e+00, 1.14575760e+02, 5.56060600e+01, 9.09090900e+00, + 1.10606060e+01, 6.06212120e+01, 2.75909100e+01, 4.46969700e+00, + 9.19696999e+00, 1.34924240e+02, 6.70151520e+01, 5.65151501e+00, + 7.48484850e+00, 2.32575760e+01, 1.26666670e+01, 7.72727251e+00, + 7.25757599e+00, 9.83333302e+00, 9.92424202e+00, 8.13636398e+00, + 7.92424250e+00, 2.33333325e+00, 1.90909088e+00, 2.51515150e+00, + 2.84848475e+00, 2.93939400e+00, 2.87878799e+00, 4.25757599e+00, + 3.21212125e+00, 1.38424240e+02, 6.98030319e+01, 9.24242437e-01, + 2.22727275e+00, 1.05696968e+02, 4.51060600e+01, 1.50000000e+00, + 3.60606050e+00, 7.52424240e+01, 2.82121220e+01, 2.43939400e+00, + 4.51515150e+00, 1.39606064e+02, 8.77272720e+01, 2.15151525e+00, + 4.63636351e+00, 3.49545441e+01, 1.71212120e+01, 6.69696951e+00, + 6.95454550e+00, 1.59242420e+01, 1.32575760e+01, 7.25757599e+00, + 6.13636351e+00, 3.10606050e+00, 2.40909100e+00, 2.39393950e+00, + 2.96969700e+00, 3.03030300e+00, 3.27272725e+00, 3.84848475e+00, + 3.42424250e+00, 1.34863632e+02, 5.62272720e+01, 3.90909100e+00, + 4.42424250e+00, 6.68333359e+01, 2.66818180e+01, 1.90909088e+00, + 7.36363649e+00, 6.55909119e+01, 2.66212120e+01, 6.31818199e+00, + 1.08636360e+01, 1.37424240e+02, 7.83484879e+01, 6.18181801e+00, + 4.06060600e+00, 3.32424240e+01, 1.76515160e+01, 5.16666651e+00, + 5.65151501e+00, 2.37424240e+01, 1.96969700e+01, 8.71212101e+00, + 5.24242401e+00, 4.21212101e+00, 2.63636374e+00, 1.42424238e+00, + 1.81818187e+00, 2.42424250e+00, 2.86363626e+00, 3.10606050e+00, + 2.98484850e+00, 2.18999996e+01, 3.45000005e+00, 1.87500000e+01, + 1.67237503e+02, 6.18375015e+01, 5.68750000e+00, 2.08999996e+01, + 1.44824997e+02, 2.73624992e+01, 7.76249981e+00, 2.30249996e+01, + 1.54687500e+02, 4.98125000e+01, 1.73875008e+01, 2.83875008e+01, + 1.38637497e+02, 1.25625000e+01, 1.26875000e+01, 2.18125000e+01, + 4.46124992e+01, 3.55374985e+01, 2.76749992e+01, 2.17124996e+01, + 3.66500015e+01, 7.69999981e+00, 1.05124998e+01, 1.33500004e+01, + 1.59375000e+01, 1.60750008e+01, 1.74249992e+01, 1.26374998e+01, + 1.02375002e+01, 4.48624992e+01, 9.51249981e+00, 2.21375008e+01, + 1.58149994e+02, 7.25374985e+01, 1.82000008e+01, 2.30499992e+01, + 1.35762497e+02, 2.12999992e+01, 1.88999996e+01, 3.16375008e+01, + 6.66374969e+01, 5.37874985e+01, 3.62999992e+01, 2.45499992e+01, + 5.63875008e+01, 1.57124996e+01, 1.79249992e+01, 2.50125008e+01, + 3.42249985e+01, 3.40999985e+01, 3.50750008e+01, 2.72500000e+01, + 2.20625000e+01, 9.12500000e+00, 1.06374998e+01, 1.54750004e+01, + 1.74874992e+01, 2.11625004e+01, 23., 1.47624998e+01, + 1.10625000e+01, 2.71749992e+01, 1.27875004e+01, 2.12124996e+01, + 6.34749985e+01, 4.87500000e+01, 2.83750000e+01, 2.15499992e+01, + 6.53874969e+01, 1.52624998e+01, 1.66375008e+01, 2.45625000e+01, + 3.67625008e+01, 4.11375008e+01, 3.87249985e+01, 2.95499992e+01, + 2.43250008e+01, 1.52624998e+01, 1.73875008e+01, 2.52374992e+01, + 2.87500000e+01, 3.66749992e+01, 3.80250015e+01, 2.21625004e+01, + 1.49250002e+01, 1.20500002e+01, 1.33750000e+01, 1.55500002e+01, + 1.82875004e+01, 2.09624996e+01, 2.16250000e+01, 1.36250000e+01, + 1.01125002e+01, 1.08999996e+01, 8.60000038e+00, 1.62250004e+01, + 2.64750004e+01, 2.79874992e+01, 2.10625000e+01, 1.55749998e+01, + 1.79750004e+01, 1.10124998e+01, 1.23500004e+01, 1.79375000e+01, + 2.27749996e+01, 3.09624996e+01, 3.21875000e+01, 1.82999992e+01, + 1.16374998e+01, 1.10375004e+01, 1.38625002e+01, 1.78999996e+01, + 2.13500004e+01, 2.84874992e+01, 3.24000015e+01, 1.80625000e+01, + 1.05124998e+01, 8.28750038e+00, 8.83749962e+00, 1.38874998e+01, + 1.87250004e+01, 1.84624996e+01, 1.63374996e+01, 1.37375002e+01, + 1.02375002e+01, 3.18461537e+00, 7.03076935e+00, 1.59076920e+01, + 8.55384636e+00, 3., 4.72307682e+00, 2.45538464e+01, + 3.59999990e+00, 4.98461533e+00, 1.28000002e+01, 1.90153847e+01, + 7.36923075e+00, 5.18461561e+00, 8.87692261e+00, 2.17384624e+01, + 3.23076916e+00, 5.03076935e+00, 1.65384617e+01, 1.86615391e+01, + 5.24615383e+00, 4.18461561e+00, 7.44615364e+00, 7.49230766e+00, + 3.70769238e+00, 4.83076906e+00, 1.44615383e+01, 1.16923075e+01, + 3.29230762e+00, 5.87692308e+00, 9.19999981e+00, 7.16923094e+00, + 2.66153836e+00, 3.52307701e+00, 1.57384615e+01, 9.80461502e+01, + 2.07538452e+01, 2.98461533e+00, 1.67999992e+01, 1.16692307e+02, + 2.82923069e+01, 5.55384636e+00, 4.68461533e+01, 1.07907692e+02, + 8.24615383e+00, 3.21538472e+00, 6.60461502e+01, 1.26461540e+02, + 1.12615385e+01, 7.87692308e+00, 4.50307693e+01, 5.19846153e+01, + 5.41538477e+00, 3.41538453e+00, 1.03907692e+02, 1.16523079e+02, + 8.39999962e+00, 9.06153870e+00, 2.29076920e+01, 1.65076923e+01, + 4.78461552e+00, 3.98461533e+00, 6.10461540e+01, 4.19230766e+01, + 6.78461552e+00, 2.13846159e+00, 1.19692307e+01, 1.04076920e+02, + 2.98769226e+01, 3.83076930e+00, 1.69076920e+01, 3.49846153e+01, + 1.17846155e+01, 3.79999995e+00, 6.40615387e+01, 1.24092308e+02, + 7.93846130e+00, 6.27692318e+00, 3.21230774e+01, 4.27076912e+01, + 7.92307711e+00, 5.41538477e+00, 1.26123077e+02, 1.18846153e+02, + 3.52307701e+00, 5.96923065e+00, 6.93846130e+01, 5.57384605e+01, + 4.50769234e+00, 7.29230785e+00, 1.12753845e+02, 4.55230751e+01, + 2.07692313e+00, 7.33846140e+00, 1.18846153e+02, 4.91230774e+01, + 2.53846145e+00, 2.81538463e+00, 1.38461542e+00, 1.20000005e+00, + 2.12307692e+00, 3.58461547e+00, 2.08153839e+01, 3.02461548e+01, + 1.60769234e+01, 2.96923065e+00, 3.44615388e+00, 3.38461542e+00, + 2.32307696e+00, 1.05230770e+01, 3.98615379e+01, 3.40461540e+01, + 1.20923080e+01, 5.52307701e+00, 2.78615379e+01, 1.04307690e+01, + 2.76923084e+00, 1.30923080e+01, 3.53384628e+01, 2.50307693e+01, + 8.23076916e+00, 1.80769234e+01, 1.10430771e+02, 2.04615383e+01, + 1.67692304e+00, 1.04923077e+01, 3.36615372e+01, 10., + 4.16923094e+00, 6.61224508e+00, 3.26530623e+00, 1.03469391e+01, + 2.26122456e+01, 7.30612230e+00, 5.10204077e+00, 1.71632652e+01, + 2.77346935e+01, 3.13061218e+01, 2.73469377e+00, 7.89795923e+00, + 5.35306129e+01, 1.14285717e+01, 2.75510216e+00, 2.18163261e+01, + 1.38571426e+02, 1.87755108e+01, 8.97959173e-01, 11., + 1.33775513e+02, 2.60204086e+01, 1.02040815e+00, 1.74081631e+01, + 1.34775513e+02, 7.77551031e+00, 1.83673465e+00, 1.27551022e+01, + 1.37061218e+02, 1.72244892e+01, 1.14285719e+00, 7.06122446e+00, + 6.11020393e+01, 2.98367348e+01, 1.75102043e+01, 1.87142849e+01, + 2.01020412e+01, 8.61224461e+00, 1.38775511e+01, 6.16326523e+01, + 7.59183655e+01, 5.28775520e+01, 3.05510197e+01, 4.08163261e+01, + 1.21142860e+02, 30., 9.59183693e+00, 2.78367348e+01, + 1.24285713e+02, 1.63673477e+01, 4.02040815e+00, 2.58163261e+01, + 1.45387756e+02, 4.16122437e+01, 4.91836739e+00, 1.42040815e+01, + 7.50204086e+01, 1.20612249e+01, 3.89795923e+00, 8.67346954e+00, + 5.27755089e+01, 9.77550983e+00, 3.20408154e+00, 1.15306120e+01, + 5.54489784e+01, 2.42040825e+01, 2.41020412e+01, 1.88571434e+01, + 1.54285717e+01, 1.56530609e+01, 1.25102043e+01, 1.39795914e+01, + 1.97755108e+01, 2.79183674e+01, 2.67142849e+01, 3.63673477e+01, + 9.35306091e+01, 7.32857132e+01, 2.65306129e+01, 1.14285717e+01, + 2.59387760e+01, 2.14693871e+01, 4.61224508e+00, 7.93877554e+00, + 5.56122437e+01, 3.63673477e+01, 1.35714283e+01, 1.38979588e+01, + 5.05306129e+01, 8.38775539e+00, 2.93877554e+00, 3.18367338e+00, + 6.16326523e+00, 6.83673477e+00, 6.24489784e+00, 9.79591846e+00, + 2.07346935e+01, 8., 5.08163261e+00, 9.87755108e+00, + 2.92040825e+01, 8.02040863e+00, 3.69387746e+00, 3.18367338e+00, + 6.83673477e+00, 1.03061228e+01, 2.75510216e+00, 7.34693861e+00, + 5.77959175e+01, 3.54489784e+01, 6.75510216e+00, 4.71428585e+00, + 1.68163261e+01, 9.36734676e+00, 2., 2.57142854e+00, + 1.34693880e+01, 1.31632652e+01, 3.71428561e+00, 4.83673477e+00, + 1.81020412e+01, 2.28571439e+00, 1.30612242e+00, 2.14285707e+00, + 3.51020408e+00, 4.42857122e+00, 3.53061223e+00, 3.14285707e+00, + 3.97959185e+00, 1.98536587e+01, 4.04878044e+00, 3.75609756e+00, + 7.78536606e+01, 9.78536606e+01, 4.26829290e+00, 3.46341467e+00, + 1.79512196e+01, 43., 1.30731707e+01, 2.05121956e+01, + 5.89024391e+01, 4.00487823e+01, 1.24878044e+01, 3.34390259e+01, + 6.97073135e+01, 1.40731707e+01, 9.41463375e+00, 1.81219521e+01, + 3.71219521e+01, 3.26341476e+01, 2.89512196e+01, 4.09512177e+01, + 3.10487804e+01, 1.14634142e+01, 1.06829271e+01, 6.07317066e+00, + 4.39024401e+00, 12., 2.48536587e+01, 1.59512196e+01, + 1.07073174e+01, 2.36341457e+01, 9.73170757e+00, 4.21951199e+00, + 2.27560978e+01, 1.16024391e+02, 4.13170738e+01, 2.51219511e+00, + 8.85365868e+00, 5.56341476e+01, 3.29268303e+01, 2.82926826e+01, + 49., 3.82926826e+01, 9.73170757e+00, 7.21951199e+00, 31., + 3.39024391e+01, 1.98048782e+01, 2.22926826e+01, 3.56341476e+01, + 3.15121956e+01, 1.37804880e+01, 1.73414631e+01, 3.39024391e+01, + 4.53414650e+01, 1.34634142e+01, 1.21463413e+01, 2.84146347e+01, + 4.62439041e+01, 2.79024391e+01, 2.09512196e+01, 4.18292694e+01, + 7.87804890e+00, 7.70731688e+00, 2.60975599e+00, 3.24390244e+00, + 9.25365829e+01, 1.27439026e+02, 1.37317076e+01, 2.80487800e+00, + 1.60243912e+01, 2.22682934e+01, 1.36097565e+01, 9.17073154e+00, + 2.12682934e+01, 7.34390259e+01, 2.14634151e+01, 6.68292665e+00, + 2.75609760e+01, 3.06341457e+01, 3.75853653e+01, 2.78536587e+01, + 1.14634142e+01, 9.19512177e+00, 2.57560978e+01, 3.69024391e+01, + 3.01951218e+01, 1.51707315e+01, 31., 5.22439041e+01, + 2.82439022e+01, 7.29268312e+00, 2.25609760e+01, 6.29756088e+01, + 2.12195110e+00, 3.12195110e+00, 2.14634156e+00, 1.82926834e+00, + 1.71707325e+01, 1.15292686e+02, 4.67073174e+01, 4., + 2.12195110e+00, 4.34146357e+00, 4.51219511e+00, 1.70731711e+00, + 5.65853643e+00, 1.27926826e+02, 1.15536583e+02, 3.21951222e+00, + 4.95121956e+00, 8.17073154e+00, 1.31707315e+01, 7., + 2.21951222e+00, 5.07317085e+01, 1.25292686e+02, 2.75365849e+01, + 6.65853643e+00, 5.41463423e+00, 1.55609760e+01, 1.61707325e+01, + 3.21951222e+00, 4.78048801e+00, 1.01414635e+02, 9.49268265e+01, + 1.09393940e+01, 2.22727275e+00, 3.43939400e+00, 1.12575760e+01, + 1.55606060e+01, 6.16666651e+00, 1.78787875e+00, 3.30303025e+00, + 1.22666664e+02, 6.07575750e+00, 3.12121201e+00, 3.22575760e+01, + 7.89242401e+01, 6.12121201e+00, 2.37878799e+00, 5.59242439e+01, + 4.40606079e+01, 6., 2.30303025e+00, 7.04090881e+01, + 1.20712120e+02, 5.18181801e+00, 5.96969700e+00, 2.90606060e+01, + 3.04848480e+01, 9.04545498e+00, 3.81818175e+00, 5.34848499e+00, + 2.83333325e+00, 2.01515150e+00, 1.17727270e+01, 3.38939400e+01, + 2.06060600e+01, 4.25757599e+00, 3.69696975e+00, 1.00909090e+01, + 1.97424240e+01, 10., 2.42424250e+00, 2.56060600e+00, + 1.31409088e+02, 3.05909100e+01, 3.06060600e+00, 1.67121220e+01, + 1.13606064e+02, 2.26212120e+01, 2.40909100e+00, 1.96515160e+01, + 5.35454559e+01, 1.56060610e+01, 3.25757575e+00, 1.82727280e+01, + 1.25469696e+02, 2.78333340e+01, 4.18181801e+00, 2.26666660e+01, + 4.67121201e+01, 23., 4.40909100e+00, 2., 1.18181813e+00, + 1.40909088e+00, 7.12121201e+00, 3.64545441e+01, 9.87878799e+00, + 4.33333349e+00, 2.84848475e+00, 7.86363649e+00, 2.09696960e+01, + 1.25151520e+01, 3.21212125e+00, 1.56060600e+00, 1.27606064e+02, + 8.79090881e+01, 3.37878799e+00, 7.37878799e+00, 8.24696960e+01, + 3.99090919e+01, 3.50000000e+00, 4.65151501e+00, 6.48939362e+01, + 3.92121201e+01, 5.19696951e+00, 4.33333349e+00, 1.25424240e+02, + 9.91363602e+01, 2.95454550e+00, 1.06818180e+01, 4.24393921e+01, + 3.24545441e+01, 9.53030300e+00, 2.75757575e+00, 4.21212101e+00, + 5.50000000e+00, 2.09090900e+00, 1.71515160e+01, 1.33333337e+00, + 1.36363637e+00, 1.51515150e+00, 4.06060600e+00, 1.75303040e+01, + 1.37272730e+01, 3.90909100e+00, 1.27272725e+00, 7.58636398e+01, + 8.48787842e+01, 2.83333325e+00, 4.98484850e+00, 2.79393940e+01, + 2.45000000e+01, 4.56060600e+00, 2.40909100e+00, 6.49696960e+01, + 1.00742424e+02, 3.78787875e+00, 2.07575750e+00, 8.40454559e+01, + 1.27318184e+02, 4.15151501e+00, 2.90909100e+00, 2.23939400e+01, + 2.56969700e+01, 8.98484802e+00, 2.13636374e+00, 1.39242420e+01, + 5.86515160e+01, 4.36363649e+00, 5.46969700e+00, 5.91379309e+00, + 3.50172424e+01, 1.46448273e+02, 9.83620682e+01, 4.37931013e+00, + 1.99137936e+01, 1.33517242e+02, 60., 5.77586222e+00, + 3.44482765e+01, 1.47327591e+02, 9.92413788e+01, 6.24137926e+00, + 2.21896553e+01, 1.36620697e+02, 8.42931061e+01, 1.01379309e+01, + 8.77586174e+00, 1.14431038e+02, 9.18965530e+01, 9.75862026e+00, + 1.28793106e+01, 1.23724136e+02, 1.07482758e+02, 8.89655209e+00, + 4.74137926e+00, 2.51896553e+01, 2.69827595e+01, 6.96551704e+00, + 6.48275852e+00, 5.28965530e+01, 6.01206894e+01, 1.25000000e+01, + 9.70689678e+00, 2.75344830e+01, 1.96724129e+01, 1.14827585e+01, + 1.87758617e+01, 1.06758621e+02, 5.90517235e+01, 1.20344830e+01, + 12., 2.45344830e+01, 2.13620682e+01, 1.79655170e+01, + 2.75344830e+01, 9.99137955e+01, 5.25862083e+01, 1.43620691e+01, + 1.67241383e+01, 2.18965511e+01, 2.21724129e+01, 2.18103447e+01, + 2.52241383e+01, 5.41379318e+01, 3.85689659e+01, 9.98275852e+00, + 1.02413797e+01, 1.14655170e+01, 1.25517244e+01, 1.27931032e+01, + 1.04137936e+01, 1.60862064e+01, 1.64827595e+01, 1.26724138e+01, + 1.14655170e+01, 1.32931032e+01, 1.54137936e+01, 1.38448277e+01, + 1.25172415e+01, 1.69137936e+01, 1.67413788e+01, 1.19482756e+01, + 1.34827585e+01, 1.98793106e+01, 2.26034489e+01, 2.12758617e+01, + 1.82758617e+01, 1.71896553e+01, 1.45000000e+01, 1.29827585e+01, + 1.33103447e+01, 1.65689659e+01, 2.11724129e+01, 2.18275871e+01, + 1.86724129e+01, 1.81896553e+01, 1.56379309e+01, 1.01206894e+01, + 7.50000000e+00, 6.72413778e+00, 9.84482765e+00, 1.19482756e+01, + 1.04655170e+01, 1.12241383e+01, 1.17413797e+01, 4.32758617e+00, + 4.08620691e+00, 3.79310346e+00, 4.48275852e+00, 4.96551704e+00, + 4.12068987e+00, 3.05172420e+00, 3.77586198e+00, 4.24137926e+00, + 4., 4.39655161e+00, 5.84482765e+00, 7.24137926e+00, 6., + 4.58620691e+00, 4.36206913e+00, 4.34482765e+00, 3.51724148e+00, + 3.74137926e+00, 6.03448296e+00, 7.06896544e+00, 5.22413778e+00, + 4.84482765e+00, 5.17241383e+00, 2.74137926e+00, 2.93103456e+00, + 2.39655161e+00, 3.01724148e+00, 4.53448296e+00, 3.32758617e+00, + 2.37931037e+00, 2.36206889e+00, 7.24489784e+00, 2.48979592e+00, + 8.65918350e+01, 1.07795921e+02, 2.85714293e+00, 1.16326535e+00, + 3.60408173e+01, 7.47346954e+01, 1.31428576e+01, 8.75510216e+00, + 1.13040817e+02, 7.92653046e+01, 8.97959173e-01, 2.89795923e+00, + 6.39183655e+01, 7.71428604e+01, 1.27142859e+01, 2.22040825e+01, + 1.00591835e+02, 2.08775501e+01, 8.16326559e-01, 1.21632652e+01, + 8.18163300e+01, 5.70612259e+01, 5.89795923e+00, 4.59183655e+01, + 7.30204086e+01, 3.40816331e+00, 2.12244892e+00, 3.94285698e+01, + 7.39183655e+01, 2.08775501e+01, 3.85714302e+01, 4.63265324e+00, + 2.33877544e+01, 7.52857132e+01, 6.30612230e+00, 2.24489793e-01, + 1.02244902e+01, 9.15510178e+01, 5.31020393e+01, 6., + 1.06326532e+01, 1.43469391e+01, 3.46938789e-01, 2.28571439e+00, + 3.86938782e+01, 1.10897957e+02, 3.09795914e+01, 6.93877554e+00, + 3.93877554e+00, 1.06122446e+00, 8.77551019e-01, 1.18979588e+01, + 7.89795914e+01, 9.48775482e+01, 9.46938801e+00, 6.97959185e+00, + 4.71428585e+00, 1.73469388e+00, 7.32653046e+00, 4.58571434e+01, + 7.31632690e+01, 3.33061218e+01, 8.15102005e+01, 7.48979568e+00, + 2.06122446e+00, 1.69591827e+01, 6.57142878e+00, 1.22448981e-01, + 3.34693885e+00, 7.97755127e+01, 9.02653046e+01, 1.69183674e+01, + 4.51020432e+00, 2.24489784e+00, 1.22448981e+00, 1.18367350e+00, + 1.22244902e+01, 9.43877563e+01, 4.69591827e+01, 2.91632652e+01, + 1.51836739e+01, 8.10204124e+00, 8.36734676e+00, 1.20204086e+01, + 3.37755089e+01, 5.56122437e+01, 2.00612240e+01, 2.25306129e+01, + 1.81428566e+01, 1.71428566e+01, 2.23061218e+01, 2.91020412e+01, + 3.14693871e+01, 1.90816326e+01, 8.85102005e+01, 1.58163261e+01, + 1.83673465e+00, 3.87755108e+00, 6.71428585e+00, 9.18367326e-01, + 1.75510204e+00, 3.24081650e+01, 7.82448959e+01, 3.11020412e+01, + 7.69387770e+00, 2.38775516e+00, 2.30612254e+00, 1.87755108e+00, + 4.91836739e+00, 3.72653046e+01, 2.98163261e+01, 2.62653065e+01, + 1.65102043e+01, 10., 1.09183674e+01, 7.38775492e+00, + 7.59183693e+00, 1.85102043e+01, 1.30612249e+01, 1.73265305e+01, + 2.02448978e+01, 1.75510197e+01, 1.56122446e+01, 1.03061228e+01, + 7.73469400e+00, 1.27755098e+01, 3.82000008e+01, 1.95799999e+01, + 2.11000004e+01, 2.74200001e+01, 1.80200005e+01, 5.38000011e+00, + 1.38000002e+01, 5.07799988e+01, 7.05599976e+01, 1.49399996e+01, + 2.24799995e+01, 5.45600014e+01, 3.84599991e+01, 1.16599998e+01, + 2.25400009e+01, 1.10879997e+02, 7.23000031e+01, 2.47800007e+01, + 26., 4.28600006e+01, 4.15200005e+01, 1.83600006e+01, + 2.50400009e+01, 9.58399963e+01, 5.00800018e+01, 3.39199982e+01, + 1.55000000e+01, 1.17200003e+01, 1.30400000e+01, 7.84000015e+00, + 1.29799995e+01, 4.00999985e+01, 1.61399994e+01, 1.17399998e+01, + 1.99799995e+01, 2.01200008e+01, 7.51999998e+00, 1.75599995e+01, + 1.03639999e+02, 9.71399994e+01, 3.42799988e+01, 1.76800003e+01, + 3.34799995e+01, 6.16800003e+01, 2.66399994e+01, 2.01399994e+01, + 8.24000015e+01, 1.21400002e+02, 3.93400002e+01, 2.88999996e+01, + 2.61599998e+01, 5.08199997e+01, 3.09400005e+01, 2.46399994e+01, + 5.70600014e+01, 9.58799973e+01, 4.76599998e+01, 2.23600006e+01, + 7.71999979e+00, 1.00799999e+01, 8.57999992e+00, 1.01199999e+01, + 3.04200001e+01, 6.10999985e+01, 2.79999995e+00, 4.34000015e+00, + 1.64799995e+01, 1.29799995e+01, 1.42200003e+01, 5.30800018e+01, + 1.04739998e+02, 4.90800018e+01, 1.20600004e+01, 1.07399998e+01, + 15., 2.39599991e+01, 1.57200003e+01, 53., 9.86999969e+01, + 5.43600006e+01, 2.79400005e+01, 1.89200001e+01, 1.01000004e+01, + 1.62000008e+01, 1.26800003e+01, 3.24399986e+01, 7.97600021e+01, + 7.03000031e+01, 3.39000015e+01, 1.07600002e+01, 2.68000007e+00, + 2.68000007e+00, 3.40000010e+00, 1.14399996e+01, 4.24599991e+01, + 7.01399994e+01, 1.38000000e+00, 1.48000002e+00, 1.94000006e+00, + 1.44000006e+00, 6.84000015e+00, 3.85800018e+01, 3.65999985e+01, + 6.17999983e+00, 4.84000015e+00, 1.79999995e+00, 1.24000001e+00, + 1.53999996e+00, 4.15999985e+00, 3.25400009e+01, 5.59000015e+01, + 2.16800003e+01, 9.68000031e+00, 2.74000001e+00, 1.01999998e+00, + 1.38000000e+00, 3.31999993e+00, 1.95200005e+01, 5.58800011e+01, + 3.73600006e+01, 1.52399998e+01, 3.38000011e+00, 1.17999995e+00, + 8.79999995e-01, 1.25999999e+00, 7.23999977e+00, 2.75200005e+01, + 3.50800018e+01, 1.49090910e+01, 2.75454540e+01, 2.23090916e+01, + 1.78181820e+01, 2.67272720e+01, 2.88363628e+01, 1.32363634e+01, + 8.72727299e+00, 22., 1.71818180e+01, 2.28363628e+01, 30., + 2.75454540e+01, 1.39454546e+01, 8.92727280e+00, 1.72727280e+01, + 4.03272743e+01, 9.80000019e+00, 1.12181816e+01, 2.42909088e+01, + 2.15454540e+01, 7.32727289e+00, 8.47272682e+00, 5.21454544e+01, + 1.27181816e+02, 5.32727289e+00, 2.83636355e+00, 5.36363649e+00, + 6.61818171e+00, 3.32727265e+00, 4.90909100e+00, 1.08036362e+02, + 7.36363649e+00, 1.79818172e+01, 2.60909100e+01, 1.71090908e+01, + 1.17454548e+01, 6.13454552e+01, 83., 1.11818180e+01, + 1.01999998e+01, 8.27272701e+00, 1.40727272e+01, 1.90909100e+01, + 1.18181820e+01, 1.13090906e+01, 9.65272751e+01, 6.87090912e+01, + 2.75272732e+01, 2.92727280e+00, 3.94545460e+00, 8.39999962e+00, + 4.49090910e+00, 6.01818180e+00, 8.24727249e+01, 1.44581818e+02, + 5.57636375e+01, 5.56363630e+00, 4.47272730e+00, 1.05272732e+01, + 7.52727270e+00, 7.25454569e+00, 2.50363636e+01, 1.40199997e+02, + 4.27272749e+00, 4.56363630e+00, 7.18181801e+00, 2.98181820e+00, + 3.01818180e+00, 7.56363602e+01, 1.40345459e+02, 2.33636360e+01, + 7.38181829e+00, 3.79999995e+00, 4., 3.65454555e+00, + 3.12727284e+00, 1.56000004e+01, 1.43836365e+02, 1.15109093e+02, + 1.27818184e+01, 3.65454555e+00, 4.09090900e+00, 8.29090881e+00, + 5.30909109e+00, 1.10363636e+01, 1.08036362e+02, 1.34945450e+02, + 1.51999998e+01, 5.59999990e+00, 4.03636360e+00, 7.67272711e+00, + 6.32727289e+00, 1.18545456e+01, 3.29636345e+01, 5.86727257e+01, + 5.83636379e+00, 1.78181815e+00, 2.32727265e+00, 1.18181813e+00, + 4.07272720e+00, 1.52909088e+01, 3.86363640e+01, 2.11272736e+01, + 1.02909088e+01, 3.07272720e+00, 2.10909081e+00, 2.30909085e+00, + 5.05454540e+00, 13., 3.76363640e+01, 3.10181828e+01, + 1.07818184e+01, 4.07272720e+00, 3.21818185e+00, 3.78181815e+00, + 4.90909100e+00, 1.03999996e+01, 2.48545456e+01, 2.65818176e+01, + 9.49090862e+00, 5.03636360e+00, 3.94545460e+00, 4.12727261e+00, + 3.98181820e+00, 6.72727251e+00, 1.55090914e+01, 1.90363636e+01, + 5.30612230e+00, 5.71428585e+00, 7.95918369e+00, 1.51428576e+01, + 4.17959175e+01, 3.45102043e+01, 1.01428576e+01, 3.30612254e+00, + 2.46938782e+01, 1.14285717e+01, 8.06122494e+00, 2.45918369e+01, + 1.08346939e+02, 4.28979607e+01, 7.97959185e+00, 9.32653046e+00, + 4.36530609e+01, 1.83877544e+01, 9.85714245e+00, 3.49387741e+01, + 1.11571426e+02, 2.43877544e+01, 5.08163261e+00, 2.15102043e+01, + 3.05918369e+01, 1.65102043e+01, 2.14897957e+01, 4.14489784e+01, + 3.55918350e+01, 1.22653065e+01, 1.33877554e+01, 3.08775501e+01, + 2.51020408e+00, 3.40816331e+00, 4.12244892e+00, 8.67346954e+00, + 3.94693871e+01, 6.89591827e+01, 2.46530609e+01, 3.73469377e+00, + 1.84897957e+01, 1.19183674e+01, 4.20408154e+00, 7.42857122e+00, + 1.00979591e+02, 1.13428574e+02, 2.62040825e+01, 7.71428585e+00, + 2.52653065e+01, 2.45510197e+01, 9.75510216e+00, 9.26530647e+00, + 1.15795921e+02, 1.24122452e+02, 1.18775511e+01, 5.75510216e+00, + 1.92244892e+01, 2.65918369e+01, 2.55102043e+01, 2.25510197e+01, + 3.03673477e+01, 3.74693871e+01, 1.51020412e+01, 8.51020432e+00, + 1.97959185e+00, 2.02040815e+00, 3.48979592e+00, 5.30612230e+00, + 2.44489803e+01, 6.12653046e+01, 3.09591827e+01, 5.63265324e+00, + 4.87755108e+00, 5.38775492e+00, 3.44897962e+00, 3.55102038e+00, + 3.26122437e+01, 1.10428574e+02, 5.61224480e+01, 11., + 7.22448969e+00, 1.08163261e+01, 3.63265300e+00, 1.61224484e+00, + 4.26326523e+01, 1.35183670e+02, 7.46326523e+01, 5.81632662e+00, + 4.42857122e+00, 1.00612249e+01, 1.15918369e+01, 5.55102062e+00, + 1.06734695e+01, 1.22265305e+02, 1.00244896e+02, 5.26530600e+00, + 3.14285707e+00, 2.91836739e+00, 3.30612254e+00, 4.22448969e+00, + 1.16530609e+01, 2.88979588e+01, 2.02448978e+01, 6.26530600e+00, + 3.87755108e+00, 3.69387746e+00, 3.38775516e+00, 3.87755108e+00, + 1.23877554e+01, 5.04081650e+01, 3.85306129e+01, 8.87755108e+00, + 3.93877554e+00, 3.30612254e+00, 2.22448969e+00, 2.85714293e+00, + 1.03469391e+01, 8.13265305e+01, 6.13469391e+01, 1.01632652e+01, + 2.89795923e+00, 3.30612254e+00, 2.18367338e+00, 1.46938777e+00, + 4.30612230e+00, 9.20816345e+01, 1.09224487e+02, 8.89795876e+00, + 4.23793106e+01, 3.06896544e+00, 1.10344827e+00, 1.18275862e+01, + 2.87931042e+01, 8.68965530e+00, 1.55172420e+00, 2.91724129e+01, + 1.11206894e+02, 1.00689659e+01, 6.62068987e+00, 3.31724129e+01, + 4.43103447e+01, 1.08275862e+01, 2.05862064e+01, 1.18931038e+02, + 2.79310341e+01, 2.01724129e+01, 2.39310341e+01, 3.29655190e+01, + 2.83793106e+01, 2.77931042e+01, 4.24137917e+01, 55., + 1.27586203e+01, 3.61724129e+01, 1.25862064e+01, 5.37931013e+00, + 4.19310341e+01, 9.45517273e+01, 3.89655190e+01, 8.48275852e+00, + 8.07931061e+01, 2.26551723e+01, 7.93103456e-01, 7.34482765e+00, + 4.80689659e+01, 1.72068958e+01, 1.17241383e+00, 1.06896553e+01, + 1.32448273e+02, 4.57241364e+01, 5.41379309e+00, 2.65862064e+01, + 6.68275833e+01, 2.50689659e+01, 3.75862074e+00, 4.58275871e+01, + 2.43103447e+01, 1.56896553e+01, 1.05172415e+01, 1.77586212e+01, + 2.90689659e+01, 1.66206894e+01, 1.20689659e+01, 2.04827595e+01, + 1.72068958e+01, 1.81379318e+01, 7.65517235e+00, 8.51724148e+00, + 4.72068977e+01, 3.50344810e+01, 9.34482765e+00, 1.10344830e+01, + 61., 2.27586212e+01, 9.31034505e-01, 3.93103456e+00, + 4.10344810e+01, 2.98965511e+01, 2.62068963e+00, 4.75862074e+00, + 1.36275864e+02, 8.76896515e+01, 4.34482765e+00, 1.30689659e+01, + 6.16896553e+01, 4.42068977e+01, 5.89655161e+00, 1.54482756e+01, + 3.47241364e+01, 2.93793106e+01, 1.14482756e+01, 1.14137936e+01, + 2.70344830e+01, 3.00344830e+01, 1.37931032e+01, 1.17241383e+01, + 1.98620682e+01, 1.28965521e+01, 9.31034470e+00, 1.47586203e+01, + 2.95172405e+01, 1.54827585e+01, 1.14482756e+01, 1.85172405e+01, + 1.93448277e+01, 9.82758617e+00, 1.37931037e+00, 3.03448272e+00, + 1.76551723e+01, 1.97586212e+01, 4.31034470e+00, 2.20689654e+00, + 1.11413795e+02, 1.22310349e+02, 1.26896553e+01, 2.82758617e+00, + 3.18965511e+01, 5.13793106e+01, 9.48275852e+00, 5.27586222e+00, + 3.48620682e+01, 8.23448257e+01, 6.20689659e+01, 1.01724138e+01, + 1.63448277e+01, 5.95862083e+01, 2.94827595e+01, 9.58620644e+00, + 1.56551723e+01, 1.11034479e+01, 4.04482765e+01, 6.31379318e+01, + 2.13793106e+01, 13., 1.94137936e+01, 2.65862064e+01, + 9.50000000e+00, 7.57142878e+00, 1.09642859e+01, 1.39285717e+01, + 2.28928566e+01, 2.71071434e+01, 2.96428566e+01, 1.65357151e+01, + 2.60357151e+01, 1.20714283e+01, 9.85714245e+00, 2.28214283e+01, + 6.66071396e+01, 8.21785736e+01, 6.78214264e+01, 4.36785698e+01, + 4.03571415e+00, 3.35714293e+00, 3.21428561e+00, 3.01785717e+01, + 9.94285736e+01, 1.03035713e+02, 4.71071434e+01, 1.03214283e+01, + 1.19285717e+01, 5.60714293e+00, 1.89285719e+00, 7.85714293e+00, + 3.54285698e+01, 3.11785717e+01, 2.95714283e+01, 9.75000000e+00, + 1.81071434e+01, 1.53214283e+01, 3.26428566e+01, 2.55000000e+01, + 1.76428566e+01, 1.68571434e+01, 1.76785717e+01, 1.52500000e+01, + 5.00714302e+01, 4.05000000e+01, 6.04642868e+01, 1.01107140e+02, + 7.58928604e+01, 4.02857132e+01, 3.63928566e+01, 4.26428566e+01, + 5.03571415e+00, 6.17857122e+00, 2.19642849e+01, 1.07357140e+02, + 1.13892860e+02, 5.65000000e+01, 2.00357151e+01, 7.46428585e+00, + 1.07142859e+01, 3.89285707e+00, 5.03571415e+00, 2.72857151e+01, + 3.97142868e+01, 2.18928566e+01, 1.29642859e+01, 5.82142878e+00, + 3., 2.23214283e+01, 9.74285736e+01, 72., 1.12500000e+01, + 3.07142854e+00, 4.03571415e+00, 2.28571439e+00, 6.57142878e+00, + 1.98571434e+01, 9.01428604e+01, 1.18678574e+02, 2.68928566e+01, + 1.50000000e+00, 2.67857146e+00, 1.89285719e+00, 8.57142866e-01, + 3.96428561e+00, 4.66071434e+01, 1.08892860e+02, 3.91785698e+01, + 3.39285707e+00, 1.53571427e+00, 1.82142854e+00, 2.44285717e+01, + 4.67857122e+00, 1.69642849e+01, 3.34285698e+01, 1.83928566e+01, + 4.82142878e+00, 1.92857146e+00, 3.11428566e+01, 6.42857134e-01, + 1.26428576e+01, 8.38571396e+01, 5.51071434e+01, 1.82142854e+00, + 1.82142854e+00, 4.85714293e+00, 1.14285719e+00, 1.25000000e+00, + 7.21428585e+00, 6.11785698e+01, 7.67142868e+01, 7.39285707e+00, + 5.71428597e-01, 5.25000000e+00, 2.89285707e+00, 2.32142854e+00, + 5.64285707e+00, 3.94642868e+01, 4.11428566e+01, 7.07142878e+00, + 5.35714269e-01, 1.31428576e+01, 3.22500000e+01, 2.92142849e+01, + 3.46428561e+00, 1.56428576e+01, 3.97142868e+01, 8.10714245e+00, + 8.57142866e-01, 1.58928576e+01, 1.05107140e+02, 5.79661036e+00, + 6.89830494e+00, 1.66101694e+00, 8.50847435e+00, 3.15762711e+01, + 2.18813553e+01, 1.06949148e+01, 4.84745741e+00, 1.18067795e+02, + 9.85084763e+01, 2.27118635e+00, 5.20338964e+00, 4.53898315e+01, + 3.45084763e+01, 7.11864424e+00, 5.23728800e+00, 6.95762711e+01, + 3.75084763e+01, 2.30508471e+00, 3.06779671e+00, 1.11966103e+02, + 7.52542343e+01, 5.74576283e+00, 5.16949129e+00, 1.29491529e+01, + 7.52542353e+00, 2.35593224e+00, 1.33898306e+00, 1.20338984e+01, + 5.18644047e+00, 5.91525412e+00, 5.01694918e+00, 2.55932212e+00, + 1.52542377e+00, 2.74576283e+00, 2.31864414e+01, 4.55762711e+01, + 2.42542381e+01, 8.22033882e+00, 4.35593224e+00, 1.28322037e+02, + 3.80677948e+01, 2.44067788e+00, 1.47966099e+01, 4.92542381e+01, + 1.88135586e+01, 5.67796612e+00, 1.45593224e+01, 1.19322037e+02, + 2.81694908e+01, 1.83050847e+00, 1.32033901e+01, 1.30864410e+02, + 4.30169487e+01, 3.66101694e+00, 1.46610174e+01, 1.61016941e+01, + 8.10169506e+00, 2.06779671e+00, 3.35593224e+00, 2.95593224e+01, + 5.67796612e+00, 4.22033882e+00, 7.49152565e+00, 2., + 1.52542377e+00, 7.38983059e+00, 3.48813553e+01, 4.00677948e+01, + 1.74576263e+01, 5.94915247e+00, 4.18644047e+00, 1.26627121e+02, + 8.42372894e+00, 3.83050847e+00, 2.71525421e+01, 4.70508461e+01, + 9.55932236e+00, 5.45762730e+00, 6.52372894e+01, 1.13847458e+02, + 1.07966099e+01, 2.88135600e+00, 5.89830513e+01, 1.31949158e+02, + 8.67796612e+00, 3.10169482e+00, 4.35254250e+01, 1.59830513e+01, + 6.69491529e+00, 1.84745765e+00, 6.22033882e+00, 2.26440678e+01, + 4.27118635e+00, 4.33898306e+00, 9.50847435e+00, 6.71186447e+00, + 1.18644071e+00, 1.06271191e+01, 2.73898296e+01, 2.16779652e+01, + 8.79660988e+00, 5.94915247e+00, 2.17796612e+01, 1.10118645e+02, + 2.30508471e+00, 3.52542377e+00, 5.56779671e+01, 4.49830513e+01, + 4.10169506e+00, 5.01694918e+00, 1.21169495e+02, 4.62881355e+01, + 4.89830494e+00, 2.81355929e+00, 8.73220367e+01, 9.94237289e+01, + 2.84745765e+00, 3.18644071e+00, 4.10677948e+01, 1.23728809e+01, + 5.06779671e+00, 1.55932200e+00, 2.62711859e+00, 4.52542353e+00, + 2.84745765e+00, 3.50847459e+00, 1.14406776e+01, 18., + 1.53623188e+00, 7.97101450e+00, 7.53913040e+01, 7.63768101e+00, + 1.68115938e+00, 2.34202900e+01, 1.61304352e+02, 1.06956520e+01, + 1.60869563e+00, 2.38840580e+01, 1.59826080e+02, 1.75507240e+01, + 3.79710150e+00, 1.81884060e+01, 1.27942032e+02, 1.01159420e+01, + 4.50724649e+00, 3.29130440e+01, 1.55420288e+02, 2.00724640e+01, + 6.33333349e+00, 1.46086960e+01, 6.72028961e+01, 6.88405800e+00, + 6.28985500e+00, 1.66376820e+01, 2.82028980e+01, 8.34782600e+00, + 5.14492750e+00, 1.01739130e+01, 2.47246380e+01, 1.44347830e+01, + 4.78260851e+00, 2.68405800e+01, 1.60826080e+02, 1.72463760e+01, + 1.94202900e+00, 1.29855070e+01, 1.24753624e+02, 1.22463770e+01, + 5.97101450e+00, 2.34927540e+01, 1.63028992e+02, 2.12173920e+01, + 4.23188400e+00, 1.62753620e+01, 9.68115921e+01, 1.19130430e+01, + 1.01594200e+01, 1.65217400e+01, 4.27246361e+01, 1.64637680e+01, + 9.05797100e+00, 1.53623190e+01, 4.87971001e+01, 6.95652151e+00, + 7.86956501e+00, 9.44927502e+00, 1.01449280e+01, 8.68115902e+00, + 7.23188400e+00, 8.31884098e+00, 1.16956520e+01, 1.28985510e+01, + 7.13043499e+00, 2.10724640e+01, 1.46623184e+02, 2.77391300e+01, + 6.20289850e+00, 13., 6.73478241e+01, 1.33768120e+01, + 1.33333330e+01, 1.71159420e+01, 4.40289841e+01, 18., + 9.18840599e+00, 1.24782610e+01, 4.47536240e+01, 1.08985510e+01, + 1.12318840e+01, 1.39565220e+01, 1.44347830e+01, 1.20579710e+01, + 9.50724602e+00, 9.65217400e+00, 1.48985510e+01, 6.23188400e+00, + 7.21739149e+00, 9.39130402e+00, 9.68115902e+00, 7.71014500e+00, + 6.66666651e+00, 5.75362301e+00, 6.39130449e+00, 8.42028999e+00, + 5.18840599e+00, 8.50724602e+00, 3.07681160e+01, 1.52318840e+01, + 6.97101450e+00, 8., 2.32463760e+01, 8.60869598e+00, + 7.27536249e+00, 7.50724649e+00, 9.84057999e+00, 9.33333302e+00, + 8.43478298e+00, 9.73913002e+00, 1.35652170e+01, 7.07246399e+00, + 6.33333349e+00, 8.40579700e+00, 9.63768101e+00, 9.26086998e+00, + 9.04347801e+00, 7.11594200e+00, 7.14492750e+00, 5.17391300e+00, + 5.26086950e+00, 5.62318850e+00, 5.92753601e+00, 5.76811600e+00, + 5.30434799e+00, 4.47826099e+00, 4.73913050e+00, 2.46233768e+01, + 8.50649357e+00, 6.68831158e+00, 2.60129871e+01, 2.19480515e+01, + 7.02597380e+00, 6.22077942e+00, 2.63766232e+01, 1.61610382e+02, + 1.07532463e+01, 2.12987018e+00, 3.66233778e+00, 3.37662339e+00, + 2.02597404e+00, 3., 1.41324677e+02, 1.17376625e+02, 12., + 5.33766222e+00, 4.67532444e+00, 6.18181801e+00, 6.80519485e+00, + 1.03766232e+01, 7.53246765e+01, 9.24675369e+00, 4.25974035e+00, + 3.01298690e+00, 2.23376632e+00, 2.06493497e+00, 2.76623368e+00, + 4.18181801e+00, 8.45454502e+00, 4.28311691e+01, 3.92207789e+00, + 6.03896093e+00, 16., 1.13896103e+01, 4.41558456e+00, + 3.56753235e+01, 1.52818176e+02, 1.50766235e+02, 6.29870129e+00, + 3.41558433e+00, 4.36363649e+00, 5.33766222e+00, 3.68831158e+00, + 1.54415588e+01, 1.64935059e+02, 5.68181801e+01, 1.28961039e+01, + 8.98701286e+00, 1.01038961e+01, 1.18701296e+01, 9.94805241e+00, + 1.65974026e+01, 6.74935074e+01, 8.40259743e+00, 4.22077942e+00, + 3.97402596e+00, 3.22077918e+00, 3.02597404e+00, 3.57142854e+00, + 5.11688328e+00, 9.80519485e+00, 2.73896103e+01, 3.61038971e+00, + 6.41558456e+00, 7.44155836e+00, 2.90909100e+00, 2.75324678e+00, + 9.75584412e+01, 1.64935059e+02, 5.69610405e+01, 1.06493511e+01, + 8., 9.10389614e+00, 9.94805241e+00, 1.00519476e+01, + 2.72337666e+01, 1.48792206e+02, 2.63506489e+01, 1.27272730e+01, + 9.49350643e+00, 1.02337666e+01, 1.28441563e+01, 1.27142859e+01, + 1.75844154e+01, 3.13766232e+01, 6.02597380e+00, 3.92207789e+00, + 3.71428561e+00, 3.28571439e+00, 3.24675322e+00, 3.70129871e+00, + 5.55844164e+00, 7.11688328e+00, 1.71038952e+01, 5.10389614e+00, + 4.40259743e+00, 6.42857122e+00, 5.16883135e+00, 6.42857122e+00, + 3.41428566e+01, 7.93766251e+01, 2.22077923e+01, 8.33766270e+00, + 6.19480515e+00, 8.64935112e+00, 1.01168833e+01, 1.11298704e+01, + 1.84155846e+01, 3.62077904e+01, 1.54415588e+01, 7.96103907e+00, + 7.20779228e+00, 7.74025965e+00, 9.38961029e+00, 9.66233730e+00, + 1.37922077e+01, 1.84025974e+01, 3.74025965e+00, 2.42857146e+00, + 2.93506503e+00, 2.90909100e+00, 2.66233778e+00, 3.20779228e+00, + 4.79220772e+00, 5.45454550e+00, 2.04545450e+00, 2.65681820e+01, + 1.17113640e+02, 2.15909100e+01, 1.72727275e+00, 3.40909100e+00, + 6.86363649e+00, 3.45454550e+00, 3.68181825e+00, 1.27909088e+02, + 1.19909088e+02, 4.15909100e+00, 3.31818175e+00, 1.07500000e+01, + 9.31818199e+00, 2.04545450e+00, 2.20909100e+01, 1.23886360e+02, + 4.35227280e+01, 6.88636351e+00, 6.54545450e+00, 1.71818180e+01, + 1.33181820e+01, 6.52272749e+00, 2.13409100e+01, 3.22272720e+01, + 1.08636360e+01, 7.79545450e+00, 5.11363649e+00, 8.59090900e+00, + 1.08636360e+01, 11., 5.40909100e+00, 1.62954540e+01, + 4.02045441e+01, 1.27272730e+01, 6.77272749e+00, 1.97272720e+01, + 2.88636360e+01, 1.01818180e+01, 7.79545450e+00, 7.57727280e+01, + 4.26136360e+01, 5.50000000e+00, 7.52272749e+00, 2.34545460e+01, + 1.61136360e+01, 3.84090900e+00, 8.83863602e+01, 1.34727280e+02, + 1.99545460e+01, 3.84090900e+00, 7.95454550e+00, 1.33409090e+01, + 4.40909100e+00, 2.88636374e+00, 8.36136398e+01, 9.80909119e+01, + 8.50000000e+00, 6.09090900e+00, 8.79545498e+00, 1.16818180e+01, + 6.38636351e+00, 1.41818180e+01, 1.91136360e+01, 2.21818180e+01, + 2.85000000e+01, 1.83181820e+01, 1.97045460e+01, 3.17500000e+01, + 3.17500000e+01, 1.84772720e+01, 2.25909100e+01, 3.77727280e+01, + 2.18636360e+01, 1.65000000e+01, 3.65454559e+01, 5.12954559e+01, + 2.25454540e+01, 1.05681820e+01, 1.18863640e+02, 7.02954559e+01, + 5.40909100e+00, 4.75000000e+00, 1.14318180e+01, 1.28409090e+01, + 4.63636351e+00, 9.40909100e+00, 1.33704544e+02, 6.92954559e+01, + 3.56818175e+00, 4.02272749e+00, 9.52272701e+00, 6.40909100e+00, + 4.52272749e+00, 1.77045460e+01, 1.27272730e+01, 1.29772730e+01, + 1.58863640e+01, 1.72500000e+01, 2.00227280e+01, 1.95909100e+01, + 2.00227280e+01, 1.45681820e+01, 2.55909100e+01, 1.38863640e+01, + 1.40681820e+01, 2.19090900e+01, 3.59318199e+01, 2.04318180e+01, + 1.31590910e+01, 1.95227280e+01, 1.09295456e+02, 7.79545450e+00, + 3.63636374e+00, 6.93181801e+00, 1.45454550e+01, 9.15909100e+00, + 3.50000000e+00, 6.80454559e+01, 126., 1.01136360e+01, + 2.04545450e+00, 2.79545450e+00, 5.15909100e+00, 3.63636374e+00, + 5.84090900e+00, 6.40454559e+01, 1.28372097e+01, 1.20697670e+01, + 4.79069757e+00, 3.37209296e+00, 3.97674417e+00, 6.18604660e+00, + 8.48837185e+00, 10., 1.12093019e+01, 8.37209320e+00, + 6.27906990e+00, 1.46976748e+01, 1.38372097e+01, 6.95348835e+00, + 8.46511650e+00, 1.45348835e+01, 9.65116310e+00, 2.58139539e+00, + 3.69767451e+00, 6.34883728e+01, 6.09534874e+01, 5.51162767e+00, + 3.18604660e+00, 1.43953485e+01, 4.53720932e+01, 1.18604648e+00, + 1.25581396e+00, 5.69302330e+01, 6.20232544e+01, 2.23255825e+00, + 1.27906978e+00, 4.01395340e+01, 9.20930195e+00, 1.17906981e+01, + 4.35116272e+01, 1.82790699e+01, 6.06976748e+00, 3.83720922e+00, + 11., 1.62790699e+01, 6.74418592e+00, 4.18604660e+00, + 5.35116272e+01, 9.01627884e+01, 1.82790699e+01, 3.44186044e+00, + 1.21162786e+01, 2.18139534e+01, 1.56046515e+01, 2.13953495e+00, + 2.64883728e+01, 1.19186043e+02, 4.34651146e+01, 2.06976748e+00, + 1.04651165e+01, 5.97441864e+01, 4.98372078e+01, 2.53488374e+00, + 5.65116262e+00, 6.84883728e+01, 3.29302330e+01, 1.90697670e+00, + 7.44186068e+00, 9.48837204e+01, 2.06976748e+00, 1.51162786e+01, + 1.21604652e+02, 4.55348854e+01, 1., 1.34883726e+00, + 2.83720932e+01, 2.11395340e+01, 5.48837233e+00, 4.62790680e+00, + 1.04372093e+02, 1.08116280e+02, 3.37209296e+00, 1.39534879e+00, + 3.70930214e+01, 6.52093048e+01, 1.85116272e+01, 3.86046505e+00, + 3.97906990e+01, 9.62325592e+01, 8.55813980e+00, 2.41860461e+00, + 3.13720932e+01, 1.16744186e+02, 3.40465126e+01, 3.51162791e+00, + 5.20930243e+00, 2.46046505e+01, 8.44186020e+00, 2.81395340e+00, + 2.28139534e+01, 1.04558136e+02, 2.76744175e+00, 5.04651165e+00, + 4.99302330e+01, 1.75581398e+01, 1.60465121e+00, 6.34883738e+00, + 8.71627884e+01, 4.53488388e+01, 6.23255825e+00, 3.41860461e+00, + 2.87906971e+01, 27., 1.79069769e+00, 3.67441869e+00, + 8.36744156e+01, 1.00209305e+02, 1.19302330e+01, 3.09302330e+00, + 6.76744175e+00, 1.61395340e+01, 2.97674417e+00, 4.16279078e+00, + 5.92790680e+01, 1.04325584e+02, 1.91395340e+01, 3.81395340e+00, + 2.48837209e+00, 5.13953495e+00, 3.11627913e+00, 4.76744175e+00, + 3.34186058e+01, 7.43488388e+01, 3.43396235e+00, 4.16981125e+00, + 3.09433961e+00, 5.92452812e+00, 7.74150925e+01, 4.97169800e+01, + 3.13207555e+00, 1.62264156e+00, 5.73584890e+00, 3.52830195e+00, + 1.50943398e+00, 3.84905672e+00, 1.35301880e+02, 1.12320755e+02, + 3.41509438e+00, 2.49056602e+00, 6.26792450e+01, 4.95660362e+01, + 2.92452836e+00, 1.62264156e+00, 2.61886787e+01, 2.30754719e+01, + 2.86792445e+00, 7.01886797e+00, 6.93962250e+01, 7.16603775e+01, + 4.67924547e+00, 1.75471699e+00, 4.11320734e+00, 5.75471687e+00, + 1.96226418e+00, 4.54716969e+00, 4.83018875e+00, 7.41509438e+00, + 5.81132078e+00, 7.56603765e+00, 4.26037750e+01, 4.92452812e+01, + 6.56603765e+00, 3.01886797e+00, 2.33962274e+00, 2.96226406e+00, + 2., 3.81132078e+00, 1.33716980e+02, 1.43301880e+02, + 5.86792469e+00, 1.32075477e+00, 2.50377350e+01, 3.55283012e+01, + 2.30188680e+00, 8.49056602e-01, 5.55283012e+01, 1.26094337e+02, + 9.09433937e+00, 4.35849047e+00, 4.01509438e+01, 1.14679245e+02, + 1.17924528e+01, 5.47169805e-01, 3.20754719e+00, 1.16226416e+01, + 4.16981125e+00, 2.35849047e+00, 5.35849047e+00, 8.01886749e+00, + 7.41509438e+00, 7.03773594e+00, 1.95094337e+01, 2.23584900e+01, + 8.11320782e+00, 4.81132078e+00, 4.52830172e+00, 6.18867922e+00, + 4.94339609e+00, 6.35849047e+00, 6.23962250e+01, 1.27981133e+02, + 1.53962269e+01, 3.77358484e+00, 3.94339633e+00, 6.92452812e+00, + 1.90566039e+00, 1.60377359e+00, 4.26603775e+01, 1.42490570e+02, + 3.21698112e+01, 2.54716992e+00, 1.03773584e+01, 3.75283012e+01, + 7.35849047e+00, 6.98113203e-01, 4.01886797e+00, 9.23207550e+01, + 4.18679237e+01, 4.20754719e+00, 4.81132078e+00, 5.66037750e+00, + 5.28301907e+00, 4.96226406e+00, 1.10377359e+01, 1.03396225e+01, + 5.56603765e+00, 4.26415110e+00, 6.15094328e+00, 6.94339609e+00, + 6.67924547e+00, 7.01886797e+00, 2.31698112e+01, 3.72830200e+01, + 1.30566034e+01, 5.66037750e+00, 2.92452836e+00, 4.52830172e+00, + 4.60377359e+00, 3.71698117e+00, 2.03773594e+01, 1.02811317e+02, + 2.66792450e+01, 3.71698117e+00, 1.71698117e+00, 4.54716969e+00, + 3.64150953e+00, 1.60377359e+00, 6.83018875e+00, 1.08924530e+02, + 6.18113213e+01, 2.62264156e+00, 7.50000000e-01, 1.25000000e-01, + 9.37500000e-02, 0., 1.06250000e+00, 2.25625000e+01, + 9.94062500e+01, 3.72812500e+01, 6.87500000e-01, 1.25000000e-01, + 6.25000000e-02, 5.00000000e-01, 11., 5.85625000e+01, + 1.03843750e+02, 2.73437500e+01, 1.78750000e+01, 2.30625000e+01, + 7.50000000e-01, 3.18750000e+00, 3.04687500e+01, 66., + 7.73125000e+01, 2.26875000e+01, 1.00750000e+02, 8.25000000e+01, + 1.71875000e+00, 2.96875000e+00, 6.10625000e+01, 6.32500000e+01, + 2.14375000e+01, 1.65937500e+01, 1.88750000e+01, 6.87500000e+00, + 5.18750000e+00, 3.15625000e+00, 4.93750000e+00, 2.44687500e+01, + 7.07187500e+01, 4.62500000e+01, 2.50625000e+01, 7.37500000e+00, + 7.84375000e+00, 1.18437500e+01, 5.06875000e+01, 7.66562500e+01, + 8.92187500e+01, 4.89687500e+01, 7.40625000e+00, 1.78125000e+00, + 1.18750000e+00, 1.48750000e+01, 7.67812500e+01, 8.87500000e+01, + 7.07500000e+01, 1.67500000e+01, 9.71250000e+01, 3.09062500e+01, + 1.18750000e+00, 1.41875000e+01, 6.85000000e+01, 4.11875000e+01, + 3.45625000e+01, 2.68750000e+01, 2.52812500e+01, 2.36562500e+01, + 2.65625000e+01, 1.68125000e+01, 8.59375000e+00, 8.06250000e+00, + 1.63437500e+01, 1.82812500e+01, 3.77812500e+01, 3.36562500e+01, + 4.78125000e+01, 5.62187500e+01, 5.57500000e+01, 2.72500000e+01, + 2.01875000e+01, 2.37187500e+01, 9.12500000e+00, 6.09375000e+00, + 1.35000000e+01, 6.50937500e+01, 7.64687500e+01, 4.04062500e+01, + 2.26562500e+01, 7.56250000e+00, 8.67812500e+01, 8.56250000e+00, + 3.59375000e+00, 4.73750000e+01, 6.99375000e+01, 2.04375000e+01, + 1.33750000e+01, 4.22812500e+01, 7.78125000e+00, 2.52500000e+01, + 5.04687500e+01, 2.72812500e+01, 7.56250000e+00, 3.75000000e+00, + 5.06250000e+00, 5.31250000e+00, 9.96875000e+00, 2.36875000e+01, + 5.52812500e+01, 6.29062500e+01, 1.35000000e+01, 2.28125000e+00, + 1.40625000e+00, 2.68750000e+00, 1.40625000e+01, 7.59375000e+00, + 3.36562500e+01, 8.39687500e+01, 2.33125000e+01, 3.21875000e+00, + 2.09375000e+00, 2.30937500e+01, 7.19062500e+01, 3.84375000e+00, + 9.12500000e+00, 8.33125000e+01, 5.54062500e+01, 2.71875000e+00, + 2.03125000e+00, 6.56562500e+01, 7.32727289e+00, 5.25454569e+00, + 4.70909071e+00, 7.19999981e+00, 1.38545456e+01, 1.88363628e+01, + 1.70181828e+01, 1.20727272e+01, 9.30909061e+00, 5.32727289e+00, + 7., 1.24181814e+01, 1.77818184e+01, 2.22727280e+01, + 2.04909096e+01, 1.41272726e+01, 5.85454559e+00, 5.03636360e+00, + 1.06727276e+01, 2.45272732e+01, 2.77818184e+01, 2.22545452e+01, + 1.43818178e+01, 1.05636368e+01, 8.19999981e+00, 4.70909071e+00, + 1.14727268e+01, 4.34909096e+01, 2.75636368e+01, 1.40545454e+01, + 1.08909092e+01, 2.51818180e+01, 8.94545460e+00, 6.32727289e+00, + 7.59999990e+00, 1.21818180e+01, 1.93999996e+01, 2.34545460e+01, + 2.43999996e+01, 1.75272732e+01, 8.12727261e+00, 7.50909090e+00, + 1.19636364e+01, 2.94727268e+01, 3.65999985e+01, 3.27636375e+01, + 2.36000004e+01, 1.53636360e+01, 1.21818180e+01, 7.09090900e+00, + 1.73454552e+01, 8.77090912e+01, 5.33454552e+01, 2.86181812e+01, + 2.09090900e+01, 4.41818199e+01, 1.60363636e+01, 5.38181829e+00, + 1.68363628e+01, 1.04363640e+02, 4.07454529e+01, 1.36181822e+01, + 2.13636360e+01, 8.77818146e+01, 7.83636379e+00, 7.21818161e+00, + 1.44363632e+01, 2.87999992e+01, 2.58727264e+01, 2.35272732e+01, + 1.98727264e+01, 1.47272730e+01, 1.10909090e+01, 8.21818161e+00, + 2.70727272e+01, 9.64909058e+01, 4.51272736e+01, 2.78909092e+01, + 2.32181816e+01, 4.77090912e+01, 1.77454548e+01, 2.79999995e+00, + 1.99636364e+01, 1.22454544e+02, 5.25272713e+01, 1.70909100e+01, + 3.04545460e+01, 1.14490906e+02, 2.23272724e+01, 7.63636351e-01, + 6.49090910e+00, 1.18654549e+02, 4.45090904e+01, 8.96363640e+00, + 2.34727268e+01, 1.14472725e+02, 6.12727261e+00, 4.41818190e+00, + 2.63818188e+01, 7.65090942e+01, 2.46727276e+01, 1.65818176e+01, + 2.47818184e+01, 4.14727287e+01, 1.11090908e+01, 3.49090910e+00, + 2.58909092e+01, 1.13727272e+02, 3.61090927e+01, 1.41454544e+01, + 4.38545456e+01, 1.09836365e+02, 1.60909100e+01, 2.61818171e+00, + 1.20363636e+01, 1.17836365e+02, 4.30909081e+01, 1.14727268e+01, + 3.44909096e+01, 116., 2.80181828e+01, 1.94545460e+00, + 6.56363630e+00, 1.04163635e+02, 4.02727280e+01, 8.63636398e+00, + 1.88909092e+01, 1.18036362e+02, 3.17460328e-01, 2.53968269e-01, + 1.33333337e+00, 4.79365063e+00, 1.52539682e+01, 1.16666670e+01, + 2.92063498e+00, 1.07936513e+00, 2.07936502e+00, 2.12698412e+00, + 4.57142878e+00, 2.53333340e+01, 1.00809525e+02, 6.28253975e+01, + 1.26349211e+01, 3.90476179e+00, 1.37301588e+01, 9.82539654e+00, + 7.47619057e+00, 2.22222214e+01, 1.08095238e+02, 7.23333359e+01, + 1.76666660e+01, 7.15873003e+00, 2.74761906e+01, 2.51904755e+01, + 6.80952358e+00, 1.84285717e+01, 1.25539680e+02, 8.55238113e+01, + 7.61904764e+00, 8.63492107e+00, 1.01587307e+00, 1.30158734e+00, + 4.22222233e+00, 5.52380943e+00, 1.27142859e+01, 1.58253965e+01, + 4.50793648e+00, 1.98412693e+00, 2.92063498e+00, 2.76190472e+00, + 6.68253946e+00, 2.03015881e+01, 1.08079369e+02, 1.02968254e+02, + 1.99841270e+01, 4.98412704e+00, 1.07777777e+01, 9.33333302e+00, + 7.98412704e+00, 1.63015881e+01, 1.00650795e+02, 1.15206352e+02, + 3.19841270e+01, 10., 1.93650799e+01, 2.62857151e+01, + 7.53968239e+00, 8.82539654e+00, 1.15682541e+02, 1.34253967e+02, + 2.09206352e+01, 8.19047642e+00, 2.41269851e+00, 2.57142854e+00, + 3.77777767e+00, 3.53968263e+00, 6.66666651e+00, 9.03174591e+00, + 5.33333349e+00, 2.84126973e+00, 6.79365063e+00, 5.74603176e+00, + 8.53968239e+00, 1.31269846e+01, 6.48095245e+01, 8.78571396e+01, + 2.84444447e+01, 9.01587296e+00, 6.06349230e+00, 4.63492060e+00, + 5.82539701e+00, 1.08253965e+01, 6.55079346e+01, 1.20111115e+02, + 5.90793648e+01, 1.19841270e+01, 9.49206352e+00, 1.75238094e+01, + 6.09523821e+00, 6.12698412e+00, 4.32380943e+01, 1.32428574e+02, + 6.06349220e+01, 1.27619047e+01, 1.93650794e+00, 2.22222233e+00, + 2.74603176e+00, 2.04761910e+00, 2.58730149e+00, 3.95238090e+00, + 5.46031761e+00, 2.92063498e+00, 7.77777767e+00, 7.31746054e+00, + 1.03650789e+01, 9.26984119e+00, 2.38730164e+01, 4.00793648e+01, + 2.52063484e+01, 1.22222223e+01, 5.84126997e+00, 4.36507940e+00, + 6.65079355e+00, 9.57142830e+00, 3.18412704e+01, 8.22063522e+01, + 4.54761887e+01, 1.26825399e+01, 3.17460322e+00, 3.88888884e+00, + 3.74603176e+00, 5.90476179e+00, 1.59682541e+01, 7.98253937e+01, + 5.86031761e+01, 1.10158730e+01, 3.08695650e+00, 2.20869560e+01, + 1.04565216e+02, 1.91086960e+01, 4.50000000e+00, 3.58913040e+01, + 1.31543472e+02, 1.80434780e+01, 5.21739149e+00, 2.10217400e+01, + 1.05717392e+02, 4.37826080e+01, 2.73043480e+01, 6.74130402e+01, + 1.25695656e+02, 2.10652180e+01, 1.66304340e+01, 2.15652180e+01, + 5.62173920e+01, 4.87173920e+01, 5.02608681e+01, 6.30217400e+01, + 6.65217361e+01, 2.24565220e+01, 5.84782600e+00, 6.19565201e+00, + 7.41304350e+00, 9.26086998e+00, 1.07173910e+01, 1.04565220e+01, + 9.43478298e+00, 5.21739149e+00, 2.95652175e+00, 2.65217400e+01, + 1.44869568e+02, 4.19130440e+01, 6.56521749e+00, 32., + 1.22782608e+02, 2.04130440e+01, 7.32608700e+00, 2.43695660e+01, + 1.47586960e+02, 7.58913040e+01, 2.29782600e+01, 3.77391319e+01, + 1.14391304e+02, 4.00869560e+01, 1.68913040e+01, 1.17391300e+01, + 7.48913040e+01, 7.01956558e+01, 3.70869560e+01, 2.72608700e+01, + 5.96956520e+01, 4.46521721e+01, 5.21739149e+00, 2.84782600e+00, + 8.47826099e+00, 1.28043480e+01, 9.69565201e+00, 7.13043499e+00, + 8.34782600e+00, 8.06521702e+00, 4.19565201e+00, 6., + 2.60434780e+01, 2.17173920e+01, 1.28913040e+01, 1.51956520e+01, + 6.01521721e+01, 1.43695650e+01, 4.26086950e+00, 7.02173901e+00, + 2.28043480e+01, 2.36086960e+01, 1.97173920e+01, 1.91739140e+01, + 5.83913040e+01, 1.84130440e+01, 3.91304350e+00, 4.56521749e+00, + 1.54782610e+01, 2.45217400e+01, 2.07826080e+01, 1.60434780e+01, + 29., 1.29347830e+01, 8.04347813e-01, 8.26086938e-01, + 5.56521749e+00, 7.02173901e+00, 5.95652151e+00, 4.97826099e+00, + 5.28260851e+00, 2.39130425e+00, 1.36956525e+00, 1.69565213e+00, + 2.56521749e+00, 4.10869551e+00, 3.84782600e+00, 3.17391300e+00, + 3.71739125e+00, 2.54347825e+00, 1.54347825e+00, 1.89130437e+00, + 3.63043475e+00, 5.89130449e+00, 5.54347849e+00, 3.47826076e+00, + 3.41304350e+00, 1.97826087e+00, 9.78260875e-01, 1.15217388e+00, + 3.76086950e+00, 6.86956501e+00, 6.10869551e+00, 3.47826076e+00, + 2.80434775e+00, 1.32608700e+00, 2.39130437e-01, 1.30434781e-01, + 9.56521749e-01, 1.41304350e+00, 1.63043475e+00, 1.26086962e+00, + 6.95652187e-01, 1.73913047e-01, 36., 7.29333344e+01, + 7.16666651e+00, 4.06666660e+00, 4.75999985e+01, 6.68333359e+01, + 2.53333330e+00, 2.46666670e+00, 1.01166664e+02, 1.28933334e+02, + 1.76666665e+00, 1.26666665e+00, 7.21999969e+01, 1.02733330e+02, + 2.03333330e+00, 9.66666639e-01, 32., 5.43333321e+01, + 4.59999990e+00, 3.59999990e+00, 8.24666672e+01, 1.07166664e+02, + 3.73333335e+00, 2.33333325e+00, 1.38000002e+01, 2.08999996e+01, + 8.33333302e+00, 7.40000010e+00, 1.03666668e+01, 1.77000008e+01, + 4.66666651e+00, 4.16666651e+00, 1.22333336e+01, 2.06333332e+01, + 1.22666664e+01, 9.13333321e+00, 3.07666664e+01, 4.82000008e+01, + 4.13333321e+00, 4.09999990e+00, 1.00666664e+02, 1.28600006e+02, + 1.02666664e+01, 4.86666679e+00, 6.48000031e+01, 9.45666656e+01, + 4.96666670e+00, 2.73333335e+00, 6.79000015e+01, 1.09300003e+02, + 3.26333351e+01, 2.68666668e+01, 1.07199997e+02, 1.20666664e+02, + 7.06666660e+00, 4.23333311e+00, 1.72333336e+01, 2.53666668e+01, + 1.53666668e+01, 2.17999992e+01, 4.52333336e+01, 3.85999985e+01, + 3.93333340e+00, 5.36666679e+00, 4.50000000e+00, 6.83333349e+00, + 1.38333330e+01, 9.43333340e+00, 1.19666662e+01, 2.02666664e+01, + 4.56666660e+00, 3.79999995e+00, 4.05333328e+01, 6.75666656e+01, + 1.89666672e+01, 1.17666664e+01, 3.03999996e+01, 6.55333328e+01, + 1.26000004e+01, 3.66666675e+00, 3.77333336e+01, 9.45666656e+01, + 6.19333344e+01, 4.60666656e+01, 5.40333328e+01, 5.80333328e+01, + 2.49333324e+01, 1.02333336e+01, 1.26333332e+01, 1.12666664e+01, + 1.90333328e+01, 3.01333332e+01, 3.00333328e+01, 1.77000008e+01, + 1.44666662e+01, 1.30666666e+01, 1.20000005e+00, 2.23333335e+00, + 5.76666689e+00, 3.90000010e+00, 2.03333330e+00, 2.29999995e+00, + 8.66666675e-01, 7.66666651e-01, 2.20000005e+00, 4.73333311e+00, + 6.03333330e+00, 5.83333349e+00, 5.36666679e+00, 1.10333338e+01, + 3.56666660e+00, 8.66666675e-01, 3.66666675e+00, 1.08000002e+01, + 1.31000004e+01, 8.76666641e+00, 4.63333321e+00, 8.96666622e+00, + 8.93333340e+00, 4.56666660e+00, 1.70000005e+00, 1.86666667e+00, + 5.36666679e+00, 7.83333349e+00, 3.83333325e+00, 2.13333344e+00, + 4.56666660e+00, 3.93333340e+00, 2.20634913e+00, 1.74603179e-01, + 5.87301612e-01, 5.76190472e+00, 9.93650818e+00, 5.12698412e+00, + 3.04761910e+00, 1.06349206e+00, 2.01587296e+00, 1.39682543e+00, + 3.69841266e+00, 2.67777786e+01, 3.63650780e+01, 1.14920635e+01, + 6.03174591e+00, 1.31746030e+00, 8.74920654e+01, 4.74603176e+00, + 6.28571415e+00, 2.71746025e+01, 3.26190491e+01, 8.55555534e+00, + 4.76190472e+00, 4.24126968e+01, 1.13730156e+02, 4.04761887e+00, + 2.55555558e+00, 6.33650780e+01, 1.00920631e+02, 7.41269827e+00, + 5.57142878e+00, 8.84444427e+01, 1.58730164e-01, 2.22222224e-01, + 6.03174627e-01, 5.38095236e+00, 1.75396824e+01, 4.90476179e+00, + 1.58730161e+00, 3.96825403e-01, 1.69841266e+00, 1.12698412e+00, + 3.36507940e+00, 2.62698421e+01, 5.67142868e+01, 2.03015881e+01, + 4.82539701e+00, 1.61904764e+00, 1.29746033e+02, 1.60634918e+01, + 4.53968239e+00, 2.35714283e+01, 5.20634918e+01, 1.48412695e+01, + 3.73015881e+00, 3.10476189e+01, 1.28174606e+02, 1.49523811e+01, + 2.88888884e+00, 4.15079384e+01, 1.30349213e+02, 2.20476189e+01, + 3.69841266e+00, 4.49682541e+01, 1.90476194e-01, 3.01587313e-01, + 5.23809552e-01, 4.33333349e+00, 1.77936516e+01, 5., + 1.23809528e+00, 6.19047642e-01, 1.49206352e+00, 1.28571427e+00, + 2.55555558e+00, 1.59047623e+01, 5.85396843e+01, 2.93968258e+01, + 5.44444466e+00, 1.69841266e+00, 1.27206352e+02, 4.55079384e+01, + 3.11111116e+00, 1.33174601e+01, 4.81269836e+01, 2.74920635e+01, + 5.47619057e+00, 8.46031761e+00, 1.29952377e+02, 5.95555573e+01, + 3.47619057e+00, 1.06825399e+01, 1.24285713e+02, 5.80952377e+01, + 3.30158734e+00, 1.33809528e+01, 1.74603179e-01, 9.52380970e-02, + 2.85714298e-01, 2.14285707e+00, 1.11904764e+01, 5.03174591e+00, + 1.28571427e+00, 6.03174627e-01, 1.03174603e+00, 1.12698412e+00, + 1.90476191e+00, 6.55555534e+00, 3.90158730e+01, 3.02063484e+01, + 5.76190472e+00, 2.09523821e+00, 6.60793686e+01, 4.02698402e+01, + 1.95238090e+00, 6.63492060e+00, 3.17301579e+01, 3.29206352e+01, + 8.15873051e+00, 3.14285707e+00, 1.15603172e+02, 1.07650795e+02, + 2.79365087e+00, 3.22222233e+00, 7.64444427e+01, 6.93809509e+01, + 4.17460299e+00, 3.96825385e+00, 36., 3.23400002e+01, + 1.24000001e+00, 9.22000027e+00, 3.45800018e+01, 1.96800003e+01, + 5.98000002e+00, 3.46000004e+00, 1.19940002e+02, 8.32399979e+01, + 1.77999997e+00, 5.69999981e+00, 1.06580002e+02, 7.00199966e+01, + 2.98000002e+00, 4.26000023e+00, 2.11599998e+01, 1.36800003e+01, + 4.32000017e+00, 3.64000010e+00, 8.15800018e+01, 3.83400002e+01, + 4.48000002e+00, 6.46000004e+00, 1.26400003e+01, 9.14000034e+00, + 2.20000005e+00, 1.05999994e+00, 1.10000002e+00, 7.20000029e-01, + 1.25999999e+00, 3.44000006e+00, 2.98999996e+01, 7.59999990e+00, + 2.98000002e+00, 2.47000008e+01, 4.67000008e+01, 1.92399998e+01, + 5.67999983e+00, 5.65999985e+00, 1.33240005e+02, 4.25800018e+01, + 2.44000006e+00, 1.96399994e+01, 1.16540001e+02, 2.79799995e+01, + 2.70000005e+00, 2.12399998e+01, 3.97200012e+01, 1.40600004e+01, + 4.30000019e+00, 1.60599995e+01, 1.24139999e+02, 2.45599995e+01, + 3.51999998e+00, 1.03800001e+01, 1.55600004e+01, 8.52000046e+00, + 2.03999996e+00, 1.20000005e+00, 1.24000001e+00, 8.19999993e-01, + 1.55999994e+00, 7., 3.40200005e+01, 2.35999990e+00, + 6.61999989e+00, 3.76399994e+01, 3.79399986e+01, 1.23599997e+01, + 5.84000015e+00, 2.04799995e+01, 1.33600006e+02, 8.89999962e+00, + 2.81999993e+00, 5.82400017e+01, 1.20900002e+02, 6.98000002e+00, + 2.83999991e+00, 8.60400009e+01, 3.64799995e+01, 1.14799995e+01, + 3.46000004e+00, 4.40600014e+01, 1.20360001e+02, 7.80000019e+00, + 4.57999992e+00, 1.67399998e+01, 1.57399998e+01, 6.42000008e+00, + 1.62000000e+00, 9.59999979e-01, 1.03999996e+00, 1.17999995e+00, + 2.03999996e+00, 8.42000008e+00, 4.48199997e+01, 1.51999998e+00, + 8.34000015e+00, 3.31399994e+01, 1.93400002e+01, 5.21999979e+00, + 4.28000021e+00, 7.74400024e+01, 9.23399963e+01, 3.64000010e+00, + 3.46000004e+00, 1.12300003e+02, 1.08339996e+02, 2.40000010e+00, + 2.66000009e+00, 9.52799988e+01, 2.16200008e+01, 7.96000004e+00, + 2.44000006e+00, 3.67599983e+01, 5.01800003e+01, 3.83999991e+00, + 5.09999990e+00, 1.68799992e+01, 1.24600000e+01, 3.35999990e+00, + 7.79999971e-01, 7.20000029e-01, 1.58000004e+00, 1.70000005e+00, + 1.82000005e+00, 7.53999996e+00, 7.65217400e+00, 9.51739120e+01, + 5.73913040e+01, 4.63043499e+00, 3.69565225e+00, 2.83043480e+01, + 1.22608700e+01, 1.97826087e+00, 2.15217400e+00, 4.71304359e+01, + 9.23695679e+01, 1.92391300e+01, 6.86956501e+00, 1.64782600e+01, + 1.56956520e+01, 2.43478251e+00, 2.21739125e+00, 9.95652199e+00, + 8.03260880e+01, 6.00217400e+01, 7.43478251e+00, 6.06521749e+00, + 1.77826080e+01, 6.47826099e+00, 1.82608700e+00, 1.69565213e+00, + 4.40434799e+01, 9.24565201e+01, 10., 2.17391300e+00, + 2.11956520e+01, 1.81086960e+01, 5.23913050e+00, 6.59347839e+01, + 4.74565201e+01, 2.21739125e+00, 2.13043475e+00, 8.10869598e+01, + 8.86304321e+01, 5.86956501e+00, 3.78260875e+00, 6.32173920e+01, + 1.06108696e+02, 1.04565220e+01, 2.13043475e+00, 5.27173920e+01, + 1.03478264e+02, 1.25434780e+01, 3.43478251e+00, 2.25434780e+01, + 1.04108696e+02, 4.24565201e+01, 3.23913050e+00, 2.75217400e+01, + 1.07391304e+02, 3.01956520e+01, 2.47826076e+00, 4.50000000e+00, + 5.09347839e+01, 5.12391319e+01, 3.58695650e+00, 7.60869551e+00, + 9.97391281e+01, 6.04782600e+01, 5.41304350e+00, 1.04130430e+01, + 1.23913040e+01, 4., 7.26086950e+00, 7.75434799e+01, + 8.77608719e+01, 9.80434799e+00, 8.19565201e+00, 1.64565220e+01, + 2.91739140e+01, 6.13043499e+00, 5.13043499e+00, 5.40869560e+01, + 1.05391304e+02, 2.10434780e+01, 9.56521702e+00, 1.03260870e+01, + 3.49347839e+01, 1.18260870e+01, 5.08695650e+00, 2.83913040e+01, + 1.09217392e+02, 4.11956520e+01, 7.08695650e+00, 4.67391300e+00, + 1.92173920e+01, 1.26304350e+01, 4.23913050e+00, 1.33043480e+01, + 9.66956558e+01, 5.72391319e+01, 2.47826076e+00, 1.36956525e+00, + 1.10869563e+00, 1.54347825e+00, 4.86956501e+00, 2.96304340e+01, + 2.85434780e+01, 5.67391300e+00, 5.71739149e+00, 2.04347825e+00, + 1.93478262e+00, 2.10869575e+00, 5.06521749e+00, 2.12608700e+01, + 3.63695641e+01, 1.39565220e+01, 5.84782600e+00, 1.97826087e+00, + 2.30434775e+00, 2.13043475e+00, 4.65217400e+00, 1.57173910e+01, + 4.14130440e+01, 2.03695660e+01, 5.04347849e+00, 1.02173913e+00, + 1.10869563e+00, 1.13043475e+00, 2.32608700e+00, 7.43478251e+00, + 3.94130440e+01, 3.18913040e+01, 4.00961533e+01, 5.52692299e+01, + 1.02500000e+01, 8.46153855e-01, 1.05769229e+00, 5.19230783e-01, + 6.34615362e-01, 7.09615374e+00, 5.55961533e+01, 1.02980766e+02, + 3.51153831e+01, 5.76923084e+00, 3.38461542e+00, 5.01923084e+00, + 5.11538458e+00, 1.14038458e+01, 2.32307701e+01, 4.56538467e+01, + 4.98461533e+01, 25., 1.45384617e+01, 1.42307692e+01, + 1.52115383e+01, 1.61346149e+01, 1.07307692e+01, 1.29423075e+01, + 3.77307701e+01, 4.55769234e+01, 2.57115383e+01, 1.44230766e+01, + 1.38269234e+01, 1.26346149e+01, 2.33076916e+01, 4.61730766e+01, + 1.77884617e+01, 3.98076916e+00, 9.17307663e+00, 2.27884617e+01, + 1., 4.11538458e+00, 3.25769234e+01, 9.70576935e+01, + 5.55384598e+01, 6.88461542e+00, 1.48076928e+00, 4.80769217e-01, + 2.11538464e-01, 1.92307687e+00, 1.55000000e+01, 8.25384598e+01, + 1.04942307e+02, 2.89230766e+01, 5.40384626e+00, 2.23076916e+00, + 2.80769229e+00, 3.73076916e+00, 3.73076916e+00, 2.10576916e+01, + 8.94615402e+01, 5.73076935e+01, 1.51346149e+01, 3.90384626e+00, + 3.67307687e+00, 2.67307687e+00, 1.12115383e+01, 4.92692299e+01, + 1.36730766e+01, 2.82692313e+00, 1.19615383e+01, 1.14942307e+02, + 4.29423065e+01, 2.76923084e+00, 1.72692299e+01, 4.50961533e+01, + 2.64615383e+01, 7.21153831e+00, 5.51923084e+00, 4.33076935e+01, + 37., 3.28846145e+00, 7.28846169e+00, 5.08076935e+01, + 5.16538467e+01, 1.26153851e+01, 4.46153831e+00, 6.59615374e+00, + 1.99615383e+01, 3.86538458e+00, 1.90384614e+00, 1.78653851e+01, + 48., 2.16346149e+01, 7.13461542e+00, 3.75000000e+00, + 1.96730766e+01, 1.41923075e+01, 2.59615374e+00, 1.12153847e+02, + 6.51730804e+01, 1.48076928e+00, 3.67307687e+00, 9.37884598e+01, + 5.28846169e+01, 1.28846157e+00, 3.63461542e+00, 6.37692299e+01, + 8.16923065e+01, 2.78846145e+00, 2.23076916e+00, 1.03961540e+02, + 1.18038460e+02, 3.69230771e+00, 3.30769229e+00, 2.15384617e+01, + 7.33076935e+01, 8.34615421e+00, 2.03846145e+00, 3.94423065e+01, + 1.20288460e+02, 1.55769234e+01, 1.90384614e+00, 5.84615374e+00, + 6.43846130e+01, 2.63653851e+01, 2.21153855e+00, 5.69230747e+00, + 1.14500000e+02, 46., 5.70588255e+00, 7.19607830e+00, + 6.23529434e+00, 3.17647052e+00, 1.54705887e+01, 1.53529415e+01, + 5.07843161e+00, 5.56862736e+00, 1.12490196e+02, 9.49215698e+01, + 4.07843161e+00, 2.47058821e+00, 4.99803925e+01, 4.70588226e+01, + 2.47058821e+00, 2.98039222e+00, 1.19019608e+02, 1.03607841e+02, + 1.01960790e+00, 2.39215684e+00, 110., 9.11764679e+01, + 1.23529410e+00, 1.66666663e+00, 2.17647057e+01, 2.00392151e+01, + 3.05882359e+00, 4.21568632e+00, 9.67254868e+01, 8.01960754e+01, + 2.56862736e+00, 2.05882359e+00, 6.58823538e+00, 7.11764717e+00, + 7.31372547e+00, 5.58823538e+00, 1.10196075e+01, 1.11176472e+01, + 5.66666651e+00, 5.84313726e+00, 6.37254906e+01, 4.95490189e+01, + 7.56862736e+00, 5.56862736e+00, 45., 5.14117661e+01, + 5.74509811e+00, 6.05882359e+00, 1.32215683e+02, 1.27823532e+02, + 1.75882359e+01, 1.39215689e+01, 8.33137283e+01, 6.31568642e+01, + 4.07843161e+00, 5.94117641e+00, 2.24313717e+01, 2.92549019e+01, + 1.83529415e+01, 3.18235302e+01, 1.24117645e+02, 9.00196075e+01, + 1.06078434e+01, 4.07843161e+00, 5.60784292e+00, 5.80392170e+00, + 6.25490189e+00, 5.17647076e+00, 7.64705896e+00, 5.54901981e+00, + 4.23529434e+00, 4.66666651e+00, 1.87450981e+01, 1.35490198e+01, + 9.23529434e+00, 8.50980377e+00, 2.61568623e+01, 2.37450981e+01, + 5.15686274e+00, 7.56862736e+00, 9.13725510e+01, 100., + 3.21176453e+01, 1.75294113e+01, 3.46862755e+01, 2.64313717e+01, + 8.21568584e+00, 2.41176472e+01, 2.14313717e+01, 3.33921585e+01, + 3.48627434e+01, 4.39215698e+01, 6.79803925e+01, 3.73529396e+01, + 1.80392151e+01, 8.96078396e+00, 2.58823538e+00, 2.50980401e+00, + 2.21568632e+00, 2.21568632e+00, 3.56862736e+00, 2.29411769e+00, + 1.62745094e+00, 2.11764717e+00, 1.06274509e+01, 4.17647076e+00, + 2.68627453e+00, 3.05882359e+00, 1.11372547e+01, 7.33333349e+00, + 2.17647052e+00, 8.68627453e+00, 4.68235283e+01, 2.55294113e+01, + 5.47058821e+00, 5.35294104e+00, 1.51372547e+01, 1.00784311e+01, + 2.90196085e+00, 2.14313717e+01, 1.13725491e+01, 1.56274509e+01, + 1.12941179e+01, 9.49019623e+00, 1.29019604e+01, 9.17647076e+00, + 6.29411745e+00, 5.50980377e+00, 6.28846169e+00, 1.70192299e+01, + 1.20961542e+01, 3.55769229e+00, 5.90384626e+00, 1.38211533e+02, + 1.27865387e+02, 8.01923084e+00, 6.96153831e+00, 1.87500000e+01, + 2.74038467e+01, 1.45961542e+01, 9.23076916e+00, 7.72692337e+01, + 1.47769226e+02, 2.12307701e+01, 4.53846169e+00, 5.09615374e+00, + 1.24038458e+01, 1.28269234e+01, 5.90384626e+00, 1.04230766e+01, + 1.46923080e+02, 1.09865387e+02, 1.20384617e+01, 2.82692313e+00, + 3.05769229e+00, 3.23076916e+00, 2.51923084e+00, 3.03846145e+00, + 1.14480766e+02, 1.46884613e+02, 6.65384626e+00, 5.63461542e+00, + 6.32692289e+00, 4.75000000e+00, 6.65384626e+00, 6.37884598e+01, + 1.03173080e+02, 2.14423084e+01, 1.05000000e+01, 5.86538458e+00, + 6.42307711e+00, 5.15384626e+00, 6.94230747e+00, 4.94423065e+01, + 1.40211533e+02, 4.41538467e+01, 1.30961542e+01, 6.11538458e+00, + 7.21153831e+00, 6.38461542e+00, 5.94230747e+00, 1.63653851e+01, + 1.39576920e+02, 9.31153870e+01, 1.55576925e+01, 7.38461542e+00, + 5.90384626e+00, 6.26923084e+00, 5.82692289e+00, 1.25192308e+01, + 7.45961533e+01, 7.22692337e+01, 5.07692289e+00, 3.19230771e+00, + 3.44230771e+00, 3.67307687e+00, 7.15384626e+00, 2.43269234e+01, + 4.21153831e+01, 1.41153851e+01, 9.82692337e+00, 4.80769253e+00, + 5.36538458e+00, 5.71153831e+00, 7.15384626e+00, 1.82884617e+01, + 4.68461533e+01, 3.04038467e+01, 1.18653851e+01, 5.51923084e+00, + 6.90384626e+00, 6.51923084e+00, 7.28846169e+00, 1.32500000e+01, + 3.66923065e+01, 3.74807701e+01, 1.07115383e+01, 5.07692289e+00, + 5.57692289e+00, 6.09615374e+00, 7.05769253e+00, 9.48076916e+00, + 2.23653851e+01, 2.71153851e+01, 8.65384638e-01, 3.07692319e-01, + 1.73076928e-01, 4.61538464e-01, 1.25000000e+00, 6.76923084e+00, + 8.65384579e+00, 2.65384626e+00, 1.59615386e+00, 2.88461536e-01, + 2.50000000e-01, 5.96153855e-01, 1.32692313e+00, 5.15384626e+00, + 1.09807692e+01, 6.50000000e+00, 1.67307687e+00, 4.80769217e-01, + 5.00000000e-01, 7.50000000e-01, 2.36538458e+00, 3.46153855e+00, + 8.80769253e+00, 8.36538506e+00, 1.51923072e+00, 5.19230783e-01, + 6.53846145e-01, 1.36538458e+00, 2.19230771e+00, 1.44230771e+00, + 5.88461542e+00, 7.09615374e+00, 4.60000008e-01, 3.50000000e+00, + 4.21999979e+00, 1., 3.11999989e+00, 3.69199982e+01, + 7.37799988e+01, 7.61999989e+00, 1.32000005e+00, 9.02000046e+00, + 4.15999985e+00, 3.19999993e-01, 7.07999992e+00, 7.10999985e+01, + 5.89000015e+01, 3.83999991e+00, 2.34799995e+01, 6.47600021e+01, + 4.23999977e+00, 1.59999996e-01, 7.03999996e+00, 6.10999985e+01, + 3.20200005e+01, 3.51999998e+00, 9.63399963e+01, 1.07739998e+02, + 2.66000009e+00, 6.39999986e-01, 2.18400002e+01, 5.65600014e+01, + 1.23000002e+01, 6.21999979e+00, 2.03999996e+00, 3.14000010e+00, + 4.92000008e+00, 4.82000017e+00, 7.28000021e+00, 6.40999985e+01, + 9.51999969e+01, 1.41599998e+01, 1.01999998e+00, 6., + 2.83999991e+00, 7.20000029e-01, 1.02600002e+01, 1.11040001e+02, + 8.50400009e+01, 4.40000010e+00, 1.15400000e+01, 1.25000000e+01, + 4.39999998e-01, 6.80000007e-01, 2.17399998e+01, 106., + 5.11800003e+01, 3.33999991e+00, 1.20320000e+02, 8.43399963e+01, + 6.80000007e-01, 1.34000003e+00, 3.46800003e+01, 5.22400017e+01, + 1.65799999e+01, 9.80000019e+00, 8.27999973e+00, 6.21999979e+00, + 7.88000011e+00, 7.67999983e+00, 8.64000034e+00, 3.87400017e+01, + 4.93800011e+01, 22., 4., 3.40000010e+00, 2.03999996e+00, + 3.90000010e+00, 2.58799992e+01, 1.00800003e+02, 6.48199997e+01, + 1.48800001e+01, 3.72000003e+00, 3.64000010e+00, 2.39999995e-01, + 5.26000023e+00, 5.80800018e+01, 1.17800003e+02, 3.85200005e+01, + 2.70000005e+00, 1.09459999e+02, 2.07399998e+01, 3.40000004e-01, + 7.46000004e+00, 5.70600014e+01, 5.42799988e+01, 1.48000002e+01, + 2.76200008e+01, 1.40799999e+01, 1.22600002e+01, 1.08000002e+01, + 5.96000004e+00, 5.88000011e+00, 1.25000000e+01, 1.77399998e+01, + 2.02399998e+01, 1.05600004e+01, 7.90000010e+00, 1.13599997e+01, + 1.95799999e+01, 3.66199989e+01, 4.23800011e+01, 2.82999992e+01, + 2.04400005e+01, 3.29999995e+00, 6.39999986e-01, 1.60000002e+00, + 2.12199993e+01, 7.86399994e+01, 6.90400009e+01, 1.69400005e+01, + 5.90000010e+00, 8.80599976e+01, 1.86000001e+00, 6.99999988e-01, + 2.32000008e+01, 6.44000015e+01, 3.02999992e+01, 1.05799999e+01, + 5.75800018e+01, 2.68688526e+01, 2.73770485e+01, 2.93606548e+01, + 5.93278694e+01, 4.55245895e+01, 2.02786884e+01, 2.01475410e+01, + 2.59016399e+01, 5.36885262e+01, 1.32622948e+01, 3.60327873e+01, + 1.45442627e+02, 1.31786880e+02, 2.80163937e+01, 1.67540989e+01, + 7.26393433e+01, 3.67049179e+01, 3.65573764e+00, 1.88196716e+01, + 8.38360672e+01, 6.14918022e+01, 1.43278685e+01, 2.76065578e+01, + 9.58196716e+01, 6.54098368e+00, 2.52459025e+00, 7.19672108e+00, + 1.34590168e+01, 1.10819674e+01, 1.06393442e+01, 2.40327873e+01, + 3.22459030e+01, 2.85245895e+01, 1.07049179e+01, 5.55081978e+01, + 1.38081970e+02, 5.35245895e+01, 1.07704916e+01, 1.80655746e+01, + 5.06557388e+01, 4.20819664e+01, 5.18032789e+00, 2.64426231e+01, + 1.42081970e+02, 9.20491791e+01, 1.29672127e+01, 2.66229515e+01, + 1.14672134e+02, 2.35901642e+01, 5.90163946e+00, 1.20819674e+01, + 2.65901642e+01, 2.77704926e+01, 1.43606558e+01, 2.50163937e+01, + 6.96065598e+01, 4.86885262e+00, 4.65573788e+00, 8.96721268e+00, + 1.16065578e+01, 1.39672127e+01, 1.45245905e+01, 1.32295084e+01, + 1.10819674e+01, 1.32950821e+01, 5.57377052e+00, 5.01311493e+01, + 1.35360657e+02, 2.31311474e+01, 3.63934422e+00, 3.28688507e+01, + 8.42459030e+01, 1.63606548e+01, 7.06557369e+00, 1.78032780e+01, + 5.96229515e+01, 2.14098358e+01, 7.31147528e+00, 2.72950821e+01, + 8.25245895e+01, 8.09836102e+00, 9.22950840e+00, 1.25409832e+01, + 1.49344263e+01, 1.89836063e+01, 1.46065578e+01, 1.36721315e+01, + 1.69836063e+01, 3.34426236e+00, 5.27868843e+00, 6.93442631e+00, + 7.91803265e+00, 1.37540979e+01, 1.49016390e+01, 7.75409842e+00, + 3.70491815e+00, 6.06557369e+00, 2.72131157e+00, 6.93442631e+00, + 2.35081959e+01, 7.75409842e+00, 1.44262290e+00, 1.17377052e+01, + 2.99180336e+01, 4.14754105e+00, 4.45901632e+00, 5.95081949e+00, + 6.39344263e+00, 7.21311474e+00, 4.34426212e+00, 6.06557369e+00, + 1.04754095e+01, 2.85245895e+00, 4., 4.67213106e+00, + 4.68852472e+00, 7.39344263e+00, 7.08196735e+00, 3.73770499e+00, + 2.57377052e+00, 1.52459013e+00, 1.78688526e+00, 2.19672132e+00, + 2.96721315e+00, 5.49180317e+00, 6.54098368e+00, 2.91803288e+00, + 1.22950816e+00, 1.48901100e+01, 4.19780207e+00, 2.40219784e+01, + 9.95714264e+01, 3.19340668e+01, 6.54945040e+00, 1.78791218e+01, + 6.92417603e+01, 8.59230804e+01, 6.59340668e+00, 5.85714293e+00, + 3.04615383e+01, 1.10219784e+01, 4.61538458e+00, 1.72857151e+01, + 1.31362640e+02, 1.18153847e+02, 7.10988998e+00, 1.94505489e+00, + 2.56043959e+00, 2.04395604e+00, 2.37362647e+00, 1.30439558e+01, + 1.39681320e+02, 2.74505501e+01, 4.94505501e+00, 2.60439563e+00, + 2.93406582e+00, 3.07692313e+00, 4.02197790e+00, 6.32967043e+00, + 3.01098900e+01, 2.03516483e+01, 4.89011002e+00, 1.34945059e+01, + 3.41318665e+01, 7.68131876e+00, 7.37362623e+00, 6.34065933e+01, + 1.22043953e+02, 7.75824203e+01, 4.03296709e+00, 2.91208792e+00, + 5.79120874e+00, 2.16483521e+00, 3.56043959e+00, 5.13406601e+01, + 1.48890106e+02, 7.41428604e+01, 9.02197838e+00, 5.92307711e+00, + 7.10988998e+00, 6.49450541e+00, 6.81318665e+00, 2.93516483e+01, + 1.33758240e+02, 1.65934067e+01, 6.49450541e+00, 5.13186836e+00, + 5.63736248e+00, 5.47252750e+00, 5.61538458e+00, 9.94505501e+00, + 2.33186817e+01, 2.17032967e+01, 2.86813188e+00, 4.84615374e+00, + 4.41758251e+00, 2.19780231e+00, 5.61538458e+00, 9.91868134e+01, + 1.40901093e+02, 4.79450531e+01, 7.61538458e+00, 5.68131876e+00, + 6.82417583e+00, 5.21978045e+00, 7.65934086e+00, 5.78791199e+01, + 1.41890106e+02, 3.21098900e+01, 1.10329666e+01, 1.08901100e+01, + 1.40439558e+01, 1.19890108e+01, 1.37802200e+01, 2.73846149e+01, + 5.97692299e+01, 9.61538506e+00, 5.27472544e+00, 5.78021955e+00, + 6.80219793e+00, 6.03296709e+00, 6.42857122e+00, 9.24175835e+00, + 1.29120874e+01, 1.10769234e+01, 3.31868124e+00, 3.62637353e+00, + 4.10988998e+00, 3.01098895e+00, 4.46153831e+00, 3.12087917e+01, + 5.19340668e+01, 1.55384617e+01, 6.58241749e+00, 6.19780207e+00, + 6.62637377e+00, 6.47252750e+00, 8.25274754e+00, 1.79230766e+01, + 3.35934067e+01, 1.41648350e+01, 6.70329666e+00, 6.35164833e+00, + 8.14285755e+00, 8.57142830e+00, 8.03296661e+00, 1.04285717e+01, + 1.58461542e+01, 4.91208792e+00, 2.72527480e+00, 3.13186812e+00, + 3.65934062e+00, 3.79120874e+00, 3.57142854e+00, 4.81318665e+00, + 6.20879126e+00, 2.30655746e+01, 1.66557369e+01, 2.10655746e+01, + 2.33606548e+01, 2.49508190e+01, 2.48196716e+01, 2.64918041e+01, + 2.93770485e+01, 6.50819683e+00, 9.49180317e+00, 2.08196716e+01, + 2.71475410e+01, 3.93606567e+01, 5.21967201e+01, 3.08032780e+01, + 1.04262295e+01, 3.95081973e+00, 4.63934422e+00, 4.73770475e+00, + 1.58360653e+01, 7.09016418e+01, 7.90655746e+01, 1.98852463e+01, + 4.45901632e+00, 3.83606553e+00, 3.04918027e+00, 1.68852460e+00, + 1.35409832e+01, 7.69672165e+01, 4.93606567e+01, 4.49180317e+00, + 1.42622948e+00, 2.86229515e+01, 2.74262295e+01, 2.80819664e+01, + 2.30327873e+01, 2.29836063e+01, 2.20327873e+01, 1.30655737e+01, + 1.42622948e+01, 1.60163937e+01, 1.46229506e+01, 2.19836063e+01, + 2.66065578e+01, 3.58688507e+01, 4.12459030e+01, 3.57868843e+01, + 2.34918041e+01, 7.06557369e+00, 6.83606577e+00, 1.05573769e+01, + 5.07868843e+01, 9.68032761e+01, 7.01475372e+01, 26., + 1.02950821e+01, 3.27868843e+00, 9.34426248e-01, 3.31147552e+00, + 5.72950821e+01, 1.07934425e+02, 4.13278694e+01, 6.16393423e+00, + 3.04918027e+00, 3.16393452e+01, 6.62950821e+01, 3.31639328e+01, + 9.96721268e+00, 1.14754095e+01, 1.99836063e+01, 1.18032789e+01, + 1.44098358e+01, 2.95081959e+01, 3.37049179e+01, 4.78688507e+01, + 4.72950821e+01, 3.06721306e+01, 3.18524590e+01, 3.60491791e+01, + 3.75245895e+01, 9.77049160e+00, 8.26229477e+00, 3.28852463e+01, + 1.06442619e+02, 1.08868851e+02, 5.77377052e+01, 2.71311474e+01, + 1.87868843e+01, 2.98360658e+00, 5.24590135e-01, 1.02295084e+01, + 8.74918060e+01, 9.58360672e+01, 3.10819664e+01, 1.11475410e+01, + 1.11967211e+01, 1.19672127e+01, 9.22622986e+01, 7.93442612e+01, + 9.39344215e+00, 3.81967211e+00, 1.25737705e+01, 6.42622948e+00, + 3.83606553e+00, 1.09344263e+01, 4.61147537e+01, 1.13639343e+02, + 6.02295074e+01, 1.32622948e+01, 1.07704916e+01, 1.18196726e+01, + 1.10163937e+01, 3.01639342e+00, 8.19672108e+00, 6.88852463e+01, + 1.04114754e+02, 5.41311493e+01, 1.57868853e+01, 1.30327873e+01, + 8.63934422e+00, 3.88524580e+00, 1.08196723e+00, 1.58360653e+01, + 6.44918060e+01, 3.99016380e+01, 1.46229506e+01, 2.10819664e+01, + 29., 1.45652175e+00, 7.58695650e+00, 1.82173920e+01, + 4.67391300e+00, 2., 2.31956520e+01, 4.58043480e+01, + 2.45652175e+00, 2.39130425e+00, 1.42173910e+01, 2.14782600e+01, + 4.06521749e+00, 3.02173924e+00, 2.49565220e+01, 2.67173920e+01, + 1.78260875e+00, 2.50000000e+00, 1.30217390e+01, 16., + 3.67391300e+00, 3.04347825e+00, 7.50000000e+00, 7.93478251e+00, + 2.30434775e+00, 9.78260875e-01, 3.82608700e+00, 8.67391300e+00, + 5.39130449e+00, 2.78260875e+00, 3.93478251e+00, 4.93478251e+00, + 1.65217388e+00, 7.45652151e+00, 2.24782600e+01, 2.69782600e+01, + 7.56521749e+00, 5.47826099e+00, 3.47826080e+01, 8.34130402e+01, + 1.45434780e+01, 1.01521740e+01, 3.51521721e+01, 2.80869560e+01, + 6.26086950e+00, 2.57173920e+01, 1.11978264e+02, 9.58043442e+01, + 7.82608700e+00, 6.63043499e+00, 3.29565201e+01, 3.79565201e+01, + 7.08695650e+00, 1.95000000e+01, 7.18695679e+01, 9.03913040e+01, + 1.38043480e+01, 2.89130425e+00, 1.23478260e+01, 4.03695641e+01, + 1.16521740e+01, 6., 1.92608700e+01, 7.88260880e+01, + 9.97826099e+00, 1.31521740e+01, 1.75434780e+01, 2.15217400e+01, + 1.60434780e+01, 1.08478260e+01, 1.01739130e+01, 2.17173920e+01, + 2.07826080e+01, 2.85000000e+01, 3.59130440e+01, 5.49565201e+01, + 4.09782600e+01, 2.57391300e+01, 4.56521721e+01, 4.32173920e+01, + 2.32173920e+01, 2.09782600e+01, 4.00434799e+01, 1.02673912e+02, + 3.05217400e+01, 1.86739140e+01, 6.35869560e+01, 1.08565216e+02, + 2.88695660e+01, 2.91304350e+00, 1.73260860e+01, 1.06239128e+02, + 2.18043480e+01, 4.26086950e+00, 4.20434799e+01, 1.17456520e+02, + 1.52391300e+01, 4.02173901e+00, 1.78695660e+01, 7.84347839e+01, + 2.91739140e+01, 5.43478251e+00, 7.36956501e+00, 2.27608700e+01, + 1.51739130e+01, 7.69565201e+00, 1.51086960e+01, 8.09347839e+01, + 9.13260880e+01, 2.48478260e+01, 1.14782610e+01, 3.60652161e+01, + 2.96739140e+01, 6.54347849e+00, 3.12826080e+01, 1.12673912e+02, + 6.22391319e+01, 2.04130440e+01, 1.51304350e+01, 5.88478279e+01, + 2.40652180e+01, 1.04347825e+00, 2.77608700e+01, 1.16173912e+02, + 1.86739140e+01, 3.08695650e+00, 1.47608700e+01, 6.10434799e+01, + 1.04782610e+01, 4.84848499e+00, 2.76060600e+01, 2.01060600e+01, + 9.24242437e-01, 2.98484850e+00, 8.81363602e+01, 8.10909119e+01, + 6.46969700e+00, 3.15151525e+00, 2.14242420e+01, 2.02121220e+01, + 2.77272725e+00, 4.86363649e+00, 9.79696960e+01, 8.16818161e+01, + 6.59090900e+00, 5.77272749e+00, 1.73787880e+01, 1.97575760e+01, + 5.83333349e+00, 5.13636351e+00, 3.64848480e+01, 3.90454559e+01, + 1.73333340e+01, 4.78787899e+00, 7.15151501e+00, 1.14696970e+01, + 4.98484850e+00, 4.74242401e+00, 1.14242420e+01, 2.28939400e+01, + 1.12575760e+01, 5.77272749e+00, 1.14348488e+02, 9.35151520e+01, + 2.69696975e+00, 1.80303025e+00, 3.45303040e+01, 3.81666679e+01, + 3.80303025e+00, 6.19696951e+00, 1.07969696e+02, 8.22575760e+01, + 2.42424250e+00, 2.92424250e+00, 1.00909088e+02, 8.60454559e+01, + 3.62121201e+00, 5.81818199e+00, 4.45151520e+01, 3.39090919e+01, + 7.10606050e+00, 8.66666698e+00, 1.12727272e+02, 1.06484848e+02, + 1.47727270e+01, 4.77272749e+00, 1.76515160e+01, 1.91212120e+01, + 6.37878799e+00, 6.43939400e+00, 7.72727280e+01, 7.65454559e+01, + 2.06666660e+01, 4.30303049e+00, 3.75909081e+01, 3.17727280e+01, + 3.57575750e+00, 4.06060600e+00, 2.87878780e+01, 2.73787880e+01, + 5.57575750e+00, 1.25757580e+01, 1.13590912e+02, 8.53787842e+01, + 2.39393950e+00, 4.59090900e+00, 3.87424240e+01, 3.13333340e+01, + 4.33333349e+00, 1.83181820e+01, 1.19893936e+02, 9.20606079e+01, + 5.96969700e+00, 1.07272730e+01, 4.67727280e+01, 2.97727280e+01, + 4.04545450e+00, 8.13636398e+00, 6.33939400e+01, 4.45909081e+01, + 9.86363602e+00, 1.21515150e+01, 6.44545441e+01, 4.68181801e+01, + 7.93939400e+00, 4.21212101e+00, 3.45454550e+00, 3.51515150e+00, + 2.72727275e+00, 3.57575750e+00, 8.30303001e+00, 8.31818199e+00, + 6.18181801e+00, 8., 1.10606060e+01, 6.63636351e+00, + 3.46969700e+00, 5.80303049e+00, 2.12727280e+01, 1.46515150e+01, + 6.78787899e+00, 1.77424240e+01, 6.00454559e+01, 2.46515160e+01, + 3.25757575e+00, 5.98484850e+00, 3.02424240e+01, 1.91818180e+01, + 4.40909100e+00, 1.23333330e+01, 8.13484879e+01, 4.52272720e+01, + 4.45454550e+00, 5.95454550e+00, 2.17727280e+01, 1.38333330e+01, + 2.77272725e+00, 1.54615383e+01, 9.30769253e+00, 4.71794891e+00, + 9.79487133e+00, 8.38461494e+00, 6.61538458e+00, 1.35128202e+01, + 1.33333330e+01, 3.80512810e+01, 5.74358988e+00, 7.20512819e+00, + 5.51538467e+01, 3.27435913e+01, 5.61538458e+00, 1.16410255e+01, + 5.24871788e+01, 4.07179489e+01, 4.48717928e+00, 6.64102554e+00, + 3.96923065e+01, 1.96410255e+01, 6.41025639e+00, 1.59230766e+01, + 8.13846130e+01, 1.44358978e+01, 8.33333302e+00, 7.74358988e+00, + 1.06666670e+01, 1.25641022e+01, 1.08205128e+01, 1.46923075e+01, + 2.35384617e+01, 2.25384617e+01, 1.52820511e+01, 9.25641060e+00, + 2.37179489e+01, 2.52564106e+01, 7.10256433e+00, 1.06666670e+01, + 1.64615383e+01, 9.08461533e+01, 2.56410255e+01, 8.92307663e+00, + 6.08205147e+01, 7.16410294e+01, 9.53846169e+00, 7.53846169e+00, + 7.21794891e+01, 7.32051315e+01, 3.33589745e+01, 1.06923075e+01, + 2.36923084e+01, 3.23333321e+01, 1.92051277e+01, 2.60769234e+01, + 7.24358978e+01, 1.29743586e+01, 1.13076925e+01, 1.10769234e+01, + 2.26666660e+01, 2.92307701e+01, 3.12051277e+01, 2.83333340e+01, + 2.56410255e+01, 2.52051277e+01, 1.73589745e+01, 1.08205128e+01, + 4.07435913e+01, 3.84358978e+01, 6., 9.69230747e+00, + 2.55128212e+01, 1.01333336e+02, 5.81794853e+01, 1.15128202e+01, + 5.93333321e+01, 7.27692337e+01, 1.77948723e+01, 11., + 7.25641022e+01, 7.63846130e+01, 5.53846169e+01, 3.49230766e+01, + 3.61025658e+01, 28., 2.47948723e+01, 2.85128212e+01, + 5.22051277e+01, 1.42051287e+01, 1.44871798e+01, 4.99743576e+01, + 7.31025620e+01, 2.53589745e+01, 1.39743586e+01, 3.08717957e+01, + 3.84615402e+01, 2.54615383e+01, 7.69230747e+00, 6.84615374e+00, + 5.99743576e+01, 3.36410255e+01, 3.46153855e+00, 6.61538458e+00, + 5.55128212e+01, 7.99230804e+01, 1.68717957e+01, 1.04871798e+01, + 8.50769196e+01, 5.34358978e+01, 8.61538506e+00, 1.04102564e+01, + 1.09461540e+02, 4.92307701e+01, 1.93589745e+01, 4.83076935e+01, + 96., 3.68205147e+01, 1.25128202e+01, 2.55641022e+01, + 7.07435913e+01, 1.24615383e+01, 9.17948723e+00, 5.67692299e+01, + 7.97435913e+01, 1.47948713e+01, 4.20512819e+00, 2.74871788e+01, + 5.37179489e+01, 1.59195404e+01, 26., 9.54022980e+00, + 8.21839046e+00, 3.35057487e+01, 5.12988510e+01, 9.24137974e+00, + 4.71264362e+00, 1.64942532e+01, 2.26206894e+01, 9.88505745e+00, + 5.29885054e+00, 6.19540215e+00, 6.18390799e+00, 8.71264362e+00, + 6.52873564e+00, 8.42528725e+00, 9.24137974e+00, 6.21839094e+00, + 4.80459785e+00, 4.88505745e+00, 4.95402288e+00, 6.43678141e+00, + 5.67816114e+00, 2.05747128e+00, 1.81609190e+00, 1.66666663e+00, + 1.67816091e+00, 1.86206901e+00, 2.20689654e+00, 3.60919547e+00, + 2.97701144e+00, 3.39655190e+01, 6.25747108e+01, 9.18390846e+00, + 5.71264362e+00, 84., 1.33103455e+02, 2.49425297e+01, + 1.07126436e+01, 3.30574722e+01, 5.26091957e+01, 1.40344830e+01, + 7.11494255e+00, 2.73103447e+01, 4.64827576e+01, 9.47126484e+00, + 6.60919523e+00, 1.92183914e+01, 2.31839085e+01, 1.09425287e+01, + 5.98850584e+00, 6.94252872e+00, 6.86206913e+00, 6.64367819e+00, + 7.55172396e+00, 4.22988510e+00, 3.65517235e+00, 3.25287366e+00, + 3.02298856e+00, 3.03448272e+00, 3.24137926e+00, 5.02298832e+00, + 4.22988510e+00, 1.02390808e+02, 1.22057472e+02, 5.72413778e+00, + 3.24137926e+00, 1.06597702e+02, 1.36666672e+02, 1.08620691e+01, + 7.79310322e+00, 4.12068977e+01, 5.65517235e+01, 8.35632229e+00, + 6.10344839e+00, 1.20448273e+02, 1.37091949e+02, 7.51724148e+00, + 5.66666651e+00, 2.84367809e+01, 3.59195404e+01, 1.05862064e+01, + 5.78160906e+00, 7.67816114e+00, 9.90804577e+00, 8.06896591e+00, + 8., 5.90804577e+00, 5.17241383e+00, 3.44827580e+00, + 3.33333325e+00, 3.60919547e+00, 3.78160930e+00, 4.89655161e+00, + 4.04597712e+00, 1.22689651e+02, 122., 3.62068963e+00, + 5.09195423e+00, 5.38965530e+01, 5.32758636e+01, 4.45977020e+00, + 5.98850584e+00, 6.24597702e+01, 6.04597702e+01, 5.06896544e+00, + 9.28735638e+00, 1.39655167e+02, 1.30873566e+02, 8.77011490e+00, + 4.64367819e+00, 2.98160915e+01, 3.21264381e+01, 5.83908033e+00, + 4.03448296e+00, 2.03678169e+01, 3.02183914e+01, 1.43563223e+01, + 8.19540215e+00, 6.33333349e+00, 6.33333349e+00, 3.14942527e+00, + 2.34482765e+00, 3.13793111e+00, 5., 4.55172396e+00, + 3.29885054e+00, 8.21951199e+00, 2.36951218e+01, 5.60975599e+00, + 3.37804890e+00, 1.96585369e+01, 1.03646339e+02, 1.37804880e+01, + 4.92682934e+00, 7.73170710e+00, 2.56463413e+01, 8., + 5.23170710e+00, 1.10609760e+01, 3.15975609e+01, 8.85365868e+00, + 4.15853643e+00, 5.39024401e+00, 8.48780441e+00, 6.02439022e+00, + 5.28048801e+00, 6.84146357e+00, 8.23170757e+00, 8.29268265e+00, + 4.98780489e+00, 3.47560978e+00, 3.37804890e+00, 3.58536577e+00, + 3.75609756e+00, 4.36585379e+00, 4.71951199e+00, 5.30487823e+00, + 4.70731688e+00, 1.96219521e+01, 1.12939026e+02, 9.93902397e+00, + 1.96341467e+00, 1.45243902e+01, 1.22390244e+02, 1.65609760e+01, + 6.70731688e+00, 1.06829271e+01, 5.31341476e+01, 8.75609779e+00, + 3.76829267e+00, 2.30121956e+01, 1.42804871e+02, 1.68658543e+01, + 2.63414645e+00, 1.01829271e+01, 3.39878044e+01, 1.04756098e+01, + 6.74390221e+00, 1.12926826e+01, 3.96097565e+01, 1.10731707e+01, + 5., 5.46341467e+00, 7.60975599e+00, 6.50000000e+00, + 5.43902445e+00, 5.80487823e+00, 6.54878044e+00, 6.04878044e+00, + 5.10975599e+00, 2.17439022e+01, 1.46134140e+02, 1.72195129e+01, + 1.57317078e+00, 6.70731688e+00, 6.27926826e+01, 8.71951199e+00, + 2.52439022e+00, 1.78658543e+01, 1.31865860e+02, 1.30243902e+01, + 1.40243900e+00, 1.97804871e+01, 1.44695129e+02, 1.53658533e+01, + 1.79268289e+00, 9.91463375e+00, 5.21829262e+01, 1.14268293e+01, + 5.25609779e+00, 2.44756088e+01, 1.45024384e+02, 1.88048782e+01, + 2.95121956e+00, 6.20731688e+00, 2.18414631e+01, 9.64634132e+00, + 4.50000000e+00, 7.95121956e+00, 2.81097565e+01, 1.34756098e+01, + 4.91463423e+00, 8.17073154e+00, 5.01707306e+01, 5.90243912e+00, + 2.21951222e+00, 7.03658533e+00, 4.48048782e+01, 8.24390221e+00, + 2.79268289e+00, 2.70853653e+01, 1.44353653e+02, 1.63414631e+01, + 2.54878044e+00, 9.04878044e+00, 6.21829262e+01, 8.57317066e+00, + 2.02439022e+00, 1.26585369e+01, 95., 1.93292675e+01, + 1.25609760e+01, 2.71707325e+01, 1.18231705e+02, 1.57195120e+01, + 4.06097555e+00, 5.24390221e+00, 2.33658543e+01, 9.40243912e+00, + 5.19512177e+00, 1.40609760e+01, 8.52682953e+01, 2.57439022e+01, + 5.40243912e+00, 86., 3.70833325e+00, 2.33333325e+00, + 3.09166660e+01, 2.85833340e+01, 2.66666675e+00, 2.50000000e+00, + 5.96250000e+01, 3.59166679e+01, 8., 5.62500000e+00, + 1.05000000e+01, 1.07083330e+01, 6.83333349e+00, 1.05833330e+01, + 3.80833321e+01, 1.98750000e+01, 7.83333349e+00, 7.12500000e+00, + 1.76666660e+01, 2.77500000e+01, 1.11666670e+01, 5.87500000e+00, + 1.32083330e+01, 2.21250000e+01, 5.45833349e+00, 2.95833325e+00, + 3.89583321e+01, 6.11666679e+01, 1.00833330e+01, 2.12500000e+00, + 1.27916670e+01, 1.14541664e+02, 3.35416679e+01, 5.20833349e+00, + 1.68750000e+01, 4.45833321e+01, 1.53750000e+01, 4.33333349e+00, + 5.27916679e+01, 3.27083321e+01, 3.00416660e+01, 2.02500000e+01, + 1.57916670e+01, 2.53333340e+01, 2.49166660e+01, 1.59166670e+01, + 2.60416660e+01, 2.32083340e+01, 7., 1.57083330e+01, + 5.86250000e+01, 4.91250000e+01, 1.26250000e+01, 1.16250000e+01, + 4.13750000e+01, 2.96250000e+01, 4., 2.87500000e+00, + 9.27916641e+01, 7.36250000e+01, 1.45833337e+00, 3.37500000e+00, + 2.85000000e+01, 1.03375000e+02, 9.03750000e+01, 1.52500000e+01, + 2.36250000e+01, 44., 2.62916660e+01, 1.11666670e+01, + 5.14583321e+01, 4.22500000e+01, 4.76250000e+01, 5.33333321e+01, + 4.87500000e+01, 2.94166660e+01, 3.52083321e+01, 4.01250000e+01, + 4.42916679e+01, 1.93333340e+01, 6.50000000e+00, 6.05416679e+01, + 1.15208336e+02, 4.58333321e+01, 6.75000000e+00, 2.66250000e+01, + 6.46666641e+01, 2.90416660e+01, 2.95833325e+00, 5.12500000e+00, + 8.01250000e+01, 3.68750000e+01, 1.16666663e+00, 4.41666651e+00, + 3.80416679e+01, 92., 2.07083340e+01, 8.20833302e+00, + 5.17916679e+01, 5.43333321e+01, 1.06250000e+01, 9.58333302e+00, + 9.73333359e+01, 4.25000000e+01, 1.22083330e+01, 4.74166679e+01, + 104., 8.14583359e+01, 1.15416670e+01, 2.17916660e+01, + 5.69583321e+01, 1.76250000e+01, 4.29166651e+00, 4.96250000e+01, + 7.52916641e+01, 25., 2.87500000e+00, 1.25000000e+01, + 4.62500000e+01, 1.35833330e+01, 2.04166675e+00, 3.70833325e+00, + 1.40416670e+01, 3.75000000e+00, 1.75000000e+00, 4.20833349e+00, + 2.64583340e+01, 4.28444443e+01, 7.26666689e+00, 2.22222233e+00, + 1.76222229e+01, 2.14444447e+01, 3.88888884e+00, 7.06666660e+00, + 3.04222221e+01, 1.14222221e+02, 3.17777777e+00, 1.75555551e+00, + 3.78222237e+01, 4.96666679e+01, 2.91111112e+00, 3.91111112e+00, + 1.04777779e+02, 3.29111099e+01, 2.26666665e+00, 4.93333340e+00, + 99., 1.08466667e+02, 5.91111088e+00, 3.91111112e+00, + 3.06000004e+01, 1.74666672e+01, 4.11111116e+00, 7.13333321e+00, + 2.63777771e+01, 1.55111113e+01, 3.15555549e+00, 3.84444451e+00, + 1.71333332e+01, 9.51333313e+01, 5.93333340e+00, 2.75555563e+00, + 2.01777782e+01, 2.96222229e+01, 3.73333335e+00, 4.19999981e+00, + 8.11555557e+01, 1.12177780e+02, 3.53333330e+00, 3.08888888e+00, + 8.95777740e+01, 9.78666687e+01, 1.88888884e+00, 1.91111112e+00, + 1.00066666e+02, 3.39777794e+01, 4.77777767e+00, 5.42222214e+00, + 9.73555527e+01, 1.12111115e+02, 5.35555553e+00, 4.35555553e+00, + 2.93333340e+01, 1.69111118e+01, 7.28888893e+00, 7.86666679e+00, + 7.86666679e+00, 7.71111107e+00, 5.35555553e+00, 5.17777777e+00, + 1.56666670e+01, 1.09466667e+02, 1.66000004e+01, 7.06666660e+00, + 1.91333332e+01, 2.34222221e+01, 3.44444442e+00, 3.79999995e+00, + 8.44222260e+01, 7.03555527e+01, 1.45111113e+01, 1.65777779e+01, + 1.10888885e+02, 1.07311111e+02, 3.31111121e+00, 2.42222214e+00, + 4.54222221e+01, 3.26222229e+01, 7.40000010e+00, 8.22222233e+00, + 5.21333351e+01, 6.54666672e+01, 7.42222214e+00, 6.22222233e+00, + 2.58666668e+01, 1.38444443e+01, 6.48888874e+00, 6.08888912e+00, + 5.75555563e+00, 5.75555563e+00, 4.51111126e+00, 5.59999990e+00, + 8.88888931e+00, 6.15777779e+01, 1.51555557e+01, 1.06888885e+01, + 2.56000004e+01, 2.29333324e+01, 3.24444437e+00, 4.17777777e+00, + 4.88222237e+01, 2.20666676e+01, 1.10666666e+01, 1.83333340e+01, + 7.86444473e+01, 7.17777786e+01, 6.97777796e+00, 4.53333330e+00, + 1.67777786e+01, 1.55777779e+01, 5.84444427e+00, 6.42222214e+00, + 1.16888885e+01, 1.54666662e+01, 7.51111126e+00, 5.22222233e+00, + 1.34888887e+01, 5.97777796e+00, 4.42222214e+00, 3.57777786e+00, + 3.48888898e+00, 3.51111102e+00, 2.73333335e+00, 3.44444442e+00, + 4.84444427e+00, 2.00833340e+01, 2.20416660e+01, 6.98611116e+00, + 5.41666651e+00, 2.26250000e+01, 2.26388893e+01, 8.16666698e+00, + 4.45833349e+00, 1.38125000e+02, 9.17777786e+01, 3.06944442e+00, + 1.30555558e+00, 3.30555558e+00, 4.38888884e+00, 2.30555558e+00, + 1.27500000e+01, 1.04555557e+02, 5.85416679e+01, 7.16666651e+00, + 2.34722233e+00, 3.04166675e+00, 3.31944442e+00, 4.58333349e+00, + 1.39166670e+01, 1.48888893e+01, 1.16805553e+01, 4.22222233e+00, + 1.41666663e+00, 1.75000000e+00, 2.29166675e+00, 3.50000000e+00, + 5.02777767e+00, 2.97500000e+01, 6.98611116e+00, 5.48611116e+00, + 1.94861107e+01, 4.24583321e+01, 2.23888893e+01, 1.64166660e+01, + 2.84583340e+01, 1.44819443e+02, 2.04722214e+01, 2.54166675e+00, + 3.36111116e+00, 7.18055534e+00, 6.52777767e+00, 4., + 9.90416641e+01, 1.26694443e+02, 4.37222214e+01, 8.51388931e+00, + 3.94444442e+00, 4.13888884e+00, 5.16666651e+00, 6.50000000e+00, + 4.31250000e+01, 2.49583340e+01, 1.93611107e+01, 4.06944466e+00, + 9.44444418e-01, 8.47222209e-01, 1.97222221e+00, 3.31944442e+00, + 8.06944466e+00, 2.97222214e+01, 2.98611116e+00, 1.28194447e+01, + 3.36527786e+01, 2.44583340e+01, 1.26944447e+01, 3.73055573e+01, + 1.07916664e+02, 1.30819443e+02, 9.37500000e+00, 5.27777767e+00, + 1.32500000e+01, 1.06250000e+01, 5.83333349e+00, 1.24166670e+01, + 1.44555557e+02, 9.65694427e+01, 3.07777786e+01, 8.75000000e+00, + 6.62500000e+00, 5.51388884e+00, 6.04166651e+00, 8.84722233e+00, + 5.97916679e+01, 2.81527786e+01, 1.55277777e+01, 2.88888884e+00, + 8.19444418e-01, 7.36111104e-01, 2.15277767e+00, 3.80555558e+00, + 1.26527777e+01, 1.63611107e+01, 4.18055534e+00, 1.73194447e+01, + 2.38333340e+01, 5.44444466e+00, 4.58333349e+00, 6.31111107e+01, + 1.29500000e+02, 5.54305573e+01, 1.07638893e+01, 8.12500000e+00, + 1.91388893e+01, 8.41666698e+00, 6.51388884e+00, 2.49583340e+01, + 1.11277779e+02, 5.06111107e+01, 1.63055553e+01, 4.43055534e+00, + 5.12500000e+00, 5.34722233e+00, 7., 1.48750000e+01, + 4.61250000e+01, 1.91250000e+01, 8.09722233e+00, 1.65277779e+00, + 6.66666687e-01, 7.36111104e-01, 1.80555558e+00, 4.73611116e+00, + 1.26388893e+01, 6.54074097e+01, 1.51481485e+01, 2.55555558e+00, + 1.66296291e+01, 2.96296291e+01, 7.48148155e+00, 7.14814806e+00, + 4.64074059e+01, 1.15481483e+02, 4.79259262e+01, 2.17037029e+01, + 2.97037029e+01, 8.29629593e+01, 3.30740738e+01, 1.64814816e+01, + 5.65925941e+01, 3.60740738e+01, 2.82592602e+01, 14., + 1.65925922e+01, 1.09148148e+02, 9.39629593e+01, 4.97037048e+01, + 9.11111069e+00, 2.75185184e+01, 2.18888893e+01, 1.66666663e+00, + 1.96296299e+00, 1.70740738e+01, 3.15925922e+01, 1.14074078e+01, + 5.03703690e+00, 9.48148117e+01, 6.96296310e+00, 3.11111116e+00, + 2.32962971e+01, 3.52962952e+01, 6.40740728e+00, 1.03333330e+01, + 9.75925903e+01, 73., 2.54074078e+01, 2.67777786e+01, + 4.05185204e+01, 3.79629631e+01, 1.95555553e+01, 2.14444447e+01, + 8.21851883e+01, 1.54444447e+01, 3.77777786e+01, 2.30740738e+01, + 1.74444447e+01, 7.47777786e+01, 9.92222214e+01, 4.65555573e+01, + 1.02592592e+01, 2.79259262e+01, 2.44444447e+01, 2.85185194e+00, + 3.07407403e+00, 8.18888855e+01, 8.32592621e+01, 1.04074078e+01, + 4.14814806e+00, 1.23814812e+02, 1.83703709e+01, 2.25925922e+00, + 1.49629631e+01, 4.61851845e+01, 1.34444447e+01, 1.85185182e+00, + 2.64074078e+01, 6.24074059e+01, 3.12592602e+01, 1.27037039e+01, + 2.29629631e+01, 3.96666679e+01, 1.42592592e+01, 7.22222233e+00, + 1.71851845e+01, 1.35555553e+01, 2.08518524e+01, 1.16666670e+01, + 2.57037029e+01, 5.34814796e+01, 2.44814816e+01, 8.81481457e+00, + 7.92592573e+00, 2.31481476e+01, 1.35185184e+01, 3., + 8.25925922e+00, 1.12259262e+02, 5.61111107e+01, 2.22222233e+00, + 4.37037039e+00, 1.06777779e+02, 2.22962971e+01, 1.70370376e+00, + 7.66666651e+00, 3.01851845e+01, 1.97037029e+01, 2.70370364e+00, + 5.88888884e+00, 5.08518524e+01, 3.15925922e+01, 7.22222233e+00, + 1.03703699e+01, 2.99629631e+01, 1.87407398e+01, 5.07407427e+00, + 4.44444466e+00, 1.21851854e+01, 1.38888893e+01, 7.11111116e+00, + 1.68148155e+01, 3.15185184e+01, 1.12962961e+01, 6.77777767e+00, + 8.14814854e+00, 1.31481485e+01, 4.33333349e+00, 2.22222233e+00, + 1.56296301e+01, 8.50370407e+01, 2.38518524e+01, 3.66666675e+00, + 7.66666651e+00, 1.95238090e+00, 6.90476179e-01, 1.73809528e+00, + 2.40476179e+00, 2.97619057e+00, 2.04761910e+00, 2.71428561e+00, + 2.73809528e+00, 2.04761906e+01, 6.16666651e+00, 4.19047642e+00, + 6., 5.50000000e+00, 1.23571424e+01, 2.61904755e+01, 24., + 1.89523811e+01, 9.80952358e+00, 3.90476179e+00, 3.88095236e+00, + 8.11904716e+00, 3.91904755e+01, 3.99761887e+01, 2.15714283e+01, + 7.64285707e+00, 9.66666698e+00, 3.47619057e+00, 1.35714281e+00, + 3.14285707e+00, 1.95238094e+01, 12., 6.04761887e+00, + 7.52380943e+00, 5.88095236e+00, 5.90476179e+00, 4.50000000e+00, + 4.45238113e+00, 4.59523821e+00, 5.50000000e+00, 4.38095236e+00, + 7.45476227e+01, 8.10714264e+01, 1.16904764e+01, 8.61904716e+00, + 8.33333302e+00, 3.15238094e+01, 4.34285698e+01, 4.69047623e+01, + 5.74523811e+01, 1.01952377e+02, 10., 3.14285707e+00, + 1.63809528e+01, 1.26309525e+02, 7.41904755e+01, 3.90476189e+01, + 1.27142859e+01, 4.66428566e+01, 8.92857170e+00, 1.66666663e+00, + 1.43809528e+01, 1.08285713e+02, 35., 8.04761887e+00, + 2.19047618e+00, 2.35714293e+00, 2.28571439e+00, 1.38095236e+00, + 3.69047618e+00, 1.06666670e+01, 1.00238094e+01, 2.38095236e+00, + 2.89523811e+01, 7.88095245e+01, 1.01428576e+01, 4.85714293e+00, + 1.46666670e+01, 3.58333321e+01, 1.96190472e+01, 9.30952358e+00, + 4.89047623e+01, 1.51166672e+02, 1.91428566e+01, 1.88095236e+00, + 1.75000000e+01, 9.68571396e+01, 1.70476189e+01, 6.59523821e+00, + 2.27380943e+01, 1.16119049e+02, 1.23809528e+01, 5.95238090e-01, + 1.86904755e+01, 1.45595245e+02, 2.31190472e+01, 2.30952382e+00, + 7.61904776e-01, 4.76190478e-01, 5.47619045e-01, 9.28571403e-01, + 1.90476191e+00, 6.50000000e+00, 7.85714293e+00, 1.38095236e+00, + 3.83333325e+00, 10., 3.69047618e+00, 3.76190472e+00, + 8.90476227e+00, 3.04523811e+01, 1.60714283e+01, 5.21428585e+00, + 2.19285717e+01, 8.74761887e+01, 6.69047642e+00, 1.80952382e+00, + 8.26190472e+00, 5.50238113e+01, 1.63333340e+01, 7.09523821e+00, + 3.17619057e+01, 1.43238098e+02, 9.95238113e+00, 4.28571433e-01, + 1.29047623e+01, 8.21666641e+01, 1.08809528e+01, 2.61904764e+00, + 1.69846153e+01, 6.52307701e+00, 1.84615386e+00, 5.36923075e+00, + 1.83999996e+01, 1.34153843e+01, 3.04615378e+00, 1.35384619e+00, + 1.29569229e+02, 6.79538498e+01, 2.23076916e+00, 5.13846159e+00, + 9.08615417e+01, 4.24615402e+01, 2.86153841e+00, 6.56923056e+00, + 4.34000015e+01, 2.39692307e+01, 6.03076935e+00, 5.63076925e+00, + 1.06861542e+02, 6.07846146e+01, 3.10769224e+00, 1.16307688e+01, + 3.55230751e+01, 2.95538464e+01, 9.01538467e+00, 2.18461537e+00, + 2.24615383e+00, 3.15384626e+00, 2.84615374e+00, 1.51999998e+01, + 3.56923079e+00, 3.24615383e+00, 2.21538472e+00, 6.12307692e+00, + 2.13846149e+01, 2.00461540e+01, 5.29230785e+00, 1.66153848e+00, + 1.17707695e+02, 1.16461540e+02, 3.10769224e+00, 5.46153831e+00, + 4.28615379e+01, 4.42000008e+01, 6.13846159e+00, 3.29230762e+00, + 6.96153870e+01, 9.59076920e+01, 6.03076935e+00, 3.53846145e+00, + 1.09984619e+02, 1.28815384e+02, 4.84615374e+00, 4.32307673e+00, + 2.97846146e+01, 3.58769226e+01, 1.76000004e+01, 3.90769219e+00, + 1.03230772e+01, 3.44153862e+01, 3.66153836e+00, 6.59999990e+00, + 1.23076928e+00, 1.47692311e+00, 2.15384626e+00, 4.58461523e+00, + 1.93230762e+01, 2.07846146e+01, 6.15384626e+00, 1.83076918e+00, + 2.87230778e+01, 6.86615372e+01, 4.16923094e+00, 7.06153870e+00, + 2.26000004e+01, 2.86769238e+01, 9.04615402e+00, 2.86153841e+00, + 5.68615379e+01, 1.32199997e+02, 1.40153847e+01, 3.10769224e+00, + 3.78461533e+01, 1.18230766e+02, 1.08923073e+01, 2.73846149e+00, + 1.45076923e+01, 6.83692322e+01, 1.82615376e+01, 2.79999995e+00, + 1.64615383e+01, 1.28830765e+02, 3.22000008e+01, 2.79999995e+00, + 1.06153846e+00, 1.06153846e+00, 1.72307694e+00, 2.50769234e+00, + 1.15384617e+01, 1.90615387e+01, 6.36923075e+00, 1.81538463e+00, + 1.69230771e+00, 3.87692308e+00, 2.49230766e+00, 3.76923084e+00, + 1.69846153e+01, 3.09076920e+01, 1.13538465e+01, 2.58461547e+00, + 8.12307739e+00, 9.22153854e+01, 1.31538458e+01, 3.29230762e+00, + 1.18615389e+01, 2.94923077e+01, 1.10461540e+01, 2.90769219e+00, + 4.33846140e+00, 1.23292305e+02, 5.45538445e+01, 1.87692308e+00, + 4.72307682e+00, 7.70307693e+01, 2.58461533e+01, 1.76923072e+00, + 1.27499998e+00, 4.49999988e-01, 1.14999998e+00, 1.46750002e+01, + 1.03750000e+01, 1.02499998e+00, 6.49999976e-01, 8.00000012e-01, + 3.49999994e-01, 1.74999997e-01, 2.97499990e+00, 2.27999992e+01, + 9.14999962e+00, 7.25000024e-01, 1.50000000e+00, 1.79999995e+00, + 3.75000000e-01, 7.25000024e-01, 4.94999981e+00, 1.25000000e+01, + 2.20000005e+00, 3.24999988e-01, 1.32500005e+00, 9.25000012e-01, + 9.75000024e-01, 3.52500010e+00, 2.82500005e+00, 1.72500002e+00, + 4.25000012e-01, 7.50000000e-01, 1.89999998e+00, 3.00000012e-01, + 9.39999962e+00, 5.52500010e+00, 1.24750004e+01, 9.90999985e+01, + 9.38750000e+01, 8.19999981e+00, 4.50000000e+00, 7.67500019e+00, + 5.62500000e+00, 2.22499990e+00, 1.89249992e+01, 1.15625000e+02, + 7.52750015e+01, 5.87500000e+00, 9.02499962e+00, 1.16750002e+01, + 4.27500010e+00, 8.05000019e+00, 3.15000000e+01, 5.02750015e+01, + 1.55000000e+01, 7.92500019e+00, 1.95000000e+01, 9.87500000e+00, + 9.67500019e+00, 2.66250000e+01, 2.29249992e+01, 9.10000038e+00, + 4.42500019e+00, 8.30000019e+00, 1.66749992e+01, 6.50000000e+00, + 1.45249996e+01, 5.34999990e+00, 7.50000000e+00, 9.48499985e+01, + 1.26550003e+02, 2.21250000e+01, 7.15000010e+00, 1.43500004e+01, + 2.04500008e+01, 5.57499981e+00, 1.18750000e+01, 8.78000031e+01, + 9.10999985e+01, 2.45000000e+01, 3.07999992e+01, 4.20750008e+01, + 2.30249996e+01, 2.25750008e+01, 2.93250008e+01, 3.27750015e+01, + 2.84750004e+01, 4.08750000e+01, 6.75500031e+01, 5.24249992e+01, + 2.01749992e+01, 3.34500008e+01, 2.73250008e+01, 1.48750000e+01, + 2.24500008e+01, 5.40499992e+01, 5.52000008e+01, 2.41000004e+01, + 2.71499996e+01, 1.28000002e+01, 7.22499990e+00, 3.32249985e+01, + 1.19375000e+02, 6.10250015e+01, 1.14499998e+01, 1.43000002e+01, + 5.86749992e+01, 2.04249992e+01, 1.31250000e+01, 3.77750015e+01, + 9.39250031e+01, 6.52249985e+01, 3.16499996e+01, 5.15250015e+01, + 4.30750008e+01, 3.25999985e+01, 2.95499992e+01, 3.71749992e+01, + 5.16749992e+01, 5.07500000e+01, 4.98250008e+01, 5.85250015e+01, + 2.37500000e+01, 2.63500004e+01, 2.71250000e+01, 3.15000000e+01, + 4.39000015e+01, 4.27750015e+01, 3.71500015e+01, 34., + 1.51666670e+01, 6.05000000e+01, 2.34166660e+01, 2.41666675e+00, + 1.75000000e+00, 3.88888884e+00, 3.66666675e+00, 2.88888884e+00, + 7.30555534e+00, 5.06111107e+01, 5.21111107e+01, 1.00277777e+01, + 1.52777779e+00, 3.61111116e+00, 5.47222233e+00, 4.55555534e+00, + 2.97222233e+00, 1.77777786e+01, 5.33611107e+01, 26., 9., + 3.61111116e+00, 6.13888884e+00, 6.86111116e+00, 3.44444442e+00, + 3.50000000e+00, 2.84444447e+01, 2.89722214e+01, 1.21944447e+01, + 5.22222233e+00, 1.34444447e+01, 4.04166679e+01, 6.25000000e+00, + 4.97222214e+01, 4.45000000e+01, 1.50000000e+00, 1.25000000e+00, + 5.39722214e+01, 1.14888885e+02, 5.97222233e+00, 4.05555534e+00, + 4.43333321e+01, 7.48333359e+01, 8.75000000e+00, 1.11111116e+00, + 1.33333330e+01, 1.20638885e+02, 2.45555553e+01, 3.33333325e+00, + 1.86666660e+01, 8.52222214e+01, 4.04444427e+01, 3.41666675e+00, + 2.86111116e+00, 1.12222221e+02, 8.70277786e+01, 4.30555534e+00, + 4.08333349e+00, 8.41388855e+01, 1.10416664e+02, 3.77777767e+00, + 2.22222233e+00, 7.00277786e+01, 1.06194443e+02, 2.02777767e+00, + 5.96111107e+01, 1.20888885e+02, 4.19444466e+00, 4.41666651e+00, + 29., 7.06944427e+01, 6.08333349e+00, 3.80555558e+00, + 2.64166660e+01, 1.31694443e+02, 2.85000000e+01, 2.94444442e+00, + 1.40833330e+01, 1.02472221e+02, 21., 5.22222233e+00, + 7.30555534e+00, 1.29305557e+02, 9.08611145e+01, 3.33333325e+00, + 5.58333349e+00, 68., 4.11111107e+01, 5.30555534e+00, + 2.52777767e+00, 8.52777786e+01, 9.45833359e+01, 3.41666675e+00, + 5.69444466e+00, 2.34722214e+01, 2.38055553e+01, 1.33333337e+00, + 2.86111116e+00, 1.20555553e+01, 1.11111116e+00, 4.80555534e+00, + 1.73888893e+01, 1.71388893e+01, 5.36111116e+00, 3.27777767e+00, + 2.69444442e+00, 21., 3.91666675e+00, 3.44444442e+00, + 1.17500000e+01, 1.92222214e+01, 1.08888893e+01, 4.63888884e+00, + 1.88888884e+00, 9.94444466e+00, 4.66666651e+00, 2.52777767e+00, + 7.80555534e+00, 1.66388893e+01, 1.40277777e+01, 4.52777767e+00, + 1.61111116e+00, 1.50000000e+00, 1.55555558e+00, 1.61111116e+00, + 4.97222233e+00, 1.48888893e+01, 1.61944447e+01, 4., + 5.84782600e+00, 1.09130430e+01, 8.78260899e+00, 6.06521749e+00, + 4.18695641e+01, 1.13760872e+02, 2.49130440e+01, 1.54347825e+00, + 3.43478251e+00, 1.01956520e+01, 1.14347830e+01, 1.58913040e+01, + 1.17260872e+02, 105., 3.26086950e+00, 4.34782594e-01, + 6.80434799e+00, 9.69565201e+00, 5.84782600e+00, 2.72173920e+01, + 1.30173920e+02, 5.74347839e+01, 4.13043469e-01, 1.36956525e+00, + 3.16739140e+01, 1.37608700e+01, 6.41304350e+00, 3.80217400e+01, + 8.81739120e+01, 8.10869598e+00, 8.69565234e-02, 15., + 2.96304340e+01, 4.31956520e+01, 3.35434799e+01, 2.56304340e+01, + 2.78913040e+01, 4.06521721e+01, 1.67826080e+01, 9.80434799e+00, + 2.54347820e+01, 3.51521721e+01, 5.05000000e+01, 6.20217400e+01, + 6.95434799e+01, 2.52608700e+01, 3.76086950e+00, 3.28260875e+00, + 1.62826080e+01, 2.39782600e+01, 2.70217400e+01, 7.22826080e+01, + 1.01282608e+02, 1.09565220e+01, 8.04347813e-01, 2.89130425e+00, + 9.91304302e+00, 5.19565201e+00, 7.02173901e+00, 1.10152176e+02, + 1.17826088e+02, 2.39130425e+00, 3.69565219e-01, 1.17391300e+01, + 2.17608700e+01, 3.61739120e+01, 3.97608681e+01, 2.98913040e+01, + 9.08695698e+00, 7.65217400e+00, 9.19565201e+00, 7.56521749e+00, + 2.07608700e+01, 3.90217400e+01, 7.51956558e+01, 6.28260880e+01, + 1.47173910e+01, 3.56521749e+00, 2.86956525e+00, 1.21956520e+01, + 2.41086960e+01, 2.93695660e+01, 4.55869560e+01, 6.59130402e+01, + 2.39347820e+01, 1.41304350e+00, 1.97826087e+00, 9.43478298e+00, + 1.07391300e+01, 5.80434799e+00, 1.94565220e+01, 1.15847824e+02, + 5.20652161e+01, 5.65217376e-01, 1.54347825e+00, 4.41304350e+00, + 1.74782600e+01, 3.75869560e+01, 4.03913040e+01, 1.95434780e+01, + 4.30434799e+00, 1.67391300e+00, 2.15217400e+00, 7.65217400e+00, + 9.56521702e+00, 2.66739140e+01, 6.05217400e+01, 4.31521721e+01, + 7.97826099e+00, 4.06521749e+00, 5.13043499e+00, 22., + 1.36521740e+01, 1.53260870e+01, 4.73043480e+01, 4.08043480e+01, + 7.58695650e+00, 4.19565201e+00, 1.04347830e+01, 1.13695650e+01, + 5.89130449e+00, 4.86956501e+00, 6.86956558e+01, 1.04934784e+02, + 5.08695650e+00, 7.82608688e-01, 3.60869575e+00, 1.23658533e+01, + 1.09268293e+01, 7.97560978e+00, 6.63414621e+00, 1.68048782e+01, + 2.69512196e+01, 3.05121956e+01, 1.79756088e+01, 2.21463413e+01, + 1.48048782e+01, 5.21951199e+00, 1.22439022e+01, 1.29121948e+02, + 1.17365852e+02, 2.63658543e+01, 1.67804871e+01, 2.82195129e+01, + 1.56341467e+01, 2.70731711e+00, 1.29512196e+01, 9.94878082e+01, + 5.84146347e+01, 1.03414631e+01, 9.02439022e+00, 1.53658533e+00, + 7.31707335e-01, 1.21951222e-01, 2.19512194e-01, 4.14634138e-01, + 1.70731708e-01, 5.85365832e-01, 7.56097555e-01, 1.79024391e+01, + 2.06097565e+01, 2.81951218e+01, 2.15853653e+01, 1.22195120e+01, + 1.94634151e+01, 3.48292694e+01, 31., 2.98292675e+01, + 1.00731707e+01, 1.79756088e+01, 1.14585365e+02, 1.41268295e+02, + 3.90975609e+01, 2.62439022e+01, 4.69512177e+01, 2.43658543e+01, + 7.31707335e+00, 3.21951222e+00, 6.37804871e+01, 1.26146339e+02, + 2.39024391e+01, 1.34146338e+01, 2.00975609e+01, 1.53658533e+00, + 5.36585391e-01, 1.70731708e-01, 1.21951222e-01, 2.43902430e-02, + 9.75609720e-02, 3.65853667e-01, 1., 8.80487823e+00, + 3.34390259e+01, 1.39658539e+02, 1.06048782e+02, 1.01219511e+01, + 2.11219521e+01, 7.30487823e+01, 4.40243912e+01, 1.63414631e+01, + 6.07317066e+00, 8.49756088e+01, 1.44390244e+02, 7.64634171e+01, + 1.03658533e+01, 3.19512196e+01, 5.44634132e+01, 1.57317076e+01, + 4.80487823e+00, 6., 4.81707306e+01, 3.34390259e+01, + 5.78048801e+00, 1.58536587e+01, 3.15609760e+01, 5.12195110e-01, + 2.19512194e-01, 1.46341458e-01, 1.46341458e-01, 1.46341458e-01, + 7.31707290e-02, 4.87804890e-01, 9.75609779e-01, 4.56097555e+00, + 1.12682924e+01, 8.91219482e+01, 4.23414650e+01, 6.68292665e+00, + 5.43902445e+00, 2.01951218e+01, 2.03902435e+01, 7.34146357e+00, + 3.17073178e+00, 2.67317066e+01, 3.65121956e+01, 4.34146357e+00, + 6.70731688e+00, 1.81951218e+01, 2.46829262e+01, 4.36585379e+00, + 2.85365844e+00, 3.95121956e+00, 3.97560978e+00, 2.75609756e+00, + 3.21951222e+00, 7.39024401e+00, 1.36829271e+01, 4.87804860e-02, + 1.21951222e-01, 1.46341458e-01, 9.75609720e-02, 1.46341458e-01, + 7.31707290e-02, 1.95121944e-01, 2.19512194e-01, 2.32608700e+00, + 2.91304350e+00, 9.28260899e+00, 1.42826090e+01, 5.13043499e+00, + 2.84782600e+00, 2.67391300e+00, 1.08695650e+00, 1.78260875e+00, + 3.47826076e+00, 1.59565220e+01, 2.05869560e+01, 6.89130449e+00, + 3.06521749e+00, 6.34782600e+00, 3.89130425e+00, 4.50000000e+00, + 5.17391300e+00, 1.63913040e+01, 1.48913040e+01, 5.15217400e+00, + 2.93478251e+00, 2.86521740e+01, 2.10217400e+01, 2.54347825e+00, + 4.56521749e+00, 1.23695650e+01, 7.63043499e+00, 2.78260875e+00, + 5.52173901e+00, 59., 1.76304340e+01, 5.67391300e+00, + 3.36956525e+00, 1.57608700e+01, 2.48478260e+01, 9.10869598e+00, + 2.93478251e+00, 6.76086950e+00, 2.58260860e+01, 3.76086950e+00, + 3.28260875e+00, 2.64565220e+01, 4.36304359e+01, 7.39130449e+00, + 2.71739125e+00, 67., 1.20130432e+02, 3.56521749e+00, + 4.02173901e+00, 9.42608719e+01, 9.01086960e+01, 4.04347849e+00, + 4., 1.17869568e+02, 1.18847824e+02, 2.36956525e+00, + 7.54347849e+00, 1.19282608e+02, 5.49565201e+01, 2.19565225e+00, + 9.06521702e+00, 1.06086960e+02, 3.73695641e+01, 2.49782600e+01, + 1.71739125e+00, 9.19565201e+00, 5.69347839e+01, 1.09130430e+01, + 2.28260875e+00, 1.64565220e+01, 1.23043480e+02, 1.01086960e+01, + 2.45652175e+00, 5.85652161e+01, 1.28521744e+02, 1.54347830e+01, + 3.08695650e+00, 4.15000000e+01, 1.22173912e+02, 9.91304302e+00, + 6.28260851e+00, 9.14130402e+01, 1.11695656e+02, 3.58695650e+00, + 8.30434799e+00, 38., 3.41956520e+01, 7.50000000e+00, + 7.78260851e+00, 6.28043480e+01, 2.23478260e+01, 1.89130437e+00, + 1.41086960e+01, 3.18043480e+01, 1.51086960e+01, 4.11521721e+01, + 1.71739125e+00, 5.04347849e+00, 1.13108696e+02, 5.29782600e+01, + 1.54347825e+00, 4.80434799e+00, 9.40652161e+01, 1.43260870e+01, + 5.54347849e+00, 8.45652199e+00, 9.01521759e+01, 2.06956520e+01, + 3.17391300e+00, 1.77391300e+01, 3.11739140e+01, 1.59782610e+01, + 5.36956501e+00, 5.26086950e+00, 4.65217400e+00, 1.47826087e+00, + 8.45652199e+00, 3.88478279e+01, 33., 9.06521702e+00, + 2.30434775e+00, 1.69565213e+00, 1.30434787e+00, 2.80434775e+00, + 1.45652170e+01, 3.88478279e+01, 2.77173920e+01, 3., + 2.42647052e+00, 2.22058821e+00, 3.16176462e+00, 4.72058821e+00, + 4.83823538e+00, 5.72058821e+00, 3.51470590e+00, 4.83823538e+00, + 3.38235283e+00, 4.50000000e+00, 6.13235283e+00, 5.26470566e+00, + 4.92647076e+00, 6.38235283e+00, 6.63235283e+00, 5.94117641e+00, + 3.05882359e+00, 7.36764717e+00, 1.02058821e+01, 5.33823538e+00, + 5.72058821e+00, 9.82352924e+00, 1.07352943e+01, 7.57352924e+00, + 2.29411769e+00, 6.76470566e+00, 1.05588236e+01, 4.64705896e+00, + 5.27941179e+00, 1.93970585e+01, 2.29264698e+01, 4.76470566e+00, + 3.10294127e+00, 1.06617651e+01, 1.46176472e+01, 6.42647076e+00, + 8.39705849e+00, 2.26911774e+01, 1.76470585e+01, 4.83823538e+00, + 2.80882359e+00, 1.87205887e+01, 2.46764698e+01, 5.89705896e+00, + 7.55882359e+00, 6.78823547e+01, 6.73235321e+01, 4.54411745e+00, + 2.45588231e+00, 2.03823528e+01, 2.76470585e+01, 7.14705896e+00, + 1.07352943e+01, 1.10058823e+02, 1.04397057e+02, 6.48529434e+00, + 2.27941179e+00, 2.29117641e+01, 3.63823547e+01, 1.47647057e+01, + 1.83382359e+01, 9.29558792e+01, 7.65441208e+01, 4.92647076e+00, + 3.36764717e+00, 2.34852943e+01, 2.81176472e+01, 2.44117641e+00, + 4.61764717e+00, 9.48970566e+01, 9.92500000e+01, 2.05882359e+00, + 2.20588231e+00, 6.82941208e+01, 7.68823547e+01, 1.86764705e+00, + 2.64705873e+00, 1.14088234e+02, 1.08823532e+02, 1.91176474e+00, + 2.35294127e+00, 1.08073532e+02, 1.11088234e+02, 5.58823538e+00, + 4.75000000e+00, 8.23235321e+01, 8.13235321e+01, 2.66176462e+00, + 4.75000000e+00, 9.19558792e+01, 1.02102943e+02, 1.02794113e+01, + 5.77941179e+00, 3.18970585e+01, 3.18970585e+01, 5.75000000e+00, + 5.95588255e+00, 8.32794113e+01, 8.86764679e+01, 3.52941179e+00, + 2.10294127e+00, 3.88529396e+01, 4.75588226e+01, 2., + 2.42647052e+00, 1.05264709e+02, 1.09220589e+02, 2.97058821e+00, + 1.67647064e+00, 3.65000000e+01, 4.07500000e+01, 2.14705873e+00, + 2.11764717e+00, 6.59705887e+01, 7.49264679e+01, 4.48529434e+00, + 2.23529410e+00, 34., 3.95441170e+01, 2.82352948e+00, + 4.13235283e+00, 1.91764698e+01, 1.82647057e+01, 4.58823538e+00, + 3.19117641e+00, 1.88088226e+01, 2.14117641e+01, 2.88333344e+00, + 3.73333335e+00, 1.11999998e+01, 3.57333336e+01, 2.49666672e+01, + 5.88333321e+00, 2.81666660e+00, 3.04999995e+00, 5.76666689e+00, + 6.33333349e+00, 2.98166676e+01, 9.80999985e+01, 2.48500004e+01, + 6.30000019e+00, 5.23333311e+00, 8.50000000e+00, 4.80000019e+00, + 4.90000010e+00, 1.04500000e+02, 1.29149994e+02, 9.88333321e+00, + 4.75000000e+00, 9.73333359e+00, 1.31833334e+01, 3.15000010e+00, + 1.47333336e+01, 1.28616669e+02, 4.86166649e+01, 2.71666670e+00, + 3.88333344e+00, 1.11833334e+01, 6.68333340e+00, 4.56666660e+00, + 3.59999990e+00, 8.83333302e+00, 6.31166649e+01, 6.41333313e+01, + 1.30833330e+01, 4.28333330e+00, 4.50000000e+00, 7.43333340e+00, + 2.83333325e+00, 1.43500004e+01, 1.36016663e+02, 9.81999969e+01, + 5.96666670e+00, 4.80000019e+00, 1.14666662e+01, 8.75000000e+00, + 5.40000010e+00, 4.68666649e+01, 1.08699997e+02, 1.87999992e+01, + 3.95000005e+00, 1.65333328e+01, 2.65000000e+01, 5.59999990e+00, + 1.26166668e+01, 4.87500000e+01, 2.44166660e+01, 6.91666651e+00, + 1.66000004e+01, 4.13833351e+01, 2.12333336e+01, 6.63333321e+00, + 3.91666675e+00, 5.03333330e+00, 5.05166664e+01, 1.08183334e+02, + 2.00499992e+01, 3.56666660e+00, 3.79999995e+00, 1.12166662e+01, + 3.63333344e+00, 2.98333335e+00, 9.64166641e+01, 1.29983337e+02, + 1.23666668e+01, 3.59999990e+00, 9.01666641e+00, 3.70999985e+01, + 1.73500004e+01, 2.24166660e+01, 3.33833351e+01, 2.67999992e+01, + 1.01333332e+01, 2.16000004e+01, 5.02833328e+01, 1.93333340e+01, + 19., 4.59833336e+01, 3.11833324e+01, 2.16166668e+01, + 2.62666664e+01, 4.73666649e+01, 3.90666656e+01, 6.09999990e+00, + 5.63333321e+00, 5.11666679e+00, 1.25000000e+01, 9.73333359e+01, + 4.74333344e+01, 6., 3.33333325e+00, 1.50166664e+01, + 8.89999962e+00, 2.03333330e+00, 9.41666698e+00, 1.24033333e+02, + 7.59333344e+01, 4.31666660e+00, 5.94999981e+00, 3.37333336e+01, + 2.62666664e+01, 1.38666668e+01, 1.08166666e+01, 2.59500008e+01, + 2.21666660e+01, 1.31999998e+01, 1.81166668e+01, 1.68500004e+01, + 1.47166662e+01, 2.02500000e+01, 1.64500008e+01, 1.35333338e+01, + 1.18666668e+01, 2.08666668e+01, 2.04833336e+01, 3.19354844e+00, + 4.80645180e+00, 5.25806475e+00, 6.59139776e+00, 2.87849464e+01, + 7.69032288e+01, 2.30645161e+01, 4.20430088e+00, 3.40860224e+00, + 6.49462366e+00, 4.60215044e+00, 6.07526875e+00, 5.51505394e+01, + 1.42580643e+02, 4.44731178e+01, 4.47311831e+00, 7.97849464e+00, + 4.20430107e+01, 1.37311831e+01, 5.39784956e+00, 5.43548393e+01, + 147., 5.17634392e+01, 4.67741919e+00, 7.58064508e+00, + 9.42042999e+01, 5.43870964e+01, 4.96774197e+00, 2.79677410e+01, + 1.05827957e+02, 4.03010750e+01, 3.31182790e+00, 6.41935492e+00, + 1.03978491e+01, 1.26451616e+01, 1.09247313e+01, 1.92580643e+01, + 4.20107536e+01, 2.58064518e+01, 8.80645180e+00, 6.94623661e+00, + 9.98924732e+00, 1.11935482e+01, 1.08602152e+01, 2.80430107e+01, + 124., 72., 1.16666670e+01, 3.19354844e+00, 4.94623661e+00, + 4.93548393e+00, 5.25806475e+00, 2.10967751e+01, 1.51720428e+02, + 1.31279572e+02, 8.95698929e+00, 1.81720436e+00, 1.19677420e+01, + 7.16129017e+00, 1.60215056e+00, 1.14301071e+01, 1.50107529e+02, + 1.45204300e+02, 6.52688169e+00, 7.43010759e+00, 1.12903223e+01, + 1.44086018e+01, 1.08064518e+01, 1.34946232e+01, 1.82795696e+01, + 1.27311831e+01, 8.29032230e+00, 1.06666670e+01, 1.68924732e+01, + 1.94408607e+01, 1.51290321e+01, 1.92365589e+01, 3.41182785e+01, + 2.82150536e+01, 1.33870964e+01, 8.47311783e+00, 1.12903223e+01, + 1.33440857e+01, 1.31075268e+01, 1.82150536e+01, 6.00430107e+01, + 5.56774178e+01, 1.39139786e+01, 4.18279552e+00, 5.56989241e+00, + 6.78494644e+00, 5.67741919e+00, 1.07419357e+01, 9.10752716e+01, + 9.52473145e+01, 1.03870964e+01, 2.17204309e+00, 2.26881719e+00, + 2.56989241e+00, 2.01075268e+00, 2.58064508e+00, 3.95698929e+00, + 2.67741942e+00, 1.86021507e+00, 2.72043014e+00, 3.35483861e+00, + 4.18279552e+00, 3.86021495e+00, 4.17204285e+00, 5.87096786e+00, + 4.41935492e+00, 3.08602142e+00, 2.81720424e+00, 3.26881719e+00, + 4.22580624e+00, 4.40860224e+00, 4.56989241e+00, 5.72042990e+00, + 5.73118258e+00, 3.58064508e+00, 2.66666675e+00, 2.78494620e+00, + 3.50537634e+00, 2.74193549e+00, 2.98924732e+00, 5.76344109e+00, + 6.32258081e+00, 3.41935492e+00, 4.14545441e+00, 4.05454540e+00, + 5.52727270e+00, 1.66181812e+01, 4.23454552e+01, 1.90545464e+01, + 5.41818190e+00, 3.58181810e+00, 9.90909100e+00, 3.72727275e+00, + 2.94545460e+00, 9.94545441e+01, 1.36981812e+02, 1.20909090e+01, + 5.01818180e+00, 8.81818199e+00, 2.31818180e+01, 7.72727251e+00, + 1.14181814e+01, 7.33818207e+01, 5.44181824e+01, 4.96363640e+00, + 1.08181820e+01, 30., 2.01454544e+01, 1.23454542e+01, + 2.34181824e+01, 3.00181828e+01, 1.84363632e+01, 1.30363636e+01, + 2.83272724e+01, 3.53090897e+01, 5.03636360e+00, 4.07272720e+00, + 5.38181829e+00, 1.32545452e+01, 5.63818169e+01, 3.37090912e+01, + 8.01818180e+00, 3.47272730e+00, 1.15272732e+01, 5.40000010e+00, + 2.76363635e+00, 2.73272724e+01, 1.41781815e+02, 7.79636383e+01, + 4., 4.59999990e+00, 3.54545441e+01, 2.18181820e+01, + 1.22727270e+01, 2.39272728e+01, 7.41818161e+01, 2.73272724e+01, + 6.36363649e+00, 1.82545452e+01, 3.06909084e+01, 2.44181824e+01, + 2.10363636e+01, 2.50363636e+01, 2.24727268e+01, 1.46000004e+01, + 1.87454548e+01, 2.33090916e+01, 3.78181815e+00, 3.59999990e+00, + 4.89090919e+00, 9.63636398e+00, 3.37818184e+01, 3.96181831e+01, + 1.41272726e+01, 4.14545441e+00, 8.10909081e+00, 7.69090891e+00, + 3.54545450e+00, 6.47272730e+00, 1.28854538e+02, 1.39709091e+02, + 1.16727276e+01, 4.21818161e+00, 1.56000004e+01, 1.82909088e+01, + 7.34545469e+00, 5.30909109e+00, 6.90909119e+01, 1.29290909e+02, + 1.77636356e+01, 4.76363659e+00, 2.28363628e+01, 3.91272736e+01, + 3.05090904e+01, 1.28545456e+01, 1.12727270e+01, 2.90545464e+01, + 3.36363640e+01, 1.75272732e+01, 3.03636360e+00, 3.16363645e+00, + 3.59999990e+00, 5.32727289e+00, 1.69636364e+01, 2.83636360e+01, + 1.46181822e+01, 3.56363630e+00, 4.49090910e+00, 7., + 4.59999990e+00, 6.76363659e+00, 3.47999992e+01, 9.59090881e+01, + 2.43272724e+01, 5.70909071e+00, 4.01818180e+00, 1.14909086e+01, + 6.54545450e+00, 3.61818171e+00, 1.92000008e+01, 1.41781815e+02, + 73., 3.85454535e+00, 5.01818180e+00, 1.57454548e+01, + 1.52909088e+01, 4.50909090e+00, 3.12727284e+00, 9.09636383e+01, + 1.15218185e+02, 5.96363640e+00, 2.27735844e+01, 2.45660381e+01, + 2.26603775e+01, 1.59811325e+01, 13., 5.90566015e+00, + 8.03773594e+00, 1.45660381e+01, 1.48490562e+01, 1.91886787e+01, + 2.80754719e+01, 3.77358475e+01, 2.36037731e+01, 1.06603775e+01, + 9.77358532e+00, 1.17358494e+01, 2.35849056e+01, 2.48301888e+01, + 2.03207550e+01, 2.47358494e+01, 3.55094337e+01, 2.49622650e+01, + 7.05660391e+00, 1.51509438e+01, 7.77358484e+00, 8.54716969e+00, + 3.33962274e+00, 1.51509438e+01, 1.24433960e+02, 5.66603775e+01, + 1.30188680e+00, 1.92452836e+00, 2.38490562e+01, 3.82641525e+01, + 3.40943413e+01, 2.93962269e+01, 1.65471706e+01, 3.54716992e+00, + 3.84905672e+00, 9.13207531e+00, 2.51698112e+01, 3.23396225e+01, + 3.82075462e+01, 4.61886787e+01, 3.18113213e+01, 7.58490562e+00, + 7.94339609e+00, 2.04528294e+01, 3.89433975e+01, 2.95094337e+01, + 2.42641506e+01, 4.08113213e+01, 3.54150925e+01, 9.69811344e+00, + 8.09433937e+00, 2.75283012e+01, 1.10754719e+01, 6.79245281e+00, + 4.50943375e+00, 8.29433975e+01, 1.29301880e+02, 1.39433966e+01, + 1.52830184e+00, 3.94339633e+00, 1.65471706e+01, 3.97547188e+01, + 4.04905663e+01, 2.40188675e+01, 1.19056606e+01, 6.58490562e+00, + 1.16037731e+01, 1.65849056e+01, 2.76603775e+01, 2.51886787e+01, + 4.63207550e+01, 3.68867912e+01, 1.73962269e+01, 7.79245281e+00, + 1.27735853e+01, 3.78301888e+01, 2.91132069e+01, 1.42830191e+01, + 4.03207550e+01, 9.97924500e+01, 2.62452831e+01, 3.05660367e+00, + 5.54716969e+00, 2.67547169e+01, 7.73584890e+00, 2.86792445e+00, + 1.03773584e+01, 1.36075470e+02, 1.06132072e+02, 8.67924511e-01, + 8.11320782e-01, 5.26415110e+00, 6.90566015e+00, 5.38113213e+01, + 1.00245285e+02, 1.22830191e+01, 3.79245281e+00, 3.69811320e+00, + 8.92452812e+00, 7.03773594e+00, 8., 2.04528294e+01, + 1.19264153e+02, 6.26603775e+01, 1.66037738e+00, 2.13207555e+00, + 9.03773594e+00, 1.50188675e+01, 5.96226406e+00, 5.24528313e+00, + 1.03056602e+02, 1.35830185e+02, 7.33962250e+00, 5.66037714e-01, + 2.54716992e+00, 1.01886797e+01, 9.88679218e+00, 2.20754719e+00, + 2.32075462e+01, 1.19943398e+02, 2.52830181e+01, 3.39622647e-01, + 2.45283008e+00, 2.91886787e+01, 2.70270258e-01, 5.40540554e-02, + 2.97297299e-01, 5.67567587e-01, 3.51351351e-01, 0., + 1.08108111e-01, 3.78378391e-01, 1.62162161e+00, 1.05405402e+00, + 1.67567563e+00, 1.40540540e+00, 8.91891897e-01, 4.86486495e-01, + 1.62162161e+00, 3.18918920e+00, 1.08108103e+00, 1.43243241e+00, + 1.78378379e+00, 1.02702701e+00, 1.02702701e+00, 1.89189184e+00, + 4.56756735e+00, 2.56756759e+00, 1.02702701e+00, 9.45945919e-01, + 7.29729712e-01, 7.83783793e-01, 9.18918908e-01, 2., + 2.08108115e+00, 1.24324322e+00, 6.05405426e+00, 1.24324322e+00, + 2.59459448e+00, 4.51351357e+00, 2.83783793e+00, 7.83783793e-01, + 2.18918920e+00, 6.18918896e+00, 2.78918915e+01, 1.01351347e+01, + 1.34324322e+01, 1.36216221e+01, 9.05405426e+00, 1.12972975e+01, + 3.61891899e+01, 4.74594612e+01, 1.20270271e+01, 1.73783779e+01, + 2.27837830e+01, 8.05405426e+00, 6.64864874e+00, 4.52432442e+01, + 7.75135117e+01, 3.54864883e+01, 6.67567587e+00, 2.06486492e+01, + 1.75135136e+01, 3.45945954e+00, 5.13513517e+00, 3.26486473e+01, + 3.54864883e+01, 1.37567568e+01, 1.63243237e+01, 6.62162161e+00, + 3.29729724e+00, 4.21621609e+00, 4.75675678e+00, 3.91891885e+00, + 5.02702713e+00, 7.43243265e+00, 8.31621628e+01, 8.37567596e+01, + 3.32162170e+01, 1.16216221e+01, 1.20540543e+01, 2.28918915e+01, + 5.33783798e+01, 6.96756744e+01, 5.07297287e+01, 1.13702705e+02, + 5.37297287e+01, 4., 6.29729748e+00, 1.05594597e+02, + 1.27162163e+02, 6.28918915e+01, 9.45945930e+00, 6.08918915e+01, + 3.66216202e+01, 1.83783782e+00, 5.91891909e+00, 1.24783783e+02, + 1.08378380e+02, 1.25675678e+01, 3.37837839e+00, 3.72972965e+00, + 1.56756759e+00, 1.29729724e+00, 2.62162161e+00, 7., + 7.05405426e+00, 2.97297287e+00, 2.22432442e+01, 6.53783798e+01, + 2.98108101e+01, 5.08108091e+00, 1.28108110e+01, 3.50540543e+01, + 1.94054050e+01, 1.26756754e+01, 2.13783779e+01, 1.41297302e+02, + 8.50540543e+01, 2.97297287e+00, 9.86486530e+00, 52., + 3.37567558e+01, 8.45945930e+00, 1.01351347e+01, 1.31891891e+02, + 8.58648682e+01, 2.43243241e+00, 5.02702713e+00, 8.58378372e+01, + 5.14324341e+01, 4.48648643e+00, 2.93454552e+01, 3.08363628e+01, + 1.45454550e+01, 1.36363640e+01, 4.69090919e+01, 4.29090919e+01, + 8.12727261e+00, 8.52727318e+00, 2.53818188e+01, 2.84363632e+01, + 2.53454552e+01, 2.68363628e+01, 3.58909073e+01, 2.63999996e+01, + 1.19272728e+01, 1.49272728e+01, 2.03090916e+01, 1.31636362e+01, + 1.83636360e+01, 2.57272720e+01, 2.45454540e+01, 1.28545456e+01, + 1.21454544e+01, 2.48363628e+01, 3.43636360e+01, 7.18181801e+00, + 8.16363621e+00, 1.97272720e+01, 2.41636372e+01, 9.50909138e+00, + 7.72727251e+00, 3.90181808e+01, 8.45454502e+00, 2.13818188e+01, + 1.35272732e+01, 6.10909081e+00, 3.05636368e+01, 1.33254547e+02, + 5.05090904e+01, 3.56363630e+00, 1.32727270e+01, 2.32000008e+01, + 2.59272728e+01, 1.76545448e+01, 1.94727268e+01, 63., + 8.01818161e+01, 1.41999998e+01, 1.47090912e+01, 1.21272726e+01, + 2.22363644e+01, 2.60545464e+01, 1.35090914e+01, 9.81818199e+00, + 7.54181824e+01, 6.30545464e+01, 2.81454544e+01, 5.14545441e+00, + 1.04181814e+01, 1.99090900e+01, 1.02727270e+01, 3.49090910e+00, + 5.17272720e+01, 1.35327271e+02, 4.32727289e+00, 9.74545479e+00, + 6.70909071e+00, 4.19999981e+00, 1.10363636e+01, 1.18981819e+02, + 9.82545471e+01, 9.56363678e+00, 3.63636374e+00, 5.09090900e+00, + 8.94545460e+00, 4.87272739e+00, 5.78181839e+00, 1.07054543e+02, + 1.41345459e+02, 2.11636372e+01, 4.58181810e+00, 3.78181815e+00, + 6.83636379e+00, 5.25454569e+00, 4.07272720e+00, 2.23999996e+01, + 1.41090912e+02, 1.08418182e+02, 1.02545452e+01, 5.65454531e+00, + 6.38181829e+00, 9.23636341e+00, 4.36363649e+00, 1.02545452e+01, + 9.94363632e+01, 1.26309090e+02, 3.10909081e+00, 2.03636360e+00, + 1.60000002e+00, 2.65454555e+00, 6.45454550e+00, 1.96727276e+01, + 3.09454536e+01, 1.02909088e+01, 6.27272749e+00, 1.90909088e+00, + 1.83636367e+00, 2.58181810e+00, 8., 2.66000004e+01, + 5.15818176e+01, 2.17090912e+01, 8.16363621e+00, 2.78181815e+00, + 2.98181820e+00, 3.29090905e+00, 6.43636370e+00, 1.87272720e+01, + 4.76363640e+01, 2.86727276e+01, 7.96363640e+00, 6.38181829e+00, + 3.38181829e+00, 3.74545455e+00, 4.25454569e+00, 1.22545452e+01, + 2.42181816e+01, 1.92363644e+01, 1.40952377e+01, 6.45238113e+00, + 6.66666651e+00, 1.78095245e+01, 4.30476189e+01, 2.63333340e+01, + 1.34761906e+01, 8.76190472e+00, 1.07142854e+00, 1.19047618e+00, + 2.90476179e+00, 3.01904755e+01, 9.72857132e+01, 36., + 7.09523821e+00, 1.38095236e+00, 2.66666675e+00, 1.04761910e+00, + 2.92857146e+00, 2.37380943e+01, 5.83809509e+01, 1.91904755e+01, + 8.21428585e+00, 6.21428585e+00, 8.16428604e+01, 7.23809528e+00, + 1.42857146e+00, 9.73809528e+00, 3.59285698e+01, 7.64285707e+00, + 6.85714293e+00, 2.19761906e+01, 1.55476189e+01, 9.54761887e+00, + 1.97380943e+01, 6.10476189e+01, 6.35476189e+01, 2.75952377e+01, + 1.90476189e+01, 1.67142849e+01, 1., 5.47619045e-01, + 5.73809528e+00, 7.10952377e+01, 1.05833336e+02, 3.02619057e+01, + 7.78571415e+00, 2.61904764e+00, 6.33333349e+00, 1.07142854e+00, + 4.45238113e+00, 3.60714302e+01, 6.52380981e+01, 2.07380943e+01, + 1.41428576e+01, 1.54285717e+01, 1.01047623e+02, 1.47619045e+00, + 2.02380943e+00, 2.44285717e+01, 4.61904755e+01, 8., + 1.43095236e+01, 1.05523811e+02, 2.42857146e+00, 1.00476189e+01, + 4.33333321e+01, 8.45476227e+01, 3.97142868e+01, 5.73809528e+00, + 2.78571439e+00, 2.07142854e+00, 2.61904776e-01, 9.76190448e-01, + 1.37380953e+01, 6.94285736e+01, 6.46190491e+01, 1.26428576e+01, + 2.16666675e+00, 2.54761910e+00, 1.94523811e+01, 1.21428573e+00, + 6.16666651e+00, 3.49523811e+01, 3.84285698e+01, 1.34523811e+01, + 1.47857141e+01, 8.96190491e+01, 8.19047623e+01, 1.02380955e+00, + 2.16666675e+00, 8.55952377e+01, 5.00714302e+01, 3.54761910e+00, + 9.76190472e+00, 1.25500000e+02, 1.09523809e+00, 6.88095236e+00, + 2.63095245e+01, 3.42857132e+01, 1.52380953e+01, 5.02380943e+00, + 2.91666660e+01, 8.16666698e+00, 1.04761910e+00, 1.83333337e+00, + 1.95714283e+01, 3.64285698e+01, 1.86428566e+01, 7.71428585e+00, + 6.71904755e+01, 7.53095245e+01, 1.19047623e+01, 9.28571403e-01, + 2.03095245e+01, 8.80238113e+01, 1.19285717e+01, 5.16666651e+00, + 6.20238113e+01, 1.26142860e+02, 1.66190472e+01, 2.14285707e+00, + 9.21428585e+00, 1.15666664e+02, 2.65952377e+01, 1.50000000e+00, + 1.01190472e+01, 8.30714264e+01, 4.95833349e+00, 5.56944466e+00, + 1.07500000e+01, 1.65972214e+01, 9.19444466e+00, 6.86111116e+00, + 5.56944466e+00, 4.34722233e+00, 4.56944466e+00, 6.50000000e+00, + 3.27222214e+01, 4.97500000e+01, 1.03333330e+01, 5.33333349e+00, + 4.95833349e+00, 4.72222233e+00, 2.05555558e+00, 5.91666651e+00, + 6.92500000e+01, 7.51250000e+01, 7.81944466e+00, 2.55555558e+00, + 3.01388884e+00, 2.86111116e+00, 1.51388884e+00, 8.48611069e+00, + 8.07500000e+01, 4.93472214e+01, 3.41666675e+00, 1.50000000e+00, + 3.05555558e+00, 1.81944442e+00, 4.65277767e+00, 5.36111116e+00, + 2.30555553e+01, 7.92361145e+01, 2.10833340e+01, 5.87500000e+00, + 4.43055534e+00, 4.29166651e+00, 2.87500000e+00, 3.16666675e+00, + 7.35000000e+01, 1.29625000e+02, 1.85555553e+01, 2.77777767e+00, + 4.30555534e+00, 6.62500000e+00, 2.20833325e+00, 3.63888884e+00, + 1.13402779e+02, 1.26138885e+02, 7.45833349e+00, 2.15277767e+00, + 1.15694447e+01, 1.31250000e+01, 1.84722221e+00, 6.36111116e+00, + 1.16041664e+02, 6.62916641e+01, 2.31944442e+00, 2.22222233e+00, + 2.14722214e+01, 1.49305553e+01, 3.54166675e+00, 2.13888884e+00, + 1.62916660e+01, 1.27333336e+02, 4.63472214e+01, 2.94444442e+00, + 2.25000000e+00, 7.11111116e+00, 4.90277767e+00, 2., + 5.08888893e+01, 1.31805557e+02, 2.30555553e+01, 1.90277779e+00, + 5.83333349e+00, 2.27916660e+01, 7.23611116e+00, 2.56944442e+00, + 6.71388855e+01, 1.00180557e+02, 3.30555558e+00, 1.36111116e+00, + 2.10138893e+01, 5.99722214e+01, 4.04166651e+00, 2.40277767e+00, + 4.73472214e+01, 3.18888893e+01, 7.77777791e-01, 1.50000000e+00, + 5.51666679e+01, 7.02222214e+01, 4.77777767e+00, 8.47222209e-01, + 3.94444442e+00, 1.21680557e+02, 6.97500000e+01, 1.97222221e+00, + 1.65277779e+00, 1.06111107e+01, 1.89861107e+01, 1.86111116e+00, + 7.15277767e+00, 8.93194427e+01, 2.40277786e+01, 8.47222209e-01, + 3.86111116e+00, 5.15416679e+01, 2.76250000e+01, 1.59722221e+00, + 6.86111116e+00, 3.19444447e+01, 3.37500000e+00, 2.91666657e-01, + 1.62638893e+01, 1.08930557e+02, 1.49722223e+01, 2.23611116e+00, + 6.50000000e+00, 1.12500000e+01, 9.86111104e-01, 1.66666663e+00, + 3.33333321e+01, 6.98194427e+01, 9.50847435e+00, 1.45762711e+01, + 2.27118645e+01, 2.26440678e+01, 2.05762711e+01, 7.55932188e+00, + 8.76271152e+00, 1.39491529e+01, 1.69322033e+01, 2.58135586e+01, + 2.71355934e+01, 2.69830513e+01, 2.20508480e+01, 1.07457628e+01, + 9.10169506e+00, 1.18813562e+01, 2.14237289e+01, 1.85254230e+01, + 1.46610174e+01, 3.57796593e+01, 7.03389816e+01, 2.10508480e+01, + 1.22372885e+01, 1.19152546e+01, 5.47457647e+00, 3.35593224e+00, + 2.71186447e+00, 4.47796593e+01, 1.23152542e+02, 2.11864414e+01, + 4.71186447e+00, 2.38983059e+00, 1.05084743e+01, 1.76440678e+01, + 3.05762711e+01, 2.61355934e+01, 2.16949158e+01, 1.01186438e+01, + 1.33220339e+01, 1.61525421e+01, 1.89830513e+01, 1.34576273e+01, + 2.85932198e+01, 3.42033882e+01, 2.02033901e+01, 9.44067764e+00, + 1.22881355e+01, 2.22372875e+01, 1.31016951e+01, 8.94915295e+00, + 2.37966099e+01, 1.14898308e+02, 7.29152527e+01, 5.81355953e+00, + 3.33898306e+00, 8.57627106e+00, 6., 2.45762706e+00, + 7.74576283e+00, 1.16559319e+02, 1.03847458e+02, 1.88135588e+00, + 3.89830500e-01, 3.22033906e+00, 6.05084753e+00, 3.17627125e+01, + 1.06406776e+02, 3.52372894e+01, 7.18644047e+00, 5.91525412e+00, + 1.05423727e+01, 7.83050871e+00, 5.47457647e+00, 1.06271191e+01, + 1.15491524e+02, 1.11661018e+02, 4.37288141e+00, 1.42372882e+00, + 6.59322023e+00, 1.04576273e+01, 4.08474588e+00, 3.47457623e+00, + 6.93728790e+01, 1.30254242e+02, 2.44237289e+01, 3.89830500e-01, + 1.69491529e+00, 4.79661036e+00, 1.41864405e+01, 2.35593224e+00, + 1.73728809e+01, 1.00864410e+02, 2.92033901e+01, 4.91525412e-01, + 4.91525412e-01, 2.73389835e+01, 1., 1.99830513e+01, 121., + 2.97966099e+01, 1.33898306e+00, 1.41694918e+01, 1.51186438e+01, + 2.15254235e+00, 8.30508471e-01, 5.69491529e+00, 1.17203392e+02, + 9.27796631e+01, 1.71186435e+00, 3.22033906e+00, 1.50847454e+01, + 6.44067812e+00, 1.57627118e+00, 2.15254235e+00, 4.89830513e+01, + 9.08135605e+01, 4.76271200e+00, 1.10169494e+00, 2.25254230e+01, + 3.36779671e+01, 1.45932207e+01, 1.89830506e+00, 1.08644066e+01, + 3.23728828e+01, 4.64406776e+00, 8.30508471e-01, 2.84067802e+01, + 98., 7.78571415e+00, 6.28571415e+00, 4.52380943e+00, + 5.28571415e+00, 5.35714293e+00, 4.80952358e+00, 8.21428585e+00, + 7.07142878e+00, 5.56190491e+01, 7.45238113e+00, 3.14285707e+00, + 2.21190472e+01, 2.83809528e+01, 5.45238113e+00, 7.61904764e+00, + 4.00476189e+01, 1.09619049e+02, 3.26190472e+00, 1.61904764e+00, + 3.58333321e+01, 5.27619057e+01, 4.19047642e+00, 4.95238113e+00, + 9.57857132e+01, 2.40714283e+01, 3.23809528e+00, 3.78571439e+00, + 7.97857132e+01, 8.94523773e+01, 5.04761887e+00, 4.11904764e+00, + 2.05238094e+01, 1.33571424e+01, 8.83333302e+00, 4.04761887e+00, + 8.57142830e+00, 1.04761906e+01, 6.33333349e+00, 8.30952358e+00, + 1.03809528e+01, 1.10642860e+02, 5.69047642e+00, 3.19047618e+00, + 2.91190472e+01, 3.81904755e+01, 4.38095236e+00, 5.88095236e+00, + 1.00880951e+02, 1.02071426e+02, 1.85714281e+00, 2.09523821e+00, + 8.95000000e+01, 9.90952377e+01, 2.59523821e+00, 2.64285707e+00, + 9.10476227e+01, 3.14285717e+01, 3.54761910e+00, 4.42857122e+00, + 7.95000000e+01, 8.94285736e+01, 3.85714293e+00, 3.69047618e+00, + 2.55952377e+01, 2.25238094e+01, 7.76190472e+00, 4.07142878e+00, + 1.33571424e+01, 1.57142859e+01, 6.54761887e+00, 1.24761906e+01, + 2.85238094e+01, 1.16095238e+02, 8.64285755e+00, 5.69047642e+00, + 3.12380943e+01, 3.32619057e+01, 3.47619057e+00, 8.97619057e+00, + 1.10595238e+02, 5.75238113e+01, 5.28571415e+00, 6.38095236e+00, + 1.04595238e+02, 1.16976189e+02, 7.42857122e+00, 3.02380943e+00, + 4.40952377e+01, 3.15238094e+01, 4.92857122e+00, 4.97619057e+00, + 3.55476189e+01, 4.97857132e+01, 7.66666651e+00, 4.42857122e+00, + 2.49761906e+01, 3.48333321e+01, 8.11904716e+00, 4.30952358e+00, + 1.28333330e+01, 1.28571424e+01, 3.92857146e+00, 6.95238113e+00, + 4.14523811e+01, 8.07619019e+01, 1.92142849e+01, 1.61190472e+01, + 3.89761887e+01, 3.43809509e+01, 4.30952358e+00, 5.07142878e+00, + 6.33571434e+01, 2.44047623e+01, 7.38095236e+00, 1.06666670e+01, + 7.70238113e+01, 8.77857132e+01, 1.27619047e+01, 4.42857122e+00, + 1.94523811e+01, 1.65000000e+01, 4.45238113e+00, 4.38095236e+00, + 8.80952358e+00, 1.83095245e+01, 1.01428576e+01, 5.14285707e+00, + 1.44761906e+01, 2.61568623e+01, 5.58823538e+00, 6.79411774e+01, + 1.70705887e+02, 2.94313717e+01, 5.49019623e+00, 5.69803925e+01, + 1.58490189e+02, 6.54705887e+01, 7.68627453e+00, 1.30392160e+01, + 5.86274529e+01, 1.02745094e+01, 5.88235283e+00, 6.13333321e+01, + 1.68882355e+02, 3.83725471e+01, 1.21764708e+01, 8.49019623e+00, + 8., 7.86274529e+00, 1.17843142e+01, 4.60392151e+01, + 1.09196075e+02, 4.41176462e+00, 2.50980401e+00, 3.11764717e+00, + 2.96078420e+00, 2.11764717e+00, 3.66666675e+00, 9.96078396e+00, + 1.46862745e+01, 3.41176453e+01, 4.31372547e+00, 1.18823528e+01, + 3.79215698e+01, 5.23529434e+00, 9.21568584e+00, 1.01921570e+02, + 1.65176468e+02, 4.94901962e+01, 1.47843142e+01, 9.68627453e+00, + 1.31176472e+01, 1.14117651e+01, 1.76666660e+01, 7.35686264e+01, + 1.44470581e+02, 2.41176472e+01, 1.72549019e+01, 1.93725491e+01, + 2.00588226e+01, 2.14901962e+01, 2.70196075e+01, 3.82352943e+01, + 4.39411774e+01, 3.94117641e+00, 3.78431368e+00, 5.21568632e+00, + 5.21568632e+00, 4.01960802e+00, 5.17647076e+00, 6.23529434e+00, + 6.07843161e+00, 3.09803925e+01, 8.47058868e+00, 6.43137264e+00, + 6.80392170e+00, 6.96078444e+00, 15., 5.72352943e+01, + 9.44313736e+01, 2.76666660e+01, 1.83725491e+01, 1.50784311e+01, + 1.76470585e+01, 2.21372547e+01, 2.86666660e+01, 3.99803925e+01, + 4.40392151e+01, 1.39411764e+01, 16., 1.81568623e+01, + 1.91568623e+01, 2.46470585e+01, 2.61176472e+01, 2.07450981e+01, + 1.72745094e+01, 3.37254906e+00, 3.78431368e+00, 3.29411769e+00, + 2.58823538e+00, 3.09803915e+00, 4.25490189e+00, 4.84313726e+00, + 4.78431368e+00, 7.92156839e+00, 3.82352948e+00, 3.41176462e+00, + 4.54901981e+00, 5., 6.70588255e+00, 1.08431368e+01, + 1.35882349e+01, 6.80392170e+00, 6.60784292e+00, 6.11764717e+00, + 6.76470566e+00, 1.02549019e+01, 1.22745094e+01, 9.07843113e+00, + 7.90196085e+00, 5.76470566e+00, 5.11764717e+00, 5.17647076e+00, + 6.52941179e+00, 8.25490189e+00, 8.09803963e+00, 6.21568632e+00, + 4.90196085e+00, 1.21568632e+00, 1.03921568e+00, 1.19607842e+00, + 1.37254906e+00, 1.05882359e+00, 1.05882359e+00, 1.49019611e+00, + 1.31372547e+00, 3.59827576e+01, 4.62068987e+00, 4.79310322e+00, + 1.03103447e+01, 4.17241383e+00, 5.70689678e+00, 5.89827576e+01, + 9.89137955e+01, 3.06896553e+01, 1.59827585e+01, 1.38620691e+01, + 1.17068968e+01, 9.82758617e+00, 4.19827576e+01, 1.02896553e+02, + 7.98793106e+01, 1.54137936e+01, 1.66034489e+01, 1.12413797e+01, + 13., 4.38793106e+01, 1.01775864e+02, 7.10689621e+01, + 2.57931042e+01, 5.05172396e+00, 1.18275862e+01, 5.82758617e+00, + 7.20689678e+00, 5.68275871e+01, 6.99482727e+01, 1.42413797e+01, + 2.44827580e+00, 6.95000000e+01, 1.89655170e+01, 1.09482756e+01, + 1.34827585e+01, 9.96551704e+00, 7.12068987e+00, 3.02931042e+01, + 8.41379318e+01, 4.01724129e+01, 4.17413788e+01, 3.14482765e+01, + 2.48448277e+01, 2.22241383e+01, 2.59827595e+01, 4.34310341e+01, + 4.52068977e+01, 1.66551723e+01, 2.45862064e+01, 2.69310341e+01, + 4.20689659e+01, 8.55862045e+01, 8.02586212e+01, 2.93793106e+01, + 1.18620691e+01, 5.96551704e+00, 5.89655161e+00, 8.06896591e+00, + 2.66206894e+01, 1.03551727e+02, 6.59310379e+01, 4.53448296e+00, + 1.93103445e+00, 6.89827576e+01, 2.58965511e+01, 7.58620691e+00, + 9.55172443e+00, 1.37068968e+01, 1.30689659e+01, 2.09655170e+01, + 3.91206894e+01, 2.61724129e+01, 2.39137936e+01, 1.70689659e+01, + 1.68965511e+01, 2.20862064e+01, 2.89655170e+01, 2.46896553e+01, + 2.45862064e+01, 1.55517244e+01, 1.49482756e+01, 1.89482765e+01, + 5.61551743e+01, 8.82413788e+01, 3.44137917e+01, 1.20517244e+01, + 1.49655170e+01, 7.81034470e+00, 3.63793111e+00, 6.29310322e+00, + 5.13793106e+01, 1.10103447e+02, 2.72068958e+01, 1.94827580e+00, + 3.03448272e+00, 5.63620682e+01, 5.55862083e+01, 1.71724129e+01, + 7.65517235e+00, 1.12931032e+01, 1.73793106e+01, 1.58103447e+01, + 2.03448277e+01, 2.29482765e+01, 2.78793106e+01, 3.95000000e+01, + 4.03448257e+01, 2.86206894e+01, 2.82931042e+01, 2.57586212e+01, + 2.41034489e+01, 1.20689659e+01, 6.63793087e+00, 28., + 9.25689621e+01, 7.97068939e+01, 2.03965511e+01, 1.12931032e+01, + 1.67241383e+01, 7.12068987e+00, 1.55172420e+00, 9.22413826e+00, + 6.92413788e+01, 7.60172424e+01, 7.48275852e+00, 2.86206889e+00, + 7.05172396e+00, 7.30806427e+01, 1.20064514e+02, 3.75806451e+00, + 2.03225803e+00, 4.07419357e+01, 8.07096786e+01, 7.87096786e+00, + 4.79032278e+00, 3.65322571e+01, 3.76935501e+01, 4.88709688e+00, + 2.69354844e+00, 7.55161285e+01, 9.36451645e+01, 8.67741966e+00, + 6.93548393e+00, 2.07580643e+01, 1.94354839e+01, 6.61290312e+00, + 2.24193549e+00, 3.83870959e+00, 3.17741942e+00, 5.17741919e+00, + 5.95161295e+00, 4.87096786e+00, 3.75806451e+00, 1.35483873e+00, + 3.70967746e-01, 1.93548381e-01, 2.25806445e-01, 4.19354826e-01, + 9.35483873e-01, 1.20629036e+02, 8.82419357e+01, 2.20967746e+00, + 5.50000000e+00, 4.01451607e+01, 3.14677410e+01, 7.11290312e+00, + 7.87096786e+00, 1.05064514e+02, 6.02580643e+01, 3.48387098e+00, + 5.24193525e+00, 1.29209671e+02, 9.75161285e+01, 5.40322590e+00, + 7.61290312e+00, 2.59838715e+01, 1.87419357e+01, 6.06451607e+00, + 3.64516139e+00, 2.45000000e+01, 1.04193544e+01, 5.67741919e+00, + 9.32258034e+00, 7.56451607e+00, 4.75806475e+00, 1.45161295e+00, + 4.35483873e-01, 2.58064508e-01, 3.54838699e-01, 5.96774220e-01, + 1.46774197e+00, 1.17951614e+02, 2.30645161e+01, 1.90322578e+00, + 1.30645161e+01, 3.76451607e+01, 1.66129036e+01, 7.87096786e+00, + 1.97741928e+01, 1.29983871e+02, 3.28870964e+01, 2.24193549e+00, + 21., 1.36064514e+02, 4.19677429e+01, 2.62903237e+00, + 2.20483875e+01, 2.62258072e+01, 1.70161285e+01, 4.20967722e+00, + 6.37096786e+00, 5.32096786e+01, 9.80645180e+00, 3.35483861e+00, + 1.05483875e+01, 8.53225803e+00, 3.74193549e+00, 6.77419364e-01, + 3.87096763e-01, 3.22580636e-01, 4.67741936e-01, 6.61290348e-01, + 2.32258058e+00, 1.04403229e+02, 3.37096763e+00, 2.29032254e+00, + 2.13870964e+01, 3.35645180e+01, 9.16129017e+00, 6.72580624e+00, + 5.76451607e+01, 1.12048386e+02, 7.35483885e+00, 2., + 6.26935501e+01, 1.32887100e+02, 8.06451607e+00, 2.27419353e+00, + 5.01451607e+01, 2.55322590e+01, 1.14516125e+01, 2.33870959e+00, + 9.38709641e+00, 3.68709679e+01, 3.11290312e+00, 2.77419353e+00, + 1.31935482e+01, 6.90322590e+00, 2.24193549e+00, 3.54838699e-01, + 3.22580636e-01, 2.90322572e-01, 2.90322572e-01, 4.51612890e-01, + 2.72580647e+00, 1.43168316e+01, 1.18514854e+02, 7.72970276e+01, + 6.80198002e+00, 3.99009895e+00, 1.00297031e+01, 1.09504948e+01, + 5.87128735e+00, 3.71287117e+01, 9.04158401e+01, 2.90297031e+01, + 6.44554472e+00, 4.35643578e+00, 6.47524738e+00, 1.03564358e+01, + 1.08316832e+01, 2.39801979e+01, 2.89702969e+01, 1.48613863e+01, + 8.41584206e+00, 6.11881208e+00, 6.48514843e+00, 9.29702950e+00, + 1.22574253e+01, 6.22772264e+00, 7.19801998e+00, 5.42574263e+00, + 3.76237631e+00, 3.44554448e+00, 3.45544553e+00, 5.21782160e+00, + 4.71287107e+00, 2.45544548e+01, 1.37534653e+02, 59., + 4.76237631e+00, 6.61386156e+00, 1.49900990e+01, 9.05940628e+00, + 4.05940580e+00, 1.02900993e+02, 1.46722778e+02, 27., + 5.06930685e+00, 5.45544577e+00, 9.38613892e+00, 6.15841579e+00, + 9.15841579e+00, 6.27326736e+01, 7.58019791e+01, 1.80693073e+01, + 7.82178211e+00, 6.34653473e+00, 6.53465366e+00, 7.71287107e+00, + 1.46831684e+01, 1.13069305e+01, 1.29801979e+01, 7.42574263e+00, + 4.79207897e+00, 4.84158421e+00, 3.66336632e+00, 5.17821789e+00, + 5.84158421e+00, 2.63663368e+01, 4.88712883e+01, 1.32277231e+01, + 8.97029686e+00, 2.29009895e+01, 3.33069305e+01, 1.15643568e+01, + 6.73267317e+00, 1.43851486e+02, 1.42099014e+02, 7.07920790e+00, + 4.03960419e+00, 8.06930733e+00, 8.45544529e+00, 3.11881185e+00, + 8.10891056e+00, 1.27396042e+02, 9.93366318e+01, 1.42772274e+01, + 5.31683159e+00, 5.29702950e+00, 4.73267317e+00, 5.06930685e+00, + 1.64455452e+01, 1.78910885e+01, 1.92277222e+01, 6.76237631e+00, + 3.22772288e+00, 2.82178211e+00, 2.79207921e+00, 4.10891104e+00, + 6.64356422e+00, 2.00099010e+01, 1.45247526e+01, 5.69306946e+00, + 1.17326736e+01, 3.79901009e+01, 2.96831684e+01, 8.83168316e+00, + 1.25742579e+01, 1.40514847e+02, 4.25940590e+01, 2.81188130e+00, + 5.28712893e+00, 1.19009905e+01, 8.76237583e+00, 3.06930685e+00, + 4.01386147e+01, 1.34643570e+02, 4.57425728e+01, 6.78217840e+00, + 4.50495052e+00, 5.18811893e+00, 3.28712869e+00, 4.03960419e+00, + 3.22079201e+01, 1.96237621e+01, 1.54356432e+01, 4.30693054e+00, + 2.29702973e+00, 2.18811870e+00, 1.69306934e+00, 2.83168316e+00, + 7., 5.69387770e+00, 2.67346931e+00, 3.48979592e+00, + 7.34693861e+00, 7.26530600e+00, 5.46938753e+00, 8.93877506e+00, + 6.30612230e+00, 4.10204077e+00, 4.20408154e+00, 1.15918369e+01, + 2.69591827e+01, 1.62040825e+01, 5.26530600e+00, 3.97959185e+00, + 3.89795923e+00, 2.51020408e+00, 4.93877554e+00, 2.31836739e+01, + 4.15102043e+01, 1.45102043e+01, 3.18367338e+00, 2.36734700e+00, + 2.36734700e+00, 2.63265300e+00, 6.12244892e+00, 2.55102043e+01, + 2.92653065e+01, 8.69387722e+00, 2.26530623e+00, 1.42857146e+00, + 1.44897962e+00, 6.10204077e+00, 4.63265324e+00, 1.28775511e+01, + 3.77346954e+01, 2.43061218e+01, 7.79591846e+00, 6.93877554e+00, + 5.73469400e+00, 4.97959185e+00, 6.55102062e+00, 3.79387741e+01, + 1.00530609e+02, 3.76734695e+01, 8.08163261e+00, 6.32653046e+00, + 5.95918369e+00, 5.73469400e+00, 9.28571415e+00, 5.73673477e+01, + 9.95102005e+01, 3.36938782e+01, 8.46938801e+00, 5.26530600e+00, + 5.77551031e+00, 6.04081631e+00, 9.87755108e+00, 5.82244911e+01, + 6.79591827e+01, 2.33061218e+01, 7.93877554e+00, 7.71428585e+00, + 1.22857141e+01, 2.30612254e+00, 2.28571439e+00, 1.55102043e+01, + 6.86122437e+01, 4.34489784e+01, 7.57142878e+00, 3.12244892e+00, + 2.34693885e+00, 6., 5.30612230e+00, 3.18163261e+01, + 9.80612259e+01, 5.35918350e+01, 13., 6.93877554e+00, + 5.61224508e+00, 1.07959185e+01, 8.65306091e+00, 3.70612259e+01, + 7.34081650e+01, 4.68979607e+01, 1.36530609e+01, 13., + 4.40408173e+01, 1.11428576e+01, 5.79591846e+00, 3.07142849e+01, + 6.77346954e+01, 2.93673477e+01, 1.13061228e+01, 8.18775482e+01, + 1.51387756e+02, 2.12244892e+00, 1.87755108e+00, 7.63265324e+00, + 4.79795914e+01, 4.27142868e+01, 8.59183693e+00, 3.04081631e+00, + 1.89795923e+00, 1.15714283e+01, 4.87755108e+00, 1.51836739e+01, + 5.50612259e+01, 5.13061218e+01, 1.39183674e+01, 8.32653046e+00, + 1.99387760e+01, 6.00816345e+01, 5.59183693e+00, 15., + 6.92653046e+01, 3.94285698e+01, 9.93877506e+00, 2.20204086e+01, + 1.53224487e+02, 3.58775520e+01, 3.06122446e+00, 3.78367348e+01, + 1.50244904e+02, 3.66938782e+01, 5.95918369e+00, 6.91836700e+01, + 1.55326538e+02, 1.09227852e+02, 1.83924046e+01, 4.27848101e+00, + 1.35569620e+01, 2.44810123e+01, 5.88607597e+00, 4.15189886e+00, + 4.28987350e+01, 1.42341766e+02, 2.93417721e+01, 3.07594943e+00, + 3.18987346e+00, 4.36708879e+00, 2.82278490e+00, 4.01265812e+00, + 6.56455688e+01, 4.59240494e+01, 1.49240503e+01, 5.68354416e+00, + 3., 3.50632906e+00, 4.43037987e+00, 6.92405081e+00, + 2.61392403e+01, 1.07594931e+00, 9.36708868e-01, 5.06329119e-01, + 2.53164560e-01, 1.89873412e-01, 3.67088616e-01, 5.44303775e-01, + 9.36708868e-01, 1.34050629e+02, 7.07594919e+00, 4.79746819e+00, + 1.90253162e+01, 1.84936714e+01, 5.27848101e+00, 6.93670893e+00, + 1.05151901e+02, 1.51177216e+02, 1.53670883e+01, 3.05063295e+00, + 3.60759497e+00, 4.75949383e+00, 4.34177208e+00, 7.53164577e+00, + 1.26797470e+02, 4.24430389e+01, 1.22278481e+01, 6.91139221e+00, + 5.68354416e+00, 7.22784805e+00, 9.10126591e+00, 1.10506325e+01, + 3.37468338e+01, 1.45569623e+00, 7.97468364e-01, 4.81012672e-01, + 3.54430377e-01, 2.53164560e-01, 4.30379748e-01, 7.08860755e-01, + 1.10126579e+00, 1.28405060e+02, 4.08860779e+00, 4.31645584e+00, + 1.48481016e+01, 7.43037987e+00, 3.10126591e+00, 1.21265821e+01, + 1.46164551e+02, 1.30797470e+02, 1.44936705e+01, 5.15189886e+00, + 6., 7.41772175e+00, 6.86075926e+00, 1.36075945e+01, + 1.32582275e+02, 2.80126591e+01, 1.38101263e+01, 8.10126591e+00, + 7.20253181e+00, 9.12658215e+00, 10., 1.21265821e+01, + 2.56075954e+01, 1.39240503e+00, 5.94936728e-01, 3.54430377e-01, + 2.65822798e-01, 3.54430377e-01, 3.67088616e-01, 6.58227861e-01, + 1.16455698e+00, 8.00379715e+01, 3.43037963e+00, 2.79746842e+00, + 5.45569611e+00, 2.48101258e+00, 3.01265812e+00, 1.78734169e+01, + 1.45936707e+02, 6.00379753e+01, 1.00379744e+01, 6.34177208e+00, + 8.48101234e+00, 1.07215185e+01, 1.07848101e+01, 1.57721519e+01, + 7.10126572e+01, 1.70379753e+01, 9.30379772e+00, 6.67088604e+00, + 6.46835423e+00, 7.91139221e+00, 9.03797436e+00, 1.07215185e+01, + 1.83670883e+01, 7.21518993e-01, 4.68354434e-01, 2.91139245e-01, + 1.89873412e-01, 1.39240503e-01, 3.16455692e-01, 6.45569623e-01, + 8.60759497e-01, 4.97872353e+00, 1.44680846e+00, 4.87234020e+00, + 2.42127666e+01, 4.11914902e+01, 2.04468079e+01, 4.06382990e+00, + 3.48936176e+00, 2.97234039e+01, 3.74468088e+00, 4.25531912e+00, + 2.04042549e+01, 3.52765961e+01, 1.46808510e+01, 4.12765980e+00, + 8.95744705e+00, 1.25680855e+02, 1.01489363e+01, 1.85106385e+00, + 2.25106392e+01, 9.38510666e+01, 1.12553196e+01, 2.38297868e+00, + 4.39574471e+01, 1.85319157e+01, 5.76595736e+00, 2.08510637e+00, + 1.69574471e+01, 83., 7.25531912e+00, 1.93617022e+00, + 8.46808529e+00, 4.65957451e+00, 1.70212770e+00, 1.35531912e+01, + 3.92765961e+01, 4.05319138e+01, 1.41914892e+01, 4.25531912e+00, + 3.95744681e+00, 6.02765961e+01, 2.27659583e+00, 8.55319118e+00, + 3.61489372e+01, 3.38936157e+01, 11., 6.70212746e+00, + 7.47659607e+01, 1.22191490e+02, 3.87234044e+00, 2.93617010e+00, + 9.57234039e+01, 1.12872337e+02, 3.80851054e+00, 3.25531912e+00, + 1.10723404e+02, 1.87659569e+01, 6.68085098e+00, 2.48936176e+00, + 3.62127647e+01, 5.84893608e+01, 3.02127671e+00, 4.02127647e+00, + 1.28936167e+01, 3.91489363e+00, 2.04255319e+00, 1.80851059e+01, + 3.70851059e+01, 2.45744686e+01, 7.36170197e+00, 1.02765961e+01, + 3.65744667e+01, 5.88723412e+01, 1.74468088e+00, 8.29787254e+00, + 8.73617020e+01, 2.74468079e+01, 4.97872353e+00, 1.41914892e+01, + 1.28744675e+02, 4.42340431e+01, 4.31914902e+00, 5., + 1.27510635e+02, 8.79148941e+01, 2.53191495e+00, 5.17021275e+00, + 8.32978745e+01, 2.34255314e+01, 6.76595736e+00, 2.10638309e+00, + 1.25106382e+01, 1.01063833e+01, 2.10638309e+00, 5.65957451e+00, + 2.15957451e+01, 2.85106373e+00, 1.48936164e+00, 3.15319157e+01, + 5.96595726e+01, 5.36170197e+00, 2.85106373e+00, 5.60212784e+01, + 1.13085106e+02, 1.23829784e+01, 1.78723407e+00, 2.36382980e+01, + 1.28553192e+02, 1.52765961e+01, 1.97872341e+00, 1.81276588e+01, + 1.02042557e+02, 1.47234039e+01, 3.82978725e+00, 3.57446814e+00, + 6.90212784e+01, 1.58510637e+01, 2.44680858e+00, 9.74468040e+00, + 2.81702137e+01, 1.62340431e+01, 4.02127647e+00, 1.38297868e+00, + 1.34042549e+00, 1.27659571e+00, 2.27659583e+00, 6.19148922e+00, + 2.17446804e+01, 3.15254235e+00, 2.59322023e+00, 9.06779671e+00, + 1.09915253e+02, 4.94237289e+01, 2.42372870e+00, 1.42372882e+00, + 2.16949153e+00, 3.93220329e+00, 1.71186435e+00, 3.25254250e+01, + 1.27050850e+02, 2.53389835e+01, 7.11864412e-01, 1.32203388e+00, + 6.10169506e+00, 6.81355953e+00, 1.88135588e+00, 4.56271172e+01, + 7.88305054e+01, 4.03389835e+00, 1.32203388e+00, 6.49152565e+00, + 3.36610184e+01, 3.71186447e+00, 1.61016953e+00, 2.37966099e+01, + 1.38305082e+01, 7.79661000e-01, 5.93220353e-01, 2.72711868e+01, + 5.31186447e+01, 3.23728824e+00, 1.62711859e+00, 3.23728824e+00, + 1.33186447e+02, 1.15915253e+02, 2., 1.20338988e+00, + 3.86440682e+00, 2.10677967e+01, 2.76271176e+00, 6.88135576e+00, + 9.86101685e+01, 3.37796593e+01, 1.37288141e+00, 3.55932212e+00, + 3.33728828e+01, 3.49830513e+01, 1.55932200e+00, 3.74576283e+00, + 1.42542372e+01, 3.62711859e+00, 1.64406776e+00, 1.81186447e+01, + 1.19881355e+02, 1.18644066e+01, 1.15254235e+00, 5.47457647e+00, + 1.16101694e+01, 2.67796612e+00, 1.77966106e+00, 4.63220329e+01, + 1.07813560e+02, 6.38983059e+00, 1.64406776e+00, 1.66101694e+00, + 1.06305084e+02, 1.27440681e+02, 2.64406776e+00, 1.33898306e+00, + 5.45762730e+00, 7.04915237e+01, 2.76271176e+00, 2.45762706e+00, + 2.03728809e+01, 1.65762711e+01, 1.18644071e+00, 3.15254235e+00, + 7.01355896e+01, 7.84067764e+01, 1.72881353e+00, 2.01694918e+00, + 1.07796612e+01, 5.98305082e+00, 2.35593224e+00, 1.22372885e+01, + 1.18508476e+02, 1.99152546e+01, 3.27118635e+00, 3.69491529e+00, + 8.61016941e+00, 5.76271200e+00, 3.33898306e+00, 2.35932198e+01, + 6.44915237e+01, 1.23220339e+01, 2.01694918e+00, 1.03389835e+00, + 2.64745770e+01, 1.14254234e+02, 1.14237289e+01, 1.30508471e+00, + 5.57627106e+00, 1.05271187e+02, 7.01694918e+00, 8.98305058e-01, + 2.83050847e+00, 7.28813553e+00, 1.62711859e+00, 1.38983047e+00, + 4.25762711e+01, 8.95932236e+01, 7.54237270e+00, 1.25423729e+00, + 3.30508471e+00, 4.77966118e+00, 4.06779671e+00, 6.18644047e+00, + 5.64576263e+01, 1.60338974e+01, 5.47457647e+00, 3.52542377e+00, + 5.30508471e+00, 6.45762730e+00, 6.79661036e+00, 7.32203388e+00, + 1.92033901e+01, 5.56603765e+00, 1.18113203e+01, 7.39622641e+00, + 3.94339633e+00, 6.45283031e+00, 1.01698112e+01, 1.16603775e+01, + 8.54716969e+00, 4.96226406e+00, 4.11320734e+00, 4.05660391e+00, + 6.26415110e+00, 9.79245281e+00, 9.58490562e+00, 1.26037731e+01, + 1.07358494e+01, 4.15094328e+00, 2.83018875e+00, 3.32075477e+00, + 5.77358484e+00, 7.05660391e+00, 6.15094328e+00, 9.50943375e+00, + 9.41509438e+00, 9.43396211e-01, 9.05660391e-01, 1.07547164e+00, + 1.60377359e+00, 1.45283020e+00, 1.13207543e+00, 2.07547164e+00, + 1.84905660e+00, 1.09811325e+01, 53., 4.15471687e+01, + 6.79245281e+00, 8.03773594e+00, 1.04075470e+02, 1.16962265e+02, + 1.38301888e+01, 1.40754719e+01, 4.88679237e+01, 3.61698112e+01, + 1.01320753e+01, 1.56037731e+01, 7.07358475e+01, 4.13396225e+01, + 1.05471697e+01, 8.86792469e+00, 1.82075462e+01, 1.19245281e+01, + 1.17924528e+01, 1.63584900e+01, 1.69056606e+01, 1.63207550e+01, + 1.06981134e+01, 5.64150953e+00, 8.09433937e+00, 3.13207555e+00, + 4.07547188e+00, 4.47169828e+00, 4.35849047e+00, 4.79245281e+00, + 3.75471687e+00, 1.23207550e+01, 2.73584900e+01, 2.54339619e+01, + 1.46037731e+01, 2.34905663e+01, 140., 1.33962265e+02, + 2.34150944e+01, 1.93018875e+01, 6.32452812e+01, 2.80566044e+01, + 5.50943375e+00, 7.26037750e+01, 1.54603775e+02, 8.69622650e+01, + 8.56603813e+00, 2.34339619e+01, 6.15094337e+01, 2.04716988e+01, + 7.20754719e+00, 3.74339638e+01, 8.64716949e+01, 1.64905663e+01, + 7.54716969e+00, 6.50943375e+00, 1.31320753e+01, 4.71698093e+00, + 3.96226406e+00, 5.35849047e+00, 6.88679266e+00, 5.47169828e+00, + 3.11320758e+00, 1.76981125e+01, 2.53396225e+01, 2.96981125e+01, + 2.36603775e+01, 2.15471706e+01, 2.48679237e+01, 2.33018875e+01, + 1.66415100e+01, 2.78301888e+01, 3.31132088e+01, 1.92452831e+01, + 3.12264156e+01, 1.16283020e+02, 1.34849060e+02, 2.77547169e+01, + 1.67735844e+01, 2.59056606e+01, 3.78301888e+01, 9.18867970e+00, + 1.33962269e+01, 1.17283020e+02, 1.16094337e+02, 1.92830181e+01, + 8.13207531e+00, 8.22641468e+00, 1.39245281e+01, 5.41509438e+00, + 3.15094328e+00, 8.18867970e+00, 1.43207550e+01, 7.96226406e+00, + 2.33962274e+00, 2.85581398e+01, 1.48139542e+02, 3.88139534e+01, + 2.25581384e+00, 3.76744175e+00, 1.23488369e+01, 6.97674417e+00, + 2.09302330e+00, 9.05581360e+01, 1.42162796e+02, 1.38604650e+01, + 5.90697670e+00, 7.72093010e+00, 1.33255816e+01, 7.30232573e+00, + 8.58139515e+00, 3.25581398e+01, 2.58139534e+01, 1.21395350e+01, + 7.06976748e+00, 6.51162767e+00, 8.34883690e+00, 8.81395340e+00, + 1.64418602e+01, 1.31162786e+01, 1.10232553e+01, 3.04651165e+00, + 1.18604648e+00, 1.04651165e+00, 1.53488374e+00, 3.02325583e+00, + 7.32558155e+00, 4.33023262e+01, 7.84186020e+01, 1.26976748e+01, + 6.58139515e+00, 1.55116282e+01, 2.62093029e+01, 9.58139515e+00, + 3.62790704e+00, 1.55511627e+02, 1.47651169e+02, 5.76744175e+00, + 2.46511626e+00, 6.32558155e+00, 8.55813980e+00, 3.95348835e+00, + 1.21627903e+01, 7.93023224e+01, 3.90232544e+01, 10., + 4.41860485e+00, 5.53488350e+00, 7.37209320e+00, 1.05813951e+01, + 2.39069767e+01, 1.60930233e+01, 1.12093019e+01, 3.48837209e+00, + 1.06976748e+00, 1., 1.72093022e+00, 3.34883714e+00, + 8.60465145e+00, 3.96511612e+01, 1.99534893e+01, 8.88372135e+00, + 1.07209301e+01, 2.55348835e+01, 2.18139534e+01, 8., + 1.80465107e+01, 1.56046509e+02, 4.92790680e+01, 3.20930243e+00, + 3.11627913e+00, 5.02325583e+00, 3.37209296e+00, 3.69767451e+00, + 7.66976776e+01, 1.01325584e+02, 3.40930214e+01, 9.06976700e+00, + 3.46511626e+00, 3.34883714e+00, 5.09302330e+00, 9.93023300e+00, + 3.13023262e+01, 1.40930233e+01, 1.06279068e+01, 3.46511626e+00, + 1.51162791e+00, 1.20930231e+00, 1.44186044e+00, 3.13953495e+00, + 7.23255825e+00, 3.25348854e+01, 2.95348835e+00, 4.76744175e+00, + 2.20232563e+01, 2.22093029e+01, 9.60465145e+00, 1.82325573e+01, + 8.37441864e+01, 1.40953491e+02, 11., 3.88372087e+00, + 7.32558155e+00, 4.06976748e+00, 2.06976748e+00, 6.18604660e+00, + 1.39162796e+02, 5.78139534e+01, 2.06976738e+01, 6.46511650e+00, + 4.86046505e+00, 2.97674417e+00, 3.51162791e+00, 6.65116262e+00, + 2.60697670e+01, 1.28372097e+01, 5.90697670e+00, 1.79069769e+00, + 1.53488374e+00, 1.06976748e+00, 8.60465109e-01, 2.30232549e+00, + 8.76744175e+00, 8.36363602e+00, 2.56909084e+01, 8.21818161e+00, + 1.98181820e+00, 4.70909081e+01, 1.01963638e+02, 3.94545460e+00, + 1.61818182e+00, 6.25454569e+00, 7.73090897e+01, 3.73272743e+01, + 2.49090910e+00, 1.68727264e+01, 4.88181801e+01, 3.36363626e+00, + 5.81818163e-01, 3.01818180e+00, 6.93818207e+01, 7.88181839e+01, + 4.96363640e+00, 1.54545450e+00, 9.43636322e+00, 7.23636341e+00, + 1.52727270e+00, 2.70909095e+00, 2.36909084e+01, 8.02363663e+01, + 1.29272728e+01, 9.63636339e-01, 2.96363640e+00, 8., + 3.23636365e+00, 4.80000019e+00, 1.41090908e+01, 4.81818199e+00, + 3.49090910e+00, 2.22727280e+01, 1.16727272e+02, 2.70181828e+01, + 4.29090929e+00, 3.56363630e+00, 2.75454540e+01, 2.04909096e+01, + 2.72727275e+00, 1.58000002e+01, 1.30181824e+02, 5.00909081e+01, + 2.41818190e+00, 1.83636367e+00, 3.77090912e+01, 65., + 5.69090891e+00, 3.29090905e+00, 7.61090927e+01, 4.76181831e+01, + 1.18181813e+00, 1.07272732e+00, 1.83454552e+01, 8.65454559e+01, + 1.34727268e+01, 1.39999998e+00, 1.41272726e+01, 2.67090912e+01, + 1.58181822e+00, 2.34545445e+00, 4.38181829e+00, 4.05454540e+00, + 3.18181825e+00, 1.25090914e+01, 9.15636368e+01, 4.93454552e+01, + 5.38181829e+00, 3.05454540e+00, 1.08545456e+01, 7.27272749e+00, + 2.43636370e+00, 7., 1.25163635e+02, 1.00963638e+02, + 6.19999981e+00, 2.09090900e+00, 8.98181820e+00, 8.21818161e+00, + 1.81818187e+00, 2.49090910e+00, 1.28709091e+02, 1.30272720e+02, + 5.94545460e+00, 1.18181813e+00, 3.43636370e+00, 8.03636360e+00, + 2.18181825e+00, 1.34545457e+00, 7.28000031e+01, 1.31600006e+02, + 9.45454502e+00, 3.43636370e+00, 3.16363645e+00, 3.50909090e+00, + 3.90909100e+00, 6.09090900e+00, 3.60545464e+01, 3.28909073e+01, + 5.41818190e+00, 2.89090919e+00, 3.38181829e+00, 3.56363630e+00, + 2.78181815e+00, 5.43636370e+00, 5.01818199e+01, 67., + 8.36363602e+00, 2.36363626e+00, 2.29090905e+00, 2.50909090e+00, + 1.92727268e+00, 3.34545445e+00, 4.49818192e+01, 8.95636368e+01, + 1.47636366e+01, 2.05454540e+00, 1.49090910e+00, 1.96363640e+00, + 1.65454543e+00, 2.38181829e+00, 2.88181820e+01, 9.30545425e+01, + 1.81272736e+01, 4., 6.54237270e+00, 2.87118645e+01, + 2.60338974e+01, 8.45762730e+00, 3.76271176e+00, 4.28813553e+00, + 5.93220329e+00, 4.98305082e+00, 2.93220329e+00, 2.85932198e+01, + 9.21525421e+01, 2.09491520e+01, 1.25423729e+00, 1.69491529e+00, + 7.47457647e+00, 4.22033882e+00, 9.32203412e-01, 8.33898258e+00, + 1.00220337e+02, 3.75084763e+01, 5.76271176e-01, 8.13559294e-01, + 8.27118683e+00, 3.08813553e+01, 1.05084741e+00, 2.32203388e+00, + 1.85932198e+01, 1.26101694e+01, 1.18644071e+00, 1.49152541e+00, + 4.45593224e+01, 9.32203412e-01, 5., 8.33559341e+01, + 6.70169525e+01, 6.35593224e+00, 1.16949153e+00, 5.08474588e+00, + 3.96610165e+00, 1.44067800e+00, 1.42372882e+00, 5.76949158e+01, + 1.11898308e+02, 1.15254240e+01, 1.13559318e+00, 7.83050871e+00, + 1.17796612e+01, 6.98305082e+00, 1.61016953e+00, 1.38305082e+01, + 6.15423737e+01, 1.13220339e+01, 1.37288141e+00, 1.97457619e+01, + 7.05084763e+01, 3.40847473e+01, 1.45762718e+00, 2.25423717e+00, + 8.94915295e+00, 3.84745765e+00, 1.18644071e+00, 1.63898296e+01, + 1.22118645e+02, 8.13559294e-01, 3.57627130e+00, 4.03728828e+01, + 2.90508480e+01, 2.50847459e+00, 1.22542372e+01, 9.82372894e+01, + 1.85423737e+01, 1.54237282e+00, 2.16949153e+00, 1.88644066e+01, + 2.54915257e+01, 3.42372870e+00, 3.69491529e+00, 1.19677963e+02, + 9.26101685e+01, 4.57627106e+00, 1.86440682e+00, 5.66101694e+00, + 9.33898258e+00, 2.88135600e+00, 2.76271176e+00, 1.13084747e+02, + 1.33067795e+02, 1.74237289e+01, 2.40677977e+00, 2.35593224e+00, + 4.47457647e+00, 3.45762706e+00, 2.84745765e+00, 4.73559303e+01, + 1.20576271e+02, 2.22033906e+00, 2.86440682e+00, 6.64406776e+00, + 2.50847459e+00, 1.57627118e+00, 1.18813562e+01, 1.22830505e+02, + 3.59830513e+01, 4.13559341e+00, 2.61016941e+00, 4.88135576e+00, + 4.16949129e+00, 2.16949153e+00, 7.44067812e+00, 1.23338982e+02, + 8.77288132e+01, 8.84745789e+00, 2.45762706e+00, 3.23728824e+00, + 5.18644047e+00, 4.38983059e+00, 6.22033882e+00, 7.86949158e+01, + 9.51016922e+01, 1.10169487e+01, 2.76271176e+00, 2.57627130e+00, + 3.62711859e+00, 4.67796612e+00, 4.94915247e+00, 2.55084743e+01, + 5.08813553e+01, 5.50263176e+01, 1.47631578e+01, 6.55263138e+00, + 2.87894745e+01, 2.79736843e+01, 1.21842108e+01, 2.06052628e+01, + 8.10789490e+01, 1.66052628e+01, 1.03421049e+01, 8.97368431e+00, + 1.88157902e+01, 3.28157883e+01, 3.87894745e+01, 3.94736824e+01, + 4.08684196e+01, 3.42105255e+01, 9.63157940e+00, 9.26315784e+00, + 4.06052628e+01, 4.42894745e+01, 1.77631588e+01, 1.35789471e+01, + 3.89736824e+01, 2.08947372e+01, 5.65789461e+00, 5.57894754e+00, + 3.33684196e+01, 2.19736843e+01, 4.71052647e+00, 3.68421054e+00, + 2.01315784e+01, 9.13684235e+01, 5.56578941e+01, 2.05263157e+01, + 2.55789471e+01, 2.53947372e+01, 2.03421059e+01, 2.06315784e+01, + 6.39210510e+01, 2.71315784e+01, 2.87105255e+01, 4.37368431e+01, + 5.59736824e+01, 4.34473686e+01, 3.65526314e+01, 4.58157883e+01, + 4.59210510e+01, 3.51842117e+01, 4.73684216e+00, 1.83947372e+01, + 1.08842102e+02, 6.69473648e+01, 1.81315784e+01, 3.20263176e+01, + 7.59473648e+01, 2.58947372e+01, 3.13157892e+00, 7.39473677e+00, + 5.31578941e+01, 1.49736843e+01, 2.13157892e+00, 7.42105246e+00, + 4.48684196e+01, 6.60263138e+01, 2.63684216e+01, 4.36842117e+01, + 9.51315765e+01, 3.49473686e+01, 1.60263157e+01, 2.69473686e+01, + 8.18684235e+01, 2.95263157e+01, 2.63157902e+01, 1.04631577e+02, + 1.07368423e+02, 2.45000000e+01, 1.10789471e+01, 4.75789490e+01, + 6.87894745e+01, 2.86842098e+01, 9.31578922e+00, 4.46578941e+01, + 9.59473648e+01, 2.31842098e+01, 8.86842060e+00, 3.58684196e+01, + 8.90526352e+01, 1.22368422e+01, 5.26315784e+00, 7.21052647e+00, + 1.89736843e+01, 4.86842108e+00, 3.36842108e+00, 9.57894707e+00, + 3.30526314e+01, 3.82894745e+01, 6.28947353e+00, 1.52894735e+01, + 9.21578979e+01, 4.11578941e+01, 1.89473689e+00, 1.49473686e+01, + 73., 3.03421059e+01, 1.02368422e+01, 2.63157902e+01, + 4.42105255e+01, 2.00263157e+01, 6.15789461e+00, 3.42368431e+01, + 7.34473648e+01, 1.45000000e+01, 1.07894735e+01, 1.26578951e+01, + 1.36842108e+01, 9.78947353e+00, 1.09736843e+01, 2.24736843e+01, + 3.70789490e+01, 3.44736838e+00, 4.57894754e+00, 5.60526323e+00, + 5.23684216e+00, 4.78947353e+00, 4.42105246e+00, 6.73684216e+00, + 6.97368431e+00, 6.47142839e+00, 3.15714288e+00, 6.52857161e+00, + 2.06000004e+01, 1.38000002e+01, 4.51428556e+00, 3.24285722e+00, + 6.15714264e+00, 3.83571434e+01, 2.58571434e+00, 7.25714302e+00, + 4.52714272e+01, 1.70857143e+01, 3.02857137e+00, 7.42857122e+00, + 1.12914284e+02, 1.43857145e+01, 2.38571429e+00, 2.67571430e+01, + 1.22042854e+02, 2.06714287e+01, 1.74285710e+00, 1.99142857e+01, + 103., 7.08571434e+00, 3.98571420e+00, 3.74285698e+01, + 7.47714310e+01, 4.62857151e+00, 4.71428585e+00, 2.06571426e+01, + 2.39142857e+01, 4.57857132e+01, 2.90000010e+00, 7.11428595e+00, + 2.22857151e+01, 1.95000000e+01, 5.34285736e+00, 3.31428576e+00, + 4.65142860e+01, 95., 2.64285707e+00, 5.34285736e+00, + 1.15485718e+02, 8.68142853e+01, 3.18571424e+00, 5.02857161e+00, + 1.20042854e+02, 2.14142857e+01, 6.88571405e+00, 1.16714287e+01, + 1.09857140e+02, 4.65999985e+01, 3.58571434e+00, 1.54285717e+01, + 4.17000008e+01, 2.07999992e+01, 6.21428585e+00, 4.87142849e+00, + 6.34285736e+00, 1.88571429e+00, 5.30000019e+00, 2.56000004e+01, + 3.69142876e+01, 1.04814285e+02, 3.44285703e+00, 3.54285717e+00, + 2.27999992e+01, 3.39142876e+01, 6.75714302e+00, 2.35714293e+00, + 5.17999992e+01, 9.24000015e+01, 4.64285707e+00, 2.24285722e+00, + 1.00242859e+02, 1.24828575e+02, 6.31428576e+00, 4.59999990e+00, + 57., 3.38285713e+01, 1.01571426e+01, 6.54285717e+00, + 2.20285721e+01, 2.35285721e+01, 3.64285707e+00, 1.82285709e+01, + 4.85571442e+01, 3.61142845e+01, 8.21428585e+00, 3.81428576e+00, + 1.89999998e+00, 1.79999995e+00, 4.68571424e+00, 2.36000004e+01, + 5.47857132e+01, 1.08214287e+02, 1.05714283e+01, 1.52857149e+00, + 1.17285719e+01, 4.57142868e+01, 7.65714264e+00, 1.94285715e+00, + 1.83999996e+01, 7.34285736e+01, 1.27142859e+01, 1.92857146e+00, + 2.19857140e+01, 1.18328575e+02, 2.10571423e+01, 3.67142868e+00, + 1.97285709e+01, 3.62857132e+01, 1.54857140e+01, 3.29999995e+00, + 2.87142849e+00, 1.08999996e+01, 4.68571424e+00, 7.57142878e+00, + 3.59714279e+01, 4.41571426e+01, 1.72714291e+01, 4.28571415e+00, + 2.70000005e+00, 3.18571424e+00, 3.94285703e+00, 9.54285717e+00, + 3.66857147e+01, 1.10208330e+01, 2.03333340e+01, 1.90208340e+01, + 2.66666675e+00, 1.79166663e+00, 6.14583349e+00, 1.48333330e+01, + 1.38125000e+01, 8.93750000e+00, 8.43750000e+00, 2.79166660e+01, + 1.86666660e+01, 4.41666651e+00, 7.02083349e+00, 1.48958330e+01, + 1.77291660e+01, 4.72916651e+00, 2.02083325e+00, 3.06041660e+01, + 8.66250000e+01, 1.58333330e+01, 3.43750000e+00, 7.85416651e+00, + 1.75833340e+01, 1.85833340e+01, 1.18750000e+00, 1.06458330e+01, + 1.02458336e+02, 3.73333321e+01, 1.41666663e+00, 3.64583325e+00, + 5.41250000e+01, 3.27083325e+00, 4.43541679e+01, 1.19562500e+02, + 1.42916670e+01, 4.79166657e-01, 3.52083325e+00, 3.28750000e+01, + 1.11458330e+01, 3.10416675e+00, 13., 123., 8.03750000e+01, + 1.16666663e+00, 1.85416663e+00, 3.42291679e+01, 3.26458321e+01, + 5.56250000e+00, 2.27083325e+00, 9.27916641e+01, 1.19312500e+02, + 4.64583349e+00, 1.18750000e+00, 3.61666679e+01, 8.77291641e+01, + 2.18333340e+01, 1.95833337e+00, 2.27916660e+01, 9.17708359e+01, + 1.29791670e+01, 2.25000000e+00, 21., 1.12041664e+02, + 2.77083325e+00, 1.42500000e+01, 8.47291641e+01, 1.40625000e+01, + 2.37500000e+00, 1.11041670e+01, 9.73333359e+01, 2.97916660e+01, + 3.37500000e+00, 4.41666651e+00, 8.34583359e+01, 4.71875000e+01, + 3.22916675e+00, 9.12500000e+00, 1.05333336e+02, 8.35208359e+01, + 7.04166651e+00, 2.79166675e+00, 4.04166679e+01, 6.16458321e+01, + 4.72916651e+00, 6.95833349e+00, 7.51041641e+01, 1.04104164e+02, + 2.06458340e+01, 3.37500000e+00, 7.87500000e+00, 2.45416660e+01, + 3.89583325e+00, 4.83333349e+00, 3.83125000e+01, 8.98750000e+01, + 4.87500000e+00, 3.10416675e+00, 1.76250000e+01, 5.81250000e+00, + 4.62500000e+00, 1.50208330e+01, 5.58125000e+01, 2.07291660e+01, + 8.27083302e+00, 4.10416651e+00, 1.54583330e+01, 1.13333330e+01, + 5.31250000e+00, 1.33958330e+01, 5.25833321e+01, 3.71666679e+01, + 1.31041670e+01, 3.81250000e+00, 4.87500000e+00, 6.64583349e+00, + 3.43750000e+00, 8.22916698e+00, 4.26875000e+01, 5.50625000e+01, + 1.74375000e+01, 2.66666675e+00, 1.70833337e+00, 1.77083337e+00, + 1.66666663e+00, 4.16666651e+00, 2.82083340e+01, 6.41250000e+01, + 1.20806456e+01, 8.08064556e+00, 6.03225803e+00, 8.32258034e+00, + 3.40967751e+01, 6.07741928e+01, 2.31290321e+01, 9.29032230e+00, + 4.30645180e+00, 2.12903237e+00, 1.20967746e+00, 4.98387098e+00, + 8.65806427e+01, 8.84032288e+01, 1.34838705e+01, 3.32258058e+00, + 6.85483885e+00, 9.40322590e+00, 1.56451619e+00, 7.30645180e+00, + 5.82741928e+01, 3.56290321e+01, 7.69354820e+00, 3.41935492e+00, + 8.97741928e+01, 6.52580643e+01, 1.91935480e+00, 3.06451607e+00, + 1.86612911e+01, 1.34193544e+01, 6.06451607e+00, 7.17741919e+00, + 2.24677410e+01, 2.34677410e+01, 1.57419357e+01, 2.03225803e+01, + 4.23548393e+01, 3.62903214e+01, 2.13709679e+01, 1.58709679e+01, + 1.06129036e+01, 7.09677410e+00, 6.43548393e+00, 3.27903214e+01, + 1.25225807e+02, 7.00161285e+01, 1.11129036e+01, 5.67741919e+00, + 5.38709688e+00, 2.16129041e+00, 2.59677410e+00, 2.15483875e+01, + 102., 3.61774178e+01, 7.53225803e+00, 5.08064508e+00, + 1.10451614e+02, 2.74677410e+01, 3.06451607e+00, 7.80645180e+00, + 2.58548393e+01, 9.33870983e+00, 6.19354820e+00, 1.95806446e+01, + 1.98064518e+01, 1.45483875e+01, 1.90645161e+01, 4.12903214e+01, + 4.40806465e+01, 2.06774197e+01, 1.80967751e+01, 1.66612911e+01, + 9., 4.59677410e+00, 1.08870964e+01, 9.11290359e+01, + 1.19209679e+02, 2.47580643e+01, 4.48387098e+00, 5.11290312e+00, + 7.59677410e+00, 1.62903225e+00, 5.37096786e+00, 5.38387108e+01, + 9.13387070e+01, 1.68387089e+01, 3.45161295e+00, 9.96774197e+00, + 1.13790321e+02, 6.35483885e+00, 4., 1.51290321e+01, + 2.37419357e+01, 5.64516115e+00, 3.66129041e+00, 6.62419357e+01, + 6.91935492e+00, 7.41935492e+00, 3.43225822e+01, 8.31935501e+01, + 3.15322590e+01, 6.27419376e+00, 5.06451607e+00, 7.53225803e+00, + 3.27419353e+00, 1.69354844e+00, 1.54838705e+01, 1.04806450e+02, + 6.95000000e+01, 7.79032278e+00, 2.54838705e+00, 6.09677410e+00, + 1.27258062e+01, 1.43548381e+00, 6.83870983e+00, 4.29838715e+01, + 4.22258072e+01, 8.32258034e+00, 6.35483885e+00, 4.28709679e+01, + 9.85645142e+01, 2.06451607e+00, 2.32258058e+00, 2.50322590e+01, + 1.92419357e+01, 2.72580647e+00, 5.04838705e+00, 1.12532257e+02, + 2.35294119e-01, 0., 0., 0., 0., 8.52941155e-01, 7.64705896e-01, + 6.76470578e-01, 4.11764711e-01, 8.82352963e-02, 0., 0., 0., + 1.76470593e-01, 3.52941185e-01, 2.64705896e-01, 1.77352943e+01, + 1.17647064e+00, 2.94117648e-02, 0., 0., 0., 8.82352963e-02, + 9.41176474e-01, 1.15882349e+01, 1.11764705e+00, 1.11764705e+00, + 3.23529422e-01, 9.11764681e-01, 5.88235319e-01, 1.08823526e+00, + 1.64705884e+00, 6.55882359e+00, 0., 0., 5.88235296e-02, + 1.66470585e+01, 5.76176453e+01, 2.18823528e+01, 2.52647057e+01, + 5.76470566e+00, 1.38235295e+00, 7.05882370e-01, 1., + 6.20588255e+00, 1.65588226e+01, 4.82352924e+00, 2.67647052e+00, + 1.31147064e+02, 1.77352943e+01, 4.82352924e+00, 1.38235295e+00, + 7.05882370e-01, 1.61764705e+00, 2.61764717e+00, 2.03235302e+01, + 1.14823532e+02, 2.15882359e+01, 2.42647057e+01, 9.76470566e+00, + 1.26176472e+01, 1.02352943e+01, 1.24117651e+01, 2.65000000e+01, + 8.47058868e+00, 1.91176474e+00, 1.61764705e+00, 2.85294127e+00, + 5.62941170e+01, 1.14970589e+02, 4.29117661e+01, 3.22647057e+01, + 6.26470566e+00, 2., 6.17647052e-01, 1.55882359e+00, + 3.48823547e+01, 1.04470589e+02, 9.66764679e+01, 6.94117641e+00, + 1.37411758e+02, 1.71176472e+01, 2.73529410e+00, 3.67647052e+00, + 2.23529410e+00, 1.86470585e+01, 7.62941208e+01, 4.36470604e+01, + 1.22941177e+02, 2.11470585e+01, 1.58235292e+01, 1.82647057e+01, + 2.45000000e+01, 1.81470585e+01, 1.68235302e+01, 4.40294113e+01, + 1.62058830e+01, 7., 1.82352936e+00, 1.27941179e+01, + 2.46764698e+01, 4.72941170e+01, 2.48235302e+01, 2.15588226e+01, + 2.41764698e+01, 1.55000000e+01, 4.02941179e+00, 8.41176510e+00, + 2.15882359e+01, 9.42647095e+01, 1.36852936e+02, 2.91470585e+01, + 7.09705887e+01, 1.07941179e+01, 4.41176462e+00, 1.22058821e+01, + 1.53529415e+01, 5.58823547e+01, 1.36411758e+02, 6.75588226e+01, + 7.19705887e+01, 8.47058868e+00, 5.35294104e+00, 2.30294113e+01, + 2.33823528e+01, 1.77941170e+01, 3.17941170e+01, 4.64705887e+01, + 5.46031761e+00, 2.71428561e+00, 1.90158730e+01, 3.74126968e+01, + 2.15396824e+01, 6.49206352e+00, 3.46031737e+00, 2.42222214e+01, + 9.51746063e+01, 2.12698412e+00, 6.52380943e+00, 7.88730164e+01, + 4.06507950e+01, 3.60317469e+00, 4.68253946e+00, 1.36809525e+02, + 4.89206352e+01, 4.14285707e+00, 3.03174615e+00, 1.30222229e+02, + 1.14349205e+02, 2.53968263e+00, 4.09523821e+00, 6.52380981e+01, + 1.67460308e+01, 6.07936525e+00, 1.42857146e+00, 1.05396824e+01, + 9.85714245e+00, 1.49206352e+00, 4.31746054e+00, 1.46984129e+01, + 1.11587305e+01, 2.20634913e+00, 2.39365082e+01, 6.87619019e+01, + 1.22063494e+01, 5.22222233e+00, 5.56507950e+01, 1.38174606e+02, + 3.53809509e+01, 2.42857146e+00, 1.95873013e+01, 1.43920639e+02, + 4.91111107e+01, 2.93650794e+00, 1.86984119e+01, 1.37396820e+02, + 2.10476189e+01, 5.42857122e+00, 4.07936525e+00, 1.04952377e+02, + 3.92380943e+01, 3.82539678e+00, 1.32063494e+01, 3.99523811e+01, + 2.15555553e+01, 5.25396824e+00, 1.39682543e+00, 1.44444442e+00, + 1.34920633e+00, 1.93650794e+00, 8.01587296e+00, 2.50317459e+01, + 6.04761887e+00, 2.79365087e+00, 91., 1.40047623e+02, + 7.44444466e+00, 4.20634937e+00, 5.59523811e+01, 1.01634918e+02, + 1.47301588e+01, 3.88888884e+00, 2.71428566e+01, 1.24301590e+02, + 9.88888931e+00, 6.12698412e+00, 2.34761906e+01, 4.44285698e+01, + 1.84761906e+01, 4.69841290e+00, 3.17460322e+00, 9.63492107e+00, + 3.53968263e+00, 6.09523821e+00, 2.07460308e+01, 4.53650780e+01, + 1.55555553e+01, 3.52380943e+00, 1.74603176e+00, 1.22222221e+00, + 1.60317457e+00, 3.14285707e+00, 8.36507893e+00, 2.70634918e+01, + 7.06349230e+00, 1.85714281e+00, 2.03492069e+01, 2.99206352e+01, + 4.04761887e+00, 5.66666651e+00, 1.88730164e+01, 2.05714283e+01, + 1.15238094e+01, 2.95238090e+00, 2.39682531e+00, 3.80952382e+00, + 3.41269851e+00, 6.60317469e+00, 2.00158730e+01, 3.11428566e+01, + 1.08730154e+01, 3.61904764e+00, 2.74603176e+00, 2.82539678e+00, + 2.95238090e+00, 4.85714293e+00, 1.36984129e+01, 2.88730164e+01, + 7.71428585e+00, 2.22222233e+00, 1.92063487e+00, 1.76190472e+00, + 2.12698412e+00, 2.14285707e+00, 4.92063475e+00, 1.55555553e+01, + 2.14799995e+01, 3.90400009e+01, 8.60000038e+00, 2.33333325e+00, + 1.24533329e+01, 2.37999992e+01, 5.61333323e+00, 5.19999981e+00, + 9.27066650e+01, 1.07586670e+02, 6.07999992e+00, 1.75999999e+00, + 2.07600002e+01, 4.51733322e+01, 1.07066669e+01, 9.06666660e+00, + 27., 3.17733326e+01, 1.48000002e+00, 2.35999990e+00, + 8.32933350e+01, 1.17346664e+02, 1.01599998e+01, 5.36000013e+00, + 1.26933336e+01, 1.70400009e+01, 2.75999999e+00, 3.49333334e+00, + 2.05599995e+01, 2.98666668e+01, 7.78666687e+00, 4.09333324e+00, + 7.86666679e+00, 1.13999996e+01, 5.66666651e+00, 3.05333328e+00, + 1.14533329e+01, 2.11466675e+01, 6.77333355e+00, 5.48000002e+00, + 9.85333328e+01, 1.18413330e+02, 4.23999977e+00, 1.74666667e+00, + 2.86266670e+01, 4.75733337e+01, 5.48000002e+00, 4.42666674e+00, + 8.83333359e+01, 1.08333336e+02, 1.36000001e+00, 1.90666664e+00, + 7.95199966e+01, 1.13400002e+02, 3.46666670e+00, 3.02666664e+00, + 1.96000004e+01, 2.70133343e+01, 2.65333343e+00, 3.27999997e+00, + 6.78399963e+01, 1.05693336e+02, 9.42666626e+00, 2.65333343e+00, + 5.36000013e+00, 4.97333336e+00, 3.93333340e+00, 3.06666660e+00, + 6.37333345e+00, 8.90666676e+00, 7.26666689e+00, 7.37333345e+00, + 4.12799988e+01, 5.10666656e+01, 4.05333328e+00, 3., + 2.97466660e+01, 4.65600014e+01, 8.34666634e+00, 9.46666622e+00, + 1.17266670e+02, 1.23106667e+02, 2.37333322e+00, 2.97333336e+00, + 3.59333344e+01, 5.71866684e+01, 3.44000006e+00, 5.46666670e+00, + 2.59200001e+01, 3.52933350e+01, 3.29333329e+00, 5.40000010e+00, + 9.05599976e+01, 1.13653336e+02, 8.45333290e+00, 2.79999995e+00, + 4.21333313e+00, 3.26666665e+00, 2.82666659e+00, 2.85333323e+00, + 3.49333334e+00, 3.93333340e+00, 4.94666672e+00, 5.34666681e+00, + 1.09600000e+01, 8.11999989e+00, 4.63999987e+00, 3.68000007e+00, + 1.56533337e+01, 1.93733330e+01, 6.34666681e+00, 8.58666706e+00, + 8.58266678e+01, 9.76666641e+01, 4.41333342e+00, 3.81333327e+00, + 2.20799999e+01, 3.37200012e+01, 4.06666660e+00, 10., + 4.71599998e+01, 6.58533325e+01, 8.21333313e+00, 8.94666672e+00, + 4.66800003e+01, 6.16666679e+01, 6.42666674e+00, 3.61333323e+00, + 9.54833298e+01, 7.36666679e+00, 1.17500000e+01, 7.94666672e+01, + 5.23499985e+01, 5.63333321e+00, 9.16666698e+00, 9.95166702e+01, + 7.97500000e+01, 2.20833340e+01, 1.10833330e+01, 2.45333328e+01, + 2.89333324e+01, 1.48999996e+01, 1.60166664e+01, 5.82166672e+01, + 8.38833313e+01, 3.72833328e+01, 6.80000019e+00, 3.50000000e+00, + 4.25000000e+00, 6.51666689e+00, 1.50333338e+01, 4.79666672e+01, + 1.59666662e+01, 6.01666689e+00, 5.16666651e-01, 0., + 3.33333351e-02, 2.33333334e-01, 1.95000005e+00, 8.50000000e+00, + 8.36500015e+01, 1.26833334e+01, 1.24333334e+01, 5.04166679e+01, + 1.97166672e+01, 7.08333349e+00, 1.32333336e+01, 1.14849998e+02, + 7.09499969e+01, 2.48166676e+01, 1.33000002e+01, 1.62000008e+01, + 1.67999992e+01, 2.00666676e+01, 2.99833336e+01, 8.50333328e+01, + 1.02266670e+02, 2.10833340e+01, 3.95000005e+00, 1.41666663e+00, + 2.31666660e+00, 5.19999981e+00, 2.69500008e+01, 1.13949997e+02, + 1.61666660e+01, 3.03333330e+00, 2.33333334e-01, 3.33333351e-02, + 6.66666701e-02, 3.33333343e-01, 4.11666679e+00, 1.82666664e+01, + 4.89333344e+01, 1.36333332e+01, 9.46666622e+00, 1.73833332e+01, + 7.94999981e+00, 1.35333338e+01, 4.10999985e+01, 1.00316666e+02, + 7.16666641e+01, 1.46333332e+01, 6.36666679e+00, 4.05000019e+00, + 5.28333330e+00, 1.39333334e+01, 6.79166641e+01, 1.24566666e+02, + 8.38166656e+01, 1.20166664e+01, 4.05000019e+00, 1.61666667e+00, + 2.38333344e+00, 5.81666660e+00, 4.01333351e+01, 1.24800003e+02, + 7.83333349e+00, 2.38333344e+00, 1.06666672e+00, 5.16666651e-01, + 6.33333325e-01, 1.64999998e+00, 4.21666670e+00, 1.19166670e+01, + 2.45000000e+01, 4.80000019e+00, 2.34999990e+00, 1.73333335e+00, + 1.78333330e+00, 1.01499996e+01, 7.79333344e+01, 1.04400002e+02, + 4.09666672e+01, 9.03333378e+00, 4.73333311e+00, 3.68333340e+00, + 4.28333330e+00, 9.06666660e+00, 6.79000015e+01, 1.13633331e+02, + 2.87166672e+01, 1.39666662e+01, 8.68333340e+00, 5.51666689e+00, + 6.03333330e+00, 1.06000004e+01, 2.59833336e+01, 5.27999992e+01, + 2.25000000e+00, 2., 1.79999995e+00, 8.33333313e-01, 1., + 1.70000005e+00, 2.21666670e+00, 2.38333344e+00, 6.85263138e+01, + 7.91228056e+00, 4.26666679e+01, 1.64052628e+02, 1.41508774e+02, + 1.85087719e+01, 2.15087719e+01, 1.25122810e+02, 5.87894745e+01, + 6.63157892e+00, 2.42456131e+01, 9.39122772e+01, 4.51228065e+01, + 8.29824543e+00, 4.84736824e+01, 1.44280701e+02, 2.45789471e+01, + 7.08771944e+00, 7.80701733e+00, 1.15964909e+01, 8.61403465e+00, + 9.78947353e+00, 3.68421059e+01, 7.40175476e+01, 4.59649134e+00, + 4.08771944e+00, 5.22807026e+00, 5.70175457e+00, 6.73684216e+00, + 7.45614052e+00, 1.18070173e+01, 1.35964909e+01, 6.33508759e+01, + 4.73684216e+00, 1.47719297e+01, 1.45947372e+02, 8.28070145e+01, + 1.21754389e+01, 3.75964928e+01, 1.44649124e+02, 4.70701752e+01, + 1.09298248e+01, 8.78947353e+00, 1.69473686e+01, 1.39473686e+01, + 1.00175438e+01, 3.83508759e+01, 1.13421051e+02, 1.69122810e+01, + 9.96491241e+00, 9.59649086e+00, 1.46315794e+01, 1.72982464e+01, + 1.74035091e+01, 2.22105255e+01, 2.86491222e+01, 4.66666651e+00, + 4.33333349e+00, 6.40350866e+00, 8.50877190e+00, 1.16491232e+01, + 1.22982454e+01, 8.89473724e+00, 6.17543840e+00, 4.12631569e+01, + 6.96491241e+00, 6.73684216e+00, 3.19473686e+01, 1.77368412e+01, + 6.89473677e+00, 3.02280693e+01, 1.03140350e+02, 2.45964909e+01, + 1.50526314e+01, 1.17719297e+01, 1.36842108e+01, 1.57017546e+01, + 1.41228065e+01, 1.98070183e+01, 3.51052628e+01, 1.24736843e+01, + 1.32982454e+01, 1.41403513e+01, 1.47894735e+01, 1.84210529e+01, + 1.72982464e+01, 1.28596487e+01, 1.14561405e+01, 5.50877190e+00, + 5.03508759e+00, 7.29824543e+00, 9.47368431e+00, 1.11403513e+01, + 1.09122810e+01, 8.19298267e+00, 5.54385948e+00, 1.43157892e+01, + 7.70175457e+00, 5.57894754e+00, 4.85964918e+00, 5.91228056e+00, + 5.38596487e+00, 9.35087681e+00, 2.19298248e+01, 8.35087681e+00, + 9.70175457e+00, 8.80701733e+00, 9.35087681e+00, 1.12982454e+01, + 1.15263157e+01, 7.59649134e+00, 8.03508759e+00, 6.66666651e+00, + 9.29824543e+00, 9.98245621e+00, 9.28070164e+00, 1.05263157e+01, + 1.00526314e+01, 6.80701733e+00, 4.91228056e+00, 3.40350866e+00, + 3.47368431e+00, 4.64912271e+00, 5.57894754e+00, 4.78947353e+00, + 4.31578970e+00, 4.78947353e+00, 3.89473677e+00, 1.13349998e+02, + 1.28000002e+01, 3.00000012e-01, 1.76666665e+00, 1.46000004e+01, + 8.33333302e+00, 3.73333335e+00, 4.16333351e+01, 4.06333351e+01, + 5.58333349e+00, 2.43333340e+00, 6.03333330e+00, 1.83333340e+01, + 1.81666660e+01, 1.45333338e+01, 3.35666656e+01, 2.38333340e+01, + 1.09499998e+01, 6.16666651e+00, 8.25000000e+00, 1.05333338e+01, + 1.35166664e+01, 1.85166664e+01, 3.12500000e+01, 1.30666666e+01, + 7.34999990e+00, 4.46666670e+00, 5.34999990e+00, 9.28333378e+00, + 1.69166660e+01, 1.97666664e+01, 1.88333340e+01, 1.28233337e+02, + 98., 4.66666669e-01, 6.16666675e-01, 1.39333334e+01, + 2.32666664e+01, 4.71666670e+00, 9.23333359e+00, 6.58000031e+01, + 4.38499985e+01, 4.19999981e+00, 3.75000000e+00, 1.49666662e+01, + 3.12000008e+01, 2.06666660e+01, 1.93166676e+01, 2.72500000e+01, + 1.35000000e+01, 7.26666689e+00, 8.06666660e+00, 1.64500008e+01, + 2.29666672e+01, 2.51333332e+01, 3.03999996e+01, 1.95499992e+01, + 1.28333330e+01, 1.03000002e+01, 1.09499998e+01, 1.42166662e+01, + 1.45500002e+01, 1.42166662e+01, 1.77999992e+01, 8.59833298e+01, + 1.22333336e+02, 3.90000010e+00, 5.50000012e-01, 1.13000002e+01, + 6.12500000e+01, 1.41166668e+01, 5.15000010e+00, 5.62166672e+01, + 1.28133331e+02, 3.09166660e+01, 1.73333335e+00, 6.51666689e+00, + 2.74500008e+01, 1.60333328e+01, 8.26666641e+00, 1.43000002e+01, + 5.61500015e+01, 4.34500008e+01, 8.88333321e+00, 1.09499998e+01, + 1.88166676e+01, 2.48333340e+01, 1.60333328e+01, 8.53333378e+00, + 1.02166662e+01, 3.59000015e+01, 2.48833332e+01, 1.05166664e+01, + 1.33500004e+01, 1.80833340e+01, 1.40166664e+01, 1.27666664e+01, + 6.24833336e+01, 1.31999998e+01, 1.83333337e+00, 6.61666679e+00, + 1.13650002e+02, 6.26833344e+01, 4.56666660e+00, 1.50333338e+01, + 128., 6.18833351e+01, 1.10000002e+00, 4.13333321e+00, + 6.34333344e+01, 6.53833313e+01, 4.63333321e+00, 4.16666651e+00, + 1.08383331e+02, 1.19416664e+02, 6.46666670e+00, 3.03333330e+00, + 23., 4.30333328e+01, 7.01666689e+00, 1.56666672e+00, + 2.23333340e+01, 1.14033333e+02, 3.50499992e+01, 2.66666675e+00, + 9.18333340e+00, 3.41333351e+01, 1.28333330e+01, 4.46666670e+00, + 2.95555544e+00, 2.02222228e+00, 2.97777772e+00, 9.71111107e+00, + 1.36666670e+01, 1.45555553e+01, 1.05777779e+01, 6.93333340e+00, + 2.42222214e+00, 3.28888893e+00, 1.18222218e+01, 2.82222214e+01, + 2.42000008e+01, 2.06000004e+01, 1.74666672e+01, 2.62222214e+01, + 2.62222219e+00, 3.40000010e+00, 2.84888897e+01, 7.00888901e+01, + 2.58666668e+01, 1.47333336e+01, 2.41555557e+01, 4.65111122e+01, + 4.37777758e+00, 2.75555563e+00, 18., 6.02222214e+01, + 1.43999996e+01, 9.17777824e+00, 3.16666660e+01, 5.93333340e+00, + 3.84444451e+00, 4.08888912e+00, 8.35555553e+00, 1.83999996e+01, + 2.29111118e+01, 2.09555550e+01, 1.29333334e+01, 1.55555553e+01, + 5.48888874e+00, 9.51111126e+00, 3.48666649e+01, 6.89333344e+01, + 3.77999992e+01, 2.45555553e+01, 2.08222218e+01, 6.15555573e+01, + 4.93333340e+00, 5.26666689e+00, 5.50444450e+01, 1.14800003e+02, + 3.02444439e+01, 1.71333332e+01, 4.88222237e+01, 8.53777771e+01, + 3.77777767e+00, 9.77777779e-01, 2.51777782e+01, 1.00244446e+02, + 1.91777782e+01, 1.14666662e+01, 6.15111122e+01, 6.37777758e+00, + 3.77777767e+00, 5.02222204e+00, 1.34888887e+01, 2.71777782e+01, + 2.26444435e+01, 1.93333340e+01, 1.18000002e+01, 2.96000004e+01, + 6.57777786e+00, 1.09555559e+01, 5.11333351e+01, 9.40666656e+01, + 3.79333344e+01, 2.17111111e+01, 2.83333340e+01, 9.33777771e+01, + 4.17777777e+00, 3.64444447e+00, 5.95777779e+01, 1.17711113e+02, + 2.62000008e+01, 1.41555557e+01, 7.34444427e+01, 1.05800003e+02, + 2.33333325e+00, 1.17777777e+00, 3.16000004e+01, 1.05088890e+02, + 1.90444450e+01, 1.20888891e+01, 7.69333344e+01, 4.88888884e+00, + 3.55555558e+00, 4.48888874e+00, 1.65555553e+01, 2.76222229e+01, + 1.91333332e+01, 1.56444445e+01, 1.02222223e+01, 3.59777794e+01, + 4.26666689e+00, 7.26666689e+00, 6.01777763e+01, 8.95555573e+01, + 2.65111103e+01, 2.45777779e+01, 4.68666649e+01, 8.13333359e+01, + 3.88888884e+00, 4.02222204e+00, 4.97111130e+01, 1.03400002e+02, + 2.63999996e+01, 2.23999996e+01, 7.93111115e+01, 9.07333298e+01, + 3.77777767e+00, 3.73333335e+00, 2.75777779e+01, 8.75555573e+01, + 2.43111115e+01, 1.18888893e+01, 5.73333321e+01, 7.09677410e+00, + 8.67741966e+00, 3.93548393e+00, 2.54838705e+00, 1.61290324e+00, + 3., 3.90322590e+00, 3.45161295e+00, 2.81612911e+01, + 2.92580643e+01, 1.36451616e+01, 2.86774197e+01, 1.06774197e+01, + 1.37419357e+01, 1.48709679e+01, 1.57419357e+01, 2.80645161e+01, + 2.04516125e+01, 3.05161285e+01, 1.04516129e+02, 2.72580643e+01, + 1.26129036e+01, 1.89032249e+01, 4.64516144e+01, 2.48387089e+01, + 6.45161295e+00, 4.10967751e+01, 1.15774193e+02, 1.89354839e+01, + 5.70967722e+00, 2.47096767e+01, 1.00354836e+02, 1.12580643e+01, + 1.19032259e+01, 6.54838705e+00, 5.54838705e+00, 3.06451607e+00, + 3.25806451e+00, 4.16129017e+00, 5.22580624e+00, 3.64516144e+01, + 2.80645161e+01, 2.96451607e+01, 8.36451645e+01, 4.36451607e+01, + 1.56451616e+01, 1.50967741e+01, 2.72580643e+01, 4.15806465e+01, + 2.05483875e+01, 4.38064499e+01, 1.20548386e+02, 5.09677429e+01, + 9.19354820e+00, 3.22258072e+01, 1.14225807e+02, 3.38064499e+01, + 1.13225803e+01, 4.19677429e+01, 1.08838707e+02, 1.30322580e+01, + 4.03225803e+00, 4.84516144e+01, 1.24774193e+02, 1.07096777e+01, + 1.04838705e+01, 8.61290359e+00, 6.90322590e+00, 6.96774197e+00, + 3.90322590e+00, 3.61290312e+00, 7.64516115e+00, 3.07419357e+01, + 3.56451607e+01, 2.80967751e+01, 5.30322571e+01, 6.48709641e+01, + 4.39032249e+01, 2.51290321e+01, 2.50967751e+01, 5.40645180e+01, + 5.25806465e+01, 39., 5.88387108e+01, 4.29354820e+01, + 3.27419357e+01, 5.17419357e+01, 9.43871002e+01, 4.62258072e+01, + 2.57419357e+01, 42., 6.01612892e+01, 1.24193544e+01, + 1.01935482e+01, 3.95483856e+01, 1.07193550e+02, 4.58064508e+00, + 6.80645180e+00, 4.54838705e+00, 2.16129041e+00, 3.45161295e+00, + 2.32258058e+00, 2.25806451e+00, 3.70967746e+00, 1.58709679e+01, + 2.25806446e+01, 1.28064518e+01, 7.09677410e+00, 2.42903233e+01, + 3.33548393e+01, 1.90967751e+01, 1.23225803e+01, 2.58064518e+01, + 2.76129036e+01, 1.68709679e+01, 7., 1.46774197e+01, + 2.70322590e+01, 36., 4.09677429e+01, 1.89032249e+01, + 1.20322580e+01, 1.40967741e+01, 1.53225803e+01, 5.87096786e+00, + 6.70967722e+00, 1.77741928e+01, 3.11612911e+01, 2.58536577e+00, + 1.02439022e+00, 5.85365832e-01, 1.51219511e+00, 3.82926822e+00, + 6.19512177e+00, 4.29268312e+00, 3.02439022e+00, 7.41463423e+00, + 3.60975599e+00, 8., 9.21951199e+00, 9.29268265e+00, + 1.24878044e+01, 1.59024391e+01, 1.02439022e+01, 9.26829243e+00, + 1.07804880e+01, 1.19268293e+01, 5.60975599e+00, 4.63414621e+00, + 1.53658533e+01, 1.86585369e+01, 1.55365858e+01, 5.43902445e+00, + 3.78048778e+00, 2.51219511e+00, 1.48780489e+00, 3.51219511e+00, + 1.05609760e+01, 1.84634151e+01, 1.30731707e+01, 7.51219511e+00, + 2.85365844e+00, 3., 6.92682934e+00, 1.45121956e+01, + 2.00243912e+01, 1.94634151e+01, 1.32926826e+01, 2.07560978e+01, + 1.35365858e+01, 2.81707325e+01, 4.28780479e+01, 5.30243912e+01, + 5.14878044e+01, 4.37804871e+01, 40., 3.83414650e+01, + 6.07560959e+01, 6.11463432e+01, 4.03658524e+01, 3.34390259e+01, + 4.87560959e+01, 5.62195129e+01, 4.52926826e+01, 3.77804871e+01, + 5.38536568e+01, 2.21951218e+01, 8.80487823e+00, 1.41463413e+01, + 3.84878044e+01, 5.23658524e+01, 3.75365868e+01, 7.21951199e+00, + 3.48780489e+00, 4.09756088e+00, 8.58536625e+00, 1.93414631e+01, + 2.50487804e+01, 2.27560978e+01, 1.51951218e+01, 2.48780479e+01, + 20., 2.52926826e+01, 4.32195129e+01, 8.96829300e+01, + 8.54146347e+01, 5.11463432e+01, 4.09024391e+01, 6.51707306e+01, + 72., 3.86341476e+01, 3.38780479e+01, 7.72926865e+01, + 8.98292694e+01, 5.54390259e+01, 4.90487823e+01, 8.92926865e+01, + 9.95121918e+01, 1.88292675e+01, 9.04878044e+00, 3.76097565e+01, + 6.19756088e+01, 4.35853653e+01, 3.13658543e+01, 6.34146357e+00, + 5.17073154e+00, 6.09756088e+00, 6.63414621e+00, 1.26097565e+01, + 1.73658543e+01, 1.55853662e+01, 1.13414631e+01, 3.02682934e+01, + 1.93414631e+01, 1.02682924e+01, 2.19512196e+01, 7.31707306e+01, + 7.54878082e+01, 3.58780479e+01, 2.65121956e+01, 7.06829300e+01, + 5.31219521e+01, 5.63414621e+00, 1.24146338e+01, 8.99268265e+01, + 9.84146347e+01, 2.89024391e+01, 2.50731716e+01, 9.08780518e+01, + 8.09756088e+01, 5.65853643e+00, 5.36585379e+00, 5.33902435e+01, + 7.64390259e+01, 2.01219521e+01, 1.65853653e+01, 7.35294104e+00, + 1.61176472e+01, 30., 2.20588231e+00, 6.70588255e+00, + 3.17058830e+01, 4.07941170e+01, 2.15294113e+01, 6.61764717e+00, + 7.47647095e+01, 5.01470604e+01, 3.50000000e+00, 1.63235302e+01, + 4.88823547e+01, 3.83529396e+01, 1.49117651e+01, 1.86176472e+01, + 1.16764709e+02, 3.78529396e+01, 4.44117641e+00, 2.30882359e+01, + 1.04117645e+02, 2.90882359e+01, 4.79411745e+00, 1.37647057e+01, + 4.75882339e+01, 8.91176510e+00, 3.82352948e+00, 4.64117661e+01, + 1.18117645e+02, 9.05882359e+00, 2.26470590e+00, 9.05882359e+00, + 5.55882359e+00, 3.44117641e+00, 4.97058821e+00, 2.01764698e+01, + 6.41764679e+01, 57., 2.21764698e+01, 3.70588231e+00, + 6.35294104e+00, 3.94117641e+00, 6.23529434e+00, 5.63529396e+01, + 6.43529434e+01, 2.82941170e+01, 9.14705849e+00, 3.01470585e+01, + 9.37058792e+01, 1.12352943e+01, 8.76470566e+00, 5.81764717e+01, + 4.36176453e+01, 7.61764717e+00, 3.17647052e+00, 7.07647095e+01, + 1.08235291e+02, 7.29411745e+00, 4.32352924e+00, 8.56764679e+01, + 1.08147057e+02, 3.76470590e+00, 2.20588231e+00, 1.66176472e+01, + 1.94705887e+01, 19., 2.43529415e+01, 4.04411774e+01, + 4.46764717e+01, 3.25000000e+01, 1.67058830e+01, 1.97058821e+00, + 3.52941179e+00, 1.25882349e+01, 2.62058830e+01, 9.63823547e+01, + 5.86176453e+01, 1.25000000e+01, 2.91176462e+00, 1.66470585e+01, + 1.45882349e+01, 3.64705873e+00, 2.80882359e+01, 84., + 2.44705887e+01, 3.61764717e+00, 3.32352948e+00, 1.07500000e+02, + 9.14411774e+01, 3.64705873e+00, 9.76470566e+00, 7.85000000e+01, + 3.69705887e+01, 1.88235295e+00, 3.73529410e+00, 9.76470566e+00, + 1.32352943e+01, 1.77058830e+01, 2.82647057e+01, 3.03823528e+01, + 1.37058821e+01, 7.67647076e+00, 7.29411745e+00, 1.47058821e+00, + 3.23529410e+00, 1.25588236e+01, 5.12058830e+01, 7.81176453e+01, + 1.92352943e+01, 2.61764717e+00, 1.32352936e+00, 9.52941132e+00, + 1.91176474e+00, 5.88235283e+00, 4.46176453e+01, 5.98235283e+01, + 1.12647057e+01, 3., 6.35294104e+00, 1.00470589e+02, + 2.21764698e+01, 2.61764717e+00, 1.79411774e+01, 5.56176453e+01, + 7.88235283e+00, 1.50000000e+00, 1.47941179e+01, 7.35849082e-01, + 3.09433961e+00, 1.58490562e+00, 1.90566039e+00, 3.83018875e+01, + 8.43584900e+01, 4.47169828e+00, 3.01886797e-01, 1.80188675e+01, + 4.45660362e+01, 3.96226406e+00, 4.52830172e+00, 2.55094337e+01, + 3.29622650e+01, 1.98113203e+00, 7.54716992e-01, 1.02169815e+02, + 1.04207550e+02, 3.45283008e+00, 2.26415086e+00, 4.92452812e+00, + 6.39622641e+00, 1.96226418e+00, 4.69811344e+00, 6.21320763e+01, + 4.41132088e+01, 6.50943375e+00, 2.47169805e+00, 2.66037726e+00, + 2.56603765e+00, 3.09433961e+00, 1.03018866e+01, 4.64150953e+00, + 5.96226406e+00, 2.52830195e+00, 6.28301907e+00, 8.89056625e+01, + 7.84528275e+01, 5.11320734e+00, 1.22641504e+00, 1.39056606e+01, + 9.79245281e+00, 2.49056602e+00, 9.43396187e+00, 9.23396225e+01, + 5.56037750e+01, 2.09433961e+00, 1.45283020e+00, 1.25377357e+02, + 8.20377350e+01, 2.94339633e+00, 4.77358484e+00, 1.31320753e+01, + 6.81132078e+00, 1.52830184e+00, 6.52830172e+00, 1.15886795e+02, + 5.47358475e+01, 5.26415110e+00, 2.50943398e+00, 4.83018875e+00, + 3.64150953e+00, 4.32075453e+00, 1.72264156e+01, 9.26415062e+00, + 5.43396235e+00, 2.86792445e+00, 2.84716988e+01, 9.63962250e+01, + 2.47169819e+01, 1.75471699e+00, 2.71698117e+00, 1.19622641e+01, + 2.43396235e+00, 2.24528313e+00, 2.81509438e+01, 1.20301888e+02, + 2.66226406e+01, 1.07547164e+00, 4.66037750e+00, 1.25660378e+02, + 2.38867931e+01, 2.67924523e+00, 8.11320782e+00, 2.00188675e+01, + 4.39622641e+00, 1.58490562e+00, 3.01320763e+01, 1.23584908e+02, + 2.77547169e+01, 3.16981125e+00, 2.47169805e+00, 4.45283031e+00, + 3.15094328e+00, 4.98113203e+00, 3.12452831e+01, 5.52830172e+00, + 1.96226418e+00, 3.75471687e+00, 6.49056625e+01, 6.33207550e+01, + 3.24528313e+00, 8.49056602e-01, 3.49056602e+00, 1.26792450e+01, + 1.13207543e+00, 2.62264156e+00, 5.62641525e+01, 8.32830200e+01, + 4.13207531e+00, 7.73584902e-01, 1.64716988e+01, 1.20377357e+02, + 4.05660391e+00, 2.60377359e+00, 8.41509438e+00, 1.07735853e+01, + 1.86792457e+00, 1.60377359e+00, 8.46603775e+01, 1.00716980e+02, + 9.18867970e+00, 3.05660367e+00, 3.07547164e+00, 3.69811320e+00, + 3.22641516e+00, 5.05660391e+00, 5.26981125e+01, 2.05263162e+00, + 1.65789473e+00, 2.31578946e+00, 2.26315784e+00, 1.61842108e+00, + 2.18421054e+00, 2.39473677e+00, 2.85526323e+00, 1.57894735e+01, + 1.32500000e+01, 1.28684206e+01, 1.34078951e+01, 1.05263157e+01, + 1.30789471e+01, 1.27763157e+01, 1.46578951e+01, 1.98552628e+01, + 1.63421059e+01, 1.41447372e+01, 1.78684216e+01, 1.86710529e+01, + 1.57631578e+01, 1.45657892e+01, 1.75526314e+01, 1.23157892e+01, + 1.02894735e+01, 1.35921049e+01, 3.09868412e+01, 2.23552628e+01, + 1.12368422e+01, 1.01973686e+01, 1.14868422e+01, 4.25000000e+00, + 3.48684216e+00, 4.14473677e+00, 5.18421030e+00, 5.80263138e+00, + 5.15789461e+00, 4.97368431e+00, 4.77631569e+00, 2.73815784e+01, + 2.35657902e+01, 2.16842098e+01, 2.42236843e+01, 2.20921059e+01, + 2.35394745e+01, 2.37894745e+01, 2.37894745e+01, 2.81842098e+01, + 2.65921059e+01, 2.91447372e+01, 4.69605255e+01, 3.97368431e+01, + 2.65921059e+01, 2.31184216e+01, 2.57894745e+01, 1.29210529e+01, + 1.21315794e+01, 3.72894745e+01, 1.42684204e+02, 7.05131607e+01, + 1.58026314e+01, 1.01842108e+01, 1.07105265e+01, 3.76315784e+00, + 4.11842108e+00, 5.40789461e+00, 6.65789461e+00, 6.92105246e+00, + 5.34210539e+00, 5.47368431e+00, 4.02631569e+00, 2.21842098e+01, + 2.73947372e+01, 28., 3.42500000e+01, 2.96052628e+01, + 2.40921059e+01, 2.25526314e+01, 2.02236843e+01, 1.96315784e+01, + 2.46184216e+01, 3.92763176e+01, 1.17697365e+02, 8.60131607e+01, + 2.12500000e+01, 1.55526314e+01, 1.97236843e+01, 8.31578922e+00, + 5.07894754e+00, 3.30394745e+01, 1.66855270e+02, 1.38368423e+02, + 8.21052647e+00, 4.97368431e+00, 1.36710529e+01, 2.98684216e+00, + 3.63157892e+00, 4.67105246e+00, 5.65789461e+00, 4.96052647e+00, + 3.40789485e+00, 4.19736862e+00, 3.48684216e+00, 1.47500000e+01, + 1.73421059e+01, 2.17500000e+01, 4.06184196e+01, 3.53684196e+01, + 1.94210529e+01, 1.45263157e+01, 1.25526314e+01, 1.15000000e+01, + 1.08026314e+01, 2.35263157e+01, 1.53473679e+02, 1.38052628e+02, + 1.56578951e+01, 7.68421030e+00, 1.07105265e+01, 2.34078941e+01, + 3.23684216e+00, 1.32236843e+01, 1.59473679e+02, 1.46276321e+02, + 8.97368431e+00, 5.69736862e+00, 4.56710510e+01, 6.76666689e+00, + 4.00000006e-01, 7.66666651e-01, 4.40000010e+00, 2., + 3.03333330e+00, 1.63666668e+01, 7.56666660e+00, 5.43333340e+00, + 4.33333337e-01, 9.33333337e-01, 6.00000024e-01, 1.33333337e+00, + 6.50000000e+00, 2.17999992e+01, 6.83333349e+00, 3.63333344e+00, + 6.73333311e+00, 2.06666660e+00, 7.33333349e-01, 1.86666667e+00, + 7., 1.72999992e+01, 4.56666660e+00, 7.76666689e+00, + 3.15333328e+01, 5.26666689e+00, 1.66666672e-01, 7.66666651e-01, + 4.59999990e+00, 7.56666660e+00, 1.70000005e+00, 1.14333334e+01, + 2.03333330e+00, 9.46666622e+00, 1.65333328e+01, 7.43333340e+00, + 1.62333336e+01, 1.18266670e+02, 5.72000008e+01, 5.59999990e+00, + 6.50000000e+00, 1.41333332e+01, 3.33333325e+00, 3.76666665e+00, + 4.84000015e+01, 1.23166664e+02, 2.28333340e+01, 8.89999962e+00, + 29., 1.26333332e+01, 2.36666656e+00, 8.10000038e+00, + 7.88000031e+01, 9.25000000e+01, 9.46666622e+00, 2.90333328e+01, + 7.10333328e+01, 1.26666670e+01, 1.83333337e+00, 5.53333330e+00, + 4.90333328e+01, 3.78333321e+01, 6.53333330e+00, 6.40000010e+00, + 5.33333349e+00, 1.14666662e+01, 1.28666668e+01, 8.19999981e+00, + 1.83333340e+01, 1.26366669e+02, 6.65999985e+01, 4.13333321e+00, + 1.23000002e+01, 1.62999992e+01, 6.96666670e+00, 6.36666679e+00, + 6.95999985e+01, 1.33300003e+02, 2.68333340e+01, 4.53333330e+00, + 1.94666672e+01, 1.27333336e+01, 1.36666667e+00, 9.33333302e+00, + 1.19766670e+02, 1.22599998e+02, 1.31666670e+01, 2.40333328e+01, + 4.11666679e+01, 6.96666670e+00, 7.33333349e-01, 1.38000002e+01, + 1.18066666e+02, 6.23666649e+01, 8.39999962e+00, 1.49666662e+01, + 1.16666670e+01, 1.05333338e+01, 1.09666662e+01, 1.06000004e+01, + 1.43999996e+01, 3.94666672e+01, 2.92666664e+01, 1.62666664e+01, + 1.27333336e+01, 1.31999998e+01, 9.39999962e+00, 9.33333302e+00, + 3.05333328e+01, 6.09000015e+01, 3.37333336e+01, 1.30333338e+01, + 1.14333334e+01, 1.01999998e+01, 7., 1.73999996e+01, + 8.55000000e+01, 6.65666656e+01, 2.42666664e+01, 1.68999996e+01, + 1.14666662e+01, 6.36666679e+00, 4.09999990e+00, 3.72666664e+01, + 1.17566666e+02, 4.78666649e+01, 1.26999998e+01, 2.53521132e+00, + 9.66197205e+00, 1.33943663e+01, 3.45070434e+00, 1.01408446e+00, + 8.87323916e-01, 6.90140843e-01, 7.46478856e-01, 2.84507036e+00, + 1.15633802e+01, 1.31126757e+01, 3.54929566e+00, 2.26760554e+00, + 1.71830988e+00, 6.33802831e-01, 8.73239458e-01, 3.15492964e+00, + 9.83098602e+00, 9.52112675e+00, 2.29577470e+00, 1.98591554e+00, + 7.04225361e-01, 8.87323916e-01, 1.33802819e+00, 2.47887325e+00, + 4.63380289e+00, 4.15492964e+00, 1.60563385e+00, 3.11267614e+00, + 1.29577470e+00, 2.05633807e+00, 1.60563385e+00, 1.39859152e+01, + 2.03380280e+01, 2.61267605e+01, 6.60563374e+00, 3.63380289e+00, + 4.43521118e+01, 9.86338043e+01, 9.92957783e+00, 9.90140820e+00, + 3.28309860e+01, 2.66478882e+01, 7.47887325e+00, 4.90140867e+00, + 4.02112694e+01, 4.51408463e+01, 5.12676048e+00, 1.26056337e+01, + 3.77183113e+01, 2.60422535e+01, 6.28169012e+00, 6.49295759e+00, + 6.87323952e+00, 5.59154940e+00, 4.02816916e+00, 8.94366169e+00, + 2.42816906e+01, 1.49718313e+01, 5.01408434e+00, 6.95774651e+00, + 2.46478868e+00, 4.30985928e+00, 4.09859133e+00, 6.84507036e+00, + 1.00464790e+02, 1.31591553e+02, 5.98591566e+00, 3.28169012e+00, + 6.46619720e+01, 1.06056335e+02, 8.45070457e+00, 7.66197205e+00, + 1.26816902e+02, 9.21690140e+01, 3.16901398e+00, 4.63380289e+00, + 1.35436615e+02, 1.16140846e+02, 5.21126747e+00, 1.19154930e+01, + 5.93943672e+01, 2.47183094e+01, 4.74647903e+00, 1.11549292e+01, + 1.29830978e+02, 5.32253532e+01, 4.25352097e+00, 1.20140848e+01, + 3.35774651e+01, 1.61267605e+01, 4.52112675e+00, 6.14084530e+00, + 2.18309860e+01, 8.50704193e+00, 4.18309879e+00, 3.40845060e+00, + 3.09577465e+01, 3.61971817e+01, 1.85915494e+00, 9.16901398e+00, + 3.25774651e+01, 2.20422535e+01, 6.26760578e+00, 1.00704222e+01, + 1.29084503e+02, 6.38873253e+01, 2.26760554e+00, 1.02112675e+01, + 5.17746468e+01, 1.98028164e+01, 4.43661976e+00, 2.34647884e+01, + 1.36929581e+02, 2.86338024e+01, 2.30985904e+00, 2.37323952e+01, + 1.31338028e+02, 2.13098583e+01, 2.16901398e+00, 1.22112675e+01, + 4.00422554e+01, 7.66197205e+00, 2.50704217e+00, 2.52676048e+01, + 1.01647888e+02, 8.66197205e+00, 2.88732386e+00, 2.32608700e+00, + 3.51956520e+01, 7.75000000e+01, 1.03478260e+01, 1.76086962e+00, + 2.50000000e+00, 3.10869575e+00, 1.47826087e+00, 5.58695650e+00, + 5.00434799e+01, 7.04565201e+01, 9.26086998e+00, 2.56521749e+00, + 3.06521749e+00, 3.08695650e+00, 2.52173924e+00, 1.05434780e+01, + 4.70652161e+01, 3.88913040e+01, 6.13043499e+00, 3.80434775e+00, + 4.26086950e+00, 3.54347825e+00, 4.52173901e+00, 7.84782600e+00, + 2.26956520e+01, 1.51521740e+01, 5.50000000e+00, 5.04347849e+00, + 5.52173901e+00, 5.60869551e+00, 4.89130449e+00, 1.86956525e+00, + 7.85217361e+01, 1.17304344e+02, 8.52173901e+00, 2.19565225e+00, + 1.19782610e+01, 2.36521740e+01, 2.54347825e+00, 5.08695650e+00, + 1.11282608e+02, 1.13521736e+02, 8.41304302e+00, 2.93478251e+00, + 1.73695660e+01, 1.23913040e+01, 1.69565213e+00, 1.47608700e+01, + 1.15108696e+02, 8.89130402e+01, 6.39130449e+00, 2.43478251e+00, + 8.80434799e+00, 4.08695650e+00, 2.41304350e+00, 1.80217400e+01, + 8.61086960e+01, 4.73260880e+01, 5.02173901e+00, 4.13043499e+00, + 4.26086950e+00, 2.93478251e+00, 3.26086950e+00, 1.89130437e+00, + 3.91086960e+01, 5.41956520e+01, 1., 7.82608688e-01, + 4.43260880e+01, 9.35000000e+01, 8.30434799e+00, 4.97826099e+00, + 1.10413040e+02, 6.71086960e+01, 1.86956525e+00, 3.17391300e+00, + 7.47391281e+01, 5.23695641e+01, 2.91304350e+00, 2.28913040e+01, + 1.22413040e+02, 4.60652161e+01, 3.50000000e+00, 4.84782600e+00, + 4.99130440e+01, 1.31521740e+01, 4.10869551e+00, 3.16304340e+01, + 1.09500000e+02, 3.34130440e+01, 3.73913050e+00, 3.54347825e+00, + 1.18695650e+01, 3.82608700e+00, 3.86956525e+00, 3.26086950e+00, + 7.54347849e+00, 6.80434799e+00, 6.08695626e-01, 9.34782624e-01, + 3.41086960e+01, 6.55217361e+01, 1.31086960e+01, 3.30434775e+00, + 25., 5.78260851e+00, 1.95652172e-01, 1.22173910e+01, + 1.04978264e+02, 5.42826080e+01, 3.41304350e+00, 2.82608700e+01, + 9.58695679e+01, 7., 8.69565189e-01, 2.13043480e+01, + 8.76739120e+01, 1.26086960e+01, 1.63043475e+00, 4.32173920e+01, + 9.73043442e+01, 8.02173901e+00, 2.54347825e+00, 1.12391300e+01, + 2.64565220e+01, 3.71739125e+00, 3.43478251e+00, 2.37608700e+01, + 2.33043480e+01, 7.84782600e+00, 8.08695698e+00, 1.57608700e+01, + 2.63478260e+01, 1.94565220e+01, 1.35217390e+01, 6.81739120e+01, + 4.47391319e+01, 5.17391300e+00, 6.06521749e+00, 2.96956520e+01, + 3.22608681e+01, 1.61086960e+01, 1.63043480e+01, 1.19304344e+02, + 5.57826080e+01, 8.93478298e+00, 7.23913050e+00, 2.93043480e+01, + 1.81086960e+01, 8.78260899e+00, 1.85000000e+01, 4.56739120e+01, + 2.99130440e+01, 1.43260870e+01, 4.95652151e+00, 1.15000000e+01, + 5.34782600e+00, 6.32608700e+00, 1.58695650e+01, 3.51304359e+01, + 2.78478260e+01, 1.78043480e+01, 1.82391300e+01, 2.36521740e+01, + 1.52826090e+01, 7.13043499e+00, 1.30869570e+01, 1.02934784e+02, + 2.93478260e+01, 1.73478260e+01, 3.75652161e+01, 5.74565201e+01, + 2.25434780e+01, 9.39130402e+00, 5.42391319e+01, 1.31543472e+02, + 1.59130430e+01, 6.78260851e+00, 2.40217400e+01, 4.81304359e+01, + 1.61956520e+01, 1.05869570e+01, 9.23260880e+01, 5.59347839e+01, + 1.62826080e+01, 1.10652170e+01, 9.15217400e+00, 20., + 1.08695650e+01, 1.51304350e+01, 3.81739120e+01, 1.64565220e+01, + 1.40217390e+01, 1.72391300e+01, 1.42173910e+01, 7.60869551e+00, + 4.08695650e+00, 2.35000000e+01, 3.66956520e+01, 6.97173920e+01, + 1.25217390e+01, 2.20217400e+01, 3.23695641e+01, 1.77826080e+01, + 3.26086950e+00, 2.63478260e+01, 1.30934784e+02, 9.17826080e+01, + 1.01956520e+01, 1.06304350e+01, 3.20652161e+01, 2.94565220e+01, + 9.52173901e+00, 2.54130440e+01, 1.29652176e+02, 3.10869560e+01, + 1.66521740e+01, 1.10869570e+01, 9.80434799e+00, 1.13695650e+01, + 8.93478298e+00, 2.49347820e+01, 4.77173920e+01, 3.67391300e+00, + 2.73913050e+00, 4.06521749e+00, 2.78260875e+00, 1.63043475e+00, + 7.52173901e+00, 120., 9.20217361e+01, 1.33043480e+01, + 3.28260875e+00, 5.63043499e+00, 8.41304302e+00, 5., + 1.05869570e+01, 7.99130402e+01, 1.25782608e+02, 1.35869570e+01, + 5.69565201e+00, 5.26086950e+00, 1.23260870e+01, 9., + 1.24130430e+01, 3.69130440e+01, 6.56521759e+01, 14., + 7.71739149e+00, 3.30434775e+00, 3.89130425e+00, 5.04347849e+00, + 6.58695650e+00, 2.19347820e+01, 3.24347839e+01, 2.57837830e+01, + 2.65675678e+01, 2.70810814e+01, 2.48918915e+01, 7.09729767e+01, + 27., 1.23783779e+01, 1.57837839e+01, 9.78648682e+01, + 3.68108101e+01, 1.43243246e+01, 5.22972984e+01, 1.21243240e+02, + 4.12162170e+01, 6.97297287e+00, 3.47297287e+01, 1.11891891e+02, + 4.12162170e+01, 1.79729729e+01, 3.53513527e+01, 6.15135117e+01, + 1.56756754e+01, 9.18918896e+00, 4.47567558e+01, 7.60540543e+01, + 2.77027035e+01, 2.08378372e+01, 1.97837830e+01, 1.71891899e+01, + 1.08108110e+01, 1.68378372e+01, 4.34324341e+01, 2.38108101e+01, + 3.69729729e+01, 4.02162170e+01, 2.53783779e+01, 6.27297287e+01, + 3.34594612e+01, 1.27567568e+01, 1.51621618e+01, 7.44864883e+01, + 6.64324341e+01, 4.63513527e+01, 4.09189186e+01, 1.18135132e+02, + 9.43513489e+01, 3.33783798e+01, 3.17567558e+01, 1.11108109e+02, + 6.03243256e+01, 4.86756744e+01, 3.88648643e+01, 4.68108101e+01, + 3.54594612e+01, 3.94324341e+01, 6.61081085e+01, 7.78378372e+01, + 4.24324341e+01, 2.85135136e+01, 2.65405407e+01, 1.78378372e+01, + 9., 1.05675678e+01, 4.18648643e+01, 1.75945950e+01, + 3.33243256e+01, 3.39189186e+01, 2.01351357e+01, 1.82972965e+01, + 1.78108101e+01, 8.75675678e+00, 9.02702713e+00, 2.11621628e+01, + 4.47567558e+01, 4.79189186e+01, 2.61621628e+01, 4.84054070e+01, + 8.21621628e+01, 5.07837830e+01, 2.11621628e+01, 4.84054070e+01, + 3.57567558e+01, 5.11891899e+01, 2.92432442e+01, 1.55945950e+01, + 3.71891899e+01, 7.05405426e+01, 6.90810776e+01, 3.79459457e+01, + 2.85675678e+01, 2.82162170e+01, 2.54594593e+01, 1.17837839e+01, + 6.70270252e+00, 9.62162209e+00, 2.97297306e+01, 3.94594598e+00, + 5.78378391e+00, 6.02702713e+00, 3.91891885e+00, 2.35135126e+00, + 1.56756759e+00, 1.29729724e+00, 1.97297299e+00, 4.10810804e+00, + 7.56756735e+00, 8.86486530e+00, 5.83783770e+00, 3.78378367e+00, + 6.97297287e+00, 5.10810804e+00, 2.29729724e+00, 4.67567587e+00, + 6.83783770e+00, 1.01351347e+01, 5.16216230e+00, 2.75675678e+00, + 5.35135126e+00, 1.04864864e+01, 6.94594574e+00, 4.56756735e+00, + 4.13513517e+00, 6.08108091e+00, 4.08108091e+00, 1.59459460e+00, + 1.27027023e+00, 1.78378379e+00, 4.10810804e+00, 6.91071415e+00, + 3.08928561e+00, 1.17142859e+01, 1.50892859e+01, 4.69642878e+00, + 3.46428561e+00, 7.12500000e+00, 3.17857146e+00, 1.26250000e+01, + 6.50000000e+00, 1.84821434e+01, 1.48571424e+01, 5.23214293e+00, + 1.92857146e+00, 4.92857122e+00, 8.01785755e+00, 5.16071415e+00, + 7.69642878e+00, 1.73035717e+01, 1.06964283e+01, 5.55357122e+00, + 2.64285707e+00, 1.32321424e+01, 6.64285707e+00, 2.08928561e+00, + 6.46428585e+00, 1.20892859e+01, 6.80357122e+00, 4.28571415e+00, + 3.14285707e+00, 1.37321424e+01, 2.75000000e+00, 4.64285707e+00, + 3.50000000e+00, 1.89107151e+01, 2.22857151e+01, 6.91071415e+00, + 3.57142854e+00, 4.68750000e+01, 6.85892868e+01, 7.28571415e+00, + 6.62500000e+00, 5.34821434e+01, 4.09821434e+01, 5.91071415e+00, + 6.21428585e+00, 1.22642860e+02, 1.04839287e+02, 3.48214293e+00, + 1.22857141e+01, 1.01750000e+02, 3.64464302e+01, 6., + 1.54642859e+01, 1.25303574e+02, 5.37142868e+01, 2.03571439e+00, + 1.94107151e+01, 8.55000000e+01, 1.35178576e+01, 4.87500000e+00, + 3.93571434e+01, 1.18410713e+02, 1.06607141e+01, 7.55357122e+00, + 2.17857146e+00, 57., 1.18232140e+02, 5.60714293e+00, + 2.08928561e+00, 5.68035698e+01, 1.21696426e+02, 6.39285707e+00, + 6.92857122e+00, 1.20910713e+02, 1.22464287e+02, 4.32142878e+00, + 6.07142878e+00, 6.89642868e+01, 6.65178604e+01, 5.76785707e+00, + 1.59107141e+01, 1.23321426e+02, 5.72321434e+01, 3.98214293e+00, + 1.53392859e+01, 5.41964302e+01, 2.17857151e+01, 3.21428561e+00, + 3.69464302e+01, 1.10839287e+02, 1.21250000e+01, 4.19642878e+00, + 2.66607151e+01, 4.27857132e+01, 9.42857170e+00, 1.16428576e+01, + 4.21428585e+00, 1.68214283e+01, 9.94821396e+01, 1.21964283e+01, + 2.55357146e+00, 1.28214283e+01, 3.54642868e+01, 1.42500000e+01, + 3.60714293e+00, 7.48214293e+00, 1.96607151e+01, 2.32142854e+00, + 9.57142830e+00, 3.27678566e+01, 31., 8.07142830e+00, + 1.98214281e+00, 1.67857146e+00, 1.25000000e+00, 2.55357146e+00, + 1.88750000e+01, 4.17321434e+01, 3.04464283e+01, 3.32142854e+00, + 1.89285719e+00, 1.57142854e+00, 1.64285719e+00, 4.82142878e+00, + 2.67857151e+01, 3.12857151e+01, 1.39642859e+01, 4.83333349e+00, + 3.45238090e+00, 1.76190472e+00, 1.90476191e+00, 2., + 3.90476179e+00, 7.04761887e+00, 5.21428585e+00, 1.09285717e+01, + 7.73809528e+00, 5.71428585e+00, 1.05238094e+01, 1.88571434e+01, + 1.74761906e+01, 1.66904755e+01, 1.32619047e+01, 6.17380943e+01, + 3.07619057e+01, 5.42857122e+00, 2.16666660e+01, 7.03809509e+01, + 4.11666679e+01, 1.21190472e+01, 3.05476189e+01, 1.43452377e+02, + 8.19047623e+01, 1.29047623e+01, 2.83571434e+01, 5.77857132e+01, + 3.43809509e+01, 1.19047623e+01, 9.04285736e+01, 6.85714293e+00, + 5.92857122e+00, 3.50000000e+00, 3., 3.26190472e+00, + 4.90476179e+00, 6.85714293e+00, 6.38095236e+00, 1.78095245e+01, + 1.29285717e+01, 8.19047642e+00, 1.22619047e+01, 2.24761906e+01, + 2.04523811e+01, 1.56190472e+01, 17., 9.36190491e+01, + 2.73333340e+01, 6.14285707e+00, 1.78809528e+01, 8.48809509e+01, + 5.26904755e+01, 1.23333330e+01, 3.59761887e+01, 1.46023804e+02, + 7.51666641e+01, 12., 2.55714283e+01, 7.58095245e+01, + 2.95000000e+01, 9.33333302e+00, 9.29285736e+01, 6.16666651e+00, + 5.26190472e+00, 5.61904764e+00, 4.59523821e+00, 4.35714293e+00, + 6.83333349e+00, 7.16666651e+00, 6.45238113e+00, 1.81428566e+01, + 1.67142849e+01, 1.24285717e+01, 1.00238094e+01, 1.41428576e+01, + 1.55476189e+01, 1.50476189e+01, 2.03809528e+01, 7.01428604e+01, + 4.02619057e+01, 6.26190472e+00, 9.30952358e+00, 6.17857132e+01, + 6.39047623e+01, 1.74523811e+01, 1.82380943e+01, 1.45761902e+02, + 1.38023804e+02, 6.28571415e+00, 9.85714245e+00, 7.88095245e+01, + 61., 7.66666651e+00, 12., 2.83333325e+00, 2.64285707e+00, + 2.97619057e+00, 2.73809528e+00, 3.33333325e+00, 5.30952358e+00, + 6.78571415e+00, 4.90476179e+00, 1.13095236e+01, 10., + 7.71428585e+00, 6.45238113e+00, 7.80952358e+00, 1.28095236e+01, + 1.36428576e+01, 1.30714283e+01, 2.12380943e+01, 1.70476189e+01, + 7.90476179e+00, 7.64285707e+00, 1.89761906e+01, 3.11666660e+01, + 1.62142849e+01, 1.38095236e+01, 1.00452377e+02, 1.08452377e+02, + 4.28571415e+00, 4.14285707e+00, 3.19285717e+01, 5.34761887e+01, + 1.26904764e+01, 5.83333349e+00, 1.52361107e+01, 38., + 2.54305553e+01, 6.26388884e+00, 4.88888884e+00, 8.87500000e+00, + 1.00972223e+01, 6.48611116e+00, 2.27777786e+01, 3.96527786e+01, + 2.15972214e+01, 6.94444466e+00, 3.95833325e+00, 3.52777767e+00, + 6.80555534e+00, 8.58333302e+00, 1.16388893e+01, 1.75555553e+01, + 1.05555553e+01, 5.63888884e+00, 5.16666651e+00, 5.02777767e+00, + 6.31944466e+00, 6.41666651e+00, 2.37500000e+00, 3.02777767e+00, + 1.93055558e+00, 1.19444442e+00, 1.31944442e+00, 1.48611116e+00, + 2.33333325e+00, 1.72222221e+00, 2.06805553e+01, 5.38611107e+01, + 2.65694447e+01, 8.20833302e+00, 3.83055573e+01, 1.16458336e+02, + 1.36111107e+01, 5.44444466e+00, 4.00833321e+01, 8.09861145e+01, + 3.26666679e+01, 7.59722233e+00, 4.16666651e+00, 4.87500000e+00, + 5.41666651e+00, 6.63888884e+00, 2.90694447e+01, 4.63194427e+01, + 1.84027786e+01, 6.20833349e+00, 3.54166675e+00, 3.33333325e+00, + 4.94444466e+00, 7.40277767e+00, 5.98611116e+00, 7.23611116e+00, + 2.98611116e+00, 1.86111116e+00, 1.52777779e+00, 1.47222221e+00, + 1.90277779e+00, 2.33333325e+00, 6.62361145e+01, 1.13236115e+02, + 1.34166670e+01, 6.04166651e+00, 1.18694443e+02, 1.49736115e+02, + 1.37083330e+01, 5.15277767e+00, 4.43611107e+01, 7.42361145e+01, + 2.40972214e+01, 7.34722233e+00, 4.22916679e+01, 5.96666679e+01, + 7.04166651e+00, 9.01388931e+00, 4.33333321e+01, 5.86388893e+01, + 1.69722214e+01, 4.26388884e+00, 2.13888884e+00, 2.26388884e+00, + 4.12500000e+00, 8.45833302e+00, 9.44444466e+00, 9.72222233e+00, + 3.80555558e+00, 1.27777779e+00, 7.91666687e-01, 9.16666687e-01, + 1.41666663e+00, 2.48611116e+00, 1.32250000e+02, 1.33416672e+02, + 5.31944466e+00, 6.33333349e+00, 1.29750000e+02, 1.36694443e+02, + 6.76388884e+00, 7.08333349e+00, 4.13611107e+01, 4.57777786e+01, + 9.22222233e+00, 7.08333349e+00, 1.34666672e+02, 1.18083336e+02, + 7.41666651e+00, 7.86111116e+00, 4.44583321e+01, 4.30416679e+01, + 9.43055534e+00, 2.84722233e+00, 2.75000000e+00, 3.73611116e+00, + 3.15277767e+00, 8.34722233e+00, 1.10972223e+01, 8.80555534e+00, + 3.05555558e+00, 8.33333313e-01, 5.69444418e-01, 6.80555582e-01, + 8.75000000e-01, 2.22222233e+00, 4.32000008e+01, 3.59999990e+00, + 7.71428585e-01, 4.37428589e+01, 1.06485718e+02, 1.15428572e+01, + 2.45714283e+00, 2.27142849e+01, 1.08628571e+02, 2.16285706e+01, + 2.14285707e+00, 2.67714291e+01, 5.32571411e+01, 4.82857132e+00, + 1.28571427e+00, 5.11142845e+01, 4.67142868e+01, 2.04571438e+01, + 8.48571396e+00, 9.34285736e+00, 6.05714273e+00, 2.14285707e+00, + 1.62857139e+00, 2.17714291e+01, 1.48285713e+01, 1.55428572e+01, + 1.87428570e+01, 1.30285711e+01, 4.42857122e+00, 1.54285717e+00, + 3.42857146e+00, 8.91428566e+00, 4.98571434e+01, 9.74285698e+00, + 1.20000005e+00, 1.76571426e+01, 1.09057144e+02, 3.65428581e+01, + 6.51428556e+00, 1.50571432e+01, 1.13571426e+02, 7.91999969e+01, + 6.14285707e+00, 1.93428574e+01, 8.32857132e+01, 1.56000004e+01, + 1.57142854e+00, 1.54285717e+01, 5.03714294e+01, 6.74857178e+01, + 1.92857151e+01, 1.05428572e+01, 1.05714283e+01, 5.48571444e+00, + 1.31428576e+00, 4.62857151e+00, 1.21999998e+01, 2.37142849e+01, + 22., 1.39714289e+01, 6.37142849e+00, 2.62857151e+00, + 1.91428566e+00, 4.17142868e+00, 3.26857147e+01, 1.35142860e+01, + 2.28571439e+00, 8.05714321e+00, 9.55428543e+01, 6.93714294e+01, + 9.39999962e+00, 6.28571415e+00, 6.85142822e+01, 9.64571457e+01, + 1.18571424e+01, 8.97142887e+00, 1.05599998e+02, 6.12571411e+01, + 2.85714293e+00, 3.17142868e+00, 3.27714272e+01, 1.16942856e+02, + 4.38571434e+01, 8.14285755e+00, 1.18857145e+01, 1.62285709e+01, + 2.31428576e+00, 1., 6.17142868e+00, 4.87999992e+01, + 4.99714279e+01, 20., 5.08571434e+00, 6.62857151e+00, + 3.48571420e+00, 2.20000005e+00, 1.16000004e+01, 9.71428585e+00, + 3.77142859e+00, 5.74285698e+00, 5.24857140e+01, 7.04571457e+01, + 1.08000002e+01, 5.54285717e+00, 2.27714291e+01, 4.57999992e+01, + 7.25714302e+00, 3.22857141e+00, 9.34285736e+01, 1.13085716e+02, + 6., 3.40000010e+00, 1.37428570e+01, 1.05542854e+02, + 3.96857147e+01, 3.11428571e+00, 2.29142857e+01, 5.33142853e+01, + 4.42857122e+00, 1.25714290e+00, 2.59999990e+00, 6.46285706e+01, + 6.56285706e+01, 5.22857141e+00, 2.65714288e+00, 1.46285715e+01, + 6.02857161e+00, 8.28571439e-01, 4.37173920e+01, 7.61521759e+01, + 3.94565201e+01, 3.05000000e+01, 4.95434799e+01, 6.28695641e+01, + 2.28913040e+01, 1.64782600e+01, 5.31086960e+01, 8.30652161e+01, + 5.09347839e+01, 3.50434799e+01, 4.00434799e+01, 4.45869560e+01, + 2.77173920e+01, 2.49347820e+01, 4.68478279e+01, 5.76521721e+01, + 3.28260880e+01, 2.23260860e+01, 3.04347820e+01, 3.91521721e+01, + 2.09347820e+01, 1.85434780e+01, 1.20434780e+01, 1.00652170e+01, + 4.39130449e+00, 2.91304350e+00, 4.04347849e+00, 7.13043499e+00, + 3.52173924e+00, 3.13043475e+00, 3.22391319e+01, 1.00652176e+02, + 5.87391319e+01, 1.92391300e+01, 5.14782600e+01, 1.12760872e+02, + 5.39782600e+01, 1.14565220e+01, 5.64782600e+01, 9.30869598e+01, + 8.10869598e+01, 5.05869560e+01, 3.67173920e+01, 7.42826080e+01, + 6.80217361e+01, 5.65217400e+01, 6.86086960e+01, 59., + 4.46086960e+01, 3.70869560e+01, 2.85000000e+01, 2.69130440e+01, + 3.17173920e+01, 5.52826080e+01, 1.24782610e+01, 6.93478251e+00, + 5.63043499e+00, 6.36956501e+00, 4.91304350e+00, 4.23913050e+00, + 4., 7.43478251e+00, 1.55434780e+01, 3.88695641e+01, + 3.80434799e+01, 2.03695660e+01, 2.43043480e+01, 9.59347839e+01, + 7.27826080e+01, 1.55000000e+01, 2.68478260e+01, 3.76956520e+01, + 5.59782600e+01, 4.44347839e+01, 2.25000000e+01, 6.95869598e+01, + 1.09304344e+02, 6.81739120e+01, 3.04347820e+01, 1.92826080e+01, + 3.57608681e+01, 4.37608681e+01, 1.70217400e+01, 1.56956520e+01, + 5.14347839e+01, 6.48478241e+01, 4.69565201e+00, 2.71739125e+00, + 4.97826099e+00, 7.36956501e+00, 2.78260875e+00, 1.56521738e+00, + 5.28260851e+00, 1.06956520e+01, 2.06521749e+00, 3.41304350e+00, + 5.47826099e+00, 4.93478251e+00, 4.54347849e+00, 8.36956501e+00, + 8.89130402e+00, 2.54347825e+00, 2.50000000e+00, 3.17391300e+00, + 6.76086950e+00, 9.15217400e+00, 6.36956501e+00, 7.08695650e+00, + 1.39565220e+01, 7.58695650e+00, 2.50000000e+00, 3.58695650e+00, + 6.23913050e+00, 6.65217400e+00, 4.23913050e+00, 3.76086950e+00, + 8.32608700e+00, 7.43478251e+00, 4.13043469e-01, 7.39130437e-01, + 1.08695650e+00, 2.30434775e+00, 1.19565213e+00, 3.26086968e-01, + 7.39130437e-01, 1.10869563e+00, 8.00000012e-01, 2.45714283e+00, + 5.97714272e+01, 3.92571411e+01, 2.71428561e+00, 2.06571426e+01, + 1.01085716e+02, 2.72285709e+01, 9.42857146e-01, 1.06857147e+01, + 8.52571411e+01, 1.90285721e+01, 4.85714293e+00, 5.84285698e+01, + 8.68857117e+01, 5.48571444e+00, 9.71428573e-01, 4.64571419e+01, + 9.85142822e+01, 9.51428604e+00, 8.08571434e+00, 4.99714279e+01, + 3.67428589e+01, 2.08571434e+00, 4.85714293e+00, 1.00714287e+02, + 8.21714249e+01, 6., 5.31428576e+00, 2.26285706e+01, + 1.39714289e+01, 2.45714283e+00, 3.22857141e+00, 3.57142854e+00, + 9.45714283e+00, 9.54285717e+00, 4.57142878e+00, 3.42000008e+01, + 1.09800003e+02, 2.72857151e+01, 1.85714281e+00, 5.28571415e+00, + 1.25714283e+01, 7.65714264e+00, 1.01428576e+01, 1.14314285e+02, + 1.15371429e+02, 5.37142849e+00, 3.14285725e-01, 9.25714302e+00, + 1.29428568e+01, 5.25714302e+00, 2.50285721e+01, 1.26828575e+02, + 6.32000008e+01, 5.42857170e-01, 2.05714297e+00, 4.37428589e+01, + 2.24285717e+01, 8.08571434e+00, 3.05714283e+01, 8.54571457e+01, + 8.62857151e+00, 3.42857152e-01, 1.06857147e+01, 1.64571438e+01, + 2.48857136e+01, 1.94857140e+01, 1.94857140e+01, 1.85142860e+01, + 3.16000004e+01, 1.54285717e+01, 1.03714285e+01, 1.99428577e+01, + 2.75428562e+01, 2.86285706e+01, 32., 5.13428574e+01, + 3.06571426e+01, 7.71428585e+00, 4.11428595e+00, 1.59428568e+01, + 1.49428568e+01, 1.43428574e+01, 5.86857147e+01, 1.11457146e+02, + 1.95428562e+01, 1.88571429e+00, 2.57142854e+00, 8.97142887e+00, + 3.14285707e+00, 5.85714293e+00, 9.90857162e+01, 1.16857140e+02, + 2.40000010e+00, 2.85714287e-02, 1.01714287e+01, 1.41142855e+01, + 1.79428577e+01, 2.12285709e+01, 2.05428562e+01, 8.39999962e+00, + 6.37142849e+00, 7.11428595e+00, 9.62857151e+00, 1.57142859e+01, + 2.41714287e+01, 3.80571442e+01, 3.22000008e+01, 1.02285719e+01, + 5.80000019e+00, 5.88571405e+00, 1.15142860e+01, 2.19428577e+01, + 1.76285706e+01, 2.64571438e+01, 4.80571442e+01, 2.51142864e+01, + 3.71428561e+00, 3.79999995e+00, 3.54285717e+00, 6.37142849e+00, + 2.74285722e+00, 1.37428570e+01, 1.10371429e+02, 4.80571442e+01, + 4.00000006e-01, 4.00000006e-01, 1.33636360e+01, 1.37840910e+01, + 9.38636398e+00, 4.16250000e+01, 4.63409081e+01, 1.46477270e+01, + 6.39772749e+00, 8.03409100e+00, 1.16204544e+02, 2.23068180e+01, + 5.14772749e+00, 7.76136351e+00, 1.21590910e+01, 5.67045450e+00, + 3.31818175e+00, 4.30568199e+01, 1.33715912e+02, 1.93295460e+01, + 2.67045450e+00, 2.89772725e+00, 5.42045450e+00, 4.44318199e+00, + 5.79545450e+00, 6.70113602e+01, 2.03750000e+01, 5.63636351e+00, + 2.14772725e+00, 1.87500000e+00, 2.21590900e+00, 2.59090900e+00, + 5.21590900e+00, 1.80795460e+01, 1.75113640e+01, 8.10227299e+00, + 1.15568180e+01, 4.11818199e+01, 27., 9.81818199e+00, + 1.52159090e+01, 3.59090919e+01, 1.34045456e+02, 6.95454550e+00, + 3.46590900e+00, 5.43181801e+00, 7.13636351e+00, 3.57954550e+00, + 1.01250000e+01, 1.49113632e+02, 1.23795456e+02, 1.11477270e+01, + 3.37500000e+00, 4.55681801e+00, 6.65909100e+00, 6.04545450e+00, + 1.38750000e+01, 1.28284088e+02, 1.84886360e+01, 6.21590900e+00, + 3.47727275e+00, 3.23863626e+00, 3.19318175e+00, 3.89772725e+00, + 8.95454502e+00, 2.15681820e+01, 1.90909100e+01, 2.47727275e+00, + 8.84090900e+00, 14., 4.61363649e+00, 3.30681825e+00, + 7.77272720e+01, 1.42647720e+02, 8.31136398e+01, 5.11363649e+00, + 4.96590900e+00, 4.96590900e+00, 3.14772725e+00, 3.21590900e+00, + 3.82159081e+01, 1.51897720e+02, 4.88863640e+01, 9.87500000e+00, + 6.25000000e+00, 7.92045450e+00, 8.22727299e+00, 8.29545498e+00, + 1.82727280e+01, 8.45340881e+01, 1.21818180e+01, 5.53409100e+00, + 4.32954550e+00, 3.70454550e+00, 2.86363626e+00, 3.04545450e+00, + 5.96590900e+00, 1.31250000e+01, 1.38295450e+01, 2.36363626e+00, + 5.10227251e+00, 4.01136351e+00, 1.92045450e+00, 3.40909100e+00, + 7.52272720e+01, 1.17818184e+02, 2.89090900e+01, 5.17045450e+00, + 4.28409100e+00, 5.09090900e+00, 5.22727251e+00, 7.15909100e+00, + 2.77840900e+01, 8.57613602e+01, 1.83409100e+01, 7.20454550e+00, + 5.50000000e+00, 6.73863649e+00, 7.61363649e+00, 8.30681801e+00, + 1.42272730e+01, 2.74545460e+01, 6.06818199e+00, 2.65909100e+00, + 2.72727275e+00, 2.79545450e+00, 2.38636374e+00, 2.53409100e+00, + 5.80681801e+00, 1.04204550e+01, 1.11923075e+01, 1.14487181e+01, + 1.43205128e+01, 1.34358978e+01, 1.05512819e+01, 1.10897436e+01, + 1.13461542e+01, 1.10384617e+01, 2.13846149e+01, 2.20256405e+01, + 2.64743595e+01, 2.07692299e+01, 2.23974361e+01, 3.14487171e+01, + 2.24743595e+01, 1.87692299e+01, 3.45897446e+01, 4.86025658e+01, + 2.02948723e+01, 1.49102564e+01, 1.12384613e+02, 1.24307693e+02, + 2.33974361e+01, 1.31538458e+01, 1.24076920e+02, 1.30179489e+02, + 1.62820511e+01, 9.64102554e+00, 1.08833336e+02, 1.18282051e+02, + 1.04615383e+01, 1.62948723e+01, 1.43717947e+01, 1.59615383e+01, + 19., 1.86282043e+01, 1.13461542e+01, 1.08974361e+01, + 1.39871798e+01, 1.35769234e+01, 2.56410255e+01, 2.65897427e+01, + 3.33589745e+01, 3.19871788e+01, 23., 1.85641022e+01, + 2.16025639e+01, 2.19487171e+01, 2.95384617e+01, 3.41794853e+01, + 3.49487190e+01, 28., 6.70384598e+01, 7.98846130e+01, + 2.26153851e+01, 2.21282043e+01, 9.45256424e+01, 1.09782051e+02, + 1.14358978e+01, 1.04743586e+01, 1.24615387e+02, 1.41974365e+02, + 1.63205128e+01, 8.97435856e+00, 1.26538458e+01, 1.38589745e+01, + 1.92179489e+01, 1.75000000e+01, 9.71794891e+00, 9.03846169e+00, + 1.21923075e+01, 1.26282053e+01, 2.18846149e+01, 2.26025639e+01, + 3.23333321e+01, 3.05384617e+01, 2.05384617e+01, 1.86538467e+01, + 1.90128212e+01, 2.05256405e+01, 2.94102573e+01, 2.90256405e+01, + 3.96025658e+01, 3.08461533e+01, 2.84615383e+01, 2.41794872e+01, + 1.91538467e+01, 2.36538467e+01, 3.15512829e+01, 4.12820511e+01, + 2.07820511e+01, 1.63974361e+01, 7.74487152e+01, 1.14076920e+02, + 2.04102573e+01, 1.23974361e+01, 6.75641012e+00, 6.80769253e+00, + 1.14487181e+01, 1.02307692e+01, 4.60256433e+00, 4.11538458e+00, + 5.73076916e+00, 6.51282072e+00, 1.13461542e+01, 1.10512819e+01, + 1.85128212e+01, 1.67564106e+01, 1.03333330e+01, 9.62820530e+00, + 10., 1.18076925e+01, 1.27948713e+01, 1.37692308e+01, + 2.09358978e+01, 1.64102573e+01, 12., 1.10897436e+01, + 1.21153851e+01, 1.40641022e+01, 1.15128202e+01, 1.15769234e+01, + 1.61923084e+01, 1.07948713e+01, 2.16410255e+01, 2.63717957e+01, + 1.03333330e+01, 1.02051287e+01, 1.01618179e+02, 8.52727318e+00, + 2.58181810e+00, 8.63636398e+00, 1.43454542e+01, 5.54545450e+00, + 7.01818180e+00, 7.02909088e+01, 5.24909096e+01, 2.02000008e+01, + 9.80000019e+00, 7.25454569e+00, 6.70909071e+00, 6.23636341e+00, + 1.18727274e+01, 6.01818199e+01, 4.96727257e+01, 3.27818184e+01, + 1.25636368e+01, 4.19999981e+00, 3.10909081e+00, 4.98181820e+00, + 1.43999996e+01, 3.85272713e+01, 2.81636372e+01, 2.10363636e+01, + 1.12545452e+01, 7.58181810e+00, 8.32727242e+00, 1.10545454e+01, + 1.79818172e+01, 2.82727280e+01, 1.22109093e+02, 4.71636353e+01, + 2.14545465e+00, 5.07272720e+00, 1.04181814e+01, 1.11454544e+01, + 6.81818199e+00, 2.95454540e+01, 5.48181801e+01, 2.76545448e+01, + 1.12909088e+01, 1.02363634e+01, 1.41636362e+01, 2.06000004e+01, + 1.74545460e+01, 2.89818172e+01, 5.91090927e+01, 5.81636353e+01, + 2.03272724e+01, 7.81818199e+00, 6.78181839e+00, 7.41818190e+00, + 1.11999998e+01, 2.52000008e+01, 4.52545471e+01, 4.45818176e+01, + 2.03454552e+01, 1.25818186e+01, 6.98181820e+00, 8.47272682e+00, + 1.29090910e+01, 2.51090908e+01, 1.13363640e+02, 135., + 6.30909109e+00, 8.36363614e-01, 3.40000010e+00, 7.81818199e+00, + 4.19999981e+00, 5.29090929e+00, 4.44545441e+01, 95., + 1.98545456e+01, 2.72727275e+00, 6.21818161e+00, 2.46545448e+01, + 2.87636356e+01, 1.71636372e+01, 3.06909084e+01, 3.53272743e+01, + 2.61272736e+01, 8.23636341e+00, 6.54545450e+00, 1.33454542e+01, + 3.45999985e+01, 3.75818176e+01, 3.22363625e+01, 2.83272724e+01, + 3.99272728e+01, 2.79636364e+01, 3.94545460e+00, 3.34545445e+00, + 1.16909094e+01, 2.86545448e+01, 2.84181824e+01, 1.25800003e+02, + 2.47818184e+01, 3.27272713e-01, 4.19999981e+00, 3.33272743e+01, + 1.14727268e+01, 2.94545460e+00, 1.21454544e+01, 1.36363632e+02, + 1.11236366e+02, 1.69090915e+00, 5.81818163e-01, 6.14545441e+00, + 9.25454521e+00, 3.38181829e+00, 4.87272739e+00, 8.35636368e+01, + 1.31181824e+02, 1.72909088e+01, 1.74545455e+00, 3.87272716e+00, + 1.37454548e+01, 9.30909061e+00, 4.38181829e+00, 1.43999996e+01, + 127., 6.69454575e+01, 9.45454538e-01, 7.27272749e-01, + 7.70909071e+00, 1.20727272e+01, 9.26315784e+00, 2.41052628e+01, + 3.10526314e+01, 6.42105246e+00, 9.84210491e+00, 2.86578941e+01, + 2.71315784e+01, 1.60526314e+01, 1.24473686e+01, 2.38157902e+01, + 2.47105255e+01, 8.26315784e+00, 1.52631578e+01, 2.90263157e+01, + 2.77368412e+01, 2.15789471e+01, 7.78947353e+00, 1.49736843e+01, + 1.62894745e+01, 1.06842108e+01, 1.60263157e+01, 1.83157902e+01, + 1.96578941e+01, 1.73421059e+01, 3.36842108e+00, 4.07894754e+00, + 5.73684216e+00, 8.10526276e+00, 1.00263157e+01, 7.71052647e+00, + 8.02631569e+00, 8.68421078e+00, 8.55263138e+00, 8.47105255e+01, + 1.07157898e+02, 1.58684206e+01, 7.10526323e+00, 7.06578979e+01, + 8.50789490e+01, 2.13421059e+01, 9.84210491e+00, 9.25526352e+01, + 1.05736839e+02, 1.37105265e+01, 1.37368422e+01, 6.93947372e+01, + 7.60263138e+01, 2.09210529e+01, 8.55263138e+00, 6.64210510e+01, + 7.20263138e+01, 1.42631578e+01, 1.81842098e+01, 4.27631569e+01, + 4.44473686e+01, 1.74210529e+01, 5.81578970e+00, 23., + 2.25263157e+01, 1.00263157e+01, 1.42894735e+01, 1.51842108e+01, + 1.47105265e+01, 9.39473724e+00, 1.88421059e+01, 4.23421059e+01, + 4.32105255e+01, 2.00789471e+01, 1.63157902e+01, 7.36578979e+01, + 9.47368393e+01, 4.33157883e+01, 1.30526314e+01, 6.82105255e+01, + 7.12894745e+01, 2.07368412e+01, 2.82631588e+01, 1.04631577e+02, + 1.01973686e+02, 3.22105255e+01, 9.73684216e+00, 7.70789490e+01, + 8.06842117e+01, 1.58157892e+01, 1.74210529e+01, 9.02368393e+01, + 8.87368393e+01, 2.56842098e+01, 6.34210539e+00, 4.37631569e+01, + 3.89210510e+01, 9.47368431e+00, 9.36842060e+00, 3.70263176e+01, + 3.39210510e+01, 1.23157892e+01, 2.67105255e+01, 4.18157883e+01, + 2.60263157e+01, 3.16842098e+01, 2.57105255e+01, 3.65526314e+01, + 2.23947372e+01, 1.69210529e+01, 2.60526314e+01, 3.39736824e+01, + 4.30263176e+01, 3.87631569e+01, 2.70526314e+01, 3.45263176e+01, + 3.19736843e+01, 2.46842098e+01, 1.41842108e+01, 2.25263157e+01, + 3.76578941e+01, 2.67105255e+01, 1.93947372e+01, 4.05526314e+01, + 4.11315804e+01, 2.05789471e+01, 5.23684216e+00, 1.57105265e+01, + 1.82105255e+01, 1.01052628e+01, 9.18421078e+00, 2.65000000e+01, + 2.41315784e+01, 6.50000000e+00, 1.47948713e+01, 1.44743586e+01, + 1.30384617e+01, 9.50000000e+00, 1.04743586e+01, 9.76923084e+00, + 8.58974361e+00, 1.03205128e+01, 1.24487181e+01, 1.23846149e+01, + 1.33846149e+01, 1.33717947e+01, 1.35769234e+01, 1.06923075e+01, + 1.26153851e+01, 1.39615383e+01, 8.23076916e+00, 9.19230747e+00, + 9.28205109e+00, 9.33333302e+00, 1.01538458e+01, 9.16666698e+00, + 1.19102564e+01, 1.01025639e+01, 7.05128193e-01, 1.10256410e+00, + 1.28205132e+00, 5.64102590e-01, 6.28205121e-01, 9.23076928e-01, + 1.33333337e+00, 9.61538434e-01, 6.46410294e+01, 7.73974380e+01, + 5.87820511e+01, 3.24615402e+01, 2.65384617e+01, 2.29358978e+01, + 2.32564106e+01, 3.39743576e+01, 5.15128212e+01, 5.15512810e+01, + 5.15000000e+01, 4.56923065e+01, 3.93717957e+01, 3.33717957e+01, + 4.21025658e+01, 5.23589745e+01, 3.36282043e+01, 3.40897446e+01, + 3.48333321e+01, 3.52564087e+01, 2.98974361e+01, 2.42435894e+01, + 3.28974342e+01, 3.68717957e+01, 2.21794868e+00, 2.70512819e+00, + 3.82051277e+00, 3.10256410e+00, 2.65384626e+00, 3.44871783e+00, + 3.37179494e+00, 2.26923084e+00, 1.06794868e+02, 1.31551285e+02, + 7.95256424e+01, 3.05769234e+01, 1.93589745e+01, 1.91666660e+01, + 2.05512829e+01, 3.51410255e+01, 8.08846130e+01, 9.11538467e+01, + 7.03205109e+01, 4.78717957e+01, 4.07820511e+01, 3.80641022e+01, + 4.32564087e+01, 6.08076935e+01, 4.47948723e+01, 4.53846169e+01, + 4.07948723e+01, 4.17692299e+01, 3.33205147e+01, 3.06153851e+01, + 3.76282043e+01, 4.37051277e+01, 3.94871783e+00, 4.47435904e+00, + 4.42307711e+00, 3.47435904e+00, 2.08974361e+00, 2.47435904e+00, + 3.25641036e+00, 4.16666651e+00, 1.16743591e+02, 1.35987183e+02, + 5.99487190e+01, 1.60384617e+01, 1.78589745e+01, 2.57948723e+01, + 2.10384617e+01, 2.95384617e+01, 9.96153870e+01, 1.14115387e+02, + 6.13205147e+01, 2.55641022e+01, 2.07820511e+01, 2.43589745e+01, + 2.94743595e+01, 4.82948723e+01, 4.38205147e+01, 4.21538467e+01, + 3.27179489e+01, 2.72948723e+01, 2.40256405e+01, 2.62435894e+01, + 3.19743595e+01, 3.66794853e+01, 3.19230771e+00, 3.83333325e+00, + 3.25641036e+00, 1.89743590e+00, 1.78205132e+00, 1.89743590e+00, + 3.16666675e+00, 3.30769229e+00, 4.71794891e+00, 3.71794868e+00, + 8.64102554e+00, 1.25897436e+01, 9.76923084e+00, 1.10512819e+01, + 1.61282043e+01, 7.89743567e+00, 1.06666670e+01, 2.35897446e+00, + 1.18974361e+01, 5.65128212e+01, 2.72051277e+01, 1.33076925e+01, + 17., 3.47692299e+01, 2.61282043e+01, 1.58974361e+00, + 6.28205109e+00, 7.83589706e+01, 2.96666660e+01, 4.71794891e+00, + 1.01538458e+01, 9.35128174e+01, 2.72820511e+01, 3.33333343e-01, + 1.51282048e+00, 9.18974380e+01, 4.25384598e+01, 3.12820506e+00, + 5.64102554e+00, 8.08974380e+01, 6.76923084e+00, 5.35897446e+00, + 2.76923084e+01, 4.92564087e+01, 1.23076925e+01, 1.05897436e+01, + 3.35897446e+01, 3.75641022e+01, 1.65128212e+01, 6.71794891e+00, + 2.72820511e+01, 7.91025620e+01, 3.17435894e+01, 1.65128212e+01, + 5.28717957e+01, 9.20512848e+01, 3.41282043e+01, 7.58974361e+00, + 1.13589745e+01, 1.04641029e+02, 6.27179489e+01, 1.32051287e+01, + 1.76410255e+01, 1.05410255e+02, 4.92307701e+01, 1.28205132e+00, + 3.92307687e+00, 1.05564102e+02, 5.66923065e+01, 5.97435904e+00, + 7.10256433e+00, 1.02410255e+02, 1.82051277e+01, 9.69230747e+00, + 2.58205128e+01, 5.19487190e+01, 1.45897436e+01, 8.43589783e+00, + 3.60769234e+01, 6.48717957e+01, 2.06923084e+01, 2.43846149e+01, + 2.98974361e+01, 5.13589745e+01, 3.61538467e+01, 2.81538467e+01, + 5.15641022e+01, 6.15128212e+01, 4.06923065e+01, 1.22564106e+01, + 1.25128202e+01, 8.91794891e+01, 9.14102554e+01, 4.48717957e+01, + 2.10512829e+01, 7.46153870e+01, 6.12307701e+01, 4.35897446e+00, + 4.82051277e+00, 5.08205147e+01, 4.05641022e+01, 1.84102573e+01, + 1.04615383e+01, 8.24358978e+01, 2.97435894e+01, 1.24358978e+01, + 1.52820511e+01, 2.81794872e+01, 1.33589745e+01, 6.87179470e+00, + 1.17692308e+01, 3.42820511e+01, 2.27179489e+01, 2.09230766e+01, + 2.26666660e+01, 3.92564087e+01, 3.16666660e+01, 2.54358978e+01, + 1.91538467e+01, 2.19230766e+01, 3.93333321e+01, 9.10256386e+00, + 9.82051277e+00, 6.08205147e+01, 6.21538467e+01, 3.24358978e+01, + 1.17179489e+01, 4.83076935e+01, 3.96153831e+01, 3.64102554e+00, + 4., 1.78461533e+01, 2.16410255e+01, 1.48205128e+01, + 7.87179470e+00, 3.76923065e+01, 3.35270271e+01, 3.35135126e+00, + 2.91891885e+00, 111., 1.09243240e+02, 1.54054058e+00, + 2.32432437e+00, 2.92027035e+01, 6.48108139e+01, 9.75675678e+00, + 2.60810804e+00, 3.59324341e+01, 1.82027035e+01, 5.40540516e-01, + 4.08108091e+00, 4.76216202e+01, 8.47162170e+01, 1.19459457e+01, + 2.18918920e+00, 5.22972965e+00, 3.66216207e+00, 8.78378391e-01, + 1.32567568e+01, 8.32702713e+01, 3.65000000e+01, 1.50810814e+01, + 6.91891909e+00, 6.18918896e+00, 5.24324322e+00, 7.18918896e+00, + 3.03783779e+01, 5.55135117e+01, 4.34189186e+01, 8.37837791e+00, + 3.04054046e+00, 5.94594612e+01, 1.16378380e+02, 4.56756735e+00, + 1.14864862e+00, 1.38243246e+01, 1.07500000e+02, 2.56621628e+01, + 2.43243241e+00, 6.98648643e+00, 1.33918915e+01, 8.10810804e-01, + 1.20270276e+00, 3.98918915e+01, 1.19067566e+02, 3.68918915e+01, + 5.54054070e+00, 5.18918896e+00, 9.98648643e+00, 2.32432437e+00, + 5.17567587e+00, 5.47702713e+01, 4.40540543e+01, 2.85270271e+01, + 1.61756763e+01, 1.08243246e+01, 9.54054070e+00, 6.59459448e+00, + 9.90540504e+00, 2.71081085e+01, 4.16081085e+01, 1.47027025e+01, + 1.87837839e+00, 9.06756783e+00, 1.16891891e+02, 4.19459457e+01, + 1.33783782e+00, 6.32432413e+00, 1.02418922e+02, 5.43513527e+01, + 2.85135126e+00, 2.54054046e+00, 1.14459457e+01, 3.50000000e+00, + 9.45945919e-01, 1.28513517e+01, 1.14702705e+02, 7.70945969e+01, + 5.75675678e+00, 2.25675678e+00, 7.74324322e+00, 5.04054070e+00, + 3.14864874e+00, 1.85945950e+01, 4.36081085e+01, 3.85270271e+01, + 1.18243246e+01, 7.05405426e+00, 7.29729748e+00, 9.44594574e+00, + 9.74324322e+00, 1.38513517e+01, 2.84324322e+01, 2.29864864e+01, + 1.22972977e+00, 1.66216218e+00, 1.11959457e+02, 1.03500000e+02, + 1.41891897e+00, 2.36486483e+00, 5.41486473e+01, 4.85675659e+01, + 2.79729724e+00, 1.40540540e+00, 1.61621628e+01, 2.50405407e+01, + 1.56756759e+00, 5.79729748e+00, 7.32972946e+01, 9.53243256e+01, + 9.32432461e+00, 1.22972977e+00, 2.08108115e+00, 4.43243265e+00, + 1.20270276e+00, 4.98648643e+00, 3.54459457e+01, 7.11081085e+01, + 2.29594593e+01, 7.08108091e+00, 3.68918920e+00, 6.58108091e+00, + 7.64864874e+00, 8.01351357e+00, 4.14603157e+01, 1.65079365e+01, + 4.69841290e+00, 5.36507940e+00, 9.30158710e+00, 7.98412704e+00, + 7.57142878e+00, 1.76190472e+01, 1.69841270e+01, 1.18095236e+01, + 1.08412695e+01, 1.62063484e+01, 1.74603176e+01, 1.52857141e+01, + 1.49841270e+01, 1.59047623e+01, 5.47619057e+00, 5.88888884e+00, + 9.31746006e+00, 1.87936516e+01, 2.64126987e+01, 2.06666660e+01, + 1.24761906e+01, 8.36507893e+00, 2.95238090e+00, 2.61904764e+00, + 4.74603176e+00, 2.60317459e+01, 3.99206352e+01, 1.69841270e+01, + 4.84126997e+00, 2.84126973e+00, 4.52063484e+01, 7.06984100e+01, + 1.88571434e+01, 5.68253946e+00, 1.40317459e+01, 2.83809528e+01, + 5.38095236e+00, 6.28571415e+00, 1.27936506e+01, 3.09523811e+01, + 4.31746025e+01, 2.48253975e+01, 1.73809528e+01, 1.41428576e+01, + 8.92063522e+00, 6.06349230e+00, 3.92063498e+00, 9.87301540e+00, + 4.01428566e+01, 5.83015862e+01, 3.23650780e+01, 1.64603176e+01, + 8.47619057e+00, 4.41269827e+00, 9.68253970e-01, 1.98412693e+00, + 1.90476189e+01, 8.55555573e+01, 4.90793648e+01, 1.12857141e+01, + 2.34920645e+00, 2.07936502e+00, 2.31428566e+01, 1.13142860e+02, + 4.37142868e+01, 4.50793648e+00, 1.47936506e+01, 9.28730164e+01, + 2.27936516e+01, 2.60317469e+00, 3.74603176e+00, 5.83015862e+01, + 9.46031723e+01, 3.06666660e+01, 1.16825399e+01, 5.46984138e+01, + 2.78253975e+01, 8.25396836e-01, 5.23809552e-01, 1.17142859e+01, + 9.32222214e+01, 8.57460327e+01, 1.58412695e+01, 1.64444447e+01, + 2.92857151e+01, 1.23809528e+00, 2.53968269e-01, 1.39682543e+00, + 4.55396843e+01, 9.82380981e+01, 2.35873013e+01, 4.25396824e+00, + 3.14285717e+01, 1.05714283e+01, 7.68253946e+00, 9.90634918e+01, + 4.61111107e+01, 2.19047618e+00, 6.74603176e+00, 8.01111145e+01, + 4.66825409e+01, 4.85714293e+00, 5.15873003e+00, 9.10634918e+01, + 9.22857132e+01, 8.74603176e+00, 4.87301588e+00, 9.46666641e+01, + 8.50476227e+01, 5.25396824e+00, 2.17460322e+00, 2.66666660e+01, + 9.48730164e+01, 3.19523811e+01, 6.04761887e+00, 6.88412704e+01, + 1.09253967e+02, 5.53968239e+00, 1., 4.17460299e+00, + 6.39523811e+01, 4.48571434e+01, 5.44444466e+00, 1.79206352e+01, + 1.10063492e+02, 1.96349201e+01, 1.42622948e+00, 1.70491803e+00, + 4.49180317e+00, 2.35573769e+01, 4.99180336e+01, 3.49508209e+01, + 1.11639347e+01, 2.55737710e+00, 2.62295079e+00, 2.18032789e+00, + 2.59016395e+00, 2.43606548e+01, 4.55409851e+01, 2.17377052e+01, + 8.01639366e+00, 2.49180317e+00, 1.08950821e+02, 3.31147537e+01, + 2.09836054e+00, 1.26721315e+01, 4.23114738e+01, 1.41967211e+01, + 4.31147528e+00, 1.01147537e+01, 8.24098358e+01, 1.21311474e+01, + 1.24590158e+00, 8.85245895e+00, 1.12672134e+02, 2.45901642e+01, + 1.70491803e+00, 1.05901642e+01, 1.09836066e+00, 1.96721315e+00, + 1.68688526e+01, 6.60655746e+01, 5.70983620e+01, 1.74754105e+01, + 4.83606577e+00, 2.24590158e+00, 1.96721315e+00, 1.40983605e+00, + 1.07540979e+01, 5.10491791e+01, 4.65573769e+01, 1.66393452e+01, + 4.86885262e+00, 2.27868843e+00, 1.20606560e+02, 9.19672108e+00, + 4.42622948e+00, 3.09344254e+01, 5.01147537e+01, 8.59016418e+00, + 4.70491791e+00, 6.10655746e+01, 9.37868881e+01, 5.77049160e+00, + 2.04918027e+00, 4.95245895e+01, 1.20901642e+02, 7.37704897e+00, + 1.98360658e+00, 3.27868843e+01, 8.52459013e-01, 2.62295079e+00, + 2.54590168e+01, 6.01311493e+01, 3.29344254e+01, 7.44262314e+00, + 2.95081973e+00, 1.26229513e+00, 1.34098358e+01, 2.47540975e+00, + 1.89344254e+01, 5.01967201e+01, 2.73278694e+01, 10., + 9.54098320e+00, 3.62131157e+01, 1.16704918e+02, 3.57377052e+00, + 4.81967211e+00, 7.49344254e+01, 5.83442612e+01, 3.70491815e+00, + 4.85245895e+00, 1.22590164e+02, 3.60819664e+01, 4.11475420e+00, + 2.59016395e+00, 8.63114777e+01, 9.61147537e+01, 2.85245895e+00, + 3.34426236e+00, 3.09508190e+01, 1.29508197e+00, 3.24590158e+00, + 1.87540989e+01, 2.81147537e+01, 1.34590168e+01, 4.68852472e+00, + 1.75081959e+01, 2.08032780e+01, 1.97868843e+01, 1.62295079e+00, + 1.36229506e+01, 5.15245895e+01, 1.16557379e+01, 4.08196735e+00, + 2.71147537e+01, 1.21557381e+02, 4.11967201e+01, 1.65573776e+00, + 6.55737686e+00, 1.19803276e+02, 4.67868843e+01, 1.78688526e+00, + 7.85245895e+00, 1.14475410e+02, 1.24426231e+01, 3.27868843e+00, + 1.86885250e+00, 3.95901642e+01, 2.19672127e+01, 3.26229501e+00, + 5.72131157e+00, 2.21967220e+01, 7.65517235e+00, 6.44827604e+00, + 6.80344849e+01, 1.08206894e+02, 6.20689678e+00, 4.13793087e+00, + 3.00344830e+01, 6.82758636e+01, 13., 1.13103447e+01, + 7.98620682e+01, 6.65172424e+01, 7.48275852e+00, 1.23103447e+01, + 3.02068958e+01, 2.40689659e+01, 1.09655170e+01, 1.33448277e+01, + 6.92068939e+01, 2.53793106e+01, 1.25172415e+01, 2.13448277e+01, + 2.82758617e+01, 1.66206894e+01, 5.68965530e+00, 3.28965530e+01, + 6.61034470e+01, 8.13793087e+00, 1.14827585e+01, 2.82758617e+01, + 2.15517235e+01, 9.44827557e+00, 1.96896553e+01, 1.56896553e+01, + 2.87241383e+01, 5.94137917e+01, 8., 5.10344839e+00, + 1.74137936e+01, 3.50689659e+01, 2.84827595e+01, 10., + 1.05517244e+01, 1.04482756e+01, 3.65517235e+00, 7.65517235e+00, + 3.95517235e+01, 5.21724129e+01, 1.42413797e+01, 1.20689654e+00, + 2.10344839e+00, 3.27586198e+00, 5.24137926e+00, 3.96206894e+01, + 8.45172424e+01, 5.32413788e+01, 3.48275852e+00, 2., + 1.75862074e+00, 1.82758617e+00, 1.59310341e+01, 6.53103485e+01, + 5.23448257e+01, 1.36896553e+01, 3.18275871e+01, 1.20689659e+01, + 1.74137936e+01, 1.27241383e+01, 4.37931013e+00, 4.51724148e+00, + 3.57931023e+01, 7.01034470e+01, 6.95517273e+01, 1.58620691e+01, + 4.89655161e+00, 2.34482765e+00, 1.48275864e+00, 4.58620691e+00, + 6.60689621e+01, 1.08896553e+02, 5.85172424e+01, 3.04482765e+01, + 2.09310341e+01, 1.66206894e+01, 1.65172405e+01, 6.54827576e+01, + 1.16448273e+02, 9.82758636e+01, 4.13793087e+00, 4.96551704e+00, + 9.27586174e+00, 1.55517244e+01, 3.87241364e+01, 1.13137932e+02, + 8.13448257e+01, 1.31724138e+01, 4.35862083e+01, 5.20689678e+00, + 4.44827604e+00, 4.72413778e+00, 1.37931037e+00, 1.44827580e+00, + 1.99310341e+01, 8.56896515e+01, 6.54827576e+01, 2.29310341e+01, + 8.51724148e+00, 4.27586222e+00, 3.65517235e+00, 3.96551728e+00, + 3.61724129e+01, 1.00586205e+02, 4.14482765e+01, 4.21379318e+01, + 4.16206894e+01, 2.87241383e+01, 1.96206894e+01, 2.24137936e+01, + 3.54482765e+01, 4.57931023e+01, 5.86206913e+00, 7.79310322e+00, + 1.87586212e+01, 2.47586212e+01, 3.85517235e+01, 5.58965530e+01, + 2.23793106e+01, 7.72413778e+00, 2.02656250e+01, 9.17031250e+01, + 3.82968750e+01, 5.12500000e+00, 5., 5.31250000e+00, + 2.75000000e+00, 4.06250000e+00, 2.77812500e+01, 5.81562500e+01, + 2.43125000e+01, 9.84375000e+00, 1.14843750e+01, 11., + 8.35937500e+00, 9.25000000e+00, 1.40781250e+01, 2.37343750e+01, + 1.70156250e+01, 1.12656250e+01, 1.08125000e+01, 1.22812500e+01, + 1.02187500e+01, 7.82812500e+00, 3., 7.03125000e+00, + 4.70312500e+00, 2.06250000e+00, 1.31250000e+00, 1.89062500e+00, + 1.70312500e+00, 1.56250000e+00, 4.01875000e+01, 1.30765625e+02, + 5.08125000e+01, 5.31250000e+00, 5.03125000e+00, 1.95781250e+01, + 5.06250000e+00, 4.89062500e+00, 7.04687500e+01, 1.30609375e+02, + 39., 8.62500000e+00, 7.96875000e+00, 8.03125000e+00, + 5.46875000e+00, 1.12812500e+01, 3.17968750e+01, 4.93593750e+01, + 2.27500000e+01, 1.21093750e+01, 1.35625000e+01, 1.24062500e+01, + 1.14218750e+01, 1.38437500e+01, 4.90625000e+00, 7.42187500e+00, + 4.71875000e+00, 2.82812500e+00, 2.31250000e+00, 3.28125000e+00, + 2.46875000e+00, 3.42187500e+00, 4.79062500e+01, 1.19375000e+02, + 3.15000000e+01, 5.32812500e+00, 3.29375000e+01, 9.44687500e+01, + 1.05312500e+01, 5.34375000e+00, 1.04062500e+02, 1.40015625e+02, + 3.47031250e+01, 4.53125000e+00, 6.40625000e+00, 9.84375000e+00, + 3.31250000e+00, 7.78125000e+00, 6.74843750e+01, 9.56875000e+01, + 2.18906250e+01, 5.35937500e+00, 6.17187500e+00, 6., + 5.68750000e+00, 1.15312500e+01, 7.01562500e+00, 7.43750000e+00, + 3.23437500e+00, 2.23437500e+00, 2.59375000e+00, 2.98437500e+00, + 2.45312500e+00, 4.32812500e+00, 5.49062500e+01, 8.90625000e+01, + 1.07968750e+01, 4.96875000e+00, 9.07656250e+01, 1.16187500e+02, + 7.31250000e+00, 3.70312500e+00, 1.06078125e+02, 1.11687500e+02, + 1.47500000e+01, 4.31250000e+00, 2.57500000e+01, 3.29531250e+01, + 5.75000000e+00, 1.22031250e+01, 9.35000000e+01, 9.97343750e+01, + 1.05156250e+01, 1.84375000e+00, 2.57812500e+00, 2.18750000e+00, + 2.39062500e+00, 1.17968750e+01, 1.01875000e+01, 9.60937500e+00, + 1.78125000e+00, 1., 1.39062500e+00, 1.51562500e+00, + 1.40625000e+00, 2.93750000e+00, 4.47499990e+00, 5.77500010e+00, + 4.25000000e+00, 3.40000010e+00, 2.42499995e+00, 4.09999990e+00, + 5.27500010e+00, 3.45000005e+00, 8.80000019e+00, 8.50000000e+00, + 6.27500010e+00, 5.40000010e+00, 4.30000019e+00, 9.55000019e+00, + 1.43000002e+01, 6.97499990e+00, 1.58500004e+01, 6.27500010e+00, + 7.47499990e+00, 3.42750015e+01, 1.82250004e+01, 9.30000019e+00, + 1.61499996e+01, 2.48999996e+01, 2.81749992e+01, 3.72499990e+00, + 1.16999998e+01, 3.29749985e+01, 12., 3.09999990e+00, + 2.43500004e+01, 7.15000000e+01, 1.11999998e+01, 1.32749996e+01, + 9.42500019e+00, 6.97499990e+00, 5.90000010e+00, 8.52499962e+00, + 1.16750002e+01, 9.72500038e+00, 2.13999996e+01, 1.65499992e+01, + 1.13249998e+01, 21., 1.87250004e+01, 1.34750004e+01, + 2.07250004e+01, 2.03250008e+01, 7.37249985e+01, 8.55000019e+00, + 1.10500002e+01, 9.52750015e+01, 6.49250031e+01, 9.14999962e+00, + 2.03750000e+01, 1.06224998e+02, 7.47500000e+01, 7.82499981e+00, + 1.26999998e+01, 4.51749992e+01, 2.11000004e+01, 9.07499981e+00, + 4.40999985e+01, 1.26775002e+02, 1.41250000e+01, 1.86499996e+01, + 1.13500004e+01, 6.12500000e+00, 5.65000010e+00, 6.72499990e+00, + 1.03750000e+01, 1.06000004e+01, 3.08250008e+01, 1.81499996e+01, + 1.16750002e+01, 4.29749985e+01, 4.50750008e+01, 1.08249998e+01, + 1.21999998e+01, 2.76250000e+01, 1.32074997e+02, 3.66500015e+01, + 1.01499996e+01, 8.35500031e+01, 7.96250000e+01, 1.04499998e+01, + 7.97499990e+00, 1.14599998e+02, 9.33249969e+01, 3.43499985e+01, + 1.55249996e+01, 2.43999996e+01, 2.83500004e+01, 1.79249992e+01, + 2.37000008e+01, 9.34250031e+01, 1.12500000e+01, 1.28249998e+01, + 1.06000004e+01, 8.57499981e+00, 4.84999990e+00, 3.25000000e+00, + 7.67500019e+00, 1.08999996e+01, 3.47999992e+01, 1.98250008e+01, + 1.07749996e+01, 4.18499985e+01, 5.12999992e+01, 1.04250002e+01, + 6.84999990e+00, 2.25249996e+01, 1.29024994e+02, 7.38750000e+01, + 1.14750004e+01, 5.15750008e+01, 7.91999969e+01, 1.78500004e+01, + 8.30000019e+00, 8.77500000e+01, 7.52249985e+01, 4.74000015e+01, + 2.64249992e+01, 3.48250008e+01, 2.78750000e+01, 22., + 2.47999992e+01, 4.80750008e+01, 3.06382980e+01, 1.34468088e+01, + 1.74468088e+00, 4.40425539e+00, 8.65957413e+01, 4.76382980e+01, + 4.93617010e+00, 5.08510637e+00, 5.37872353e+01, 6.92340393e+01, + 1.13829784e+01, 4.91489363e+00, 6.20851059e+01, 2.91914902e+01, + 2.46808505e+00, 4.29787254e+00, 1.86808510e+01, 6.70638275e+01, + 2.95744686e+01, 6.48936176e+00, 5.65957451e+00, 5.40425539e+00, + 1.25531912e+00, 1.38297868e+00, 7.40425539e+00, 2.22765961e+01, + 2.59574471e+01, 1.47234039e+01, 4.27659559e+00, 2.19148946e+00, + 1.70212770e+00, 3.04255319e+00, 1.63191490e+01, 1.33617020e+01, + 2.72340417e+00, 5.57446814e+00, 7.00638275e+01, 8.48723373e+01, + 1.25957451e+01, 5.55319166e+00, 2.88510647e+01, 7.05319138e+01, + 1.68936176e+01, 4., 9.64468079e+01, 1.12382980e+02, + 5.12765980e+00, 3.44680858e+00, 1.18297873e+01, 1.10042557e+02, + 6.41063843e+01, 5.17021275e+00, 19., 3.39361687e+01, + 2.61702132e+00, 7.02127635e-01, 5.25531912e+00, 5.32127647e+01, + 7.74680862e+01, 1.33404255e+01, 3.23404264e+00, 7.44680834e+00, + 4.40425539e+00, 1.91489363e+00, 4.59574461e+00, 6.51063824e+00, + 3.48936176e+00, 8.55319118e+00, 4.63829803e+01, 8.42765961e+01, + 1.72553196e+01, 4.78723383e+00, 1.25957451e+01, 3.42340431e+01, + 8.80851078e+00, 5.10638285e+00, 6.05744667e+01, 1.20468086e+02, + 1.61702137e+01, 5.89361715e+00, 4.72340441e+00, 6.28297882e+01, + 4.05957451e+01, 4., 3.08936176e+01, 1.19404259e+02, + 2.23617020e+01, 1.38297868e+00, 1.59574473e+00, 5.69574471e+01, + 8.17659607e+01, 5.36170197e+00, 3.08510637e+00, 3.90212784e+01, + 19., 1.87234044e+00, 2.23404264e+00, 1.85106385e+00, + 1.74468088e+00, 5.74468088e+00, 3.03617020e+01, 7.90425568e+01, + 2.10212765e+01, 3.31914902e+00, 5.42553186e+00, 1.00212765e+01, + 5.34042549e+00, 4.57446814e+00, 1.93404255e+01, 9.69148941e+01, + 3.21063843e+01, 6.74468088e+00, 4.72340441e+00, 1.92127666e+01, + 9.95744705e+00, 2.40425539e+00, 1.17659578e+01, 1.20659576e+02, + 5.27872353e+01, 5.53191471e+00, 1.59574473e+00, 1.39361706e+01, + 2.01276588e+01, 2.36170220e+00, 2.95744681e+00, 1.04361702e+02, + 7.95744705e+01, 3.10638309e+00, 5.32835817e+00, 4.34328365e+00, + 4.01492548e+00, 4.68656731e+00, 4.02985096e+00, 3.74626875e+00, + 4.14925385e+00, 4.41791058e+00, 1.11940298e+01, 9.52238846e+00, + 1.02089548e+01, 1.14477615e+01, 9.46268654e+00, 8.82089520e+00, + 8.83582115e+00, 9.97014904e+00, 1.06268654e+01, 9.85074615e+00, + 1.36268654e+01, 1.68955231e+01, 1.23731346e+01, 7.61194038e+00, + 7.17910433e+00, 8.13432789e+00, 6.13432837e+00, 7.19402981e+00, + 1.49701490e+01, 2.15671635e+01, 1.10597019e+01, 4.82089567e+00, + 3.95522380e+00, 4.71641779e+00, 9.82089520e+00, 9.28358173e+00, + 1.01940298e+01, 1.13283587e+01, 7.46268654e+00, 6.49253750e+00, + 7.65671635e+00, 8.53731346e+00, 2.07014923e+01, 1.99850750e+01, + 2.24925365e+01, 2.97910442e+01, 2.40149250e+01, 1.84477615e+01, + 1.90447769e+01, 1.98507462e+01, 1.64328365e+01, 1.76865673e+01, + 3.26567154e+01, 7.05522385e+01, 3.48358192e+01, 1.78656712e+01, + 1.52835817e+01, 1.59701490e+01, 6.28358221e+00, 9.95522404e+00, + 7.80298538e+01, 135., 2.88507462e+01, 7.40298510e+00, + 5.56716394e+00, 6.46268654e+00, 1.03283587e+01, 9.28358173e+00, + 9.89552212e+00, 1.21492538e+01, 9.40298462e+00, 9.49253750e+00, + 8.55223846e+00, 7.95522404e+00, 1.90597019e+01, 2.05522385e+01, + 2.81641788e+01, 5.29552231e+01, 3.40447769e+01, 1.86865673e+01, + 1.71791039e+01, 1.52835817e+01, 8.20895481e+00, 1.07164183e+01, + 4.28955231e+01, 1.71044769e+02, 7.95223846e+01, 1.18059702e+01, + 8.53731346e+00, 8.08955193e+00, 2.52238798e+00, 3.17910457e+00, + 1.19492538e+02, 1.73149246e+02, 3.26417923e+01, 3.04477620e+00, + 3.71641803e+00, 6.22388077e+00, 6.29850769e+00, 7.37313414e+00, + 8., 1.45671644e+01, 1.23582087e+01, 7.29850769e+00, + 5.08955240e+00, 4.10447741e+00, 1.11641788e+01, 1.19701490e+01, + 2.31791039e+01, 1.01373131e+02, 7.24328384e+01, 1.32089548e+01, + 7.20895529e+00, 7.89552259e+00, 4.23880577e+00, 3.02985072e+00, + 1.99104481e+01, 1.73014923e+02, 1.53611938e+02, 6.52238798e+00, + 3.29850745e+00, 6.41791058e+00, 1.01641788e+01, 3.29850745e+00, + 3.81343269e+01, 1.52805969e+02, 3.97611923e+01, 2.89552236e+00, + 7.68656731e+00, 2.77313442e+01, 1.18387098e+01, 2.45483875e+01, + 2.49677410e+01, 1.75806446e+01, 2.00645161e+01, 1.99032249e+01, + 1.64838715e+01, 1.31935482e+01, 1.08387098e+01, 1.44838705e+01, + 1.87419357e+01, 2.67096767e+01, 3.39354820e+01, 2.71612911e+01, + 1.48064518e+01, 1.13870964e+01, 6.09677410e+00, 5.87096786e+00, + 1.40645161e+01, 2.11290321e+01, 2.30645161e+01, 1.78709679e+01, + 9.87096786e+00, 6.12903214e+00, 3.87096763e-01, 4.51612890e-01, + 2.22580647e+00, 2.93548393e+00, 2.45161295e+00, 2.61290312e+00, + 1.29032254e+00, 8.38709652e-01, 1.71290321e+01, 6.63225784e+01, + 7.12580643e+01, 2.51612911e+01, 2.78387089e+01, 5.71612892e+01, + 4.51612892e+01, 1.67741928e+01, 1.61290321e+01, 5.08709679e+01, + 6.53548355e+01, 4.80322571e+01, 56., 5.88064499e+01, + 3.82903214e+01, 1.70645161e+01, 1.08064518e+01, 23., + 3.48709679e+01, 3.58709679e+01, 3.90645180e+01, 3.24516144e+01, + 2.02258072e+01, 1.04838705e+01, 4.83870953e-01, 1.58064520e+00, + 4.45161295e+00, 5.38709688e+00, 4.51612902e+00, 3.54838705e+00, + 2.29032254e+00, 8.38709652e-01, 1.00967741e+01, 8.65161285e+01, + 1.09032257e+02, 3.42580643e+01, 2.33225803e+01, 8.20967712e+01, + 8.94516144e+01, 1.16451616e+01, 2.36774197e+01, 9.29354858e+01, + 1.12838707e+02, 5.93870964e+01, 5.59032249e+01, 8.28709641e+01, + 6.74838715e+01, 2.38387089e+01, 2.73870964e+01, 5.95483856e+01, + 5.41612892e+01, 3.89677429e+01, 4.60645180e+01, 3.42258072e+01, + 2.51612911e+01, 2.31612911e+01, 3.19354844e+00, 4.06451607e+00, + 4.77419376e+00, 5.22580624e+00, 3.80645156e+00, 2.80645156e+00, + 2.25806451e+00, 1.83870971e+00, 1.23870964e+01, 4.19677429e+01, + 7.94516144e+01, 3.20967751e+01, 2.60967751e+01, 8.05483856e+01, + 9.78064499e+01, 1.90645161e+01, 2.83548393e+01, 4.36774178e+01, + 7.84838715e+01, 5.59354820e+01, 4.93225822e+01, 7.20967712e+01, + 95., 4.57419357e+01, 2.65806446e+01, 2.64516125e+01, + 2.93225803e+01, 3.32580643e+01, 3.25806465e+01, 3.02580643e+01, + 3.96774178e+01, 3.41612892e+01, 2.06451607e+00, 1.12903225e+00, + 3.19354844e+00, 4.74193525e+00, 3.45161295e+00, 2.80645156e+00, + 2.25806451e+00, 2.61290312e+00, 6.26666689e+00, 2.76666665e+00, + 5.40000010e+00, 3.16666675e+00, 1.33333337e+00, 1.03333330e+00, + 5.83333349e+00, 2.86666656e+00, 2.16666675e+00, 5.03333330e+00, + 3.96666670e+00, 1.53333330e+00, 1.73333335e+00, 3.66666675e+00, + 5.63333321e+00, 2.23333335e+00, 1.66666663e+00, 2.86666656e+00, + 1.46666670e+00, 8.33333313e-01, 1.83333337e+00, 1.56666672e+00, + 1.89999998e+00, 1.16666663e+00, 6.66666687e-01, 5.33333361e-01, + 2.00000003e-01, 3.00000012e-01, 1., 8.33333313e-01, + 9.33333337e-01, 4.33333337e-01, 2.66333332e+01, 1.07666664e+01, + 1.98999996e+01, 1.72999992e+01, 8.89999962e+00, 2.73666668e+01, + 1.05666664e+02, 1.00800003e+02, 1.76000004e+01, 2.45666676e+01, + 1.53999996e+01, 9.23333359e+00, 2.55000000e+01, 1.22166664e+02, + 1.25166664e+02, 4.10999985e+01, 1.57666664e+01, 2.49333324e+01, + 1.25666666e+01, 9.10000038e+00, 2.35666676e+01, 5.82000008e+01, + 2.37000008e+01, 9.43333340e+00, 4.23333311e+00, 6.23333311e+00, + 3.56666660e+00, 2.93333340e+00, 6.16666651e+00, 5.83333349e+00, + 5.86666679e+00, 3.36666656e+00, 6.73666687e+01, 1.87666664e+01, + 1.26000004e+01, 1.86333332e+01, 2.02999992e+01, 2.33666668e+01, + 6.80666656e+01, 9.00999985e+01, 4.58666649e+01, 2.73999996e+01, + 1.16333332e+01, 2.42333336e+01, 9.81999969e+01, 1.24099998e+02, + 7.54333344e+01, 3.33666649e+01, 2.37333336e+01, 2.33666668e+01, + 8.43333340e+00, 1.53000002e+01, 1.24866669e+02, 1.19566666e+02, + 2.05666676e+01, 1.05333338e+01, 4.46666670e+00, 6.46666670e+00, + 4.53333330e+00, 5.46666670e+00, 1.16666670e+01, 8.43333340e+00, + 5.90000010e+00, 3.93333340e+00, 5.21666679e+01, 2.76000004e+01, + 1.41999998e+01, 1.18000002e+01, 20., 20., 2.25333328e+01, + 3.69666672e+01, 5.46333351e+01, 2.75666676e+01, 1.28000002e+01, + 4.17000008e+01, 1.00266670e+02, 5.64666672e+01, 1.72333336e+01, + 3.50999985e+01, 3.61333351e+01, 1.58666668e+01, 4.73333311e+00, + 5.76666679e+01, 1.37066666e+02, 6.37000008e+01, 7.66666651e+00, + 1.98666668e+01, 6.59999990e+00, 6.16666651e+00, 2.76666665e+00, + 6.69999981e+00, 1.72999992e+01, 8.03333378e+00, 4.16666651e+00, + 2.96666670e+00, 8.26315784e+00, 1.95526314e+01, 1.32368422e+01, + 4.78947353e+00, 6.50000000e+00, 4.35526314e+01, 4.57631569e+01, + 1.01315794e+01, 7.07894754e+00, 1.84736843e+01, 1.09210529e+01, + 6.13157892e+00, 8.65789509e+00, 2.56315784e+01, 1.50263157e+01, + 7.07894754e+00, 4.21052647e+00, 4.76315784e+00, 5.10526323e+00, + 6.73684216e+00, 9.86842060e+00, 9.92105293e+00, 1.17105265e+01, + 8.47368431e+00, 2., 1.73684216e+00, 1.92105258e+00, + 3.10526323e+00, 4.57894754e+00, 4.52631569e+00, 6.47368431e+00, + 4., 1.67105255e+01, 3.70526314e+01, 2.27105255e+01, + 8.07894707e+00, 1.53684206e+01, 1.15868423e+02, 9.56578979e+01, + 1.90789471e+01, 1.96578941e+01, 5.59473686e+01, 2.71842098e+01, + 6.55263138e+00, 3.13947372e+01, 1.41184204e+02, 5.63684196e+01, + 9.60526276e+00, 1.76578941e+01, 4.80789490e+01, 2.16315784e+01, + 1.06315794e+01, 2.31578941e+01, 6.19473686e+01, 2.57368412e+01, + 1.47105265e+01, 6.60526323e+00, 6.89473677e+00, 5.81578970e+00, + 8.05263138e+00, 1.13684206e+01, 1.38684206e+01, 1.73684216e+01, + 9.18421078e+00, 2.63421059e+01, 3.17368412e+01, 2.08947372e+01, + 1.50263157e+01, 2.45526314e+01, 5.27894745e+01, 5.34736824e+01, + 2.29210529e+01, 2.94473686e+01, 4.29210510e+01, 1.78157902e+01, + 1.06578951e+01, 6.55263138e+01, 1.39947372e+02, 5.68947372e+01, + 1.65263157e+01, 3.35526314e+01, 6.42894745e+01, 1.78684216e+01, + 9., 8.80789490e+01, 1.34973679e+02, 2.05789471e+01, + 7.52631569e+00, 1.55789471e+01, 2.41052628e+01, 1.01052628e+01, + 8.76315784e+00, 1.39473686e+01, 1.71578941e+01, 7.97368431e+00, + 7.71052647e+00, 3.07894745e+01, 6.52105255e+01, 4.36578941e+01, + 1.77631588e+01, 1.38421049e+01, 2.22894745e+01, 1.88684216e+01, + 1.44210529e+01, 2.44473686e+01, 4.52368431e+01, 5.09210510e+01, + 3.28157883e+01, 3.80526314e+01, 5.51842117e+01, 3.38947372e+01, + 2.77368412e+01, 3.38947372e+01, 3.95789490e+01, 2.12894745e+01, + 2.88157902e+01, 1.16973686e+02, 1.24131577e+02, 2.15000000e+01, + 1.51052628e+01, 2.07894745e+01, 2.91052628e+01, 9.63157940e+00, + 9.07894707e+00, 3.51842117e+01, 4.03157883e+01, 1.27894735e+01, + 5.73684216e+00, 6.08771944e+00, 4.79824562e+01, 2.62105255e+01, + 2.10526323e+00, 3.38596487e+00, 1.07929825e+02, 6.30701752e+01, + 7.56140327e+00, 1.16842108e+01, 2.84210529e+01, 1.31228065e+01, + 2.78947377e+00, 5.31578970e+00, 6.66491241e+01, 2.14385967e+01, + 7.24561405e+00, 1.84035091e+01, 3.09298248e+01, 1.18947372e+01, + 3.05263162e+00, 5.15789461e+00, 4.91228056e+00, 8.89473724e+00, + 6.10526323e+00, 1.35964909e+01, 1.25964909e+01, 5.94736862e+00, + 1.96491230e+00, 1.87719297e+00, 1.87719297e+00, 6.21052647e+00, + 5.63157892e+00, 1.01578951e+01, 1.32368423e+02, 5.86491241e+01, + 2.49122810e+00, 9.28070164e+00, 7.83859634e+01, 2.75087719e+01, + 3.50877190e+00, 2.10350876e+01, 1.18561401e+02, 1.59122810e+01, + 2.64912271e+00, 3.32982445e+01, 1.33719299e+02, 2.48596497e+01, + 2.36842108e+00, 2.36666660e+01, 3.58771935e+01, 1.08596487e+01, + 3.45614028e+00, 2.34736843e+01, 6.79473648e+01, 7.96491241e+00, + 6.42105246e+00, 2.05087719e+01, 2.37192974e+01, 7.52631569e+00, + 1.85964918e+00, 1.56140351e+00, 1.21052635e+00, 4.31578970e+00, + 5.28070164e+00, 9.98245621e+00, 5.13157883e+01, 6.17543840e+00, + 4.38596487e+00, 2.77192974e+01, 3.09824562e+01, 1.31754389e+01, + 5.26315784e+00, 8.98245621e+01, 1.33649124e+02, 9.28070164e+00, + 3.52631569e+00, 4.85263176e+01, 9.35263138e+01, 5.84210539e+00, + 3.50877190e+00, 4.53333321e+01, 6.05087738e+01, 4.84210539e+00, + 2.61403513e+00, 1.01473686e+02, 1.25175438e+02, 5.03508759e+00, + 4.92982435e+00, 2.36666660e+01, 2.28421059e+01, 4.50877190e+00, + 1.22807014e+00, 5.64912271e+00, 6.07017565e+00, 3.66666675e+00, + 5.82456160e+00, 1.54385960e+00, 8.24561417e-01, 1.05263162e+00, + 9.64912319e+00, 3.50526314e+01, 2.68947372e+01, 1.43157892e+01, + 3.40350866e+00, 8.93859634e+01, 7.23859634e+01, 1.94736838e+00, + 7., 3.19122810e+01, 2.08947372e+01, 7.12280703e+00, + 5.77192974e+00, 1.08526314e+02, 7.12631607e+01, 1.80701756e+00, + 2.70175433e+00, 1.16140350e+02, 8.38245621e+01, 3.85964918e+00, + 4.61403513e+00, 1.78070183e+01, 1.28421049e+01, 1.92982459e+00, + 1.14035082e+00, 2.84736843e+01, 1.66315784e+01, 4.07017565e+00, + 5.66666651e+00, 6.62500000e+00, 7.26785707e+00, 4.42857122e+00, + 4.73214293e+00, 7.75000000e+00, 1.23750000e+01, 1.10357141e+01, + 8.57142830e+00, 3.92857146e+00, 3.28571439e+00, 3.57142854e+00, + 6.71428585e+00, 1.10714283e+01, 9.28571415e+00, 1.26428576e+01, + 8.35714245e+00, 3.46428561e+00, 2.62500000e+00, 3.91071439e+00, + 5.60714293e+00, 6.55357122e+00, 5.73214293e+00, 9.78571415e+00, + 7.39285707e+00, 1.33928573e+00, 1.76785719e+00, 2.25000000e+00, + 3.05357146e+00, 3.03571439e+00, 2.55357146e+00, 3.30357146e+00, + 2.17857146e+00, 2.08571434e+01, 3.50357132e+01, 2.05714283e+01, + 1.02678576e+01, 3.20535698e+01, 1.01767860e+02, 6.12142868e+01, + 2.26785717e+01, 1.61250000e+01, 2.25178566e+01, 1.78392849e+01, + 2.13035717e+01, 3.09107151e+01, 4.17857132e+01, 3.70178566e+01, + 2.10714283e+01, 1.14821424e+01, 1.04107141e+01, 1.35000000e+01, + 2.32678566e+01, 2.47500000e+01, 2.44821434e+01, 3.40178566e+01, + 2.01785717e+01, 6.94642878e+00, 8.92857170e+00, 1.04821424e+01, + 1.27857141e+01, 1.17678576e+01, 1.57678576e+01, 2.05535717e+01, + 13., 5.06607132e+01, 4.60535698e+01, 1.74107151e+01, + 9.46428585e+00, 9.52678604e+01, 1.50357147e+02, 9.05178604e+01, + 3.16607151e+01, 3.91607132e+01, 6.05178566e+01, 2.52857151e+01, + 1.98928566e+01, 1.00339287e+02, 1.30339279e+02, 4.01250000e+01, + 1.87142849e+01, 2.03928566e+01, 1.97321434e+01, 1.78392849e+01, + 2.80535717e+01, 3.09464283e+01, 3.51071434e+01, 3.68392868e+01, + 2.38928566e+01, 9.44642830e+00, 1.06785717e+01, 1.38571424e+01, + 1.61785717e+01, 1.51607141e+01, 1.97857151e+01, 2.26428566e+01, + 1.42321424e+01, 5.15535698e+01, 3.89821434e+01, 1.60178566e+01, + 2.00178566e+01, 9.97321396e+01, 1.10910713e+02, 46., + 3.14821434e+01, 5.23035698e+01, 5.16607132e+01, 1.12142859e+01, + 1.78214283e+01, 1.35517853e+02, 1.42053574e+02, 3.24107132e+01, + 1.71785717e+01, 2.96964283e+01, 3.84464302e+01, 1.92678566e+01, + 1.85357151e+01, 3.40535698e+01, 6.14464302e+01, 3.27142868e+01, + 1.89285717e+01, 6.60714293e+00, 9.42857170e+00, 1.28928576e+01, + 1.44285717e+01, 1.53214283e+01, 1.92142849e+01, 1.55357141e+01, + 9.28571415e+00, 3.93548393e+00, 6.16129017e+00, 1.04193544e+01, + 4.38709679e+01, 4.41935501e+01, 1.18387098e+01, 1.09677422e+00, + 1.41935480e+00, 1.29677420e+01, 1.83870964e+01, 1.06774197e+01, + 2.54516125e+01, 1.07709679e+02, 8.13871002e+01, 6.25806475e+00, + 4.54838705e+00, 2.29032249e+01, 1.55161295e+01, 2.87096763e+00, + 3.48387098e+00, 4.47096786e+01, 7.57419357e+01, 2.27096767e+01, + 1.75161285e+01, 2.73225803e+01, 2.83548393e+01, 1.28387098e+01, + 5.45161295e+00, 1.56129036e+01, 5.43870964e+01, 3.70967751e+01, + 2.19677410e+01, 4.38709688e+00, 1.18064518e+01, 1.69032249e+01, + 4.95483856e+01, 6.54193573e+01, 2.25806446e+01, 4.90322590e+00, + 2.96774197e+00, 2.51290321e+01, 7.30322571e+01, 4.12903214e+01, + 4.03870964e+01, 7.69032288e+01, 9.33225784e+01, 2.18387089e+01, + 1.18709679e+01, 3.88387108e+01, 7.77419357e+01, 2.33870964e+01, + 6.64516115e+00, 4.35483856e+01, 1.20774193e+02, 4.37096786e+01, + 1.34193544e+01, 2.44838715e+01, 5.87096786e+01, 3.55806465e+01, + 1.34516125e+01, 3.11612911e+01, 9.32903214e+01, 4.84516144e+01, + 8.09677410e+00, 1.25806451e+00, 4.32258081e+00, 8.06451607e+00, + 2.97741928e+01, 7.26128998e+01, 5.15483856e+01, 1.78064518e+01, + 4.09677410e+00, 1.62258072e+01, 4.09032249e+01, 3.81935501e+01, + 5.13548393e+01, 4.51935501e+01, 5.74516144e+01, 5.08387108e+01, + 3.85161285e+01, 2.26774197e+01, 8.74838715e+01, 5.65161285e+01, + 3.08387089e+01, 25., 9.72258072e+01, 5.93548393e+01, + 3.45483856e+01, 5.38709688e+00, 4.04516144e+01, 5.70645180e+01, + 1.17419357e+01, 1.23225803e+01, 8.47419357e+01, 8.98709641e+01, + 8.93548393e+00, 2.25806445e-01, 3.22580636e-01, 9.03225780e-01, + 6.64516115e+00, 3.52903214e+01, 5.33870964e+01, 1.76129036e+01, + 1.77419353e+00, 2.38709688e+00, 3.19354844e+00, 6.90322590e+00, + 1.46129036e+01, 2.73870964e+01, 5.66774178e+01, 4.02903214e+01, + 1.57419357e+01, 5.35483885e+00, 8.80645180e+00, 1.31935482e+01, + 1.84516125e+01, 1.27419357e+01, 3.04838715e+01, 4.73548393e+01, + 3.33870964e+01, 7.51612902e+00, 8.70967770e+00, 1.31612902e+01, + 5., 5.93548393e+00, 2.40645161e+01, 4.53225822e+01, + 2.45161285e+01, 2.88709688e+00, 5.79516144e+01, 1.01500000e+02, + 4.50000000e+00, 2.54838705e+00, 3.12419357e+01, 6.13870964e+01, + 4.66129017e+00, 4.08064508e+00, 9.47258072e+01, 7.34354858e+01, + 3.03225803e+00, 3.79032254e+00, 9.62258072e+01, 7.41451645e+01, + 4.24193525e+00, 6.45161295e+00, 4.75645180e+01, 1.75322590e+01, + 3.20967746e+00, 7.83870983e+00, 1.08338707e+02, 3.98387108e+01, + 4.12903214e+00, 8.59677410e+00, 1.85483875e+01, 9.56451607e+00, + 4.09677410e+00, 1.25322580e+01, 2.17096767e+01, 4.59677410e+00, + 3.45161295e+00, 5.74193525e+00, 1.75806446e+01, 2.66451607e+01, + 3.20967746e+00, 1.27903223e+01, 3.29354820e+01, 2.39032249e+01, + 1.10806456e+01, 8.11290359e+00, 1.04870964e+02, 5.62096786e+01, + 4.22580624e+00, 1.68548393e+01, 4.44032249e+01, 1.94677410e+01, + 7.37096786e+00, 2.64032249e+01, 1.25693550e+02, 3.46774178e+01, + 3.09677410e+00, 2.37419357e+01, 1.13322578e+02, 1.95806446e+01, + 2.46774197e+00, 1.59032259e+01, 4.93709679e+01, 7.35483885e+00, + 3.59677410e+00, 4.57741928e+01, 1.09580643e+02, 1.00161295e+01, + 3.11290312e+00, 3.56451607e+00, 1.77419353e+00, 9.51612890e-01, + 3.41935492e+00, 2.28225803e+01, 5.59516144e+01, 3.64354820e+01, + 9.80645180e+00, 4.38709688e+00, 8.35483837e+00, 2.33870959e+00, + 5.41935492e+00, 3.92258072e+01, 4.60967751e+01, 2.04354839e+01, + 6.77419376e+00, 4.96290321e+01, 1.02838707e+02, 6.08064508e+00, + 5.27419376e+00, 3.58225822e+01, 3.56612892e+01, 7.40322590e+00, + 4.85483885e+00, 7.35483856e+01, 1.02209679e+02, 3.90322590e+00, + 2.58064508e+00, 7.39354858e+01, 9.85322571e+01, 4.59677410e+00, + 2.59677410e+00, 4.66129017e+00, 5.29032278e+00, 6., + 1.14838705e+01, 3.29516144e+01, 5.40483856e+01, 2.79193554e+01, + 7.51612902e+00, 5.64516127e-01, 5.48387110e-01, 2.85483861e+00, + 1.09032259e+01, 4.91290321e+01, 4.71612892e+01, 1.56612902e+01, + 2.45161295e+00, 2.55322590e+01, 1.66290321e+01, 1.37096775e+00, + 9.75806427e+00, 3.92419357e+01, 2.20645161e+01, 6.38709688e+00, + 3.08064508e+00, 1.03564514e+02, 6.30967751e+01, 1.45161295e+00, + 3.74193549e+00, 5.68709679e+01, 2.76935482e+01, 3.50000000e+00, + 3.38709688e+00, 6.80000019e+00, 4.26666689e+00, 5.16666651e+00, + 5.86666679e+00, 7.69999981e+00, 9.68333340e+00, 1.16666670e+01, + 1.17833338e+01, 1.59333334e+01, 8.61666679e+00, 1.27833338e+01, + 1.78166676e+01, 2.01333332e+01, 2.28999996e+01, 2.63666668e+01, + 2.64333324e+01, 1.71166668e+01, 1.12666664e+01, 1.32500000e+01, + 1.80333328e+01, 2.22833328e+01, 2.61666660e+01, 3.13833332e+01, + 2.74666672e+01, 1.02333336e+01, 7.46666670e+00, 8.69999981e+00, + 1.28166666e+01, 1.82500000e+01, 26., 2.60833340e+01, + 1.77333336e+01, 1.34666662e+01, 1.01499996e+01, 1.09333334e+01, + 1.47666664e+01, 1.98666668e+01, 2.43166676e+01, 2.37833328e+01, + 1.80333328e+01, 3.24000015e+01, 2.29333324e+01, 2.25666676e+01, + 3.17500000e+01, 4.05499992e+01, 4.97999992e+01, 4.94000015e+01, + 3.94333344e+01, 3.47500000e+01, 2.39500008e+01, 2.37666664e+01, + 2.99500008e+01, 4.27500000e+01, 5.68333321e+01, 5.37500000e+01, + 4.77833328e+01, 2.23833332e+01, 1.87999992e+01, 1.87666664e+01, + 2.54666672e+01, 3.58666649e+01, 4.53166656e+01, 4.68499985e+01, + 3.57666664e+01, 1.56499996e+01, 1.24166670e+01, 1.04833336e+01, + 1.20666666e+01, 1.76833324e+01, 2.72166672e+01, 2.92666664e+01, + 1.88166676e+01, 3.57500000e+01, 2.55499992e+01, 2.00833340e+01, + 2.30833340e+01, 3.50333328e+01, 5.38833351e+01, 6.21666679e+01, + 4.65999985e+01, 3.60333328e+01, 3.09666672e+01, 3.04166660e+01, + 3.37000008e+01, 4.61500015e+01, 70., 6.73833313e+01, + 5.31833344e+01, 2.77999992e+01, 2.23166676e+01, 3.90499992e+01, + 6.16166649e+01, 4.36666679e+01, 4.79166679e+01, 6.15333328e+01, + 7.49333344e+01, 1.31000004e+01, 9.66666698e+00, 8.93333340e+00, + 9.26666641e+00, 1.33000002e+01, 2.37666664e+01, 2.90499992e+01, + 1.73166676e+01, 2.72166672e+01, 1.93166676e+01, 2.84833336e+01, + 3.95499992e+01, 3.03833332e+01, 4.45499992e+01, 6.43499985e+01, + 5.05499992e+01, 1.97000008e+01, 1.85833340e+01, 6.62333298e+01, + 9.92833328e+01, 3.72999992e+01, 4.07000008e+01, 1.04800003e+02, + 1.28300003e+02, 1.31666670e+01, 1.50500002e+01, 6.84166641e+01, + 9.43166656e+01, 2.11166668e+01, 3.31166649e+01, 1.33350006e+02, + 1.31550003e+02, 3.28571439e+00, 3.50000000e+00, 4.69047642e+00, + 3.33333325e+00, 3.83333325e+00, 2.71428561e+00, 1.76190472e+00, + 1.78571427e+00, 1.64285717e+01, 1.53095236e+01, 1.01428576e+01, + 9.57142830e+00, 3.41428566e+01, 2.58809528e+01, 4.73809528e+00, + 5.69047642e+00, 7.70952377e+01, 9.51190491e+01, 3.62380943e+01, + 8.54761887e+00, 7.65714264e+01, 7.07142868e+01, 7.23809528e+00, + 5.26190472e+00, 119., 1.29952377e+02, 3.77142868e+01, + 7.76190472e+00, 6.61190491e+01, 5.83333321e+01, 1.46666670e+01, + 1.31666670e+01, 3.97619057e+00, 4.19047642e+00, 6.33333349e+00, + 4.78571415e+00, 2.76190472e+00, 2.28571439e+00, 2.38095236e+00, + 3., 1.14523811e+01, 1.24761906e+01, 1.48571424e+01, + 1.47142859e+01, 2.20952377e+01, 1.40238094e+01, 6.35714293e+00, + 7.02380943e+00, 3.72857132e+01, 4.08571434e+01, 1.95238094e+01, + 1.06190472e+01, 8.35714264e+01, 6.59761887e+01, 8.50000000e+00, + 8.69047642e+00, 144., 1.32523804e+02, 2.06190472e+01, + 5.45238113e+00, 1.05857140e+02, 7.37619019e+01, 5.88095236e+00, + 9.42857170e+00, 3.28571439e+00, 3.52380943e+00, 5.28571415e+00, + 5.40476179e+00, 3.02380943e+00, 2.02380943e+00, 3.11904764e+00, + 3.26190472e+00, 1.01904764e+01, 1.04523811e+01, 1.38571424e+01, + 1.52619047e+01, 1.53095236e+01, 8.54761887e+00, 6.42857122e+00, + 8.69047642e+00, 2.16428566e+01, 2.06428566e+01, 1.66904755e+01, + 1.40714283e+01, 6.16666679e+01, 3.02142849e+01, 7.73809528e+00, + 1.03809528e+01, 1.40357147e+02, 1.07547623e+02, 5.35714293e+00, + 5.83333349e+00, 1.13952377e+02, 6.64761887e+01, 3.07142854e+00, + 5.78571415e+00, 2.16666675e+00, 2.61904764e+00, 4.35714293e+00, + 4.09523821e+00, 2., 1.71428573e+00, 2.85714293e+00, + 2.64285707e+00, 7.45238113e+00, 8.02380943e+00, 1.14761906e+01, + 1.15000000e+01, 9., 5.76190472e+00, 5.26190472e+00, + 6.88095236e+00, 1.49285717e+01, 1.23333330e+01, 1.20238094e+01, + 1.21666670e+01, 3.61904755e+01, 1.36904764e+01, 5.38095236e+00, + 7.71428585e+00, 9.56904755e+01, 4.94047623e+01, 7.40476179e+00, + 6.71428585e+00, 8.12857132e+01, 4.01904755e+01, 2.76190472e+00, + 4.16666651e+00, 1.48695650e+01, 6.84782600e+00, 2., + 1.34782612e+00, 1.97826087e+00, 8.84782600e+00, 2.47173920e+01, + 9.93478298e+00, 1.73043480e+01, 7.04347849e+00, 4.43478251e+00, + 8.65217400e+00, 4.30434799e+00, 7., 1.73695660e+01, + 1.41521740e+01, 1.18695650e+01, 3.58695650e+00, 1.41956520e+01, + 4.20217400e+01, 6.80434799e+00, 3.80434775e+00, 1.13260870e+01, + 4.39347839e+01, 9.30434799e+00, 2.17391300e+00, 1.62826080e+01, + 34., 3.78260875e+00, 1.84782612e+00, 2.73043480e+01, + 8.08043442e+01, 1.44130430e+01, 1.00434780e+01, 9.13043499e+00, + 8.67391300e+00, 4.06521749e+00, 4.08695650e+00, 1.00652170e+01, + 1.07391300e+01, 2.56956520e+01, 9.71739101e+00, 1.65434780e+01, + 5.27391319e+01, 1.74782600e+01, 4.19565201e+00, 9.54347801e+00, + 3.57608681e+01, 5.29782600e+01, 8.28260899e+00, 1.96521740e+01, + 6.29130440e+01, 2.02391300e+01, 4.34782600e+00, 3.11956520e+01, + 1.22065216e+02, 2.00434780e+01, 6.78260851e+00, 1.01956520e+01, + 2.00869560e+01, 1.11304350e+01, 1.08913040e+01, 4.34347839e+01, + 9.04347839e+01, 1.34565220e+01, 8.36956501e+00, 1.82173920e+01, + 3.55434799e+01, 9.17391300e+00, 3.08695650e+00, 1.64130440e+01, + 2.34782600e+01, 6.86086960e+01, 1.62391300e+01, 24., + 7.84565201e+01, 3.45217400e+01, 4.93478251e+00, 3.50217400e+01, + 9.13043442e+01, 1.05521736e+02, 3.23913040e+01, 1.70434780e+01, + 3.75869560e+01, 3.36521721e+01, 1.72391300e+01, 4.28695641e+01, + 1.14500000e+02, 2.63260860e+01, 1.80217400e+01, 1.88478260e+01, + 1.96304340e+01, 2.38043480e+01, 2.38478260e+01, 2.79782600e+01, + 2.97608700e+01, 6.36956501e+00, 3.17391300e+00, 2.70434780e+01, + 6.32173920e+01, 8.56521702e+00, 1.89130437e+00, 4.26304359e+01, + 9.35652161e+01, 3.86956520e+01, 1.09565220e+01, 3.76304359e+01, + 8.95434799e+01, 1.76304340e+01, 7.78260851e+00, 7.10869598e+01, + 1.28195648e+02, 4.03478279e+01, 2.96739140e+01, 7.55000000e+01, + 8.46086960e+01, 2.09347820e+01, 2.70869560e+01, 4.95652161e+01, + 7.07173920e+01, 7.93478251e+00, 3.07608700e+01, 8.92608719e+01, + 5.33695641e+01, 1.10434780e+01, 1.39347830e+01, 3.61739120e+01, + 2.03043480e+01, 8.19272690e+01, 3.70181808e+01, 2.07272720e+00, + 3.54545450e+00, 9.87454529e+01, 6.21454544e+01, 6.43636370e+00, + 6.27272749e+00, 9.55454559e+01, 5.48727264e+01, 3.96363640e+00, + 6.10909081e+00, 5.98727264e+01, 3.71454544e+01, 1.75272732e+01, + 9.87272739e+00, 2.32727280e+01, 1.49454546e+01, 6.03636360e+00, + 9.36363602e+00, 1.99636364e+01, 2.07999992e+01, 2.42909088e+01, + 1.42545452e+01, 9.65454578e+00, 4.40000010e+00, 3.85454535e+00, + 4.21818161e+00, 6.23636341e+00, 5.19999981e+00, 9.83636379e+00, + 1.04545450e+01, 7.98545456e+01, 3.92727280e+01, 8., + 9.76363659e+00, 9.89454575e+01, 7.75090942e+01, 1.23999996e+01, + 1.06545458e+01, 1.08527275e+02, 8.88545456e+01, 8.21818161e+00, + 6.38181829e+00, 8.91454544e+01, 7.59636383e+01, 18., + 1.02727270e+01, 4.54000015e+01, 3.62181816e+01, 8.38181782e+00, + 1.17454548e+01, 2.37454548e+01, 2.45272732e+01, 2.37999992e+01, + 1.38727274e+01, 1.05454550e+01, 6.69090891e+00, 5.58181810e+00, + 7.83636379e+00, 7.69090891e+00, 6.59999990e+00, 9.81818199e+00, + 1.21636362e+01, 5.83818169e+01, 3.13636360e+01, 1.55636368e+01, + 1.41999998e+01, 6.20727272e+01, 6.19454536e+01, 2.05090904e+01, + 1.79272728e+01, 9.26363602e+01, 8.22727280e+01, 1.00909090e+01, + 8.36363602e+00, 1.03563637e+02, 1.03090912e+02, 3.00181828e+01, + 1.07636366e+01, 8.10545425e+01, 6.70181808e+01, 7.98181820e+00, + 9.18181801e+00, 3.75272713e+01, 2.99454536e+01, 1.80909100e+01, + 1.18181820e+01, 1.58000002e+01, 9.32727242e+00, 5.27272749e+00, + 7.23636341e+00, 9.67272758e+00, 7.85454559e+00, 8.85454559e+00, + 1.01636362e+01, 3.74000015e+01, 2.22727280e+01, 1.58727274e+01, + 1.32545452e+01, 2.83090916e+01, 2.40545464e+01, 1.31272726e+01, + 1.87090912e+01, 5.64727287e+01, 3.65454559e+01, 1.20181818e+01, + 1.32727270e+01, 9.05999985e+01, 7.33454514e+01, 2.11818180e+01, + 1.08727274e+01, 9.03272705e+01, 5.59090919e+01, 6.38181829e+00, + 7.38181829e+00, 5.59636345e+01, 3.49090919e+01, 1.21818180e+01, + 1.03636360e+01, 2.08363628e+01, 1.19272728e+01, 3.20000005e+00, + 3.85454535e+00, 1.04181814e+01, 7.56363630e+00, 6.34545469e+00, + 5.70909071e+00, 1.30192308e+01, 6.73076916e+00, 1.33076925e+01, + 2.98653851e+01, 6.44230747e+00, 1.00961542e+01, 1.70961533e+01, + 1.32115383e+01, 7.63461542e+00, 1.78846157e+00, 5.76923084e+00, + 8.21153831e+00, 1.08846149e+01, 3.28461533e+01, 4.56730766e+01, + 1.59615383e+01, 1.63461542e+00, 7.69230783e-01, 2.92307687e+00, + 2.28846145e+00, 1.37115383e+01, 5.03653831e+01, 4.39038467e+01, + 1.04615383e+01, 9.80769217e-01, 6.19230747e+00, 4.55769253e+00, + 1.34615386e+00, 1.12692308e+01, 3.50192299e+01, 2.36730766e+01, + 3.46153855e+00, 4.55961533e+01, 1.51730766e+01, 7.71153831e+00, + 6., 4.30769253e+00, 4.86538458e+00, 3.11346149e+01, + 5.31923065e+01, 4.49230766e+01, 1.38461542e+01, 8.19230747e+00, + 7.61538458e+00, 9.09615421e+00, 4.55769234e+01, 1.07788460e+02, + 9.44807663e+01, 7.53846169e+00, 4.21153831e+00, 5.55769253e+00, + 8.01923084e+00, 2.44615383e+01, 1.15903847e+02, 1.25423080e+02, + 3.38653831e+01, 2.57692313e+00, 9.61538434e-01, 1.17307687e+00, + 1.63461542e+00, 1.86923084e+01, 1.12538460e+02, 8.16346130e+01, + 9.40384579e+00, 7.74615402e+01, 2.54807701e+01, 7.67307711e+00, + 4.28846169e+00, 1.78846157e+00, 2.13461542e+00, 3.61730766e+01, + 9.64615402e+01, 8.70384598e+01, 5.65192299e+01, 4.34038467e+01, + 2.99038467e+01, 1.75576916e+01, 2.84423084e+01, 7.27692337e+01, + 1.00750000e+02, 1.95961533e+01, 2.22500000e+01, 38., + 4.07307701e+01, 4.33076935e+01, 8.95769196e+01, 8.58076935e+01, + 3.29038467e+01, 4.61538458e+00, 3.25000000e+00, 3.53846145e+00, + 5.13461542e+00, 3.19230766e+01, 1.12230766e+02, 6.41538467e+01, + 6.28846169e+00, 7.46153870e+01, 2.35192299e+01, 4.34615374e+00, + 3.53846145e+00, 3.88461542e+00, 2.94230771e+00, 1.36538458e+01, + 5.61730766e+01, 5.48653831e+01, 3.18846149e+01, 1.86153851e+01, + 1.31730766e+01, 1.52307692e+01, 1.28076925e+01, 2.12307701e+01, + 4.42692299e+01, 1.94615383e+01, 1.59807692e+01, 1.41923075e+01, + 1.10576925e+01, 1.27500000e+01, 2.15769234e+01, 2.24423084e+01, + 2.13461533e+01, 7.63461542e+00, 5.73076916e+00, 3.90384626e+00, + 5.57692289e+00, 3.25961533e+01, 5.70384598e+01, 2.22884617e+01, + 1.12692308e+01, 4.66176462e+00, 6.22058821e+00, 3.36764717e+00, + 3.42647052e+00, 5.07500000e+01, 1.11279411e+02, 1.94852943e+01, + 4.45588255e+00, 5.39705896e+00, 1.23235292e+01, 7.33823538e+00, + 3.52941179e+00, 7.19411774e+01, 1.52867645e+02, 3.36029396e+01, + 2.70588231e+00, 1.00147057e+01, 2.83529415e+01, 2.82500000e+01, + 9.69117641e+00, 1.36617651e+01, 8.54705887e+01, 4.94411774e+01, + 7.05882359e+00, 9.80882359e+00, 2.53970585e+01, 3.64852943e+01, + 1.44558821e+01, 8.02941132e+00, 1.95588226e+01, 3.31176453e+01, + 1.37794113e+01, 5.88235283e+00, 6.13235283e+00, 4.58823538e+00, + 5.13235283e+00, 1.77205887e+01, 7.12941208e+01, 3.87647057e+01, + 9.10294151e+00, 4.63235283e+00, 6.23529434e+00, 2.86764717e+00, + 2.77941179e+00, 1.92647057e+01, 1.51485291e+02, 1.06102943e+02, + 1.03382349e+01, 2.98529410e+00, 5.55882359e+00, 4.54411745e+00, + 1.82352936e+00, 4.89705896e+00, 1.53352936e+02, 1.53132355e+02, + 9.76470566e+00, 4.19117641e+00, 4.60294104e+00, 7.25000000e+00, + 3., 2.51470590e+00, 6.92352905e+01, 1.51235291e+02, + 3.50441170e+01, 7.39705896e+00, 7.25000000e+00, 5.60294104e+00, + 5., 8.86764717e+00, 2.89117641e+01, 2.76029415e+01, + 8.47058868e+00, 7.08823538e+00, 6.26470566e+00, 5.27941179e+00, + 5.69117641e+00, 1.01764708e+01, 4.90147057e+01, 6.03088226e+01, + 1.49705887e+01, 4.55882359e+00, 3.95588231e+00, 4.10294104e+00, + 3.82352948e+00, 7.98529434e+00, 7.55882339e+01, 1.12455879e+02, + 2.00588226e+01, 3.98529410e+00, 2.30882359e+00, 3.05882359e+00, + 3.19117641e+00, 5.07352924e+00, 4.79411774e+01, 1.28250000e+02, + 2.48382359e+01, 1.79411769e+00, 1.86764705e+00, 1.54411769e+00, + 1.19117641e+00, 1.85294116e+00, 4.64705896e+00, 4.36764717e+00, + 1.66176474e+00, 1.98529410e+00, 1.82352936e+00, 1.50000000e+00, + 1.80882359e+00, 2.48529410e+00, 6.11764717e+00, 9.17647076e+00, + 3.23529410e+00, 1.61764705e+00, 1.38235295e+00, 1.94117641e+00, + 1.89705884e+00, 2.36764717e+00, 5.83823538e+00, 1.21911764e+01, + 4.91176462e+00, 1.14705884e+00, 9.70588207e-01, 1.39705884e+00, + 1.55882359e+00, 1.91176474e+00, 5.72058821e+00, 1.03235292e+01, + 5.13235283e+00, 4.16666679e-02, 2.29166672e-01, 2.14583325e+00, + 8.04166698e+00, 2.22291660e+01, 9.58333302e+00, 1.39583337e+00, + 3.33333343e-01, 9.37500000e-01, 2.14583325e+00, 6.27083349e+00, + 5.01875000e+01, 9.43750000e+01, 2.70208340e+01, 4.79166651e+00, + 1.89583337e+00, 1.28958330e+01, 8.29166698e+00, 9.75000000e+00, + 5.78125000e+01, 9.00625000e+01, 2.84375000e+01, 1.16666670e+01, + 1.04375000e+01, 1.95625000e+01, 1.12291670e+01, 6.60416651e+00, + 8.31458359e+01, 1.19145836e+02, 1.95416660e+01, 1.09583330e+01, + 1.95416660e+01, 8.33333358e-02, 6.25000000e-02, 1.47916663e+00, + 7.12500000e+00, 2.55416660e+01, 2.25208340e+01, 3.22916675e+00, + 3.54166657e-01, 1.06250000e+00, 1.68750000e+00, 3.77083325e+00, + 2.94166660e+01, 1.14583336e+02, 85., 1.08958330e+01, + 1.95833337e+00, 1.60208340e+01, 1.12708330e+01, 9.33333302e+00, + 2.49375000e+01, 1.05791664e+02, 6.87291641e+01, 2.09791660e+01, + 1.06250000e+01, 2.60208340e+01, 1.55416670e+01, 7.27083349e+00, + 35., 1.30104172e+02, 6.77708359e+01, 6.45833349e+00, + 1.23333330e+01, 4.79166657e-01, 8.12500000e-01, 1.45833337e+00, + 3.77083325e+00, 1.62916660e+01, 21., 5.52083349e+00, + 8.33333313e-01, 1.54166663e+00, 2.43750000e+00, 3.72916675e+00, + 1.11041670e+01, 9.01041641e+01, 1.08375000e+02, 1.81458340e+01, + 3.14583325e+00, 7.60416651e+00, 5.89583349e+00, 6.58333349e+00, + 1.11041670e+01, 8.13541641e+01, 1.11916664e+02, 3.51250000e+01, + 8.31250000e+00, 1.38541670e+01, 12., 6.95833349e+00, + 7.62500000e+00, 1.21791664e+02, 1.29625000e+02, 1.61250000e+01, + 7.06250000e+00, 1.04166663e+00, 2.08333325e+00, 2.91666675e+00, + 2.54166675e+00, 6.08333349e+00, 9.83333302e+00, 5.35416651e+00, + 1.66666663e+00, 3.89583325e+00, 5.25000000e+00, 6.77083349e+00, + 8.81250000e+00, 3.88958321e+01, 6.52708359e+01, 2.27916660e+01, + 5.20833349e+00, 2.45833325e+00, 2.39583325e+00, 3.79166675e+00, + 7.14583349e+00, 3.91875000e+01, 1.01208336e+02, 4.42291679e+01, + 5.75000000e+00, 4.60416651e+00, 6.50000000e+00, 3.54166675e+00, + 3.20833325e+00, 3.43125000e+01, 1.19500000e+02, 4.72083321e+01, + 7.06250000e+00, 7.93650770e+00, 5.11111116e+00, 2.50793648e+00, + 2.31746030e+00, 9.68253994e+00, 7.66666651e+00, 1.21587305e+01, + 4.79365063e+00, 1.12206352e+02, 3.29206352e+01, 3.66666675e+00, + 5.58730173e+00, 3.76507950e+01, 1.47142859e+01, 1.14444447e+01, + 1.66984119e+01, 9.69206314e+01, 1.49841270e+01, 1.69841266e+00, + 9.34920597e+00, 1.09047623e+02, 3.38888893e+01, 9.96825409e+00, + 1.77619057e+01, 2.38730164e+01, 7.22222233e+00, 2.76190472e+00, + 1.44444447e+01, 6.97301559e+01, 9.96825409e+00, 3.19047618e+00, + 6.33333349e+00, 6.31746054e+00, 5.46031761e+00, 3.04761910e+00, + 2.79365087e+00, 1.18730154e+01, 6.60317469e+00, 5.06349230e+00, + 5.61904764e+00, 1.28761902e+02, 3.07301579e+01, 2.03174615e+00, + 7.26984119e+00, 5.55714302e+01, 1.70158730e+01, 4.58730173e+00, + 1.35238094e+01, 1.28158737e+02, 2.30158730e+01, 8.57142866e-01, + 9.82539654e+00, 1.28603180e+02, 3.62857132e+01, 1.93650794e+00, + 1.41428576e+01, 3.84285698e+01, 1.01904764e+01, 2.38095236e+00, + 1.07777777e+01, 1.01841270e+02, 1.75396824e+01, 2.39682531e+00, + 6.80952358e+00, 5.60317469e+00, 5.46031761e+00, 3.01587296e+00, + 3.06349206e+00, 1.03333330e+01, 5.25396824e+00, 4.76190472e+00, + 5.11111116e+00, 1.26619049e+02, 2.53015881e+01, 2.79365087e+00, + 7.55555534e+00, 5.28253975e+01, 1.61904755e+01, 4.28571415e+00, + 1.65714283e+01, 1.27888885e+02, 3.03809528e+01, 4.17460299e+00, + 1.41428576e+01, 1.26984123e+02, 2.97142849e+01, 1.28571427e+00, + 1.29523811e+01, 3.77777786e+01, 1.06031742e+01, 2.63492060e+00, + 9.57142830e+00, 1.10714287e+02, 2.53174610e+01, 2.92063498e+00, + 6.23809528e+00, 4.50793648e+00, 3.53968263e+00, 2.47619057e+00, + 3.04761910e+00, 7.42857122e+00, 3.36507940e+00, 3.53968263e+00, + 4.14285707e+00, 9.06031723e+01, 1.62063484e+01, 3.14285707e+00, + 6.30158710e+00, 3.43333321e+01, 1.19523811e+01, 4.63492060e+00, + 20., 1.04095238e+02, 2.88095245e+01, 8.55555534e+00, + 1.70158730e+01, 9.63492050e+01, 1.88571434e+01, 2.96825385e+00, + 1.11746035e+01, 2.46825390e+01, 8.76190472e+00, 3.11111116e+00, + 7.92063475e+00, 8.89365082e+01, 2.88888893e+01, 5.42857122e+00, + 4.44444466e+00, 8.35918350e+01, 4.79591846e+00, 2.30612254e+00, + 3.51428566e+01, 6.68775482e+01, 9.67346954e+00, 16., + 8.68367310e+01, 3.01632652e+01, 4.73469400e+00, 3.79591846e+00, + 1.27959185e+01, 1.63877544e+01, 1.39183674e+01, 3.76938782e+01, + 8.53469391e+01, 1.23265305e+01, 6.04081631e+00, 6.73469400e+00, + 7.55102062e+00, 1.40816326e+01, 2.87959175e+01, 49., + 4.05918350e+01, 6.85714293e+00, 6.42857122e+00, 8.57142830e+00, + 8.93877506e+00, 1.58775511e+01, 3.16122456e+01, 3.46326523e+01, + 1.52244902e+01, 1.03530609e+02, 2.53469391e+01, 4.48979568e+00, + 1.50408163e+01, 7.56530609e+01, 2.43061218e+01, 1.02448978e+01, + 6.34081650e+01, 5.82653046e+01, 2.52653065e+01, 1.24693880e+01, + 1.41428576e+01, 2.18367348e+01, 1.66530609e+01, 2.14285717e+01, + 6.82040787e+01, 2.71632652e+01, 1.86938782e+01, 1.88163261e+01, + 2.94285717e+01, 4.08979607e+01, 3.76122437e+01, 3.89795914e+01, + 3.88979607e+01, 9., 8.85714245e+00, 1.28979588e+01, 21., + 3.55102043e+01, 2.93061218e+01, 2.47346935e+01, 1.64693871e+01, + 1.03469391e+02, 7.92653046e+01, 1.39795914e+01, 8.61224461e+00, + 80., 6.03265305e+01, 4.87755108e+00, 1.64693871e+01, + 5.71428566e+01, 7.54285736e+01, 3.91632652e+01, 1.60612240e+01, + 2.46734695e+01, 1.50816326e+01, 4.48979568e+00, 1.60816326e+01, + 2.58979588e+01, 4.14693871e+01, 4.13469391e+01, 3.53265305e+01, + 3.05510197e+01, 1.67346935e+01, 1.69183674e+01, 1.51428576e+01, + 5.44897938e+00, 9.14285755e+00, 3.12244892e+01, 3.66734695e+01, + 2.69795914e+01, 1.45714283e+01, 1.60816326e+01, 9.61224461e+00, + 7.50816345e+01, 1.04897957e+02, 1.34489794e+01, 4.97959185e+00, + 7.05306091e+01, 9.30612259e+01, 7.32653046e+00, 4.08163261e+00, + 2.55918369e+01, 9.72244873e+01, 6.19591827e+01, 9.28571415e+00, + 3.12244892e+01, 6.50816345e+01, 4.65306139e+00, 1.53061223e+00, + 6.42857122e+00, 5.45714302e+01, 9.36122437e+01, 2.85918369e+01, + 7., 9.97959137e+00, 4.26530600e+00, 1.67346942e+00, + 8.36734712e-01, 1.07959185e+01, 8.04489822e+01, 5.79387741e+01, + 8.48979568e+00, 2.42857146e+00, 3.26530623e+00, 1.42857146e+00, + 1.29861115e+02, 3.98888893e+01, 1.87500000e+00, 1.32361107e+01, + 1.08861115e+02, 3.71250000e+01, 3.48611116e+00, 1.78888893e+01, + 3.27500000e+01, 1.92083340e+01, 6.72222233e+00, 2.34166660e+01, + 1.19222221e+02, 2.83055553e+01, 4.06944466e+00, 1.02083330e+01, + 2.13611107e+01, 14., 6.86111116e+00, 5.50000000e+00, + 4.97222233e+00, 3.33333325e+00, 4.18055534e+00, 8.47222233e+00, + 2.48611116e+00, 1.69444442e+00, 6.94444418e-01, 3.47222209e-01, + 8.33333358e-02, 1.25000000e-01, 3.05555552e-01, 1.19444442e+00, + 1.34236115e+02, 1.54027777e+01, 2.38888884e+00, 3.94305573e+01, + 1.30069443e+02, 1.55138893e+01, 3.27777767e+00, 4.54305573e+01, + 5.17222214e+01, 2.23888893e+01, 7.63888884e+00, 4.54861107e+01, + 1.37236115e+02, 1.47222223e+01, 3.90277767e+00, 1.70833340e+01, + 3.25972214e+01, 1.86527786e+01, 7.05555534e+00, 5.59722233e+00, + 4.19444466e+00, 3.98611116e+00, 4.81944466e+00, 1.25277777e+01, + 3.06944442e+00, 1.87500000e+00, 7.77777791e-01, 3.61111104e-01, + 1.52777776e-01, 1.38888896e-01, 5.27777791e-01, 1.56944442e+00, + 1.25708336e+02, 9.34722233e+00, 5.26388884e+00, 9.21527786e+01, + 1.32180557e+02, 5.80555534e+00, 3.80555558e+00, 7.31666641e+01, + 4.65416679e+01, 21., 6.11111116e+00, 6.23333321e+01, + 1.20361115e+02, 6.54166651e+00, 4.87500000e+00, 2.30555553e+01, + 3.54305573e+01, 1.50833330e+01, 5.08333349e+00, 4.02777767e+00, + 3.55555558e+00, 3.90277767e+00, 5.06944466e+00, 1.72500000e+01, + 3.02777767e+00, 1.41666663e+00, 7.08333313e-01, 3.61111104e-01, + 3.19444448e-01, 1.80555552e-01, 5.00000000e-01, 1.73611116e+00, + 5.91666679e+01, 1.21250000e+01, 1.15555553e+01, 1.10138885e+02, + 1.01819443e+02, 8.87500000e+00, 4.94444466e+00, 5.28194427e+01, + 3.55972214e+01, 1.39027777e+01, 5.77777767e+00, 3.33611107e+01, + 4.82083321e+01, 5.54166651e+00, 5.23611116e+00, 2.61527786e+01, + 2.49583340e+01, 8.36111069e+00, 3.29166675e+00, 2.73611116e+00, + 2.27777767e+00, 2.09722233e+00, 3.81944442e+00, 1.95694447e+01, + 2.02777767e+00, 1.06944442e+00, 4.16666657e-01, 2.22222224e-01, + 1.80555552e-01, 1.11111112e-01, 2.77777791e-01, 1.34722221e+00, + 2.63157904e-01, 5.26315808e-01, 5.52631557e-01, 3.68421048e-01, + 5.52631557e-01, 3.94736856e-01, 4.21052635e-01, 5.52631557e-01, + 7.92105246e+00, 7.63157892e+00, 8.89473724e+00, 9.02631569e+00, + 1.51578951e+01, 1.00526314e+01, 5.92105246e+00, 6.28947353e+00, + 3.25000000e+01, 1.94473686e+01, 1.07894735e+01, 1.64736843e+01, + 1.15815788e+02, 3.92894745e+01, 4.84210539e+00, 7.94736862e+00, + 1.58210526e+02, 51., 8., 1.34473686e+01, 1.23631577e+02, + 3.40263176e+01, 3.89473677e+00, 1.77368412e+01, 2.89473683e-01, + 6.57894731e-01, 1.23684216e+00, 6.31578922e-01, 5.52631557e-01, + 3.68421048e-01, 3.94736856e-01, 5.00000000e-01, 1.03947372e+01, + 1.10789471e+01, 1.16842108e+01, 9.76315784e+00, 1.36052628e+01, + 9.23684216e+00, 7.73684216e+00, 8.52631569e+00, 3.24210510e+01, + 1.59736843e+01, 9.71052647e+00, 1.73684216e+01, 1.31605270e+02, + 4.06842117e+01, 7.47368431e+00, 9.65789509e+00, 1.60052628e+02, + 5.01842117e+01, 2.42105269e+00, 1.29736843e+01, 1.45631577e+02, + 4.64473686e+01, 3.55263162e+00, 1.17631578e+01, 2.89473683e-01, + 7.10526288e-01, 1.34210527e+00, 6.31578922e-01, 5.00000000e-01, + 5.26315808e-01, 3.94736856e-01, 4.73684222e-01, 7.50000000e+00, + 1.07894735e+01, 1.21842108e+01, 9.23684216e+00, 1.12631578e+01, + 8.34210491e+00, 8.05263138e+00, 7.60526323e+00, 2.32368412e+01, + 1.45263157e+01, 1.19736843e+01, 1.78947372e+01, 1.10578949e+02, + 2.95526314e+01, 6.52631569e+00, 9.44736862e+00, 1.48210526e+02, + 5.02105255e+01, 7.97368431e+00, 1.22105265e+01, 1.33578949e+02, + 5.33947372e+01, 7.10526323e+00, 1.35000000e+01, 1.31578952e-01, + 3.94736856e-01, 9.47368443e-01, 4.73684222e-01, 2.36842111e-01, + 2.36842111e-01, 3.68421048e-01, 2.63157904e-01, 4.44736862e+00, + 6.92105246e+00, 9.23684216e+00, 6.47368431e+00, 7.68421030e+00, + 5.50000000e+00, 5.52631569e+00, 5.26315784e+00, 1.34473686e+01, + 1.01315794e+01, 8.94736862e+00, 1.15789471e+01, 5.74473686e+01, + 17., 6.36842108e+00, 1.05526314e+01, 9.34210510e+01, + 2.54473686e+01, 7., 8.63157940e+00, 8.43947372e+01, + 3.54736824e+01, 7.13157892e+00, 1.55526314e+01, 4.85400009e+01, + 9.76000023e+00, 1.79999995e+00, 4.42200012e+01, 1.07699997e+02, + 4.61999989e+00, 2.66000009e+00, 1.57200003e+01, 7.84199982e+01, + 3.22200012e+01, 2.46000004e+00, 3.88000011e+00, 6.15999985e+00, + 1.38000000e+00, 6.13999987e+00, 2.73799992e+01, 8.26600037e+01, + 3.75999985e+01, 1.09399996e+01, 5.34000015e+00, 4.63999987e+00, + 4.11999989e+00, 1.58999996e+01, 4.97000008e+01, 1.92000008e+01, + 1.85799999e+01, 17., 1.14799995e+01, 1.27200003e+01, + 1.31599998e+01, 2.19599991e+01, 2.66399994e+01, 5.42799988e+01, + 2.17999992e+01, 2.79999995e+00, 1.17200003e+01, 1.16019997e+02, + 3.89799995e+01, 2.38000011e+00, 6.26000023e+00, 8.43399963e+01, + 6.50199966e+01, 7.73999977e+00, 2.61999989e+00, 7.92000008e+00, + 3.25999999e+00, 2.03999996e+00, 1.37799997e+01, 9.90999985e+01, + 9.85199966e+01, 2.06000004e+01, 4.23999977e+00, 4.51999998e+00, + 5.34000015e+00, 4.92000008e+00, 2.39400005e+01, 2.91000004e+01, + 4.36599998e+01, 2.66200008e+01, 1.52600002e+01, 1.49399996e+01, + 1.43999996e+01, 1.66000004e+01, 1.69400005e+01, 4.86199989e+01, + 4.47000008e+01, 3.55999994e+00, 4.21999979e+00, 1.19120003e+02, + 1.15419998e+02, 1.96000004e+00, 2.72000003e+00, 4.89599991e+01, + 6.17999992e+01, 1.36800003e+01, 5.09999990e+00, 1.86200008e+01, + 24., 1.46000004e+00, 6.44000006e+00, 5.31399994e+01, + 1.16320000e+02, 3.08600006e+01, 2.81999993e+00, 2.70000005e+00, + 5.84000015e+00, 1.20000005e+00, 3.53999996e+00, 2.65799999e+01, + 9.93600006e+01, 5.41199989e+01, 1.08400002e+01, 4.53999996e+00, + 4.82000017e+00, 5.92000008e+00, 7.46000004e+00, 3.74599991e+01, + 8.45000000e+01, 4.92000008e+00, 1.77999997e+00, 5.89599991e+01, + 1.11260002e+02, 5.26000023e+00, 1.74000001e+00, 1.58400002e+01, + 4.18600006e+01, 1.01599998e+01, 2.79999995e+00, 2.65799999e+01, + 1.08559998e+02, 1.57200003e+01, 2.44000006e+00, 2.06599998e+01, + 6.42600021e+01, 2.37800007e+01, 3.94000006e+00, 5.48000002e+00, + 1.67399998e+01, 9.65999985e+00, 2.11999989e+00, 1.19200001e+01, + 6.85999985e+01, 4.61800003e+01, 5.32000017e+00, 1.60000002e+00, + 1.38000000e+00, 3.05999994e+00, 1.22000003e+00, 9.43835640e+00, + 9.56164360e+00, 8., 6.08219194e+00, 1.11917810e+01, + 1.10410957e+01, 7.72602749e+00, 8.60273933e+00, 4.21232872e+01, + 2.58493156e+01, 1.25616436e+01, 1.98219185e+01, 9.47260284e+01, + 4.10136986e+01, 1.13424654e+01, 1.33287668e+01, 8.74794540e+01, + 3.93150673e+01, 1.36438360e+01, 1.77123280e+01, 8.29862976e+01, + 2.52328758e+01, 9.93150711e+00, 1.89041100e+01, 7.26712341e+01, + 2.12602749e+01, 9.32876682e+00, 1.80273972e+01, 4.85616455e+01, + 1.40821915e+01, 1.09589043e+01, 1.93698635e+01, 1.15753422e+01, + 1.16027393e+01, 1.00547943e+01, 6.97260284e+00, 1.01232872e+01, + 1.07945204e+01, 1.28082190e+01, 1.20136986e+01, 5.69178085e+01, + 2.21095886e+01, 1.15890408e+01, 2.28630142e+01, 1.10150688e+02, + 4.41095886e+01, 1.58082190e+01, 2.14109592e+01, 1.12438354e+02, + 3.42328758e+01, 8.02739716e+00, 1.93835621e+01, 1.12890411e+02, + 3.44109573e+01, 6.90410948e+00, 2.04931507e+01, 1.02739723e+02, + 2.84109592e+01, 9.04109573e+00, 1.94931507e+01, 7.15753403e+01, + 1.65342464e+01, 8.75342464e+00, 1.96027393e+01, 1.24109592e+01, + 1.11232872e+01, 1.03835621e+01, 7.75342464e+00, 9.21917820e+00, + 9.15068531e+00, 1.13698626e+01, 1.33150682e+01, 5.92602730e+01, + 2.19863014e+01, 1.28767128e+01, 2.82739735e+01, 1.10520546e+02, + 3.09315071e+01, 1.13698626e+01, 1.99178085e+01, 1.12712326e+02, + 2.29589043e+01, 4.84931517e+00, 2.24657536e+01, 1.15356163e+02, + 2.99452057e+01, 4.61643839e+00, 1.95342464e+01, 1.08712326e+02, + 2.63972607e+01, 5.84931517e+00, 1.55890408e+01, 7.41232910e+01, + 1.67945213e+01, 6.17808199e+00, 1.97123280e+01, 8., + 9.39726067e+00, 9.27397251e+00, 6.61643839e+00, 8.08219147e+00, + 7.35616446e+00, 8.36986256e+00, 8.28767109e+00, 4.68356171e+01, + 1.71780815e+01, 1.11917810e+01, 2.49452057e+01, 9.95616455e+01, + 2.22876720e+01, 9.42465782e+00, 1.70273972e+01, 9.55205460e+01, + 1.56575346e+01, 4.61643839e+00, 1.73835621e+01, 1.01602737e+02, + 2.44520550e+01, 4.82191801e+00, 1.84657536e+01, 8.85479431e+01, + 2.42465744e+01, 5., 9.84931469e+00, 5.90684929e+01, + 1.64931507e+01, 5.13698626e+00, 1.51643839e+01, 6.35294104e+00, + 5.62745094e+00, 4.58823538e+00, 9.39215660e+00, 5.18823547e+01, + 4.87647057e+01, 6.33333349e+00, 3.66666675e+00, 3.41176462e+00, + 3.60784316e+00, 3.27450991e+00, 7.50980377e+00, 1.09137253e+02, + 1.33901962e+02, 2.10392151e+01, 2.66666675e+00, 1.64705887e+01, + 1.38431368e+01, 1.13137255e+01, 4.27450991e+00, 2.42352943e+01, + 9.87843170e+01, 6.40784302e+01, 1.56078434e+01, 2.81960793e+01, + 3.29803925e+01, 4.83921585e+01, 1.84901962e+01, 3.78431368e+00, + 2.05882359e+01, 8.29019623e+01, 4.78823547e+01, 7.58823538e+00, + 8.72549057e+00, 6.41176462e+00, 1.11176472e+01, 3.52156868e+01, + 2.42156868e+01, 8.09803963e+00, 5.41176462e+00, 3.29411769e+00, + 7.03921556e+00, 8.52941132e+00, 1.84509811e+01, 1.01784317e+02, + 111., 1.99215679e+01, 2.03921580e+00, 7.33333349e+00, + 2.12745094e+01, 3.61372566e+01, 1.45686274e+01, 5.04901962e+01, + 1.25039215e+02, 9.79019623e+01, 8.35294151e+00, 1.95882359e+01, + 3.55294113e+01, 7.53921585e+01, 2.59803925e+01, 1.31568632e+01, + 5.94901962e+01, 1.25098038e+02, 3.03725491e+01, 8.64705849e+00, + 9.68627453e+00, 5.49019623e+00, 8.74509811e+00, 2.55098038e+01, + 2.01960793e+01, 8.29411793e+00, 6.82352924e+00, 4., + 4.15686274e+00, 4., 1.33137255e+01, 8.43137283e+01, + 7.10784302e+01, 1.29215689e+01, 3.49019599e+00, 6.47058821e+00, + 9.41176510e+00, 1.85686283e+01, 1.16470585e+01, 6.76470566e+01, + 1.03843140e+02, 4.06862755e+01, 6.15686274e+00, 1.61176472e+01, + 1.43921566e+01, 3.99411774e+01, 1.98627453e+01, 29., + 7.00980377e+01, 7.06274490e+01, 1.93333340e+01, 8.49019623e+00, + 8.86274529e+00, 5.23529434e+00, 5.19607830e+00, 1.28627453e+01, + 1.45490198e+01, 7.31372547e+00, 6.13725471e+00, 5.03921556e+00, + 4., 3.84313726e+00, 6.86274529e+00, 3.19019604e+01, + 4.62941170e+01, 1.67450981e+01, 5.17647076e+00, 3.41176462e+00, + 1.84313726e+00, 1.80392158e+00, 2.98039222e+00, 2.84117641e+01, + 8.14117661e+01, 4.37254906e+01, 6.43137264e+00, 6.13725471e+00, + 2.52941179e+00, 3.64705873e+00, 4.11764717e+00, 1.47647057e+01, + 5.79215698e+01, 5.55098038e+01, 1.32745094e+01, 7.08333349e+00, + 2.91666675e+00, 1.58333337e+00, 2.60416675e+00, 2.79166675e+00, + 3.47916675e+00, 4.06250000e+00, 2.81250000e+00, 9.52083302e+00, + 6.20833349e+00, 5.47916651e+00, 5.81250000e+00, 5.25000000e+00, + 1.09583330e+01, 1.67500000e+01, 9.83333302e+00, 8.72916698e+00, + 6.50000000e+00, 9.25000000e+00, 1.08125000e+01, 7.12500000e+00, + 1.15416670e+01, 1.82291660e+01, 1.41041670e+01, 5.62500000e+00, + 6.20833349e+00, 1.50833330e+01, 1.82708340e+01, 8.41666698e+00, + 9.31250000e+00, 1.69375000e+01, 1.66666660e+01, 1.69791660e+01, + 7.72916651e+00, 3.56250000e+00, 6.68750000e+00, 4.52083349e+00, + 6.02083349e+00, 9.91666698e+00, 9.79166698e+00, 1.76458340e+01, + 8.97916698e+00, 1.16041670e+01, 2.86458340e+01, 1.42708330e+01, + 1.60208340e+01, 2.40833340e+01, 2.97708340e+01, 1.68333340e+01, + 7.83333349e+00, 3.25416679e+01, 6.86875000e+01, 1.88750000e+01, + 1.13541670e+01, 6.58125000e+01, 1.13437500e+02, 9.75000000e+00, + 1.01250000e+01, 3.52291679e+01, 4.04791679e+01, 9.50000000e+00, + 2.31875000e+01, 1.30562500e+02, 1.21187500e+02, 1.82916660e+01, + 7.77083349e+00, 7.70833349e+00, 1.26041670e+01, 7.79166651e+00, + 5.41666651e+00, 1.28958330e+01, 1.67291660e+01, 4.44166679e+01, + 7.06250000e+00, 2.12916660e+01, 7.76250000e+01, 3.10416660e+01, + 7.85416651e+00, 2.33958340e+01, 1.26729164e+02, 5.84166679e+01, + 1.04375000e+01, 2.75000000e+01, 5.42916679e+01, 1.60208340e+01, + 6.35416651e+00, 7.76875000e+01, 1.44750000e+02, 3.05000000e+01, + 2.29166660e+01, 2.14583340e+01, 2.20833340e+01, 1.91666660e+01, + 2.32708340e+01, 8.70208359e+01, 1.10916664e+02, 2.32083340e+01, + 6.25000000e+00, 9.22916698e+00, 2.86458340e+01, 1.36666670e+01, + 4.18750000e+00, 7.70833349e+00, 2.67291660e+01, 1.11145836e+02, + 1.84166660e+01, 1.24791670e+01, 4.77291679e+01, 2.90416660e+01, + 5., 1.80208340e+01, 1.31666672e+02, 7.32500000e+01, + 1.99791660e+01, 1.85833340e+01, 2.48333340e+01, 1.72083340e+01, + 10., 2.54583340e+01, 1.09583336e+02, 2.33125000e+01, + 1.65416660e+01, 2.72708340e+01, 3.34583321e+01, 2.70625000e+01, + 1.44375000e+01, 1.48958330e+01, 3.17500000e+01, 2.90181828e+01, + 1.28181820e+01, 5.74545431e+00, 1.21454544e+01, 6.58727264e+01, + 3.06363640e+01, 8.96363640e+00, 1.45454550e+01, 3.84909096e+01, + 2.19818172e+01, 1.67454548e+01, 2.13090916e+01, 3.94909096e+01, + 3.96545448e+01, 2.62909088e+01, 2.48909092e+01, 2.23999996e+01, + 1.79818172e+01, 1.12181816e+01, 1.72000008e+01, 3.04181824e+01, + 2.78545456e+01, 1.56181822e+01, 1.55818186e+01, 2.62545452e+01, + 2.14727268e+01, 1.06181822e+01, 1.49636364e+01, 3.35818176e+01, + 2.27818184e+01, 7.69090891e+00, 1.11454544e+01, 2.17999992e+01, + 3.65272713e+01, 1.19636364e+01, 6.63636351e+00, 6.79636383e+01, + 1.19745453e+02, 1.20181818e+01, 4.81818199e+00, 2.96545448e+01, + 5.84727287e+01, 4.23818169e+01, 2.67636356e+01, 3.87272720e+01, + 6.74363632e+01, 2.65818176e+01, 1.10909090e+01, 1.54363632e+01, + 2.15636368e+01, 3.00545464e+01, 3.56181831e+01, 3.46545448e+01, + 2.46000004e+01, 1.83999996e+01, 1.63272724e+01, 1.93090916e+01, + 1.08545456e+01, 15., 2.52363644e+01, 2.22727280e+01, + 7.63636351e+00, 1.57636366e+01, 4.47818184e+01, 9.03636360e+00, + 3.20545464e+01, 1.05454550e+01, 6.92727280e+00, 1.98545456e+01, + 1.22199997e+02, 5.45272713e+01, 9.01818180e+00, 4.30909109e+00, + 2.33090916e+01, 2.07090912e+01, 8.07272720e+00, 7.45454550e+00, + 1.23981819e+02, 1.20163635e+02, 6.63636351e+00, 3.05454540e+00, + 8.09090900e+00, 1.65636368e+01, 1.10363636e+01, 5.72727251e+00, + 3.60363655e+01, 1.29509094e+02, 4.36545448e+01, 5.14545441e+00, + 2.29090905e+00, 6.58181810e+00, 6.27272749e+00, 2.67272735e+00, + 3.63636374e+00, 1.20327271e+02, 1.25036362e+02, 3.40000010e+00, + 5.10909081e+00, 3.58181810e+00, 4.03636360e+00, 5.43636370e+00, + 3.67454529e+01, 4.93818169e+01, 1.70181828e+01, 5.49090910e+00, + 6.85454559e+00, 5.98181820e+00, 2.47272730e+00, 4.29090929e+00, + 5.78727264e+01, 1.03890907e+02, 2.35272732e+01, 7.34545469e+00, + 3.59999990e+00, 7.30909109e+00, 2.38181829e+00, 2.63636374e+00, + 2.12181816e+01, 1.18018181e+02, 5.54363632e+01, 7.43636370e+00, + 2.92727280e+00, 4.07272720e+00, 3.16363645e+00, 2.87272716e+00, + 6., 7.66181793e+01, 6.85090942e+01, 1.11586205e+02, + 2.06206894e+01, 2.34482765e+00, 5.27586222e+00, 1.84310341e+01, + 1.16551723e+01, 6.96551704e+00, 5.56724129e+01, 1.16534485e+02, + 5.58620682e+01, 9.70689678e+00, 5.89655161e+00, 6.60344839e+00, + 2.58620691e+00, 3.68965507e+00, 4.61896553e+01, 5.74137917e+01, + 4.04655190e+01, 8.46551704e+00, 3.08620691e+00, 2.56896544e+00, + 3.13793111e+00, 6.39655161e+00, 1.47586203e+01, 4.63793087e+00, + 3.91379309e+00, 1.75862074e+00, 7.93103456e-01, 6.03448272e-01, + 1.01724136e+00, 1.65517247e+00, 2.67241383e+00, 1.11431038e+02, + 1.19310341e+01, 1.01724138e+01, 3.35000000e+01, 3.00172405e+01, + 1.03793106e+01, 2.10172405e+01, 1.28603455e+02, 1.25672417e+02, + 5.49655190e+01, 1.24827585e+01, 1.55344830e+01, 1.39482756e+01, + 5.94827604e+00, 7.67241383e+00, 8.17413788e+01, 9.96724167e+01, + 4.97413788e+01, 7.39655161e+00, 3., 1.79310346e+00, + 2.96551728e+00, 8.46551704e+00, 3.49655190e+01, 1.00344830e+01, + 4.51724148e+00, 1.84482753e+00, 8.96551728e-01, 4.48275864e-01, + 1.06896555e+00, 2.12068963e+00, 4.46551704e+00, 5.97758636e+01, + 2.85172405e+01, 2.13275871e+01, 4.88448257e+01, 1.92586212e+01, + 1.32931032e+01, 4.15000000e+01, 1.14534485e+02, 1.09103447e+02, + 5.12586212e+01, 1.20862064e+01, 1.30344830e+01, 9.32758617e+00, + 8.08620644e+00, 1.60517235e+01, 7.58275833e+01, 1.08827583e+02, + 4.16724129e+01, 5.81034470e+00, 2.27586198e+00, 1.36206901e+00, + 3.29310346e+00, 1.24482756e+01, 5.62586212e+01, 1.09137936e+01, + 4.68965530e+00, 1.37931037e+00, 7.75862098e-01, 6.03448272e-01, + 1., 3.06896544e+00, 5.48275852e+00, 3.67758636e+01, + 2.25689659e+01, 1.15172415e+01, 1.74137936e+01, 1.08965521e+01, + 2.14482765e+01, 3.81034470e+01, 5.80689659e+01, 9.10344849e+01, + 2.06896553e+01, 4.13793087e+00, 4.27586222e+00, 4.62068987e+00, + 7.77586222e+00, 2.89137936e+01, 9.53448257e+01, 71., + 1.55689659e+01, 4.41379309e+00, 3.06896544e+00, 3., + 4.84482765e+00, 1.83793106e+01, 6.40689621e+01, 5.62068987e+00, + 2.03448272e+00, 1.48275864e+00, 1.98275864e+00, 7.06896544e-01, + 9.65517223e-01, 3.32758617e+00, 4.67241383e+00, 2.74418616e+00, + 3.23255825e+00, 1.34186049e+01, 2.00465107e+01, 8.13953495e+00, + 6.16279078e+00, 1.59534883e+01, 1.56744184e+01, 5.41860485e+00, + 5.60465097e+00, 1.72558136e+01, 1.77441864e+01, 1.39069767e+01, + 2.19767437e+01, 4.63488388e+01, 2.45348835e+01, 1.03023252e+01, + 7.67441845e+00, 8.39534855e+00, 7.09302330e+00, 1.22093019e+01, + 2.13255806e+01, 2.49534893e+01, 8., 9.76744175e-01, + 6.97674394e-01, 1.09302330e+00, 9.30232584e-01, 1.41860461e+00, + 1.97674417e+00, 2.46511626e+00, 7.44186044e-01, 3.44186044e+00, + 2.76744175e+00, 3.98604660e+01, 5.75348854e+01, 5.55813932e+00, + 5.34883738e+00, 1.08953491e+02, 1.26976746e+02, 7.51162767e+00, + 4.20930243e+00, 6.03953476e+01, 1.05279068e+02, 5.79767456e+01, + 5.84186058e+01, 1.26976746e+02, 1.08604652e+02, 1.48372097e+01, + 7.72093010e+00, 2.19767437e+01, 5.94186058e+01, 6.50232544e+01, + 4.63488388e+01, 4.09767456e+01, 29., 1.48837209e+00, + 9.53488350e-01, 1.34883726e+00, 3.02325583e+00, 5.83720922e+00, + 4.97674417e+00, 2.62790704e+00, 2.62790704e+00, 1.81395352e+00, + 7.90697694e-01, 1.06558136e+02, 1.36627914e+02, 4.69767427e+00, + 3., 9.11395340e+01, 1.10930229e+02, 9.13953495e+00, + 3.13953495e+00, 9.98837204e+01, 1.30860458e+02, 2.91627903e+01, + 1.24418602e+01, 5.99767456e+01, 7.90232544e+01, 7.37209320e+00, + 2.76744175e+00, 2.06046505e+01, 4.96744194e+01, 2.98837204e+01, + 1.56976748e+01, 2.04186039e+01, 3.16511631e+01, 4.65116292e-01, + 3.02325577e-01, 8.13953459e-01, 2.06976748e+00, 4.11627913e+00, + 4.79069757e+00, 2.90697670e+00, 2.51162791e+00, 2.04651165e+00, + 2.09302330e+00, 4.29534874e+01, 8.18837204e+01, 9.37209320e+00, + 4.48837233e+00, 3.74418602e+01, 5.35348854e+01, 4.39534903e+00, + 3.16279078e+00, 1.42558136e+01, 3.01627903e+01, 1.45581398e+01, + 9.11627865e+00, 2.09069767e+01, 4.11627922e+01, 2.62790704e+00, + 2.46511626e+00, 4.53488350e+00, 9.76744175e+00, 1.20697670e+01, + 9.02325535e+00, 1.08604650e+01, 1.23488369e+01, 1.62790701e-01, + 2.09302321e-01, 5.11627913e-01, 1.41860461e+00, 1.69767439e+00, + 2.44186044e+00, 2.67441869e+00, 6.74418628e-01, 2.18421054e+00, + 2.50000000e+00, 1.51842108e+01, 1.70263157e+01, 4.05263138e+00, + 5.47368431e+00, 2.58421059e+01, 1.61578941e+01, 2.28947377e+00, + 5.78947353e+00, 2.98947372e+01, 1.92631588e+01, 3.76315784e+00, + 1.70789471e+01, 5.11052628e+01, 1.48684206e+01, 2.60526323e+00, + 6.84210539e+00, 3.08684216e+01, 2.65526314e+01, 6.05263138e+00, + 1.55263157e+01, 50., 4.22368431e+01, 9.21052635e-01, + 1.28947365e+00, 2.10263157e+01, 4.25526314e+01, 4.65789461e+00, + 3.63157892e+00, 7.35526352e+01, 8.85263138e+01, 4.84210539e+00, + 5.21052647e+00, 3.14736843e+01, 2.90789471e+01, 3., + 6.10526323e+00, 8.51052628e+01, 80., 1.21842108e+01, + 1.99736843e+01, 4.21842117e+01, 1.77631588e+01, 5.94736862e+00, + 5.91052628e+01, 1.11131577e+02, 5.19736824e+01, 1.69736843e+01, + 2.45000000e+01, 4.99473686e+01, 5.93684196e+01, 1.32368422e+01, + 4.07894745e+01, 1.04973686e+02, 9.21052628e+01, 4.68421030e+00, + 4.97368431e+00, 8.40263138e+01, 1.10052635e+02, 7.05263138e+00, + 4.44736862e+00, 7.61315765e+01, 8.67631607e+01, 1.27894735e+01, + 7.21052647e+00, 2.27894745e+01, 2.18157902e+01, 7.18421030e+00, + 5.63157892e+00, 1.85263157e+01, 3.77631569e+01, 29., + 2.82631588e+01, 3.66842117e+01, 3.06315784e+01, 2.18684216e+01, + 1.65000000e+01, 1.92368412e+01, 2.59736843e+01, 2.82894745e+01, + 2.25263157e+01, 6.32368431e+01, 1.10394737e+02, 9.20789490e+01, + 2.22894745e+01, 2.13947372e+01, 3.34210510e+01, 8.47368431e+00, + 3.28947377e+00, 6.64473648e+01, 1.03763161e+02, 2.99473686e+01, + 6.71052647e+00, 3.61315804e+01, 5.92105255e+01, 7.78947353e+00, + 5.89473677e+00, 3.37105255e+01, 2.21842098e+01, 7.05263138e+00, + 6.55263138e+00, 1.01578951e+01, 1.31842108e+01, 1.47631578e+01, + 7.31578970e+00, 5.23157883e+01, 7.56052628e+01, 1.63421059e+01, + 5.02631569e+00, 1.67368412e+01, 2.83947372e+01, 1.53684206e+01, + 2.81578946e+00, 2.97631588e+01, 9.40526352e+01, 59., + 8.47368431e+00, 1.82631588e+01, 4.29210510e+01, 7.21052647e+00, + 8.94736826e-01, 5.13157892e+00, 1.53684206e+01, 1.54736843e+01, + 6.07894754e+00, 1.79736843e+01, 3.96842117e+01, 6.94736862e+00, + 8., 1.34078949e+02, 1.34092102e+02, 1.01447372e+01, + 8.64473724e+00, 9.73552628e+01, 9.53947372e+01, 1.41842108e+01, + 4.50000000e+00, 8.51447372e+01, 122., 5.50000000e+00, + 5.69736862e+00, 9.37105255e+01, 1.31026321e+02, 2.26184216e+01, + 3.21052623e+00, 1.59736843e+01, 2.94210529e+01, 3.13157892e+00, + 4.34210539e+00, 7.50526352e+01, 1.32302628e+02, 1.96315784e+01, + 3.43421054e+00, 4.10526323e+00, 4.31578970e+00, 4.35526323e+00, + 6.38157892e+00, 3.29210510e+01, 8.05131607e+01, 1.29605265e+01, + 1.57894742e+00, 2.37368412e+01, 2.66447372e+01, 6.61842108e+00, + 1.04078951e+01, 1.10342102e+02, 1.21236839e+02, 2.01578941e+01, + 3.47368431e+00, 6.15789461e+00, 6.96052647e+00, 6.27631569e+00, + 1.03684206e+01, 1.04486839e+02, 1.31723679e+02, 2.66315784e+01, + 7.34210539e+00, 8.15789509e+00, 9.57894707e+00, 1.06184206e+01, + 1.30131578e+01, 5.49473686e+01, 8.91315765e+01, 1.83421059e+01, + 7.77631569e+00, 9.31578922e+00, 1.00526314e+01, 1.05789471e+01, + 1.23157892e+01, 2.13157902e+01, 3.66447372e+01, 1.25131578e+01, + 3.46052623e+00, 3.27631569e+00, 4.67105246e+00, 4.67105246e+00, + 8.34210491e+00, 5.07368431e+01, 6.19605255e+01, 1.75000000e+01, + 6.92105246e+00, 6.78947353e+00, 7.23684216e+00, 9.23684216e+00, + 1.32368422e+01, 3.50657883e+01, 4.99736824e+01, 1.72763157e+01, + 7.89473677e+00, 9.68421078e+00, 1.01973686e+01, 1.20263157e+01, + 1.56447372e+01, 2.35000000e+01, 3.66184196e+01, 1.23947372e+01, + 7.57894754e+00, 8., 7.32894754e+00, 1.03947372e+01, + 1.22631578e+01, 1.46710529e+01, 2.09736843e+01, 4.01315784e+00, + 1.78947365e+00, 2., 2.43421054e+00, 2.97368431e+00, + 3.85526323e+00, 6.51315784e+00, 7.84210539e+00, 5.01315784e+00, + 2.23684216e+00, 2.38157892e+00, 3.02631569e+00, 4.01315784e+00, + 5.02631569e+00, 6.32894754e+00, 8.88157940e+00, 4.42105246e+00, + 2.55263162e+00, 2.36842108e+00, 3.11842108e+00, 4.22368431e+00, + 5.28947353e+00, 5.82894754e+00, 7.11842108e+00, 2.43421054e+00, + 1.43421054e+00, 1.77631581e+00, 2.86842108e+00, 3.96052623e+00, + 3.52631569e+00, 2.90789485e+00, 3.44736838e+00, 3.69636345e+01, + 2.02909088e+01, 1.73999996e+01, 1.61090908e+01, 1.36727276e+01, + 1.55636368e+01, 1.62000008e+01, 4.27272720e+01, 2.21454544e+01, + 2.10545464e+01, 3.49090919e+01, 3.31818199e+01, 1.79818172e+01, + 1.36545458e+01, 1.92000008e+01, 2.60727272e+01, 1.73636360e+01, + 1.30181818e+01, 4.50909081e+01, 1.18472725e+02, 5.89636345e+01, + 1.26545458e+01, 2.10181828e+01, 3.62727280e+01, 1.83454552e+01, + 6.81818199e+00, 4.85454559e+01, 1.19472725e+02, 5.74727287e+01, + 7.25454569e+00, 2.43272724e+01, 5.04909096e+01, 1.85636368e+01, + 7.50545425e+01, 1.16290909e+02, 4.57818184e+01, 1.04363632e+01, + 2.65272732e+01, 3.37454529e+01, 2.31090908e+01, 8.76363659e+00, + 2.38181820e+01, 1.34254547e+02, 1.25454544e+02, 1.16363640e+01, + 1.29454546e+01, 4.49454536e+01, 3.31818199e+01, 1.04363632e+01, + 4.54545450e+00, 1.01890907e+02, 1.39236359e+02, 3.18181820e+01, + 5.78181839e+00, 4.38545456e+01, 7.62545471e+01, 1.53636360e+01, + 5.05454540e+00, 2.77999992e+01, 6.82181854e+01, 2.00181828e+01, + 6.89090919e+00, 2.79272728e+01, 63., 3.18181825e+00, + 3.31454544e+01, 9.77272720e+01, 3.68909073e+01, 5.10909081e+00, + 1.66545448e+01, 3.85818176e+01, 1.52727270e+01, 4.83636379e+00, + 1.05818186e+01, 9.84181824e+01, 6.64727249e+01, 3.40000010e+00, + 6.96363640e+00, 5.59818192e+01, 4.44000015e+01, 7.92727280e+00, + 5.16363621e+00, 2.66727276e+01, 3.32181816e+01, 7.59999990e+00, + 5.36363649e+00, 3.68181801e+01, 5.01272736e+01, 9.56363678e+00, + 5.29090929e+00, 8.78181839e+00, 1.10727272e+01, 1.00545454e+01, + 5.80000019e+00, 1.13090906e+01, 2.04181824e+01, 1.87272727e+00, + 1.54545450e+00, 1.87272727e+00, 1.74545455e+00, 9.27272737e-01, + 1.79999995e+00, 6.29090929e+00, 5.23636341e+00, 1.78181815e+00, + 2.09090900e+00, 1.96363640e+00, 2.23636365e+00, 1.89090908e+00, + 2.41818190e+00, 5.12727261e+00, 4.56363630e+00, 2.14545465e+00, + 2.40000010e+00, 2.32727265e+00, 3., 2.23636365e+00, + 1.94545460e+00, 2.32727265e+00, 2.67272735e+00, 1.87272727e+00, + 1.81818187e+00, 1.76363635e+00, 1.85454547e+00, 1.79999995e+00, + 1.29090905e+00, 1.10909092e+00, 1.61818182e+00, 4.13559341e+00, + 7.55932188e+00, 1.42542372e+01, 7.10169506e+00, 1.67796612e+00, + 1.91525424e+00, 6.72881365e+00, 1.54237282e+00, 3.44067788e+00, + 1.49830513e+01, 1.80508480e+01, 5.96610165e+00, 2.05084753e+00, + 1.72881353e+00, 2.86440682e+00, 1.61016953e+00, 3.69491529e+00, + 1.52711868e+01, 1.51525421e+01, 4.52542353e+00, 1.96610165e+00, + 1.13559318e+00, 2.22033906e+00, 2.03389835e+00, 3.52542377e+00, + 1.02033901e+01, 8.33898258e+00, 2.93220329e+00, 4.08474588e+00, + 9.49152529e-01, 2.83050847e+00, 2.37288141e+00, 5.10169506e+00, + 1.65084743e+01, 6.59830475e+01, 9.79660988e+00, 2.66101694e+00, + 3.19661026e+01, 1.26491524e+02, 1.52033901e+01, 4.98305082e+00, + 2.82372875e+01, 4.42033882e+01, 6.71186447e+00, 3.42372870e+00, + 8.61864395e+01, 1.24372879e+02, 5.44067812e+00, 6.86440659e+00, + 2.43728809e+01, 2.15932198e+01, 6.25423717e+00, 4.06779671e+00, + 7.01694946e+01, 6.00847473e+01, 3.79661012e+00, 7.91525412e+00, + 2.42542381e+01, 1.68983059e+01, 5.47457647e+00, 8.22033882e+00, + 11., 7.74576283e+00, 3.40677977e+00, 5.45762730e+00, + 3.35593224e+01, 1.22288139e+02, 1.73728809e+01, 3.38983059e+00, + 2.32372875e+01, 7.04067764e+01, 1.41186438e+01, 4.52542353e+00, + 1.07372879e+02, 1.28135590e+02, 5.40677977e+00, 5.50847435e+00, + 7.23220367e+01, 8.83559341e+01, 6.94915247e+00, 5.52542353e+00, + 1.15084747e+02, 7.77796631e+01, 3.61016941e+00, 6.50847435e+00, + 1.28694916e+02, 9.44237289e+01, 2.77966094e+00, 7.33898306e+00, + 4.03220329e+01, 1.59661016e+01, 3.98305082e+00, 1.26440678e+01, + 1.21254234e+02, 3.42372894e+01, 2.08474565e+00, 6.67796612e+00, + 2.74576283e+00, 5.30508471e+00, 2.06779671e+00, 5.81355953e+00, + 3.04237289e+01, 3.06779652e+01, 1.83050842e+01, 6.08474588e+00, + 1.78474579e+01, 1.47288132e+01, 2.13559318e+00, 1.42881355e+01, + 3.94915237e+01, 2.75084743e+01, 1.34745760e+01, 1.11864405e+01, + 9.77796631e+01, 2.96610165e+01, 2.32203388e+00, 1.55254240e+01, + 4.17288132e+01, 1.61016941e+01, 5.54237270e+00, 2.16440678e+01, + 1.12372879e+02, 1.60677967e+01, 2.18644071e+00, 2.78983059e+01, + 1.09474579e+02, 1.16101694e+01, 1.98305082e+00, 7.63695679e+01, + 4.56739120e+01, 4.56521749e-01, 5.65217376e-01, 1.20673912e+02, + 1.11043480e+02, 1.69565213e+00, 2.43478251e+00, 5.26521721e+01, + 3.22826080e+01, 2.04347825e+00, 2.34782600e+00, 6.31956520e+01, + 5.37608681e+01, 7.06521749e+00, 5.30434799e+00, 1.29347830e+01, + 5.73913050e+00, 1.86956525e+00, 2.13043475e+00, 6.43478251e+00, + 9.78260899e+00, 1.10434780e+01, 1.01304350e+01, 1.52173913e+00, + 8.47826064e-01, 8.47826064e-01, 1.47826087e+00, 2.34782600e+00, + 4.02173901e+00, 5.95652151e+00, 3.02173924e+00, 1.12195656e+02, + 7.63043442e+01, 7.58695650e+00, 1.59347830e+01, 1.07086960e+02, + 9.97173920e+01, 7.69565201e+00, 9.36956501e+00, 4.77608681e+01, + 5.96521721e+01, 8.32608700e+00, 8.67391300e+00, 1.08043480e+02, + 1.05673912e+02, 3.52173920e+01, 5.34782600e+00, 2.41521740e+01, + 3.21521721e+01, 6.91304350e+00, 2.30434775e+00, 8.13043499e+00, + 2.15434780e+01, 1.82391300e+01, 8.41304302e+00, 4.47826099e+00, + 3.04347825e+00, 1.28260875e+00, 2.08695650e+00, 3.30434775e+00, + 4.91304350e+00, 7.58695650e+00, 3.43478251e+00, 1.05695656e+02, + 6.57173920e+01, 2.03478260e+01, 3.00434780e+01, 4.71739120e+01, + 4.06304359e+01, 1.60652180e+01, 4.08043480e+01, 2.15652180e+01, + 3.71304359e+01, 1.75434780e+01, 2.06086960e+01, 8.48695679e+01, + 1.18978264e+02, 8.33043442e+01, 8.67391300e+00, 3.28478279e+01, + 3.93043480e+01, 6.84782600e+00, 2.19565225e+00, 4.68478279e+01, + 8.95434799e+01, 3.62173920e+01, 6.04347849e+00, 1.27608700e+01, + 1.31086960e+01, 1.52173913e+00, 1.65217388e+00, 5.63043499e+00, + 1.01739130e+01, 4.95652151e+00, 2.91304350e+00, 6.54347839e+01, + 3.09782600e+01, 1.04782610e+01, 1.65869560e+01, 2.21086960e+01, + 8.32608700e+00, 5.86956501e+00, 3.53043480e+01, 1.31739130e+01, + 2.38478260e+01, 1.56521740e+01, 1.93695660e+01, 4.46956520e+01, + 4.02391319e+01, 2.15652180e+01, 1.03913040e+01, 1.98043480e+01, + 2.12826080e+01, 5.06521749e+00, 4.93478251e+00, 9.08043442e+01, + 8.99347839e+01, 1.43695650e+01, 2.67391300e+00, 1.78913040e+01, + 1.78478260e+01, 1.17391300e+00, 8.69565189e-01, 1.93478260e+01, + 2.81521740e+01, 2.15217400e+00, 1.78260875e+00, 9.65306091e+00, + 6.71428585e+00, 6.93877554e+00, 6.65306139e+00, 5.69387770e+00, + 6.42857122e+00, 7.16326523e+00, 6.63265324e+00, 1.31224489e+01, + 1.07346935e+01, 1.11020412e+01, 9.97959137e+00, 8.85714245e+00, + 9.14285755e+00, 1.33673468e+01, 1.31224489e+01, 1.35714283e+01, + 1.37346935e+01, 1.16122446e+01, 8.83673477e+00, 9.28571415e+00, + 1.01224489e+01, 1.86734695e+01, 1.65102043e+01, 1.11836739e+01, + 8.93877506e+00, 9.81632614e+00, 1.07755098e+01, 9.18367386e+00, + 9.04081631e+00, 1.81632652e+01, 1.52244902e+01, 1.85714283e+01, + 1.47959185e+01, 1.28775511e+01, 9.08163261e+00, 7.91836739e+00, + 1.33877554e+01, 2.22857151e+01, 1.68979588e+01, 2.57551022e+01, + 1.83061218e+01, 2.57959175e+01, 2.38367348e+01, 1.22857141e+01, + 1.70816326e+01, 3.03265305e+01, 2.88163261e+01, 2.47142849e+01, + 1.75714283e+01, 7.02244873e+01, 6.86530609e+01, 1.15918369e+01, + 1.42653065e+01, 3.31632652e+01, 3.60816345e+01, 15., + 1.43061228e+01, 91., 8.70816345e+01, 1.19795914e+01, + 9.55102062e+00, 4.10204086e+01, 4.96734695e+01, 1.88775501e+01, + 1.23061228e+01, 4.29795914e+01, 4.93469391e+01, 9.32653046e+00, + 1.07551022e+01, 2.40816326e+01, 2.41428566e+01, 1.80204086e+01, + 1.11428576e+01, 9.38163300e+01, 1.13571426e+02, 1.34081631e+01, + 1.08775511e+01, 6.28571434e+01, 7.87959213e+01, 1.92857151e+01, + 1.25102043e+01, 1.02265305e+02, 1.04693878e+02, 9.67346954e+00, + 1.64693871e+01, 1.01040817e+02, 1.11448982e+02, 1.86122456e+01, + 1.33877554e+01, 6.35306129e+01, 6.56122437e+01, 1.06326532e+01, + 2.25306129e+01, 9.12857132e+01, 9.68571396e+01, 9.93877506e+00, + 6.28571415e+00, 5.29795914e+01, 6.78571396e+01, 1.15102043e+01, + 4.34693861e+00, 4.37959175e+01, 5.84285698e+01, 2.65510197e+01, + 1.24897957e+01, 5.84489784e+01, 6.57142868e+01, 1.22040815e+01, + 6.85714293e+00, 6.80408173e+01, 9.68163300e+01, 3.16326523e+01, + 2.14693871e+01, 4.88367348e+01, 3.70816345e+01, 1.47346935e+01, + 1.53877554e+01, 6.06122437e+01, 7.71836700e+01, 1.74081631e+01, + 1.93265305e+01, 3.26122437e+01, 4.02857132e+01, 2.49183674e+01, + 1.98571434e+01, 3.98775520e+01, 3.86122437e+01, 1.40692307e+02, + 6.53846169e+00, 2.90384626e+00, 1.07038460e+02, 1.47442307e+02, + 8.48076916e+00, 3.42307687e+00, 9.09423065e+01, 5.90769234e+01, + 1.36538458e+01, 6.05769253e+00, 6.22500000e+01, 1.14865387e+02, + 5.48076916e+00, 6.28846169e+00, 3.47307701e+01, 5.20384598e+01, + 1.56346149e+01, 3.71153855e+00, 2.51923084e+00, 1.61538458e+00, + 1.67307687e+00, 3.75000000e+00, 2.23076916e+01, 6.96153831e+00, + 2.92307687e+00, 6.34615362e-01, 4.80769217e-01, 2.88461536e-01, + 1.73076928e-01, 7.50000000e-01, 3.84615374e+00, 1.09826920e+02, + 1.05576925e+01, 8.67307663e+00, 1.47442307e+02, 1.49903839e+02, + 4.65384626e+00, 6.38461542e+00, 9.19807663e+01, 6.65961533e+01, + 1.44038458e+01, 3.50000000e+00, 4.56153831e+01, 6.17884598e+01, + 5.01923084e+00, 8.92307663e+00, 4.57115402e+01, 5.42500000e+01, + 1.33269234e+01, 2.55769229e+00, 1.65384614e+00, 1.36538458e+00, + 1.80769229e+00, 4.86538458e+00, 3.51923065e+01, 7.11538458e+00, + 2.28846145e+00, 8.07692289e-01, 7.69230783e-01, 5.96153855e-01, + 5.96153855e-01, 8.84615362e-01, 5.19230747e+00, 4.05576935e+01, + 9.05769253e+00, 1.24807692e+01, 1.27153847e+02, 8.95961533e+01, + 5.26923084e+00, 1.05384617e+01, 4.96538467e+01, 5.22307701e+01, + 9.42307663e+00, 3.17307687e+00, 9.28846169e+00, 1.18076925e+01, + 4.98076916e+00, 1.15769234e+01, 5.45384598e+01, 4.41153831e+01, + 8.80769253e+00, 2.13461542e+00, 1.50000000e+00, 1.38461542e+00, + 1.92307687e+00, 7.26923084e+00, 4.50576935e+01, 5.51923084e+00, + 1.44230771e+00, 9.42307711e-01, 9.80769217e-01, 7.88461566e-01, + 6.15384638e-01, 7.50000000e-01, 4.59615374e+00, 1.69807701e+01, + 5.34615374e+00, 5.13461542e+00, 3.04038467e+01, 2.15192299e+01, + 6.94230747e+00, 1.54615383e+01, 3.22500000e+01, 2.78461533e+01, + 5.38461542e+00, 1.82692313e+00, 1.57692313e+00, 2.76923084e+00, + 4.78846169e+00, 1.34038458e+01, 4.97692299e+01, 2.38269234e+01, + 4.11538458e+00, 1.36538458e+00, 1.21153843e+00, 1.44230771e+00, + 1.86538458e+00, 6.88461542e+00, 3.23076935e+01, 2.17307687e+00, + 6.15384638e-01, 4.61538464e-01, 5.19230783e-01, 5.76923072e-01, + 6.34615362e-01, 6.34615362e-01, 2., 6.39024401e+00, + 4.04878044e+00, 8.68292713e+00, 7.58536577e+00, 2.17073178e+00, + 1.60975611e+00, 8.02439022e+00, 1.02195120e+01, 6.09756088e+00, + 4.39024401e+00, 6.68292665e+00, 4.41463423e+00, 2.09756088e+00, + 4.07317066e+00, 2.33170738e+01, 1.59268293e+01, 2.56097555e+00, + 5.14634132e+00, 4.68292665e+00, 2.70731711e+00, 3.53658533e+00, + 1.60731716e+01, 2.10487804e+01, 4.65853643e+00, 1.53658533e+00, + 5.53658533e+00, 3.97560978e+00, 1.90243900e+00, 6.26829290e+00, + 8.07317066e+00, 2.56097555e+00, 9.51219499e-01, 2.87560978e+01, + 4.97560978e+00, 1.68536587e+01, 2.25853653e+01, 7.80487823e+00, + 6.14634132e+00, 5.33902435e+01, 106., 2.23658543e+01, + 1.36341467e+01, 2.12682934e+01, 1.29024391e+01, 6.48780489e+00, + 3.19512196e+01, 1.24853661e+02, 1.11048782e+02, 1.00487804e+01, + 2.48292675e+01, 1.94390240e+01, 8.19512177e+00, 2.81707325e+01, + 1.28926834e+02, 1.17560974e+02, 2.45609760e+01, 7.04878044e+00, + 1.74390240e+01, 1.02195120e+01, 5.58536577e+00, 4.42439041e+01, + 9.24146347e+01, 2.20731716e+01, 3.12195110e+00, 8.78536606e+01, + 1.35853662e+01, 9.75609779e+00, 1.99512196e+01, 1.52682924e+01, + 6.92682934e+00, 3.26341476e+01, 1.15512192e+02, 2.68536587e+01, + 2.39268284e+01, 3.03902435e+01, 2.73170738e+01, 1.61951218e+01, + 1.98780479e+01, 4.93170738e+01, 6.48536606e+01, 2.11219521e+01, + 38., 3.29756088e+01, 2.29024391e+01, 5.19756088e+01, + 8.83658524e+01, 4.36341476e+01, 1.44146338e+01, 1.36585369e+01, + 2.45609760e+01, 9.17073154e+00, 9.26829243e+00, 1.07634148e+02, + 1.21878052e+02, 1.46097565e+01, 4.19512177e+00, 8.05853653e+01, + 5.98536568e+01, 9.70731735e+00, 11., 2.13170738e+01, + 1.51951218e+01, 9.46341419e+00, 2.65365849e+01, 1.92682934e+01, + 2.52439022e+01, 1.80731716e+01, 1.67804871e+01, 1.61707325e+01, + 1.53170729e+01, 1.42926826e+01, 1.36585369e+01, 2.10487804e+01, + 1.69024391e+01, 1.63658543e+01, 2.81219521e+01, 3.30975609e+01, + 1.79756088e+01, 1.40731707e+01, 2.11219521e+01, 2.20487804e+01, + 18., 6.36585379e+00, 4.02195129e+01, 1.09268295e+02, + 5.79512177e+01, 8.65853691e+00, 1.15121956e+01, 8.32758617e+00, + 3.53103447e+01, 5.21206894e+01, 1.93965511e+01, 5.58620691e+00, + 2.51724148e+00, 1.91379309e+00, 2.82758617e+00, 3.24137926e+00, + 1.60517235e+01, 6.97931061e+01, 5.42241364e+01, 1.28448277e+01, + 3.86206889e+00, 3.29310346e+00, 2.62068963e+00, 9.31034505e-01, + 4.20689678e+00, 3.46206894e+01, 6.47068939e+01, 2.57586212e+01, + 4.82758617e+00, 9.48275864e-01, 5.00000000e-01, 2.74137926e+00, + 1.29310346e+00, 1.26206894e+01, 3.34655190e+01, 1.86379318e+01, + 4.70689678e+00, 2.31034493e+00, 8.31034470e+00, 4.74137926e+00, + 2.92931042e+01, 4.19310341e+01, 2.01896553e+01, 4.70689678e+00, + 1.12931032e+01, 9.29310322e+00, 1.27586210e+00, 1.87931037e+00, + 1.63103447e+01, 5.64137917e+01, 4.28448257e+01, 1.09482756e+01, + 6.10344839e+00, 8.67241383e+00, 2.31034493e+00, 1.68965518e+00, + 7.18965530e+00, 3.84310341e+01, 4.30172424e+01, 1.55689659e+01, + 5.96551704e+00, 2.32068958e+01, 2.19137936e+01, 6.77586222e+00, + 1.65517247e+00, 1.43965521e+01, 3.84310341e+01, 9.56896591e+00, + 4.36206913e+00, 3.56379318e+01, 1.08396553e+02, 2.65517235e+00, + 3.60517235e+01, 7.33275833e+01, 6.91379309e+00, 3.50000000e+00, + 6.65000000e+01, 1.22810349e+02, 4.74137926e+00, 1.91379309e+00, + 1.16379309e+01, 8.42758636e+01, 2.29137936e+01, 4.65517235e+00, + 2.55172405e+01, 1.26068962e+02, 3.55862083e+01, 2., + 3.62068963e+00, 8.75172424e+01, 6.27068977e+01, 4.51724148e+00, + 5., 1.25568962e+02, 1.09862068e+02, 3.17241383e+00, + 1.39655173e+00, 6.54482727e+01, 1.11206894e+02, 3.27586198e+00, + 2.06896544e+00, 7.31896515e+01, 1.10982758e+02, 1.36206901e+00, + 3.54655190e+01, 1.12482758e+02, 3.79310346e+00, 1.13793099e+00, + 1.34655170e+01, 4.61379318e+01, 7.46551704e+00, 2.62068963e+00, + 1.21551723e+01, 1.22293106e+02, 2.45344830e+01, 1.39655173e+00, + 8.27586174e+00, 6.51379318e+01, 1.76896553e+01, 3.55172420e+00, + 3.12068963e+00, 1.04879311e+02, 5.86379318e+01, 1.91379309e+00, + 4.05172396e+00, 3.57931023e+01, 2.09655170e+01, 4.63793087e+00, + 1.50000000e+00, 3.04137936e+01, 3.63103447e+01, 1.84482753e+00, + 3.27586198e+00, 1.37413797e+01, 1.46724138e+01, 5.13888884e+00, + 5.12500000e+00, 2.41388893e+01, 2.63194447e+01, 8.11111069e+00, + 6.37500000e+00, 2.07916660e+01, 1.60277786e+01, 7.97222233e+00, + 2.35555553e+01, 3.18888893e+01, 9.47222233e+00, 7.11111116e+00, + 1.86388893e+01, 2.70694447e+01, 1.12222223e+01, 3.13333340e+01, + 9.35000000e+01, 1.92777786e+01, 2., 4.72222233e+00, + 1.60833340e+01, 1.04722223e+01, 4.12500000e+00, 8.70138855e+01, + 1.18597221e+02, 6.18055534e+00, 1.93055558e+00, 3.97222233e+00, + 6.73611116e+00, 2.65277767e+00, 3.27777767e+00, 2.07916660e+01, + 1.20694447e+01, 2.53472214e+01, 2.65416660e+01, 2.22361107e+01, + 1.96388893e+01, 3.87361107e+01, 4.14305573e+01, 3.27083321e+01, + 3.12222214e+01, 2.82083340e+01, 1.84583340e+01, 2.43194447e+01, + 4.53750000e+01, 5.14861107e+01, 2.77777786e+01, 6.06805573e+01, + 5.10833321e+01, 1.19722223e+01, 1.11666670e+01, 4.18750000e+01, + 5.58194427e+01, 2.69861107e+01, 1.44027777e+01, 130., + 9.01666641e+01, 3.13888884e+00, 2.95833325e+00, 1.03194447e+01, + 8.59722233e+00, 3.02777767e+00, 1.09166670e+01, 2.75555553e+01, + 2.61527786e+01, 2.15416660e+01, 1.95000000e+01, 2.58750000e+01, + 3.33333321e+01, 3.38194427e+01, 3.16805553e+01, 2.90277786e+01, + 2.89861107e+01, 2.94722214e+01, 2.78888893e+01, 3.33055573e+01, + 3.54583321e+01, 4.17500000e+01, 3.00138893e+01, 5.60138893e+01, + 2.62916660e+01, 1.81250000e+01, 3.48472214e+01, 5.33888893e+01, + 3.31527786e+01, 1.53194447e+01, 3.28611107e+01, 1.29722229e+02, + 1.82083340e+01, 3.01388884e+00, 7.12500000e+00, 1.09722223e+01, + 4.15277767e+00, 2.15277767e+00, 7.90555573e+01, 1.92638893e+01, + 3.65833321e+01, 3.18750000e+01, 1.40277777e+01, 1.27222223e+01, + 4.24027786e+01, 4.49583321e+01, 1.59444447e+01, 1.28194447e+01, + 1.52361107e+01, 3.82916679e+01, 4.06527786e+01, 2.30555553e+01, + 2.21666660e+01, 5.61111107e+01, 3.96111107e+01, 2.49166660e+01, + 4.20833349e+00, 9.22222233e+00, 2.55833340e+01, 2.09027786e+01, + 1.18611107e+01, 3.41388893e+01, 1.03472221e+02, 8.63888855e+01, + 7.43055534e+00, 3.95833325e+00, 7.51388884e+00, 4.69444466e+00, + 2.47222233e+00, 8.11111069e+00, 1.20097221e+02, 2.94146347e+01, + 1.56585369e+01, 7.63414621e+00, 1.03902435e+01, 1.33902435e+01, + 1.38780489e+01, 1.74390240e+01, 2.08780479e+01, 2.11951218e+01, + 8.53658581e+00, 5.46341467e+00, 7.29268312e+00, 1.68536587e+01, + 2.41219521e+01, 2.52439022e+01, 2.19024391e+01, 5.34146357e+00, + 4.19512177e+00, 3.24390244e+00, 1.73170738e+01, 5.69756088e+01, + 5.43658524e+01, 1.80731716e+01, 6.73170710e+00, 3.14634156e+00, + 1.46341467e+00, 1.80487800e+00, 2.18536587e+01, 8.49024353e+01, + 3.79512177e+01, 3.70731711e+00, 1.56097555e+00, 3.62682915e+01, + 3.39512177e+01, 1.24878044e+01, 6.80487823e+00, 1.02195120e+01, + 1.66097565e+01, 2.13170738e+01, 2.40243912e+01, 3.39512177e+01, + 2.84634151e+01, 2.99512196e+01, 2.78536587e+01, 2.30975609e+01, + 2.72439022e+01, 3.19756088e+01, 3.72439041e+01, 4.78048801e+00, + 5.85365868e+00, 2.24878044e+01, 7.91707306e+01, 8.59268265e+01, + 4.36585350e+01, 1.73170738e+01, 1.05609760e+01, 2.56097555e+00, + 1.95121944e-01, 4.68292665e+00, 6.65853653e+01, 1.00731705e+02, + 2.70975609e+01, 3.68292689e+00, 6.73170710e+00, 1.74146347e+01, + 6.78780518e+01, 4.35365868e+01, 9.07317066e+00, 5.04878044e+00, + 1.36829271e+01, 1.10975609e+01, 6.75609779e+00, 6.65853643e+00, + 3.59268303e+01, 7.26097565e+01, 5.45609741e+01, 2.03658543e+01, + 7.21951199e+00, 6.90243912e+00, 7.19512177e+00, 6.58536613e-01, + 5.53658533e+00, 4.20487823e+01, 9.94390259e+01, 66., + 9.51219559e+00, 9.70731735e+00, 5.78048801e+00, 1.90243900e+00, + 7.56097555e-01, 1.46585369e+01, 7.82926865e+01, 6.55365829e+01, + 1.36097565e+01, 3.02439022e+01, 5.00731697e+01, 4.65853643e+00, + 7.10243912e+01, 7.96341476e+01, 6.26829290e+00, 2.17073178e+00, + 5.77317085e+01, 8.08536606e+01, 4.70731688e+00, 2.68292689e+00, + 3.24390259e+01, 8.95853653e+01, 3.52439041e+01, 7.60975599e+00, + 3.22439041e+01, 1.00463417e+02, 1.45853662e+01, 1.90243900e+00, + 7.73170710e+00, 7.55853653e+01, 7.13170700e+01, 1.55365858e+01, + 14., 1.09780487e+02, 4.93414650e+01, 2.56097555e+00, + 2.07317066e+00, 5.93414650e+01, 8.14878082e+01, 1.08292685e+01, + 5.90243912e+00, 9.86097565e+01, 9.80731735e+01, 4.03508759e+00, + 1.82456136e+00, 7.42105246e+00, 4.31578970e+00, 8.59649122e-01, + 1.26315784e+00, 1.54385960e+00, 8.77192974e-01, 1.56140351e+00, + 3.28070164e+00, 11., 4.96491241e+00, 6.66666687e-01, + 3.33333343e-01, 1.92982450e-01, 1.57894731e-01, 6.14035070e-01, + 4.29824543e+00, 1.07368422e+01, 3.45614028e+00, 5.08771956e-01, + 2.63157904e-01, 1.92982450e-01, 2.28070170e-01, 5.08771956e-01, + 4.14035082e+00, 6.75438595e+00, 1.64912283e+00, 4.73684222e-01, + 3.85964900e-01, 5.26315808e-01, 4.56140339e-01, 8.10526276e+00, + 6.19298267e+00, 2.51578941e+01, 19., 5.42105246e+00, + 4.54385948e+00, 1.35263157e+01, 8.07017517e+00, 6.05263138e+00, + 1.07894735e+01, 2.95789471e+01, 1.70877190e+01, 5.26315784e+00, + 4.29824543e+00, 4.15438614e+01, 1.09649124e+01, 4., + 1.32982454e+01, 2.64561405e+01, 1.15964909e+01, 3.42105269e+00, + 8.77192974e+00, 5.06140366e+01, 6.07017565e+00, 4.52631569e+00, + 1.38421049e+01, 2.03859653e+01, 7.87719297e+00, 2.40350866e+00, + 8.33333302e+00, 1.88070183e+01, 4.29824543e+00, 4.43859673e+00, + 4.19298267e+00, 5.70175438e+01, 4.35087738e+01, 3.64912271e+00, + 3.94736838e+00, 1.06105263e+02, 9.82982483e+01, 5.21052647e+00, + 9.91228104e+00, 1.19894737e+02, 5.15263176e+01, 3.33333325e+00, + 1.03157892e+01, 1.35263153e+02, 7.47894745e+01, 2.87719297e+00, + 3.40526314e+01, 1.27280701e+02, 1.85263157e+01, 2.77192974e+00, + 4.15263176e+01, 1.35508774e+02, 2.23859653e+01, 3., + 4.96315804e+01, 8.78596497e+01, 5.61403513e+00, 3.03508782e+00, + 8.81578979e+01, 1.28614029e+02, 4.92982435e+00, 4.33333349e+00, + 2.64912271e+00, 9.19649124e+01, 1.07368423e+02, 2.70175433e+00, + 4.63157892e+00, 3.98070183e+01, 4.96315804e+01, 5.56140327e+00, + 5.75438595e+00, 1.19631577e+02, 5.71578941e+01, 2.31578946e+00, + 1.06491232e+01, 3.90175438e+01, 2.34210529e+01, 3.57894731e+00, + 2.68771935e+01, 1.20017548e+02, 1.40175438e+01, 4.57894754e+00, + 2.08421059e+01, 3.62280693e+01, 1.29122810e+01, 3.36842108e+00, + 8.16315765e+01, 1.06789474e+02, 2.77192974e+00, 4.71929836e+00, + 3.02982464e+01, 3.05614033e+01, 6.10526323e+00, 1.22222221e+00, + 9.62962985e-01, 1.03703701e+00, 5., 1.18888893e+01, + 5.48148155e+00, 2.51851845e+00, 2.03703713e+00, 4.91111107e+01, + 1.39259262e+01, 2.40740752e+00, 1.71111107e+01, 4.14814796e+01, + 16., 8.29629612e+00, 3.46296310e+01, 1.32777771e+02, + 5.15185204e+01, 1.01111107e+01, 2.29629631e+01, 7.85185165e+01, + 2.62592602e+01, 1.36296301e+01, 7.07037048e+01, 5.71111107e+01, + 2.76296291e+01, 1.13703699e+01, 2.05185184e+01, 1.28925919e+02, + 7.01481476e+01, 3.07407398e+01, 1.74444447e+01, 4.40740728e+00, + 2.11111116e+00, 1.81481481e+00, 6.66666651e+00, 2.08888893e+01, + 7., 2.33333325e+00, 3.03703713e+00, 9.33703690e+01, + 7.44444466e+00, 3., 2.91111107e+01, 5.25185204e+01, + 1.14814816e+01, 1.36296301e+01, 1.01444443e+02, 1.01777779e+02, + 2.50370369e+01, 2.05555553e+01, 4.68888893e+01, 5.62962952e+01, + 1.98148155e+01, 2.44814816e+01, 1.17185188e+02, 2.21481476e+01, + 3.51851845e+01, 2.24074078e+01, 2.13333340e+01, 6.11481476e+01, + 8.67777786e+01, 4.71481476e+01, 1.55185184e+01, 1.22962961e+01, + 2.62962961e+00, 1.51851857e+00, 5.55555534e+00, 2.56296291e+01, + 8.88888931e+00, 2.07407403e+00, 4.11111116e+00, 1.28148148e+02, + 1.38888893e+01, 2.77777767e+00, 2.10740738e+01, 6.48888855e+01, + 1.68518524e+01, 5.22222233e+00, 5.66666679e+01, 8.65925903e+01, + 2.44814816e+01, 1.35555553e+01, 3.52962952e+01, 6.04444427e+01, + 1.95185184e+01, 9.77777767e+00, 4.18888893e+01, 1.38888893e+01, + 2.35925922e+01, 1.46296301e+01, 19., 2.95185184e+01, + 2.61851845e+01, 1.41851854e+01, 1.07407408e+01, 1.12222223e+01, + 2.70370364e+00, 1.70370376e+00, 2.40740752e+00, 1.37407408e+01, + 9.70370388e+00, 2.40740752e+00, 4.22222233e+00, 120., + 1.68518524e+01, 1.85185182e+00, 1.00370369e+01, 4.63333321e+01, + 27., 3., 1.80370369e+01, 7.03333359e+01, 2.82222214e+01, 7., + 1.66666660e+01, 4.75185204e+01, 2.22222214e+01, 4.33333349e+00, + 7.29629612e+00, 1.20370369e+01, 1.21111107e+01, 6.96296310e+00, + 1.02592592e+01, 1.92592602e+01, 9.77777767e+00, 7.37037039e+00, + 8.70370388e+00, 1.57540979e+01, 1.55737710e+00, 7.81967211e+00, + 4.06557388e+01, 1.02459021e+01, 1.96721315e+00, 1.11147537e+01, + 9.84590149e+01, 8.67213154e+00, 2.26229501e+00, 4.97049179e+01, + 1.16278687e+02, 8.93442631e+00, 2.44262290e+00, 4.42786903e+01, + 1.14721313e+02, 5.91803265e+00, 4.08196735e+00, 9.60655746e+01, + 1.08360657e+02, 5.24590158e+00, 5.83606577e+00, 3.96721306e+01, + 4.62622948e+01, 3.96721315e+00, 4.19672108e+00, 7.55901642e+01, + 2.97213116e+01, 4.32786894e+00, 9.98360634e+00, 2.90163937e+01, + 1.53442621e+01, 5.30983620e+01, 3.65573764e+00, 8.75409794e+00, + 1.14163933e+02, 4.73442612e+01, 2.39344263e+00, 8.14754105e+00, + 1.16032784e+02, 1.98524590e+01, 8.19672108e+00, 2.56557369e+01, + 1.18836067e+02, 2.71639347e+01, 3.50819683e+00, 1.51803274e+01, + 5.08852463e+01, 2.30983601e+01, 7.26229525e+00, 1.10819674e+01, + 1.92131157e+01, 2.31147552e+00, 6.85245895e+00, 2.93114758e+01, + 4.33114738e+01, 1.05573769e+01, 2.65573764e+00, 1.91803277e+00, + 1.62295079e+00, 3.44262290e+00, 1.69344254e+01, 4.35901642e+01, + 3.76721306e+01, 5.25901642e+01, 4.85245895e+00, 3.86885238e+00, + 1.13114754e+02, 1.00786888e+02, 3.36065578e+00, 6.32786894e+00, + 4.75901642e+01, 3.97540970e+01, 1.21639347e+01, 7.73770475e+00, + 27., 1.56885242e+01, 3.62295079e+00, 1.63606548e+01, + 4.46557388e+01, 4.71475410e+01, 1.00983610e+01, 3.08196712e+00, + 9.18032765e-01, 5.57377040e-01, 3.27868843e+00, 3.52459030e+01, + 8.11967239e+01, 2.55245895e+01, 8.96721268e+00, 6.37704897e+00, + 4.63934422e+00, 6.08196735e+00, 1.91803284e+01, 6.71967239e+01, + 7.52786865e+01, 3.83606567e+01, 6.68852472e+00, 2.96721315e+00, + 3.12131157e+01, 9.13278656e+01, 5.08196735e+00, 2.88524580e+00, + 1.59016390e+01, 5.04590149e+01, 1.56229506e+01, 4.26229525e+00, + 4.47540998e+00, 3.90163946e+00, 1.60655737e+00, 8.45901680e+00, + 3.93934441e+01, 7.07704926e+01, 2.20983601e+01, 6.72131157e+00, + 2.81967211e+00, 2.57377052e+00, 2.77049184e+00, 1.56885242e+01, + 7.00819702e+01, 3.02950821e+01, 1.93606548e+01, 1.76065578e+01, + 1.42459021e+01, 1.30327873e+01, 1.28032789e+01, 2.29180336e+01, + 4.04918022e+01, 3.88333321e+01, 7.90555573e+01, 2.38333340e+01, + 6.33333349e+00, 4.33518524e+01, 9.06851883e+01, 3.31111107e+01, + 1.20555553e+01, 57., 9.14259262e+01, 3.31111107e+01, + 1.97777786e+01, 40., 6.90740738e+01, 3.83888893e+01, + 2.54814816e+01, 2.74074078e+01, 4.74259262e+01, 4.31481476e+01, + 3.68518524e+01, 3.90185204e+01, 51., 4.74814796e+01, + 3.91666679e+01, 2.00925922e+01, 2.98518524e+01, 2.35000000e+01, + 2.24814816e+01, 3.16851845e+01, 4.90555573e+01, 2.41111107e+01, + 1.77592602e+01, 2.44444447e+01, 3.59629631e+01, 1.22037039e+01, + 8.03703690e+00, 3.58148155e+01, 9.41481476e+01, 4.00185204e+01, + 1.67037029e+01, 5.80925941e+01, 1.08129631e+02, 3.62222214e+01, + 1.05740738e+01, 5.25740738e+01, 1.12981483e+02, 5.05185204e+01, + 1.56296301e+01, 3.85370369e+01, 8.90740738e+01, 6.38333321e+01, + 3.96296310e+01, 4.42037048e+01, 8.27962952e+01, 4.81851845e+01, + 2.80555553e+01, 2.90185184e+01, 3.72407417e+01, 3.98333321e+01, + 4.03888893e+01, 2.99074078e+01, 3.88703690e+01, 3.35370369e+01, + 3.35555573e+01, 1.24074078e+01, 1.32407408e+01, 1.17407408e+01, + 9.42592621e+00, 1.49814816e+01, 2.82037029e+01, 1.79074078e+01, + 1.29629631e+01, 1.57592592e+01, 3.74074059e+01, 1.95925922e+01, + 1.03888893e+01, 2.73518524e+01, 9.61481476e+01, 5.13148155e+01, + 1.22962961e+01, 1.70370369e+01, 6.11666679e+01, 5.00740738e+01, + 1.77407398e+01, 2.00555553e+01, 9.22592621e+01, 8.05370407e+01, + 1.85000000e+01, 1.17407408e+01, 3.08888893e+01, 4.50555573e+01, + 2.55555553e+01, 1.20185184e+01, 4.07407417e+01, 6.97407379e+01, + 3.68518524e+01, 2.46296287e+00, 2.88888884e+00, 2.53703713e+00, + 1.75925922e+00, 2.03703713e+00, 2.40740752e+00, 4.07407427e+00, + 2.96296287e+00, 2.70370364e+00, 2.09259248e+00, 1.98148143e+00, + 2.09259248e+00, 4.83333349e+00, 8.62963009e+00, 8., + 4.05555534e+00, 2.98148155e+00, 5.16666651e+00, 3.68518519e+00, + 2.16666675e+00, 3.75925922e+00, 1.49259262e+01, 1.64814816e+01, + 4.59259272e+00, 2.24074078e+00, 6.29629612e+00, 4.53703690e+00, + 2.31481481e+00, 1.96296299e+00, 11., 2.05925922e+01, + 5.42592573e+00, 2.90322590e+00, 1.19354844e+00, 4.41935492e+00, + 5.77419376e+00, 2.60322590e+01, 6.57741928e+01, 2.86774197e+01, + 1.21935482e+01, 1.00322580e+01, 1.45161295e+00, 1.38709676e+00, + 1.74193549e+00, 3.61935501e+01, 1.34516129e+02, 1.31741928e+02, + 1.22258062e+01, 9.98387070e+01, 5.19354820e+00, 1.35483873e+00, + 1.70967746e+00, 2.45161295e+00, 6.21290321e+01, 1.37193542e+02, + 7.02580643e+01, 1.01161293e+02, 1.03870964e+01, 6., + 7.80645180e+00, 7.48387098e+00, 1.34838705e+01, 4.47419357e+01, + 5.25161285e+01, 5.25806475e+00, 4.67741919e+00, 4.64516115e+00, + 5.48387098e+00, 6.70967722e+00, 1.52258062e+01, 1.29032259e+01, + 8.54838753e+00, 1.10645161e+01, 7.80645180e+00, 5.83870983e+00, + 7.87096786e+00, 1.32580643e+01, 6.75161285e+01, 1.02935486e+02, + 2.14516125e+01, 3.14516125e+01, 1.09677420e+01, 7.16129017e+00, + 1.04193544e+01, 1.00967741e+01, 4.86774178e+01, 1.18258064e+02, + 5.28064499e+01, 4.03225822e+01, 1.42903223e+01, 9.38709641e+00, + 2.19677410e+01, 2.05483875e+01, 2.22258072e+01, 4.72903214e+01, + 4.75806465e+01, 6.41935492e+00, 8.58064556e+00, 5.29032278e+00, + 2.80645156e+00, 3.03225803e+00, 9.16129017e+00, 1.07096777e+01, + 8.67741966e+00, 1.83225803e+01, 1.47096777e+01, 1.11612902e+01, + 8.83870983e+00, 1.16451616e+01, 1.87419357e+01, 2.65483875e+01, + 2.57096767e+01, 1.59677420e+01, 1.10645161e+01, 1.59677420e+01, + 2.30645161e+01, 1.73870964e+01, 2.23548393e+01, 4.04516144e+01, + 2.95161285e+01, 2.92580643e+01, 1.26451616e+01, 1.48387098e+01, + 3.76774178e+01, 27., 1.82580643e+01, 3.72903214e+01, + 5.36451607e+01, 5.09677410e+00, 6.22580624e+00, 7.83870983e+00, + 3.22580647e+00, 2.70967746e+00, 6.87096786e+00, 1.57741938e+01, + 1.04516125e+01, 1.77096767e+01, 1.32580643e+01, 1.67741928e+01, + 1.15483875e+01, 1.13548384e+01, 1.57419357e+01, 2.80645161e+01, + 2.92903233e+01, 1.33225803e+01, 1.34193544e+01, 2.45483875e+01, + 3.78387108e+01, 2.04838715e+01, 1.62903233e+01, 3.78387108e+01, + 3.93225822e+01, 3.50645180e+01, 1.49354839e+01, 2.18709679e+01, + 3.89354820e+01, 2.30322590e+01, 1.54193544e+01, 3.37741928e+01, + 5.48709679e+01, 2.07547164e+00, 2.58490562e+00, 1.12641506e+01, + 5.49056587e+01, 2.58113213e+01, 4.43396235e+00, 4.15094328e+00, + 4.09433985e+00, 4.22641516e+00, 3.05660367e+00, 2.04716988e+01, + 9.15283051e+01, 3.29811325e+01, 3.16981125e+00, 3.58490562e+00, + 12., 5.18867922e+00, 2.54716992e+00, 2.97358494e+01, + 1.05547173e+02, 1.94716988e+01, 2.07547164e+00, 9.92452812e+00, + 2.89811325e+01, 3.07547164e+00, 3.05660367e+00, 3.67169800e+01, + 6.22075462e+01, 5.66037750e+00, 2.16981125e+00, 2.64339619e+01, + 3.56037750e+01, 5.20754719e+00, 3.41509438e+00, 9.81132030e+00, + 7.81132050e+01, 5.11320763e+01, 6.41509438e+00, 3.28301883e+00, + 8.62264156e+00, 1.54716978e+01, 2.39622641e+00, 1.13018866e+01, + 118., 7.37547150e+01, 4.33962250e+00, 5.67924547e+00, + 4.81698112e+01, 1.84716988e+01, 2.20754719e+00, 1.71320763e+01, + 1.08528305e+02, 2.62830181e+01, 2.52830195e+00, 2.10377350e+01, + 1.03339622e+02, 7., 2.26415086e+00, 1.48301888e+01, + 3.42452812e+01, 3.56603765e+00, 2.18867922e+00, 6.28867912e+01, + 1.01452827e+02, 1.60754719e+01, 3.24528313e+00, 5.22641516e+00, + 7.71320724e+01, 75., 7.73584890e+00, 2.83018875e+00, + 1.62452831e+01, 4.88867912e+01, 2.09433961e+00, 3.81132078e+00, + 1.09584908e+02, 9.79433975e+01, 3.41509438e+00, 3.41509438e+00, + 7.51320724e+01, 6.18301888e+01, 3.32075477e+00, 3.90566039e+00, + 4.86037750e+01, 1.92641506e+01, 2.13207555e+00, 1.59811325e+01, + 118., 16., 5.32075453e+00, 6.33962250e+00, 1.31886797e+01, + 5.81132078e+00, 2.81132078e+00, 3.17924538e+01, 6.98490601e+01, + 2.61509438e+01, 2.81132078e+00, 2.20754719e+00, 4.34716988e+01, + 9.11509399e+01, 9.03773594e+00, 2.35849047e+00, 14., + 8.45471725e+01, 7.15094328e+00, 1.41509438e+00, 4.88867912e+01, + 8.95849075e+01, 5.60377359e+00, 1.84905660e+00, 5.63207550e+01, + 7.86792450e+01, 1.36037731e+01, 4.18867922e+00, 1.32830191e+01, + 1.20188675e+01, 1.90566039e+00, 2.88679242e+00, 5.87735863e+01, + 1.49622641e+01, 1.06415091e+01, 7.98113203e+00, 9.26415062e+00, + 6.30188656e+00, 4.16981125e+00, 6.67924547e+00, 1.50943394e+01, + 8.44444466e+00, 1.93650794e+00, 3.82539678e+00, 1.28253965e+01, + 7.98412704e+00, 1.42698412e+01, 6.78095245e+01, 8.09047623e+01, + 7.71428585e+00, 4.50793648e+00, 6.58730173e+00, 5.85714293e+00, + 5.93650770e+00, 3.39841270e+01, 9.73492050e+01, 5.45238113e+01, + 4.73015881e+00, 3.92063498e+00, 7.03174591e+00, 4.61904764e+00, + 1.94603176e+01, 8.83174591e+01, 9.71111145e+01, 2.70952377e+01, + 6.68253946e+00, 3.84126973e+00, 4.90476179e+00, 3.34920645e+00, + 3.51904755e+01, 9.78888855e+01, 7.27936478e+01, 1.65238094e+01, + 2.97777786e+01, 1.08095236e+01, 8.76190472e+00, 1.38730154e+01, + 1.93809528e+01, 2.61904755e+01, 4.28730164e+01, 6.80952377e+01, + 2.76031742e+01, 1.91269836e+01, 1.69365082e+01, 1.38095236e+01, + 2.46984119e+01, 3.13492069e+01, 5.88888893e+01, 55., + 3.76825409e+01, 3.17777786e+01, 2.57619057e+01, 1.96984119e+01, + 3.85555573e+01, 6.65714264e+01, 6.84285736e+01, 5.01587296e+01, + 2.09523811e+01, 1.67460308e+01, 1.43809528e+01, 2.77619057e+01, + 7.93809509e+01, 9.68571396e+01, 5.76507950e+01, 2.46190472e+01, + 4.58412704e+01, 4.83015862e+01, 3.32222214e+01, 2.33333340e+01, + 1.96031742e+01, 1.41746035e+01, 1.62539692e+01, 2.91587296e+01, + 2.51587296e+01, 3.16031742e+01, 3.73333321e+01, 3.08571434e+01, + 3.40634918e+01, 2.42222214e+01, 2.75873013e+01, 2.78253975e+01, + 2.14603176e+01, 3.50158730e+01, 5.04920616e+01, 5.43333321e+01, + 3.32539673e+01, 1.66507931e+01, 1.68095245e+01, 1.59841270e+01, + 1.68412704e+01, 2.15079365e+01, 3.79206352e+01, 8.88571396e+01, + 7.05079346e+01, 2.37936516e+01, 1.04761906e+01, 1.22222223e+01, + 1.89365082e+01, 7.53333359e+01, 6.44761887e+01, 1.41904764e+01, + 6.22222233e+00, 9.77777767e+00, 1.61904764e+00, 2.85714293e+00, + 8.60317421e+00, 4.45079384e+01, 9.23968277e+01, 4.18730164e+01, + 9.73015881e+00, 3.66666675e+00, 3.84126973e+00, 4.17460299e+00, + 2.71428561e+00, 1.16349211e+01, 8.40476227e+01, 8.57460327e+01, + 1.28253965e+01, 1.82539678e+00, 3.63492060e+00, 4.01587296e+00, + 5.82539701e+00, 6.96825409e+00, 4.24285698e+01, 9.45396805e+01, + 2.07142849e+01, 7.77777791e-01, 9.68253970e-01, 1.01904764e+01, + 6.03333330e+00, 5.73333311e+00, 3.90000010e+00, 3., + 2.29999995e+00, 3.29999995e+00, 6.86666679e+00, 4.83333349e+00, + 1.58000002e+01, 8.50000000e+00, 4.33333349e+00, 1.67999992e+01, + 1.71000004e+01, 4.63333321e+00, 4.83333349e+00, 1.00333338e+01, + 8.25333328e+01, 2.58999996e+01, 3.23333335e+00, 2.67999992e+01, + 3.25000000e+01, 5.36666679e+00, 3.53333330e+00, 56., + 5.84666672e+01, 1.55000000e+01, 5.06666660e+00, 1.90666676e+01, + 2.14666672e+01, 9.46666622e+00, 1.05333338e+01, 6.08666649e+01, + 5.93333340e+00, 6.76666689e+00, 6.73333311e+00, 7.46666670e+00, + 4.80000019e+00, 3., 2.79999995e+00, 5.66666651e+00, + 2.51000004e+01, 1.25000000e+01, 5., 3.85000000e+01, + 3.23333321e+01, 5., 4.59999990e+00, 1.99666672e+01, + 1.16866669e+02, 3.35000000e+01, 4.36666679e+00, 3.98666649e+01, + 3.92999992e+01, 9.53333378e+00, 8.26666641e+00, 1.11633331e+02, + 5.24333344e+01, 14., 2.02999992e+01, 8.10999985e+01, + 5.10666656e+01, 1.53333330e+01, 1.67333336e+01, 5.84333344e+01, + 8.33333302e+00, 6.40000010e+00, 5.59999990e+00, 1.81000004e+01, + 8.56666660e+00, 2.33333325e+00, 3.70000005e+00, 1.09666662e+01, + 6.11666679e+01, 5.76666689e+00, 3.66666675e+00, 6.38666649e+01, + 3.45333328e+01, 2.26666665e+00, 5.36666679e+00, 9.64333344e+01, + 1.10833336e+02, 8.16666698e+00, 4.30000019e+00, 9.47666702e+01, + 4.73333321e+01, 4.19999981e+00, 1.15333338e+01, 1.27933334e+02, + 2.02666664e+01, 5.16666651e+00, 2.47333336e+01, 1.22400002e+02, + 7.53666687e+01, 8.63333321e+00, 1.06000004e+01, 3.22333336e+01, + 1.29333334e+01, 4.30000019e+00, 2.56666660e+00, 3.02666664e+01, + 1.47666664e+01, 1.39999998e+00, 2.26666665e+00, 2.25333328e+01, + 1.00800003e+02, 4.36666679e+00, 3.23333335e+00, 4.93333321e+01, + 2.22666664e+01, 1.16666663e+00, 1.46666670e+00, 1.26133331e+02, + 5.10999985e+01, 2.20000005e+00, 3.79999995e+00, 1.24566666e+02, + 7.54666672e+01, 7.33333349e-01, 2., 7.73666687e+01, + 1.61666660e+01, 3.90000010e+00, 5.09999990e+00, 6.80333328e+01, + 3.33333321e+01, 3.43333340e+00, 4.73333311e+00, 2.36333332e+01, + 5.81315804e+01, 1.59473686e+01, 5.97368431e+00, 3.55526314e+01, + 1.47631578e+01, 2.68421054e+00, 3.08947372e+01, 7.26315765e+01, + 3.45000000e+01, 1.45526314e+01, 9.15789509e+00, 8.10526276e+00, + 1.13684206e+01, 2.17894745e+01, 7.85000000e+01, 8.24473648e+01, + 7.23684216e+00, 5.39473677e+00, 8.81578922e+00, 1.97368412e+01, + 3.48684196e+01, 6.34473686e+01, 7.40789490e+01, 2.83947372e+01, + 3.65789485e+00, 3.76315784e+00, 3.78947377e+00, 1.04210529e+01, + 2.97631588e+01, 8.02894745e+01, 4.18421059e+01, 8.50000000e+00, + 9.68947372e+01, 5.44210510e+01, 1.12105265e+01, 6.94736862e+00, + 7.44736862e+00, 1.50000000e+00, 1.15526314e+01, 5.76842117e+01, + 6.84473648e+01, 5.56315804e+01, 4.82368431e+01, 2.82105255e+01, + 2.34210529e+01, 2.46315784e+01, 4.71578941e+01, 6.82894745e+01, + 1.15526314e+01, 1.78421059e+01, 3.95789490e+01, 5.86052628e+01, + 6.23947372e+01, 6.03157883e+01, 4.50263176e+01, 2.05000000e+01, + 9.71052647e+00, 1.26578951e+01, 1.27631578e+01, 2.61578941e+01, + 4.20263176e+01, 5.19473686e+01, 2.95263157e+01, 1.32105265e+01, + 9.42894745e+01, 9.65263138e+01, 1.85526314e+01, 4.26315784e+00, + 1.01842108e+01, 3.26315784e+00, 1.42105258e+00, 1.74736843e+01, + 7.12894745e+01, 8.10789490e+01, 4.89736824e+01, 2.67631588e+01, + 1.48157892e+01, 1.32894735e+01, 1.23947372e+01, 2.18421059e+01, + 1.31842108e+01, 2.37105255e+01, 3.56315804e+01, 3.80526314e+01, + 2.97894745e+01, 3.32368431e+01, 2.90526314e+01, 1.49736843e+01, + 1.39736843e+01, 1.21052628e+01, 2.00789471e+01, 4.14736824e+01, + 4.51052628e+01, 3.78684196e+01, 3.09210529e+01, 2.58684216e+01, + 4.35000000e+01, 9.90263138e+01, 2.41842098e+01, 2.39473677e+00, + 1.87368412e+01, 2.66052628e+01, 4.31578970e+00, 1.71052635e+00, + 2.86315784e+01, 1.06447365e+02, 6.23157883e+01, 7.31578970e+00, + 2.23684216e+00, 3.15789485e+00, 3.92105269e+00, 3.86842108e+00, + 1.65526314e+01, 5.80526314e+01, 7.61578979e+01, 2.80789471e+01, + 1.19210529e+01, 1.03947372e+01, 1.74473686e+01, 1.80263157e+01, + 1.67368412e+01, 1.88157902e+01, 6.75263138e+01, 7.73684235e+01, + 4.04473686e+01, 1.83421059e+01, 1.91842098e+01, 23., + 1.27702703e+01, 1.27972975e+01, 1.35135136e+01, 1.27972975e+01, + 8.01351357e+00, 9.05405426e+00, 1.40135136e+01, 1.27972975e+01, + 3.22432442e+01, 3.17567558e+01, 2.86756763e+01, 2.34054050e+01, + 2.12837830e+01, 2.39189186e+01, 3.09864864e+01, 3.23648643e+01, + 5.81486473e+01, 7.43783798e+01, 3.80405388e+01, 2.15405407e+01, + 4.53378372e+01, 6.23243256e+01, 3.42702713e+01, 4.18243256e+01, + 1.42337845e+02, 1.45581085e+02, 1.48513517e+01, 1.02162161e+01, + 8.79459457e+01, 1.09108109e+02, 1.28783779e+01, 1.93243237e+01, + 1.60270271e+01, 1.62567558e+01, 1.82972965e+01, 1.69189186e+01, + 1.07567568e+01, 1.15000000e+01, 1.81486492e+01, 1.67567558e+01, + 3.95135117e+01, 3.94864883e+01, 4.07162170e+01, 3.13783779e+01, + 2.28378372e+01, 2.53783779e+01, 3.58648643e+01, 3.94864883e+01, + 5.47567558e+01, 5.17162170e+01, 4.33378372e+01, 3.00540543e+01, + 29., 3.17837830e+01, 37., 5.32702713e+01, 1.18229729e+02, + 1.42256760e+02, 2.74054050e+01, 1.64054050e+01, 8.96081085e+01, + 1.18121620e+02, 2.48378372e+01, 2.62837830e+01, 1.45135136e+01, + 14., 1.71081085e+01, 1.35135136e+01, 7.97297287e+00, + 9.10810852e+00, 1.66081085e+01, 1.88378372e+01, 3.75810814e+01, + 3.26621628e+01, 3.29189186e+01, 2.60270271e+01, 1.82837830e+01, + 2.29324322e+01, 3.58783798e+01, 37., 4.32297287e+01, + 4.11351357e+01, 3.83783798e+01, 2.85270271e+01, 2.13648643e+01, + 2.05675678e+01, 3.17972965e+01, 4.27972984e+01, 5.73513527e+01, + 6.51621628e+01, 3.18918915e+01, 1.90945950e+01, 4.27432442e+01, + 5.18918915e+01, 2.60945950e+01, 2.99594593e+01, 8.82432461e+00, + 9.01351357e+00, 9.17567539e+00, 6.40540552e+00, 3.91891885e+00, + 4.04054070e+00, 6.87837839e+00, 9.95945930e+00, 1.93513508e+01, + 1.74864864e+01, 1.85945950e+01, 1.74054050e+01, 1.16756754e+01, + 1.50675678e+01, 2.08783779e+01, 2.00135136e+01, 2.66216221e+01, + 2.45810814e+01, 2.05270271e+01, 1.70945950e+01, 1.29729729e+01, + 1.33513517e+01, 1.97972965e+01, 2.22162170e+01, 2.29459457e+01, + 2.20540543e+01, 1.91486492e+01, 1.19729729e+01, 1.48513517e+01, + 1.34729729e+01, 1.41621618e+01, 1.95270271e+01, 7.49545441e+01, + 3.80909081e+01, 4.71212101e+00, 1.08333330e+01, 1.00590912e+02, + 4.34848480e+01, 7.04545450e+00, 8.09090900e+00, 3.36666679e+01, + 1.57878790e+01, 5.89393950e+00, 7.37878799e+00, 1.19090910e+01, + 1.03030300e+01, 1.12878790e+01, 1.26666670e+01, 7.71212101e+00, + 5.45454550e+00, 4.54545450e+00, 4.33333349e+00, 5.93939400e+00, + 8.07575798e+00, 1.10151520e+01, 9.16666698e+00, 1.07575762e+00, + 1.21212125e+00, 1.03030300e+00, 8.63636374e-01, 1.24242425e+00, + 1.74242425e+00, 2.21212125e+00, 1.33333337e+00, 1.20863640e+02, + 5.01969681e+01, 3.62121201e+00, 2.06818180e+01, 1.51242432e+02, + 8.00909119e+01, 5.71212101e+00, 1.16060610e+01, 7.68787842e+01, + 2.80151520e+01, 6.16666651e+00, 6.89393950e+00, 1.99242420e+01, + 1.46818180e+01, 1.27878790e+01, 1.84090900e+01, 1.37272730e+01, + 9.01515198e+00, 6.50000000e+00, 7.10606050e+00, 8.89393902e+00, + 1.11212120e+01, 1.34545450e+01, 1.26969700e+01, 1.53030300e+00, + 1.71212125e+00, 1.81818187e+00, 2.33333325e+00, 1.98484850e+00, + 3.27272725e+00, 4.54545450e+00, 2.56060600e+00, 1.26681816e+02, + 5.50909081e+01, 3.59090900e+00, 2.14696960e+01, 1.57015152e+02, + 1.03227272e+02, 7.16666651e+00, 1.03181820e+01, 1.03333336e+02, + 4.17272720e+01, 6.89393950e+00, 7.92424250e+00, 2.55909100e+01, + 1.60757580e+01, 1.01363640e+01, 1.63787880e+01, 1.80151520e+01, + 1.01515150e+01, 7.16666651e+00, 7.13636351e+00, 8.12121201e+00, + 8.43939400e+00, 1.29242420e+01, 1.53939390e+01, 2.01515150e+00, + 1.89393938e+00, 2.30303025e+00, 2.71212125e+00, 1.86363637e+00, + 2.12121201e+00, 3.51515150e+00, 2.92424250e+00, 1.00257576e+02, + 5.70757561e+01, 6.68181801e+00, 1.75757580e+01, 1.52621216e+02, + 1.07696968e+02, 2.21666660e+01, 9.60606098e+00, 9.30757599e+01, + 5.40909081e+01, 5.57575750e+00, 4.51515150e+00, 3.69393921e+01, + 4.01515160e+01, 1.57272730e+01, 1.22727270e+01, 2.02878780e+01, + 1.49090910e+01, 6.31818199e+00, 4.46969700e+00, 5.25757599e+00, + 7.16666651e+00, 8.78787899e+00, 1.10454550e+01, 1.30303025e+00, + 1.25757575e+00, 2.18181825e+00, 2.36363626e+00, 1.71212125e+00, + 1.39393938e+00, 2.13636374e+00, 1.74242425e+00, 1.38596487e+00, + 2.54385967e+01, 9.07368393e+01, 1.16315794e+01, 1.35087717e+00, + 5.08771944e+00, 8.38596535e+00, 2.75438595e+00, 1.49122810e+00, + 6.78947353e+00, 1.06245613e+02, 5.52631569e+01, 1.33333337e+00, + 2.56140351e+00, 7.19298267e+00, 4.50877190e+00, 1.57894742e+00, + 1.92982459e+00, 5.94035072e+01, 8.29298248e+01, 2.70175433e+00, + 1.42105258e+00, 6.26315784e+00, 6.50877190e+00, 3.08771920e+00, + 1.31578946e+00, 1.00701752e+01, 2.85087719e+01, 3.17543864e+00, + 9.12280679e-01, 1.08771935e+01, 4.03157883e+01, 9.29824591e-01, + 8., 3.40526314e+01, 6.96491241e+00, 1.77192986e+00, + 6.45614014e+01, 1.14140350e+02, 3.15789485e+00, 1.07017541e+00, + 4.01754379e+00, 3.40877190e+01, 1.57894735e+01, 2.03508782e+00, + 2.38245621e+01, 125., 2.50175438e+01, 2.24561405e+00, + 1.91228068e+00, 1.07719297e+01, 1.10175438e+01, 2.15789485e+00, + 5.50877190e+00, 1.32842102e+02, 9.66491241e+01, 3.38596487e+00, + 1.50877190e+00, 1.75438595e+00, 2.91228080e+00, 1.63157892e+00, + 2.84210515e+00, 1.10350876e+02, 1.27543861e+02, 1.63157892e+00, + 3.10526323e+00, 3.89473677e+00, 8.77192974e-01, 1.12280703e+00, + 5.52982445e+01, 1.39736847e+02, 1.68070183e+01, 1.57894742e+00, + 1.82456136e+00, 2.80701756e+00, 1.22807014e+00, 1.57894742e+00, + 2.89473686e+01, 1.44473679e+02, 5.60877190e+01, 3.33333325e+00, + 2.01754379e+00, 2.59649134e+00, 3.45614028e+00, 3.10526323e+00, + 1.07719297e+01, 1.42228073e+02, 105., 4.85964918e+00, + 2.21052623e+00, 2.40350866e+00, 5.57894754e+00, 4.85964918e+00, + 6.40350866e+00, 9.06491241e+01, 7.92280731e+01, 1.92982459e+00, + 1.61403513e+00, 2.01754379e+00, 1.73684216e+00, 2.19298244e+00, + 8.85964870e+00, 3.65964928e+01, 1.19649124e+01, 2.43859649e+00, + 1.91228068e+00, 2.96491218e+00, 2.98245621e+00, 3.07017541e+00, + 9.35087681e+00, 3.95789490e+01, 1.94912281e+01, 4.71929836e+00, + 2.35087729e+00, 3.43859649e+00, 5.36842108e+00, 5.70175457e+00, + 7.77192974e+00, 2.49122810e+01, 1.67192974e+01, 4.77192974e+00, + 2.24561405e+00, 2.42105269e+00, 3.92982459e+00, 4.59649134e+00, + 4.64912271e+00, 1.05087719e+01, 9.64912319e+00, 8.18965530e+00, + 2.60344839e+00, 3.15517235e+00, 5.50000000e+00, 9.75862026e+00, + 9.56896591e+00, 9.24137974e+00, 1.23448277e+01, 1.34655170e+01, + 3.68965507e+00, 3.50000000e+00, 5.22413778e+00, 8.86206913e+00, + 8.44827557e+00, 9.70689678e+00, 1.88448277e+01, 9.82758617e+00, + 2.72413802e+00, 2.98275852e+00, 8.87931061e+00, 1.01724138e+01, + 9.56896591e+00, 1.10172415e+01, 1.43448277e+01, 6.94827604e+00, + 2.77586198e+00, 2.15517235e+00, 6.17241383e+00, 8.51724148e+00, + 9.77586174e+00, 1.01896553e+01, 1.17931032e+01, 2.10689659e+01, + 15., 9.46551704e+00, 1.27586203e+01, 2.15172405e+01, + 3.42068977e+01, 37., 3.32241364e+01, 3.08275871e+01, + 1.99655170e+01, 1.17413797e+01, 1.37586203e+01, 2.24827595e+01, + 3.42241364e+01, 3.87758636e+01, 4.62068977e+01, 2.83793106e+01, + 1.45517244e+01, 1.20862064e+01, 1.80344830e+01, 2.53103447e+01, + 2.69655170e+01, 3.68620682e+01, 4.37068977e+01, 2.00172405e+01, + 8., 6.96551704e+00, 1.55172415e+01, 2.50862064e+01, + 2.24310341e+01, 2.79310341e+01, 3.46034470e+01, 2.07758617e+01, + 6.46896515e+01, 5.85689659e+01, 1.02241383e+01, 1.77068958e+01, + 5.54827576e+01, 6.03793106e+01, 4.39310341e+01, 2.65172405e+01, + 4.62068977e+01, 3.84482765e+01, 1.43448277e+01, 2.63103447e+01, + 6.50517273e+01, 7.29827576e+01, 5.61724129e+01, 27., + 2.00172405e+01, 2.06379318e+01, 1.86206894e+01, 2.85000000e+01, + 4.80689659e+01, 5.96551743e+01, 5.38965530e+01, 2.10517235e+01, + 1.22586203e+01, 1.16034479e+01, 1.43620691e+01, 2.38793106e+01, + 3.14310341e+01, 3.75000000e+01, 4.13103447e+01, 9.03448296e+00, + 9.58793106e+01, 1.03517242e+02, 1.16551723e+01, 6.32758617e+00, + 1.00465515e+02, 1.09655174e+02, 3.16379318e+01, 1.33793106e+01, + 1.06120689e+02, 1.20017242e+02, 1.81379318e+01, 1.12931032e+01, + 9.37068939e+01, 1.15120689e+02, 4.02586212e+01, 1.37413797e+01, + 8.74310379e+01, 1.05603447e+02, 1.85689659e+01, 1.55344830e+01, + 6.81379318e+01, 9.39137955e+01, 3.83448257e+01, 1.14655170e+01, + 4.51206894e+01, 6.30344810e+01, 1.43793106e+01, 1.46896553e+01, + 3.89655190e+01, 4.89827576e+01, 3.01206894e+01, 2.51282048e+00, + 4.10256433e+00, 7.30769253e+00, 3.82051277e+00, 9.66666698e+00, + 7.05128193e+00, 3.69230771e+00, 1.56410253e+00, 3.25641036e+00, + 5.79487181e+00, 6.64102554e+00, 8.23076916e+00, 6.50512848e+01, + 7.56410265e+00, 3.94871783e+00, 2.41025639e+00, 4.61538464e-01, + 1.51282048e+00, 2.23076916e+00, 8.66666698e+00, 5.57179489e+01, + 3.94871783e+00, 1.28205132e+00, 1.33333337e+00, 7.69230798e-02, + 0., 0., 4.61538464e-01, 3.71794868e+00, 8.97435904e-01, + 1.53846157e+00, 1.51282048e+00, 6.79487181e+00, 1.23076925e+01, + 1.18717947e+01, 1.01282053e+01, 2.64871788e+01, 3.53846169e+01, + 2.77948723e+01, 1.33846149e+01, 8.10256386e+00, 7.76923084e+00, + 4.89743567e+00, 2.24871788e+01, 1.37153839e+02, 3.08974361e+01, + 2.19230766e+01, 9.61538506e+00, 1.56410253e+00, 6.92307711e-01, + 6.15384638e-01, 1.34871798e+01, 1.13948715e+02, 1.14102564e+01, + 2.92051277e+01, 1.15897436e+01, 1.05128205e+00, 1.02564104e-01, + 0., 1.17948723e+00, 7.58974361e+00, 2.20512819e+00, + 3.43333321e+01, 2.59743595e+01, 8.79487133e+00, 3.59743576e+01, + 2.07435894e+01, 1.31538458e+01, 3.18717957e+01, 6.98205109e+01, + 4.47948723e+01, 1.94102573e+01, 3.87179494e+00, 1.13846149e+01, + 7.92307711e+00, 2.26410255e+01, 1.31384613e+02, 8.15897446e+01, + 7.21794891e+01, 1.64102573e+01, 5.89743567e+00, 2.51282048e+00, + 1.33333337e+00, 7.92307711e+00, 9.66153870e+01, 3.08974361e+01, + 1.14871796e+02, 5.06923065e+01, 1.57435894e+01, 3.97435904e+00, + 8.97435904e-01, 1.41025639e+00, 9.76923084e+00, 5.56410265e+00, + 1.03897438e+02, 7.28205109e+01, 1.37948713e+01, 58., + 2.71794872e+01, 2.09743595e+01, 2.37435894e+01, 4.25128212e+01, + 2.44102573e+01, 8.87179470e+00, 1.47179489e+01, 3.77179489e+01, + 1.78461533e+01, 2.22820511e+01, 6.67948685e+01, 8.45641022e+01, + 4.27179489e+01, 1.16410255e+01, 1.70512829e+01, 9.84615421e+00, + 8.10256386e+00, 1.00512819e+01, 4.86666679e+01, 4.25897446e+01, + 8.11538467e+01, 2.79230766e+01, 2.88205128e+01, 8.12820530e+00, + 4.17948723e+00, 5.87179470e+00, 1.43846149e+01, 4.51282072e+00, + 4.79487190e+01, 3.65128212e+01, 4.91451607e+01, 6.00483856e+01, + 3.58064508e+00, 3.01612902e+00, 4.14838715e+01, 7.28709641e+01, + 9.37096786e+00, 8.53225803e+00, 1.99354839e+01, 2.41935482e+01, + 2.40322590e+00, 7.96774197e+00, 7.18225784e+01, 9.50483856e+01, + 6.98387098e+00, 4.48387098e+00, 1.14838705e+01, 1.31612902e+01, + 4.03225803e+00, 5.43548393e+00, 1.08870964e+01, 1.15806456e+01, + 7.72580624e+00, 5.14516115e+00, 4.35483885e+00, 3.51612902e+00, + 2.91935492e+00, 2.88709688e+00, 4., 4.17741919e+00, + 4.95161295e+00, 4.43548393e+00, 9.70967712e+01, 1.18661293e+02, + 6.95161295e+00, 1.80645156e+00, 2.40806446e+01, 4.22580643e+01, + 5.29032278e+00, 5.83870983e+00, 3.97419357e+01, 5.43548393e+01, + 2.04838705e+00, 5.75806475e+00, 1.13467743e+02, 1.24112900e+02, + 4.35483885e+00, 3.62903237e+00, 2.34032249e+01, 3.60322571e+01, + 4.85483885e+00, 4.87096786e+00, 3.48548393e+01, 5.54354820e+01, + 9.04838753e+00, 4.54838705e+00, 6.50000000e+00, 6.90322590e+00, + 3.77419353e+00, 3.24193549e+00, 5.96774197e+00, 7.53225803e+00, + 7.58064508e+00, 6.40322590e+00, 7.98709641e+01, 1.05370964e+02, + 4.56451607e+00, 1.45161295e+00, 2.16290321e+01, 3.94193535e+01, + 4.14516115e+00, 3.51612902e+00, 9.08548355e+01, 1.12661293e+02, + 3.16129041e+00, 2.85483861e+00, 8.26612930e+01, 1.12354836e+02, + 3.64516139e+00, 3.11290312e+00, 2.53870964e+01, 3.96451607e+01, + 5.43548393e+00, 4.91935492e+00, 9.11451645e+01, 1.16016129e+02, + 1.17741938e+01, 3.66129041e+00, 1.00967741e+01, 1.54838705e+01, + 5.33870983e+00, 3.56451607e+00, 7.98387098e+00, 1.47419357e+01, + 1.10645161e+01, 4.66129017e+00, 2.44516125e+01, 2.88387089e+01, + 3.08064508e+00, 2.40322590e+00, 1.81612911e+01, 2.81451607e+01, + 4.35483885e+00, 5.75806475e+00, 9.63548355e+01, 1.13951614e+02, + 8.50000000e+00, 6.20967722e+00, 2.95967751e+01, 4.07419357e+01, + 3.58064508e+00, 6.90322590e+00, 2.43870964e+01, 3.94032249e+01, + 1.11935482e+01, 1.59838705e+01, 82., 9.75322571e+01, + 1.40322580e+01, 3.43548393e+00, 1.05967741e+01, 1.74516125e+01, + 3.95161295e+00, 2.79032254e+00, 1.84193554e+01, 4.07580643e+01, + 1.24838705e+01, 2.80645156e+00, 6.76000023e+00, 4.48000002e+00, + 3.44000006e+00, 4.55999994e+00, 2.51999998e+00, 2.40000010e+00, + 7.23999977e+00, 7.48000002e+00, 4.01199989e+01, 2.48400002e+01, + 2.86000004e+01, 34., 1.71200008e+01, 11., 2.41200008e+01, + 4.04399986e+01, 4.51199989e+01, 37., 9.93600006e+01, + 5.30400009e+01, 1.58000002e+01, 1.43199997e+01, 2.65200005e+01, + 4.93600006e+01, 2.66399994e+01, 4.50400009e+01, 1.12199997e+02, + 2.91599998e+01, 1.48800001e+01, 1.79599991e+01, 2.84400005e+01, + 3.52400017e+01, 8.88000011e+00, 5.63999987e+00, 3.16000009e+00, + 5.67999983e+00, 7.36000013e+00, 7.80000019e+00, 9.64000034e+00, + 9.43999958e+00, 5.04799995e+01, 2.93199997e+01, 2.15599995e+01, + 6.23199997e+01, 7.59199982e+01, 57., 4.02799988e+01, + 3.85200005e+01, 6.40800018e+01, 4.87599983e+01, 8.75599976e+01, + 7.40800018e+01, 5.70800018e+01, 5.74000015e+01, 6.53600006e+01, + 5.21199989e+01, 1.65200005e+01, 5.22799988e+01, 1.10400002e+02, + 24., 4.51999998e+00, 3.84000015e+01, 7.90800018e+01, + 3.33600006e+01, 9.31999969e+00, 4.07999992e+00, 2.31999993e+00, + 1.72000003e+00, 2.79999995e+00, 6.03999996e+00, 1.07200003e+01, + 9.72000027e+00, 4.14799995e+01, 2.42000008e+01, 7.36000013e+00, + 1.02799997e+01, 3.44799995e+01, 6.98799973e+01, 7.20400009e+01, + 4.37599983e+01, 4.34000015e+01, 3.52400017e+01, 1.67199993e+01, + 9.88000011e+00, 3.27599983e+01, 9.98000031e+01, 1.23919998e+02, + 5.61599998e+01, 1.50400000e+01, 3.50400009e+01, 4.93600006e+01, + 1.09600000e+01, 1.02399998e+01, 8.08000031e+01, 1.21599998e+02, + 4.54399986e+01, 6.28000021e+00, 3.24000001e+00, 1.84000003e+00, + 1.15999997e+00, 1.03999996e+00, 1.72000003e+00, 6.32000017e+00, + 6.32000017e+00, 2.91599998e+01, 2.04799995e+01, 9.35999966e+00, + 6.44000006e+00, 6.55999994e+00, 9.56000042e+00, 2.70400009e+01, + 2.91599998e+01, 3.76399994e+01, 1.97199993e+01, 7.80000019e+00, + 7.28000021e+00, 1.06800003e+01, 2.00400009e+01, 3.90400009e+01, + 3.46800003e+01, 2.05599995e+01, 1.27200003e+01, 6.84000015e+00, + 9.11999989e+00, 2.12000008e+01, 4.55600014e+01, 5.12000008e+01, + 2.33999996e+01 ] diff --git a/default/objects/vocab.yml.REMOVED.git-id b/default/objects/vocab.yml.REMOVED.git-id deleted file mode 100644 index 49a0fbe0..00000000 --- a/default/objects/vocab.yml.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -0686383891e44bb7fc50cb4fe63a988a7b2c56d9 \ No newline at end of file diff --git a/images/gaze30006.tif b/images/gaze30006.tif new file mode 100644 index 00000000..b649eeae Binary files /dev/null and b/images/gaze30006.tif differ diff --git a/images/gaze30006.tif.REMOVED.git-id b/images/gaze30006.tif.REMOVED.git-id deleted file mode 100644 index 050b3a6b..00000000 --- a/images/gaze30006.tif.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -b649eeae7c7bf75c5614fcea740c1e74154d6982 \ No newline at end of file diff --git a/images/gaze30007.tif b/images/gaze30007.tif new file mode 100644 index 00000000..ec6ed2cb Binary files /dev/null and b/images/gaze30007.tif differ diff --git a/images/gaze30007.tif.REMOVED.git-id b/images/gaze30007.tif.REMOVED.git-id deleted file mode 100644 index e5b63227..00000000 --- a/images/gaze30007.tif.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -ec6ed2cbd6cf5991e92167b09b9d3b827ac07822 \ No newline at end of file diff --git a/images/gaze30008.tif b/images/gaze30008.tif new file mode 100644 index 00000000..640cdd37 Binary files /dev/null and b/images/gaze30008.tif differ diff --git a/images/gaze30008.tif.REMOVED.git-id b/images/gaze30008.tif.REMOVED.git-id deleted file mode 100644 index a8af94d4..00000000 --- a/images/gaze30008.tif.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -640cdd37a5adba54155f7a4d0d375344d03c5b62 \ No newline at end of file diff --git a/images/gaze30009.tif b/images/gaze30009.tif new file mode 100644 index 00000000..2b2a56d9 Binary files /dev/null and b/images/gaze30009.tif differ diff --git a/images/gaze30009.tif.REMOVED.git-id b/images/gaze30009.tif.REMOVED.git-id deleted file mode 100644 index 6601bdd7..00000000 --- a/images/gaze30009.tif.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -2b2a56d9f6c7a0b13c6ddaf7449169f3b270401f \ No newline at end of file diff --git a/images/gaze30010.tif b/images/gaze30010.tif new file mode 100644 index 00000000..d09d84ee Binary files /dev/null and b/images/gaze30010.tif differ diff --git a/images/gaze30010.tif.REMOVED.git-id b/images/gaze30010.tif.REMOVED.git-id deleted file mode 100644 index 6d496d68..00000000 --- a/images/gaze30010.tif.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -d09d84ee8beb3497865144d575bfcf8af2fba0dc \ No newline at end of file diff --git a/images/gaze30011.tif b/images/gaze30011.tif new file mode 100644 index 00000000..fe5fa59d Binary files /dev/null and b/images/gaze30011.tif differ diff --git a/images/gaze30011.tif.REMOVED.git-id b/images/gaze30011.tif.REMOVED.git-id deleted file mode 100644 index 735ef32e..00000000 --- a/images/gaze30011.tif.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -fe5fa59d230b9ea10a1209aa82fa6078298fc946 \ No newline at end of file diff --git a/images/gaze30012.tif b/images/gaze30012.tif new file mode 100644 index 00000000..e2aa312a Binary files /dev/null and b/images/gaze30012.tif differ diff --git a/images/gaze30012.tif.REMOVED.git-id b/images/gaze30012.tif.REMOVED.git-id deleted file mode 100644 index 5d7f4c50..00000000 --- a/images/gaze30012.tif.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -e2aa312a40708949630f67a37de2bf1eadec8d6f \ No newline at end of file diff --git a/images/ursula_neutral.tif b/images/ursula_neutral.tif new file mode 100644 index 00000000..9ff8331d Binary files /dev/null and b/images/ursula_neutral.tif differ diff --git a/images/ursula_neutral.tif.REMOVED.git-id b/images/ursula_neutral.tif.REMOVED.git-id deleted file mode 100644 index 5c2c157a..00000000 --- a/images/ursula_neutral.tif.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -9ff8331ddbb9bbbe7c2fa0dec4872e0e2b5de4d1 \ No newline at end of file diff --git a/images/ursula_no.tif b/images/ursula_no.tif new file mode 100644 index 00000000..f64253bb Binary files /dev/null and b/images/ursula_no.tif differ diff --git a/images/ursula_no.tif.REMOVED.git-id b/images/ursula_no.tif.REMOVED.git-id deleted file mode 100644 index 4f0d516d..00000000 --- a/images/ursula_no.tif.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -f64253bb77ce192ca223a5e8792121f40e5779ca \ No newline at end of file diff --git a/images/ursula_yes.tif b/images/ursula_yes.tif new file mode 100644 index 00000000..79e35213 Binary files /dev/null and b/images/ursula_yes.tif differ diff --git a/images/ursula_yes.tif.REMOVED.git-id b/images/ursula_yes.tif.REMOVED.git-id deleted file mode 100644 index ac7317be..00000000 --- a/images/ursula_yes.tif.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -79e35213c18139c4119e44f05ffe5d0e4bf82358 \ No newline at end of file diff --git a/src/ein.cpp b/src/ein.cpp index b7243fe4..6d047d5b 100644 --- a/src/ein.cpp +++ b/src/ein.cpp @@ -13747,6 +13747,12 @@ void tryToLoadRangeMap(MachineState * ms, std::string classDir, const char *clas string thisLabelName(className); + string objectDir = ms->config.data_directory + "/objects/" + thisLabelName; + if (! boost::filesystem::exists(objectDir)) { + CONSOLE_ERROR(ms, "Could not find " << objectDir << "... loading default empty class."); + } + + { string dirToMakePath = ms->config.data_directory + "/objects/" + thisLabelName + "/ein/ir2d/"; string this_range_path = dirToMakePath + "ir2d.yml"; diff --git a/src/ein_scanning.cpp b/src/ein_scanning.cpp index 92629315..767f80ce 100644 --- a/src/ein_scanning.cpp +++ b/src/ein_scanning.cpp @@ -358,7 +358,7 @@ virtual void execute(MachineState * ms) { shared_ptr bWord = ms->popData(); if (bWord == NULL) { - cout << "oops, setClassLabels requires a number of StringWords followed by endArgs..." << endl; + CONSOLE_ERROR(ms, "oops, setClassLabels requires a number of StringWords followed by endArgs..."); ms->clearStack(); return; } else { @@ -401,7 +401,7 @@ virtual void execute(MachineState * ms) { ms->config.numClasses = ms->config.classLabels.size(); changeTargetClass(ms, 0); } else { - cout << "didn't get any valid labels, are you sure this is what you want?" << endl; + CONSOLE_ERROR(ms, "didn't get any valid labels, are you sure this is what you want?"); ms->config.classLabels.resize(0); ms->config.classPoseModels.resize(0); ms->pushWord("clearBlueBoxMemories"); diff --git a/src/ikfast/baxter_left_arm_ikfast_solver.cpp b/src/ikfast/baxter_left_arm_ikfast_solver.cpp new file mode 100644 index 00000000..2b192ede --- /dev/null +++ b/src/ikfast/baxter_left_arm_ikfast_solver.cpp @@ -0,0 +1,44539 @@ +/// autogenerated analytical inverse kinematics code from ikfast program part of OpenRAVE +/// \author Rosen Diankov +/// +/// Licensed under the Apache License, Version 2.0 (the "License"); +/// you may not use this file except in compliance with the License. +/// You may obtain a copy of the License at +/// http://www.apache.org/licenses/LICENSE-2.0 +/// +/// Unless required by applicable law or agreed to in writing, software +/// distributed under the License is distributed on an "AS IS" BASIS, +/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +/// See the License for the specific language governing permissions and +/// limitations under the License. +/// +/// ikfast version 61 generated on 2013-10-08 17:02:52.109034 +/// To compile with gcc: +/// gcc -lstdc++ ik.cpp +/// To compile without any main function as a shared object (might need -llapack): +/// gcc -fPIC -lstdc++ -DIKFAST_NO_MAIN -DIKFAST_CLIBRARY -shared -Wl,-soname,libik.so -o libik.so ik.cpp +#define IKFAST_HAS_LIBRARY +#include "ikfast.h" // found inside share/openrave-X.Y/python/ikfast.h +using namespace ikfast; + +// check if the included ikfast version matches what this file was compiled with +#define IKFAST_COMPILE_ASSERT(x) extern int __dummy[(int)x] +IKFAST_COMPILE_ASSERT(IKFAST_VERSION==61); + +#include +#include +#include +#include +#include + +#define IKFAST_STRINGIZE2(s) #s +#define IKFAST_STRINGIZE(s) IKFAST_STRINGIZE2(s) + +#ifndef IKFAST_ASSERT +#include +#include +#include + +#ifdef _MSC_VER +#ifndef __PRETTY_FUNCTION__ +#define __PRETTY_FUNCTION__ __FUNCDNAME__ +#endif +#endif + +#ifndef __PRETTY_FUNCTION__ +#define __PRETTY_FUNCTION__ __func__ +#endif + +#define IKFAST_ASSERT(b) { if( !(b) ) { std::stringstream ss; ss << "ikfast exception: " << __FILE__ << ":" << __LINE__ << ": " <<__PRETTY_FUNCTION__ << ": Assertion '" << #b << "' failed"; throw std::runtime_error(ss.str()); } } + +#endif + +#if defined(_MSC_VER) +#define IKFAST_ALIGNED16(x) __declspec(align(16)) x +#else +#define IKFAST_ALIGNED16(x) x __attribute((aligned(16))) +#endif + +#define IK2PI ((IkReal)6.28318530717959) +#define IKPI ((IkReal)3.14159265358979) +#define IKPI_2 ((IkReal)1.57079632679490) + +#ifdef _MSC_VER +#ifndef isnan +#define isnan _isnan +#endif +#endif // _MSC_VER + +// lapack routines +extern "C" { + void dgetrf_ (const int* m, const int* n, double* a, const int* lda, int* ipiv, int* info); + void zgetrf_ (const int* m, const int* n, std::complex* a, const int* lda, int* ipiv, int* info); + void dgetri_(const int* n, const double* a, const int* lda, int* ipiv, double* work, const int* lwork, int* info); + void dgesv_ (const int* n, const int* nrhs, double* a, const int* lda, int* ipiv, double* b, const int* ldb, int* info); + void dgetrs_(const char *trans, const int *n, const int *nrhs, double *a, const int *lda, int *ipiv, double *b, const int *ldb, int *info); + void dgeev_(const char *jobvl, const char *jobvr, const int *n, double *a, const int *lda, double *wr, double *wi,double *vl, const int *ldvl, double *vr, const int *ldvr, double *work, const int *lwork, int *info); +} + +using namespace std; // necessary to get std math routines + +#ifdef IKFAST_NAMESPACE +namespace IKFAST_NAMESPACE { +#endif + +inline float IKabs(float f) { return fabsf(f); } +inline double IKabs(double f) { return fabs(f); } + +inline float IKsqr(float f) { return f*f; } +inline double IKsqr(double f) { return f*f; } + +inline float IKlog(float f) { return logf(f); } +inline double IKlog(double f) { return log(f); } + +// allows asin and acos to exceed 1 +#ifndef IKFAST_SINCOS_THRESH +#define IKFAST_SINCOS_THRESH ((IkReal)0.000001) +#endif + +// used to check input to atan2 for degenerate cases +#ifndef IKFAST_ATAN2_MAGTHRESH +#define IKFAST_ATAN2_MAGTHRESH ((IkReal)2e-6) +#endif + +// minimum distance of separate solutions +#ifndef IKFAST_SOLUTION_THRESH +#define IKFAST_SOLUTION_THRESH ((IkReal)1e-6) +#endif + +inline float IKasin(float f) +{ +IKFAST_ASSERT( f > -1-IKFAST_SINCOS_THRESH && f < 1+IKFAST_SINCOS_THRESH ); // any more error implies something is wrong with the solver +if( f <= -1 ) return float(-IKPI_2); +else if( f >= 1 ) return float(IKPI_2); +return asinf(f); +} +inline double IKasin(double f) +{ +IKFAST_ASSERT( f > -1-IKFAST_SINCOS_THRESH && f < 1+IKFAST_SINCOS_THRESH ); // any more error implies something is wrong with the solver +if( f <= -1 ) return -IKPI_2; +else if( f >= 1 ) return IKPI_2; +return asin(f); +} + +// return positive value in [0,y) +inline float IKfmod(float x, float y) +{ + while(x < 0) { + x += y; + } + return fmodf(x,y); +} + +// return positive value in [0,y) +inline double IKfmod(double x, double y) +{ + while(x < 0) { + x += y; + } + return fmod(x,y); +} + +inline float IKacos(float f) +{ +IKFAST_ASSERT( f > -1-IKFAST_SINCOS_THRESH && f < 1+IKFAST_SINCOS_THRESH ); // any more error implies something is wrong with the solver +if( f <= -1 ) return float(IKPI); +else if( f >= 1 ) return float(0); +return acosf(f); +} +inline double IKacos(double f) +{ +IKFAST_ASSERT( f > -1-IKFAST_SINCOS_THRESH && f < 1+IKFAST_SINCOS_THRESH ); // any more error implies something is wrong with the solver +if( f <= -1 ) return IKPI; +else if( f >= 1 ) return 0; +return acos(f); +} +inline float IKsin(float f) { return sinf(f); } +inline double IKsin(double f) { return sin(f); } +inline float IKcos(float f) { return cosf(f); } +inline double IKcos(double f) { return cos(f); } +inline float IKtan(float f) { return tanf(f); } +inline double IKtan(double f) { return tan(f); } +inline float IKsqrt(float f) { if( f <= 0.0f ) return 0.0f; return sqrtf(f); } +inline double IKsqrt(double f) { if( f <= 0.0 ) return 0.0; return sqrt(f); } +inline float IKatan2(float fy, float fx) { + if( isnan(fy) ) { + IKFAST_ASSERT(!isnan(fx)); // if both are nan, probably wrong value will be returned + return float(IKPI_2); + } + else if( isnan(fx) ) { + return 0; + } + return atan2f(fy,fx); +} +inline double IKatan2(double fy, double fx) { + if( isnan(fy) ) { + IKFAST_ASSERT(!isnan(fx)); // if both are nan, probably wrong value will be returned + return IKPI_2; + } + else if( isnan(fx) ) { + return 0; + } + return atan2(fy,fx); +} + +inline float IKsign(float f) { + if( f > 0 ) { + return float(1); + } + else if( f < 0 ) { + return float(-1); + } + return 0; +} + +inline double IKsign(double f) { + if( f > 0 ) { + return 1.0; + } + else if( f < 0 ) { + return -1.0; + } + return 0; +} + +/// solves the forward kinematics equations. +/// \param pfree is an array specifying the free joints of the chain. +IKFAST_API void ComputeFk(const IkReal* j, IkReal* eetrans, IkReal* eerot) { +IkReal x0,x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17,x18,x19,x20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30,x31,x32,x33,x34,x35,x36,x37,x38,x39,x40,x41,x42,x43,x44,x45,x46,x47,x48,x49,x50,x51,x52,x53,x54,x55,x56,x57,x58,x59,x60,x61,x62,x63,x64,x65,x66,x67,x68,x69,x70,x71,x72,x73; +x0=IKcos(j[0]); +x1=IKcos(j[2]); +x2=IKsin(j[1]); +x3=IKsin(j[0]); +x4=IKsin(j[2]); +x5=IKsin(j[3]); +x6=IKcos(j[1]); +x7=IKcos(j[3]); +x8=IKsin(j[4]); +x9=IKcos(j[4]); +x10=IKcos(j[6]); +x11=IKsin(j[6]); +x12=IKsin(j[5]); +x13=IKcos(j[5]); +x14=((IkReal(0.0690000000000000))*(x0)); +x15=((IkReal(0.0100000000000000))*(x7)); +x16=((IkReal(1.00000000000000))*(x3)); +x17=((IkReal(0.279525000000000))*(x5)); +x18=((IkReal(1.00000000000000))*(x9)); +x19=((IkReal(0.279525000000000))*(x9)); +x20=((IkReal(1.00000000000000))*(x5)); +x21=((IkReal(0.374290000000000))*(x3)); +x22=((IkReal(0.374290000000000))*(x0)); +x23=((IkReal(1.00000000000000))*(x0)); +x24=((IkReal(0.0100000000000000))*(x2)); +x25=((IkReal(1.00000000000000))*(x8)); +x26=((IkReal(0.279525000000000))*(x8)); +x27=((IkReal(0.0690000000000000))*(x3)); +x28=((IkReal(0.0100000000000000))*(x0)); +x29=((IkReal(-1.00000000000000))*(x9)); +x30=((x2)*(x7)); +x31=((x1)*(x6)); +x32=((IkReal(-1.00000000000000))*(x12)); +x33=((x1)*(x2)); +x34=((x0)*(x4)); +x35=((x5)*(x6)); +x36=((x3)*(x6)); +x37=((x6)*(x7)); +x38=((IkReal(-1.00000000000000))*(x8)); +x39=((x1)*(x3)); +x40=((x4)*(x6)); +x41=((IkReal(-1.00000000000000))*(x13)); +x42=((x2)*(x23)*(x4)); +x43=((x23)*(x37)); +x44=((x16)*(x33)); +x45=((x16)*(x37)); +x46=((x18)*(x40)); +x47=((x39)+(((IkReal(-1.00000000000000))*(x42)))); +x48=((((IkReal(-1.00000000000000))*(x44)))+(x34)); +x49=((((IkReal(-1.00000000000000))*(x31)*(x7)))+(((x2)*(x5)))); +x50=((((x31)*(x5)))+(x30)); +x51=((x42)+(((IkReal(-1.00000000000000))*(x1)*(x16)))); +x52=((x44)+(((IkReal(-1.00000000000000))*(x23)*(x4)))); +x53=((((x23)*(x33)))+(((x16)*(x4)))); +x54=((IkReal(-1.00000000000000))*(x53)); +x55=((((x1)*(x23)))+(((x16)*(x2)*(x4)))); +x56=((x48)*(x7)); +x57=((x5)*(x52)); +x58=((x51)*(x8)); +x59=((x54)*(x7)); +x60=((x55)*(x8)); +x61=((x5)*(x53)); +x62=((x56)+(((IkReal(-1.00000000000000))*(x16)*(x35)))); +x63=((((x40)*(x8)))+(((x49)*(x9)))); +x64=((x57)+(((IkReal(-1.00000000000000))*(x45)))); +x65=((x59)+(((IkReal(-1.00000000000000))*(x0)*(x20)*(x6)))); +x66=((x61)+(((IkReal(-1.00000000000000))*(x43)))); +x67=((x13)*(x63)); +x68=((x12)*(x64)); +x69=((x60)+(((x62)*(x9)))); +x70=((x58)+(((x65)*(x9)))); +x71=((x13)*(x69)); +x72=((((IkReal(-1.00000000000000))*(x29)*(x55)))+(((x38)*(x62)))); +x73=((x13)*(x70)); +eerot[0]=((((x10)*(((((x12)*(x66)))+(x73)))))+(((x11)*(((((x38)*(x65)))+(((x29)*(x47)))))))); +eerot[1]=((((x10)*(((((IkReal(-1.00000000000000))*(x25)*(x65)))+(((IkReal(-1.00000000000000))*(x18)*(x47)))))))+(((x11)*(((((x32)*(x66)))+(((x41)*(x70)))))))); +eerot[2]=((((x13)*(((x43)+(((IkReal(-1.00000000000000))*(x20)*(x53)))))))+(((x12)*(x70)))); +IkReal x74=((IkReal(1.00000000000000))*(x35)); +IkReal x75=((IkReal(1.00000000000000))*(x4)); +IkReal x76=((IkReal(1.00000000000000))*(x33)); +eetrans[0]=((IkReal(0.0556950000000000))+(((x12)*(((((x26)*(x51)))+(((x19)*(((x59)+(((IkReal(-1.00000000000000))*(x0)*(x74)))))))))))+(((IkReal(-1.00000000000000))*(x27)*(x75)))+(x14)+(((IkReal(-1.00000000000000))*(x14)*(x76)))+(((x22)*(x37)))+(((x5)*(((((IkReal(-1.00000000000000))*(x22)*(x76)))+(((IkReal(-1.00000000000000))*(x21)*(x75)))))))+(((x9)*(((((x15)*(x54)))+(((IkReal(-1.00000000000000))*(x28)*(x74)))))))+(((x13)*(((((IkReal(0.279525000000000))*(x0)*(x37)))+(((IkReal(-1.00000000000000))*(x17)*(x53)))))))+(((IkReal(0.364420000000000))*(x0)*(x6)))+(((x8)*(((((x24)*(x34)))+(((IkReal(-0.0100000000000000))*(x39)))))))); +eerot[3]=((((x10)*(((x68)+(x71)))))+(((x11)*(x72)))); +eerot[4]=((((x10)*(x72)))+(((x11)*(((((IkReal(-1.00000000000000))*(x71)))+(((IkReal(-1.00000000000000))*(x68)))))))); +eerot[5]=((((x12)*(x69)))+(((x13)*(((((IkReal(-1.00000000000000))*(x20)*(x52)))+(x45)))))); +IkReal x77=((x3)*(x35)); +IkReal x78=((IkReal(1.00000000000000))*(x33)); +eetrans[1]=((((x12)*(((((x26)*(x55)))+(((x19)*(((x56)+(((IkReal(-1.00000000000000))*(x77)))))))))))+(((IkReal(-1.00000000000000))*(x27)*(x78)))+(x27)+(((x8)*(((((x24)*(x3)*(x4)))+(((x1)*(x28)))))))+(((x9)*(((((x15)*(x48)))+(((IkReal(-0.0100000000000000))*(x77)))))))+(((x21)*(x37)))+(((x13)*(((((IkReal(-1.00000000000000))*(x17)*(x52)))+(((IkReal(0.279525000000000))*(x36)*(x7)))))))+(((x5)*(((((x22)*(x4)))+(((IkReal(-1.00000000000000))*(x21)*(x78)))))))+(((IkReal(0.364420000000000))*(x36)))+(((x14)*(x4)))); +eerot[6]=((((x11)*(((x46)+(((x38)*(x49)))))))+(((x10)*(((((x12)*(x50)))+(x67)))))); +eerot[7]=((((x10)*(((x46)+(((IkReal(-1.00000000000000))*(x25)*(x49)))))))+(((x11)*(((((x32)*(x50)))+(((x41)*(x63)))))))); +eerot[8]=((((x13)*(((((IkReal(-1.00000000000000))*(x30)))+(((IkReal(-1.00000000000000))*(x20)*(x31)))))))+(((x12)*(x63)))); +IkReal x79=((IkReal(1.00000000000000))*(x31)); +eetrans[2]=((IkReal(0.281388000000000))+(((IkReal(-0.0690000000000000))*(x31)))+(((IkReal(0.0100000000000000))*(x40)*(x8)))+(((IkReal(-0.374290000000000))*(x30)))+(((IkReal(-0.364420000000000))*(x2)))+(((x12)*(((((x19)*(x49)))+(((x26)*(x40)))))))+(((x13)*(((((IkReal(-0.279525000000000))*(x30)))+(((IkReal(-1.00000000000000))*(x17)*(x79)))))))+(((x9)*(((((IkReal(-1.00000000000000))*(x15)*(x79)))+(((x24)*(x5)))))))+(((IkReal(-0.374290000000000))*(x31)*(x5)))); +} + +IKFAST_API int GetNumFreeParameters() { return 1; } +IKFAST_API int* GetFreeParameters() { static int freeparams[] = {5}; return freeparams; } +IKFAST_API int GetNumJoints() { return 7; } + +IKFAST_API int GetIkRealSize() { return sizeof(IkReal); } + +IKFAST_API int GetIkType() { return 0x67000001; } + +class IKSolver { +public: +IkReal j0,cj0,sj0,htj0,j1,cj1,sj1,htj1,j2,cj2,sj2,htj2,j3,cj3,sj3,htj3,j4,cj4,sj4,htj4,j6,cj6,sj6,htj6,j5,cj5,sj5,htj5,new_r00,r00,rxp0_0,new_r01,r01,rxp0_1,new_r02,r02,rxp0_2,new_r10,r10,rxp1_0,new_r11,r11,rxp1_1,new_r12,r12,rxp1_2,new_r20,r20,rxp2_0,new_r21,r21,rxp2_1,new_r22,r22,rxp2_2,new_px,px,npx,new_py,py,npy,new_pz,pz,npz,pp; +unsigned char _ij0[2], _nj0,_ij1[2], _nj1,_ij2[2], _nj2,_ij3[2], _nj3,_ij4[2], _nj4,_ij6[2], _nj6,_ij5[2], _nj5; + +bool ComputeIk(const IkReal* eetrans, const IkReal* eerot, const IkReal* pfree, IkSolutionListBase& solutions) { +j0=numeric_limits::quiet_NaN(); _ij0[0] = -1; _ij0[1] = -1; _nj0 = -1; j1=numeric_limits::quiet_NaN(); _ij1[0] = -1; _ij1[1] = -1; _nj1 = -1; j2=numeric_limits::quiet_NaN(); _ij2[0] = -1; _ij2[1] = -1; _nj2 = -1; j3=numeric_limits::quiet_NaN(); _ij3[0] = -1; _ij3[1] = -1; _nj3 = -1; j4=numeric_limits::quiet_NaN(); _ij4[0] = -1; _ij4[1] = -1; _nj4 = -1; j6=numeric_limits::quiet_NaN(); _ij6[0] = -1; _ij6[1] = -1; _nj6 = -1; _ij5[0] = -1; _ij5[1] = -1; _nj5 = 0; +for(int dummyiter = 0; dummyiter < 1; ++dummyiter) { + solutions.Clear(); +j5=pfree[0]; cj5=cos(pfree[0]); sj5=sin(pfree[0]); +r00 = eerot[0*3+0]; +r01 = eerot[0*3+1]; +r02 = eerot[0*3+2]; +r10 = eerot[1*3+0]; +r11 = eerot[1*3+1]; +r12 = eerot[1*3+2]; +r20 = eerot[2*3+0]; +r21 = eerot[2*3+1]; +r22 = eerot[2*3+2]; +px = eetrans[0]; py = eetrans[1]; pz = eetrans[2]; + +new_r00=((IkReal(-1.00000000000000))*(r01)); +new_r01=r00; +new_r02=r02; +new_px=((IkReal(-0.0556950000000000))+(((IkReal(-0.279525000000000))*(r02)))+(px)); +new_r10=((IkReal(-1.00000000000000))*(r11)); +new_r11=r10; +new_r12=r12; +new_py=((((IkReal(-0.279525000000000))*(r12)))+(py)); +new_r20=((IkReal(-1.00000000000000))*(r21)); +new_r21=r20; +new_r22=r22; +new_pz=((IkReal(-0.281388000000000))+(((IkReal(-0.279525000000000))*(r22)))+(pz)); +r00 = new_r00; r01 = new_r01; r02 = new_r02; r10 = new_r10; r11 = new_r11; r12 = new_r12; r20 = new_r20; r21 = new_r21; r22 = new_r22; px = new_px; py = new_py; pz = new_pz; +pp=(((px)*(px))+((pz)*(pz))+((py)*(py))); +npx=((((py)*(r10)))+(((pz)*(r20)))+(((px)*(r00)))); +npy=((((px)*(r01)))+(((pz)*(r21)))+(((py)*(r11)))); +npz=((((py)*(r12)))+(((pz)*(r22)))+(((px)*(r02)))); +rxp0_0=((((IkReal(-1.00000000000000))*(py)*(r20)))+(((pz)*(r10)))); +rxp0_1=((((px)*(r20)))+(((IkReal(-1.00000000000000))*(pz)*(r00)))); +rxp0_2=((((py)*(r00)))+(((IkReal(-1.00000000000000))*(px)*(r10)))); +rxp1_0=((((pz)*(r11)))+(((IkReal(-1.00000000000000))*(py)*(r21)))); +rxp1_1=((((IkReal(-1.00000000000000))*(pz)*(r01)))+(((px)*(r21)))); +rxp1_2=((((py)*(r01)))+(((IkReal(-1.00000000000000))*(px)*(r11)))); +rxp2_0=((((IkReal(-1.00000000000000))*(py)*(r22)))+(((pz)*(r12)))); +rxp2_1=((((px)*(r22)))+(((IkReal(-1.00000000000000))*(pz)*(r02)))); +rxp2_2=((((py)*(r02)))+(((IkReal(-1.00000000000000))*(px)*(r12)))); +IkReal op[72], zeror[48]; +int numroots; +IkReal x80=((IkReal(0.138000000000000))*(px)); +IkReal x81=((IkReal(0.748580000000000))*(py)); +IkReal x82=((IkReal(0.0200000000000000))*(rxp0_1)); +IkReal x83=((IkReal(0.00866840000000000))*(r20)); +IkReal x84=((IkReal(0.00728840000000000))*(r00)); +IkReal x85=((IkReal(0.0400000000000000))*(rxp1_1)); +IkReal x86=((IkReal(0.00590840000000000))*(r20)); +IkReal x87=((IkReal(0.276000000000000))*(py)); +IkReal x88=((IkReal(1.49716000000000))*(px)); +IkReal x89=((IkReal(0.0400000000000000))*(rxp0_0)); +IkReal x90=((IkReal(0.0145768000000000))*(r10)); +IkReal x91=((IkReal(0.0800000000000000))*(rxp1_0)); +IkReal x92=((IkReal(0.0173368000000000))*(r21)); +IkReal x93=((IkReal(0.0118168000000000))*(r21)); +IkReal x94=((cj5)*(r00)); +IkReal x95=((IkReal(0.0959180554000000))*(sj5)); +IkReal x96=((cj5)*(r12)); +IkReal x97=((cj5)*(r02)); +IkReal x98=((r11)*(sj5)); +IkReal x99=((r12)*(sj5)); +IkReal x100=((r02)*(sj5)); +IkReal x101=((rxp1_2)*(sj5)); +IkReal x102=((cj5)*(rxp2_2)); +IkReal x103=((r00)*(sj5)); +IkReal x104=((npx)*(sj5)); +IkReal x105=((r10)*(sj5)); +IkReal x106=((IkReal(2.00000000000000))*(pp)); +IkReal x107=((rxp0_2)*(sj5)); +IkReal x108=((IkReal(1.45768000000000))*(sj5)); +IkReal x109=((cj5)*(r01)); +IkReal x110=((IkReal(1.00000000000000))*(pp)); +IkReal x111=((cj5)*(npz)); +IkReal x112=((IkReal(4.00000000000000))*(px)); +IkReal x113=((r01)*(sj5)); +IkReal x114=((cj5)*(r10)); +IkReal x115=((npy)*(sj5)); +IkReal x116=((IkReal(2.00000000000000))*(py)); +IkReal x117=((cj5)*(r11)); +IkReal x118=((IkReal(0.0516520200000000))*(x97)); +IkReal x119=((IkReal(0.0200000000000000))*(cj5)*(npy)); +IkReal x120=((IkReal(0.00138000000000000))*(x100)); +IkReal x121=((IkReal(0.0516520200000000))*(x113)); +IkReal x122=((IkReal(0.748580000000000))*(x111)); +IkReal x123=((IkReal(0.00138000000000000))*(x109)); +IkReal x124=((IkReal(0.748580000000000))*(x115)); +IkReal x125=((IkReal(0.0200000000000000))*(npz)*(sj5)); +IkReal x126=((IkReal(0.0526208923000000))*(x98)); +IkReal x127=((IkReal(0.0526208923000000))*(x96)); +IkReal x128=((IkReal(0.00748580000000000))*(x117)); +IkReal x129=((IkReal(0.866840000000000))*(x102)); +IkReal x130=((pp)*(x96)); +IkReal x131=((IkReal(0.866840000000000))*(x101)); +IkReal x132=((IkReal(0.00748580000000000))*(x99)); +IkReal x133=((IkReal(0.728840000000000))*(cj5)*(rxp2_0)); +IkReal x134=((IkReal(0.728840000000000))*(rxp1_0)*(sj5)); +IkReal x135=((IkReal(0.0149716000000000))*(x114)); +IkReal x136=((pp)*(x98)); +IkReal x137=((IkReal(0.0479590277000000))*(x98)); +IkReal x138=((IkReal(0.0479590277000000))*(x96)); +IkReal x139=((IkReal(0.590840000000000))*(x102)); +IkReal x140=((IkReal(0.590840000000000))*(x101)); +IkReal x141=((IkReal(0.103304040000000))*(x96)); +IkReal x142=((IkReal(0.103304040000000))*(x98)); +IkReal x143=((IkReal(0.00276000000000000))*(x99)); +IkReal x144=((IkReal(0.00276000000000000))*(x117)); +IkReal x145=((IkReal(0.0149716000000000))*(x100)); +IkReal x146=((IkReal(0.105241784600000))*(x97)); +IkReal x147=((IkReal(0.105241784600000))*(x113)); +IkReal x148=((IkReal(0.0149716000000000))*(x109)); +IkReal x149=((IkReal(1.45768000000000))*(cj5)*(rxp2_1)); +IkReal x150=((rxp1_1)*(x108)); +IkReal x151=((IkReal(0.0299432000000000))*(x94)); +IkReal x152=((IkReal(0.0959180554000000))*(x97)); +IkReal x153=((r01)*(x95)); +IkReal x154=((IkReal(0.103304040000000))*(x103)); +IkReal x155=((IkReal(1.49716000000000))*(x104)); +IkReal x156=((IkReal(0.0400000000000000))*(cj5)*(npx)); +IkReal x157=((IkReal(0.00276000000000000))*(x94)); +IkReal x158=((IkReal(0.105241784600000))*(x105)); +IkReal x159=((IkReal(1.73368000000000))*(x107)); +IkReal x160=((IkReal(1.18168000000000))*(x107)); +IkReal x161=((r10)*(x95)); +IkReal x162=((x115)*(x116)); +IkReal x163=((x111)*(x116)); +IkReal x164=((x110)*(x98)); +IkReal x165=((IkReal(4.00000000000000))*(py)*(x104)); +IkReal x166=((x105)*(x106)); +IkReal x167=((x112)*(x115)); +IkReal x168=((x111)*(x112)); +IkReal x169=((x106)*(x113)); +IkReal x170=((x106)*(x97)); +IkReal x171=((IkReal(4.00000000000000))*(pp)*(x103)); +IkReal x172=((IkReal(8.00000000000000))*(px)*(x104)); +IkReal x173=((x110)*(x96)); +IkReal x174=((((IkReal(-1.00000000000000))*(rxp0_0)*(x108)))+(((IkReal(-0.0145768000000000))*(r01)))); +IkReal x175=((((IkReal(0.00552000000000000))*(x114)))+(((IkReal(-0.206608080000000))*(x105)))); +IkReal x176=((((IkReal(-0.0291536000000000))*(r11)))+(((IkReal(-2.91536000000000))*(rxp0_1)*(sj5)))); +IkReal x177=((x133)+(x84)); +IkReal x178=((((IkReal(0.0145768000000000))*(r01)))+(((rxp0_0)*(x108)))); +IkReal x179=((x129)+(x83)); +IkReal x180=((x130)+(x81)); +IkReal x181=((x159)+(x92)); +IkReal x182=((IkReal(0.00739106770000000))+(x123)+(pp)); +IkReal x183=((x119)+(x80)); +IkReal x184=((x124)+(x80)); +IkReal x185=((IkReal(0.00739106770000000))+(x121)+(pp)); +IkReal x186=((x160)+(x93)); +IkReal x187=((x134)+(x133)); +IkReal x188=((x173)+(x81)); +IkReal x189=((x139)+(x140)); +IkReal x190=((x170)+(x88)); +IkReal x191=((x126)+(x131)); +IkReal x192=((x125)+(x122)); +IkReal x193=((x172)+(x91)); +IkReal x194=((x165)+(x85)); +IkReal x195=((x141)+(x143)); +IkReal x196=((x177)+(((IkReal(-1.00000000000000))*(x134)))); +IkReal x197=((x187)+(((IkReal(-1.00000000000000))*(x84)))); +IkReal x198=((((IkReal(-1.00000000000000))*(x150)))+(x149)+(x90)); +IkReal x199=((x150)+(((IkReal(-1.00000000000000))*(x90)))+(x149)); +IkReal x200=((((IkReal(-1.00000000000000))*(x177)))+(x134)); +IkReal x201=((((IkReal(-1.00000000000000))*(x187)))+(x84)); +IkReal x202=((x163)+(x132)); +IkReal x203=((x127)+(x162)); +IkReal x204=((x153)+(x167)); +IkReal x205=((x168)+(x145)); +IkReal x206=((x171)+(x151)); +IkReal x207=((x166)+(x135)); +IkReal x208=((x162)+(x137)); +IkReal x209=((x128)+(x136)+(x82)); +IkReal x210=((x128)+(x164)+(x82)); +IkReal x211=((x169)+(x148)+(x89)); +IkReal x212=((x124)+(x120)+(x118)); +IkReal x213=((x208)+(x86)); +IkReal x214=((x194)+(x161)); +IkReal x215=((x120)+(x119)+(x118)); +IkReal x216=((x158)+(x207)); +IkReal x217=((x152)+(x205)); +IkReal x218=((((IkReal(-1.00000000000000))*(x154)))+(x157)+(x155)+(((IkReal(-1.00000000000000))*(x156)))); +IkReal x219=((x155)+(x154)+(((IkReal(-1.00000000000000))*(x157)))+(((IkReal(-1.00000000000000))*(x156)))); +IkReal x220=((((IkReal(-1.00000000000000))*(x142)))+(x195)+(x144)+(((IkReal(-1.00000000000000))*(x87)))); +IkReal x221=((x195)+(x142)+(((IkReal(-1.00000000000000))*(x144)))+(((IkReal(-1.00000000000000))*(x87)))); +IkReal x222=((((IkReal(-1.00000000000000))*(x192)))+(((IkReal(-1.00000000000000))*(x183)))+(x212)+(x182)+(((IkReal(-1.00000000000000))*(x121)))); +IkReal x223=((((IkReal(-1.00000000000000))*(x192)))+(x215)+(x185)+(((IkReal(-1.00000000000000))*(x184)))+(((IkReal(-1.00000000000000))*(x123)))); +IkReal x224=((((IkReal(-1.00000000000000))*(x192)))+(((IkReal(-1.00000000000000))*(x215)))+(x184)+(x185)+(((IkReal(-1.00000000000000))*(x123)))); +IkReal x225=((((IkReal(-1.00000000000000))*(x192)))+(((IkReal(-1.00000000000000))*(x212)))+(x182)+(x183)+(((IkReal(-1.00000000000000))*(x121)))); +op[0]=x222; +op[1]=IkReal(0); +op[2]=x218; +op[3]=IkReal(0); +op[4]=x223; +op[5]=IkReal(0); +op[6]=IkReal(0); +op[7]=x222; +op[8]=IkReal(0); +op[9]=x218; +op[10]=IkReal(0); +op[11]=x223; +op[12]=((((IkReal(-1.00000000000000))*(x210)))+(x179)+(((IkReal(-1.00000000000000))*(x191)))+(((IkReal(-1.00000000000000))*(x202)))+(x180)+(x203)); +op[13]=x196; +op[14]=((x194)+(((IkReal(-1.00000000000000))*(x181)))+(((IkReal(-1.00000000000000))*(x216)))); +op[15]=x174; +op[16]=((((IkReal(-1.00000000000000))*(x202)))+(x191)+(x180)+(x127)+(x129)+(x209)+(((IkReal(-1.00000000000000))*(x83)))+(((IkReal(-1.00000000000000))*(x162)))); +op[17]=x197; +op[18]=x196; +op[19]=((((IkReal(-1.00000000000000))*(x86)))+(((IkReal(-1.00000000000000))*(x210)))+(((IkReal(-1.00000000000000))*(x202)))+(((IkReal(-1.00000000000000))*(x139)))+(((IkReal(-1.00000000000000))*(x138)))+(x180)+(x208)+(x140)); +op[20]=x174; +op[21]=((x214)+(x186)+(((IkReal(-1.00000000000000))*(x207)))); +op[22]=x197; +op[23]=((((IkReal(-1.00000000000000))*(x189)))+(((IkReal(-1.00000000000000))*(x202)))+(((IkReal(-1.00000000000000))*(x138)))+(x180)+(x209)+(x86)+(((IkReal(-1.00000000000000))*(x208)))); +op[24]=x220; +op[25]=IkReal(0); +op[26]=x175; +op[27]=IkReal(0); +op[28]=x221; +op[29]=IkReal(0); +op[30]=IkReal(0); +op[31]=x220; +op[32]=IkReal(0); +op[33]=x175; +op[34]=IkReal(0); +op[35]=x221; +op[36]=((((IkReal(-1.00000000000000))*(x167)))+(x211)+(((IkReal(-1.00000000000000))*(x146)))+(x205)+(((IkReal(-1.00000000000000))*(x190)))+(x147)); +op[37]=x198; +op[38]=((((IkReal(-1.00000000000000))*(x193)))+(x206)+(((IkReal(0.210483569200000))*(x103)))); +op[39]=x176; +op[40]=((((IkReal(-1.00000000000000))*(x146)))+(x167)+(x205)+(((IkReal(-1.00000000000000))*(x147)))+(((IkReal(-1.00000000000000))*(x190)))+(((IkReal(-1.00000000000000))*(x211)))); +op[41]=x199; +op[42]=x198; +op[43]=((((IkReal(-1.00000000000000))*(x204)))+(x211)+(x217)+(((IkReal(-1.00000000000000))*(x190)))); +op[44]=x176; +op[45]=((((IkReal(-1.00000000000000))*(x193)))+(x206)+(((IkReal(-0.191836110800000))*(x103)))); +op[46]=x199; +op[47]=((x217)+(x204)+(((IkReal(-1.00000000000000))*(x190)))+(((IkReal(-1.00000000000000))*(x211)))); +op[48]=x224; +op[49]=IkReal(0); +op[50]=x219; +op[51]=IkReal(0); +op[52]=x225; +op[53]=IkReal(0); +op[54]=IkReal(0); +op[55]=x224; +op[56]=IkReal(0); +op[57]=x219; +op[58]=IkReal(0); +op[59]=x225; +op[60]=((x179)+(((IkReal(-1.00000000000000))*(x188)))+(((IkReal(-1.00000000000000))*(x203)))+(((IkReal(-1.00000000000000))*(x131)))+(x126)+(x202)+(x209)); +op[61]=x200; +op[62]=((x216)+(((IkReal(-1.00000000000000))*(x181)))+(((IkReal(-1.00000000000000))*(x194)))); +op[63]=x178; +op[64]=((((IkReal(-1.00000000000000))*(x210)))+(((IkReal(-1.00000000000000))*(x188)))+(((IkReal(-1.00000000000000))*(x126)))+(((IkReal(-1.00000000000000))*(x127)))+(x129)+(x162)+(x202)+(((IkReal(-1.00000000000000))*(x83)))+(x131)); +op[65]=x201; +op[66]=x200; +op[67]=((((IkReal(-1.00000000000000))*(x188)))+(((IkReal(-1.00000000000000))*(x139)))+(((IkReal(-1.00000000000000))*(x213)))+(x202)+(x209)+(x138)+(x140)); +op[68]=x178; +op[69]=((((IkReal(-1.00000000000000))*(x214)))+(x186)+(x207)); +op[70]=x201; +op[71]=((((IkReal(-1.00000000000000))*(x210)))+(((IkReal(-1.00000000000000))*(x188)))+(((IkReal(-1.00000000000000))*(x189)))+(x213)+(x202)+(x138)); +solvedialyticpoly8qep(op,zeror,numroots); +IkReal j0array[16], cj0array[16], sj0array[16], j6array[16], cj6array[16], sj6array[16], j1array[16], cj1array[16], sj1array[16]; +int numsolutions = 0; +for(int ij0 = 0; ij0 < numroots; ij0 += 3) +{ +IkReal htj0 = zeror[ij0+0], htj6 = zeror[ij0+1], htj1 = zeror[ij0+2]; +j0array[numsolutions]=((IkReal(2.00000000000000))*(atan(htj0))); +j6array[numsolutions]=((IkReal(2.00000000000000))*(atan(htj6))); +j1array[numsolutions]=((IkReal(2.00000000000000))*(atan(htj1))); +IkReal x226=(htj0)*(htj0); +IkReal x227=(htj6)*(htj6); +IkReal x228=(htj1)*(htj1); +cj0array[numsolutions]=((((IKabs(((IkReal(1.00000000000000))+(x226))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+(x226)))):(IkReal)1.0e30))*(((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x226)))))); +cj6array[numsolutions]=((((IKabs(((IkReal(1.00000000000000))+(x227))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+(x227)))):(IkReal)1.0e30))*(((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x227)))))); +cj1array[numsolutions]=((((IKabs(((IkReal(1.00000000000000))+(x228))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+(x228)))):(IkReal)1.0e30))*(((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x228)))))); +sj0array[numsolutions]=((IkReal(2.00000000000000))*(htj0)*(((IKabs(((IkReal(1.00000000000000))+((htj0)*(htj0)))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+((htj0)*(htj0))))):(IkReal)1.0e30))); +sj6array[numsolutions]=((IkReal(2.00000000000000))*(htj6)*(((IKabs(((IkReal(1.00000000000000))+((htj6)*(htj6)))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+((htj6)*(htj6))))):(IkReal)1.0e30))); +sj1array[numsolutions]=((IkReal(2.00000000000000))*(htj1)*(((IKabs(((IkReal(1.00000000000000))+((htj1)*(htj1)))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+((htj1)*(htj1))))):(IkReal)1.0e30))); +if( j0array[numsolutions] > IKPI ) +{ + j0array[numsolutions]-=IK2PI; +} +else if( j0array[numsolutions] < -IKPI ) +{ + j0array[numsolutions]+=IK2PI; +} +if( j6array[numsolutions] > IKPI ) +{ + j6array[numsolutions]-=IK2PI; +} +else if( j6array[numsolutions] < -IKPI ) +{ + j6array[numsolutions]+=IK2PI; +} +if( j1array[numsolutions] > IKPI ) +{ + j1array[numsolutions]-=IK2PI; +} +else if( j1array[numsolutions] < -IKPI ) +{ + j1array[numsolutions]+=IK2PI; +} +numsolutions++; +} +bool j0valid[16]={true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true}; +_nj0 = 16; +_nj6 = 1; +_nj1 = 1; +for(int ij0 = 0; ij0 < numsolutions; ++ij0) + { +if( !j0valid[ij0] ) +{ + continue; +} +_ij0[0] = ij0; _ij0[1] = -1; +_ij6[0] = 0; _ij6[1] = -1; +_ij1[0] = 0; _ij1[1] = -1; +for(int iij0 = ij0+1; iij0 < numsolutions; ++iij0) +{ +if( !j0valid[iij0] ) { continue; } +if( IKabs(cj0array[ij0]-cj0array[iij0]) < IKFAST_SOLUTION_THRESH && IKabs(sj0array[ij0]-sj0array[iij0]) < IKFAST_SOLUTION_THRESH && IKabs(cj6array[ij0]-cj6array[iij0]) < IKFAST_SOLUTION_THRESH && IKabs(sj6array[ij0]-sj6array[iij0]) < IKFAST_SOLUTION_THRESH && IKabs(cj1array[ij0]-cj1array[iij0]) < IKFAST_SOLUTION_THRESH && IKabs(sj1array[ij0]-sj1array[iij0]) < IKFAST_SOLUTION_THRESH && 1 ) +{ + j0valid[iij0]=false; _ij0[1] = iij0; _ij6[1] = 0; _ij1[1] = 0; break; +} +} + j0 = j0array[ij0]; cj0 = cj0array[ij0]; sj0 = sj0array[ij0]; + + j6 = j6array[ij0]; cj6 = cj6array[ij0]; sj6 = sj6array[ij0]; + + j1 = j1array[ij0]; cj1 = cj1array[ij0]; sj1 = sj1array[ij0]; + +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[2]; +IkReal x229=((cj0)*(cj5)); +IkReal x230=((IkReal(0.374290000000000))*(sj0)); +IkReal x231=((cj6)*(r11)); +IkReal x232=((IkReal(0.0100000000000000))*(sj6)); +IkReal x233=((cj6)*(r01)); +IkReal x234=((IkReal(0.0100000000000000))*(sj0)); +IkReal x235=((cj0)*(sj5)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(0.433420000000000))+(((cj5)*(r10)*(sj0)*(x232)))+(((IkReal(-1.00000000000000))*(r10)*(sj5)*(sj6)*(x230)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-0.374290000000000))*(r00)*(sj6)*(x235)))+(((IkReal(-1.00000000000000))*(sj5)*(x230)*(x231)))+(((IkReal(0.0100000000000000))*(r02)*(x235)))+(((IkReal(-0.374290000000000))*(x233)*(x235)))+(((r12)*(sj5)*(x234)))+(((r00)*(x229)*(x232)))+(((IkReal(0.0100000000000000))*(x229)*(x233)))+(((cj5)*(x231)*(x234)))+(((cj5)*(r12)*(x230)))+(((IkReal(-1.00000000000000))*(py)*(sj0)))+(((IkReal(0.374290000000000))*(r02)*(x229)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 ) +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x236=((cj0)*(r11)); +IkReal x237=((r01)*(sj0)); +IkReal x238=((cj0)*(r10)); +IkReal x239=((IkReal(0.144927536231884))*(sj5)); +IkReal x240=((IkReal(5.42449275362319))*(cj5)); +IkReal x241=((r00)*(sj0)); +IkReal x242=((cj0)*(r12)); +IkReal x243=((r02)*(sj0)); +IkReal x244=((IkReal(5.42449275362319))*(cj6)*(sj5)); +IkReal x245=((IkReal(5.42449275362319))*(sj5)*(sj6)); +IkReal x246=((IkReal(0.144927536231884))*(cj5)*(sj6)); +IkReal x247=((IkReal(0.144927536231884))*(cj5)*(cj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(x238)*(x246)))+(((x241)*(x246)))+(((x240)*(x243)))+(((IkReal(-1.00000000000000))*(x236)*(x247)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x239)*(x242)))+(((x236)*(x244)))+(((x238)*(x245)))+(((IkReal(-1.00000000000000))*(x241)*(x245)))+(((IkReal(-1.00000000000000))*(x240)*(x242)))+(((IkReal(-1.00000000000000))*(x237)*(x244)))+(((x239)*(x243)))+(((x237)*(x247))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r22)*(x240)))+(((IkReal(-14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(r20)*(x245)))+(((r22)*(x239)))+(((r21)*(x247)))+(((IkReal(-1.00000000000000))*(r21)*(x244)))+(((r20)*(x246))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x238)*(x246)))+(((x241)*(x246)))+(((x240)*(x243)))+(((IkReal(-1.00000000000000))*(x236)*(x247)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x239)*(x242)))+(((x236)*(x244)))+(((x238)*(x245)))+(((IkReal(-1.00000000000000))*(x241)*(x245)))+(((IkReal(-1.00000000000000))*(x240)*(x242)))+(((IkReal(-1.00000000000000))*(x237)*(x244)))+(((x239)*(x243)))+(((x237)*(x247)))))+IKsqr(((((r22)*(x240)))+(((IkReal(-14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(r20)*(x245)))+(((r22)*(x239)))+(((r21)*(x247)))+(((IkReal(-1.00000000000000))*(r21)*(x244)))+(((r20)*(x246)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x238)*(x246)))+(((x241)*(x246)))+(((x240)*(x243)))+(((IkReal(-1.00000000000000))*(x236)*(x247)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x239)*(x242)))+(((x236)*(x244)))+(((x238)*(x245)))+(((IkReal(-1.00000000000000))*(x241)*(x245)))+(((IkReal(-1.00000000000000))*(x240)*(x242)))+(((IkReal(-1.00000000000000))*(x237)*(x244)))+(((x239)*(x243)))+(((x237)*(x247)))), ((((r22)*(x240)))+(((IkReal(-14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(r20)*(x245)))+(((r22)*(x239)))+(((r21)*(x247)))+(((IkReal(-1.00000000000000))*(r21)*(x244)))+(((r20)*(x246))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[2]; +IkReal x248=((cj6)*(r11)); +IkReal x249=((IkReal(0.374290000000000))*(sj0)); +IkReal x250=((IkReal(0.0100000000000000))*(cj5)); +IkReal x251=((cj6)*(r21)); +IkReal x252=((r10)*(sj6)); +IkReal x253=((IkReal(0.374290000000000))*(sj5)); +IkReal x254=((IkReal(0.0100000000000000))*(sj5)); +IkReal x255=((cj6)*(r01)); +IkReal x256=((r20)*(sj6)); +IkReal x257=((IkReal(0.374290000000000))*(cj5)); +IkReal x258=((cj0)*(r12)); +IkReal x259=((r00)*(sj6)); +IkReal x260=((cj0)*(x253)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r22)*(x254)))+(((x253)*(x256)))+(((IkReal(0.0690000000000000))*(IKcos(j2))))+(((IkReal(-1.00000000000000))*(x250)*(x256)))+(((IkReal(-1.00000000000000))*(x250)*(x251)))+(pz)+(((x251)*(x253)))+(((IkReal(-1.00000000000000))*(r22)*(x257)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x254)))+(((IkReal(-1.00000000000000))*(sj0)*(x250)*(x255)))+(((IkReal(-1.00000000000000))*(sj0)*(x250)*(x259)))+(((IkReal(-1.00000000000000))*(cj0)*(py)))+(((IkReal(-1.00000000000000))*(x252)*(x260)))+(((cj0)*(x248)*(x250)))+(((sj5)*(x249)*(x259)))+(((IkReal(-1.00000000000000))*(x248)*(x260)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x249)))+(((x254)*(x258)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((sj5)*(x249)*(x255)))+(((cj0)*(x250)*(x252)))+(((x257)*(x258)))+(((px)*(sj0)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst40; +IkReal x261=(sj6)*(sj6); +IkReal x262=(cj6)*(cj6); +IkReal x263=((r10)*(sj0)); +IkReal x264=((r22)*(sj5)); +IkReal x265=((cj0)*(cj5)); +IkReal x266=((IkReal(1.00000000000000))*(r20)); +IkReal x267=((cj0)*(sj6)); +IkReal x268=((r21)*(sj5)); +IkReal x269=((sj0)*(sj6)); +IkReal x270=((cj6)*(sj5)); +IkReal x271=((r21)*(x262)); +IkReal x272=((cj5)*(r11)*(sj0)); +IkReal x273=((r21)*(x261)); +gconst40=IKsign(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x266)*(x270)))+(((cj5)*(x263)*(x271)))+(((cj6)*(x263)*(x264)))+(((IkReal(-1.00000000000000))*(r01)*(x264)*(x267)))+(((cj0)*(cj6)*(r00)*(x264)))+(((IkReal(-1.00000000000000))*(r01)*(x262)*(x265)*(x266)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x266)*(x270)))+(((IkReal(-1.00000000000000))*(x261)*(x266)*(x272)))+(((IkReal(-1.00000000000000))*(r11)*(x264)*(x269)))+(((cj5)*(x263)*(x273)))+(((r02)*(x267)*(x268)))+(((r00)*(x265)*(x271)))+(((r00)*(x265)*(x273)))+(((r12)*(x268)*(x269)))+(((IkReal(-1.00000000000000))*(x262)*(x266)*(x272)))+(((IkReal(-1.00000000000000))*(r01)*(x261)*(x265)*(x266))))); +IkReal x274=(sj6)*(sj6); +IkReal x275=(cj6)*(cj6); +IkReal x276=((r10)*(sj0)); +IkReal x277=((r22)*(sj5)); +IkReal x278=((cj0)*(cj5)); +IkReal x279=((IkReal(1.00000000000000))*(r20)); +IkReal x280=((cj0)*(sj6)); +IkReal x281=((r21)*(sj5)); +IkReal x282=((sj0)*(sj6)); +IkReal x283=((cj6)*(sj5)); +IkReal x284=((r21)*(x275)); +IkReal x285=((cj5)*(r11)*(sj0)); +IkReal x286=((r21)*(x274)); +dummyeval[0]=((((cj5)*(x276)*(x284)))+(((IkReal(-1.00000000000000))*(r01)*(x275)*(x278)*(x279)))+(((r12)*(x281)*(x282)))+(((IkReal(-1.00000000000000))*(x275)*(x279)*(x285)))+(((cj0)*(cj6)*(r00)*(x277)))+(((IkReal(-1.00000000000000))*(r01)*(x274)*(x278)*(x279)))+(((cj5)*(x276)*(x286)))+(((r02)*(x280)*(x281)))+(((IkReal(-1.00000000000000))*(r11)*(x277)*(x282)))+(((IkReal(-1.00000000000000))*(x274)*(x279)*(x285)))+(((IkReal(-1.00000000000000))*(r01)*(x277)*(x280)))+(((cj6)*(x276)*(x277)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x279)*(x283)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x279)*(x283)))+(((r00)*(x278)*(x286)))+(((r00)*(x278)*(x284)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst39; +IkReal x287=(cj6)*(cj6); +IkReal x288=(sj6)*(sj6); +IkReal x289=((IkReal(1.00000000000000))*(r01)); +IkReal x290=((sj0)*(sj5)); +IkReal x291=((cj6)*(r22)); +IkReal x292=((r21)*(sj6)); +IkReal x293=((r00)*(r21)); +IkReal x294=((cj0)*(sj5)); +IkReal x295=((cj6)*(r20)); +IkReal x296=((r22)*(sj6)); +IkReal x297=((cj0)*(cj5)); +IkReal x298=((IkReal(1.00000000000000))*(r10)); +IkReal x299=((cj5)*(sj0)); +IkReal x300=((r20)*(x288)); +IkReal x301=((x287)*(x299)); +gconst39=IKsign(((((IkReal(-1.00000000000000))*(x289)*(x299)*(x300)))+(((IkReal(-1.00000000000000))*(x291)*(x294)*(x298)))+(((IkReal(-1.00000000000000))*(r02)*(x290)*(x295)))+(((r11)*(x297)*(x300)))+(((r12)*(x294)*(x295)))+(((IkReal(-1.00000000000000))*(r21)*(x288)*(x297)*(x298)))+(((IkReal(-1.00000000000000))*(x289)*(x290)*(x296)))+(((x293)*(x301)))+(((r11)*(r20)*(x287)*(x297)))+(((IkReal(-1.00000000000000))*(r21)*(x287)*(x297)*(x298)))+(((r02)*(x290)*(x292)))+(((IkReal(-1.00000000000000))*(r20)*(x289)*(x301)))+(((x288)*(x293)*(x299)))+(((r11)*(x294)*(x296)))+(((IkReal(-1.00000000000000))*(r12)*(x292)*(x294)))+(((r00)*(x290)*(x291))))); +IkReal x302=(cj6)*(cj6); +IkReal x303=(sj6)*(sj6); +IkReal x304=((IkReal(1.00000000000000))*(r01)); +IkReal x305=((sj0)*(sj5)); +IkReal x306=((cj6)*(r22)); +IkReal x307=((r21)*(sj6)); +IkReal x308=((r00)*(r21)); +IkReal x309=((cj0)*(sj5)); +IkReal x310=((cj6)*(r20)); +IkReal x311=((r22)*(sj6)); +IkReal x312=((cj0)*(cj5)); +IkReal x313=((IkReal(1.00000000000000))*(r10)); +IkReal x314=((cj5)*(sj0)); +IkReal x315=((r20)*(x303)); +IkReal x316=((x302)*(x314)); +dummyeval[0]=((((x303)*(x308)*(x314)))+(((x308)*(x316)))+(((IkReal(-1.00000000000000))*(x304)*(x314)*(x315)))+(((r00)*(x305)*(x306)))+(((IkReal(-1.00000000000000))*(x304)*(x305)*(x311)))+(((IkReal(-1.00000000000000))*(r21)*(x302)*(x312)*(x313)))+(((r11)*(x312)*(x315)))+(((IkReal(-1.00000000000000))*(r21)*(x303)*(x312)*(x313)))+(((r02)*(x305)*(x307)))+(((IkReal(-1.00000000000000))*(x306)*(x309)*(x313)))+(((IkReal(-1.00000000000000))*(r12)*(x307)*(x309)))+(((IkReal(-1.00000000000000))*(r02)*(x305)*(x310)))+(((r11)*(r20)*(x302)*(x312)))+(((r11)*(x309)*(x311)))+(((r12)*(x309)*(x310)))+(((IkReal(-1.00000000000000))*(r20)*(x304)*(x316)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x317=((cj5)*(r22)); +IkReal x318=((IkReal(0.374290000000000))*(sj5)); +IkReal x319=((cj0)*(sj6)); +IkReal x320=((cj6)*(r21)); +IkReal x321=((IkReal(0.0100000000000000))*(sj5)); +IkReal x322=((cj0)*(r02)); +IkReal x323=((IkReal(0.0100000000000000))*(cj5)); +IkReal x324=((IkReal(1.00000000000000))*(py)); +IkReal x325=((r01)*(sj0)); +IkReal x326=((r20)*(sj6)); +IkReal x327=((r11)*(sj0)); +IkReal x328=((IkReal(0.374290000000000))*(cj5)); +IkReal x329=((cj0)*(r12)); +IkReal x330=((sj0)*(x328)); +IkReal x331=((cj6)*(x323)); +IkReal x332=((r10)*(sj0)*(sj6)); +IkReal x333=((r00)*(sj0)*(sj6)); +IkReal x334=((cj0)*(cj6)*(x318)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x317)))+(((sj5)*(x320)))+(((sj5)*(x326)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x320)*(x323)))+(((x318)*(x326)))+(((IkReal(-1.00000000000000))*(r22)*(x321)))+(((IkReal(-0.374290000000000))*(x317)))+(((x318)*(x320)))+(pz)+(((IkReal(-1.00000000000000))*(x323)*(x326)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x334)))+(((IkReal(-1.00000000000000))*(x323)*(x333)))+(((r10)*(x319)*(x323)))+(((IkReal(-1.00000000000000))*(r02)*(x330)))+(((x328)*(x329)))+(((cj6)*(x318)*(x325)))+(((x321)*(x329)))+(((IkReal(-1.00000000000000))*(cj0)*(x324)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x321)))+(((x318)*(x333)))+(((cj0)*(r11)*(x331)))+(((IkReal(-1.00000000000000))*(x325)*(x331)))+(((IkReal(-1.00000000000000))*(r10)*(x318)*(x319)))+(((px)*(sj0)))); +evalcond[4]=((IkReal(0.433420000000000))+(((r00)*(x319)*(x323)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x323)*(x332)))+(((x322)*(x328)))+(((r12)*(sj0)*(x321)))+(((cj0)*(r01)*(x331)))+(((x321)*(x322)))+(((IkReal(-1.00000000000000))*(r01)*(x334)))+(((IkReal(-1.00000000000000))*(r00)*(x318)*(x319)))+(((IkReal(-1.00000000000000))*(sj0)*(x324)))+(((r12)*(x330)))+(((x327)*(x331)))+(((IkReal(-1.00000000000000))*(x318)*(x332)))+(((IkReal(-1.00000000000000))*(cj6)*(x318)*(x327)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x335=((cj0)*(cj5)); +IkReal x336=((IkReal(1.00000000000000))*(cj0)); +IkReal x337=((cj6)*(r11)); +IkReal x338=((r10)*(sj6)); +IkReal x339=((cj5)*(sj0)); +IkReal x340=((r00)*(sj5)*(sj6)); +IkReal x341=((cj6)*(r01)*(sj5)); +IkReal x342=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x336)*(x338)))+(((IkReal(-1.00000000000000))*(r02)*(x339)))+(((r12)*(x335)))+(((sj0)*(x341)))+(((IkReal(-1.00000000000000))*(sj5)*(x336)*(x337)))+(((sj0)*(x340))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r12)*(x339)))+(((r02)*(x335)))+(((IkReal(-1.00000000000000))*(x336)*(x340)))+(((IkReal(-1.00000000000000))*(x336)*(x341)))+(((IkReal(-1.00000000000000))*(x337)*(x342)))+(((IkReal(-1.00000000000000))*(x338)*(x342))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x336)*(x338)))+(((IkReal(-1.00000000000000))*(r02)*(x339)))+(((r12)*(x335)))+(((sj0)*(x341)))+(((IkReal(-1.00000000000000))*(sj5)*(x336)*(x337)))+(((sj0)*(x340)))))+IKsqr(((((r12)*(x339)))+(((r02)*(x335)))+(((IkReal(-1.00000000000000))*(x336)*(x340)))+(((IkReal(-1.00000000000000))*(x336)*(x341)))+(((IkReal(-1.00000000000000))*(x337)*(x342)))+(((IkReal(-1.00000000000000))*(x338)*(x342)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x336)*(x338)))+(((IkReal(-1.00000000000000))*(r02)*(x339)))+(((r12)*(x335)))+(((sj0)*(x341)))+(((IkReal(-1.00000000000000))*(sj5)*(x336)*(x337)))+(((sj0)*(x340)))), ((((r12)*(x339)))+(((r02)*(x335)))+(((IkReal(-1.00000000000000))*(x336)*(x340)))+(((IkReal(-1.00000000000000))*(x336)*(x341)))+(((IkReal(-1.00000000000000))*(x337)*(x342)))+(((IkReal(-1.00000000000000))*(x338)*(x342))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x343=((cj0)*(cj5)); +IkReal x344=((IkReal(1.00000000000000))*(cj0)); +IkReal x345=((cj6)*(r11)); +IkReal x346=((r10)*(sj6)); +IkReal x347=((cj5)*(sj0)); +IkReal x348=((r00)*(sj5)*(sj6)); +IkReal x349=((cj6)*(r01)*(sj5)); +IkReal x350=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj5)*(x344)*(x346)))+(((IkReal(-1.00000000000000))*(r02)*(x347)))+(((r12)*(x343)))+(((sj0)*(x348)))+(((sj0)*(x349)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((IkReal(-1.00000000000000))*(sj5)*(x344)*(x345)))); +evalcond[1]=((((r12)*(x347)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(x344)*(x348)))+(((IkReal(-1.00000000000000))*(x346)*(x350)))+(((IkReal(-1.00000000000000))*(x344)*(x349)))+(((IkReal(-1.00000000000000))*(x345)*(x350)))+(((r02)*(x343)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst46; +IkReal x351=(cj5)*(cj5); +IkReal x352=(r20)*(r20); +IkReal x353=(sj6)*(sj6); +IkReal x354=(cj6)*(cj6); +IkReal x355=(r21)*(r21); +IkReal x356=((cj6)*(r21)); +IkReal x357=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x358=((cj5)*(r22)*(sj5)); +gconst46=IKsign((((((r22)*(r22))*((sj5)*(sj5))))+(((x353)*(x355)))+(((IkReal(2.00000000000000))*(x356)*(x358)))+(((x357)*(x358)))+(((IkReal(-1.00000000000000))*(x356)*(x357)))+(((x351)*(x356)*(x357)))+(((x351)*(x352)*(x353)))+(((x351)*(x354)*(x355)))+(((x352)*(x354))))); +IkReal x359=(cj5)*(cj5); +IkReal x360=(r20)*(r20); +IkReal x361=(sj6)*(sj6); +IkReal x362=(cj6)*(cj6); +IkReal x363=(r21)*(r21); +IkReal x364=((cj6)*(r21)); +IkReal x365=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x366=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x359)*(x364)*(x365)))+(((x365)*(x366)))+((((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x364)*(x365)))+(((x359)*(x360)*(x361)))+(((x360)*(x362)))+(((x359)*(x362)*(x363)))+(((IkReal(2.00000000000000))*(x364)*(x366)))+(((x361)*(x363)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst47; +IkReal x367=(cj6)*(cj6); +IkReal x368=(sj6)*(sj6); +IkReal x369=((IkReal(1.00000000000000))*(r21)); +IkReal x370=((cj6)*(r20)); +IkReal x371=((r22)*(sj5)); +IkReal x372=((r01)*(sj0)); +IkReal x373=((r00)*(sj0)); +IkReal x374=((cj0)*(r10)); +IkReal x375=((r02)*(sj0)*(sj5)); +IkReal x376=((cj5)*(x367)); +IkReal x377=((cj0)*(r12)*(sj5)); +IkReal x378=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x379=((cj5)*(x368)); +IkReal x380=((r20)*(x379)); +gconst47=IKsign(((((IkReal(-1.00000000000000))*(cj6)*(x371)*(x373)))+(((IkReal(-1.00000000000000))*(sj6)*(x369)*(x375)))+(((sj6)*(x371)*(x372)))+(((r21)*(x374)*(x376)))+(((IkReal(-1.00000000000000))*(r20)*(x376)*(x378)))+(((IkReal(-1.00000000000000))*(sj6)*(x371)*(x378)))+(((IkReal(-1.00000000000000))*(x369)*(x373)*(x376)))+(((IkReal(-1.00000000000000))*(x378)*(x380)))+(((r21)*(x374)*(x379)))+(((r21)*(sj6)*(x377)))+(((IkReal(-1.00000000000000))*(x369)*(x373)*(x379)))+(((IkReal(-1.00000000000000))*(x370)*(x377)))+(((cj6)*(x371)*(x374)))+(((r20)*(x372)*(x376)))+(((x372)*(x380)))+(((x370)*(x375))))); +IkReal x381=(cj6)*(cj6); +IkReal x382=(sj6)*(sj6); +IkReal x383=((IkReal(1.00000000000000))*(r21)); +IkReal x384=((cj6)*(r20)); +IkReal x385=((r22)*(sj5)); +IkReal x386=((r01)*(sj0)); +IkReal x387=((r00)*(sj0)); +IkReal x388=((cj0)*(r10)); +IkReal x389=((r02)*(sj0)*(sj5)); +IkReal x390=((cj5)*(x381)); +IkReal x391=((cj0)*(r12)*(sj5)); +IkReal x392=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x393=((cj5)*(x382)); +IkReal x394=((r20)*(x393)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x383)*(x387)*(x390)))+(((x384)*(x389)))+(((r20)*(x386)*(x390)))+(((IkReal(-1.00000000000000))*(r20)*(x390)*(x392)))+(((x386)*(x394)))+(((IkReal(-1.00000000000000))*(cj6)*(x385)*(x387)))+(((IkReal(-1.00000000000000))*(x383)*(x387)*(x393)))+(((IkReal(-1.00000000000000))*(sj6)*(x383)*(x389)))+(((sj6)*(x385)*(x386)))+(((IkReal(-1.00000000000000))*(sj6)*(x385)*(x392)))+(((IkReal(-1.00000000000000))*(x392)*(x394)))+(((IkReal(-1.00000000000000))*(x384)*(x391)))+(((r21)*(x388)*(x393)))+(((r21)*(sj6)*(x391)))+(((r21)*(x388)*(x390)))+(((cj6)*(x385)*(x388)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x395=((sj0)*(sj6)); +IkReal x396=((cj0)*(r10)); +IkReal x397=((IkReal(1.00000000000000))*(cj5)); +IkReal x398=((cj6)*(sj0)); +IkReal x399=((cj0)*(r11)); +if( IKabs(((gconst47)*(((((IkReal(-1.00000000000000))*(r00)*(x398)))+(((cj6)*(x396)))+(((r01)*(x395)))+(((IkReal(-1.00000000000000))*(sj6)*(x399))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst47)*(((((cj5)*(sj6)*(x396)))+(((IkReal(-1.00000000000000))*(r01)*(x397)*(x398)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x399)))+(((IkReal(-1.00000000000000))*(r00)*(x395)*(x397))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst47)*(((((IkReal(-1.00000000000000))*(r00)*(x398)))+(((cj6)*(x396)))+(((r01)*(x395)))+(((IkReal(-1.00000000000000))*(sj6)*(x399)))))), ((gconst47)*(((((cj5)*(sj6)*(x396)))+(((IkReal(-1.00000000000000))*(r01)*(x397)*(x398)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x399)))+(((IkReal(-1.00000000000000))*(r00)*(x395)*(x397))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x400=IKsin(j4); +IkReal x401=IKcos(j4); +IkReal x402=((r22)*(sj5)); +IkReal x403=((IkReal(1.00000000000000))*(cj6)); +IkReal x404=((IkReal(1.00000000000000))*(cj0)); +IkReal x405=((cj5)*(r11)); +IkReal x406=((cj5)*(cj6)); +IkReal x407=((r11)*(sj6)); +IkReal x408=((IkReal(1.00000000000000))*(sj6)); +IkReal x409=((cj6)*(r00)); +IkReal x410=((r12)*(sj5)); +IkReal x411=((r02)*(sj5)); +IkReal x412=((cj6)*(r10)); +IkReal x413=((cj5)*(sj6)); +IkReal x414=((cj5)*(r01)); +IkReal x415=((sj0)*(x400)); +IkReal x416=((r00)*(x413)); +IkReal x417=((cj0)*(x400)); +IkReal x418=((sj0)*(x401)); +IkReal x419=((r20)*(x401)); +IkReal x420=((cj0)*(x401)); +IkReal x421=((r21)*(x400)); +IkReal x422=((r21)*(x401)); +IkReal x423=((r20)*(x400)); +IkReal x424=((x401)*(x410)); +IkReal x425=((r01)*(sj6)*(x401)); +IkReal x426=((cj5)*(r10)*(x408)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x403)*(x419)))+(((x413)*(x423)))+(((x406)*(x421)))+(((x400)*(x402)))+(((sj6)*(x422)))); +evalcond[1]=((((x413)*(x419)))+(((IkReal(-1.00000000000000))*(x408)*(x421)))+(((x406)*(x422)))+(((cj6)*(x423)))+(((x401)*(x402)))); +evalcond[2]=((((x412)*(x420)))+(((x415)*(x416)))+(((IkReal(-1.00000000000000))*(r10)*(x400)*(x404)*(x413)))+(((IkReal(-1.00000000000000))*(x401)*(x404)*(x407)))+(((IkReal(-1.00000000000000))*(r00)*(x403)*(x418)))+(((IkReal(-1.00000000000000))*(x400)*(x404)*(x410)))+(((r01)*(sj6)*(x418)))+(((IkReal(-1.00000000000000))*(x403)*(x405)*(x417)))+(((x411)*(x415)))+(((r01)*(x406)*(x415)))); +evalcond[3]=((((x409)*(x415)))+(((x411)*(x418)))+(((x416)*(x418)))+(((IkReal(-1.00000000000000))*(r10)*(x403)*(x417)))+(((IkReal(-1.00000000000000))*(r10)*(x401)*(x404)*(x413)))+(cj3)+(((x407)*(x417)))+(((IkReal(-1.00000000000000))*(x403)*(x405)*(x420)))+(((IkReal(-1.00000000000000))*(x404)*(x424)))+(((r01)*(x406)*(x418)))+(((IkReal(-1.00000000000000))*(r01)*(x408)*(x415)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x403)*(x405)*(x415)))+(((IkReal(-1.00000000000000))*(x400)*(x404)*(x416)))+(((IkReal(-1.00000000000000))*(x407)*(x418)))+(((IkReal(-1.00000000000000))*(x400)*(x404)*(x411)))+(((IkReal(-1.00000000000000))*(x403)*(x414)*(x417)))+(((IkReal(-1.00000000000000))*(x415)*(x426)))+(((x412)*(x418)))+(((IkReal(-1.00000000000000))*(x410)*(x415)))+(((IkReal(-1.00000000000000))*(x404)*(x425)))+(((x409)*(x420)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x418)*(x426)))+(((IkReal(-1.00000000000000))*(x410)*(x418)))+(((IkReal(-1.00000000000000))*(x401)*(x404)*(x416)))+(((IkReal(-1.00000000000000))*(x403)*(x405)*(x418)))+(((IkReal(-1.00000000000000))*(x403)*(x414)*(x420)))+(((r01)*(sj6)*(x417)))+(((IkReal(-1.00000000000000))*(r00)*(x403)*(x417)))+(((IkReal(-1.00000000000000))*(sj3)))+(((x407)*(x415)))+(((IkReal(-1.00000000000000))*(r10)*(x403)*(x415)))+(((IkReal(-1.00000000000000))*(x401)*(x404)*(x411)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst46)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst46)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst46)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst46)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x427=IKsin(j4); +IkReal x428=IKcos(j4); +IkReal x429=((r22)*(sj5)); +IkReal x430=((IkReal(1.00000000000000))*(cj6)); +IkReal x431=((IkReal(1.00000000000000))*(cj0)); +IkReal x432=((cj5)*(r11)); +IkReal x433=((cj5)*(cj6)); +IkReal x434=((r11)*(sj6)); +IkReal x435=((IkReal(1.00000000000000))*(sj6)); +IkReal x436=((cj6)*(r00)); +IkReal x437=((r12)*(sj5)); +IkReal x438=((r02)*(sj5)); +IkReal x439=((cj6)*(r10)); +IkReal x440=((cj5)*(sj6)); +IkReal x441=((cj5)*(r01)); +IkReal x442=((sj0)*(x427)); +IkReal x443=((r00)*(x440)); +IkReal x444=((cj0)*(x427)); +IkReal x445=((sj0)*(x428)); +IkReal x446=((r20)*(x428)); +IkReal x447=((cj0)*(x428)); +IkReal x448=((r21)*(x427)); +IkReal x449=((r21)*(x428)); +IkReal x450=((r20)*(x427)); +IkReal x451=((x428)*(x437)); +IkReal x452=((r01)*(sj6)*(x428)); +IkReal x453=((cj5)*(r10)*(x435)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x430)*(x446)))+(((x433)*(x448)))+(((x427)*(x429)))+(((x440)*(x450)))+(((sj6)*(x449)))); +evalcond[1]=((((x433)*(x449)))+(((cj6)*(x450)))+(((x428)*(x429)))+(((IkReal(-1.00000000000000))*(x435)*(x448)))+(((x440)*(x446)))); +evalcond[2]=((((r01)*(x433)*(x442)))+(((x439)*(x447)))+(((IkReal(-1.00000000000000))*(r00)*(x430)*(x445)))+(((x442)*(x443)))+(((x438)*(x442)))+(((IkReal(-1.00000000000000))*(r10)*(x427)*(x431)*(x440)))+(((r01)*(sj6)*(x445)))+(((IkReal(-1.00000000000000))*(x430)*(x432)*(x444)))+(((IkReal(-1.00000000000000))*(x428)*(x431)*(x434)))+(((IkReal(-1.00000000000000))*(x427)*(x431)*(x437)))); +evalcond[3]=((((r01)*(x433)*(x445)))+(((IkReal(-1.00000000000000))*(r10)*(x428)*(x431)*(x440)))+(((x436)*(x442)))+(((IkReal(-1.00000000000000))*(r01)*(x435)*(x442)))+(((x438)*(x445)))+(((IkReal(-1.00000000000000))*(x431)*(x451)))+(cj3)+(((IkReal(-1.00000000000000))*(x430)*(x432)*(x447)))+(((IkReal(-1.00000000000000))*(r10)*(x430)*(x444)))+(((x443)*(x445)))+(((x434)*(x444)))); +evalcond[4]=((((x436)*(x447)))+(((IkReal(-1.00000000000000))*(x430)*(x432)*(x442)))+(((IkReal(-1.00000000000000))*(x427)*(x431)*(x443)))+(((IkReal(-1.00000000000000))*(x434)*(x445)))+(((IkReal(-1.00000000000000))*(x431)*(x452)))+(((IkReal(-1.00000000000000))*(x430)*(x441)*(x444)))+(((IkReal(-1.00000000000000))*(x437)*(x442)))+(((IkReal(-1.00000000000000))*(x427)*(x431)*(x438)))+(((IkReal(-1.00000000000000))*(x442)*(x453)))+(((x439)*(x445)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x437)*(x445)))+(((IkReal(-1.00000000000000))*(x430)*(x432)*(x445)))+(((IkReal(-1.00000000000000))*(x445)*(x453)))+(((IkReal(-1.00000000000000))*(r10)*(x430)*(x442)))+(((IkReal(-1.00000000000000))*(x428)*(x431)*(x443)))+(((IkReal(-1.00000000000000))*(x428)*(x431)*(x438)))+(((IkReal(-1.00000000000000))*(x430)*(x441)*(x447)))+(((x434)*(x442)))+(((IkReal(-1.00000000000000))*(sj3)))+(((r01)*(sj6)*(x444)))+(((IkReal(-1.00000000000000))*(r00)*(x430)*(x444)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x454=((cj5)*(r22)); +IkReal x455=((IkReal(0.374290000000000))*(sj5)); +IkReal x456=((cj0)*(sj6)); +IkReal x457=((cj6)*(r21)); +IkReal x458=((IkReal(0.0100000000000000))*(sj5)); +IkReal x459=((cj0)*(r02)); +IkReal x460=((IkReal(0.0100000000000000))*(cj5)); +IkReal x461=((IkReal(1.00000000000000))*(py)); +IkReal x462=((r01)*(sj0)); +IkReal x463=((r20)*(sj6)); +IkReal x464=((r11)*(sj0)); +IkReal x465=((IkReal(0.374290000000000))*(cj5)); +IkReal x466=((cj0)*(r12)); +IkReal x467=((sj0)*(x465)); +IkReal x468=((cj6)*(x460)); +IkReal x469=((r10)*(sj0)*(sj6)); +IkReal x470=((r00)*(sj0)*(sj6)); +IkReal x471=((cj0)*(cj6)*(x455)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x454)))+(((sj5)*(x457)))+(((sj5)*(x463)))); +evalcond[2]=((((IkReal(-0.374290000000000))*(x454)))+(((x455)*(x457)))+(((IkReal(-1.00000000000000))*(x460)*(x463)))+(((IkReal(-1.00000000000000))*(x457)*(x460)))+(((x455)*(x463)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x458)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((r10)*(x456)*(x460)))+(((x465)*(x466)))+(((IkReal(-1.00000000000000))*(cj0)*(x461)))+(((IkReal(-1.00000000000000))*(x460)*(x470)))+(((IkReal(-1.00000000000000))*(x462)*(x468)))+(((x455)*(x470)))+(((IkReal(-1.00000000000000))*(r10)*(x455)*(x456)))+(((IkReal(-1.00000000000000))*(r02)*(x467)))+(((cj0)*(r11)*(x468)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x471)))+(((cj6)*(x455)*(x462)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x458)))+(((x458)*(x466)))); +evalcond[4]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((r00)*(x456)*(x460)))+(((IkReal(-1.00000000000000))*(r00)*(x455)*(x456)))+(((x458)*(x459)))+(((x460)*(x469)))+(((cj0)*(r01)*(x468)))+(((x464)*(x468)))+(((r12)*(sj0)*(x458)))+(((IkReal(-1.00000000000000))*(cj6)*(x455)*(x464)))+(((IkReal(-1.00000000000000))*(x455)*(x469)))+(((r12)*(x467)))+(((IkReal(-1.00000000000000))*(sj0)*(x461)))+(((x459)*(x465)))+(((IkReal(-1.00000000000000))*(r01)*(x471)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x472=((cj5)*(r02)); +IkReal x473=((cj0)*(sj5)); +IkReal x474=((r10)*(sj6)); +IkReal x475=((IkReal(1.00000000000000))*(cj6)); +IkReal x476=((sj0)*(sj5)); +IkReal x477=((cj5)*(r12)); +IkReal x478=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(x476)*(x478)))+(((IkReal(-1.00000000000000))*(cj0)*(x477)))+(((IkReal(-1.00000000000000))*(r01)*(x475)*(x476)))+(((sj0)*(x472)))+(((x473)*(x474)))+(((cj6)*(r11)*(x473))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x473)*(x478)))+(((cj0)*(x472)))+(((IkReal(-1.00000000000000))*(r11)*(x475)*(x476)))+(((IkReal(-1.00000000000000))*(r01)*(x473)*(x475)))+(((IkReal(-1.00000000000000))*(x474)*(x476)))+(((sj0)*(x477))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x476)*(x478)))+(((IkReal(-1.00000000000000))*(cj0)*(x477)))+(((IkReal(-1.00000000000000))*(r01)*(x475)*(x476)))+(((sj0)*(x472)))+(((x473)*(x474)))+(((cj6)*(r11)*(x473)))))+IKsqr(((((IkReal(-1.00000000000000))*(x473)*(x478)))+(((cj0)*(x472)))+(((IkReal(-1.00000000000000))*(r11)*(x475)*(x476)))+(((IkReal(-1.00000000000000))*(r01)*(x473)*(x475)))+(((IkReal(-1.00000000000000))*(x474)*(x476)))+(((sj0)*(x477)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x476)*(x478)))+(((IkReal(-1.00000000000000))*(cj0)*(x477)))+(((IkReal(-1.00000000000000))*(r01)*(x475)*(x476)))+(((sj0)*(x472)))+(((x473)*(x474)))+(((cj6)*(r11)*(x473)))), ((((IkReal(-1.00000000000000))*(x473)*(x478)))+(((cj0)*(x472)))+(((IkReal(-1.00000000000000))*(r11)*(x475)*(x476)))+(((IkReal(-1.00000000000000))*(r01)*(x473)*(x475)))+(((IkReal(-1.00000000000000))*(x474)*(x476)))+(((sj0)*(x477))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x479=((cj0)*(cj5)); +IkReal x480=((IkReal(1.00000000000000))*(cj0)); +IkReal x481=((cj6)*(r11)); +IkReal x482=((r10)*(sj6)); +IkReal x483=((cj5)*(sj0)); +IkReal x484=((r00)*(sj5)*(sj6)); +IkReal x485=((cj6)*(r01)*(sj5)); +IkReal x486=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((sj0)*(x484)))+(((r12)*(x479)))+(IKsin(j3))+(((IkReal(-1.00000000000000))*(sj5)*(x480)*(x481)))+(((IkReal(-1.00000000000000))*(sj5)*(x480)*(x482)))+(((IkReal(-1.00000000000000))*(r02)*(x483)))+(((sj0)*(x485)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x480)*(x484)))+(((r12)*(x483)))+(((r02)*(x479)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(x482)*(x486)))+(((IkReal(-1.00000000000000))*(x481)*(x486)))+(((IkReal(-1.00000000000000))*(x480)*(x485)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst50; +IkReal x487=(r21)*(r21); +IkReal x488=(cj5)*(cj5); +IkReal x489=(sj6)*(sj6); +IkReal x490=(cj6)*(cj6); +IkReal x491=(r20)*(r20); +IkReal x492=((cj6)*(r21)); +IkReal x493=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x494=((cj5)*(r22)*(sj5)); +IkReal x495=((IkReal(1.00000000000000))*(x489)); +IkReal x496=((IkReal(1.00000000000000))*(x490)); +gconst50=IKsign(((((IkReal(-1.00000000000000))*(x487)*(x488)*(x496)))+(((IkReal(-1.00000000000000))*(x488)*(x492)*(x493)))+(((x492)*(x493)))+(((IkReal(-1.00000000000000))*(x491)*(x496)))+(((IkReal(-2.00000000000000))*(x492)*(x494)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x488)*(x491)*(x495)))+(((IkReal(-1.00000000000000))*(x487)*(x495)))+(((IkReal(-1.00000000000000))*(x493)*(x494))))); +IkReal x497=(r21)*(r21); +IkReal x498=(cj5)*(cj5); +IkReal x499=(sj6)*(sj6); +IkReal x500=(cj6)*(cj6); +IkReal x501=(r20)*(r20); +IkReal x502=((cj6)*(r21)); +IkReal x503=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x504=((cj5)*(r22)*(sj5)); +IkReal x505=((IkReal(1.00000000000000))*(x499)); +IkReal x506=((IkReal(1.00000000000000))*(x500)); +dummyeval[0]=((((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x497)*(x505)))+(((IkReal(-1.00000000000000))*(x503)*(x504)))+(((IkReal(-1.00000000000000))*(x498)*(x502)*(x503)))+(((IkReal(-1.00000000000000))*(x498)*(x501)*(x505)))+(((x502)*(x503)))+(((IkReal(-1.00000000000000))*(x501)*(x506)))+(((IkReal(-2.00000000000000))*(x502)*(x504)))+(((IkReal(-1.00000000000000))*(x497)*(x498)*(x506)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst51; +IkReal x507=(cj6)*(cj6); +IkReal x508=(sj6)*(sj6); +IkReal x509=((IkReal(1.00000000000000))*(r01)); +IkReal x510=((sj0)*(sj5)); +IkReal x511=((cj6)*(r22)); +IkReal x512=((r21)*(sj6)); +IkReal x513=((r00)*(r21)); +IkReal x514=((cj0)*(sj5)); +IkReal x515=((cj6)*(r20)); +IkReal x516=((r22)*(sj6)); +IkReal x517=((cj0)*(cj5)); +IkReal x518=((IkReal(1.00000000000000))*(r10)); +IkReal x519=((cj5)*(sj0)); +IkReal x520=((r20)*(x508)); +IkReal x521=((x507)*(x519)); +gconst51=IKsign(((((r11)*(x514)*(x516)))+(((IkReal(-1.00000000000000))*(r20)*(x509)*(x521)))+(((IkReal(-1.00000000000000))*(r12)*(x512)*(x514)))+(((r00)*(x510)*(x511)))+(((IkReal(-1.00000000000000))*(r21)*(x508)*(x517)*(x518)))+(((x513)*(x521)))+(((x508)*(x513)*(x519)))+(((IkReal(-1.00000000000000))*(x509)*(x510)*(x516)))+(((r11)*(x517)*(x520)))+(((r11)*(r20)*(x507)*(x517)))+(((IkReal(-1.00000000000000))*(r21)*(x507)*(x517)*(x518)))+(((r02)*(x510)*(x512)))+(((IkReal(-1.00000000000000))*(x511)*(x514)*(x518)))+(((IkReal(-1.00000000000000))*(x509)*(x519)*(x520)))+(((IkReal(-1.00000000000000))*(r02)*(x510)*(x515)))+(((r12)*(x514)*(x515))))); +IkReal x522=(cj6)*(cj6); +IkReal x523=(sj6)*(sj6); +IkReal x524=((IkReal(1.00000000000000))*(r01)); +IkReal x525=((sj0)*(sj5)); +IkReal x526=((cj6)*(r22)); +IkReal x527=((r21)*(sj6)); +IkReal x528=((r00)*(r21)); +IkReal x529=((cj0)*(sj5)); +IkReal x530=((cj6)*(r20)); +IkReal x531=((r22)*(sj6)); +IkReal x532=((cj0)*(cj5)); +IkReal x533=((IkReal(1.00000000000000))*(r10)); +IkReal x534=((cj5)*(sj0)); +IkReal x535=((r20)*(x523)); +IkReal x536=((x522)*(x534)); +dummyeval[0]=((((r11)*(x529)*(x531)))+(((r12)*(x529)*(x530)))+(((r00)*(x525)*(x526)))+(((r02)*(x525)*(x527)))+(((IkReal(-1.00000000000000))*(r21)*(x522)*(x532)*(x533)))+(((IkReal(-1.00000000000000))*(r20)*(x524)*(x536)))+(((IkReal(-1.00000000000000))*(x526)*(x529)*(x533)))+(((IkReal(-1.00000000000000))*(r21)*(x523)*(x532)*(x533)))+(((IkReal(-1.00000000000000))*(r02)*(x525)*(x530)))+(((IkReal(-1.00000000000000))*(r12)*(x527)*(x529)))+(((IkReal(-1.00000000000000))*(x524)*(x525)*(x531)))+(((r11)*(x532)*(x535)))+(((x528)*(x536)))+(((r11)*(r20)*(x522)*(x532)))+(((IkReal(-1.00000000000000))*(x524)*(x534)*(x535)))+(((x523)*(x528)*(x534)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x537=((sj0)*(sj6)); +IkReal x538=((cj0)*(r10)); +IkReal x539=((IkReal(1.00000000000000))*(cj5)); +IkReal x540=((cj6)*(sj0)); +IkReal x541=((cj0)*(r11)); +if( IKabs(((gconst51)*(((((r01)*(x537)))+(((IkReal(-1.00000000000000))*(r00)*(x540)))+(((IkReal(-1.00000000000000))*(sj6)*(x541)))+(((cj6)*(x538))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst51)*(((((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x537)*(x539)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x541)))+(((cj5)*(sj6)*(x538)))+(((IkReal(-1.00000000000000))*(r01)*(x539)*(x540))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst51)*(((((r01)*(x537)))+(((IkReal(-1.00000000000000))*(r00)*(x540)))+(((IkReal(-1.00000000000000))*(sj6)*(x541)))+(((cj6)*(x538)))))), ((gconst51)*(((((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x537)*(x539)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x541)))+(((cj5)*(sj6)*(x538)))+(((IkReal(-1.00000000000000))*(r01)*(x539)*(x540))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x542=IKsin(j4); +IkReal x543=IKcos(j4); +IkReal x544=((r22)*(sj5)); +IkReal x545=((IkReal(1.00000000000000))*(cj6)); +IkReal x546=((IkReal(1.00000000000000))*(cj0)); +IkReal x547=((cj5)*(r11)); +IkReal x548=((cj5)*(cj6)); +IkReal x549=((r11)*(sj6)); +IkReal x550=((IkReal(1.00000000000000))*(sj6)); +IkReal x551=((cj6)*(r00)); +IkReal x552=((r12)*(sj5)); +IkReal x553=((r02)*(sj5)); +IkReal x554=((cj6)*(r10)); +IkReal x555=((cj5)*(sj6)); +IkReal x556=((cj5)*(r01)); +IkReal x557=((sj0)*(x542)); +IkReal x558=((r00)*(x555)); +IkReal x559=((cj0)*(x542)); +IkReal x560=((sj0)*(x543)); +IkReal x561=((r20)*(x543)); +IkReal x562=((cj0)*(x543)); +IkReal x563=((r21)*(x542)); +IkReal x564=((r21)*(x543)); +IkReal x565=((r20)*(x542)); +IkReal x566=((x543)*(x552)); +IkReal x567=((r01)*(sj6)*(x543)); +IkReal x568=((cj5)*(r10)*(x550)); +evalcond[0]=((IkReal(1.00000000000000))+(((sj6)*(x564)))+(((x542)*(x544)))+(((IkReal(-1.00000000000000))*(x545)*(x561)))+(((x548)*(x563)))+(((x555)*(x565)))); +evalcond[1]=((((cj6)*(x565)))+(((x555)*(x561)))+(((IkReal(-1.00000000000000))*(x550)*(x563)))+(((x548)*(x564)))+(((x543)*(x544)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x542)*(x546)*(x555)))+(((IkReal(-1.00000000000000))*(x542)*(x546)*(x552)))+(((r01)*(x548)*(x557)))+(((IkReal(-1.00000000000000))*(x543)*(x546)*(x549)))+(((IkReal(-1.00000000000000))*(r00)*(x545)*(x560)))+(((IkReal(-1.00000000000000))*(x545)*(x547)*(x559)))+(((r01)*(sj6)*(x560)))+(((x557)*(x558)))+(((x554)*(x562)))+(((x553)*(x557)))); +evalcond[3]=((((r01)*(x548)*(x560)))+(((x553)*(x560)))+(((x549)*(x559)))+(((IkReal(-1.00000000000000))*(r10)*(x545)*(x559)))+(((IkReal(-1.00000000000000))*(r01)*(x550)*(x557)))+(((IkReal(-1.00000000000000))*(r10)*(x543)*(x546)*(x555)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x545)*(x547)*(x562)))+(((x551)*(x557)))+(((IkReal(-1.00000000000000))*(x546)*(x566)))+(((x558)*(x560)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x542)*(x546)*(x553)))+(((IkReal(-1.00000000000000))*(x542)*(x546)*(x558)))+(((IkReal(-1.00000000000000))*(x546)*(x567)))+(((IkReal(-1.00000000000000))*(x557)*(x568)))+(((IkReal(-1.00000000000000))*(x545)*(x547)*(x557)))+(((IkReal(-1.00000000000000))*(x549)*(x560)))+(((IkReal(-1.00000000000000))*(x545)*(x556)*(x559)))+(((x554)*(x560)))+(((x551)*(x562)))+(((IkReal(-1.00000000000000))*(x552)*(x557)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x560)*(x568)))+(((r01)*(sj6)*(x559)))+(((IkReal(-1.00000000000000))*(r00)*(x545)*(x559)))+(((IkReal(-1.00000000000000))*(x545)*(x556)*(x562)))+(((IkReal(-1.00000000000000))*(r10)*(x545)*(x557)))+(((IkReal(-1.00000000000000))*(x545)*(x547)*(x560)))+(((IkReal(-1.00000000000000))*(x543)*(x546)*(x558)))+(((IkReal(-1.00000000000000))*(x552)*(x560)))+(((IkReal(-1.00000000000000))*(x543)*(x546)*(x553)))+(((IkReal(-1.00000000000000))*(sj3)))+(((x549)*(x557)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst50)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst50)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst50)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst50)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x569=IKsin(j4); +IkReal x570=IKcos(j4); +IkReal x571=((r22)*(sj5)); +IkReal x572=((IkReal(1.00000000000000))*(cj6)); +IkReal x573=((IkReal(1.00000000000000))*(cj0)); +IkReal x574=((cj5)*(r11)); +IkReal x575=((cj5)*(cj6)); +IkReal x576=((r11)*(sj6)); +IkReal x577=((IkReal(1.00000000000000))*(sj6)); +IkReal x578=((cj6)*(r00)); +IkReal x579=((r12)*(sj5)); +IkReal x580=((r02)*(sj5)); +IkReal x581=((cj6)*(r10)); +IkReal x582=((cj5)*(sj6)); +IkReal x583=((cj5)*(r01)); +IkReal x584=((sj0)*(x569)); +IkReal x585=((r00)*(x582)); +IkReal x586=((cj0)*(x569)); +IkReal x587=((sj0)*(x570)); +IkReal x588=((r20)*(x570)); +IkReal x589=((cj0)*(x570)); +IkReal x590=((r21)*(x569)); +IkReal x591=((r21)*(x570)); +IkReal x592=((r20)*(x569)); +IkReal x593=((x570)*(x579)); +IkReal x594=((r01)*(sj6)*(x570)); +IkReal x595=((cj5)*(r10)*(x577)); +evalcond[0]=((IkReal(1.00000000000000))+(((sj6)*(x591)))+(((x582)*(x592)))+(((x575)*(x590)))+(((IkReal(-1.00000000000000))*(x572)*(x588)))+(((x569)*(x571)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x577)*(x590)))+(((x575)*(x591)))+(((x570)*(x571)))+(((cj6)*(x592)))+(((x582)*(x588)))); +evalcond[2]=((((r01)*(sj6)*(x587)))+(((IkReal(-1.00000000000000))*(x572)*(x574)*(x586)))+(((x584)*(x585)))+(((IkReal(-1.00000000000000))*(r10)*(x569)*(x573)*(x582)))+(((IkReal(-1.00000000000000))*(r00)*(x572)*(x587)))+(((r01)*(x575)*(x584)))+(((IkReal(-1.00000000000000))*(x570)*(x573)*(x576)))+(((x580)*(x584)))+(((IkReal(-1.00000000000000))*(x569)*(x573)*(x579)))+(((x581)*(x589)))); +evalcond[3]=((((x580)*(x587)))+(((IkReal(-1.00000000000000))*(r01)*(x577)*(x584)))+(((r01)*(x575)*(x587)))+(((x585)*(x587)))+(((IkReal(-1.00000000000000))*(x572)*(x574)*(x589)))+(((IkReal(-1.00000000000000))*(x573)*(x593)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(r10)*(x572)*(x586)))+(((x578)*(x584)))+(((IkReal(-1.00000000000000))*(r10)*(x570)*(x573)*(x582)))+(((x576)*(x586)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x572)*(x583)*(x586)))+(((x578)*(x589)))+(((x581)*(x587)))+(((IkReal(-1.00000000000000))*(x573)*(x594)))+(((IkReal(-1.00000000000000))*(x584)*(x595)))+(((IkReal(-1.00000000000000))*(x569)*(x573)*(x580)))+(((IkReal(-1.00000000000000))*(x579)*(x584)))+(((IkReal(-1.00000000000000))*(x569)*(x573)*(x585)))+(((IkReal(-1.00000000000000))*(x576)*(x587)))+(((IkReal(-1.00000000000000))*(x572)*(x574)*(x584)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x572)*(x583)*(x589)))+(((IkReal(-1.00000000000000))*(r00)*(x572)*(x586)))+(((IkReal(-1.00000000000000))*(x587)*(x595)))+(((IkReal(-1.00000000000000))*(x572)*(x574)*(x587)))+(((IkReal(-1.00000000000000))*(x570)*(x573)*(x580)))+(((IkReal(-1.00000000000000))*(x579)*(x587)))+(((IkReal(-1.00000000000000))*(x570)*(x573)*(x585)))+(((r01)*(sj6)*(x586)))+(((x576)*(x584)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r10)*(x572)*(x584)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x596=((sj5)*(sj6)); +IkReal x597=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x596)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x597)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x596)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x597)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x596))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x596)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x597)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x596)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x597)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x596)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x596)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x597)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x596)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x597)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x596))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x598=IKsin(j3); +IkReal x599=((sj5)*(sj6)); +IkReal x600=((cj0)*(cj5)); +IkReal x601=((IkReal(1.00000000000000))*(cj0)); +IkReal x602=((IkReal(1.00000000000000))*(sj0)); +IkReal x603=((IkReal(1.00000000000000))*(x598)); +IkReal x604=((cj6)*(r01)*(sj5)); +IkReal x605=((cj6)*(r11)*(sj5)); +evalcond[0]=((((r20)*(x599)))+(((IkReal(-1.00000000000000))*(cj2)*(x603)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj5)*(r02)*(x602)))+(((r00)*(sj0)*(x599)))+(((IkReal(-1.00000000000000))*(sj2)*(x603)))+(((IkReal(-1.00000000000000))*(x601)*(x605)))+(((IkReal(-1.00000000000000))*(r10)*(x599)*(x601)))+(((sj0)*(x604)))+(((r12)*(x600)))); +evalcond[2]=((((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(r10)*(x599)*(x602)))+(((IkReal(-1.00000000000000))*(r00)*(x599)*(x601)))+(((r02)*(x600)))+(((IkReal(-1.00000000000000))*(x602)*(x605)))+(((IkReal(-1.00000000000000))*(x601)*(x604)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst41; +IkReal x606=(r21)*(r21); +IkReal x607=(cj5)*(cj5); +IkReal x608=(sj6)*(sj6); +IkReal x609=(cj6)*(cj6); +IkReal x610=(r20)*(r20); +IkReal x611=((cj6)*(r21)); +IkReal x612=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x613=((cj5)*(r22)*(sj5)); +IkReal x614=((IkReal(1.00000000000000))*(x608)); +IkReal x615=((IkReal(1.00000000000000))*(x609)); +gconst41=IKsign(((((IkReal(-1.00000000000000))*(x606)*(x614)))+(((IkReal(-1.00000000000000))*(x610)*(x615)))+(((IkReal(-1.00000000000000))*(x607)*(x610)*(x614)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x612)*(x613)))+(((IkReal(-2.00000000000000))*(x611)*(x613)))+(((IkReal(-1.00000000000000))*(x606)*(x607)*(x615)))+(((IkReal(-1.00000000000000))*(x607)*(x611)*(x612)))+(((x611)*(x612))))); +IkReal x616=(r21)*(r21); +IkReal x617=(cj5)*(cj5); +IkReal x618=(sj6)*(sj6); +IkReal x619=(cj6)*(cj6); +IkReal x620=(r20)*(r20); +IkReal x621=((cj6)*(r21)); +IkReal x622=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x623=((cj5)*(r22)*(sj5)); +IkReal x624=((IkReal(1.00000000000000))*(x618)); +IkReal x625=((IkReal(1.00000000000000))*(x619)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x616)*(x617)*(x625)))+(((IkReal(-1.00000000000000))*(x616)*(x624)))+(((IkReal(-1.00000000000000))*(x620)*(x625)))+(((IkReal(-2.00000000000000))*(x621)*(x623)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((x621)*(x622)))+(((IkReal(-1.00000000000000))*(x622)*(x623)))+(((IkReal(-1.00000000000000))*(x617)*(x620)*(x624)))+(((IkReal(-1.00000000000000))*(x617)*(x621)*(x622)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst42; +IkReal x626=(cj6)*(cj6); +IkReal x627=(sj6)*(sj6); +IkReal x628=((IkReal(1.00000000000000))*(r01)); +IkReal x629=((sj0)*(sj5)); +IkReal x630=((cj6)*(r22)); +IkReal x631=((r21)*(sj6)); +IkReal x632=((r00)*(r21)); +IkReal x633=((cj0)*(sj5)); +IkReal x634=((cj6)*(r20)); +IkReal x635=((r22)*(sj6)); +IkReal x636=((cj0)*(cj5)); +IkReal x637=((IkReal(1.00000000000000))*(r10)); +IkReal x638=((cj5)*(sj0)); +IkReal x639=((r20)*(x627)); +IkReal x640=((x626)*(x638)); +gconst42=IKsign(((((r00)*(x629)*(x630)))+(((r02)*(x629)*(x631)))+(((IkReal(-1.00000000000000))*(r12)*(x631)*(x633)))+(((IkReal(-1.00000000000000))*(x628)*(x638)*(x639)))+(((r12)*(x633)*(x634)))+(((IkReal(-1.00000000000000))*(x630)*(x633)*(x637)))+(((IkReal(-1.00000000000000))*(r21)*(x626)*(x636)*(x637)))+(((IkReal(-1.00000000000000))*(r21)*(x627)*(x636)*(x637)))+(((r11)*(x633)*(x635)))+(((IkReal(-1.00000000000000))*(x628)*(x629)*(x635)))+(((IkReal(-1.00000000000000))*(r02)*(x629)*(x634)))+(((r11)*(r20)*(x626)*(x636)))+(((IkReal(-1.00000000000000))*(r20)*(x628)*(x640)))+(((x632)*(x640)))+(((r11)*(x636)*(x639)))+(((x627)*(x632)*(x638))))); +IkReal x641=(cj6)*(cj6); +IkReal x642=(sj6)*(sj6); +IkReal x643=((IkReal(1.00000000000000))*(r01)); +IkReal x644=((sj0)*(sj5)); +IkReal x645=((cj6)*(r22)); +IkReal x646=((r21)*(sj6)); +IkReal x647=((r00)*(r21)); +IkReal x648=((cj0)*(sj5)); +IkReal x649=((cj6)*(r20)); +IkReal x650=((r22)*(sj6)); +IkReal x651=((cj0)*(cj5)); +IkReal x652=((IkReal(1.00000000000000))*(r10)); +IkReal x653=((cj5)*(sj0)); +IkReal x654=((r20)*(x642)); +IkReal x655=((x641)*(x653)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r02)*(x644)*(x649)))+(((IkReal(-1.00000000000000))*(r21)*(x642)*(x651)*(x652)))+(((r02)*(x644)*(x646)))+(((x642)*(x647)*(x653)))+(((IkReal(-1.00000000000000))*(x643)*(x644)*(x650)))+(((IkReal(-1.00000000000000))*(r20)*(x643)*(x655)))+(((IkReal(-1.00000000000000))*(x643)*(x653)*(x654)))+(((IkReal(-1.00000000000000))*(x645)*(x648)*(x652)))+(((r11)*(r20)*(x641)*(x651)))+(((r00)*(x644)*(x645)))+(((x647)*(x655)))+(((IkReal(-1.00000000000000))*(r21)*(x641)*(x651)*(x652)))+(((IkReal(-1.00000000000000))*(r12)*(x646)*(x648)))+(((r11)*(x648)*(x650)))+(((r12)*(x648)*(x649)))+(((r11)*(x651)*(x654)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x656=((r01)*(sj0)); +IkReal x657=((cj2)*(sj6)); +IkReal x658=((IkReal(1.00000000000000))*(cj0)); +IkReal x659=((r10)*(sj2)); +IkReal x660=((sj2)*(sj5)); +IkReal x661=((cj5)*(sj6)); +IkReal x662=((sj2)*(sj6)); +IkReal x663=((cj2)*(cj6)); +IkReal x664=((cj5)*(cj6)*(sj2)); +IkReal x665=((r00)*(sj0)*(sj2)); +if( IKabs(((gconst42)*(((((cj6)*(x665)))+(((r20)*(x663)))+(((cj0)*(r11)*(x662)))+(((IkReal(-1.00000000000000))*(r21)*(x657)))+(((IkReal(-1.00000000000000))*(cj6)*(x658)*(x659)))+(((IkReal(-1.00000000000000))*(x656)*(x662))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst42)*(((((cj2)*(r22)*(sj5)))+(((x656)*(x664)))+(((x661)*(x665)))+(((IkReal(-1.00000000000000))*(x658)*(x659)*(x661)))+(((cj5)*(r21)*(x663)))+(((IkReal(-1.00000000000000))*(r11)*(x658)*(x664)))+(((r02)*(sj0)*(x660)))+(((cj5)*(r20)*(x657)))+(((IkReal(-1.00000000000000))*(r12)*(x658)*(x660))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst42)*(((((cj6)*(x665)))+(((r20)*(x663)))+(((cj0)*(r11)*(x662)))+(((IkReal(-1.00000000000000))*(r21)*(x657)))+(((IkReal(-1.00000000000000))*(cj6)*(x658)*(x659)))+(((IkReal(-1.00000000000000))*(x656)*(x662)))))), ((gconst42)*(((((cj2)*(r22)*(sj5)))+(((x656)*(x664)))+(((x661)*(x665)))+(((IkReal(-1.00000000000000))*(x658)*(x659)*(x661)))+(((cj5)*(r21)*(x663)))+(((IkReal(-1.00000000000000))*(r11)*(x658)*(x664)))+(((r02)*(sj0)*(x660)))+(((cj5)*(r20)*(x657)))+(((IkReal(-1.00000000000000))*(r12)*(x658)*(x660))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x666=IKsin(j4); +IkReal x667=IKcos(j4); +IkReal x668=((r00)*(sj6)); +IkReal x669=((IkReal(1.00000000000000))*(r12)); +IkReal x670=((IkReal(1.00000000000000))*(cj6)); +IkReal x671=((cj6)*(r01)); +IkReal x672=((r11)*(sj6)); +IkReal x673=((r01)*(sj6)); +IkReal x674=((IkReal(1.00000000000000))*(cj5)); +IkReal x675=((IkReal(1.00000000000000))*(sj6)); +IkReal x676=((cj5)*(sj6)); +IkReal x677=((cj5)*(r11)); +IkReal x678=((cj6)*(r00)); +IkReal x679=((cj5)*(cj6)); +IkReal x680=((r02)*(sj5)); +IkReal x681=((cj6)*(r10)); +IkReal x682=((r10)*(sj6)); +IkReal x683=((cj5)*(r01)); +IkReal x684=((sj5)*(x666)); +IkReal x685=((cj0)*(x667)); +IkReal x686=((cj0)*(x666)); +IkReal x687=((sj0)*(x667)); +IkReal x688=((sj0)*(x666)); +IkReal x689=((r20)*(x667)); +IkReal x690=((r21)*(x666)); +IkReal x691=((r21)*(x667)); +IkReal x692=((r20)*(x666)); +IkReal x693=((cj5)*(x688)); +evalcond[0]=((((sj6)*(x691)))+(((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(x670)*(x689)))+(((r22)*(x684)))+(((x679)*(x690)))+(((x676)*(x692)))); +evalcond[1]=((((cj6)*(x692)))+(((x679)*(x691)))+(((cj2)*(cj3)))+(((r22)*(sj5)*(x667)))+(((x676)*(x689)))+(((IkReal(-1.00000000000000))*(x675)*(x690)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj0)*(x669)*(x684)))+(((x681)*(x685)))+(((x680)*(x688)))+(((x668)*(x693)))+(((IkReal(-1.00000000000000))*(r00)*(x670)*(x687)))+(((x673)*(x687)))+(((IkReal(-1.00000000000000))*(x670)*(x677)*(x686)))+(((x671)*(x693)))+(cj2)+(((IkReal(-1.00000000000000))*(x674)*(x682)*(x686)))+(((IkReal(-1.00000000000000))*(x672)*(x685)))); +evalcond[3]=((((x680)*(x687)))+(((cj5)*(x668)*(x687)))+(((IkReal(-1.00000000000000))*(x673)*(x688)))+(((IkReal(-1.00000000000000))*(x670)*(x677)*(x685)))+(((IkReal(-1.00000000000000))*(r10)*(x670)*(x686)))+(((x678)*(x688)))+(((x672)*(x686)))+(((IkReal(-1.00000000000000))*(sj5)*(x669)*(x685)))+(((cj5)*(x671)*(x687)))+(((IkReal(-1.00000000000000))*(x674)*(x682)*(x685)))+(((cj3)*(sj2)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x680)*(x686)))+(((IkReal(-1.00000000000000))*(x668)*(x674)*(x686)))+(((IkReal(-1.00000000000000))*(x670)*(x677)*(x688)))+(((IkReal(-1.00000000000000))*(x670)*(x683)*(x686)))+(((IkReal(-1.00000000000000))*(sj0)*(x669)*(x684)))+(((IkReal(-1.00000000000000))*(x672)*(x687)))+(((x681)*(x687)))+(((IkReal(-1.00000000000000))*(x674)*(x682)*(x688)))+(((IkReal(-1.00000000000000))*(x673)*(x685)))+(((x678)*(x685)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x674)*(x682)*(x687)))+(((IkReal(-1.00000000000000))*(x680)*(x685)))+(((IkReal(-1.00000000000000))*(sj5)*(x669)*(x687)))+(((x673)*(x686)))+(((IkReal(-1.00000000000000))*(r00)*(x670)*(x686)))+(((IkReal(-1.00000000000000))*(x670)*(x677)*(x687)))+(((IkReal(-1.00000000000000))*(x668)*(x674)*(x685)))+(((x672)*(x688)))+(((IkReal(-1.00000000000000))*(x670)*(x683)*(x685)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r10)*(x670)*(x688)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x694=((IkReal(1.00000000000000))*(sj2)); +IkReal x695=((r22)*(sj5)); +IkReal x696=((cj5)*(sj6)); +IkReal x697=((cj2)*(cj3)); +IkReal x698=((r21)*(sj6)); +IkReal x699=((r20)*(x697)); +IkReal x700=((cj5)*(cj6)*(r21)); +if( IKabs(((gconst41)*(((((cj6)*(x699)))+(((IkReal(-1.00000000000000))*(x697)*(x698)))+(((IkReal(-1.00000000000000))*(r20)*(x694)*(x696)))+(((IkReal(-1.00000000000000))*(x694)*(x695)))+(((IkReal(-1.00000000000000))*(x694)*(x700))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst41)*(((((x697)*(x700)))+(((cj6)*(r20)*(sj2)))+(((IkReal(-1.00000000000000))*(x694)*(x698)))+(((x696)*(x699)))+(((x695)*(x697))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst41)*(((((cj6)*(x699)))+(((IkReal(-1.00000000000000))*(x697)*(x698)))+(((IkReal(-1.00000000000000))*(r20)*(x694)*(x696)))+(((IkReal(-1.00000000000000))*(x694)*(x695)))+(((IkReal(-1.00000000000000))*(x694)*(x700)))))), ((gconst41)*(((((x697)*(x700)))+(((cj6)*(r20)*(sj2)))+(((IkReal(-1.00000000000000))*(x694)*(x698)))+(((x696)*(x699)))+(((x695)*(x697))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x701=IKsin(j4); +IkReal x702=IKcos(j4); +IkReal x703=((r00)*(sj6)); +IkReal x704=((IkReal(1.00000000000000))*(r12)); +IkReal x705=((IkReal(1.00000000000000))*(cj6)); +IkReal x706=((cj6)*(r01)); +IkReal x707=((r11)*(sj6)); +IkReal x708=((r01)*(sj6)); +IkReal x709=((IkReal(1.00000000000000))*(cj5)); +IkReal x710=((IkReal(1.00000000000000))*(sj6)); +IkReal x711=((cj5)*(sj6)); +IkReal x712=((cj5)*(r11)); +IkReal x713=((cj6)*(r00)); +IkReal x714=((cj5)*(cj6)); +IkReal x715=((r02)*(sj5)); +IkReal x716=((cj6)*(r10)); +IkReal x717=((r10)*(sj6)); +IkReal x718=((cj5)*(r01)); +IkReal x719=((sj5)*(x701)); +IkReal x720=((cj0)*(x702)); +IkReal x721=((cj0)*(x701)); +IkReal x722=((sj0)*(x702)); +IkReal x723=((sj0)*(x701)); +IkReal x724=((r20)*(x702)); +IkReal x725=((r21)*(x701)); +IkReal x726=((r21)*(x702)); +IkReal x727=((r20)*(x701)); +IkReal x728=((cj5)*(x723)); +evalcond[0]=((((sj6)*(x726)))+(((r22)*(x719)))+(((IkReal(-1.00000000000000))*(sj2)))+(((x711)*(x727)))+(((x714)*(x725)))+(((IkReal(-1.00000000000000))*(x705)*(x724)))); +evalcond[1]=((((x714)*(x726)))+(((cj2)*(cj3)))+(((IkReal(-1.00000000000000))*(x710)*(x725)))+(((r22)*(sj5)*(x702)))+(((x711)*(x724)))+(((cj6)*(x727)))); +evalcond[2]=((((x715)*(x723)))+(((x703)*(x728)))+(((x708)*(x722)))+(((x706)*(x728)))+(((x716)*(x720)))+(cj2)+(((IkReal(-1.00000000000000))*(x705)*(x712)*(x721)))+(((IkReal(-1.00000000000000))*(cj0)*(x704)*(x719)))+(((IkReal(-1.00000000000000))*(r00)*(x705)*(x722)))+(((IkReal(-1.00000000000000))*(x709)*(x717)*(x721)))+(((IkReal(-1.00000000000000))*(x707)*(x720)))); +evalcond[3]=((((x715)*(x722)))+(((IkReal(-1.00000000000000))*(r10)*(x705)*(x721)))+(((x707)*(x721)))+(((cj5)*(x706)*(x722)))+(((cj5)*(x703)*(x722)))+(((IkReal(-1.00000000000000))*(x709)*(x717)*(x720)))+(((x713)*(x723)))+(((IkReal(-1.00000000000000))*(x705)*(x712)*(x720)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(sj5)*(x704)*(x720)))+(((IkReal(-1.00000000000000))*(x708)*(x723)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x709)*(x717)*(x723)))+(((IkReal(-1.00000000000000))*(x703)*(x709)*(x721)))+(((IkReal(-1.00000000000000))*(sj0)*(x704)*(x719)))+(((IkReal(-1.00000000000000))*(x715)*(x721)))+(((IkReal(-1.00000000000000))*(x708)*(x720)))+(((x713)*(x720)))+(((x716)*(x722)))+(((IkReal(-1.00000000000000))*(x705)*(x718)*(x721)))+(((IkReal(-1.00000000000000))*(x707)*(x722)))+(((IkReal(-1.00000000000000))*(x705)*(x712)*(x723)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x715)*(x720)))+(((IkReal(-1.00000000000000))*(r00)*(x705)*(x721)))+(((IkReal(-1.00000000000000))*(r10)*(x705)*(x723)))+(((x707)*(x723)))+(((IkReal(-1.00000000000000))*(x705)*(x718)*(x720)))+(((IkReal(-1.00000000000000))*(x703)*(x709)*(x720)))+(((IkReal(-1.00000000000000))*(x705)*(x712)*(x722)))+(((IkReal(-1.00000000000000))*(x709)*(x717)*(x722)))+(((IkReal(-1.00000000000000))*(sj3)))+(((x708)*(x721)))+(((IkReal(-1.00000000000000))*(sj5)*(x704)*(x722)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x729=((r01)*(sj0)); +IkReal x730=((IkReal(1.00000000000000))*(cj0)); +IkReal x731=((r10)*(sj2)); +IkReal x732=((sj2)*(sj5)); +IkReal x733=((IkReal(1.00000000000000))*(sj6)); +IkReal x734=((cj2)*(r21)); +IkReal x735=((cj5)*(sj6)); +IkReal x736=((cj2)*(r20)); +IkReal x737=((cj5)*(cj6)*(sj2)); +IkReal x738=((r00)*(sj0)*(sj2)); +if( IKabs(((gconst39)*(((((cj6)*(x736)))+(((cj6)*(x738)))+(((cj0)*(r11)*(sj2)*(sj6)))+(((IkReal(-1.00000000000000))*(x733)*(x734)))+(((IkReal(-1.00000000000000))*(sj2)*(x729)*(x733)))+(((IkReal(-1.00000000000000))*(cj6)*(x730)*(x731))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst39)*(((((cj2)*(r22)*(sj5)))+(((x729)*(x737)))+(((IkReal(-1.00000000000000))*(r12)*(x730)*(x732)))+(((x735)*(x738)))+(((IkReal(-1.00000000000000))*(r11)*(x730)*(x737)))+(((x735)*(x736)))+(((r02)*(sj0)*(x732)))+(((IkReal(-1.00000000000000))*(x730)*(x731)*(x735)))+(((cj5)*(cj6)*(x734))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst39)*(((((cj6)*(x736)))+(((cj6)*(x738)))+(((cj0)*(r11)*(sj2)*(sj6)))+(((IkReal(-1.00000000000000))*(x733)*(x734)))+(((IkReal(-1.00000000000000))*(sj2)*(x729)*(x733)))+(((IkReal(-1.00000000000000))*(cj6)*(x730)*(x731)))))), ((gconst39)*(((((cj2)*(r22)*(sj5)))+(((x729)*(x737)))+(((IkReal(-1.00000000000000))*(r12)*(x730)*(x732)))+(((x735)*(x738)))+(((IkReal(-1.00000000000000))*(r11)*(x730)*(x737)))+(((x735)*(x736)))+(((r02)*(sj0)*(x732)))+(((IkReal(-1.00000000000000))*(x730)*(x731)*(x735)))+(((cj5)*(cj6)*(x734))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x739=IKsin(j4); +IkReal x740=IKcos(j4); +IkReal x741=((r00)*(sj6)); +IkReal x742=((cj6)*(r01)); +IkReal x743=((IkReal(1.00000000000000))*(cj0)); +IkReal x744=((IkReal(1.00000000000000))*(sj0)); +IkReal x745=((r10)*(sj6)); +IkReal x746=((sj5)*(x739)); +IkReal x747=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x748=((cj5)*(x739)); +IkReal x749=((cj6)*(x740)); +IkReal x750=((sj0)*(x748)); +IkReal x751=((r01)*(sj6)*(x740)); +IkReal x752=((r11)*(sj6)*(x740)); +evalcond[0]=((((r20)*(sj6)*(x748)))+(((IkReal(-1.00000000000000))*(sj2)))+(((r21)*(sj6)*(x740)))+(((r22)*(x746)))+(((IkReal(-1.00000000000000))*(r20)*(x749)))+(((cj6)*(r21)*(x748)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r12)*(x743)*(x746)))+(((sj0)*(x751)))+(((IkReal(-1.00000000000000))*(x743)*(x752)))+(((IkReal(-1.00000000000000))*(x743)*(x745)*(x748)))+(cj2)+(((x742)*(x750)))+(((x741)*(x750)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x743)*(x748)))+(((IkReal(-1.00000000000000))*(r00)*(x744)*(x749)))+(((cj0)*(r10)*(x749)))+(((r02)*(sj0)*(x746)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x744)*(x745)*(x748)))+(((IkReal(-1.00000000000000))*(x742)*(x743)*(x748)))+(((IkReal(-1.00000000000000))*(r02)*(x743)*(x746)))+(((IkReal(-1.00000000000000))*(x744)*(x752)))+(((cj0)*(r00)*(x749)))+(((IkReal(-1.00000000000000))*(r12)*(x744)*(x746)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x744)*(x748)))+(((IkReal(-1.00000000000000))*(x741)*(x743)*(x748)))+(((r10)*(sj0)*(x749)))+(((IkReal(-1.00000000000000))*(x743)*(x751)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst43; +gconst43=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x753=((cj5)*(sj4)); +IkReal x754=((IkReal(1.00000000000000))*(sj6)); +IkReal x755=((r10)*(sj0)); +IkReal x756=((sj4)*(sj5)); +IkReal x757=((cj5)*(cj6)); +IkReal x758=((r01)*(sj0)); +IkReal x759=((IkReal(1.00000000000000))*(r02)); +IkReal x760=((IkReal(0.374290000000000))*(cj0)); +IkReal x761=((cj5)*(r12)); +IkReal x762=((cj6)*(sj5)); +IkReal x763=((cj0)*(r11)); +IkReal x764=((cj5)*(sj0)); +IkReal x765=((r20)*(sj6)); +IkReal x766=((IkReal(1.00000000000000))*(sj0)); +IkReal x767=((cj4)*(cj5)); +IkReal x768=((IkReal(1.00000000000000))*(cj6)); +IkReal x769=((IkReal(0.0100000000000000))*(sj5)); +IkReal x770=((sj5)*(sj6)); +IkReal x771=((cj0)*(r10)); +IkReal x772=((cj4)*(cj6)); +IkReal x773=((cj0)*(r01)); +IkReal x774=((IkReal(1.00000000000000))*(cj4)); +IkReal x775=((cj0)*(r00)); +IkReal x776=((IkReal(0.374290000000000))*(sj0)); +IkReal x777=((cj0)*(r12)); +IkReal x778=((IkReal(0.374290000000000))*(sj5)); +IkReal x779=((cj4)*(sj6)); +IkReal x780=((IkReal(1.00000000000000))*(cj0)); +IkReal x781=((r02)*(sj0)); +IkReal x782=((IkReal(0.0100000000000000))*(cj5)); +IkReal x783=((r11)*(sj0)); +IkReal x784=((r00)*(sj0)*(sj6)); +IkReal x785=((r00)*(x772)); +IkReal x786=((sj6)*(x782)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x756)))+(((cj6)*(r21)*(x753)))+(((x753)*(x765)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x768)))+(((r21)*(x779)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x769)))+(((IkReal(-0.0100000000000000))*(r21)*(x757)))+(((IkReal(-1.00000000000000))*(x765)*(x782)))+(((IkReal(0.374290000000000))*(r21)*(x762)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x765)*(x778)))); +evalcond[3]=((((cj0)*(x761)))+(((x758)*(x762)))+(((IkReal(-1.00000000000000))*(x762)*(x763)))+(((IkReal(-1.00000000000000))*(x759)*(x764)))+(((IkReal(-1.00000000000000))*(sj5)*(x754)*(x771)))+(((r00)*(sj0)*(x770)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x753)*(x763)*(x768)))+(((x753)*(x784)))+(((IkReal(-1.00000000000000))*(cj4)*(x754)*(x763)))+(((cj6)*(x753)*(x758)))+(((IkReal(-1.00000000000000))*(x753)*(x754)*(x771)))+(((x756)*(x781)))+(((IkReal(-1.00000000000000))*(x766)*(x785)))+(((x771)*(x772)))+(((x758)*(x779)))+(((IkReal(-1.00000000000000))*(x756)*(x777)))); +evalcond[5]=((((sj4)*(sj6)*(x763)))+(((IkReal(-1.00000000000000))*(sj4)*(x754)*(x758)))+(((IkReal(-1.00000000000000))*(sj5)*(x774)*(x777)))+(((r00)*(x764)*(x779)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(sj5)*(x781)))+(((IkReal(-1.00000000000000))*(sj4)*(x768)*(x771)))+(((IkReal(-1.00000000000000))*(x754)*(x767)*(x771)))+(((cj4)*(x757)*(x758)))+(((IkReal(-1.00000000000000))*(x757)*(x763)*(x774)))); +evalcond[6]=((((x755)*(x772)))+(((IkReal(-1.00000000000000))*(x753)*(x754)*(x775)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x753)*(x766)))+(((x772)*(x775)))+(((IkReal(-1.00000000000000))*(cj4)*(x754)*(x783)))+(((IkReal(-1.00000000000000))*(x753)*(x768)*(x773)))+(((IkReal(-1.00000000000000))*(x753)*(x754)*(x755)))+(((IkReal(-1.00000000000000))*(cj0)*(x756)*(x759)))+(((IkReal(-1.00000000000000))*(cj4)*(x754)*(x773)))+(((IkReal(-1.00000000000000))*(r12)*(x756)*(x766)))); +evalcond[7]=((((IkReal(-0.0100000000000000))*(x757)*(x758)))+(((IkReal(0.374290000000000))*(x758)*(x762)))+(((x769)*(x777)))+(((IkReal(-1.00000000000000))*(r11)*(x760)*(x762)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x764)))+(((IkReal(-1.00000000000000))*(py)*(x780)))+(((IkReal(-1.00000000000000))*(x769)*(x781)))+(((x760)*(x761)))+(((r00)*(x770)*(x776)))+(((x771)*(x786)))+(((IkReal(0.0100000000000000))*(x757)*(x763)))+(((IkReal(-1.00000000000000))*(r10)*(x760)*(x770)))+(((px)*(sj0)))+(((IkReal(-0.374290000000000))*(r02)*(x764)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x755)*(x786)))+(((x775)*(x786)))+(((IkReal(-0.374290000000000))*(x755)*(x770)))+(((IkReal(-1.00000000000000))*(r11)*(x762)*(x776)))+(((IkReal(-1.00000000000000))*(py)*(x766)))+(((IkReal(0.0100000000000000))*(x757)*(x773)))+(((x761)*(x776)))+(((cj0)*(r02)*(x769)))+(((IkReal(0.0100000000000000))*(x757)*(x783)))+(((IkReal(-1.00000000000000))*(r01)*(x760)*(x762)))+(((IkReal(-1.00000000000000))*(px)*(x780)))+(((cj5)*(r02)*(x760)))+(((r12)*(sj0)*(x769)))+(((IkReal(-1.00000000000000))*(r00)*(x760)*(x770)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x787=((IkReal(1.00000000000000))*(cj4)); +IkReal x788=((cj6)*(r21)); +IkReal x789=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x788)))+(((sj5)*(x789))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x787)*(x788)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x787)*(x789)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x787)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x788)))+(((sj5)*(x789)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x787)*(x788)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x787)*(x789)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x787)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x788)))+(((sj5)*(x789)))), ((((IkReal(-1.00000000000000))*(cj5)*(x787)*(x788)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x787)*(x789)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x787)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x790=IKcos(j3); +IkReal x791=((IkReal(1.00000000000000))*(cj4)); +IkReal x792=((sj0)*(sj5)); +IkReal x793=((cj0)*(cj5)); +IkReal x794=((cj6)*(r01)); +IkReal x795=((r00)*(sj6)); +IkReal x796=((cj6)*(r11)); +IkReal x797=((cj5)*(sj0)); +IkReal x798=((cj6)*(sj4)); +IkReal x799=((sj4)*(sj6)); +IkReal x800=((cj4)*(cj5)); +IkReal x801=((cj6)*(r21)); +IkReal x802=((r20)*(sj6)); +IkReal x803=((r10)*(sj6)); +IkReal x804=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x805=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x804)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x801)))+(((sj5)*(x802)))); +evalcond[1]=((((x800)*(x801)))+(((r20)*(x798)))+(((x800)*(x802)))+(((cj4)*(r22)*(sj5)))+(x790)+(((IkReal(-1.00000000000000))*(r21)*(x799)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x792)*(x803)))+(((r12)*(x797)))+(((r02)*(x793)))+(((IkReal(-1.00000000000000))*(x794)*(x805)))+(((IkReal(-1.00000000000000))*(x792)*(x796)))+(((IkReal(-1.00000000000000))*(x790)))+(((IkReal(-1.00000000000000))*(x795)*(x805)))); +evalcond[3]=((((r11)*(sj0)*(x799)))+(((IkReal(-1.00000000000000))*(x791)*(x797)*(x803)))+(((IkReal(-1.00000000000000))*(x791)*(x793)*(x794)))+(((IkReal(-1.00000000000000))*(x804)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x791)))+(((IkReal(-1.00000000000000))*(r12)*(x791)*(x792)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x798)))+(((cj0)*(r01)*(x799)))+(((IkReal(-1.00000000000000))*(x791)*(x796)*(x797)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x798)))+(((IkReal(-1.00000000000000))*(x791)*(x793)*(x795)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x806=((cj5)*(sj4)); +IkReal x807=((IkReal(1.00000000000000))*(sj6)); +IkReal x808=((r10)*(sj0)); +IkReal x809=((sj4)*(sj5)); +IkReal x810=((cj5)*(cj6)); +IkReal x811=((r01)*(sj0)); +IkReal x812=((IkReal(1.00000000000000))*(r02)); +IkReal x813=((IkReal(0.374290000000000))*(cj0)); +IkReal x814=((cj5)*(r12)); +IkReal x815=((cj6)*(sj5)); +IkReal x816=((cj0)*(r11)); +IkReal x817=((cj5)*(sj0)); +IkReal x818=((r20)*(sj6)); +IkReal x819=((IkReal(1.00000000000000))*(sj0)); +IkReal x820=((cj4)*(cj5)); +IkReal x821=((IkReal(1.00000000000000))*(cj6)); +IkReal x822=((IkReal(0.0100000000000000))*(sj5)); +IkReal x823=((sj5)*(sj6)); +IkReal x824=((cj0)*(r10)); +IkReal x825=((cj4)*(cj6)); +IkReal x826=((cj0)*(r01)); +IkReal x827=((IkReal(1.00000000000000))*(cj4)); +IkReal x828=((cj0)*(r00)); +IkReal x829=((IkReal(0.374290000000000))*(sj0)); +IkReal x830=((cj0)*(r12)); +IkReal x831=((IkReal(0.374290000000000))*(sj5)); +IkReal x832=((cj4)*(sj6)); +IkReal x833=((IkReal(1.00000000000000))*(cj0)); +IkReal x834=((r02)*(sj0)); +IkReal x835=((IkReal(0.0100000000000000))*(cj5)); +IkReal x836=((r11)*(sj0)); +IkReal x837=((r00)*(sj0)*(sj6)); +IkReal x838=((r00)*(x825)); +IkReal x839=((sj6)*(x835)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((cj6)*(r21)*(x806)))+(((r21)*(x832)))+(((x806)*(x818)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x821)))+(((r22)*(x809)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x818)*(x835)))+(((IkReal(0.374290000000000))*(r21)*(x815)))+(((IkReal(-0.0100000000000000))*(r21)*(x810)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x822)))+(((x818)*(x831)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x815)*(x816)))+(((IkReal(-1.00000000000000))*(sj5)*(x807)*(x824)))+(((r00)*(sj0)*(x823)))+(((cj0)*(x814)))+(((IkReal(-1.00000000000000))*(x812)*(x817)))+(((x811)*(x815)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((cj6)*(x806)*(x811)))+(((IkReal(-1.00000000000000))*(x806)*(x807)*(x824)))+(((IkReal(-1.00000000000000))*(x806)*(x816)*(x821)))+(((x824)*(x825)))+(((x811)*(x832)))+(((IkReal(-1.00000000000000))*(cj4)*(x807)*(x816)))+(((IkReal(-1.00000000000000))*(x819)*(x838)))+(((x809)*(x834)))+(((IkReal(-1.00000000000000))*(x809)*(x830)))+(((x806)*(x837)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x807)*(x811)))+(((IkReal(-1.00000000000000))*(sj5)*(x827)*(x830)))+(((sj4)*(sj6)*(x816)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((r00)*(x817)*(x832)))+(((IkReal(-1.00000000000000))*(sj4)*(x821)*(x824)))+(((cj4)*(x810)*(x811)))+(((IkReal(-1.00000000000000))*(x810)*(x816)*(x827)))+(((IkReal(-1.00000000000000))*(x807)*(x820)*(x824)))+(((cj4)*(sj5)*(x834)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj0)*(x809)*(x812)))+(((IkReal(-1.00000000000000))*(x806)*(x821)*(x826)))+(((IkReal(-1.00000000000000))*(cj4)*(x807)*(x826)))+(((IkReal(-1.00000000000000))*(x806)*(x807)*(x828)))+(((IkReal(-1.00000000000000))*(x806)*(x807)*(x808)))+(((IkReal(-1.00000000000000))*(cj4)*(x807)*(x836)))+(((IkReal(-1.00000000000000))*(r12)*(x809)*(x819)))+(((x808)*(x825)))+(((x825)*(x828)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x806)*(x819)))); +evalcond[7]=((((x824)*(x839)))+(((IkReal(-1.00000000000000))*(r11)*(x813)*(x815)))+(((r00)*(x823)*(x829)))+(((IkReal(-0.0100000000000000))*(x810)*(x811)))+(((IkReal(-1.00000000000000))*(py)*(x833)))+(((IkReal(-0.374290000000000))*(r02)*(x817)))+(((IkReal(0.0100000000000000))*(x810)*(x816)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x817)))+(((IkReal(0.374290000000000))*(x811)*(x815)))+(((x813)*(x814)))+(((IkReal(-1.00000000000000))*(x822)*(x834)))+(((x822)*(x830)))+(((IkReal(-1.00000000000000))*(r10)*(x813)*(x823)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(r00)*(x813)*(x823)))+(((IkReal(-0.374290000000000))*(x808)*(x823)))+(((IkReal(0.0100000000000000))*(x810)*(x826)))+(((x808)*(x839)))+(((IkReal(0.0100000000000000))*(x810)*(x836)))+(((IkReal(-1.00000000000000))*(px)*(x833)))+(((r12)*(sj0)*(x822)))+(((IkReal(-1.00000000000000))*(r11)*(x815)*(x829)))+(((IkReal(-1.00000000000000))*(r01)*(x813)*(x815)))+(((cj5)*(r02)*(x813)))+(((IkReal(-1.00000000000000))*(py)*(x819)))+(((x814)*(x829)))+(((cj0)*(r02)*(x822)))+(((x828)*(x839)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x840=((IkReal(1.00000000000000))*(r21)); +IkReal x841=((cj4)*(cj5)); +IkReal x842=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x842)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x840))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x840)))+(((x841)*(x842)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x841))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x842)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x840)))))+IKsqr(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x840)))+(((x841)*(x842)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x841)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x842)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x840)))), ((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x840)))+(((x841)*(x842)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x841))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x843=IKsin(j3); +IkReal x844=((IkReal(1.00000000000000))*(cj4)); +IkReal x845=((sj0)*(sj5)); +IkReal x846=((cj0)*(cj5)); +IkReal x847=((cj6)*(r01)); +IkReal x848=((r00)*(sj6)); +IkReal x849=((cj6)*(r11)); +IkReal x850=((cj5)*(sj0)); +IkReal x851=((cj6)*(sj4)); +IkReal x852=((sj4)*(sj6)); +IkReal x853=((cj4)*(cj5)); +IkReal x854=((cj6)*(r21)); +IkReal x855=((r20)*(sj6)); +IkReal x856=((r10)*(sj6)); +IkReal x857=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x858=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x854)))+(((sj5)*(x855)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x843)); +evalcond[1]=((((r20)*(x851)))+(((x853)*(x854)))+(((cj4)*(r22)*(sj5)))+(((x853)*(x855)))+(((IkReal(-1.00000000000000))*(x857)))+(((IkReal(-1.00000000000000))*(r21)*(x852)))); +evalcond[2]=((((r12)*(x850)))+(((IkReal(-1.00000000000000))*(x848)*(x858)))+(((IkReal(-1.00000000000000))*(x845)*(x849)))+(((IkReal(-1.00000000000000))*(x857)))+(((IkReal(-1.00000000000000))*(x847)*(x858)))+(((IkReal(-1.00000000000000))*(x845)*(x856)))+(((r02)*(x846)))); +evalcond[3]=((((r11)*(sj0)*(x852)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x844)))+(((cj0)*(r01)*(x852)))+(((IkReal(-1.00000000000000))*(x843)))+(((IkReal(-1.00000000000000))*(x844)*(x849)*(x850)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x851)))+(((IkReal(-1.00000000000000))*(r12)*(x844)*(x845)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x851)))+(((IkReal(-1.00000000000000))*(x844)*(x846)*(x848)))+(((IkReal(-1.00000000000000))*(x844)*(x846)*(x847)))+(((IkReal(-1.00000000000000))*(x844)*(x850)*(x856)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x859=((IkReal(1.00000000000000))*(cj0)); +IkReal x860=((cj4)*(sj6)); +IkReal x861=((sj0)*(sj4)); +IkReal x862=((cj5)*(sj6)); +IkReal x863=((sj4)*(sj5)); +IkReal x864=((r12)*(sj5)); +IkReal x865=((IkReal(0.374290000000000))*(cj5)); +IkReal x866=((r02)*(sj0)); +IkReal x867=((r20)*(sj4)); +IkReal x868=((IkReal(1.00000000000000))*(sj0)); +IkReal x869=((IkReal(1.00000000000000))*(cj5)); +IkReal x870=((cj0)*(r10)); +IkReal x871=((cj4)*(cj6)); +IkReal x872=((r00)*(sj0)); +IkReal x873=((cj6)*(r21)); +IkReal x874=((IkReal(0.374290000000000))*(sj5)); +IkReal x875=((cj0)*(r00)); +IkReal x876=((IkReal(0.0100000000000000))*(sj5)); +IkReal x877=((cj0)*(r02)); +IkReal x878=((cj5)*(sj4)); +IkReal x879=((cj6)*(r01)); +IkReal x880=((cj6)*(r11)); +IkReal x881=((r01)*(sj0)); +IkReal x882=((r10)*(sj0)); +IkReal x883=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x884=((sj6)*(x874)); +IkReal x885=((cj0)*(cj6)*(x874)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x869)))+(((sj5)*(x873)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x863)))+(((x873)*(x878)))+(((x862)*(x867)))+(((IkReal(-1.00000000000000))*(r20)*(x871)))+(((r21)*(x860)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x862)))+(((IkReal(-0.0100000000000000))*(cj5)*(x873)))+(((IkReal(-1.00000000000000))*(r22)*(x876)))+(((x873)*(x874)))+(((r20)*(x884)))+(((IkReal(-1.00000000000000))*(r22)*(x865)))+(pz)); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x860)))+(((cj6)*(x867)))+(((cj5)*(r21)*(x871)))); +evalcond[5]=((((x860)*(x881)))+(((x870)*(x871)))+(((IkReal(-1.00000000000000))*(r12)*(x859)*(x863)))+(((IkReal(-1.00000000000000))*(r00)*(x868)*(x871)))+(((IkReal(-1.00000000000000))*(x859)*(x878)*(x880)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x859)*(x862)))+(((r02)*(sj5)*(x861)))+(((r00)*(x861)*(x862)))+(((cj5)*(x861)*(x879)))+(((IkReal(-1.00000000000000))*(r11)*(x859)*(x860)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x859)*(x878)*(x879)))+(((IkReal(-1.00000000000000))*(r10)*(x861)*(x862)))+(((IkReal(-1.00000000000000))*(x861)*(x864)))+(((IkReal(-1.00000000000000))*(x861)*(x869)*(x880)))+(((IkReal(-1.00000000000000))*(r02)*(x859)*(x863)))+(((x871)*(x882)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x859)*(x862)))+(((IkReal(-1.00000000000000))*(r01)*(x859)*(x860)))+(((x871)*(x875)))+(((IkReal(-1.00000000000000))*(r11)*(x860)*(x868)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x879)))+(((IkReal(0.0100000000000000))*(cj0)*(x864)))+(((IkReal(-0.0100000000000000))*(x862)*(x872)))+(((IkReal(-1.00000000000000))*(x865)*(x866)))+(((IkReal(0.0100000000000000))*(x862)*(x870)))+(((sj0)*(x874)*(x879)))+(((x872)*(x884)))+(((cj0)*(r12)*(x865)))+(((IkReal(-1.00000000000000))*(cj0)*(x874)*(x880)))+(((IkReal(-1.00000000000000))*(py)*(x859)))+(((IkReal(-1.00000000000000))*(x870)*(x884)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x866)*(x876)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x880)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(py)*(x868)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x879)))+(((IkReal(-1.00000000000000))*(x882)*(x884)))+(((r12)*(sj0)*(x865)))+(((IkReal(0.0100000000000000))*(sj0)*(x864)))+(((x876)*(x877)))+(((IkReal(0.0100000000000000))*(x862)*(x875)))+(((IkReal(-1.00000000000000))*(cj0)*(x874)*(x879)))+(((IkReal(-1.00000000000000))*(sj0)*(x874)*(x880)))+(((IkReal(-1.00000000000000))*(x875)*(x884)))+(((x865)*(x877)))+(((IkReal(0.0100000000000000))*(x862)*(x882)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x880)))+(((IkReal(-1.00000000000000))*(px)*(x859)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x886=((cj0)*(cj5)); +IkReal x887=((IkReal(1.00000000000000))*(cj0)); +IkReal x888=((cj6)*(r11)); +IkReal x889=((r10)*(sj6)); +IkReal x890=((cj5)*(sj0)); +IkReal x891=((r00)*(sj5)*(sj6)); +IkReal x892=((cj6)*(r01)*(sj5)); +IkReal x893=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((r12)*(x886)))+(((IkReal(-1.00000000000000))*(r02)*(x890)))+(((sj0)*(x891)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x888)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x889)))+(((sj0)*(x892))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x887)*(x892)))+(((IkReal(-1.00000000000000))*(x887)*(x891)))+(((IkReal(-1.00000000000000))*(x888)*(x893)))+(((IkReal(-1.00000000000000))*(x889)*(x893)))+(((r02)*(x886)))+(((r12)*(x890))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r12)*(x886)))+(((IkReal(-1.00000000000000))*(r02)*(x890)))+(((sj0)*(x891)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x888)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x889)))+(((sj0)*(x892)))))+IKsqr(((((IkReal(-1.00000000000000))*(x887)*(x892)))+(((IkReal(-1.00000000000000))*(x887)*(x891)))+(((IkReal(-1.00000000000000))*(x888)*(x893)))+(((IkReal(-1.00000000000000))*(x889)*(x893)))+(((r02)*(x886)))+(((r12)*(x890)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r12)*(x886)))+(((IkReal(-1.00000000000000))*(r02)*(x890)))+(((sj0)*(x891)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x888)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x889)))+(((sj0)*(x892)))), ((((IkReal(-1.00000000000000))*(x887)*(x892)))+(((IkReal(-1.00000000000000))*(x887)*(x891)))+(((IkReal(-1.00000000000000))*(x888)*(x893)))+(((IkReal(-1.00000000000000))*(x889)*(x893)))+(((r02)*(x886)))+(((r12)*(x890))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x894=IKcos(j3); +IkReal x895=((sj0)*(sj5)); +IkReal x896=((r00)*(sj6)); +IkReal x897=((cj6)*(sj0)); +IkReal x898=((IkReal(1.00000000000000))*(cj4)); +IkReal x899=((r00)*(sj4)); +IkReal x900=((cj0)*(cj5)); +IkReal x901=((cj5)*(sj0)); +IkReal x902=((cj6)*(r11)); +IkReal x903=((r10)*(sj6)); +IkReal x904=((cj0)*(sj5)); +IkReal x905=((r10)*(sj4)); +IkReal x906=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x907=((cj4)*(cj5)*(r01)); +IkReal x908=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x909=((cj0)*(sj4)*(sj6)); +IkReal x910=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x901)))+(((IkReal(-1.00000000000000))*(x903)*(x904)))+(((cj6)*(r01)*(x895)))+(((IkReal(-1.00000000000000))*(x902)*(x904)))+(((r12)*(x900)))+(((x895)*(x896)))+(((IkReal(-1.00000000000000))*(x906)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x895)*(x903)))+(((IkReal(-1.00000000000000))*(x896)*(x904)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x904)))+(((r02)*(x900)))+(((IkReal(-1.00000000000000))*(x894)))+(((IkReal(-1.00000000000000))*(x895)*(x902)))+(((r12)*(x901)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x905)*(x908)))+(((r11)*(x909)))+(((IkReal(-1.00000000000000))*(r12)*(x898)*(x904)))+(((IkReal(-1.00000000000000))*(r01)*(x910)))+(((x897)*(x907)))+(((IkReal(-1.00000000000000))*(x898)*(x900)*(x903)))+(((x897)*(x899)))+(((IkReal(-1.00000000000000))*(x898)*(x900)*(x902)))+(x894)+(((cj4)*(x896)*(x901)))+(((cj4)*(r02)*(x895)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x897)*(x898)))+(((IkReal(-1.00000000000000))*(r12)*(x895)*(x898)))+(((IkReal(-1.00000000000000))*(r02)*(x898)*(x904)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x898)*(x900)))+(((IkReal(-1.00000000000000))*(x899)*(x908)))+(((r11)*(x910)))+(((IkReal(-1.00000000000000))*(x897)*(x905)))+(((IkReal(-1.00000000000000))*(x896)*(x898)*(x900)))+(((r01)*(x909)))+(((IkReal(-1.00000000000000))*(x898)*(x901)*(x903)))+(((IkReal(-1.00000000000000))*(x906)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x911=((IkReal(1.00000000000000))*(cj0)); +IkReal x912=((cj4)*(sj6)); +IkReal x913=((sj0)*(sj4)); +IkReal x914=((cj5)*(sj6)); +IkReal x915=((sj4)*(sj5)); +IkReal x916=((r12)*(sj5)); +IkReal x917=((IkReal(0.374290000000000))*(cj5)); +IkReal x918=((r02)*(sj0)); +IkReal x919=((r20)*(sj4)); +IkReal x920=((IkReal(1.00000000000000))*(sj0)); +IkReal x921=((IkReal(1.00000000000000))*(cj5)); +IkReal x922=((cj0)*(r10)); +IkReal x923=((cj4)*(cj6)); +IkReal x924=((r00)*(sj0)); +IkReal x925=((cj6)*(r21)); +IkReal x926=((IkReal(0.374290000000000))*(sj5)); +IkReal x927=((cj0)*(r00)); +IkReal x928=((IkReal(0.0100000000000000))*(sj5)); +IkReal x929=((cj0)*(r02)); +IkReal x930=((cj5)*(sj4)); +IkReal x931=((cj6)*(r01)); +IkReal x932=((cj6)*(r11)); +IkReal x933=((r01)*(sj0)); +IkReal x934=((r10)*(sj0)); +IkReal x935=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x936=((sj6)*(x926)); +IkReal x937=((cj0)*(cj6)*(x926)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x921)))+(((sj5)*(x925)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((r21)*(x912)))+(((x914)*(x919)))+(((IkReal(-1.00000000000000))*(r20)*(x923)))+(((r22)*(x915)))+(((x925)*(x930)))); +evalcond[3]=((((x925)*(x926)))+(((IkReal(-1.00000000000000))*(r22)*(x917)))+(pz)+(((r20)*(x936)))+(((IkReal(-0.0100000000000000))*(r20)*(x914)))+(((IkReal(-0.0100000000000000))*(cj5)*(x925)))+(((IkReal(-1.00000000000000))*(r22)*(x928)))); +evalcond[4]=((((cj5)*(r21)*(x923)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x912)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x919)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r11)*(x911)*(x912)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x911)*(x914)))+(((IkReal(-1.00000000000000))*(r00)*(x920)*(x923)))+(((IkReal(-1.00000000000000))*(r12)*(x911)*(x915)))+(((r02)*(sj5)*(x913)))+(((IkReal(-1.00000000000000))*(x911)*(x930)*(x932)))+(((cj5)*(x913)*(x931)))+(((x912)*(x933)))+(((r00)*(x913)*(x914)))+(((x922)*(x923)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r02)*(x911)*(x915)))+(((x923)*(x934)))+(((IkReal(-1.00000000000000))*(x911)*(x930)*(x931)))+(((IkReal(-1.00000000000000))*(r10)*(x913)*(x914)))+(((IkReal(-1.00000000000000))*(x913)*(x921)*(x932)))+(((IkReal(-1.00000000000000))*(x913)*(x916)))+(((IkReal(-1.00000000000000))*(r11)*(x912)*(x920)))+(((x923)*(x927)))+(((IkReal(-1.00000000000000))*(r01)*(x911)*(x912)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x911)*(x914)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x911)))+(((IkReal(-0.0100000000000000))*(x914)*(x924)))+(((IkReal(-1.00000000000000))*(x918)*(x928)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x932)))+(((IkReal(0.0100000000000000))*(cj0)*(x916)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x931)))+(((IkReal(-1.00000000000000))*(x917)*(x918)))+(((sj0)*(x926)*(x931)))+(((IkReal(-1.00000000000000))*(x922)*(x936)))+(((IkReal(0.0100000000000000))*(x914)*(x922)))+(((cj0)*(r12)*(x917)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(x926)*(x932)))+(((x924)*(x936)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x932)))+(((IkReal(0.0100000000000000))*(x914)*(x927)))+(((IkReal(0.0100000000000000))*(x914)*(x934)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x931)))+(((x928)*(x929)))+(((IkReal(-1.00000000000000))*(sj0)*(x926)*(x932)))+(((IkReal(-1.00000000000000))*(py)*(x920)))+(((IkReal(-1.00000000000000))*(cj0)*(x926)*(x931)))+(((x917)*(x929)))+(((IkReal(-1.00000000000000))*(px)*(x911)))+(((IkReal(-1.00000000000000))*(x934)*(x936)))+(((IkReal(0.0100000000000000))*(sj0)*(x916)))+(((IkReal(-1.00000000000000))*(x927)*(x936)))+(((r12)*(sj0)*(x917)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x938=((cj5)*(r02)); +IkReal x939=((cj0)*(sj5)); +IkReal x940=((r10)*(sj6)); +IkReal x941=((IkReal(1.00000000000000))*(cj6)); +IkReal x942=((sj0)*(sj5)); +IkReal x943=((cj5)*(r12)); +IkReal x944=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x943)))+(((IkReal(-1.00000000000000))*(r01)*(x941)*(x942)))+(((cj6)*(r11)*(x939)))+(((x939)*(x940)))+(((sj0)*(x938)))+(((IkReal(-1.00000000000000))*(x942)*(x944))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x940)*(x942)))+(((IkReal(-1.00000000000000))*(r01)*(x939)*(x941)))+(((sj0)*(x943)))+(((IkReal(-1.00000000000000))*(r11)*(x941)*(x942)))+(((cj0)*(x938)))+(((IkReal(-1.00000000000000))*(x939)*(x944))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x943)))+(((IkReal(-1.00000000000000))*(r01)*(x941)*(x942)))+(((cj6)*(r11)*(x939)))+(((x939)*(x940)))+(((sj0)*(x938)))+(((IkReal(-1.00000000000000))*(x942)*(x944)))))+IKsqr(((((IkReal(-1.00000000000000))*(x940)*(x942)))+(((IkReal(-1.00000000000000))*(r01)*(x939)*(x941)))+(((sj0)*(x943)))+(((IkReal(-1.00000000000000))*(r11)*(x941)*(x942)))+(((cj0)*(x938)))+(((IkReal(-1.00000000000000))*(x939)*(x944)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x943)))+(((IkReal(-1.00000000000000))*(r01)*(x941)*(x942)))+(((cj6)*(r11)*(x939)))+(((x939)*(x940)))+(((sj0)*(x938)))+(((IkReal(-1.00000000000000))*(x942)*(x944)))), ((((IkReal(-1.00000000000000))*(x940)*(x942)))+(((IkReal(-1.00000000000000))*(r01)*(x939)*(x941)))+(((sj0)*(x943)))+(((IkReal(-1.00000000000000))*(r11)*(x941)*(x942)))+(((cj0)*(x938)))+(((IkReal(-1.00000000000000))*(x939)*(x944))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x945=IKsin(j3); +IkReal x946=((sj0)*(sj5)); +IkReal x947=((r00)*(sj6)); +IkReal x948=((IkReal(1.00000000000000))*(cj4)); +IkReal x949=((cj6)*(sj0)); +IkReal x950=((r00)*(sj4)); +IkReal x951=((cj0)*(cj5)); +IkReal x952=((cj6)*(r01)); +IkReal x953=((cj5)*(sj0)); +IkReal x954=((cj0)*(sj5)); +IkReal x955=((cj6)*(r11)); +IkReal x956=((r10)*(sj6)); +IkReal x957=((r10)*(sj4)); +IkReal x958=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x959=((cj0)*(sj4)*(sj6)); +IkReal x960=((sj0)*(sj4)*(sj6)); +IkReal x961=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((x946)*(x952)))+(((IkReal(-1.00000000000000))*(x954)*(x955)))+(((r12)*(x951)))+(((x946)*(x947)))+(x945)+(((IkReal(-1.00000000000000))*(r02)*(x953)))+(((IkReal(-1.00000000000000))*(x954)*(x956)))); +evalcond[1]=((((r02)*(x951)))+(((r12)*(x953)))+(((IkReal(-1.00000000000000))*(x946)*(x955)))+(((IkReal(-1.00000000000000))*(x947)*(x954)))+(((IkReal(-1.00000000000000))*(x946)*(x956)))+(((IkReal(-1.00000000000000))*(x958)))+(((IkReal(-1.00000000000000))*(x952)*(x954)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x960)))+(((cj4)*(x947)*(x953)))+(((r11)*(x959)))+(((cj4)*(cj5)*(r01)*(x949)))+(((IkReal(-1.00000000000000))*(x957)*(x961)))+(((IkReal(-1.00000000000000))*(x948)*(x951)*(x955)))+(((x949)*(x950)))+(((IkReal(-1.00000000000000))*(r12)*(x948)*(x954)))+(((cj4)*(r02)*(x946)))+(((IkReal(-1.00000000000000))*(x948)*(x951)*(x956)))+(((IkReal(-1.00000000000000))*(x958)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x950)*(x961)))+(((IkReal(-1.00000000000000))*(x945)))+(((IkReal(-1.00000000000000))*(x949)*(x957)))+(((IkReal(-1.00000000000000))*(x948)*(x953)*(x956)))+(((IkReal(-1.00000000000000))*(x948)*(x951)*(x952)))+(((r01)*(x959)))+(((IkReal(-1.00000000000000))*(r12)*(x946)*(x948)))+(((r11)*(x960)))+(((IkReal(-1.00000000000000))*(x947)*(x948)*(x951)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x948)*(x949)))+(((IkReal(-1.00000000000000))*(r02)*(x948)*(x954)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x962=((cj0)*(cj5)); +IkReal x963=((IkReal(1.00000000000000))*(cj0)); +IkReal x964=((cj6)*(r11)); +IkReal x965=((r10)*(sj6)); +IkReal x966=((cj5)*(sj0)); +IkReal x967=((r00)*(sj5)*(sj6)); +IkReal x968=((cj6)*(r01)*(sj5)); +IkReal x969=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x962)))+(((IkReal(-1.00000000000000))*(r02)*(x966)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x965)))+(((sj0)*(x967)))+(((sj0)*(x968)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x964))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x964)*(x969)))+(((IkReal(-1.00000000000000))*(x963)*(x968)))+(((IkReal(-1.00000000000000))*(x965)*(x969)))+(((r02)*(x962)))+(((r12)*(x966)))+(((IkReal(-1.00000000000000))*(x963)*(x967))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x962)))+(((IkReal(-1.00000000000000))*(r02)*(x966)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x965)))+(((sj0)*(x967)))+(((sj0)*(x968)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x964)))))))+IKsqr(((((IkReal(-1.00000000000000))*(x964)*(x969)))+(((IkReal(-1.00000000000000))*(x963)*(x968)))+(((IkReal(-1.00000000000000))*(x965)*(x969)))+(((r02)*(x962)))+(((r12)*(x966)))+(((IkReal(-1.00000000000000))*(x963)*(x967)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x962)))+(((IkReal(-1.00000000000000))*(r02)*(x966)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x965)))+(((sj0)*(x967)))+(((sj0)*(x968)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x964)))))), ((((IkReal(-1.00000000000000))*(x964)*(x969)))+(((IkReal(-1.00000000000000))*(x963)*(x968)))+(((IkReal(-1.00000000000000))*(x965)*(x969)))+(((r02)*(x962)))+(((r12)*(x966)))+(((IkReal(-1.00000000000000))*(x963)*(x967))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x970=IKsin(j3); +IkReal x971=IKcos(j3); +IkReal x972=((sj0)*(sj5)); +IkReal x973=((r00)*(sj6)); +IkReal x974=((IkReal(1.00000000000000))*(cj4)); +IkReal x975=((cj6)*(r01)); +IkReal x976=((cj0)*(cj5)); +IkReal x977=((cj5)*(sj0)); +IkReal x978=((cj6)*(r11)); +IkReal x979=((cj0)*(sj5)); +IkReal x980=((cj6)*(sj4)); +IkReal x981=((cj4)*(cj5)); +IkReal x982=((cj6)*(r21)); +IkReal x983=((r20)*(sj6)); +IkReal x984=((r10)*(sj6)); +IkReal x985=((IkReal(1.00000000000000))*(cj0)); +IkReal x986=((IkReal(1.00000000000000))*(x970)); +IkReal x987=((cj0)*(sj4)*(sj6)); +IkReal x988=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj2)*(x986)))+(((sj5)*(x982)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x983)))); +evalcond[1]=((((x981)*(x983)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x971)))+(((x981)*(x982)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x980)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x978)*(x979)))+(((x972)*(x975)))+(((IkReal(-1.00000000000000))*(sj2)*(x986)))+(((IkReal(-1.00000000000000))*(x979)*(x984)))+(((IkReal(-1.00000000000000))*(r02)*(x977)))+(((r12)*(x976)))+(((x972)*(x973)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x972)*(x978)))+(((IkReal(-1.00000000000000))*(x973)*(x979)))+(((r02)*(x976)))+(((IkReal(-1.00000000000000))*(x971)))+(((IkReal(-1.00000000000000))*(x972)*(x984)))+(((IkReal(-1.00000000000000))*(x975)*(x979)))+(((r12)*(x977)))); +evalcond[4]=((((r11)*(x987)))+(((IkReal(-1.00000000000000))*(r10)*(x980)*(x985)))+(((r00)*(sj0)*(x980)))+(((IkReal(-1.00000000000000))*(x974)*(x976)*(x978)))+(((cj4)*(r02)*(x972)))+(((cj4)*(x973)*(x977)))+(((IkReal(-1.00000000000000))*(r12)*(x974)*(x979)))+(((cj4)*(x975)*(x977)))+(((IkReal(-1.00000000000000))*(r01)*(x988)))+(((IkReal(-1.00000000000000))*(x974)*(x976)*(x984)))+(((sj2)*(x971)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x973)*(x974)*(x976)))+(((IkReal(-1.00000000000000))*(x974)*(x977)*(x978)))+(((IkReal(-1.00000000000000))*(x974)*(x977)*(x984)))+(((r01)*(x987)))+(((IkReal(-1.00000000000000))*(r00)*(x980)*(x985)))+(((IkReal(-1.00000000000000))*(r02)*(x974)*(x979)))+(((r11)*(x988)))+(((IkReal(-1.00000000000000))*(x986)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x980)))+(((IkReal(-1.00000000000000))*(x974)*(x975)*(x976)))+(((IkReal(-1.00000000000000))*(r12)*(x972)*(x974)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x989=((sj5)*(sj6)); +IkReal x990=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x989)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x989)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x989)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x990)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x990))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x989)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x989)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x989)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x990)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x990)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x989)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x989)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x989)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x990)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x990))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x991=IKsin(j3); +IkReal x992=IKcos(j3); +IkReal x993=((sj0)*(sj5)); +IkReal x994=((r00)*(sj6)); +IkReal x995=((IkReal(1.00000000000000))*(cj4)); +IkReal x996=((cj6)*(r01)); +IkReal x997=((cj0)*(cj5)); +IkReal x998=((cj5)*(sj0)); +IkReal x999=((cj6)*(r11)); +IkReal x1000=((cj0)*(sj5)); +IkReal x1001=((cj6)*(sj4)); +IkReal x1002=((cj4)*(cj5)); +IkReal x1003=((cj6)*(r21)); +IkReal x1004=((r20)*(sj6)); +IkReal x1005=((r10)*(sj6)); +IkReal x1006=((IkReal(1.00000000000000))*(cj0)); +IkReal x1007=((IkReal(1.00000000000000))*(x991)); +IkReal x1008=((cj0)*(sj4)*(sj6)); +IkReal x1009=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x1003)))+(((IkReal(-1.00000000000000))*(cj2)*(x1007)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1004)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x1002)*(x1003)))+(((r20)*(x1001)))+(((cj4)*(r22)*(sj5)))+(((cj2)*(x992)))+(((x1002)*(x1004)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x998)))+(((IkReal(-1.00000000000000))*(sj2)*(x1007)))+(((x993)*(x994)))+(((IkReal(-1.00000000000000))*(x1000)*(x999)))+(((r12)*(x997)))+(((IkReal(-1.00000000000000))*(x1000)*(x1005)))+(((x993)*(x996)))); +evalcond[3]=((((r02)*(x997)))+(((IkReal(-1.00000000000000))*(x992)))+(((IkReal(-1.00000000000000))*(x993)*(x999)))+(((IkReal(-1.00000000000000))*(x1005)*(x993)))+(((IkReal(-1.00000000000000))*(x1000)*(x994)))+(((r12)*(x998)))+(((IkReal(-1.00000000000000))*(x1000)*(x996)))); +evalcond[4]=((((cj4)*(r02)*(x993)))+(((sj2)*(x992)))+(((r00)*(sj0)*(x1001)))+(((IkReal(-1.00000000000000))*(r12)*(x1000)*(x995)))+(((IkReal(-1.00000000000000))*(x1005)*(x995)*(x997)))+(((IkReal(-1.00000000000000))*(x995)*(x997)*(x999)))+(((IkReal(-1.00000000000000))*(r10)*(x1001)*(x1006)))+(((r11)*(x1008)))+(((cj4)*(x994)*(x998)))+(((cj4)*(x996)*(x998)))+(((IkReal(-1.00000000000000))*(r01)*(x1009)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x993)*(x995)))+(((IkReal(-1.00000000000000))*(x995)*(x998)*(x999)))+(((r01)*(x1008)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1001)))+(((IkReal(-1.00000000000000))*(x1007)))+(((IkReal(-1.00000000000000))*(r02)*(x1000)*(x995)))+(((IkReal(-1.00000000000000))*(r00)*(x1001)*(x1006)))+(((IkReal(-1.00000000000000))*(x995)*(x996)*(x997)))+(((IkReal(-1.00000000000000))*(x994)*(x995)*(x997)))+(((r11)*(x1009)))+(((IkReal(-1.00000000000000))*(x1005)*(x995)*(x998)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1010=((IkReal(1.00000000000000))*(cj4)); +IkReal x1011=((cj6)*(r21)); +IkReal x1012=((r20)*(sj6)); +if( IKabs(((gconst43)*(((((sj5)*(x1012)))+(((sj5)*(x1011)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst43)*(((((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1010)*(x1012)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1010)))+(((IkReal(-1.00000000000000))*(cj5)*(x1010)*(x1011)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst43)*(((((sj5)*(x1012)))+(((sj5)*(x1011)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((gconst43)*(((((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1010)*(x1012)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1010)))+(((IkReal(-1.00000000000000))*(cj5)*(x1010)*(x1011)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x1013=IKsin(j3); +IkReal x1014=IKcos(j3); +IkReal x1015=((sj0)*(sj5)); +IkReal x1016=((r00)*(sj6)); +IkReal x1017=((IkReal(1.00000000000000))*(cj4)); +IkReal x1018=((cj6)*(r01)); +IkReal x1019=((cj0)*(cj5)); +IkReal x1020=((cj5)*(sj0)); +IkReal x1021=((cj6)*(r11)); +IkReal x1022=((cj0)*(sj5)); +IkReal x1023=((cj6)*(sj4)); +IkReal x1024=((cj4)*(cj5)); +IkReal x1025=((cj6)*(r21)); +IkReal x1026=((r20)*(sj6)); +IkReal x1027=((r10)*(sj6)); +IkReal x1028=((IkReal(1.00000000000000))*(cj0)); +IkReal x1029=((IkReal(1.00000000000000))*(x1013)); +IkReal x1030=((cj0)*(sj4)*(sj6)); +IkReal x1031=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x1025)))+(((IkReal(-1.00000000000000))*(cj2)*(x1029)))+(((sj5)*(x1026)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x1023)))+(((x1024)*(x1025)))+(((x1024)*(x1026)))+(((cj4)*(r22)*(sj5)))+(((cj2)*(x1014)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1021)*(x1022)))+(((r12)*(x1019)))+(((IkReal(-1.00000000000000))*(r02)*(x1020)))+(((x1015)*(x1016)))+(((IkReal(-1.00000000000000))*(sj2)*(x1029)))+(((x1015)*(x1018)))+(((IkReal(-1.00000000000000))*(x1022)*(x1027)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1015)*(x1027)))+(((IkReal(-1.00000000000000))*(x1015)*(x1021)))+(((IkReal(-1.00000000000000))*(x1014)))+(((IkReal(-1.00000000000000))*(x1018)*(x1022)))+(((r12)*(x1020)))+(((r02)*(x1019)))+(((IkReal(-1.00000000000000))*(x1016)*(x1022)))); +evalcond[4]=((((r11)*(x1030)))+(((IkReal(-1.00000000000000))*(r01)*(x1031)))+(((IkReal(-1.00000000000000))*(r12)*(x1017)*(x1022)))+(((r00)*(sj0)*(x1023)))+(((IkReal(-1.00000000000000))*(r10)*(x1023)*(x1028)))+(((IkReal(-1.00000000000000))*(x1017)*(x1019)*(x1021)))+(((cj4)*(x1018)*(x1020)))+(((IkReal(-1.00000000000000))*(x1017)*(x1019)*(x1027)))+(((cj4)*(x1016)*(x1020)))+(((cj4)*(r02)*(x1015)))+(((sj2)*(x1014)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x1017)*(x1022)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1023)))+(((IkReal(-1.00000000000000))*(x1017)*(x1018)*(x1019)))+(((IkReal(-1.00000000000000))*(x1017)*(x1020)*(x1027)))+(((r01)*(x1030)))+(((IkReal(-1.00000000000000))*(r12)*(x1015)*(x1017)))+(((IkReal(-1.00000000000000))*(r00)*(x1023)*(x1028)))+(((IkReal(-1.00000000000000))*(x1017)*(x1020)*(x1021)))+(((IkReal(-1.00000000000000))*(x1029)))+(((IkReal(-1.00000000000000))*(x1016)*(x1017)*(x1019)))+(((r11)*(x1031)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1032=((r11)*(sj0)); +IkReal x1033=((cj0)*(r01)); +IkReal x1034=((cj0)*(sj2)); +IkReal x1035=((sj0)*(sj2)); +IkReal x1036=((cj5)*(sj6)); +IkReal x1037=((IkReal(1.00000000000000))*(sj2)*(sj6)); +IkReal x1038=((cj5)*(cj6)*(sj2)); +if( IKabs(((gconst40)*(((((IkReal(-1.00000000000000))*(x1032)*(x1037)))+(((cj6)*(r10)*(x1035)))+(((IkReal(-1.00000000000000))*(x1033)*(x1037)))+(((cj6)*(r00)*(x1034))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst40)*(((((r00)*(x1034)*(x1036)))+(((x1033)*(x1038)))+(((r02)*(sj5)*(x1034)))+(((r10)*(x1035)*(x1036)))+(((x1032)*(x1038)))+(((r12)*(sj5)*(x1035))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst40)*(((((IkReal(-1.00000000000000))*(x1032)*(x1037)))+(((cj6)*(r10)*(x1035)))+(((IkReal(-1.00000000000000))*(x1033)*(x1037)))+(((cj6)*(r00)*(x1034)))))), ((gconst40)*(((((r00)*(x1034)*(x1036)))+(((x1033)*(x1038)))+(((r02)*(sj5)*(x1034)))+(((r10)*(x1035)*(x1036)))+(((x1032)*(x1038)))+(((r12)*(sj5)*(x1035))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x1039=IKsin(j4); +IkReal x1040=IKcos(j4); +IkReal x1041=((r00)*(sj6)); +IkReal x1042=((cj6)*(r01)); +IkReal x1043=((IkReal(1.00000000000000))*(cj0)); +IkReal x1044=((IkReal(1.00000000000000))*(sj0)); +IkReal x1045=((r10)*(sj6)); +IkReal x1046=((sj5)*(x1039)); +IkReal x1047=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x1048=((cj5)*(x1039)); +IkReal x1049=((cj6)*(x1040)); +IkReal x1050=((sj0)*(x1048)); +IkReal x1051=((r01)*(sj6)*(x1040)); +IkReal x1052=((r11)*(sj6)*(x1040)); +evalcond[0]=((((r22)*(x1046)))+(((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(r20)*(x1049)))+(((r20)*(sj6)*(x1048)))+(((r21)*(sj6)*(x1040)))+(((cj6)*(r21)*(x1048)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1043)*(x1045)*(x1048)))+(((sj0)*(x1051)))+(((IkReal(-1.00000000000000))*(x1043)*(x1052)))+(((IkReal(-1.00000000000000))*(r12)*(x1043)*(x1046)))+(((cj0)*(r10)*(x1049)))+(((IkReal(-1.00000000000000))*(r00)*(x1044)*(x1049)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1043)*(x1048)))+(cj2)+(((x1042)*(x1050)))+(((x1041)*(x1050)))+(((r02)*(sj0)*(x1046)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1044)*(x1052)))+(((IkReal(-1.00000000000000))*(x1041)*(x1043)*(x1048)))+(((IkReal(-1.00000000000000))*(x1044)*(x1045)*(x1048)))+(((IkReal(-1.00000000000000))*(r02)*(x1043)*(x1046)))+(((IkReal(-1.00000000000000))*(r12)*(x1044)*(x1046)))+(((IkReal(-1.00000000000000))*(x1042)*(x1043)*(x1048)))+(((r10)*(sj0)*(x1049)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1044)*(x1048)))+(((cj0)*(r00)*(x1049)))+(((IkReal(-1.00000000000000))*(x1043)*(x1051)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst43; +gconst43=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x1053=((cj5)*(sj4)); +IkReal x1054=((IkReal(1.00000000000000))*(sj6)); +IkReal x1055=((r10)*(sj0)); +IkReal x1056=((sj4)*(sj5)); +IkReal x1057=((cj5)*(cj6)); +IkReal x1058=((r01)*(sj0)); +IkReal x1059=((IkReal(1.00000000000000))*(r02)); +IkReal x1060=((IkReal(0.374290000000000))*(cj0)); +IkReal x1061=((cj5)*(r12)); +IkReal x1062=((cj6)*(sj5)); +IkReal x1063=((cj0)*(r11)); +IkReal x1064=((cj5)*(sj0)); +IkReal x1065=((r20)*(sj6)); +IkReal x1066=((IkReal(1.00000000000000))*(sj0)); +IkReal x1067=((cj4)*(cj5)); +IkReal x1068=((IkReal(1.00000000000000))*(cj6)); +IkReal x1069=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1070=((sj5)*(sj6)); +IkReal x1071=((cj0)*(r10)); +IkReal x1072=((cj4)*(cj6)); +IkReal x1073=((cj0)*(r01)); +IkReal x1074=((IkReal(1.00000000000000))*(cj4)); +IkReal x1075=((cj0)*(r00)); +IkReal x1076=((IkReal(0.374290000000000))*(sj0)); +IkReal x1077=((cj0)*(r12)); +IkReal x1078=((IkReal(0.374290000000000))*(sj5)); +IkReal x1079=((cj4)*(sj6)); +IkReal x1080=((IkReal(1.00000000000000))*(cj0)); +IkReal x1081=((r02)*(sj0)); +IkReal x1082=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1083=((r11)*(sj0)); +IkReal x1084=((r00)*(sj0)*(sj6)); +IkReal x1085=((r00)*(x1072)); +IkReal x1086=((sj6)*(x1082)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x1053)*(x1065)))+(((r21)*(x1079)))+(((cj6)*(r21)*(x1053)))+(((r22)*(x1056)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x1068)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x1069)))+(((x1065)*(x1078)))+(((IkReal(-0.0100000000000000))*(r21)*(x1057)))+(((IkReal(-1.00000000000000))*(x1065)*(x1082)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(0.374290000000000))*(r21)*(x1062)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1062)*(x1063)))+(((IkReal(-1.00000000000000))*(sj5)*(x1054)*(x1071)))+(((IkReal(-1.00000000000000))*(x1059)*(x1064)))+(((x1058)*(x1062)))+(((r00)*(sj0)*(x1070)))+(((cj0)*(x1061)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(cj4)*(x1054)*(x1063)))+(((cj6)*(x1053)*(x1058)))+(((IkReal(-1.00000000000000))*(x1056)*(x1077)))+(((IkReal(-1.00000000000000))*(x1066)*(x1085)))+(((x1071)*(x1072)))+(((x1053)*(x1084)))+(((IkReal(-1.00000000000000))*(x1053)*(x1063)*(x1068)))+(((x1058)*(x1079)))+(((IkReal(-1.00000000000000))*(x1053)*(x1054)*(x1071)))+(((x1056)*(x1081)))); +evalcond[5]=((((sj4)*(sj6)*(x1063)))+(((IkReal(-1.00000000000000))*(sj4)*(x1054)*(x1058)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(x1068)*(x1071)))+(((IkReal(-1.00000000000000))*(sj5)*(x1074)*(x1077)))+(((cj4)*(x1057)*(x1058)))+(((IkReal(-1.00000000000000))*(x1057)*(x1063)*(x1074)))+(((IkReal(-1.00000000000000))*(x1054)*(x1067)*(x1071)))+(((cj4)*(sj5)*(x1081)))+(((r00)*(x1064)*(x1079)))); +evalcond[6]=((((x1072)*(x1075)))+(((IkReal(-1.00000000000000))*(cj4)*(x1054)*(x1073)))+(((x1055)*(x1072)))+(((IkReal(-1.00000000000000))*(x1053)*(x1068)*(x1073)))+(((IkReal(-1.00000000000000))*(cj0)*(x1056)*(x1059)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1053)*(x1066)))+(((IkReal(-1.00000000000000))*(cj4)*(x1054)*(x1083)))+(((IkReal(-1.00000000000000))*(x1053)*(x1054)*(x1075)))+(((IkReal(-1.00000000000000))*(x1053)*(x1054)*(x1055)))+(((IkReal(-1.00000000000000))*(r12)*(x1056)*(x1066)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(py)*(x1080)))+(((IkReal(-0.0100000000000000))*(x1057)*(x1058)))+(((x1060)*(x1061)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x1064)))+(((IkReal(-1.00000000000000))*(r11)*(x1060)*(x1062)))+(((IkReal(-1.00000000000000))*(r10)*(x1060)*(x1070)))+(((x1071)*(x1086)))+(((IkReal(0.0100000000000000))*(x1057)*(x1063)))+(((x1069)*(x1077)))+(((IkReal(-0.374290000000000))*(r02)*(x1064)))+(((IkReal(0.374290000000000))*(x1058)*(x1062)))+(((r00)*(x1070)*(x1076)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x1069)*(x1081)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x1061)*(x1076)))+(((IkReal(-0.374290000000000))*(x1055)*(x1070)))+(((IkReal(0.0100000000000000))*(x1057)*(x1073)))+(((IkReal(-1.00000000000000))*(r01)*(x1060)*(x1062)))+(((IkReal(-1.00000000000000))*(r00)*(x1060)*(x1070)))+(((IkReal(-1.00000000000000))*(px)*(x1080)))+(((r12)*(sj0)*(x1069)))+(((IkReal(-1.00000000000000))*(r11)*(x1062)*(x1076)))+(((cj0)*(r02)*(x1069)))+(((IkReal(-1.00000000000000))*(py)*(x1066)))+(((IkReal(0.0100000000000000))*(x1057)*(x1083)))+(((cj5)*(r02)*(x1060)))+(((x1055)*(x1086)))+(((x1075)*(x1086)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1087=((IkReal(1.00000000000000))*(cj4)); +IkReal x1088=((cj6)*(r21)); +IkReal x1089=((r20)*(sj6)); +if( IKabs(((((sj5)*(x1089)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1088))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1087)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1089)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1088)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x1089)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1088)))))+IKsqr(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1087)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1089)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1088)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x1089)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1088)))), ((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1087)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1089)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1088)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1090=IKcos(j3); +IkReal x1091=((IkReal(1.00000000000000))*(cj4)); +IkReal x1092=((sj0)*(sj5)); +IkReal x1093=((cj0)*(cj5)); +IkReal x1094=((cj6)*(r01)); +IkReal x1095=((r00)*(sj6)); +IkReal x1096=((cj6)*(r11)); +IkReal x1097=((cj5)*(sj0)); +IkReal x1098=((cj6)*(sj4)); +IkReal x1099=((sj4)*(sj6)); +IkReal x1100=((cj4)*(cj5)); +IkReal x1101=((cj6)*(r21)); +IkReal x1102=((r20)*(sj6)); +IkReal x1103=((r10)*(sj6)); +IkReal x1104=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x1105=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x1104)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1102)))+(((sj5)*(x1101)))); +evalcond[1]=((((r20)*(x1098)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x1099)))+(x1090)+(((x1100)*(x1101)))+(((x1100)*(x1102)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1095)*(x1105)))+(((IkReal(-1.00000000000000))*(x1094)*(x1105)))+(((r02)*(x1093)))+(((IkReal(-1.00000000000000))*(x1092)*(x1103)))+(((IkReal(-1.00000000000000))*(x1092)*(x1096)))+(((r12)*(x1097)))+(((IkReal(-1.00000000000000))*(x1090)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1091)*(x1093)*(x1095)))+(((IkReal(-1.00000000000000))*(x1104)))+(((IkReal(-1.00000000000000))*(r12)*(x1091)*(x1092)))+(((IkReal(-1.00000000000000))*(x1091)*(x1093)*(x1094)))+(((cj0)*(r01)*(x1099)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x1091)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1098)))+(((IkReal(-1.00000000000000))*(x1091)*(x1097)*(x1103)))+(((r11)*(sj0)*(x1099)))+(((IkReal(-1.00000000000000))*(x1091)*(x1096)*(x1097)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1098)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1106=((cj5)*(sj4)); +IkReal x1107=((IkReal(1.00000000000000))*(sj6)); +IkReal x1108=((r10)*(sj0)); +IkReal x1109=((sj4)*(sj5)); +IkReal x1110=((cj5)*(cj6)); +IkReal x1111=((r01)*(sj0)); +IkReal x1112=((IkReal(1.00000000000000))*(r02)); +IkReal x1113=((IkReal(0.374290000000000))*(cj0)); +IkReal x1114=((cj5)*(r12)); +IkReal x1115=((cj6)*(sj5)); +IkReal x1116=((cj0)*(r11)); +IkReal x1117=((cj5)*(sj0)); +IkReal x1118=((r20)*(sj6)); +IkReal x1119=((IkReal(1.00000000000000))*(sj0)); +IkReal x1120=((cj4)*(cj5)); +IkReal x1121=((IkReal(1.00000000000000))*(cj6)); +IkReal x1122=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1123=((sj5)*(sj6)); +IkReal x1124=((cj0)*(r10)); +IkReal x1125=((cj4)*(cj6)); +IkReal x1126=((cj0)*(r01)); +IkReal x1127=((IkReal(1.00000000000000))*(cj4)); +IkReal x1128=((cj0)*(r00)); +IkReal x1129=((IkReal(0.374290000000000))*(sj0)); +IkReal x1130=((cj0)*(r12)); +IkReal x1131=((IkReal(0.374290000000000))*(sj5)); +IkReal x1132=((cj4)*(sj6)); +IkReal x1133=((IkReal(1.00000000000000))*(cj0)); +IkReal x1134=((r02)*(sj0)); +IkReal x1135=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1136=((r11)*(sj0)); +IkReal x1137=((r00)*(sj0)*(sj6)); +IkReal x1138=((r00)*(x1125)); +IkReal x1139=((sj6)*(x1135)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x1132)))+(((cj6)*(r21)*(x1106)))+(((x1106)*(x1118)))+(((r22)*(x1109)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x1121)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x1115)))+(((IkReal(-0.0100000000000000))*(r21)*(x1110)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x1122)))+(((IkReal(-1.00000000000000))*(x1118)*(x1135)))+(((x1118)*(x1131)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x1107)*(x1124)))+(((x1111)*(x1115)))+(((IkReal(-1.00000000000000))*(x1115)*(x1116)))+(((r00)*(sj0)*(x1123)))+(((cj0)*(x1114)))+(((IkReal(-1.00000000000000))*(x1112)*(x1117)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x1106)*(x1107)*(x1124)))+(((x1106)*(x1137)))+(((IkReal(-1.00000000000000))*(x1119)*(x1138)))+(((IkReal(-1.00000000000000))*(cj4)*(x1107)*(x1116)))+(((IkReal(-1.00000000000000))*(x1109)*(x1130)))+(((x1124)*(x1125)))+(((x1111)*(x1132)))+(((IkReal(-1.00000000000000))*(x1106)*(x1116)*(x1121)))+(((x1109)*(x1134)))+(((cj6)*(x1106)*(x1111)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x1127)*(x1130)))+(((cj4)*(sj5)*(x1134)))+(((IkReal(-1.00000000000000))*(x1107)*(x1120)*(x1124)))+(((cj4)*(x1110)*(x1111)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((r00)*(x1117)*(x1132)))+(((sj4)*(sj6)*(x1116)))+(((IkReal(-1.00000000000000))*(sj4)*(x1107)*(x1111)))+(((IkReal(-1.00000000000000))*(sj4)*(x1121)*(x1124)))+(((IkReal(-1.00000000000000))*(x1110)*(x1116)*(x1127)))); +evalcond[6]=((((x1108)*(x1125)))+(((IkReal(-1.00000000000000))*(cj4)*(x1107)*(x1136)))+(((x1125)*(x1128)))+(((IkReal(-1.00000000000000))*(x1106)*(x1107)*(x1108)))+(((IkReal(-1.00000000000000))*(cj4)*(x1107)*(x1126)))+(((IkReal(-1.00000000000000))*(x1106)*(x1121)*(x1126)))+(((IkReal(-1.00000000000000))*(x1106)*(x1107)*(x1128)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1106)*(x1119)))+(((IkReal(-1.00000000000000))*(r12)*(x1109)*(x1119)))+(((IkReal(-1.00000000000000))*(cj0)*(x1109)*(x1112)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(py)*(x1133)))+(((x1122)*(x1130)))+(((IkReal(-1.00000000000000))*(r11)*(x1113)*(x1115)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x1117)))+(((r00)*(x1123)*(x1129)))+(((IkReal(0.0100000000000000))*(x1110)*(x1116)))+(((IkReal(-1.00000000000000))*(r10)*(x1113)*(x1123)))+(((IkReal(-1.00000000000000))*(x1122)*(x1134)))+(((x1124)*(x1139)))+(((IkReal(0.374290000000000))*(x1111)*(x1115)))+(((px)*(sj0)))+(((x1113)*(x1114)))+(((IkReal(-0.0100000000000000))*(x1110)*(x1111)))+(((IkReal(-0.374290000000000))*(r02)*(x1117)))); +evalcond[8]=((IkReal(0.433420000000000))+(((r12)*(sj0)*(x1122)))+(((x1114)*(x1129)))+(((IkReal(0.0100000000000000))*(x1110)*(x1136)))+(((x1128)*(x1139)))+(((IkReal(-0.374290000000000))*(x1108)*(x1123)))+(((IkReal(-1.00000000000000))*(r00)*(x1113)*(x1123)))+(((IkReal(-1.00000000000000))*(px)*(x1133)))+(((IkReal(-1.00000000000000))*(r11)*(x1115)*(x1129)))+(((IkReal(-1.00000000000000))*(py)*(x1119)))+(((cj0)*(r02)*(x1122)))+(((IkReal(-1.00000000000000))*(r01)*(x1113)*(x1115)))+(((x1108)*(x1139)))+(((cj5)*(r02)*(x1113)))+(((IkReal(0.0100000000000000))*(x1110)*(x1126)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1140=((IkReal(1.00000000000000))*(r21)); +IkReal x1141=((cj4)*(cj5)); +IkReal x1142=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x1142)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1140)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r20)*(sj4)))+(((x1141)*(x1142)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x1141)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1140))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x1142)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1140)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r20)*(sj4)))+(((x1141)*(x1142)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x1141)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1140)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x1142)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1140)))+(((cj5)*(r22)))), ((((cj6)*(r20)*(sj4)))+(((x1141)*(x1142)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x1141)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1140))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1143=IKsin(j3); +IkReal x1144=((IkReal(1.00000000000000))*(cj4)); +IkReal x1145=((sj0)*(sj5)); +IkReal x1146=((cj0)*(cj5)); +IkReal x1147=((cj6)*(r01)); +IkReal x1148=((r00)*(sj6)); +IkReal x1149=((cj6)*(r11)); +IkReal x1150=((cj5)*(sj0)); +IkReal x1151=((cj6)*(sj4)); +IkReal x1152=((sj4)*(sj6)); +IkReal x1153=((cj4)*(cj5)); +IkReal x1154=((cj6)*(r21)); +IkReal x1155=((r20)*(sj6)); +IkReal x1156=((r10)*(sj6)); +IkReal x1157=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x1158=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((x1143)+(((sj5)*(x1154)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1155)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x1152)))+(((cj4)*(r22)*(sj5)))+(((x1153)*(x1154)))+(((x1153)*(x1155)))+(((r20)*(x1151)))+(((IkReal(-1.00000000000000))*(x1157)))); +evalcond[2]=((((r02)*(x1146)))+(((IkReal(-1.00000000000000))*(x1145)*(x1149)))+(((IkReal(-1.00000000000000))*(x1148)*(x1158)))+(((IkReal(-1.00000000000000))*(x1145)*(x1156)))+(((r12)*(x1150)))+(((IkReal(-1.00000000000000))*(x1147)*(x1158)))+(((IkReal(-1.00000000000000))*(x1157)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x1144)*(x1145)))+(((IkReal(-1.00000000000000))*(x1144)*(x1146)*(x1148)))+(((IkReal(-1.00000000000000))*(x1144)*(x1150)*(x1156)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1151)))+(((IkReal(-1.00000000000000))*(x1144)*(x1149)*(x1150)))+(((r11)*(sj0)*(x1152)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x1144)))+(((IkReal(-1.00000000000000))*(x1143)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1151)))+(((cj0)*(r01)*(x1152)))+(((IkReal(-1.00000000000000))*(x1144)*(x1146)*(x1147)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1159=((IkReal(1.00000000000000))*(cj0)); +IkReal x1160=((cj4)*(sj6)); +IkReal x1161=((sj0)*(sj4)); +IkReal x1162=((cj5)*(sj6)); +IkReal x1163=((sj4)*(sj5)); +IkReal x1164=((r12)*(sj5)); +IkReal x1165=((IkReal(0.374290000000000))*(cj5)); +IkReal x1166=((r02)*(sj0)); +IkReal x1167=((r20)*(sj4)); +IkReal x1168=((IkReal(1.00000000000000))*(sj0)); +IkReal x1169=((IkReal(1.00000000000000))*(cj5)); +IkReal x1170=((cj0)*(r10)); +IkReal x1171=((cj4)*(cj6)); +IkReal x1172=((r00)*(sj0)); +IkReal x1173=((cj6)*(r21)); +IkReal x1174=((IkReal(0.374290000000000))*(sj5)); +IkReal x1175=((cj0)*(r00)); +IkReal x1176=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1177=((cj0)*(r02)); +IkReal x1178=((cj5)*(sj4)); +IkReal x1179=((cj6)*(r01)); +IkReal x1180=((cj6)*(r11)); +IkReal x1181=((r01)*(sj0)); +IkReal x1182=((r10)*(sj0)); +IkReal x1183=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x1184=((sj6)*(x1174)); +IkReal x1185=((cj0)*(cj6)*(x1174)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x1169)))+(((sj5)*(x1173)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x1173)*(x1178)))+(((x1162)*(x1167)))+(((IkReal(-1.00000000000000))*(r20)*(x1171)))+(((r22)*(x1163)))+(((r21)*(x1160)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x1176)))+(((IkReal(-0.0100000000000000))*(r20)*(x1162)))+(((r20)*(x1184)))+(pz)+(((IkReal(-0.0100000000000000))*(cj5)*(x1173)))+(((x1173)*(x1174)))+(((IkReal(-1.00000000000000))*(r22)*(x1165)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x1160)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x1167)))+(((cj5)*(r21)*(x1171)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r11)*(x1159)*(x1160)))+(((x1160)*(x1181)))+(((cj5)*(x1161)*(x1179)))+(((IkReal(-1.00000000000000))*(r00)*(x1168)*(x1171)))+(((r00)*(x1161)*(x1162)))+(((IkReal(-1.00000000000000))*(x1159)*(x1178)*(x1180)))+(((IkReal(-1.00000000000000))*(r12)*(x1159)*(x1163)))+(((r02)*(sj5)*(x1161)))+(((x1170)*(x1171)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x1159)*(x1162)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r10)*(x1161)*(x1162)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x1159)*(x1162)))+(((IkReal(-1.00000000000000))*(r01)*(x1159)*(x1160)))+(((IkReal(-1.00000000000000))*(x1161)*(x1169)*(x1180)))+(((x1171)*(x1175)))+(((IkReal(-1.00000000000000))*(x1161)*(x1164)))+(((x1171)*(x1182)))+(((IkReal(-1.00000000000000))*(x1159)*(x1178)*(x1179)))+(((IkReal(-1.00000000000000))*(r11)*(x1160)*(x1168)))+(((IkReal(-1.00000000000000))*(r02)*(x1159)*(x1163)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x1159)))+(((IkReal(-1.00000000000000))*(x1166)*(x1176)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1180)))+(((IkReal(0.0100000000000000))*(cj0)*(x1164)))+(((sj0)*(x1174)*(x1179)))+(((IkReal(0.0100000000000000))*(x1162)*(x1170)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x1179)))+(((IkReal(-1.00000000000000))*(x1165)*(x1166)))+(((x1172)*(x1184)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(x1174)*(x1180)))+(((cj0)*(r12)*(x1165)))+(((IkReal(-1.00000000000000))*(x1170)*(x1184)))+(((IkReal(-0.0100000000000000))*(x1162)*(x1172)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x1180)))+(((IkReal(-1.00000000000000))*(x1175)*(x1184)))+(((IkReal(-1.00000000000000))*(cj0)*(x1174)*(x1179)))+(((IkReal(0.0100000000000000))*(x1162)*(x1175)))+(((IkReal(-1.00000000000000))*(x1182)*(x1184)))+(((IkReal(0.0100000000000000))*(x1162)*(x1182)))+(((x1176)*(x1177)))+(((r12)*(sj0)*(x1165)))+(((IkReal(-1.00000000000000))*(px)*(x1159)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1179)))+(((x1165)*(x1177)))+(((IkReal(-1.00000000000000))*(py)*(x1168)))+(((IkReal(0.0100000000000000))*(sj0)*(x1164)))+(((IkReal(-1.00000000000000))*(sj0)*(x1174)*(x1180)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1186=((cj0)*(cj5)); +IkReal x1187=((IkReal(1.00000000000000))*(cj0)); +IkReal x1188=((cj6)*(r11)); +IkReal x1189=((r10)*(sj6)); +IkReal x1190=((cj5)*(sj0)); +IkReal x1191=((r00)*(sj5)*(sj6)); +IkReal x1192=((cj6)*(r01)*(sj5)); +IkReal x1193=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x1192)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1188)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1189)))+(((IkReal(-1.00000000000000))*(r02)*(x1190)))+(((sj0)*(x1191)))+(((r12)*(x1186))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x1189)*(x1193)))+(((r02)*(x1186)))+(((IkReal(-1.00000000000000))*(x1188)*(x1193)))+(((IkReal(-1.00000000000000))*(x1187)*(x1191)))+(((r12)*(x1190)))+(((IkReal(-1.00000000000000))*(x1187)*(x1192))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x1192)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1188)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1189)))+(((IkReal(-1.00000000000000))*(r02)*(x1190)))+(((sj0)*(x1191)))+(((r12)*(x1186)))))+IKsqr(((((IkReal(-1.00000000000000))*(x1189)*(x1193)))+(((r02)*(x1186)))+(((IkReal(-1.00000000000000))*(x1188)*(x1193)))+(((IkReal(-1.00000000000000))*(x1187)*(x1191)))+(((r12)*(x1190)))+(((IkReal(-1.00000000000000))*(x1187)*(x1192)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x1192)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1188)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1189)))+(((IkReal(-1.00000000000000))*(r02)*(x1190)))+(((sj0)*(x1191)))+(((r12)*(x1186)))), ((((IkReal(-1.00000000000000))*(x1189)*(x1193)))+(((r02)*(x1186)))+(((IkReal(-1.00000000000000))*(x1188)*(x1193)))+(((IkReal(-1.00000000000000))*(x1187)*(x1191)))+(((r12)*(x1190)))+(((IkReal(-1.00000000000000))*(x1187)*(x1192))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1194=IKcos(j3); +IkReal x1195=((sj0)*(sj5)); +IkReal x1196=((r00)*(sj6)); +IkReal x1197=((cj6)*(sj0)); +IkReal x1198=((IkReal(1.00000000000000))*(cj4)); +IkReal x1199=((r00)*(sj4)); +IkReal x1200=((cj0)*(cj5)); +IkReal x1201=((cj5)*(sj0)); +IkReal x1202=((cj6)*(r11)); +IkReal x1203=((r10)*(sj6)); +IkReal x1204=((cj0)*(sj5)); +IkReal x1205=((r10)*(sj4)); +IkReal x1206=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x1207=((cj4)*(cj5)*(r01)); +IkReal x1208=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x1209=((cj0)*(sj4)*(sj6)); +IkReal x1210=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x1203)*(x1204)))+(((x1195)*(x1196)))+(((r12)*(x1200)))+(((cj6)*(r01)*(x1195)))+(((IkReal(-1.00000000000000))*(x1206)))+(((IkReal(-1.00000000000000))*(x1202)*(x1204)))+(((IkReal(-1.00000000000000))*(r02)*(x1201)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1195)*(x1202)))+(((IkReal(-1.00000000000000))*(x1194)))+(((r02)*(x1200)))+(((IkReal(-1.00000000000000))*(x1195)*(x1203)))+(((IkReal(-1.00000000000000))*(x1196)*(x1204)))+(((r12)*(x1201)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x1204)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1198)*(x1200)*(x1203)))+(((IkReal(-1.00000000000000))*(x1205)*(x1208)))+(((IkReal(-1.00000000000000))*(r12)*(x1198)*(x1204)))+(((r11)*(x1209)))+(((IkReal(-1.00000000000000))*(x1198)*(x1200)*(x1202)))+(((cj4)*(r02)*(x1195)))+(x1194)+(((x1197)*(x1207)))+(((IkReal(-1.00000000000000))*(r01)*(x1210)))+(((cj4)*(x1196)*(x1201)))+(((x1197)*(x1199)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r02)*(x1198)*(x1204)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x1197)*(x1198)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x1198)*(x1200)))+(((IkReal(-1.00000000000000))*(x1196)*(x1198)*(x1200)))+(((IkReal(-1.00000000000000))*(x1197)*(x1205)))+(((IkReal(-1.00000000000000))*(x1199)*(x1208)))+(((r01)*(x1209)))+(((IkReal(-1.00000000000000))*(x1198)*(x1201)*(x1203)))+(((IkReal(-1.00000000000000))*(x1206)))+(((IkReal(-1.00000000000000))*(r12)*(x1195)*(x1198)))+(((r11)*(x1210)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1211=((IkReal(1.00000000000000))*(cj0)); +IkReal x1212=((cj4)*(sj6)); +IkReal x1213=((sj0)*(sj4)); +IkReal x1214=((cj5)*(sj6)); +IkReal x1215=((sj4)*(sj5)); +IkReal x1216=((r12)*(sj5)); +IkReal x1217=((IkReal(0.374290000000000))*(cj5)); +IkReal x1218=((r02)*(sj0)); +IkReal x1219=((r20)*(sj4)); +IkReal x1220=((IkReal(1.00000000000000))*(sj0)); +IkReal x1221=((IkReal(1.00000000000000))*(cj5)); +IkReal x1222=((cj0)*(r10)); +IkReal x1223=((cj4)*(cj6)); +IkReal x1224=((r00)*(sj0)); +IkReal x1225=((cj6)*(r21)); +IkReal x1226=((IkReal(0.374290000000000))*(sj5)); +IkReal x1227=((cj0)*(r00)); +IkReal x1228=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1229=((cj0)*(r02)); +IkReal x1230=((cj5)*(sj4)); +IkReal x1231=((cj6)*(r01)); +IkReal x1232=((cj6)*(r11)); +IkReal x1233=((r01)*(sj0)); +IkReal x1234=((r10)*(sj0)); +IkReal x1235=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x1236=((sj6)*(x1226)); +IkReal x1237=((cj0)*(cj6)*(x1226)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x1225)))+(((IkReal(-1.00000000000000))*(r22)*(x1221)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x1223)))+(((x1225)*(x1230)))+(((r21)*(x1212)))+(((r22)*(x1215)))+(((x1214)*(x1219)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x1217)))+(((IkReal(-0.0100000000000000))*(r20)*(x1214)))+(((r20)*(x1236)))+(((IkReal(-1.00000000000000))*(r22)*(x1228)))+(((x1225)*(x1226)))+(pz)+(((IkReal(-0.0100000000000000))*(cj5)*(x1225)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x1219)))+(((cj5)*(r20)*(x1212)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x1223)))); +evalcond[5]=((((r00)*(x1213)*(x1214)))+(((IkReal(-1.00000000000000))*(r12)*(x1211)*(x1215)))+(((IkReal(-1.00000000000000))*(x1211)*(x1230)*(x1232)))+(((IkReal(-1.00000000000000))*(r00)*(x1220)*(x1223)))+(((r02)*(sj5)*(x1213)))+(((x1212)*(x1233)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x1211)*(x1214)))+(((cj5)*(x1213)*(x1231)))+(((IkReal(-1.00000000000000))*(r11)*(x1211)*(x1212)))+(((x1222)*(x1223)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x1211)*(x1230)*(x1231)))+(((IkReal(-1.00000000000000))*(r11)*(x1212)*(x1220)))+(((x1223)*(x1227)))+(((x1223)*(x1234)))+(((IkReal(-1.00000000000000))*(x1213)*(x1216)))+(((IkReal(-1.00000000000000))*(r02)*(x1211)*(x1215)))+(((IkReal(-1.00000000000000))*(r10)*(x1213)*(x1214)))+(((IkReal(-1.00000000000000))*(x1213)*(x1221)*(x1232)))+(((IkReal(-1.00000000000000))*(r01)*(x1211)*(x1212)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x1211)*(x1214)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((cj0)*(r12)*(x1217)))+(((IkReal(-1.00000000000000))*(cj0)*(x1226)*(x1232)))+(((x1224)*(x1236)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1232)))+(((IkReal(0.0100000000000000))*(cj0)*(x1216)))+(((IkReal(-1.00000000000000))*(py)*(x1211)))+(((IkReal(-1.00000000000000))*(x1217)*(x1218)))+(((IkReal(-0.0100000000000000))*(x1214)*(x1224)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x1231)))+(((IkReal(-1.00000000000000))*(x1218)*(x1228)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(x1214)*(x1222)))+(((IkReal(-1.00000000000000))*(x1222)*(x1236)))+(((sj0)*(x1226)*(x1231)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x1226)*(x1231)))+(((IkReal(-1.00000000000000))*(sj0)*(x1226)*(x1232)))+(((IkReal(-1.00000000000000))*(x1227)*(x1236)))+(((IkReal(0.0100000000000000))*(sj0)*(x1216)))+(((IkReal(0.0100000000000000))*(x1214)*(x1234)))+(((IkReal(-1.00000000000000))*(py)*(x1220)))+(((x1217)*(x1229)))+(((IkReal(-1.00000000000000))*(px)*(x1211)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1231)))+(((IkReal(0.0100000000000000))*(x1214)*(x1227)))+(((IkReal(-1.00000000000000))*(x1234)*(x1236)))+(((x1228)*(x1229)))+(((r12)*(sj0)*(x1217)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x1232)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1238=((cj5)*(r02)); +IkReal x1239=((cj0)*(sj5)); +IkReal x1240=((r10)*(sj6)); +IkReal x1241=((IkReal(1.00000000000000))*(cj6)); +IkReal x1242=((sj0)*(sj5)); +IkReal x1243=((cj5)*(r12)); +IkReal x1244=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x1243)))+(((IkReal(-1.00000000000000))*(r01)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1242)*(x1244)))+(((x1239)*(x1240)))+(((cj6)*(r11)*(x1239)))+(((sj0)*(x1238))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x1240)*(x1242)))+(((IkReal(-1.00000000000000))*(r01)*(x1239)*(x1241)))+(((IkReal(-1.00000000000000))*(r11)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1239)*(x1244)))+(((sj0)*(x1243)))+(((cj0)*(x1238))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x1243)))+(((IkReal(-1.00000000000000))*(r01)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1242)*(x1244)))+(((x1239)*(x1240)))+(((cj6)*(r11)*(x1239)))+(((sj0)*(x1238)))))+IKsqr(((((IkReal(-1.00000000000000))*(x1240)*(x1242)))+(((IkReal(-1.00000000000000))*(r01)*(x1239)*(x1241)))+(((IkReal(-1.00000000000000))*(r11)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1239)*(x1244)))+(((sj0)*(x1243)))+(((cj0)*(x1238)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x1243)))+(((IkReal(-1.00000000000000))*(r01)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1242)*(x1244)))+(((x1239)*(x1240)))+(((cj6)*(r11)*(x1239)))+(((sj0)*(x1238)))), ((((IkReal(-1.00000000000000))*(x1240)*(x1242)))+(((IkReal(-1.00000000000000))*(r01)*(x1239)*(x1241)))+(((IkReal(-1.00000000000000))*(r11)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1239)*(x1244)))+(((sj0)*(x1243)))+(((cj0)*(x1238))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1245=IKsin(j3); +IkReal x1246=((sj0)*(sj5)); +IkReal x1247=((r00)*(sj6)); +IkReal x1248=((IkReal(1.00000000000000))*(cj4)); +IkReal x1249=((cj6)*(sj0)); +IkReal x1250=((r00)*(sj4)); +IkReal x1251=((cj0)*(cj5)); +IkReal x1252=((cj6)*(r01)); +IkReal x1253=((cj5)*(sj0)); +IkReal x1254=((cj0)*(sj5)); +IkReal x1255=((cj6)*(r11)); +IkReal x1256=((r10)*(sj6)); +IkReal x1257=((r10)*(sj4)); +IkReal x1258=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x1259=((cj0)*(sj4)*(sj6)); +IkReal x1260=((sj0)*(sj4)*(sj6)); +IkReal x1261=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((x1246)*(x1252)))+(((r12)*(x1251)))+(((IkReal(-1.00000000000000))*(x1254)*(x1255)))+(((IkReal(-1.00000000000000))*(r02)*(x1253)))+(x1245)+(((IkReal(-1.00000000000000))*(x1254)*(x1256)))+(((x1246)*(x1247)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1252)*(x1254)))+(((IkReal(-1.00000000000000))*(x1246)*(x1256)))+(((r12)*(x1253)))+(((IkReal(-1.00000000000000))*(x1247)*(x1254)))+(((IkReal(-1.00000000000000))*(x1246)*(x1255)))+(((r02)*(x1251)))+(((IkReal(-1.00000000000000))*(x1258)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1257)*(x1261)))+(((IkReal(-1.00000000000000))*(r01)*(x1260)))+(((x1249)*(x1250)))+(((IkReal(-1.00000000000000))*(r12)*(x1248)*(x1254)))+(((IkReal(-1.00000000000000))*(x1248)*(x1251)*(x1255)))+(((cj4)*(x1247)*(x1253)))+(((cj4)*(r02)*(x1246)))+(((cj4)*(cj5)*(r01)*(x1249)))+(((IkReal(-1.00000000000000))*(x1248)*(x1251)*(x1256)))+(((r11)*(x1259)))+(((IkReal(-1.00000000000000))*(x1258)))); +evalcond[3]=((((r01)*(x1259)))+(((r11)*(x1260)))+(((IkReal(-1.00000000000000))*(x1250)*(x1261)))+(((IkReal(-1.00000000000000))*(x1245)))+(((IkReal(-1.00000000000000))*(x1247)*(x1248)*(x1251)))+(((IkReal(-1.00000000000000))*(r12)*(x1246)*(x1248)))+(((IkReal(-1.00000000000000))*(x1248)*(x1251)*(x1252)))+(((IkReal(-1.00000000000000))*(x1249)*(x1257)))+(((IkReal(-1.00000000000000))*(x1248)*(x1253)*(x1256)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x1248)*(x1249)))+(((IkReal(-1.00000000000000))*(r02)*(x1248)*(x1254)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1262=((cj0)*(cj5)); +IkReal x1263=((IkReal(1.00000000000000))*(cj0)); +IkReal x1264=((cj6)*(r11)); +IkReal x1265=((r10)*(sj6)); +IkReal x1266=((cj5)*(sj0)); +IkReal x1267=((r00)*(sj5)*(sj6)); +IkReal x1268=((cj6)*(r01)*(sj5)); +IkReal x1269=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x1262)))+(((IkReal(-1.00000000000000))*(r02)*(x1266)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1265)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1264)))+(((sj0)*(x1268)))+(((sj0)*(x1267))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x1264)*(x1269)))+(((IkReal(-1.00000000000000))*(x1265)*(x1269)))+(((IkReal(-1.00000000000000))*(x1263)*(x1267)))+(((r12)*(x1266)))+(((IkReal(-1.00000000000000))*(x1263)*(x1268)))+(((r02)*(x1262))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x1262)))+(((IkReal(-1.00000000000000))*(r02)*(x1266)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1265)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1264)))+(((sj0)*(x1268)))+(((sj0)*(x1267)))))))+IKsqr(((((IkReal(-1.00000000000000))*(x1264)*(x1269)))+(((IkReal(-1.00000000000000))*(x1265)*(x1269)))+(((IkReal(-1.00000000000000))*(x1263)*(x1267)))+(((r12)*(x1266)))+(((IkReal(-1.00000000000000))*(x1263)*(x1268)))+(((r02)*(x1262)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x1262)))+(((IkReal(-1.00000000000000))*(r02)*(x1266)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1265)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1264)))+(((sj0)*(x1268)))+(((sj0)*(x1267)))))), ((((IkReal(-1.00000000000000))*(x1264)*(x1269)))+(((IkReal(-1.00000000000000))*(x1265)*(x1269)))+(((IkReal(-1.00000000000000))*(x1263)*(x1267)))+(((r12)*(x1266)))+(((IkReal(-1.00000000000000))*(x1263)*(x1268)))+(((r02)*(x1262))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x1270=IKsin(j3); +IkReal x1271=IKcos(j3); +IkReal x1272=((sj0)*(sj5)); +IkReal x1273=((r00)*(sj6)); +IkReal x1274=((IkReal(1.00000000000000))*(cj4)); +IkReal x1275=((cj6)*(r01)); +IkReal x1276=((cj0)*(cj5)); +IkReal x1277=((cj5)*(sj0)); +IkReal x1278=((cj6)*(r11)); +IkReal x1279=((cj0)*(sj5)); +IkReal x1280=((cj6)*(sj4)); +IkReal x1281=((cj4)*(cj5)); +IkReal x1282=((cj6)*(r21)); +IkReal x1283=((r20)*(sj6)); +IkReal x1284=((r10)*(sj6)); +IkReal x1285=((IkReal(1.00000000000000))*(cj0)); +IkReal x1286=((IkReal(1.00000000000000))*(x1270)); +IkReal x1287=((cj0)*(sj4)*(sj6)); +IkReal x1288=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x1282)))+(((sj5)*(x1283)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x1286)))); +evalcond[1]=((((cj2)*(x1271)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x1281)*(x1283)))+(((x1281)*(x1282)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x1280)))); +evalcond[2]=((((r12)*(x1276)))+(((x1272)*(x1275)))+(((IkReal(-1.00000000000000))*(x1279)*(x1284)))+(((IkReal(-1.00000000000000))*(sj2)*(x1286)))+(((x1272)*(x1273)))+(((IkReal(-1.00000000000000))*(x1278)*(x1279)))+(((IkReal(-1.00000000000000))*(r02)*(x1277)))); +evalcond[3]=((((r12)*(x1277)))+(((IkReal(-1.00000000000000))*(x1272)*(x1284)))+(((IkReal(-1.00000000000000))*(x1275)*(x1279)))+(((IkReal(-1.00000000000000))*(x1271)))+(((r02)*(x1276)))+(((IkReal(-1.00000000000000))*(x1272)*(x1278)))+(((IkReal(-1.00000000000000))*(x1273)*(x1279)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x1274)*(x1276)*(x1278)))+(((IkReal(-1.00000000000000))*(r01)*(x1288)))+(((cj4)*(x1275)*(x1277)))+(((cj4)*(x1273)*(x1277)))+(((r00)*(sj0)*(x1280)))+(((IkReal(-1.00000000000000))*(r10)*(x1280)*(x1285)))+(((r11)*(x1287)))+(((IkReal(-1.00000000000000))*(r12)*(x1274)*(x1279)))+(((cj4)*(r02)*(x1272)))+(((sj2)*(x1271)))+(((IkReal(-1.00000000000000))*(x1274)*(x1276)*(x1284)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1286)))+(((IkReal(-1.00000000000000))*(x1274)*(x1277)*(x1278)))+(((IkReal(-1.00000000000000))*(x1273)*(x1274)*(x1276)))+(((r11)*(x1288)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1280)))+(((r01)*(x1287)))+(((IkReal(-1.00000000000000))*(x1274)*(x1277)*(x1284)))+(((IkReal(-1.00000000000000))*(r02)*(x1274)*(x1279)))+(((IkReal(-1.00000000000000))*(x1274)*(x1275)*(x1276)))+(((IkReal(-1.00000000000000))*(r00)*(x1280)*(x1285)))+(((IkReal(-1.00000000000000))*(r12)*(x1272)*(x1274)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1289=((sj5)*(sj6)); +IkReal x1290=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x1289)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1289)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x1290)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1289)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x1290))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x1289)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1289)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x1290)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1289)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x1290)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x1289)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1289)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x1290)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1289)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x1290))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x1291=IKsin(j3); +IkReal x1292=IKcos(j3); +IkReal x1293=((sj0)*(sj5)); +IkReal x1294=((r00)*(sj6)); +IkReal x1295=((IkReal(1.00000000000000))*(cj4)); +IkReal x1296=((cj6)*(r01)); +IkReal x1297=((cj0)*(cj5)); +IkReal x1298=((cj5)*(sj0)); +IkReal x1299=((cj6)*(r11)); +IkReal x1300=((cj0)*(sj5)); +IkReal x1301=((cj6)*(sj4)); +IkReal x1302=((cj4)*(cj5)); +IkReal x1303=((cj6)*(r21)); +IkReal x1304=((r20)*(sj6)); +IkReal x1305=((r10)*(sj6)); +IkReal x1306=((IkReal(1.00000000000000))*(cj0)); +IkReal x1307=((IkReal(1.00000000000000))*(x1291)); +IkReal x1308=((cj0)*(sj4)*(sj6)); +IkReal x1309=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj2)*(x1307)))+(((sj5)*(x1304)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1303)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x1302)*(x1303)))+(((r20)*(x1301)))+(((cj2)*(x1292)))+(((x1302)*(x1304)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1300)*(x1305)))+(((r12)*(x1297)))+(((IkReal(-1.00000000000000))*(sj2)*(x1307)))+(((IkReal(-1.00000000000000))*(r02)*(x1298)))+(((x1293)*(x1294)))+(((IkReal(-1.00000000000000))*(x1299)*(x1300)))+(((x1293)*(x1296)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1292)))+(((IkReal(-1.00000000000000))*(x1293)*(x1305)))+(((IkReal(-1.00000000000000))*(x1293)*(x1299)))+(((IkReal(-1.00000000000000))*(x1296)*(x1300)))+(((r12)*(x1298)))+(((IkReal(-1.00000000000000))*(x1294)*(x1300)))+(((r02)*(x1297)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x1301)*(x1306)))+(((cj4)*(r02)*(x1293)))+(((IkReal(-1.00000000000000))*(x1295)*(x1297)*(x1305)))+(((r00)*(sj0)*(x1301)))+(((IkReal(-1.00000000000000))*(x1295)*(x1297)*(x1299)))+(((cj4)*(x1296)*(x1298)))+(((IkReal(-1.00000000000000))*(r12)*(x1295)*(x1300)))+(((r11)*(x1308)))+(((cj4)*(x1294)*(x1298)))+(((sj2)*(x1292)))+(((IkReal(-1.00000000000000))*(r01)*(x1309)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x1295)*(x1300)))+(((IkReal(-1.00000000000000))*(x1295)*(x1298)*(x1299)))+(((IkReal(-1.00000000000000))*(x1295)*(x1298)*(x1305)))+(((IkReal(-1.00000000000000))*(r00)*(x1301)*(x1306)))+(((IkReal(-1.00000000000000))*(r12)*(x1293)*(x1295)))+(((IkReal(-1.00000000000000))*(x1294)*(x1295)*(x1297)))+(((IkReal(-1.00000000000000))*(x1295)*(x1296)*(x1297)))+(((IkReal(-1.00000000000000))*(x1307)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1301)))+(((r11)*(x1309)))+(((r01)*(x1308)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1310=((IkReal(1.00000000000000))*(cj4)); +IkReal x1311=((cj6)*(r21)); +IkReal x1312=((r20)*(sj6)); +if( IKabs(((gconst43)*(((((sj5)*(x1311)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1312))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst43)*(((((IkReal(-1.00000000000000))*(cj5)*(x1310)*(x1312)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1310)*(x1311)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1310)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst43)*(((((sj5)*(x1311)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1312)))))), ((gconst43)*(((((IkReal(-1.00000000000000))*(cj5)*(x1310)*(x1312)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1310)*(x1311)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1310)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x1313=IKsin(j3); +IkReal x1314=IKcos(j3); +IkReal x1315=((sj0)*(sj5)); +IkReal x1316=((r00)*(sj6)); +IkReal x1317=((IkReal(1.00000000000000))*(cj4)); +IkReal x1318=((cj6)*(r01)); +IkReal x1319=((cj0)*(cj5)); +IkReal x1320=((cj5)*(sj0)); +IkReal x1321=((cj6)*(r11)); +IkReal x1322=((cj0)*(sj5)); +IkReal x1323=((cj6)*(sj4)); +IkReal x1324=((cj4)*(cj5)); +IkReal x1325=((cj6)*(r21)); +IkReal x1326=((r20)*(sj6)); +IkReal x1327=((r10)*(sj6)); +IkReal x1328=((IkReal(1.00000000000000))*(cj0)); +IkReal x1329=((IkReal(1.00000000000000))*(x1313)); +IkReal x1330=((cj0)*(sj4)*(sj6)); +IkReal x1331=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1325)))+(((sj5)*(x1326)))+(((IkReal(-1.00000000000000))*(cj2)*(x1329)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x1324)*(x1325)))+(((r20)*(x1323)))+(((cj2)*(x1314)))+(((cj4)*(r22)*(sj5)))+(((x1324)*(x1326)))); +evalcond[2]=((((x1315)*(x1318)))+(((r12)*(x1319)))+(((IkReal(-1.00000000000000))*(x1321)*(x1322)))+(((IkReal(-1.00000000000000))*(sj2)*(x1329)))+(((IkReal(-1.00000000000000))*(x1322)*(x1327)))+(((x1315)*(x1316)))+(((IkReal(-1.00000000000000))*(r02)*(x1320)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1316)*(x1322)))+(((IkReal(-1.00000000000000))*(x1315)*(x1321)))+(((r12)*(x1320)))+(((IkReal(-1.00000000000000))*(x1314)))+(((IkReal(-1.00000000000000))*(x1318)*(x1322)))+(((IkReal(-1.00000000000000))*(x1315)*(x1327)))+(((r02)*(x1319)))); +evalcond[4]=((((cj4)*(r02)*(x1315)))+(((IkReal(-1.00000000000000))*(x1317)*(x1319)*(x1321)))+(((cj4)*(x1316)*(x1320)))+(((r11)*(x1330)))+(((IkReal(-1.00000000000000))*(r12)*(x1317)*(x1322)))+(((IkReal(-1.00000000000000))*(x1317)*(x1319)*(x1327)))+(((cj4)*(x1318)*(x1320)))+(((sj2)*(x1314)))+(((IkReal(-1.00000000000000))*(r01)*(x1331)))+(((IkReal(-1.00000000000000))*(r10)*(x1323)*(x1328)))+(((r00)*(sj0)*(x1323)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1323)))+(((IkReal(-1.00000000000000))*(x1317)*(x1320)*(x1327)))+(((IkReal(-1.00000000000000))*(r12)*(x1315)*(x1317)))+(((r11)*(x1331)))+(((IkReal(-1.00000000000000))*(x1317)*(x1320)*(x1321)))+(((r01)*(x1330)))+(((IkReal(-1.00000000000000))*(r02)*(x1317)*(x1322)))+(((IkReal(-1.00000000000000))*(r00)*(x1323)*(x1328)))+(((IkReal(-1.00000000000000))*(x1316)*(x1317)*(x1319)))+(((IkReal(-1.00000000000000))*(x1329)))+(((IkReal(-1.00000000000000))*(x1317)*(x1318)*(x1319)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} +} +} + +} else +{ +IkReal x1332=((cj0)*(cj5)); +IkReal x1333=((IkReal(0.374290000000000))*(sj0)); +IkReal x1334=((cj6)*(r11)); +IkReal x1335=((IkReal(0.0100000000000000))*(sj6)); +IkReal x1336=((cj6)*(r01)); +IkReal x1337=((IkReal(0.0100000000000000))*(sj0)); +IkReal x1338=((cj0)*(sj5)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(sj5)*(x1333)*(x1334)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((cj5)*(x1334)*(x1337)))+(((r00)*(x1332)*(x1335)))+(((IkReal(-1.00000000000000))*(r10)*(sj5)*(sj6)*(x1333)))+(((IkReal(-0.374290000000000))*(x1336)*(x1338)))+(((IkReal(0.0100000000000000))*(x1332)*(x1336)))+(((cj5)*(r12)*(x1333)))+(((r12)*(sj5)*(x1337)))+(((IkReal(-0.374290000000000))*(r00)*(sj6)*(x1338)))+(((IkReal(0.0100000000000000))*(r02)*(x1338)))+(((IkReal(-1.00000000000000))*(py)*(sj0)))+(((IkReal(0.374290000000000))*(r02)*(x1332)))+(((cj5)*(r10)*(sj0)*(x1335)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 ) +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x1339=((cj0)*(r11)); +IkReal x1340=((r01)*(sj0)); +IkReal x1341=((r20)*(sj6)); +IkReal x1342=((IkReal(0.144927536231884))*(cj5)); +IkReal x1343=((IkReal(5.42449275362319))*(cj5)); +IkReal x1344=((IkReal(5.42449275362319))*(sj5)); +IkReal x1345=((IkReal(0.144927536231884))*(sj5)); +IkReal x1346=((cj0)*(r12)); +IkReal x1347=((r02)*(sj0)); +IkReal x1348=((cj6)*(x1344)); +IkReal x1349=((cj0)*(r10)*(sj6)); +IkReal x1350=((r00)*(sj0)*(sj6)); +if( IKabs(((((x1344)*(x1349)))+(((x1342)*(x1350)))+(((x1345)*(x1347)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-1.00000000000000))*(x1344)*(x1350)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((cj6)*(x1340)*(x1342)))+(((IkReal(-1.00000000000000))*(x1342)*(x1349)))+(((IkReal(-1.00000000000000))*(cj6)*(x1339)*(x1342)))+(((IkReal(-1.00000000000000))*(x1345)*(x1346)))+(((x1339)*(x1348)))+(((x1343)*(x1347)))+(((IkReal(-1.00000000000000))*(x1343)*(x1346)))+(((IkReal(-1.00000000000000))*(x1340)*(x1348))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x1341)*(x1344)))+(((IkReal(-1.00000000000000))*(r22)*(x1343)))+(((IkReal(14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x1342)))+(((r21)*(x1348)))+(((IkReal(-1.00000000000000))*(x1341)*(x1342)))+(((IkReal(-1.00000000000000))*(r22)*(x1345))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x1344)*(x1349)))+(((x1342)*(x1350)))+(((x1345)*(x1347)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-1.00000000000000))*(x1344)*(x1350)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((cj6)*(x1340)*(x1342)))+(((IkReal(-1.00000000000000))*(x1342)*(x1349)))+(((IkReal(-1.00000000000000))*(cj6)*(x1339)*(x1342)))+(((IkReal(-1.00000000000000))*(x1345)*(x1346)))+(((x1339)*(x1348)))+(((x1343)*(x1347)))+(((IkReal(-1.00000000000000))*(x1343)*(x1346)))+(((IkReal(-1.00000000000000))*(x1340)*(x1348)))))+IKsqr(((((x1341)*(x1344)))+(((IkReal(-1.00000000000000))*(r22)*(x1343)))+(((IkReal(14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x1342)))+(((r21)*(x1348)))+(((IkReal(-1.00000000000000))*(x1341)*(x1342)))+(((IkReal(-1.00000000000000))*(r22)*(x1345)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((x1344)*(x1349)))+(((x1342)*(x1350)))+(((x1345)*(x1347)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-1.00000000000000))*(x1344)*(x1350)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((cj6)*(x1340)*(x1342)))+(((IkReal(-1.00000000000000))*(x1342)*(x1349)))+(((IkReal(-1.00000000000000))*(cj6)*(x1339)*(x1342)))+(((IkReal(-1.00000000000000))*(x1345)*(x1346)))+(((x1339)*(x1348)))+(((x1343)*(x1347)))+(((IkReal(-1.00000000000000))*(x1343)*(x1346)))+(((IkReal(-1.00000000000000))*(x1340)*(x1348)))), ((((x1341)*(x1344)))+(((IkReal(-1.00000000000000))*(r22)*(x1343)))+(((IkReal(14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x1342)))+(((r21)*(x1348)))+(((IkReal(-1.00000000000000))*(x1341)*(x1342)))+(((IkReal(-1.00000000000000))*(r22)*(x1345))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[2]; +IkReal x1351=((cj6)*(r11)); +IkReal x1352=((IkReal(0.374290000000000))*(sj0)); +IkReal x1353=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1354=((cj6)*(r21)); +IkReal x1355=((r10)*(sj6)); +IkReal x1356=((IkReal(0.374290000000000))*(sj5)); +IkReal x1357=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1358=((cj6)*(r01)); +IkReal x1359=((r20)*(sj6)); +IkReal x1360=((IkReal(0.374290000000000))*(cj5)); +IkReal x1361=((cj0)*(r12)); +IkReal x1362=((r00)*(sj6)); +IkReal x1363=((cj0)*(x1356)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r22)*(x1360)))+(((IkReal(-0.0690000000000000))*(IKcos(j2))))+(((IkReal(-1.00000000000000))*(x1353)*(x1359)))+(((x1356)*(x1359)))+(((IkReal(-1.00000000000000))*(r22)*(x1357)))+(((IkReal(-1.00000000000000))*(x1353)*(x1354)))+(pz)+(((x1354)*(x1356)))); +evalcond[1]=((((cj0)*(x1351)*(x1353)))+(((IkReal(-1.00000000000000))*(x1355)*(x1363)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x1352)))+(((IkReal(-1.00000000000000))*(cj0)*(py)))+(((cj0)*(x1353)*(x1355)))+(((IkReal(-1.00000000000000))*(sj0)*(x1353)*(x1358)))+(((IkReal(-1.00000000000000))*(sj0)*(x1353)*(x1362)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1357)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((sj5)*(x1352)*(x1358)))+(((x1357)*(x1361)))+(((x1360)*(x1361)))+(((sj5)*(x1352)*(x1362)))+(((IkReal(-1.00000000000000))*(x1351)*(x1363)))+(((px)*(sj0)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst53; +IkReal x1364=(cj6)*(cj6); +IkReal x1365=(sj6)*(sj6); +IkReal x1366=((sj5)*(sj6)); +IkReal x1367=((IkReal(1.00000000000000))*(cj0)); +IkReal x1368=((cj6)*(sj5)); +IkReal x1369=((r20)*(sj0)); +IkReal x1370=((cj0)*(r20)); +IkReal x1371=((r00)*(r21)); +IkReal x1372=((r22)*(sj0)); +IkReal x1373=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x1374=((cj5)*(x1365)); +IkReal x1375=((cj5)*(x1364)); +gconst53=IKsign(((((r11)*(x1369)*(x1375)))+(((IkReal(-1.00000000000000))*(x1367)*(x1371)*(x1375)))+(((cj0)*(r01)*(r22)*(x1366)))+(((IkReal(-1.00000000000000))*(r10)*(x1373)*(x1374)))+(((r01)*(x1370)*(x1374)))+(((r01)*(x1370)*(x1375)))+(((r11)*(x1366)*(x1372)))+(((r11)*(x1369)*(x1374)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x1367)*(x1368)))+(((IkReal(-1.00000000000000))*(r10)*(x1373)*(x1375)))+(((r12)*(x1368)*(x1369)))+(((r02)*(x1368)*(x1370)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x1366)*(x1367)))+(((IkReal(-1.00000000000000))*(r12)*(x1366)*(x1373)))+(((IkReal(-1.00000000000000))*(r10)*(x1368)*(x1372)))+(((IkReal(-1.00000000000000))*(x1367)*(x1371)*(x1374))))); +IkReal x1376=(cj6)*(cj6); +IkReal x1377=(sj6)*(sj6); +IkReal x1378=((sj5)*(sj6)); +IkReal x1379=((IkReal(1.00000000000000))*(cj0)); +IkReal x1380=((cj6)*(sj5)); +IkReal x1381=((r20)*(sj0)); +IkReal x1382=((cj0)*(r20)); +IkReal x1383=((r00)*(r21)); +IkReal x1384=((r22)*(sj0)); +IkReal x1385=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x1386=((cj5)*(x1377)); +IkReal x1387=((cj5)*(x1376)); +dummyeval[0]=((((r01)*(x1382)*(x1386)))+(((IkReal(-1.00000000000000))*(r10)*(x1385)*(x1387)))+(((r02)*(x1380)*(x1382)))+(((IkReal(-1.00000000000000))*(x1379)*(x1383)*(x1387)))+(((cj0)*(r01)*(r22)*(x1378)))+(((r11)*(x1381)*(x1386)))+(((r11)*(x1381)*(x1387)))+(((IkReal(-1.00000000000000))*(r10)*(x1385)*(x1386)))+(((r11)*(x1378)*(x1384)))+(((IkReal(-1.00000000000000))*(r12)*(x1378)*(x1385)))+(((IkReal(-1.00000000000000))*(r10)*(x1380)*(x1384)))+(((r12)*(x1380)*(x1381)))+(((IkReal(-1.00000000000000))*(x1379)*(x1383)*(x1386)))+(((r01)*(x1382)*(x1387)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x1379)*(x1380)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x1378)*(x1379)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst52; +IkReal x1388=(cj6)*(cj6); +IkReal x1389=(sj6)*(sj6); +IkReal x1390=((IkReal(1.00000000000000))*(r01)); +IkReal x1391=((sj0)*(sj5)); +IkReal x1392=((cj6)*(r22)); +IkReal x1393=((r21)*(sj6)); +IkReal x1394=((r00)*(r21)); +IkReal x1395=((cj0)*(sj5)); +IkReal x1396=((cj6)*(r20)); +IkReal x1397=((r22)*(sj6)); +IkReal x1398=((cj0)*(cj5)); +IkReal x1399=((IkReal(1.00000000000000))*(r10)); +IkReal x1400=((cj5)*(sj0)); +IkReal x1401=((r20)*(x1389)); +IkReal x1402=((x1388)*(x1400)); +gconst52=IKsign(((((r11)*(x1395)*(x1397)))+(((r11)*(x1398)*(x1401)))+(((IkReal(-1.00000000000000))*(r12)*(x1393)*(x1395)))+(((IkReal(-1.00000000000000))*(x1390)*(x1391)*(x1397)))+(((r00)*(x1391)*(x1392)))+(((r12)*(x1395)*(x1396)))+(((r02)*(x1391)*(x1393)))+(((x1394)*(x1402)))+(((IkReal(-1.00000000000000))*(x1390)*(x1400)*(x1401)))+(((IkReal(-1.00000000000000))*(r02)*(x1391)*(x1396)))+(((IkReal(-1.00000000000000))*(r21)*(x1388)*(x1398)*(x1399)))+(((IkReal(-1.00000000000000))*(x1392)*(x1395)*(x1399)))+(((IkReal(-1.00000000000000))*(r20)*(x1390)*(x1402)))+(((x1389)*(x1394)*(x1400)))+(((r11)*(r20)*(x1388)*(x1398)))+(((IkReal(-1.00000000000000))*(r21)*(x1389)*(x1398)*(x1399))))); +IkReal x1403=(cj6)*(cj6); +IkReal x1404=(sj6)*(sj6); +IkReal x1405=((IkReal(1.00000000000000))*(r01)); +IkReal x1406=((sj0)*(sj5)); +IkReal x1407=((cj6)*(r22)); +IkReal x1408=((r21)*(sj6)); +IkReal x1409=((r00)*(r21)); +IkReal x1410=((cj0)*(sj5)); +IkReal x1411=((cj6)*(r20)); +IkReal x1412=((r22)*(sj6)); +IkReal x1413=((cj0)*(cj5)); +IkReal x1414=((IkReal(1.00000000000000))*(r10)); +IkReal x1415=((cj5)*(sj0)); +IkReal x1416=((r20)*(x1404)); +IkReal x1417=((x1403)*(x1415)); +dummyeval[0]=((((r11)*(r20)*(x1403)*(x1413)))+(((IkReal(-1.00000000000000))*(r12)*(x1408)*(x1410)))+(((IkReal(-1.00000000000000))*(x1407)*(x1410)*(x1414)))+(((r12)*(x1410)*(x1411)))+(((IkReal(-1.00000000000000))*(r21)*(x1403)*(x1413)*(x1414)))+(((x1404)*(x1409)*(x1415)))+(((r11)*(x1413)*(x1416)))+(((r02)*(x1406)*(x1408)))+(((IkReal(-1.00000000000000))*(r20)*(x1405)*(x1417)))+(((r00)*(x1406)*(x1407)))+(((IkReal(-1.00000000000000))*(r21)*(x1404)*(x1413)*(x1414)))+(((IkReal(-1.00000000000000))*(x1405)*(x1406)*(x1412)))+(((IkReal(-1.00000000000000))*(x1405)*(x1415)*(x1416)))+(((x1409)*(x1417)))+(((r11)*(x1410)*(x1412)))+(((IkReal(-1.00000000000000))*(r02)*(x1406)*(x1411)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x1418=((cj5)*(r22)); +IkReal x1419=((IkReal(0.374290000000000))*(sj5)); +IkReal x1420=((cj0)*(sj6)); +IkReal x1421=((cj6)*(r21)); +IkReal x1422=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1423=((cj0)*(r02)); +IkReal x1424=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1425=((IkReal(1.00000000000000))*(py)); +IkReal x1426=((r01)*(sj0)); +IkReal x1427=((r20)*(sj6)); +IkReal x1428=((r11)*(sj0)); +IkReal x1429=((IkReal(0.374290000000000))*(cj5)); +IkReal x1430=((cj0)*(r12)); +IkReal x1431=((sj0)*(x1429)); +IkReal x1432=((cj6)*(x1424)); +IkReal x1433=((r10)*(sj0)*(sj6)); +IkReal x1434=((r00)*(sj0)*(sj6)); +IkReal x1435=((cj0)*(cj6)*(x1419)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x1421)))+(((sj5)*(x1427)))+(((IkReal(-1.00000000000000))*(x1418)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1424)*(x1427)))+(((IkReal(-1.00000000000000))*(r22)*(x1422)))+(((IkReal(-1.00000000000000))*(x1421)*(x1424)))+(((x1419)*(x1421)))+(pz)+(((IkReal(-0.374290000000000))*(x1418)))+(((x1419)*(x1427)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((cj0)*(r11)*(x1432)))+(((IkReal(-1.00000000000000))*(r11)*(x1435)))+(((IkReal(-1.00000000000000))*(cj0)*(x1425)))+(((r10)*(x1420)*(x1424)))+(((cj6)*(x1419)*(x1426)))+(((IkReal(-1.00000000000000))*(x1426)*(x1432)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1422)))+(((x1422)*(x1430)))+(((IkReal(-1.00000000000000))*(x1424)*(x1434)))+(((x1429)*(x1430)))+(((IkReal(-1.00000000000000))*(r02)*(x1431)))+(((px)*(sj0)))+(((x1419)*(x1434)))+(((IkReal(-1.00000000000000))*(r10)*(x1419)*(x1420)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x1424)*(x1433)))+(((x1422)*(x1423)))+(((x1428)*(x1432)))+(((r12)*(sj0)*(x1422)))+(((x1423)*(x1429)))+(((IkReal(-1.00000000000000))*(r00)*(x1419)*(x1420)))+(((IkReal(-1.00000000000000))*(sj0)*(x1425)))+(((r00)*(x1420)*(x1424)))+(((cj0)*(r01)*(x1432)))+(((r12)*(x1431)))+(((IkReal(-1.00000000000000))*(cj6)*(x1419)*(x1428)))+(((IkReal(-1.00000000000000))*(r01)*(x1435)))+(((IkReal(-1.00000000000000))*(x1419)*(x1433)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1436=((sj0)*(sj5)); +IkReal x1437=((r00)*(sj6)); +IkReal x1438=((IkReal(1.00000000000000))*(cj5)); +IkReal x1439=((cj6)*(r11)); +IkReal x1440=((cj6)*(r01)); +IkReal x1441=((r10)*(sj6)); +IkReal x1442=((cj0)*(sj5)); +if( IKabs(((((x1436)*(x1440)))+(((x1436)*(x1437)))+(((IkReal(-1.00000000000000))*(x1441)*(x1442)))+(((IkReal(-1.00000000000000))*(x1439)*(x1442)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1438))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x1440)*(x1442)))+(((x1436)*(x1439)))+(((x1437)*(x1442)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1438)))+(((x1436)*(x1441)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1438))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x1436)*(x1440)))+(((x1436)*(x1437)))+(((IkReal(-1.00000000000000))*(x1441)*(x1442)))+(((IkReal(-1.00000000000000))*(x1439)*(x1442)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1438)))))+IKsqr(((((x1440)*(x1442)))+(((x1436)*(x1439)))+(((x1437)*(x1442)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1438)))+(((x1436)*(x1441)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1438)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x1436)*(x1440)))+(((x1436)*(x1437)))+(((IkReal(-1.00000000000000))*(x1441)*(x1442)))+(((IkReal(-1.00000000000000))*(x1439)*(x1442)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1438)))), ((((x1440)*(x1442)))+(((x1436)*(x1439)))+(((x1437)*(x1442)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1438)))+(((x1436)*(x1441)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1438))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x1443=((cj0)*(cj5)); +IkReal x1444=((IkReal(1.00000000000000))*(cj0)); +IkReal x1445=((cj6)*(r11)); +IkReal x1446=((r10)*(sj6)); +IkReal x1447=((cj5)*(sj0)); +IkReal x1448=((r00)*(sj5)*(sj6)); +IkReal x1449=((cj6)*(r01)*(sj5)); +IkReal x1450=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj5)*(x1444)*(x1445)))+(((IkReal(-1.00000000000000))*(r02)*(x1447)))+(((r12)*(x1443)))+(((sj0)*(x1448)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((sj0)*(x1449)))+(((IkReal(-1.00000000000000))*(sj5)*(x1444)*(x1446)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1446)*(x1450)))+(((r12)*(x1447)))+(((IkReal(-1.00000000000000))*(x1445)*(x1450)))+(((IkReal(-1.00000000000000))*(x1444)*(x1448)))+(IKcos(j3))+(((r02)*(x1443)))+(((IkReal(-1.00000000000000))*(x1444)*(x1449)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst59; +IkReal x1451=(r21)*(r21); +IkReal x1452=(cj5)*(cj5); +IkReal x1453=(sj6)*(sj6); +IkReal x1454=(cj6)*(cj6); +IkReal x1455=(r20)*(r20); +IkReal x1456=((cj6)*(r21)); +IkReal x1457=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1458=((cj5)*(r22)*(sj5)); +IkReal x1459=((IkReal(1.00000000000000))*(x1453)); +IkReal x1460=((IkReal(1.00000000000000))*(x1454)); +gconst59=IKsign(((((x1456)*(x1457)))+(((IkReal(-1.00000000000000))*(x1455)*(x1460)))+(((IkReal(-1.00000000000000))*(x1457)*(x1458)))+(((IkReal(-1.00000000000000))*(x1451)*(x1452)*(x1460)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x1452)*(x1456)*(x1457)))+(((IkReal(-2.00000000000000))*(x1456)*(x1458)))+(((IkReal(-1.00000000000000))*(x1451)*(x1459)))+(((IkReal(-1.00000000000000))*(x1452)*(x1455)*(x1459))))); +IkReal x1461=(r21)*(r21); +IkReal x1462=(cj5)*(cj5); +IkReal x1463=(sj6)*(sj6); +IkReal x1464=(cj6)*(cj6); +IkReal x1465=(r20)*(r20); +IkReal x1466=((cj6)*(r21)); +IkReal x1467=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1468=((cj5)*(r22)*(sj5)); +IkReal x1469=((IkReal(1.00000000000000))*(x1463)); +IkReal x1470=((IkReal(1.00000000000000))*(x1464)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x1462)*(x1466)*(x1467)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x1461)*(x1462)*(x1470)))+(((IkReal(-2.00000000000000))*(x1466)*(x1468)))+(((IkReal(-1.00000000000000))*(x1462)*(x1465)*(x1469)))+(((IkReal(-1.00000000000000))*(x1467)*(x1468)))+(((IkReal(-1.00000000000000))*(x1465)*(x1470)))+(((IkReal(-1.00000000000000))*(x1461)*(x1469)))+(((x1466)*(x1467)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst60; +IkReal x1471=(cj6)*(cj6); +IkReal x1472=(sj6)*(sj6); +IkReal x1473=((IkReal(1.00000000000000))*(r01)); +IkReal x1474=((sj0)*(sj5)); +IkReal x1475=((cj6)*(r22)); +IkReal x1476=((r21)*(sj6)); +IkReal x1477=((r00)*(r21)); +IkReal x1478=((cj0)*(sj5)); +IkReal x1479=((cj6)*(r20)); +IkReal x1480=((r22)*(sj6)); +IkReal x1481=((cj0)*(cj5)); +IkReal x1482=((IkReal(1.00000000000000))*(r10)); +IkReal x1483=((cj5)*(sj0)); +IkReal x1484=((r20)*(x1472)); +IkReal x1485=((x1471)*(x1483)); +gconst60=IKsign(((((IkReal(-1.00000000000000))*(r12)*(x1476)*(x1478)))+(((IkReal(-1.00000000000000))*(r02)*(x1474)*(x1479)))+(((IkReal(-1.00000000000000))*(x1473)*(x1483)*(x1484)))+(((r02)*(x1474)*(x1476)))+(((IkReal(-1.00000000000000))*(r20)*(x1473)*(x1485)))+(((r11)*(x1478)*(x1480)))+(((r11)*(x1481)*(x1484)))+(((IkReal(-1.00000000000000))*(r21)*(x1472)*(x1481)*(x1482)))+(((r00)*(x1474)*(x1475)))+(((IkReal(-1.00000000000000))*(r21)*(x1471)*(x1481)*(x1482)))+(((x1472)*(x1477)*(x1483)))+(((r12)*(x1478)*(x1479)))+(((r11)*(r20)*(x1471)*(x1481)))+(((IkReal(-1.00000000000000))*(x1475)*(x1478)*(x1482)))+(((IkReal(-1.00000000000000))*(x1473)*(x1474)*(x1480)))+(((x1477)*(x1485))))); +IkReal x1486=(cj6)*(cj6); +IkReal x1487=(sj6)*(sj6); +IkReal x1488=((IkReal(1.00000000000000))*(r01)); +IkReal x1489=((sj0)*(sj5)); +IkReal x1490=((cj6)*(r22)); +IkReal x1491=((r21)*(sj6)); +IkReal x1492=((r00)*(r21)); +IkReal x1493=((cj0)*(sj5)); +IkReal x1494=((cj6)*(r20)); +IkReal x1495=((r22)*(sj6)); +IkReal x1496=((cj0)*(cj5)); +IkReal x1497=((IkReal(1.00000000000000))*(r10)); +IkReal x1498=((cj5)*(sj0)); +IkReal x1499=((r20)*(x1487)); +IkReal x1500=((x1486)*(x1498)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x1488)*(x1489)*(x1495)))+(((IkReal(-1.00000000000000))*(r12)*(x1491)*(x1493)))+(((IkReal(-1.00000000000000))*(x1490)*(x1493)*(x1497)))+(((r12)*(x1493)*(x1494)))+(((r11)*(x1493)*(x1495)))+(((r11)*(r20)*(x1486)*(x1496)))+(((IkReal(-1.00000000000000))*(r20)*(x1488)*(x1500)))+(((IkReal(-1.00000000000000))*(x1488)*(x1498)*(x1499)))+(((x1492)*(x1500)))+(((x1487)*(x1492)*(x1498)))+(((IkReal(-1.00000000000000))*(r21)*(x1486)*(x1496)*(x1497)))+(((r11)*(x1496)*(x1499)))+(((IkReal(-1.00000000000000))*(r02)*(x1489)*(x1494)))+(((r02)*(x1489)*(x1491)))+(((IkReal(-1.00000000000000))*(r21)*(x1487)*(x1496)*(x1497)))+(((r00)*(x1489)*(x1490)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1501=((sj0)*(sj6)); +IkReal x1502=((cj0)*(r10)); +IkReal x1503=((IkReal(1.00000000000000))*(cj5)); +IkReal x1504=((cj6)*(sj0)); +IkReal x1505=((cj0)*(r11)); +if( IKabs(((gconst60)*(((((IkReal(-1.00000000000000))*(sj6)*(x1505)))+(((r01)*(x1501)))+(((cj6)*(x1502)))+(((IkReal(-1.00000000000000))*(r00)*(x1504))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst60)*(((((cj5)*(sj6)*(x1502)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x1505)))+(((IkReal(-1.00000000000000))*(r00)*(x1501)*(x1503)))+(((IkReal(-1.00000000000000))*(r01)*(x1503)*(x1504))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst60)*(((((IkReal(-1.00000000000000))*(sj6)*(x1505)))+(((r01)*(x1501)))+(((cj6)*(x1502)))+(((IkReal(-1.00000000000000))*(r00)*(x1504)))))), ((gconst60)*(((((cj5)*(sj6)*(x1502)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x1505)))+(((IkReal(-1.00000000000000))*(r00)*(x1501)*(x1503)))+(((IkReal(-1.00000000000000))*(r01)*(x1503)*(x1504))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1506=IKsin(j4); +IkReal x1507=IKcos(j4); +IkReal x1508=((r22)*(sj5)); +IkReal x1509=((IkReal(1.00000000000000))*(cj6)); +IkReal x1510=((IkReal(1.00000000000000))*(cj0)); +IkReal x1511=((cj5)*(r11)); +IkReal x1512=((cj5)*(cj6)); +IkReal x1513=((r11)*(sj6)); +IkReal x1514=((IkReal(1.00000000000000))*(sj6)); +IkReal x1515=((cj6)*(r00)); +IkReal x1516=((r12)*(sj5)); +IkReal x1517=((r02)*(sj5)); +IkReal x1518=((cj6)*(r10)); +IkReal x1519=((cj5)*(sj6)); +IkReal x1520=((cj5)*(r01)); +IkReal x1521=((sj0)*(x1506)); +IkReal x1522=((r00)*(x1519)); +IkReal x1523=((cj0)*(x1506)); +IkReal x1524=((sj0)*(x1507)); +IkReal x1525=((r20)*(x1507)); +IkReal x1526=((cj0)*(x1507)); +IkReal x1527=((r21)*(x1506)); +IkReal x1528=((r21)*(x1507)); +IkReal x1529=((r20)*(x1506)); +IkReal x1530=((x1507)*(x1516)); +IkReal x1531=((r01)*(sj6)*(x1507)); +IkReal x1532=((cj5)*(r10)*(x1514)); +evalcond[0]=((IkReal(1.00000000000000))+(((x1506)*(x1508)))+(((IkReal(-1.00000000000000))*(x1509)*(x1525)))+(((sj6)*(x1528)))+(((x1519)*(x1529)))+(((x1512)*(x1527)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1514)*(x1527)))+(((x1507)*(x1508)))+(((x1512)*(x1528)))+(((cj6)*(x1529)))+(((x1519)*(x1525)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1506)*(x1510)*(x1516)))+(((IkReal(-1.00000000000000))*(r00)*(x1509)*(x1524)))+(((IkReal(-1.00000000000000))*(x1507)*(x1510)*(x1513)))+(((x1518)*(x1526)))+(((x1517)*(x1521)))+(((r01)*(x1512)*(x1521)))+(((r01)*(sj6)*(x1524)))+(((x1521)*(x1522)))+(((IkReal(-1.00000000000000))*(x1509)*(x1511)*(x1523)))+(((IkReal(-1.00000000000000))*(r10)*(x1506)*(x1510)*(x1519)))); +evalcond[3]=((((x1517)*(x1524)))+(((IkReal(-1.00000000000000))*(x1510)*(x1530)))+(((IkReal(-1.00000000000000))*(r10)*(x1507)*(x1510)*(x1519)))+(cj3)+(((r01)*(x1512)*(x1524)))+(((x1515)*(x1521)))+(((x1513)*(x1523)))+(((IkReal(-1.00000000000000))*(x1509)*(x1511)*(x1526)))+(((x1522)*(x1524)))+(((IkReal(-1.00000000000000))*(r10)*(x1509)*(x1523)))+(((IkReal(-1.00000000000000))*(r01)*(x1514)*(x1521)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x1506)*(x1510)*(x1517)))+(((IkReal(-1.00000000000000))*(x1509)*(x1511)*(x1521)))+(((IkReal(-1.00000000000000))*(x1506)*(x1510)*(x1522)))+(((x1518)*(x1524)))+(((IkReal(-1.00000000000000))*(x1510)*(x1531)))+(((IkReal(-1.00000000000000))*(x1521)*(x1532)))+(((IkReal(-1.00000000000000))*(x1516)*(x1521)))+(((IkReal(-1.00000000000000))*(x1509)*(x1520)*(x1523)))+(((IkReal(-1.00000000000000))*(x1513)*(x1524)))+(((x1515)*(x1526)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1509)*(x1511)*(x1524)))+(((r01)*(sj6)*(x1523)))+(((IkReal(-1.00000000000000))*(x1516)*(x1524)))+(sj3)+(((IkReal(-1.00000000000000))*(x1507)*(x1510)*(x1522)))+(((IkReal(-1.00000000000000))*(x1509)*(x1520)*(x1526)))+(((IkReal(-1.00000000000000))*(x1507)*(x1510)*(x1517)))+(((IkReal(-1.00000000000000))*(r00)*(x1509)*(x1523)))+(((IkReal(-1.00000000000000))*(x1524)*(x1532)))+(((x1513)*(x1521)))+(((IkReal(-1.00000000000000))*(r10)*(x1509)*(x1521)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst59)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst59)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst59)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst59)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1533=IKsin(j4); +IkReal x1534=IKcos(j4); +IkReal x1535=((r22)*(sj5)); +IkReal x1536=((IkReal(1.00000000000000))*(cj6)); +IkReal x1537=((IkReal(1.00000000000000))*(cj0)); +IkReal x1538=((cj5)*(r11)); +IkReal x1539=((cj5)*(cj6)); +IkReal x1540=((r11)*(sj6)); +IkReal x1541=((IkReal(1.00000000000000))*(sj6)); +IkReal x1542=((cj6)*(r00)); +IkReal x1543=((r12)*(sj5)); +IkReal x1544=((r02)*(sj5)); +IkReal x1545=((cj6)*(r10)); +IkReal x1546=((cj5)*(sj6)); +IkReal x1547=((cj5)*(r01)); +IkReal x1548=((sj0)*(x1533)); +IkReal x1549=((r00)*(x1546)); +IkReal x1550=((cj0)*(x1533)); +IkReal x1551=((sj0)*(x1534)); +IkReal x1552=((r20)*(x1534)); +IkReal x1553=((cj0)*(x1534)); +IkReal x1554=((r21)*(x1533)); +IkReal x1555=((r21)*(x1534)); +IkReal x1556=((r20)*(x1533)); +IkReal x1557=((x1534)*(x1543)); +IkReal x1558=((r01)*(sj6)*(x1534)); +IkReal x1559=((cj5)*(r10)*(x1541)); +evalcond[0]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x1536)*(x1552)))+(((x1546)*(x1556)))+(((x1533)*(x1535)))+(((x1539)*(x1554)))+(((sj6)*(x1555)))); +evalcond[1]=((((cj6)*(x1556)))+(((x1534)*(x1535)))+(((x1546)*(x1552)))+(((x1539)*(x1555)))+(((IkReal(-1.00000000000000))*(x1541)*(x1554)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1536)*(x1538)*(x1550)))+(((IkReal(-1.00000000000000))*(x1533)*(x1537)*(x1543)))+(((x1544)*(x1548)))+(((IkReal(-1.00000000000000))*(r10)*(x1533)*(x1537)*(x1546)))+(((IkReal(-1.00000000000000))*(x1534)*(x1537)*(x1540)))+(((r01)*(sj6)*(x1551)))+(((x1548)*(x1549)))+(((r01)*(x1539)*(x1548)))+(((x1545)*(x1553)))+(((IkReal(-1.00000000000000))*(r00)*(x1536)*(x1551)))); +evalcond[3]=((((x1540)*(x1550)))+(((x1542)*(x1548)))+(((IkReal(-1.00000000000000))*(r10)*(x1536)*(x1550)))+(((r01)*(x1539)*(x1551)))+(((x1544)*(x1551)))+(((IkReal(-1.00000000000000))*(x1537)*(x1557)))+(((IkReal(-1.00000000000000))*(r01)*(x1541)*(x1548)))+(((IkReal(-1.00000000000000))*(r10)*(x1534)*(x1537)*(x1546)))+(cj3)+(((x1549)*(x1551)))+(((IkReal(-1.00000000000000))*(x1536)*(x1538)*(x1553)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x1540)*(x1551)))+(((x1542)*(x1553)))+(((IkReal(-1.00000000000000))*(x1536)*(x1538)*(x1548)))+(((IkReal(-1.00000000000000))*(x1533)*(x1537)*(x1544)))+(((IkReal(-1.00000000000000))*(x1533)*(x1537)*(x1549)))+(((IkReal(-1.00000000000000))*(x1536)*(x1547)*(x1550)))+(((IkReal(-1.00000000000000))*(x1543)*(x1548)))+(((IkReal(-1.00000000000000))*(x1548)*(x1559)))+(((x1545)*(x1551)))+(((IkReal(-1.00000000000000))*(x1537)*(x1558)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1536)*(x1547)*(x1553)))+(((x1540)*(x1548)))+(((r01)*(sj6)*(x1550)))+(((IkReal(-1.00000000000000))*(r00)*(x1536)*(x1550)))+(sj3)+(((IkReal(-1.00000000000000))*(x1536)*(x1538)*(x1551)))+(((IkReal(-1.00000000000000))*(r10)*(x1536)*(x1548)))+(((IkReal(-1.00000000000000))*(x1551)*(x1559)))+(((IkReal(-1.00000000000000))*(x1534)*(x1537)*(x1544)))+(((IkReal(-1.00000000000000))*(x1534)*(x1537)*(x1549)))+(((IkReal(-1.00000000000000))*(x1543)*(x1551)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x1560=((cj5)*(r22)); +IkReal x1561=((IkReal(0.374290000000000))*(sj5)); +IkReal x1562=((cj0)*(sj6)); +IkReal x1563=((cj6)*(r21)); +IkReal x1564=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1565=((cj0)*(r02)); +IkReal x1566=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1567=((IkReal(1.00000000000000))*(py)); +IkReal x1568=((r01)*(sj0)); +IkReal x1569=((r20)*(sj6)); +IkReal x1570=((r11)*(sj0)); +IkReal x1571=((IkReal(0.374290000000000))*(cj5)); +IkReal x1572=((cj0)*(r12)); +IkReal x1573=((sj0)*(x1571)); +IkReal x1574=((cj6)*(x1566)); +IkReal x1575=((r10)*(sj0)*(sj6)); +IkReal x1576=((r00)*(sj0)*(sj6)); +IkReal x1577=((cj0)*(cj6)*(x1561)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1560)))+(((sj5)*(x1569)))+(((sj5)*(x1563)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1566)*(x1569)))+(((x1561)*(x1563)))+(((IkReal(-1.00000000000000))*(r22)*(x1564)))+(pz)+(((x1561)*(x1569)))+(((IkReal(-1.00000000000000))*(x1563)*(x1566)))+(((IkReal(-0.374290000000000))*(x1560)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x1566)*(x1576)))+(((IkReal(-1.00000000000000))*(r11)*(x1577)))+(((x1571)*(x1572)))+(((r10)*(x1562)*(x1566)))+(((x1561)*(x1576)))+(((IkReal(-1.00000000000000))*(cj0)*(x1567)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1564)))+(((cj6)*(x1561)*(x1568)))+(((IkReal(-1.00000000000000))*(x1568)*(x1574)))+(((px)*(sj0)))+(((cj0)*(r11)*(x1574)))+(((x1564)*(x1572)))+(((IkReal(-1.00000000000000))*(r02)*(x1573)))+(((IkReal(-1.00000000000000))*(r10)*(x1561)*(x1562)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(r00)*(x1561)*(x1562)))+(((cj0)*(r01)*(x1574)))+(((x1565)*(x1571)))+(((IkReal(-1.00000000000000))*(sj0)*(x1567)))+(((x1570)*(x1574)))+(((r12)*(sj0)*(x1564)))+(((x1564)*(x1565)))+(((r12)*(x1573)))+(((IkReal(-1.00000000000000))*(x1561)*(x1575)))+(((IkReal(-1.00000000000000))*(cj6)*(x1561)*(x1570)))+(((r00)*(x1562)*(x1566)))+(((x1566)*(x1575)))+(((IkReal(-1.00000000000000))*(r01)*(x1577)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1578=((IkReal(1.00000000000000))*(cj5)); +IkReal x1579=((r10)*(sj5)*(sj6)); +IkReal x1580=((cj6)*(sj0)*(sj5)); +IkReal x1581=((r00)*(sj5)*(sj6)); +IkReal x1582=((cj0)*(cj6)*(sj5)); +if( IKabs(((((cj0)*(x1579)))+(((IkReal(-1.00000000000000))*(sj0)*(x1581)))+(((IkReal(-1.00000000000000))*(r01)*(x1580)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x1582)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x1578))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1578)))+(((sj0)*(x1579)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1578)))+(((r11)*(x1580)))+(((r01)*(x1582)))+(((cj0)*(x1581))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(x1579)))+(((IkReal(-1.00000000000000))*(sj0)*(x1581)))+(((IkReal(-1.00000000000000))*(r01)*(x1580)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x1582)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x1578)))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1578)))+(((sj0)*(x1579)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1578)))+(((r11)*(x1580)))+(((r01)*(x1582)))+(((cj0)*(x1581)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(x1579)))+(((IkReal(-1.00000000000000))*(sj0)*(x1581)))+(((IkReal(-1.00000000000000))*(r01)*(x1580)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x1582)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x1578)))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1578)))+(((sj0)*(x1579)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1578)))+(((r11)*(x1580)))+(((r01)*(x1582)))+(((cj0)*(x1581))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x1583=((cj0)*(cj5)); +IkReal x1584=((IkReal(1.00000000000000))*(cj0)); +IkReal x1585=((cj6)*(r11)); +IkReal x1586=((r10)*(sj6)); +IkReal x1587=((cj5)*(sj0)); +IkReal x1588=((r00)*(sj5)*(sj6)); +IkReal x1589=((cj6)*(r01)*(sj5)); +IkReal x1590=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj5)*(x1584)*(x1585)))+(((IkReal(-1.00000000000000))*(r02)*(x1587)))+(((r12)*(x1583)))+(((sj0)*(x1588)))+(IKsin(j3))+(((sj0)*(x1589)))+(((IkReal(-1.00000000000000))*(sj5)*(x1584)*(x1586)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1584)*(x1589)))+(((r02)*(x1583)))+(((IkReal(-1.00000000000000))*(x1585)*(x1590)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x1586)*(x1590)))+(((IkReal(-1.00000000000000))*(x1584)*(x1588)))+(((r12)*(x1587)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst63; +IkReal x1591=(cj5)*(cj5); +IkReal x1592=(r20)*(r20); +IkReal x1593=(sj6)*(sj6); +IkReal x1594=(cj6)*(cj6); +IkReal x1595=(r21)*(r21); +IkReal x1596=((cj6)*(r21)); +IkReal x1597=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1598=((cj5)*(r22)*(sj5)); +gconst63=IKsign(((((x1592)*(x1594)))+(((x1593)*(x1595)))+(((IkReal(-1.00000000000000))*(x1596)*(x1597)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x1591)*(x1594)*(x1595)))+(((x1591)*(x1592)*(x1593)))+(((IkReal(2.00000000000000))*(x1596)*(x1598)))+(((x1597)*(x1598)))+(((x1591)*(x1596)*(x1597))))); +IkReal x1599=(cj5)*(cj5); +IkReal x1600=(r20)*(r20); +IkReal x1601=(sj6)*(sj6); +IkReal x1602=(cj6)*(cj6); +IkReal x1603=(r21)*(r21); +IkReal x1604=((cj6)*(r21)); +IkReal x1605=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1606=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x1601)*(x1603)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x1600)*(x1602)))+(((IkReal(2.00000000000000))*(x1604)*(x1606)))+(((x1605)*(x1606)))+(((x1599)*(x1604)*(x1605)))+(((x1599)*(x1600)*(x1601)))+(((x1599)*(x1602)*(x1603)))+(((IkReal(-1.00000000000000))*(x1604)*(x1605)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst64; +IkReal x1607=(cj6)*(cj6); +IkReal x1608=(sj6)*(sj6); +IkReal x1609=((IkReal(1.00000000000000))*(r21)); +IkReal x1610=((cj6)*(r20)); +IkReal x1611=((r22)*(sj5)); +IkReal x1612=((r01)*(sj0)); +IkReal x1613=((r00)*(sj0)); +IkReal x1614=((cj0)*(r10)); +IkReal x1615=((r02)*(sj0)*(sj5)); +IkReal x1616=((cj5)*(x1607)); +IkReal x1617=((cj0)*(r12)*(sj5)); +IkReal x1618=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x1619=((cj5)*(x1608)); +IkReal x1620=((r20)*(x1619)); +gconst64=IKsign(((((IkReal(-1.00000000000000))*(x1609)*(x1613)*(x1619)))+(((cj6)*(x1611)*(x1614)))+(((r21)*(x1614)*(x1619)))+(((IkReal(-1.00000000000000))*(x1609)*(x1613)*(x1616)))+(((IkReal(-1.00000000000000))*(x1610)*(x1617)))+(((IkReal(-1.00000000000000))*(r20)*(x1616)*(x1618)))+(((IkReal(-1.00000000000000))*(x1618)*(x1620)))+(((IkReal(-1.00000000000000))*(cj6)*(x1611)*(x1613)))+(((sj6)*(x1611)*(x1612)))+(((r21)*(x1614)*(x1616)))+(((r21)*(sj6)*(x1617)))+(((IkReal(-1.00000000000000))*(sj6)*(x1611)*(x1618)))+(((IkReal(-1.00000000000000))*(sj6)*(x1609)*(x1615)))+(((r20)*(x1612)*(x1616)))+(((x1610)*(x1615)))+(((x1612)*(x1620))))); +IkReal x1621=(cj6)*(cj6); +IkReal x1622=(sj6)*(sj6); +IkReal x1623=((IkReal(1.00000000000000))*(r21)); +IkReal x1624=((cj6)*(r20)); +IkReal x1625=((r22)*(sj5)); +IkReal x1626=((r01)*(sj0)); +IkReal x1627=((r00)*(sj0)); +IkReal x1628=((cj0)*(r10)); +IkReal x1629=((r02)*(sj0)*(sj5)); +IkReal x1630=((cj5)*(x1621)); +IkReal x1631=((cj0)*(r12)*(sj5)); +IkReal x1632=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x1633=((cj5)*(x1622)); +IkReal x1634=((r20)*(x1633)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x1623)*(x1627)*(x1630)))+(((IkReal(-1.00000000000000))*(r20)*(x1630)*(x1632)))+(((sj6)*(x1625)*(x1626)))+(((IkReal(-1.00000000000000))*(x1624)*(x1631)))+(((IkReal(-1.00000000000000))*(sj6)*(x1625)*(x1632)))+(((r21)*(x1628)*(x1633)))+(((x1626)*(x1634)))+(((IkReal(-1.00000000000000))*(x1632)*(x1634)))+(((cj6)*(x1625)*(x1628)))+(((x1624)*(x1629)))+(((r21)*(sj6)*(x1631)))+(((r20)*(x1626)*(x1630)))+(((r21)*(x1628)*(x1630)))+(((IkReal(-1.00000000000000))*(cj6)*(x1625)*(x1627)))+(((IkReal(-1.00000000000000))*(x1623)*(x1627)*(x1633)))+(((IkReal(-1.00000000000000))*(sj6)*(x1623)*(x1629)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1635=((sj0)*(sj6)); +IkReal x1636=((cj0)*(r10)); +IkReal x1637=((IkReal(1.00000000000000))*(cj5)); +IkReal x1638=((cj6)*(sj0)); +IkReal x1639=((cj0)*(r11)); +if( IKabs(((gconst64)*(((((IkReal(-1.00000000000000))*(sj6)*(x1639)))+(((cj6)*(x1636)))+(((IkReal(-1.00000000000000))*(r00)*(x1638)))+(((r01)*(x1635))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst64)*(((((cj5)*(cj6)*(x1639)))+(((cj5)*(sj6)*(x1636)))+(((IkReal(-1.00000000000000))*(r01)*(x1637)*(x1638)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x1635)*(x1637)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst64)*(((((IkReal(-1.00000000000000))*(sj6)*(x1639)))+(((cj6)*(x1636)))+(((IkReal(-1.00000000000000))*(r00)*(x1638)))+(((r01)*(x1635)))))), ((gconst64)*(((((cj5)*(cj6)*(x1639)))+(((cj5)*(sj6)*(x1636)))+(((IkReal(-1.00000000000000))*(r01)*(x1637)*(x1638)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x1635)*(x1637)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1640=IKsin(j4); +IkReal x1641=IKcos(j4); +IkReal x1642=((r22)*(sj5)); +IkReal x1643=((IkReal(1.00000000000000))*(cj6)); +IkReal x1644=((IkReal(1.00000000000000))*(cj0)); +IkReal x1645=((cj5)*(r11)); +IkReal x1646=((cj5)*(cj6)); +IkReal x1647=((r11)*(sj6)); +IkReal x1648=((IkReal(1.00000000000000))*(sj6)); +IkReal x1649=((cj6)*(r00)); +IkReal x1650=((r12)*(sj5)); +IkReal x1651=((r02)*(sj5)); +IkReal x1652=((cj6)*(r10)); +IkReal x1653=((cj5)*(sj6)); +IkReal x1654=((cj5)*(r01)); +IkReal x1655=((sj0)*(x1640)); +IkReal x1656=((r00)*(x1653)); +IkReal x1657=((cj0)*(x1640)); +IkReal x1658=((sj0)*(x1641)); +IkReal x1659=((r20)*(x1641)); +IkReal x1660=((cj0)*(x1641)); +IkReal x1661=((r21)*(x1640)); +IkReal x1662=((r21)*(x1641)); +IkReal x1663=((r20)*(x1640)); +IkReal x1664=((x1641)*(x1650)); +IkReal x1665=((r01)*(sj6)*(x1641)); +IkReal x1666=((cj5)*(r10)*(x1648)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x1643)*(x1659)))+(((x1646)*(x1661)))+(((x1640)*(x1642)))+(((sj6)*(x1662)))+(((x1653)*(x1663)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1648)*(x1661)))+(((x1641)*(x1642)))+(((x1653)*(x1659)))+(((x1646)*(x1662)))+(((cj6)*(x1663)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x1640)*(x1644)*(x1653)))+(((r01)*(sj6)*(x1658)))+(((x1651)*(x1655)))+(((r01)*(x1646)*(x1655)))+(((x1652)*(x1660)))+(((IkReal(-1.00000000000000))*(x1640)*(x1644)*(x1650)))+(((IkReal(-1.00000000000000))*(x1643)*(x1645)*(x1657)))+(((IkReal(-1.00000000000000))*(x1641)*(x1644)*(x1647)))+(((x1655)*(x1656)))+(((IkReal(-1.00000000000000))*(r00)*(x1643)*(x1658)))); +evalcond[3]=((((x1649)*(x1655)))+(((x1656)*(x1658)))+(((IkReal(-1.00000000000000))*(r01)*(x1648)*(x1655)))+(((IkReal(-1.00000000000000))*(r10)*(x1641)*(x1644)*(x1653)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x1644)*(x1664)))+(((x1651)*(x1658)))+(((x1647)*(x1657)))+(((r01)*(x1646)*(x1658)))+(((IkReal(-1.00000000000000))*(r10)*(x1643)*(x1657)))+(((IkReal(-1.00000000000000))*(x1643)*(x1645)*(x1660)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x1644)*(x1665)))+(((IkReal(-1.00000000000000))*(x1640)*(x1644)*(x1656)))+(((IkReal(-1.00000000000000))*(x1643)*(x1654)*(x1657)))+(((IkReal(-1.00000000000000))*(x1643)*(x1645)*(x1655)))+(((IkReal(-1.00000000000000))*(x1655)*(x1666)))+(((x1649)*(x1660)))+(((x1652)*(x1658)))+(((IkReal(-1.00000000000000))*(x1640)*(x1644)*(x1651)))+(((IkReal(-1.00000000000000))*(x1650)*(x1655)))+(((IkReal(-1.00000000000000))*(x1647)*(x1658)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1643)*(x1645)*(x1658)))+(sj3)+(((x1647)*(x1655)))+(((IkReal(-1.00000000000000))*(x1658)*(x1666)))+(((IkReal(-1.00000000000000))*(x1641)*(x1644)*(x1651)))+(((IkReal(-1.00000000000000))*(r00)*(x1643)*(x1657)))+(((IkReal(-1.00000000000000))*(r10)*(x1643)*(x1655)))+(((IkReal(-1.00000000000000))*(x1641)*(x1644)*(x1656)))+(((IkReal(-1.00000000000000))*(x1650)*(x1658)))+(((IkReal(-1.00000000000000))*(x1643)*(x1654)*(x1660)))+(((r01)*(sj6)*(x1657)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst63)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst63)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst63)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst63)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1667=IKsin(j4); +IkReal x1668=IKcos(j4); +IkReal x1669=((r22)*(sj5)); +IkReal x1670=((IkReal(1.00000000000000))*(cj6)); +IkReal x1671=((IkReal(1.00000000000000))*(cj0)); +IkReal x1672=((cj5)*(r11)); +IkReal x1673=((cj5)*(cj6)); +IkReal x1674=((r11)*(sj6)); +IkReal x1675=((IkReal(1.00000000000000))*(sj6)); +IkReal x1676=((cj6)*(r00)); +IkReal x1677=((r12)*(sj5)); +IkReal x1678=((r02)*(sj5)); +IkReal x1679=((cj6)*(r10)); +IkReal x1680=((cj5)*(sj6)); +IkReal x1681=((cj5)*(r01)); +IkReal x1682=((sj0)*(x1667)); +IkReal x1683=((r00)*(x1680)); +IkReal x1684=((cj0)*(x1667)); +IkReal x1685=((sj0)*(x1668)); +IkReal x1686=((r20)*(x1668)); +IkReal x1687=((cj0)*(x1668)); +IkReal x1688=((r21)*(x1667)); +IkReal x1689=((r21)*(x1668)); +IkReal x1690=((r20)*(x1667)); +IkReal x1691=((x1668)*(x1677)); +IkReal x1692=((r01)*(sj6)*(x1668)); +IkReal x1693=((cj5)*(r10)*(x1675)); +evalcond[0]=((IkReal(-1.00000000000000))+(((x1680)*(x1690)))+(((x1667)*(x1669)))+(((sj6)*(x1689)))+(((IkReal(-1.00000000000000))*(x1670)*(x1686)))+(((x1673)*(x1688)))); +evalcond[1]=((((cj6)*(x1690)))+(((x1668)*(x1669)))+(((x1673)*(x1689)))+(((IkReal(-1.00000000000000))*(x1675)*(x1688)))+(((x1680)*(x1686)))); +evalcond[2]=((((r01)*(sj6)*(x1685)))+(((x1682)*(x1683)))+(((x1679)*(x1687)))+(((x1678)*(x1682)))+(((IkReal(-1.00000000000000))*(x1668)*(x1671)*(x1674)))+(((IkReal(-1.00000000000000))*(r10)*(x1667)*(x1671)*(x1680)))+(((IkReal(-1.00000000000000))*(x1667)*(x1671)*(x1677)))+(((IkReal(-1.00000000000000))*(x1670)*(x1672)*(x1684)))+(((r01)*(x1673)*(x1682)))+(((IkReal(-1.00000000000000))*(r00)*(x1670)*(x1685)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(x1675)*(x1682)))+(((IkReal(-1.00000000000000))*(x1671)*(x1691)))+(((IkReal(-1.00000000000000))*(r10)*(x1670)*(x1684)))+(((IkReal(-1.00000000000000))*(r10)*(x1668)*(x1671)*(x1680)))+(((r01)*(x1673)*(x1685)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x1670)*(x1672)*(x1687)))+(((x1676)*(x1682)))+(((x1683)*(x1685)))+(((x1674)*(x1684)))+(((x1678)*(x1685)))); +evalcond[4]=((((x1676)*(x1687)))+(((IkReal(-1.00000000000000))*(x1667)*(x1671)*(x1683)))+(((IkReal(-1.00000000000000))*(x1670)*(x1681)*(x1684)))+(((IkReal(-1.00000000000000))*(x1670)*(x1672)*(x1682)))+(((IkReal(-1.00000000000000))*(x1667)*(x1671)*(x1678)))+(((IkReal(-1.00000000000000))*(x1677)*(x1682)))+(((IkReal(-1.00000000000000))*(x1682)*(x1693)))+(((IkReal(-1.00000000000000))*(x1671)*(x1692)))+(((IkReal(-1.00000000000000))*(x1674)*(x1685)))+(((x1679)*(x1685)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1685)*(x1693)))+(((IkReal(-1.00000000000000))*(x1677)*(x1685)))+(((IkReal(-1.00000000000000))*(r10)*(x1670)*(x1682)))+(((IkReal(-1.00000000000000))*(x1670)*(x1672)*(x1685)))+(sj3)+(((x1674)*(x1682)))+(((IkReal(-1.00000000000000))*(x1670)*(x1681)*(x1687)))+(((IkReal(-1.00000000000000))*(x1668)*(x1671)*(x1678)))+(((r01)*(sj6)*(x1684)))+(((IkReal(-1.00000000000000))*(r00)*(x1670)*(x1684)))+(((IkReal(-1.00000000000000))*(x1668)*(x1671)*(x1683)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1694=((cj6)*(sj5)); +IkReal x1695=((IkReal(1.00000000000000))*(cj5)); +IkReal x1696=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x1696)))+(((IkReal(-1.00000000000000))*(r21)*(x1694)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(r00)*(x1696)))+(((r10)*(sj0)*(x1696)))+(((cj0)*(r01)*(x1694)))+(((r11)*(sj0)*(x1694)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1695)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1695))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x1696)))+(((IkReal(-1.00000000000000))*(r21)*(x1694)))+(((cj5)*(r22)))))))+IKsqr(((((cj0)*(r00)*(x1696)))+(((r10)*(sj0)*(x1696)))+(((cj0)*(r01)*(x1694)))+(((r11)*(sj0)*(x1694)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1695)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1695)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x1696)))+(((IkReal(-1.00000000000000))*(r21)*(x1694)))+(((cj5)*(r22)))))), ((((cj0)*(r00)*(x1696)))+(((r10)*(sj0)*(x1696)))+(((cj0)*(r01)*(x1694)))+(((r11)*(sj0)*(x1694)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1695)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1695))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x1697=IKsin(j3); +IkReal x1698=((sj5)*(sj6)); +IkReal x1699=((cj0)*(cj5)); +IkReal x1700=((IkReal(1.00000000000000))*(cj0)); +IkReal x1701=((IkReal(1.00000000000000))*(sj0)); +IkReal x1702=((cj6)*(r01)*(sj5)); +IkReal x1703=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj2)*(x1697)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x1698)))); +evalcond[1]=((((r12)*(x1699)))+(((IkReal(-1.00000000000000))*(x1700)*(x1703)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x1701)))+(((sj0)*(x1702)))+(((r00)*(sj0)*(x1698)))+(((IkReal(-1.00000000000000))*(sj2)*(x1697)))+(((IkReal(-1.00000000000000))*(r10)*(x1698)*(x1700)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x1698)*(x1700)))+(((r02)*(x1699)))+(((IkReal(-1.00000000000000))*(x1700)*(x1702)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(x1698)*(x1701)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x1701)*(x1703)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst54; +IkReal x1704=(r21)*(r21); +IkReal x1705=(cj5)*(cj5); +IkReal x1706=(sj6)*(sj6); +IkReal x1707=(cj6)*(cj6); +IkReal x1708=(r20)*(r20); +IkReal x1709=((cj6)*(r21)); +IkReal x1710=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1711=((cj5)*(r22)*(sj5)); +IkReal x1712=((IkReal(1.00000000000000))*(x1706)); +IkReal x1713=((IkReal(1.00000000000000))*(x1707)); +gconst54=IKsign(((((IkReal(-1.00000000000000))*(x1708)*(x1713)))+(((IkReal(-2.00000000000000))*(x1709)*(x1711)))+(((x1709)*(x1710)))+(((IkReal(-1.00000000000000))*(x1704)*(x1712)))+(((IkReal(-1.00000000000000))*(x1704)*(x1705)*(x1713)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x1705)*(x1709)*(x1710)))+(((IkReal(-1.00000000000000))*(x1710)*(x1711)))+(((IkReal(-1.00000000000000))*(x1705)*(x1708)*(x1712))))); +IkReal x1714=(r21)*(r21); +IkReal x1715=(cj5)*(cj5); +IkReal x1716=(sj6)*(sj6); +IkReal x1717=(cj6)*(cj6); +IkReal x1718=(r20)*(r20); +IkReal x1719=((cj6)*(r21)); +IkReal x1720=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1721=((cj5)*(r22)*(sj5)); +IkReal x1722=((IkReal(1.00000000000000))*(x1716)); +IkReal x1723=((IkReal(1.00000000000000))*(x1717)); +dummyeval[0]=((((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x1714)*(x1722)))+(((IkReal(-1.00000000000000))*(x1715)*(x1719)*(x1720)))+(((x1719)*(x1720)))+(((IkReal(-1.00000000000000))*(x1720)*(x1721)))+(((IkReal(-2.00000000000000))*(x1719)*(x1721)))+(((IkReal(-1.00000000000000))*(x1718)*(x1723)))+(((IkReal(-1.00000000000000))*(x1715)*(x1718)*(x1722)))+(((IkReal(-1.00000000000000))*(x1714)*(x1715)*(x1723)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst55; +IkReal x1724=(cj6)*(cj6); +IkReal x1725=(sj6)*(sj6); +IkReal x1726=((IkReal(1.00000000000000))*(r01)); +IkReal x1727=((sj0)*(sj5)); +IkReal x1728=((cj6)*(r22)); +IkReal x1729=((r21)*(sj6)); +IkReal x1730=((r00)*(r21)); +IkReal x1731=((cj0)*(sj5)); +IkReal x1732=((cj6)*(r20)); +IkReal x1733=((r22)*(sj6)); +IkReal x1734=((cj0)*(cj5)); +IkReal x1735=((IkReal(1.00000000000000))*(r10)); +IkReal x1736=((cj5)*(sj0)); +IkReal x1737=((r20)*(x1725)); +IkReal x1738=((x1724)*(x1736)); +gconst55=IKsign(((((x1725)*(x1730)*(x1736)))+(((r11)*(r20)*(x1724)*(x1734)))+(((IkReal(-1.00000000000000))*(r02)*(x1727)*(x1732)))+(((IkReal(-1.00000000000000))*(r20)*(x1726)*(x1738)))+(((r02)*(x1727)*(x1729)))+(((IkReal(-1.00000000000000))*(x1728)*(x1731)*(x1735)))+(((IkReal(-1.00000000000000))*(r12)*(x1729)*(x1731)))+(((IkReal(-1.00000000000000))*(x1726)*(x1736)*(x1737)))+(((x1730)*(x1738)))+(((r11)*(x1734)*(x1737)))+(((IkReal(-1.00000000000000))*(r21)*(x1725)*(x1734)*(x1735)))+(((IkReal(-1.00000000000000))*(r21)*(x1724)*(x1734)*(x1735)))+(((r00)*(x1727)*(x1728)))+(((r11)*(x1731)*(x1733)))+(((IkReal(-1.00000000000000))*(x1726)*(x1727)*(x1733)))+(((r12)*(x1731)*(x1732))))); +IkReal x1739=(cj6)*(cj6); +IkReal x1740=(sj6)*(sj6); +IkReal x1741=((IkReal(1.00000000000000))*(r01)); +IkReal x1742=((sj0)*(sj5)); +IkReal x1743=((cj6)*(r22)); +IkReal x1744=((r21)*(sj6)); +IkReal x1745=((r00)*(r21)); +IkReal x1746=((cj0)*(sj5)); +IkReal x1747=((cj6)*(r20)); +IkReal x1748=((r22)*(sj6)); +IkReal x1749=((cj0)*(cj5)); +IkReal x1750=((IkReal(1.00000000000000))*(r10)); +IkReal x1751=((cj5)*(sj0)); +IkReal x1752=((r20)*(x1740)); +IkReal x1753=((x1739)*(x1751)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r20)*(x1741)*(x1753)))+(((IkReal(-1.00000000000000))*(r21)*(x1740)*(x1749)*(x1750)))+(((IkReal(-1.00000000000000))*(r21)*(x1739)*(x1749)*(x1750)))+(((r00)*(x1742)*(x1743)))+(((x1740)*(x1745)*(x1751)))+(((r11)*(x1749)*(x1752)))+(((r12)*(x1746)*(x1747)))+(((x1745)*(x1753)))+(((r02)*(x1742)*(x1744)))+(((IkReal(-1.00000000000000))*(r12)*(x1744)*(x1746)))+(((IkReal(-1.00000000000000))*(r02)*(x1742)*(x1747)))+(((IkReal(-1.00000000000000))*(x1741)*(x1751)*(x1752)))+(((IkReal(-1.00000000000000))*(x1741)*(x1742)*(x1748)))+(((IkReal(-1.00000000000000))*(x1743)*(x1746)*(x1750)))+(((r11)*(r20)*(x1739)*(x1749)))+(((r11)*(x1746)*(x1748)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1754=((cj5)*(sj6)); +IkReal x1755=((cj2)*(r20)); +IkReal x1756=((IkReal(1.00000000000000))*(sj6)); +IkReal x1757=((cj2)*(r21)); +IkReal x1758=((cj0)*(sj2)); +IkReal x1759=((cj5)*(cj6)); +IkReal x1760=((IkReal(1.00000000000000))*(sj0)*(sj2)); +IkReal x1761=((r10)*(x1758)); +if( IKabs(((gconst55)*(((((IkReal(-1.00000000000000))*(r11)*(x1756)*(x1758)))+(((r01)*(sj0)*(sj2)*(sj6)))+(((cj6)*(x1761)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x1760)))+(((IkReal(-1.00000000000000))*(x1756)*(x1757)))+(((cj6)*(x1755))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst55)*(((((cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x1754)*(x1760)))+(((IkReal(-1.00000000000000))*(r01)*(x1759)*(x1760)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x1760)))+(((x1754)*(x1755)))+(((x1754)*(x1761)))+(((r12)*(sj5)*(x1758)))+(((x1757)*(x1759)))+(((r11)*(x1758)*(x1759))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst55)*(((((IkReal(-1.00000000000000))*(r11)*(x1756)*(x1758)))+(((r01)*(sj0)*(sj2)*(sj6)))+(((cj6)*(x1761)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x1760)))+(((IkReal(-1.00000000000000))*(x1756)*(x1757)))+(((cj6)*(x1755)))))), ((gconst55)*(((((cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x1754)*(x1760)))+(((IkReal(-1.00000000000000))*(r01)*(x1759)*(x1760)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x1760)))+(((x1754)*(x1755)))+(((x1754)*(x1761)))+(((r12)*(sj5)*(x1758)))+(((x1757)*(x1759)))+(((r11)*(x1758)*(x1759))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1762=IKsin(j4); +IkReal x1763=IKcos(j4); +IkReal x1764=((r00)*(sj6)); +IkReal x1765=((IkReal(1.00000000000000))*(r12)); +IkReal x1766=((IkReal(1.00000000000000))*(cj6)); +IkReal x1767=((cj6)*(r01)); +IkReal x1768=((cj0)*(r11)); +IkReal x1769=((r01)*(sj6)); +IkReal x1770=((IkReal(1.00000000000000))*(cj5)); +IkReal x1771=((cj5)*(r11)); +IkReal x1772=((cj0)*(r01)); +IkReal x1773=((r02)*(sj5)); +IkReal x1774=((cj6)*(r10)); +IkReal x1775=((sj5)*(x1762)); +IkReal x1776=((cj0)*(x1763)); +IkReal x1777=((sj6)*(x1762)); +IkReal x1778=((sj0)*(x1763)); +IkReal x1779=((r10)*(x1762)); +IkReal x1780=((IkReal(1.00000000000000))*(r10)*(sj6)); +IkReal x1781=((cj5)*(x1762)); +IkReal x1782=((IkReal(1.00000000000000))*(r11)*(sj6)); +IkReal x1783=((r00)*(x1762)); +IkReal x1784=((r20)*(x1763)); +IkReal x1785=((r21)*(x1763)); +IkReal x1786=((sj0)*(x1781)); +evalcond[0]=((((sj6)*(x1785)))+(sj2)+(((cj5)*(r20)*(x1777)))+(((r22)*(x1775)))+(((IkReal(-1.00000000000000))*(x1766)*(x1784)))+(((cj6)*(r21)*(x1781)))); +evalcond[1]=((((cj5)*(cj6)*(x1785)))+(((cj6)*(r20)*(x1762)))+(((r22)*(sj5)*(x1763)))+(((cj5)*(sj6)*(x1784)))+(((IkReal(-1.00000000000000))*(r21)*(x1777)))+(((IkReal(-1.00000000000000))*(cj2)*(cj3)))); +evalcond[2]=((((x1769)*(x1778)))+(((IkReal(-1.00000000000000))*(x1766)*(x1768)*(x1781)))+(((IkReal(-1.00000000000000))*(sj6)*(x1763)*(x1768)))+(((x1767)*(x1786)))+(cj2)+(((x1774)*(x1776)))+(((x1764)*(x1786)))+(((sj0)*(x1762)*(x1773)))+(((IkReal(-1.00000000000000))*(r00)*(x1766)*(x1778)))+(((IkReal(-1.00000000000000))*(cj0)*(x1765)*(x1775)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x1770)*(x1777)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj6)*(x1770)*(x1776)))+(((x1768)*(x1777)))+(((IkReal(-1.00000000000000))*(cj5)*(x1763)*(x1766)*(x1768)))+(((cj5)*(x1764)*(x1778)))+(((cj6)*(sj0)*(x1783)))+(((cj5)*(x1767)*(x1778)))+(((IkReal(-1.00000000000000))*(sj0)*(x1762)*(x1769)))+(((x1773)*(x1778)))+(((IkReal(-1.00000000000000))*(cj0)*(x1766)*(x1779)))+(((IkReal(-1.00000000000000))*(sj5)*(x1765)*(x1776)))+(((cj3)*(sj2)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x1778)*(x1782)))+(((cj6)*(r00)*(x1776)))+(((IkReal(-1.00000000000000))*(cj0)*(x1762)*(x1764)*(x1770)))+(((IkReal(-1.00000000000000))*(x1769)*(x1776)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1770)*(x1777)))+(((IkReal(-1.00000000000000))*(sj0)*(x1765)*(x1775)))+(((IkReal(-1.00000000000000))*(cj0)*(x1762)*(x1773)))+(((x1774)*(x1778)))+(((IkReal(-1.00000000000000))*(x1766)*(x1772)*(x1781)))+(((IkReal(-1.00000000000000))*(sj0)*(x1762)*(x1766)*(x1771)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1773)*(x1776)))+(((IkReal(-1.00000000000000))*(sj5)*(x1765)*(x1778)))+(sj3)+(((IkReal(-1.00000000000000))*(cj0)*(x1766)*(x1783)))+(((r11)*(sj0)*(x1777)))+(((IkReal(-1.00000000000000))*(x1766)*(x1771)*(x1778)))+(((IkReal(-1.00000000000000))*(cj5)*(x1763)*(x1766)*(x1772)))+(((cj0)*(x1762)*(x1769)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x1770)*(x1778)))+(((IkReal(-1.00000000000000))*(x1764)*(x1770)*(x1776)))+(((IkReal(-1.00000000000000))*(sj0)*(x1766)*(x1779)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1787=((cj6)*(r20)); +IkReal x1788=((r22)*(sj5)); +IkReal x1789=((r21)*(sj2)); +IkReal x1790=((cj5)*(cj6)); +IkReal x1791=((cj5)*(r20)*(sj6)); +IkReal x1792=((IkReal(1.00000000000000))*(cj2)*(cj3)); +if( IKabs(((gconst54)*(((((IkReal(-1.00000000000000))*(x1787)*(x1792)))+(((cj2)*(cj3)*(r21)*(sj6)))+(((sj2)*(x1788)))+(((sj2)*(x1791)))+(((x1789)*(x1790))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst54)*(((((IkReal(-1.00000000000000))*(r21)*(x1790)*(x1792)))+(((IkReal(-1.00000000000000))*(sj2)*(x1787)))+(((IkReal(-1.00000000000000))*(x1788)*(x1792)))+(((sj6)*(x1789)))+(((IkReal(-1.00000000000000))*(x1791)*(x1792))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst54)*(((((IkReal(-1.00000000000000))*(x1787)*(x1792)))+(((cj2)*(cj3)*(r21)*(sj6)))+(((sj2)*(x1788)))+(((sj2)*(x1791)))+(((x1789)*(x1790)))))), ((gconst54)*(((((IkReal(-1.00000000000000))*(r21)*(x1790)*(x1792)))+(((IkReal(-1.00000000000000))*(sj2)*(x1787)))+(((IkReal(-1.00000000000000))*(x1788)*(x1792)))+(((sj6)*(x1789)))+(((IkReal(-1.00000000000000))*(x1791)*(x1792))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1793=IKsin(j4); +IkReal x1794=IKcos(j4); +IkReal x1795=((r00)*(sj6)); +IkReal x1796=((IkReal(1.00000000000000))*(r12)); +IkReal x1797=((IkReal(1.00000000000000))*(cj6)); +IkReal x1798=((cj6)*(r01)); +IkReal x1799=((cj0)*(r11)); +IkReal x1800=((r01)*(sj6)); +IkReal x1801=((IkReal(1.00000000000000))*(cj5)); +IkReal x1802=((cj5)*(r11)); +IkReal x1803=((cj0)*(r01)); +IkReal x1804=((r02)*(sj5)); +IkReal x1805=((cj6)*(r10)); +IkReal x1806=((sj5)*(x1793)); +IkReal x1807=((cj0)*(x1794)); +IkReal x1808=((sj6)*(x1793)); +IkReal x1809=((sj0)*(x1794)); +IkReal x1810=((r10)*(x1793)); +IkReal x1811=((IkReal(1.00000000000000))*(r10)*(sj6)); +IkReal x1812=((cj5)*(x1793)); +IkReal x1813=((IkReal(1.00000000000000))*(r11)*(sj6)); +IkReal x1814=((r00)*(x1793)); +IkReal x1815=((r20)*(x1794)); +IkReal x1816=((r21)*(x1794)); +IkReal x1817=((sj0)*(x1812)); +evalcond[0]=((((r22)*(x1806)))+(((sj6)*(x1816)))+(sj2)+(((cj6)*(r21)*(x1812)))+(((cj5)*(r20)*(x1808)))+(((IkReal(-1.00000000000000))*(x1797)*(x1815)))); +evalcond[1]=((((r22)*(sj5)*(x1794)))+(((cj6)*(r20)*(x1793)))+(((cj5)*(cj6)*(x1816)))+(((cj5)*(sj6)*(x1815)))+(((IkReal(-1.00000000000000))*(r21)*(x1808)))+(((IkReal(-1.00000000000000))*(cj2)*(cj3)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1797)*(x1799)*(x1812)))+(((sj0)*(x1793)*(x1804)))+(((x1800)*(x1809)))+(((IkReal(-1.00000000000000))*(cj0)*(x1796)*(x1806)))+(((x1795)*(x1817)))+(cj2)+(((x1805)*(x1807)))+(((x1798)*(x1817)))+(((IkReal(-1.00000000000000))*(sj6)*(x1794)*(x1799)))+(((IkReal(-1.00000000000000))*(r00)*(x1797)*(x1809)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x1801)*(x1808)))); +evalcond[3]=((((cj6)*(sj0)*(x1814)))+(((x1799)*(x1808)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x1801)*(x1807)))+(((IkReal(-1.00000000000000))*(sj0)*(x1793)*(x1800)))+(((x1804)*(x1809)))+(((cj3)*(sj2)))+(((cj5)*(x1798)*(x1809)))+(((cj5)*(x1795)*(x1809)))+(((IkReal(-1.00000000000000))*(cj0)*(x1797)*(x1810)))+(((IkReal(-1.00000000000000))*(sj5)*(x1796)*(x1807)))+(((IkReal(-1.00000000000000))*(cj5)*(x1794)*(x1797)*(x1799)))); +evalcond[4]=((((x1805)*(x1809)))+(((IkReal(-1.00000000000000))*(x1809)*(x1813)))+(((IkReal(-1.00000000000000))*(x1797)*(x1803)*(x1812)))+(((IkReal(-1.00000000000000))*(cj0)*(x1793)*(x1804)))+(((IkReal(-1.00000000000000))*(sj0)*(x1796)*(x1806)))+(((IkReal(-1.00000000000000))*(cj0)*(x1793)*(x1795)*(x1801)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1801)*(x1808)))+(((IkReal(-1.00000000000000))*(sj0)*(x1793)*(x1797)*(x1802)))+(((IkReal(-1.00000000000000))*(x1800)*(x1807)))+(((cj6)*(r00)*(x1807)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1804)*(x1807)))+(((IkReal(-1.00000000000000))*(x1797)*(x1802)*(x1809)))+(((cj0)*(x1793)*(x1800)))+(sj3)+(((IkReal(-1.00000000000000))*(cj5)*(x1794)*(x1797)*(x1803)))+(((IkReal(-1.00000000000000))*(sj0)*(x1797)*(x1810)))+(((IkReal(-1.00000000000000))*(cj0)*(x1797)*(x1814)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x1801)*(x1809)))+(((IkReal(-1.00000000000000))*(sj5)*(x1796)*(x1809)))+(((r11)*(sj0)*(x1808)))+(((IkReal(-1.00000000000000))*(x1795)*(x1801)*(x1807)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1818=((cj5)*(sj6)); +IkReal x1819=((cj2)*(r20)); +IkReal x1820=((IkReal(1.00000000000000))*(sj6)); +IkReal x1821=((cj2)*(r21)); +IkReal x1822=((cj5)*(cj6)); +IkReal x1823=((IkReal(1.00000000000000))*(sj0)*(sj2)); +IkReal x1824=((cj0)*(r10)*(sj2)); +IkReal x1825=((cj0)*(r11)*(sj2)); +if( IKabs(((gconst52)*(((((IkReal(-1.00000000000000))*(x1820)*(x1821)))+(((r01)*(sj0)*(sj2)*(sj6)))+(((IkReal(-1.00000000000000))*(x1820)*(x1825)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x1823)))+(((cj6)*(x1824)))+(((cj6)*(x1819))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst52)*(((((x1818)*(x1824)))+(((cj2)*(r22)*(sj5)))+(((cj0)*(r12)*(sj2)*(sj5)))+(((x1821)*(x1822)))+(((IkReal(-1.00000000000000))*(r01)*(x1822)*(x1823)))+(((x1818)*(x1819)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x1823)))+(((x1822)*(x1825)))+(((IkReal(-1.00000000000000))*(r00)*(x1818)*(x1823))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst52)*(((((IkReal(-1.00000000000000))*(x1820)*(x1821)))+(((r01)*(sj0)*(sj2)*(sj6)))+(((IkReal(-1.00000000000000))*(x1820)*(x1825)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x1823)))+(((cj6)*(x1824)))+(((cj6)*(x1819)))))), ((gconst52)*(((((x1818)*(x1824)))+(((cj2)*(r22)*(sj5)))+(((cj0)*(r12)*(sj2)*(sj5)))+(((x1821)*(x1822)))+(((IkReal(-1.00000000000000))*(r01)*(x1822)*(x1823)))+(((x1818)*(x1819)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x1823)))+(((x1822)*(x1825)))+(((IkReal(-1.00000000000000))*(r00)*(x1818)*(x1823))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x1826=IKsin(j4); +IkReal x1827=IKcos(j4); +IkReal x1828=((r00)*(sj6)); +IkReal x1829=((cj6)*(r01)); +IkReal x1830=((IkReal(1.00000000000000))*(cj0)); +IkReal x1831=((IkReal(1.00000000000000))*(sj0)); +IkReal x1832=((r10)*(sj6)); +IkReal x1833=((sj5)*(x1826)); +IkReal x1834=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x1835=((cj5)*(x1826)); +IkReal x1836=((cj6)*(x1827)); +IkReal x1837=((sj0)*(x1835)); +IkReal x1838=((r01)*(sj6)*(x1827)); +IkReal x1839=((r11)*(sj6)*(x1827)); +evalcond[0]=((sj2)+(((r22)*(x1833)))+(((r20)*(sj6)*(x1835)))+(((r21)*(sj6)*(x1827)))+(((IkReal(-1.00000000000000))*(r20)*(x1836)))+(((cj6)*(r21)*(x1835)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1830)*(x1839)))+(((cj0)*(r10)*(x1836)))+(((r02)*(sj0)*(x1833)))+(((IkReal(-1.00000000000000))*(r12)*(x1830)*(x1833)))+(cj2)+(((IkReal(-1.00000000000000))*(x1830)*(x1832)*(x1835)))+(((sj0)*(x1838)))+(((x1828)*(x1837)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1830)*(x1835)))+(((IkReal(-1.00000000000000))*(r00)*(x1831)*(x1836)))+(((x1829)*(x1837)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1831)*(x1839)))+(((IkReal(-1.00000000000000))*(r02)*(x1830)*(x1833)))+(((IkReal(-1.00000000000000))*(x1829)*(x1830)*(x1835)))+(((r10)*(sj0)*(x1836)))+(((IkReal(-1.00000000000000))*(r12)*(x1831)*(x1833)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1831)*(x1835)))+(((IkReal(-1.00000000000000))*(x1830)*(x1838)))+(((IkReal(-1.00000000000000))*(x1831)*(x1832)*(x1835)))+(((IkReal(-1.00000000000000))*(x1828)*(x1830)*(x1835)))+(((cj0)*(r00)*(x1836)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst56; +gconst56=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x1840=((cj5)*(sj4)); +IkReal x1841=((IkReal(1.00000000000000))*(sj6)); +IkReal x1842=((r10)*(sj0)); +IkReal x1843=((sj4)*(sj5)); +IkReal x1844=((cj5)*(cj6)); +IkReal x1845=((r01)*(sj0)); +IkReal x1846=((IkReal(1.00000000000000))*(r02)); +IkReal x1847=((IkReal(0.374290000000000))*(cj0)); +IkReal x1848=((cj5)*(r12)); +IkReal x1849=((cj6)*(sj5)); +IkReal x1850=((cj0)*(r11)); +IkReal x1851=((cj5)*(sj0)); +IkReal x1852=((r20)*(sj6)); +IkReal x1853=((IkReal(1.00000000000000))*(sj0)); +IkReal x1854=((cj4)*(cj5)); +IkReal x1855=((IkReal(1.00000000000000))*(cj6)); +IkReal x1856=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1857=((sj5)*(sj6)); +IkReal x1858=((cj0)*(r10)); +IkReal x1859=((cj4)*(cj6)); +IkReal x1860=((cj0)*(r01)); +IkReal x1861=((IkReal(1.00000000000000))*(cj4)); +IkReal x1862=((cj0)*(r00)); +IkReal x1863=((IkReal(0.374290000000000))*(sj0)); +IkReal x1864=((cj0)*(r12)); +IkReal x1865=((IkReal(0.374290000000000))*(sj5)); +IkReal x1866=((cj4)*(sj6)); +IkReal x1867=((IkReal(1.00000000000000))*(cj0)); +IkReal x1868=((r02)*(sj0)); +IkReal x1869=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1870=((r11)*(sj0)); +IkReal x1871=((r00)*(sj0)*(sj6)); +IkReal x1872=((r00)*(x1859)); +IkReal x1873=((sj6)*(x1869)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x1866)))+(((cj6)*(r21)*(x1840)))+(((x1840)*(x1852)))+(((r22)*(x1843)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x1855)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x1852)*(x1869)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x1844)))+(((x1852)*(x1865)))+(pz)+(((IkReal(0.374290000000000))*(r21)*(x1849)))+(((IkReal(-1.00000000000000))*(r22)*(x1856)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1846)*(x1851)))+(((x1845)*(x1849)))+(((cj0)*(x1848)))+(((IkReal(-1.00000000000000))*(x1849)*(x1850)))+(((r00)*(sj0)*(x1857)))+(((IkReal(-1.00000000000000))*(sj5)*(x1841)*(x1858)))); +evalcond[4]=((IkReal(1.00000000000000))+(((x1845)*(x1866)))+(((IkReal(-1.00000000000000))*(x1853)*(x1872)))+(((IkReal(-1.00000000000000))*(x1840)*(x1850)*(x1855)))+(((x1840)*(x1871)))+(((x1858)*(x1859)))+(((IkReal(-1.00000000000000))*(x1840)*(x1841)*(x1858)))+(((IkReal(-1.00000000000000))*(cj4)*(x1841)*(x1850)))+(((x1843)*(x1868)))+(((cj6)*(x1840)*(x1845)))+(((IkReal(-1.00000000000000))*(x1843)*(x1864)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x1841)*(x1845)))+(((r00)*(x1851)*(x1866)))+(((IkReal(-1.00000000000000))*(sj4)*(x1855)*(x1858)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(sj5)*(x1868)))+(((IkReal(-1.00000000000000))*(x1841)*(x1854)*(x1858)))+(((IkReal(-1.00000000000000))*(sj5)*(x1861)*(x1864)))+(((cj4)*(x1844)*(x1845)))+(((sj4)*(sj6)*(x1850)))+(((IkReal(-1.00000000000000))*(x1844)*(x1850)*(x1861)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x1840)*(x1841)*(x1862)))+(((IkReal(-1.00000000000000))*(cj0)*(x1843)*(x1846)))+(((IkReal(-1.00000000000000))*(x1840)*(x1855)*(x1860)))+(((x1859)*(x1862)))+(((IkReal(-1.00000000000000))*(x1840)*(x1841)*(x1842)))+(((IkReal(-1.00000000000000))*(cj4)*(x1841)*(x1870)))+(((x1842)*(x1859)))+(((IkReal(-1.00000000000000))*(cj4)*(x1841)*(x1860)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1840)*(x1853)))+(((IkReal(-1.00000000000000))*(r12)*(x1843)*(x1853)))); +evalcond[7]=((((IkReal(0.0100000000000000))*(x1844)*(x1850)))+(((IkReal(-0.0100000000000000))*(x1844)*(x1845)))+(((IkReal(-0.374290000000000))*(r02)*(x1851)))+(((x1847)*(x1848)))+(((r00)*(x1857)*(x1863)))+(((IkReal(-1.00000000000000))*(r11)*(x1847)*(x1849)))+(((x1856)*(x1864)))+(((IkReal(0.374290000000000))*(x1845)*(x1849)))+(((IkReal(-1.00000000000000))*(py)*(x1867)))+(((IkReal(-1.00000000000000))*(r10)*(x1847)*(x1857)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x1851)))+(((IkReal(-1.00000000000000))*(x1856)*(x1868)))+(((px)*(sj0)))+(((x1858)*(x1873)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(py)*(x1853)))+(((r12)*(sj0)*(x1856)))+(((cj0)*(r02)*(x1856)))+(((IkReal(0.0100000000000000))*(x1844)*(x1870)))+(((IkReal(-1.00000000000000))*(px)*(x1867)))+(((IkReal(0.0100000000000000))*(x1844)*(x1860)))+(((x1862)*(x1873)))+(((IkReal(-1.00000000000000))*(r01)*(x1847)*(x1849)))+(((cj5)*(r02)*(x1847)))+(((IkReal(-0.374290000000000))*(x1842)*(x1857)))+(((IkReal(-1.00000000000000))*(r00)*(x1847)*(x1857)))+(((x1842)*(x1873)))+(((x1848)*(x1863)))+(((IkReal(-1.00000000000000))*(r11)*(x1849)*(x1863)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1874=((IkReal(1.00000000000000))*(r21)); +IkReal x1875=((cj4)*(cj5)); +IkReal x1876=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1874)))+(((IkReal(-1.00000000000000))*(sj5)*(x1876)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r20)*(sj4)))+(((cj6)*(r21)*(x1875)))+(((cj4)*(r22)*(sj5)))+(((x1875)*(x1876)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1874))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1874)))+(((IkReal(-1.00000000000000))*(sj5)*(x1876)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r20)*(sj4)))+(((cj6)*(r21)*(x1875)))+(((cj4)*(r22)*(sj5)))+(((x1875)*(x1876)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1874)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1874)))+(((IkReal(-1.00000000000000))*(sj5)*(x1876)))+(((cj5)*(r22)))), ((((cj6)*(r20)*(sj4)))+(((cj6)*(r21)*(x1875)))+(((cj4)*(r22)*(sj5)))+(((x1875)*(x1876)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1874))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1877=IKcos(j3); +IkReal x1878=IKsin(j3); +IkReal x1879=((IkReal(1.00000000000000))*(cj4)); +IkReal x1880=((sj0)*(sj5)); +IkReal x1881=((cj0)*(cj5)); +IkReal x1882=((cj6)*(r01)); +IkReal x1883=((r00)*(sj6)); +IkReal x1884=((cj6)*(r11)); +IkReal x1885=((cj5)*(sj0)); +IkReal x1886=((cj6)*(sj4)); +IkReal x1887=((sj4)*(sj6)); +IkReal x1888=((cj4)*(cj5)); +IkReal x1889=((cj6)*(r21)); +IkReal x1890=((r20)*(sj6)); +IkReal x1891=((r10)*(sj6)); +IkReal x1892=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x1878)+(((sj5)*(x1889)))+(((sj5)*(x1890)))); +evalcond[1]=((((x1888)*(x1889)))+(((x1888)*(x1890)))+(((IkReal(-1.00000000000000))*(r21)*(x1887)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x1886)))+(((IkReal(-1.00000000000000))*(x1877)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1880)*(x1891)))+(((r12)*(x1885)))+(((r02)*(x1881)))+(((IkReal(-1.00000000000000))*(x1883)*(x1892)))+(x1877)+(((IkReal(-1.00000000000000))*(x1880)*(x1884)))+(((IkReal(-1.00000000000000))*(x1882)*(x1892)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1886)))+(((r11)*(sj0)*(x1887)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1886)))+(((IkReal(-1.00000000000000))*(x1879)*(x1881)*(x1882)))+(((IkReal(-1.00000000000000))*(x1879)*(x1881)*(x1883)))+(((IkReal(-1.00000000000000))*(r12)*(x1879)*(x1880)))+(((IkReal(-1.00000000000000))*(x1879)*(x1885)*(x1891)))+(x1878)+(((cj0)*(r01)*(x1887)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x1879)))+(((IkReal(-1.00000000000000))*(x1879)*(x1884)*(x1885)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1893=((cj5)*(sj4)); +IkReal x1894=((IkReal(1.00000000000000))*(sj6)); +IkReal x1895=((r10)*(sj0)); +IkReal x1896=((sj4)*(sj5)); +IkReal x1897=((cj5)*(cj6)); +IkReal x1898=((r01)*(sj0)); +IkReal x1899=((IkReal(1.00000000000000))*(r02)); +IkReal x1900=((IkReal(0.374290000000000))*(cj0)); +IkReal x1901=((cj5)*(r12)); +IkReal x1902=((cj6)*(sj5)); +IkReal x1903=((cj0)*(r11)); +IkReal x1904=((cj5)*(sj0)); +IkReal x1905=((r20)*(sj6)); +IkReal x1906=((IkReal(1.00000000000000))*(sj0)); +IkReal x1907=((cj4)*(cj5)); +IkReal x1908=((IkReal(1.00000000000000))*(cj6)); +IkReal x1909=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1910=((sj5)*(sj6)); +IkReal x1911=((cj0)*(r10)); +IkReal x1912=((cj4)*(cj6)); +IkReal x1913=((cj0)*(r01)); +IkReal x1914=((IkReal(1.00000000000000))*(cj4)); +IkReal x1915=((cj0)*(r00)); +IkReal x1916=((IkReal(0.374290000000000))*(sj0)); +IkReal x1917=((cj0)*(r12)); +IkReal x1918=((IkReal(0.374290000000000))*(sj5)); +IkReal x1919=((cj4)*(sj6)); +IkReal x1920=((IkReal(1.00000000000000))*(cj0)); +IkReal x1921=((r02)*(sj0)); +IkReal x1922=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1923=((r11)*(sj0)); +IkReal x1924=((r00)*(sj0)*(sj6)); +IkReal x1925=((r00)*(x1912)); +IkReal x1926=((sj6)*(x1922)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj4)*(r20)*(x1908)))+(((r21)*(x1919)))+(((r22)*(x1896)))+(((x1893)*(x1905)))+(((cj6)*(r21)*(x1893)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x1902)))+(((IkReal(-1.00000000000000))*(r22)*(x1909)))+(((IkReal(-0.0100000000000000))*(r21)*(x1897)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x1905)*(x1918)))+(((IkReal(-1.00000000000000))*(x1905)*(x1922)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x1894)*(x1911)))+(((r00)*(sj0)*(x1910)))+(((cj0)*(x1901)))+(((x1898)*(x1902)))+(((IkReal(-1.00000000000000))*(x1899)*(x1904)))+(((IkReal(-1.00000000000000))*(x1902)*(x1903)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((cj6)*(x1893)*(x1898)))+(((IkReal(-1.00000000000000))*(x1893)*(x1894)*(x1911)))+(((IkReal(-1.00000000000000))*(x1896)*(x1917)))+(((x1893)*(x1924)))+(((IkReal(-1.00000000000000))*(cj4)*(x1894)*(x1903)))+(((x1911)*(x1912)))+(((IkReal(-1.00000000000000))*(x1906)*(x1925)))+(((x1898)*(x1919)))+(((IkReal(-1.00000000000000))*(x1893)*(x1903)*(x1908)))+(((x1896)*(x1921)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x1894)*(x1898)))+(((cj4)*(sj5)*(x1921)))+(((cj4)*(x1897)*(x1898)))+(((r00)*(x1904)*(x1919)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((sj4)*(sj6)*(x1903)))+(((IkReal(-1.00000000000000))*(sj5)*(x1914)*(x1917)))+(((IkReal(-1.00000000000000))*(x1897)*(x1903)*(x1914)))+(((IkReal(-1.00000000000000))*(x1894)*(x1907)*(x1911)))+(((IkReal(-1.00000000000000))*(sj4)*(x1908)*(x1911)))); +evalcond[6]=((((x1912)*(x1915)))+(((IkReal(-1.00000000000000))*(x1893)*(x1894)*(x1915)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1893)*(x1906)))+(((IkReal(-1.00000000000000))*(cj0)*(x1896)*(x1899)))+(((IkReal(-1.00000000000000))*(cj4)*(x1894)*(x1923)))+(((IkReal(-1.00000000000000))*(x1893)*(x1894)*(x1895)))+(((IkReal(-1.00000000000000))*(cj4)*(x1894)*(x1913)))+(((IkReal(-1.00000000000000))*(r12)*(x1896)*(x1906)))+(((IkReal(-1.00000000000000))*(x1893)*(x1908)*(x1913)))+(((x1895)*(x1912)))); +evalcond[7]=((((IkReal(0.0100000000000000))*(x1897)*(x1903)))+(((x1900)*(x1901)))+(((IkReal(-0.374290000000000))*(r02)*(x1904)))+(((IkReal(-0.0100000000000000))*(x1897)*(x1898)))+(((IkReal(-1.00000000000000))*(x1909)*(x1921)))+(((IkReal(-1.00000000000000))*(py)*(x1920)))+(((x1911)*(x1926)))+(((r00)*(x1910)*(x1916)))+(((IkReal(-1.00000000000000))*(r11)*(x1900)*(x1902)))+(((x1909)*(x1917)))+(((IkReal(-1.00000000000000))*(r10)*(x1900)*(x1910)))+(((IkReal(0.374290000000000))*(x1898)*(x1902)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x1904)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((cj0)*(r02)*(x1909)))+(((IkReal(-1.00000000000000))*(py)*(x1906)))+(((IkReal(-1.00000000000000))*(r00)*(x1900)*(x1910)))+(((x1901)*(x1916)))+(((x1895)*(x1926)))+(((IkReal(-1.00000000000000))*(px)*(x1920)))+(((IkReal(-1.00000000000000))*(r11)*(x1902)*(x1916)))+(((r12)*(sj0)*(x1909)))+(((x1915)*(x1926)))+(((cj5)*(r02)*(x1900)))+(((IkReal(-1.00000000000000))*(r01)*(x1900)*(x1902)))+(((IkReal(-0.374290000000000))*(x1895)*(x1910)))+(((IkReal(0.0100000000000000))*(x1897)*(x1913)))+(((IkReal(0.0100000000000000))*(x1897)*(x1923)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1927=((IkReal(1.00000000000000))*(cj4)); +IkReal x1928=((cj6)*(r21)); +IkReal x1929=((r20)*(sj6)); +if( IKabs(((((sj5)*(x1929)))+(((sj5)*(x1928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1928)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1927)))+(((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1929)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x1929)))+(((sj5)*(x1928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1928)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1927)))+(((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1929)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x1929)))+(((sj5)*(x1928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1928)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1927)))+(((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1929)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1930=IKcos(j3); +IkReal x1931=IKsin(j3); +IkReal x1932=((IkReal(1.00000000000000))*(cj4)); +IkReal x1933=((sj0)*(sj5)); +IkReal x1934=((cj0)*(cj5)); +IkReal x1935=((cj6)*(r01)); +IkReal x1936=((r00)*(sj6)); +IkReal x1937=((cj6)*(r11)); +IkReal x1938=((cj5)*(sj0)); +IkReal x1939=((cj6)*(sj4)); +IkReal x1940=((sj4)*(sj6)); +IkReal x1941=((cj4)*(cj5)); +IkReal x1942=((cj6)*(r21)); +IkReal x1943=((r20)*(sj6)); +IkReal x1944=((r10)*(sj6)); +IkReal x1945=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x1943)))+(((IkReal(-1.00000000000000))*(x1931)))+(((sj5)*(x1942)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((x1930)+(((IkReal(-1.00000000000000))*(r21)*(x1940)))+(((x1941)*(x1943)))+(((r20)*(x1939)))+(((cj4)*(r22)*(sj5)))+(((x1941)*(x1942)))); +evalcond[2]=((x1930)+(((r02)*(x1934)))+(((IkReal(-1.00000000000000))*(x1936)*(x1945)))+(((r12)*(x1938)))+(((IkReal(-1.00000000000000))*(x1935)*(x1945)))+(((IkReal(-1.00000000000000))*(x1933)*(x1937)))+(((IkReal(-1.00000000000000))*(x1933)*(x1944)))); +evalcond[3]=((x1931)+(((IkReal(-1.00000000000000))*(r12)*(x1932)*(x1933)))+(((IkReal(-1.00000000000000))*(x1932)*(x1934)*(x1936)))+(((IkReal(-1.00000000000000))*(x1932)*(x1938)*(x1944)))+(((cj0)*(r01)*(x1940)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x1932)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1939)))+(((r11)*(sj0)*(x1940)))+(((IkReal(-1.00000000000000))*(x1932)*(x1934)*(x1935)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1939)))+(((IkReal(-1.00000000000000))*(x1932)*(x1937)*(x1938)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1946=((IkReal(1.00000000000000))*(cj0)); +IkReal x1947=((cj4)*(sj6)); +IkReal x1948=((sj0)*(sj4)); +IkReal x1949=((cj5)*(sj6)); +IkReal x1950=((sj4)*(sj5)); +IkReal x1951=((r12)*(sj5)); +IkReal x1952=((IkReal(0.374290000000000))*(cj5)); +IkReal x1953=((r02)*(sj0)); +IkReal x1954=((r20)*(sj4)); +IkReal x1955=((IkReal(1.00000000000000))*(sj0)); +IkReal x1956=((IkReal(1.00000000000000))*(cj5)); +IkReal x1957=((cj0)*(r10)); +IkReal x1958=((cj4)*(cj6)); +IkReal x1959=((r00)*(sj0)); +IkReal x1960=((cj6)*(r21)); +IkReal x1961=((IkReal(0.374290000000000))*(sj5)); +IkReal x1962=((cj0)*(r00)); +IkReal x1963=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1964=((cj0)*(r02)); +IkReal x1965=((cj5)*(sj4)); +IkReal x1966=((cj6)*(r01)); +IkReal x1967=((cj6)*(r11)); +IkReal x1968=((r01)*(sj0)); +IkReal x1969=((r10)*(sj0)); +IkReal x1970=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x1971=((sj6)*(x1961)); +IkReal x1972=((cj0)*(cj6)*(x1961)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x1956)))+(((sj5)*(x1960)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((r21)*(x1947)))+(((x1949)*(x1954)))+(((x1960)*(x1965)))+(((IkReal(-1.00000000000000))*(r20)*(x1958)))+(((r22)*(x1950)))); +evalcond[3]=((((r20)*(x1971)))+(((IkReal(-0.0100000000000000))*(r20)*(x1949)))+(((IkReal(-1.00000000000000))*(r22)*(x1963)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x1952)))+(((x1960)*(x1961)))+(((IkReal(-0.0100000000000000))*(cj5)*(x1960)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x1947)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x1958)))+(((cj6)*(x1954)))); +evalcond[5]=((((cj5)*(x1948)*(x1966)))+(((x1957)*(x1958)))+(((x1947)*(x1968)))+(((r00)*(x1948)*(x1949)))+(((IkReal(-1.00000000000000))*(r11)*(x1946)*(x1947)))+(((IkReal(-1.00000000000000))*(x1946)*(x1965)*(x1967)))+(((r02)*(sj5)*(x1948)))+(((IkReal(-1.00000000000000))*(r12)*(x1946)*(x1950)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x1946)*(x1949)))+(((IkReal(-1.00000000000000))*(r00)*(x1955)*(x1958)))); +evalcond[6]=((((x1958)*(x1969)))+(((IkReal(-1.00000000000000))*(x1946)*(x1965)*(x1966)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x1946)*(x1949)))+(((IkReal(-1.00000000000000))*(r11)*(x1947)*(x1955)))+(((IkReal(-1.00000000000000))*(r02)*(x1946)*(x1950)))+(((IkReal(-1.00000000000000))*(r10)*(x1948)*(x1949)))+(((IkReal(-1.00000000000000))*(r01)*(x1946)*(x1947)))+(((IkReal(-1.00000000000000))*(x1948)*(x1951)))+(((IkReal(-1.00000000000000))*(x1948)*(x1956)*(x1967)))+(((x1958)*(x1962)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x1961)*(x1967)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x1966)))+(((IkReal(-0.0100000000000000))*(x1949)*(x1959)))+(((cj0)*(r12)*(x1952)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1967)))+(((IkReal(-1.00000000000000))*(x1953)*(x1963)))+(((IkReal(-1.00000000000000))*(x1957)*(x1971)))+(((IkReal(-1.00000000000000))*(x1952)*(x1953)))+(((IkReal(0.0100000000000000))*(x1949)*(x1957)))+(((IkReal(0.0100000000000000))*(cj0)*(x1951)))+(((px)*(sj0)))+(((x1959)*(x1971)))+(((IkReal(-1.00000000000000))*(py)*(x1946)))+(((sj0)*(x1961)*(x1966)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((r12)*(sj0)*(x1952)))+(((x1963)*(x1964)))+(((IkReal(0.0100000000000000))*(sj0)*(x1951)))+(((IkReal(-1.00000000000000))*(px)*(x1946)))+(((IkReal(-1.00000000000000))*(sj0)*(x1961)*(x1967)))+(((IkReal(0.0100000000000000))*(x1949)*(x1969)))+(((IkReal(-1.00000000000000))*(cj0)*(x1961)*(x1966)))+(((IkReal(-1.00000000000000))*(x1969)*(x1971)))+(((IkReal(-1.00000000000000))*(py)*(x1955)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1966)))+(((IkReal(-1.00000000000000))*(x1962)*(x1971)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x1967)))+(((IkReal(0.0100000000000000))*(x1949)*(x1962)))+(((x1952)*(x1964)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1973=((sj0)*(sj5)); +IkReal x1974=((r00)*(sj6)); +IkReal x1975=((IkReal(1.00000000000000))*(cj5)); +IkReal x1976=((cj6)*(r11)); +IkReal x1977=((cj6)*(r01)); +IkReal x1978=((r10)*(sj6)); +IkReal x1979=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x1978)*(x1979)))+(((IkReal(-1.00000000000000))*(x1976)*(x1979)))+(((x1973)*(x1974)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1975)))+(((cj0)*(cj5)*(r12)))+(((x1973)*(x1977))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1975)))+(((x1974)*(x1979)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1975)))+(((x1973)*(x1976)))+(((x1973)*(x1978)))+(((x1977)*(x1979))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x1978)*(x1979)))+(((IkReal(-1.00000000000000))*(x1976)*(x1979)))+(((x1973)*(x1974)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1975)))+(((cj0)*(cj5)*(r12)))+(((x1973)*(x1977)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1975)))+(((x1974)*(x1979)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1975)))+(((x1973)*(x1976)))+(((x1973)*(x1978)))+(((x1977)*(x1979)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x1978)*(x1979)))+(((IkReal(-1.00000000000000))*(x1976)*(x1979)))+(((x1973)*(x1974)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1975)))+(((cj0)*(cj5)*(r12)))+(((x1973)*(x1977)))), ((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1975)))+(((x1974)*(x1979)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1975)))+(((x1973)*(x1976)))+(((x1973)*(x1978)))+(((x1977)*(x1979))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1980=IKcos(j3); +IkReal x1981=IKsin(j3); +IkReal x1982=((sj0)*(sj5)); +IkReal x1983=((r00)*(sj6)); +IkReal x1984=((cj6)*(sj0)); +IkReal x1985=((IkReal(1.00000000000000))*(cj4)); +IkReal x1986=((r00)*(sj4)); +IkReal x1987=((cj0)*(cj5)); +IkReal x1988=((cj5)*(sj0)); +IkReal x1989=((cj6)*(r11)); +IkReal x1990=((r10)*(sj6)); +IkReal x1991=((cj0)*(sj5)); +IkReal x1992=((r10)*(sj4)); +IkReal x1993=((cj4)*(cj5)*(r01)); +IkReal x1994=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x1995=((cj0)*(sj4)*(sj6)); +IkReal x1996=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x1988)))+(((x1982)*(x1983)))+(((cj6)*(r01)*(x1982)))+(((IkReal(-1.00000000000000))*(x1989)*(x1991)))+(((IkReal(-1.00000000000000))*(x1981)))+(((IkReal(-1.00000000000000))*(x1990)*(x1991)))+(((r12)*(x1987)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x1991)))+(x1980)+(((r12)*(x1988)))+(((IkReal(-1.00000000000000))*(x1982)*(x1989)))+(((IkReal(-1.00000000000000))*(x1983)*(x1991)))+(((r02)*(x1987)))+(((IkReal(-1.00000000000000))*(x1982)*(x1990)))); +evalcond[2]=((((cj4)*(x1983)*(x1988)))+(x1980)+(((r11)*(x1995)))+(((IkReal(-1.00000000000000))*(x1992)*(x1994)))+(((cj4)*(r02)*(x1982)))+(((x1984)*(x1993)))+(((IkReal(-1.00000000000000))*(r12)*(x1985)*(x1991)))+(((IkReal(-1.00000000000000))*(x1985)*(x1987)*(x1990)))+(((IkReal(-1.00000000000000))*(r01)*(x1996)))+(((IkReal(-1.00000000000000))*(x1985)*(x1987)*(x1989)))+(((x1984)*(x1986)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1984)*(x1992)))+(x1981)+(((IkReal(-1.00000000000000))*(r02)*(x1985)*(x1991)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x1985)*(x1987)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x1984)*(x1985)))+(((IkReal(-1.00000000000000))*(x1986)*(x1994)))+(((IkReal(-1.00000000000000))*(x1983)*(x1985)*(x1987)))+(((r01)*(x1995)))+(((r11)*(x1996)))+(((IkReal(-1.00000000000000))*(x1985)*(x1988)*(x1990)))+(((IkReal(-1.00000000000000))*(r12)*(x1982)*(x1985)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1997=((IkReal(1.00000000000000))*(cj0)); +IkReal x1998=((cj4)*(sj6)); +IkReal x1999=((sj0)*(sj4)); +IkReal x2000=((cj5)*(sj6)); +IkReal x2001=((sj4)*(sj5)); +IkReal x2002=((r12)*(sj5)); +IkReal x2003=((IkReal(0.374290000000000))*(cj5)); +IkReal x2004=((r02)*(sj0)); +IkReal x2005=((r20)*(sj4)); +IkReal x2006=((IkReal(1.00000000000000))*(sj0)); +IkReal x2007=((IkReal(1.00000000000000))*(cj5)); +IkReal x2008=((cj0)*(r10)); +IkReal x2009=((cj4)*(cj6)); +IkReal x2010=((r00)*(sj0)); +IkReal x2011=((cj6)*(r21)); +IkReal x2012=((IkReal(0.374290000000000))*(sj5)); +IkReal x2013=((cj0)*(r00)); +IkReal x2014=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2015=((cj0)*(r02)); +IkReal x2016=((cj5)*(sj4)); +IkReal x2017=((cj6)*(r01)); +IkReal x2018=((cj6)*(r11)); +IkReal x2019=((r01)*(sj0)); +IkReal x2020=((r10)*(sj0)); +IkReal x2021=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x2022=((sj6)*(x2012)); +IkReal x2023=((cj0)*(cj6)*(x2012)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x2011)))+(((IkReal(-1.00000000000000))*(r22)*(x2007)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x2001)))+(((r21)*(x1998)))+(((x2000)*(x2005)))+(((IkReal(-1.00000000000000))*(r20)*(x2009)))+(((x2011)*(x2016)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x2011)))+(((x2011)*(x2012)))+(((IkReal(-1.00000000000000))*(r22)*(x2003)))+(((IkReal(-0.0100000000000000))*(r20)*(x2000)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x2014)))+(((r20)*(x2022)))); +evalcond[4]=((((cj5)*(r21)*(x2009)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x2005)))+(((cj5)*(r20)*(x1998)))); +evalcond[5]=((((r02)*(sj5)*(x1999)))+(((x1998)*(x2019)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x1997)*(x2000)))+(((x2008)*(x2009)))+(((r00)*(x1999)*(x2000)))+(((IkReal(-1.00000000000000))*(r00)*(x2006)*(x2009)))+(((IkReal(-1.00000000000000))*(x1997)*(x2016)*(x2018)))+(((IkReal(-1.00000000000000))*(r11)*(x1997)*(x1998)))+(((IkReal(-1.00000000000000))*(r12)*(x1997)*(x2001)))+(((cj5)*(x1999)*(x2017)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r01)*(x1997)*(x1998)))+(((IkReal(-1.00000000000000))*(x1999)*(x2002)))+(((x2009)*(x2020)))+(((x2009)*(x2013)))+(((IkReal(-1.00000000000000))*(r10)*(x1999)*(x2000)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x1997)*(x2000)))+(((IkReal(-1.00000000000000))*(r02)*(x1997)*(x2001)))+(((IkReal(-1.00000000000000))*(x1999)*(x2007)*(x2018)))+(((IkReal(-1.00000000000000))*(x1997)*(x2016)*(x2017)))+(((IkReal(-1.00000000000000))*(r11)*(x1998)*(x2006)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x2008)*(x2022)))+(((IkReal(-1.00000000000000))*(cj0)*(x2012)*(x2018)))+(((IkReal(-1.00000000000000))*(x2004)*(x2014)))+(((x2010)*(x2022)))+(((IkReal(-1.00000000000000))*(py)*(x1997)))+(((IkReal(0.0100000000000000))*(cj0)*(x2002)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x2017)))+(((IkReal(-0.0100000000000000))*(x2000)*(x2010)))+(((IkReal(-1.00000000000000))*(x2003)*(x2004)))+(((cj0)*(r12)*(x2003)))+(((px)*(sj0)))+(((sj0)*(x2012)*(x2017)))+(((IkReal(0.0100000000000000))*(x2000)*(x2008)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2018)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(sj0)*(x2002)))+(((r12)*(sj0)*(x2003)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x2018)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2017)))+(((x2014)*(x2015)))+(((IkReal(-1.00000000000000))*(sj0)*(x2012)*(x2018)))+(((IkReal(0.0100000000000000))*(x2000)*(x2013)))+(((IkReal(-1.00000000000000))*(cj0)*(x2012)*(x2017)))+(((IkReal(-1.00000000000000))*(x2020)*(x2022)))+(((IkReal(-1.00000000000000))*(py)*(x2006)))+(((IkReal(-1.00000000000000))*(x2013)*(x2022)))+(((IkReal(-1.00000000000000))*(px)*(x1997)))+(((IkReal(0.0100000000000000))*(x2000)*(x2020)))+(((x2003)*(x2015)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2024=((IkReal(1.00000000000000))*(cj5)); +IkReal x2025=((r10)*(sj5)*(sj6)); +IkReal x2026=((cj6)*(sj0)*(sj5)); +IkReal x2027=((r00)*(sj5)*(sj6)); +IkReal x2028=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r01)*(x2026)))+(((r11)*(x2028)))+(((cj0)*(x2025)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2024)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x2027))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(x2027)))+(((sj0)*(x2025)))+(((r01)*(x2028)))+(((r11)*(x2026)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2024)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2024))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x2026)))+(((r11)*(x2028)))+(((cj0)*(x2025)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2024)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x2027)))))+IKsqr(((((cj0)*(x2027)))+(((sj0)*(x2025)))+(((r01)*(x2028)))+(((r11)*(x2026)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2024)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2024)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r01)*(x2026)))+(((r11)*(x2028)))+(((cj0)*(x2025)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2024)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x2027)))), ((((cj0)*(x2027)))+(((sj0)*(x2025)))+(((r01)*(x2028)))+(((r11)*(x2026)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2024)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2024))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x2029=IKcos(j3); +IkReal x2030=IKsin(j3); +IkReal x2031=((sj0)*(sj5)); +IkReal x2032=((r00)*(sj6)); +IkReal x2033=((IkReal(1.00000000000000))*(cj4)); +IkReal x2034=((cj6)*(sj0)); +IkReal x2035=((r00)*(sj4)); +IkReal x2036=((cj0)*(cj5)); +IkReal x2037=((cj6)*(r01)); +IkReal x2038=((cj5)*(sj0)); +IkReal x2039=((cj0)*(sj5)); +IkReal x2040=((cj6)*(r11)); +IkReal x2041=((r10)*(sj6)); +IkReal x2042=((r10)*(sj4)); +IkReal x2043=((cj0)*(sj4)*(sj6)); +IkReal x2044=((sj0)*(sj4)*(sj6)); +IkReal x2045=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((x2030)+(((x2031)*(x2032)))+(((IkReal(-1.00000000000000))*(r02)*(x2038)))+(((IkReal(-1.00000000000000))*(x2039)*(x2040)))+(((r12)*(x2036)))+(((x2031)*(x2037)))+(((IkReal(-1.00000000000000))*(x2039)*(x2041)))); +evalcond[1]=((x2029)+(((IkReal(-1.00000000000000))*(x2032)*(x2039)))+(((r02)*(x2036)))+(((IkReal(-1.00000000000000))*(x2031)*(x2041)))+(((IkReal(-1.00000000000000))*(x2037)*(x2039)))+(((r12)*(x2038)))+(((IkReal(-1.00000000000000))*(x2031)*(x2040)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2029)))+(((cj4)*(x2032)*(x2038)))+(((IkReal(-1.00000000000000))*(x2033)*(x2036)*(x2041)))+(((IkReal(-1.00000000000000))*(r12)*(x2033)*(x2039)))+(((IkReal(-1.00000000000000))*(x2042)*(x2045)))+(((IkReal(-1.00000000000000))*(x2033)*(x2036)*(x2040)))+(((IkReal(-1.00000000000000))*(r01)*(x2044)))+(((r11)*(x2043)))+(((cj4)*(cj5)*(r01)*(x2034)))+(((cj4)*(r02)*(x2031)))+(((x2034)*(x2035)))); +evalcond[3]=((x2030)+(((r01)*(x2043)))+(((IkReal(-1.00000000000000))*(r02)*(x2033)*(x2039)))+(((r11)*(x2044)))+(((IkReal(-1.00000000000000))*(x2034)*(x2042)))+(((IkReal(-1.00000000000000))*(r12)*(x2031)*(x2033)))+(((IkReal(-1.00000000000000))*(x2032)*(x2033)*(x2036)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x2033)*(x2034)))+(((IkReal(-1.00000000000000))*(x2033)*(x2038)*(x2041)))+(((IkReal(-1.00000000000000))*(x2033)*(x2036)*(x2037)))+(((IkReal(-1.00000000000000))*(x2035)*(x2045)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2046=((sj0)*(sj5)); +IkReal x2047=((r00)*(sj6)); +IkReal x2048=((IkReal(1.00000000000000))*(cj5)); +IkReal x2049=((cj6)*(r11)); +IkReal x2050=((cj6)*(r01)); +IkReal x2051=((cj0)*(sj5)); +IkReal x2052=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x2049)*(x2051)))+(((x2046)*(x2047)))+(((x2046)*(x2050)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2048)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2051)*(x2052))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2048)))+(((x2046)*(x2052)))+(((x2050)*(x2051)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2048)))+(((x2046)*(x2049)))+(((x2047)*(x2051))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x2049)*(x2051)))+(((x2046)*(x2047)))+(((x2046)*(x2050)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2048)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2051)*(x2052)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2048)))+(((x2046)*(x2052)))+(((x2050)*(x2051)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2048)))+(((x2046)*(x2049)))+(((x2047)*(x2051)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x2049)*(x2051)))+(((x2046)*(x2047)))+(((x2046)*(x2050)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2048)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2051)*(x2052)))))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2048)))+(((x2046)*(x2052)))+(((x2050)*(x2051)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2048)))+(((x2046)*(x2049)))+(((x2047)*(x2051))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2053=IKsin(j3); +IkReal x2054=IKcos(j3); +IkReal x2055=((sj0)*(sj5)); +IkReal x2056=((r00)*(sj6)); +IkReal x2057=((IkReal(1.00000000000000))*(cj4)); +IkReal x2058=((cj6)*(r01)); +IkReal x2059=((cj0)*(cj5)); +IkReal x2060=((cj5)*(sj0)); +IkReal x2061=((cj6)*(r11)); +IkReal x2062=((cj6)*(sj4)); +IkReal x2063=((cj0)*(sj5)); +IkReal x2064=((cj4)*(cj5)); +IkReal x2065=((cj6)*(r21)); +IkReal x2066=((r20)*(sj6)); +IkReal x2067=((r10)*(sj6)); +IkReal x2068=((IkReal(1.00000000000000))*(cj0)); +IkReal x2069=((cj0)*(sj4)*(sj6)); +IkReal x2070=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x2066)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x2053)))+(((sj5)*(x2065)))); +evalcond[1]=((((r20)*(x2062)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x2064)*(x2066)))+(((IkReal(-1.00000000000000))*(cj2)*(x2054)))+(((cj4)*(r22)*(sj5)))+(((x2064)*(x2065)))); +evalcond[2]=((((x2055)*(x2056)))+(((IkReal(-1.00000000000000))*(x2063)*(x2067)))+(((IkReal(-1.00000000000000))*(r02)*(x2060)))+(((IkReal(-1.00000000000000))*(sj2)*(x2053)))+(((x2055)*(x2058)))+(((r12)*(x2059)))+(((IkReal(-1.00000000000000))*(x2061)*(x2063)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x2055)*(x2061)))+(((r02)*(x2059)))+(((IkReal(-1.00000000000000))*(x2058)*(x2063)))+(x2054)+(((IkReal(-1.00000000000000))*(x2056)*(x2063)))+(((r12)*(x2060)))+(((IkReal(-1.00000000000000))*(x2055)*(x2067)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x2070)))+(((IkReal(-1.00000000000000))*(r12)*(x2057)*(x2063)))+(((r00)*(sj0)*(x2062)))+(((cj4)*(r02)*(x2055)))+(((IkReal(-1.00000000000000))*(r10)*(x2062)*(x2068)))+(((IkReal(-1.00000000000000))*(x2057)*(x2059)*(x2061)))+(((r11)*(x2069)))+(((cj4)*(x2058)*(x2060)))+(((IkReal(-1.00000000000000))*(x2057)*(x2059)*(x2067)))+(((cj4)*(x2056)*(x2060)))+(((sj2)*(x2054)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2057)*(x2058)*(x2059)))+(((IkReal(-1.00000000000000))*(x2057)*(x2060)*(x2061)))+(x2053)+(((IkReal(-1.00000000000000))*(r12)*(x2055)*(x2057)))+(((r01)*(x2069)))+(((IkReal(-1.00000000000000))*(r00)*(x2062)*(x2068)))+(((r11)*(x2070)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2062)))+(((IkReal(-1.00000000000000))*(x2057)*(x2060)*(x2067)))+(((IkReal(-1.00000000000000))*(x2056)*(x2057)*(x2059)))+(((IkReal(-1.00000000000000))*(r02)*(x2057)*(x2063)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2071=((cj6)*(sj5)); +IkReal x2072=((IkReal(1.00000000000000))*(cj5)); +IkReal x2073=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2071)))+(((IkReal(-1.00000000000000))*(r20)*(x2073)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r11)*(sj0)*(x2071)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2072)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2072)))+(((cj0)*(r01)*(x2071)))+(((cj0)*(r00)*(x2073)))+(((r10)*(sj0)*(x2073))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2071)))+(((IkReal(-1.00000000000000))*(r20)*(x2073)))+(((cj5)*(r22)))))))+IKsqr(((((r11)*(sj0)*(x2071)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2072)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2072)))+(((cj0)*(r01)*(x2071)))+(((cj0)*(r00)*(x2073)))+(((r10)*(sj0)*(x2073)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2071)))+(((IkReal(-1.00000000000000))*(r20)*(x2073)))+(((cj5)*(r22)))))), ((((r11)*(sj0)*(x2071)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2072)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2072)))+(((cj0)*(r01)*(x2071)))+(((cj0)*(r00)*(x2073)))+(((r10)*(sj0)*(x2073))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2074=IKsin(j3); +IkReal x2075=IKcos(j3); +IkReal x2076=((sj0)*(sj5)); +IkReal x2077=((r00)*(sj6)); +IkReal x2078=((IkReal(1.00000000000000))*(cj4)); +IkReal x2079=((cj6)*(r01)); +IkReal x2080=((cj0)*(cj5)); +IkReal x2081=((cj5)*(sj0)); +IkReal x2082=((cj6)*(r11)); +IkReal x2083=((cj6)*(sj4)); +IkReal x2084=((cj0)*(sj5)); +IkReal x2085=((cj4)*(cj5)); +IkReal x2086=((cj6)*(r21)); +IkReal x2087=((r20)*(sj6)); +IkReal x2088=((r10)*(sj6)); +IkReal x2089=((IkReal(1.00000000000000))*(cj0)); +IkReal x2090=((cj0)*(sj4)*(sj6)); +IkReal x2091=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x2087)))+(((cj2)*(x2074)))+(((sj5)*(x2086)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj2)*(x2075)))+(((x2085)*(x2087)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x2085)*(x2086)))+(((r20)*(x2083)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2084)*(x2088)))+(((IkReal(-1.00000000000000))*(sj2)*(x2074)))+(((x2076)*(x2079)))+(((IkReal(-1.00000000000000))*(x2082)*(x2084)))+(((x2076)*(x2077)))+(((r12)*(x2080)))+(((IkReal(-1.00000000000000))*(r02)*(x2081)))); +evalcond[3]=((x2075)+(((IkReal(-1.00000000000000))*(x2076)*(x2082)))+(((r12)*(x2081)))+(((r02)*(x2080)))+(((IkReal(-1.00000000000000))*(x2077)*(x2084)))+(((IkReal(-1.00000000000000))*(x2076)*(x2088)))+(((IkReal(-1.00000000000000))*(x2079)*(x2084)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x2083)*(x2089)))+(((IkReal(-1.00000000000000))*(x2078)*(x2080)*(x2082)))+(((r00)*(sj0)*(x2083)))+(((IkReal(-1.00000000000000))*(r12)*(x2078)*(x2084)))+(((cj4)*(r02)*(x2076)))+(((r11)*(x2090)))+(((sj2)*(x2075)))+(((IkReal(-1.00000000000000))*(x2078)*(x2080)*(x2088)))+(((cj4)*(x2077)*(x2081)))+(((cj4)*(x2079)*(x2081)))+(((IkReal(-1.00000000000000))*(r01)*(x2091)))); +evalcond[5]=((x2074)+(((r01)*(x2090)))+(((IkReal(-1.00000000000000))*(x2078)*(x2079)*(x2080)))+(((IkReal(-1.00000000000000))*(x2078)*(x2081)*(x2082)))+(((IkReal(-1.00000000000000))*(x2077)*(x2078)*(x2080)))+(((IkReal(-1.00000000000000))*(r12)*(x2076)*(x2078)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2083)))+(((r11)*(x2091)))+(((IkReal(-1.00000000000000))*(r00)*(x2083)*(x2089)))+(((IkReal(-1.00000000000000))*(r02)*(x2078)*(x2084)))+(((IkReal(-1.00000000000000))*(x2078)*(x2081)*(x2088)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2092=((IkReal(1.00000000000000))*(r21)); +IkReal x2093=((cj4)*(cj5)); +IkReal x2094=((r20)*(sj6)); +if( IKabs(((gconst56)*(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2092)))+(((IkReal(-1.00000000000000))*(sj5)*(x2094)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst56)*(((((x2093)*(x2094)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2092)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x2093))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst56)*(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2092)))+(((IkReal(-1.00000000000000))*(sj5)*(x2094)))+(((cj5)*(r22)))))), ((gconst56)*(((((x2093)*(x2094)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2092)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x2093))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2095=IKsin(j3); +IkReal x2096=IKcos(j3); +IkReal x2097=((sj0)*(sj5)); +IkReal x2098=((r00)*(sj6)); +IkReal x2099=((IkReal(1.00000000000000))*(cj4)); +IkReal x2100=((cj6)*(r01)); +IkReal x2101=((cj0)*(cj5)); +IkReal x2102=((cj5)*(sj0)); +IkReal x2103=((cj6)*(r11)); +IkReal x2104=((cj6)*(sj4)); +IkReal x2105=((cj0)*(sj5)); +IkReal x2106=((cj4)*(cj5)); +IkReal x2107=((cj6)*(r21)); +IkReal x2108=((r20)*(sj6)); +IkReal x2109=((r10)*(sj6)); +IkReal x2110=((IkReal(1.00000000000000))*(cj0)); +IkReal x2111=((cj0)*(sj4)*(sj6)); +IkReal x2112=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x2108)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x2095)))+(((sj5)*(x2107)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj2)*(x2096)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x2106)*(x2108)))+(((cj4)*(r22)*(sj5)))+(((x2106)*(x2107)))+(((r20)*(x2104)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x2095)))+(((IkReal(-1.00000000000000))*(x2103)*(x2105)))+(((IkReal(-1.00000000000000))*(x2105)*(x2109)))+(((x2097)*(x2098)))+(((r12)*(x2101)))+(((x2097)*(x2100)))+(((IkReal(-1.00000000000000))*(r02)*(x2102)))); +evalcond[3]=((x2096)+(((IkReal(-1.00000000000000))*(x2098)*(x2105)))+(((IkReal(-1.00000000000000))*(x2100)*(x2105)))+(((r12)*(x2102)))+(((r02)*(x2101)))+(((IkReal(-1.00000000000000))*(x2097)*(x2103)))+(((IkReal(-1.00000000000000))*(x2097)*(x2109)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x2099)*(x2101)*(x2103)))+(((IkReal(-1.00000000000000))*(r10)*(x2104)*(x2110)))+(((sj2)*(x2096)))+(((cj4)*(r02)*(x2097)))+(((cj4)*(x2100)*(x2102)))+(((cj4)*(x2098)*(x2102)))+(((IkReal(-1.00000000000000))*(r12)*(x2099)*(x2105)))+(((IkReal(-1.00000000000000))*(x2099)*(x2101)*(x2109)))+(((IkReal(-1.00000000000000))*(r01)*(x2112)))+(((r11)*(x2111)))+(((r00)*(sj0)*(x2104)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2099)*(x2100)*(x2101)))+(((IkReal(-1.00000000000000))*(r00)*(x2104)*(x2110)))+(((r01)*(x2111)))+(((IkReal(-1.00000000000000))*(x2098)*(x2099)*(x2101)))+(x2095)+(((r11)*(x2112)))+(((IkReal(-1.00000000000000))*(r12)*(x2097)*(x2099)))+(((IkReal(-1.00000000000000))*(r02)*(x2099)*(x2105)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2104)))+(((IkReal(-1.00000000000000))*(x2099)*(x2102)*(x2109)))+(((IkReal(-1.00000000000000))*(x2099)*(x2102)*(x2103)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2113=((r11)*(sj0)); +IkReal x2114=((cj0)*(r01)); +IkReal x2115=((cj0)*(sj2)); +IkReal x2116=((sj0)*(sj2)); +IkReal x2117=((cj5)*(sj6)); +IkReal x2118=((IkReal(1.00000000000000))*(sj2)*(sj6)); +IkReal x2119=((cj5)*(cj6)*(sj2)); +if( IKabs(((gconst53)*(((((cj6)*(r00)*(x2115)))+(((IkReal(-1.00000000000000))*(x2114)*(x2118)))+(((cj6)*(r10)*(x2116)))+(((IkReal(-1.00000000000000))*(x2113)*(x2118))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst53)*(((((x2114)*(x2119)))+(((r02)*(sj5)*(x2115)))+(((r00)*(x2115)*(x2117)))+(((r10)*(x2116)*(x2117)))+(((x2113)*(x2119)))+(((r12)*(sj5)*(x2116))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst53)*(((((cj6)*(r00)*(x2115)))+(((IkReal(-1.00000000000000))*(x2114)*(x2118)))+(((cj6)*(r10)*(x2116)))+(((IkReal(-1.00000000000000))*(x2113)*(x2118)))))), ((gconst53)*(((((x2114)*(x2119)))+(((r02)*(sj5)*(x2115)))+(((r00)*(x2115)*(x2117)))+(((r10)*(x2116)*(x2117)))+(((x2113)*(x2119)))+(((r12)*(sj5)*(x2116))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x2120=IKsin(j4); +IkReal x2121=IKcos(j4); +IkReal x2122=((r00)*(sj6)); +IkReal x2123=((cj6)*(r01)); +IkReal x2124=((IkReal(1.00000000000000))*(cj0)); +IkReal x2125=((IkReal(1.00000000000000))*(sj0)); +IkReal x2126=((r10)*(sj6)); +IkReal x2127=((sj5)*(x2120)); +IkReal x2128=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x2129=((cj5)*(x2120)); +IkReal x2130=((cj6)*(x2121)); +IkReal x2131=((sj0)*(x2129)); +IkReal x2132=((r01)*(sj6)*(x2121)); +IkReal x2133=((r11)*(sj6)*(x2121)); +evalcond[0]=((sj2)+(((cj6)*(r21)*(x2129)))+(((IkReal(-1.00000000000000))*(r20)*(x2130)))+(((r21)*(sj6)*(x2121)))+(((r20)*(sj6)*(x2129)))+(((r22)*(x2127)))); +evalcond[1]=((((sj0)*(x2132)))+(((x2123)*(x2131)))+(((IkReal(-1.00000000000000))*(r12)*(x2124)*(x2127)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2124)*(x2129)))+(((IkReal(-1.00000000000000))*(r00)*(x2125)*(x2130)))+(((IkReal(-1.00000000000000))*(x2124)*(x2126)*(x2129)))+(((cj0)*(r10)*(x2130)))+(cj2)+(((r02)*(sj0)*(x2127)))+(((IkReal(-1.00000000000000))*(x2124)*(x2133)))+(((x2122)*(x2131)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2125)*(x2133)))+(((IkReal(-1.00000000000000))*(x2125)*(x2126)*(x2129)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2125)*(x2129)))+(((IkReal(-1.00000000000000))*(x2123)*(x2124)*(x2129)))+(((IkReal(-1.00000000000000))*(x2124)*(x2132)))+(((IkReal(-1.00000000000000))*(r12)*(x2125)*(x2127)))+(((IkReal(-1.00000000000000))*(r02)*(x2124)*(x2127)))+(((IkReal(-1.00000000000000))*(x2122)*(x2124)*(x2129)))+(((r10)*(sj0)*(x2130)))+(((cj0)*(r00)*(x2130)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst56; +gconst56=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x2134=((cj5)*(sj4)); +IkReal x2135=((IkReal(1.00000000000000))*(sj6)); +IkReal x2136=((r10)*(sj0)); +IkReal x2137=((sj4)*(sj5)); +IkReal x2138=((cj5)*(cj6)); +IkReal x2139=((r01)*(sj0)); +IkReal x2140=((IkReal(1.00000000000000))*(r02)); +IkReal x2141=((IkReal(0.374290000000000))*(cj0)); +IkReal x2142=((cj5)*(r12)); +IkReal x2143=((cj6)*(sj5)); +IkReal x2144=((cj0)*(r11)); +IkReal x2145=((cj5)*(sj0)); +IkReal x2146=((r20)*(sj6)); +IkReal x2147=((IkReal(1.00000000000000))*(sj0)); +IkReal x2148=((cj4)*(cj5)); +IkReal x2149=((IkReal(1.00000000000000))*(cj6)); +IkReal x2150=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2151=((sj5)*(sj6)); +IkReal x2152=((cj0)*(r10)); +IkReal x2153=((cj4)*(cj6)); +IkReal x2154=((cj0)*(r01)); +IkReal x2155=((IkReal(1.00000000000000))*(cj4)); +IkReal x2156=((cj0)*(r00)); +IkReal x2157=((IkReal(0.374290000000000))*(sj0)); +IkReal x2158=((cj0)*(r12)); +IkReal x2159=((IkReal(0.374290000000000))*(sj5)); +IkReal x2160=((cj4)*(sj6)); +IkReal x2161=((IkReal(1.00000000000000))*(cj0)); +IkReal x2162=((r02)*(sj0)); +IkReal x2163=((IkReal(0.0100000000000000))*(cj5)); +IkReal x2164=((r11)*(sj0)); +IkReal x2165=((r00)*(sj0)*(sj6)); +IkReal x2166=((r00)*(x2153)); +IkReal x2167=((sj6)*(x2163)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x2137)))+(((x2134)*(x2146)))+(((cj6)*(r21)*(x2134)))+(((r21)*(x2160)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x2149)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(0.374290000000000))*(r21)*(x2143)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x2150)))+(((x2146)*(x2159)))+(((IkReal(-1.00000000000000))*(x2146)*(x2163)))+(((IkReal(-0.0100000000000000))*(r21)*(x2138)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x2143)*(x2144)))+(((r00)*(sj0)*(x2151)))+(((IkReal(-1.00000000000000))*(x2140)*(x2145)))+(((x2139)*(x2143)))+(((cj0)*(x2142)))+(((IkReal(-1.00000000000000))*(sj5)*(x2135)*(x2152)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x2147)*(x2166)))+(((IkReal(-1.00000000000000))*(cj4)*(x2135)*(x2144)))+(((IkReal(-1.00000000000000))*(x2134)*(x2144)*(x2149)))+(((IkReal(-1.00000000000000))*(x2137)*(x2158)))+(((x2139)*(x2160)))+(((cj6)*(x2134)*(x2139)))+(((x2134)*(x2165)))+(((x2152)*(x2153)))+(((x2137)*(x2162)))+(((IkReal(-1.00000000000000))*(x2134)*(x2135)*(x2152)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x2135)*(x2139)))+(((sj4)*(sj6)*(x2144)))+(((cj4)*(sj5)*(x2162)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x2135)*(x2148)*(x2152)))+(((IkReal(-1.00000000000000))*(sj4)*(x2149)*(x2152)))+(((IkReal(-1.00000000000000))*(x2138)*(x2144)*(x2155)))+(((cj4)*(x2138)*(x2139)))+(((r00)*(x2145)*(x2160)))+(((IkReal(-1.00000000000000))*(sj5)*(x2155)*(x2158)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x2134)*(x2135)*(x2136)))+(((IkReal(-1.00000000000000))*(r12)*(x2137)*(x2147)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2134)*(x2147)))+(((x2136)*(x2153)))+(((x2153)*(x2156)))+(((IkReal(-1.00000000000000))*(cj4)*(x2135)*(x2154)))+(((IkReal(-1.00000000000000))*(x2134)*(x2135)*(x2156)))+(((IkReal(-1.00000000000000))*(cj0)*(x2137)*(x2140)))+(((IkReal(-1.00000000000000))*(x2134)*(x2149)*(x2154)))+(((IkReal(-1.00000000000000))*(cj4)*(x2135)*(x2164)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x2141)*(x2143)))+(((IkReal(-0.374290000000000))*(r02)*(x2145)))+(((IkReal(0.374290000000000))*(x2139)*(x2143)))+(((x2152)*(x2167)))+(((IkReal(0.0100000000000000))*(x2138)*(x2144)))+(((x2150)*(x2158)))+(((IkReal(-1.00000000000000))*(py)*(x2161)))+(((IkReal(-1.00000000000000))*(r10)*(x2141)*(x2151)))+(((IkReal(-0.0100000000000000))*(x2138)*(x2139)))+(((x2141)*(x2142)))+(((px)*(sj0)))+(((r00)*(x2151)*(x2157)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x2145)))+(((IkReal(-1.00000000000000))*(x2150)*(x2162)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x2136)*(x2167)))+(((cj5)*(r02)*(x2141)))+(((IkReal(-1.00000000000000))*(py)*(x2147)))+(((IkReal(0.0100000000000000))*(x2138)*(x2164)))+(((r12)*(sj0)*(x2150)))+(((IkReal(0.0100000000000000))*(x2138)*(x2154)))+(((IkReal(-1.00000000000000))*(r01)*(x2141)*(x2143)))+(((x2142)*(x2157)))+(((IkReal(-1.00000000000000))*(r00)*(x2141)*(x2151)))+(((IkReal(-1.00000000000000))*(r11)*(x2143)*(x2157)))+(((IkReal(-0.374290000000000))*(x2136)*(x2151)))+(((cj0)*(r02)*(x2150)))+(((x2156)*(x2167)))+(((IkReal(-1.00000000000000))*(px)*(x2161)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2168=((IkReal(1.00000000000000))*(r21)); +IkReal x2169=((cj4)*(cj5)); +IkReal x2170=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x2170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2168))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r20)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2168)))+(((cj4)*(r22)*(sj5)))+(((x2169)*(x2170)))+(((cj6)*(r21)*(x2169))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x2170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2168)))))+IKsqr(((((cj6)*(r20)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2168)))+(((cj4)*(r22)*(sj5)))+(((x2169)*(x2170)))+(((cj6)*(r21)*(x2169)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x2170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2168)))), ((((cj6)*(r20)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2168)))+(((cj4)*(r22)*(sj5)))+(((x2169)*(x2170)))+(((cj6)*(r21)*(x2169))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x2171=IKcos(j3); +IkReal x2172=IKsin(j3); +IkReal x2173=((IkReal(1.00000000000000))*(cj4)); +IkReal x2174=((sj0)*(sj5)); +IkReal x2175=((cj0)*(cj5)); +IkReal x2176=((cj6)*(r01)); +IkReal x2177=((r00)*(sj6)); +IkReal x2178=((cj6)*(r11)); +IkReal x2179=((cj5)*(sj0)); +IkReal x2180=((cj6)*(sj4)); +IkReal x2181=((sj4)*(sj6)); +IkReal x2182=((cj4)*(cj5)); +IkReal x2183=((cj6)*(r21)); +IkReal x2184=((r20)*(sj6)); +IkReal x2185=((r10)*(sj6)); +IkReal x2186=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((x2172)+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x2184)))+(((sj5)*(x2183)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x2181)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x2171)))+(((x2182)*(x2183)))+(((x2182)*(x2184)))+(((r20)*(x2180)))); +evalcond[2]=((x2171)+(((IkReal(-1.00000000000000))*(x2176)*(x2186)))+(((r02)*(x2175)))+(((IkReal(-1.00000000000000))*(x2174)*(x2185)))+(((IkReal(-1.00000000000000))*(x2174)*(x2178)))+(((r12)*(x2179)))+(((IkReal(-1.00000000000000))*(x2177)*(x2186)))); +evalcond[3]=((((cj0)*(r01)*(x2181)))+(x2172)+(((r11)*(sj0)*(x2181)))+(((IkReal(-1.00000000000000))*(x2173)*(x2179)*(x2185)))+(((IkReal(-1.00000000000000))*(x2173)*(x2175)*(x2177)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x2180)))+(((IkReal(-1.00000000000000))*(x2173)*(x2178)*(x2179)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x2173)))+(((IkReal(-1.00000000000000))*(r12)*(x2173)*(x2174)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2180)))+(((IkReal(-1.00000000000000))*(x2173)*(x2175)*(x2176)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x2187=((cj5)*(sj4)); +IkReal x2188=((IkReal(1.00000000000000))*(sj6)); +IkReal x2189=((r10)*(sj0)); +IkReal x2190=((sj4)*(sj5)); +IkReal x2191=((cj5)*(cj6)); +IkReal x2192=((r01)*(sj0)); +IkReal x2193=((IkReal(1.00000000000000))*(r02)); +IkReal x2194=((IkReal(0.374290000000000))*(cj0)); +IkReal x2195=((cj5)*(r12)); +IkReal x2196=((cj6)*(sj5)); +IkReal x2197=((cj0)*(r11)); +IkReal x2198=((cj5)*(sj0)); +IkReal x2199=((r20)*(sj6)); +IkReal x2200=((IkReal(1.00000000000000))*(sj0)); +IkReal x2201=((cj4)*(cj5)); +IkReal x2202=((IkReal(1.00000000000000))*(cj6)); +IkReal x2203=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2204=((sj5)*(sj6)); +IkReal x2205=((cj0)*(r10)); +IkReal x2206=((cj4)*(cj6)); +IkReal x2207=((cj0)*(r01)); +IkReal x2208=((IkReal(1.00000000000000))*(cj4)); +IkReal x2209=((cj0)*(r00)); +IkReal x2210=((IkReal(0.374290000000000))*(sj0)); +IkReal x2211=((cj0)*(r12)); +IkReal x2212=((IkReal(0.374290000000000))*(sj5)); +IkReal x2213=((cj4)*(sj6)); +IkReal x2214=((IkReal(1.00000000000000))*(cj0)); +IkReal x2215=((r02)*(sj0)); +IkReal x2216=((IkReal(0.0100000000000000))*(cj5)); +IkReal x2217=((r11)*(sj0)); +IkReal x2218=((r00)*(sj0)*(sj6)); +IkReal x2219=((r00)*(x2206)); +IkReal x2220=((sj6)*(x2216)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x2190)))+(((r21)*(x2213)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x2202)))+(((x2187)*(x2199)))+(((cj6)*(r21)*(x2187)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x2203)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x2191)))+(((IkReal(0.374290000000000))*(r21)*(x2196)))+(((IkReal(-1.00000000000000))*(x2199)*(x2216)))+(((x2199)*(x2212)))+(pz)); +evalcond[3]=((((cj0)*(x2195)))+(((IkReal(-1.00000000000000))*(x2196)*(x2197)))+(((r00)*(sj0)*(x2204)))+(((x2192)*(x2196)))+(((IkReal(-1.00000000000000))*(x2193)*(x2198)))+(((IkReal(-1.00000000000000))*(sj5)*(x2188)*(x2205)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x2192)*(x2213)))+(((IkReal(-1.00000000000000))*(x2187)*(x2197)*(x2202)))+(((IkReal(-1.00000000000000))*(x2190)*(x2211)))+(((IkReal(-1.00000000000000))*(x2200)*(x2219)))+(((x2187)*(x2218)))+(((IkReal(-1.00000000000000))*(cj4)*(x2188)*(x2197)))+(((x2190)*(x2215)))+(((IkReal(-1.00000000000000))*(x2187)*(x2188)*(x2205)))+(((cj6)*(x2187)*(x2192)))+(((x2205)*(x2206)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x2202)*(x2205)))+(((IkReal(-1.00000000000000))*(x2191)*(x2197)*(x2208)))+(((sj4)*(sj6)*(x2197)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(x2188)*(x2192)))+(((cj4)*(x2191)*(x2192)))+(((cj4)*(sj5)*(x2215)))+(((r00)*(x2198)*(x2213)))+(((IkReal(-1.00000000000000))*(x2188)*(x2201)*(x2205)))+(((IkReal(-1.00000000000000))*(sj5)*(x2208)*(x2211)))); +evalcond[6]=((((x2189)*(x2206)))+(((IkReal(-1.00000000000000))*(cj4)*(x2188)*(x2217)))+(((IkReal(-1.00000000000000))*(cj0)*(x2190)*(x2193)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2187)*(x2200)))+(((x2206)*(x2209)))+(((IkReal(-1.00000000000000))*(cj4)*(x2188)*(x2207)))+(((IkReal(-1.00000000000000))*(x2187)*(x2202)*(x2207)))+(((IkReal(-1.00000000000000))*(x2187)*(x2188)*(x2209)))+(((IkReal(-1.00000000000000))*(r12)*(x2190)*(x2200)))+(((IkReal(-1.00000000000000))*(x2187)*(x2188)*(x2189)))); +evalcond[7]=((((x2205)*(x2220)))+(((IkReal(-0.374290000000000))*(r02)*(x2198)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x2198)))+(((IkReal(-1.00000000000000))*(r11)*(x2194)*(x2196)))+(((x2203)*(x2211)))+(((IkReal(0.0100000000000000))*(x2191)*(x2197)))+(((IkReal(-1.00000000000000))*(r10)*(x2194)*(x2204)))+(((IkReal(-1.00000000000000))*(py)*(x2214)))+(((IkReal(-0.0100000000000000))*(x2191)*(x2192)))+(((IkReal(0.374290000000000))*(x2192)*(x2196)))+(((r00)*(x2204)*(x2210)))+(((IkReal(-1.00000000000000))*(x2203)*(x2215)))+(((px)*(sj0)))+(((x2194)*(x2195)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(r00)*(x2194)*(x2204)))+(((cj5)*(r02)*(x2194)))+(((cj0)*(r02)*(x2203)))+(((r12)*(sj0)*(x2203)))+(((IkReal(-0.374290000000000))*(x2189)*(x2204)))+(((x2195)*(x2210)))+(((x2209)*(x2220)))+(((IkReal(-1.00000000000000))*(r01)*(x2194)*(x2196)))+(((IkReal(0.0100000000000000))*(x2191)*(x2217)))+(((IkReal(-1.00000000000000))*(r11)*(x2196)*(x2210)))+(((IkReal(0.0100000000000000))*(x2191)*(x2207)))+(((IkReal(-1.00000000000000))*(py)*(x2200)))+(((x2189)*(x2220)))+(((IkReal(-1.00000000000000))*(px)*(x2214)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2221=((IkReal(1.00000000000000))*(cj4)); +IkReal x2222=((cj6)*(r21)); +IkReal x2223=((r20)*(sj6)); +if( IKabs(((((sj5)*(x2223)))+(((sj5)*(x2222)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2223)))+(((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2222)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2221)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x2223)))+(((sj5)*(x2222)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2223)))+(((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2222)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2221)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x2223)))+(((sj5)*(x2222)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2223)))+(((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2222)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2221)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x2224=IKcos(j3); +IkReal x2225=IKsin(j3); +IkReal x2226=((IkReal(1.00000000000000))*(cj4)); +IkReal x2227=((sj0)*(sj5)); +IkReal x2228=((cj0)*(cj5)); +IkReal x2229=((cj6)*(r01)); +IkReal x2230=((r00)*(sj6)); +IkReal x2231=((cj6)*(r11)); +IkReal x2232=((cj5)*(sj0)); +IkReal x2233=((cj6)*(sj4)); +IkReal x2234=((sj4)*(sj6)); +IkReal x2235=((cj4)*(cj5)); +IkReal x2236=((cj6)*(r21)); +IkReal x2237=((r20)*(sj6)); +IkReal x2238=((r10)*(sj6)); +IkReal x2239=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x2236)))+(((sj5)*(x2237)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x2225)))); +evalcond[1]=((x2224)+(((r20)*(x2233)))+(((IkReal(-1.00000000000000))*(r21)*(x2234)))+(((x2235)*(x2237)))+(((cj4)*(r22)*(sj5)))+(((x2235)*(x2236)))); +evalcond[2]=((x2224)+(((IkReal(-1.00000000000000))*(x2230)*(x2239)))+(((IkReal(-1.00000000000000))*(x2227)*(x2238)))+(((IkReal(-1.00000000000000))*(x2227)*(x2231)))+(((IkReal(-1.00000000000000))*(x2229)*(x2239)))+(((r12)*(x2232)))+(((r02)*(x2228)))); +evalcond[3]=((x2225)+(((IkReal(-1.00000000000000))*(x2226)*(x2228)*(x2229)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x2226)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2233)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x2233)))+(((IkReal(-1.00000000000000))*(x2226)*(x2228)*(x2230)))+(((IkReal(-1.00000000000000))*(x2226)*(x2232)*(x2238)))+(((IkReal(-1.00000000000000))*(r12)*(x2226)*(x2227)))+(((IkReal(-1.00000000000000))*(x2226)*(x2231)*(x2232)))+(((cj0)*(r01)*(x2234)))+(((r11)*(sj0)*(x2234)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x2240=((IkReal(1.00000000000000))*(cj0)); +IkReal x2241=((cj4)*(sj6)); +IkReal x2242=((sj0)*(sj4)); +IkReal x2243=((cj5)*(sj6)); +IkReal x2244=((sj4)*(sj5)); +IkReal x2245=((r12)*(sj5)); +IkReal x2246=((IkReal(0.374290000000000))*(cj5)); +IkReal x2247=((r02)*(sj0)); +IkReal x2248=((r20)*(sj4)); +IkReal x2249=((IkReal(1.00000000000000))*(sj0)); +IkReal x2250=((IkReal(1.00000000000000))*(cj5)); +IkReal x2251=((cj0)*(r10)); +IkReal x2252=((cj4)*(cj6)); +IkReal x2253=((r00)*(sj0)); +IkReal x2254=((cj6)*(r21)); +IkReal x2255=((IkReal(0.374290000000000))*(sj5)); +IkReal x2256=((cj0)*(r00)); +IkReal x2257=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2258=((cj0)*(r02)); +IkReal x2259=((cj5)*(sj4)); +IkReal x2260=((cj6)*(r01)); +IkReal x2261=((cj6)*(r11)); +IkReal x2262=((r01)*(sj0)); +IkReal x2263=((r10)*(sj0)); +IkReal x2264=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x2265=((sj6)*(x2255)); +IkReal x2266=((cj0)*(cj6)*(x2255)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x2254)))+(((IkReal(-1.00000000000000))*(r22)*(x2250)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x2254)*(x2259)))+(((IkReal(-1.00000000000000))*(r20)*(x2252)))+(((x2243)*(x2248)))+(((r21)*(x2241)))+(((r22)*(x2244)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x2254)))+(((IkReal(-0.0100000000000000))*(r20)*(x2243)))+(((IkReal(-1.00000000000000))*(r22)*(x2246)))+(((r20)*(x2265)))+(((x2254)*(x2255)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x2257)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x2248)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x2241)))+(((cj5)*(r21)*(x2252)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r11)*(x2240)*(x2241)))+(((x2241)*(x2262)))+(((r02)*(sj5)*(x2242)))+(((IkReal(-1.00000000000000))*(r12)*(x2240)*(x2244)))+(((IkReal(-1.00000000000000))*(r00)*(x2249)*(x2252)))+(((x2251)*(x2252)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x2240)*(x2243)))+(((IkReal(-1.00000000000000))*(x2240)*(x2259)*(x2261)))+(((r00)*(x2242)*(x2243)))+(((cj5)*(x2242)*(x2260)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r01)*(x2240)*(x2241)))+(((IkReal(-1.00000000000000))*(r11)*(x2241)*(x2249)))+(((x2252)*(x2256)))+(((IkReal(-1.00000000000000))*(x2240)*(x2259)*(x2260)))+(((IkReal(-1.00000000000000))*(r10)*(x2242)*(x2243)))+(((IkReal(-1.00000000000000))*(x2242)*(x2245)))+(((x2252)*(x2263)))+(((IkReal(-1.00000000000000))*(r02)*(x2240)*(x2244)))+(((IkReal(-1.00000000000000))*(x2242)*(x2250)*(x2261)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x2240)*(x2243)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x2255)*(x2261)))+(((IkReal(-1.00000000000000))*(x2246)*(x2247)))+(((IkReal(0.0100000000000000))*(x2243)*(x2251)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x2260)))+(((IkReal(-1.00000000000000))*(x2251)*(x2265)))+(((cj0)*(r12)*(x2246)))+(((IkReal(-1.00000000000000))*(x2247)*(x2257)))+(((IkReal(-0.0100000000000000))*(x2243)*(x2253)))+(((IkReal(0.0100000000000000))*(cj0)*(x2245)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2261)))+(((sj0)*(x2255)*(x2260)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x2240)))+(((x2253)*(x2265)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2260)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x2261)))+(((IkReal(0.0100000000000000))*(sj0)*(x2245)))+(((IkReal(-1.00000000000000))*(x2256)*(x2265)))+(((IkReal(-1.00000000000000))*(px)*(x2240)))+(((IkReal(-1.00000000000000))*(x2263)*(x2265)))+(((IkReal(-1.00000000000000))*(py)*(x2249)))+(((IkReal(0.0100000000000000))*(x2243)*(x2256)))+(((x2246)*(x2258)))+(((IkReal(-1.00000000000000))*(cj0)*(x2255)*(x2260)))+(((x2257)*(x2258)))+(((IkReal(-1.00000000000000))*(sj0)*(x2255)*(x2261)))+(((IkReal(0.0100000000000000))*(x2243)*(x2263)))+(((r12)*(sj0)*(x2246)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2267=((sj0)*(sj5)); +IkReal x2268=((r00)*(sj6)); +IkReal x2269=((IkReal(1.00000000000000))*(cj5)); +IkReal x2270=((cj6)*(r11)); +IkReal x2271=((cj6)*(r01)); +IkReal x2272=((r10)*(sj6)); +IkReal x2273=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2269)))+(((x2267)*(x2268)))+(((x2267)*(x2271)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2272)*(x2273)))+(((IkReal(-1.00000000000000))*(x2270)*(x2273))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x2271)*(x2273)))+(((x2267)*(x2270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2269)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2269)))+(((x2268)*(x2273)))+(((x2267)*(x2272))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2269)))+(((x2267)*(x2268)))+(((x2267)*(x2271)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2272)*(x2273)))+(((IkReal(-1.00000000000000))*(x2270)*(x2273)))))+IKsqr(((((x2271)*(x2273)))+(((x2267)*(x2270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2269)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2269)))+(((x2268)*(x2273)))+(((x2267)*(x2272)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2269)))+(((x2267)*(x2268)))+(((x2267)*(x2271)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2272)*(x2273)))+(((IkReal(-1.00000000000000))*(x2270)*(x2273)))), ((((x2271)*(x2273)))+(((x2267)*(x2270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2269)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2269)))+(((x2268)*(x2273)))+(((x2267)*(x2272))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x2274=IKcos(j3); +IkReal x2275=IKsin(j3); +IkReal x2276=((sj0)*(sj5)); +IkReal x2277=((r00)*(sj6)); +IkReal x2278=((cj6)*(sj0)); +IkReal x2279=((IkReal(1.00000000000000))*(cj4)); +IkReal x2280=((r00)*(sj4)); +IkReal x2281=((cj0)*(cj5)); +IkReal x2282=((cj5)*(sj0)); +IkReal x2283=((cj6)*(r11)); +IkReal x2284=((r10)*(sj6)); +IkReal x2285=((cj0)*(sj5)); +IkReal x2286=((r10)*(sj4)); +IkReal x2287=((cj4)*(cj5)*(r01)); +IkReal x2288=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x2289=((cj0)*(sj4)*(sj6)); +IkReal x2290=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x2282)))+(((cj6)*(r01)*(x2276)))+(((IkReal(-1.00000000000000))*(x2283)*(x2285)))+(((IkReal(-1.00000000000000))*(x2275)))+(((r12)*(x2281)))+(((x2276)*(x2277)))+(((IkReal(-1.00000000000000))*(x2284)*(x2285)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x2277)*(x2285)))+(((IkReal(-1.00000000000000))*(x2276)*(x2283)))+(((r12)*(x2282)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x2285)))+(x2274)+(((r02)*(x2281)))+(((IkReal(-1.00000000000000))*(x2276)*(x2284)))); +evalcond[2]=((((cj4)*(x2277)*(x2282)))+(((x2278)*(x2280)))+(((cj4)*(r02)*(x2276)))+(((IkReal(-1.00000000000000))*(x2279)*(x2281)*(x2284)))+(((r11)*(x2289)))+(((IkReal(-1.00000000000000))*(x2286)*(x2288)))+(x2274)+(((IkReal(-1.00000000000000))*(r01)*(x2290)))+(((IkReal(-1.00000000000000))*(x2279)*(x2281)*(x2283)))+(((IkReal(-1.00000000000000))*(r12)*(x2279)*(x2285)))+(((x2278)*(x2287)))); +evalcond[3]=((((r01)*(x2289)))+(((r11)*(x2290)))+(((IkReal(-1.00000000000000))*(x2279)*(x2282)*(x2284)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x2279)*(x2281)))+(((IkReal(-1.00000000000000))*(r02)*(x2279)*(x2285)))+(((IkReal(-1.00000000000000))*(x2280)*(x2288)))+(((IkReal(-1.00000000000000))*(x2278)*(x2286)))+(x2275)+(((IkReal(-1.00000000000000))*(r12)*(x2276)*(x2279)))+(((IkReal(-1.00000000000000))*(x2277)*(x2279)*(x2281)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x2278)*(x2279)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x2291=((IkReal(1.00000000000000))*(cj0)); +IkReal x2292=((cj4)*(sj6)); +IkReal x2293=((sj0)*(sj4)); +IkReal x2294=((cj5)*(sj6)); +IkReal x2295=((sj4)*(sj5)); +IkReal x2296=((r12)*(sj5)); +IkReal x2297=((IkReal(0.374290000000000))*(cj5)); +IkReal x2298=((r02)*(sj0)); +IkReal x2299=((r20)*(sj4)); +IkReal x2300=((IkReal(1.00000000000000))*(sj0)); +IkReal x2301=((IkReal(1.00000000000000))*(cj5)); +IkReal x2302=((cj0)*(r10)); +IkReal x2303=((cj4)*(cj6)); +IkReal x2304=((r00)*(sj0)); +IkReal x2305=((cj6)*(r21)); +IkReal x2306=((IkReal(0.374290000000000))*(sj5)); +IkReal x2307=((cj0)*(r00)); +IkReal x2308=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2309=((cj0)*(r02)); +IkReal x2310=((cj5)*(sj4)); +IkReal x2311=((cj6)*(r01)); +IkReal x2312=((cj6)*(r11)); +IkReal x2313=((r01)*(sj0)); +IkReal x2314=((r10)*(sj0)); +IkReal x2315=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x2316=((sj6)*(x2306)); +IkReal x2317=((cj0)*(cj6)*(x2306)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x2305)))+(((r20)*(sj5)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(x2301)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x2295)))+(((x2294)*(x2299)))+(((r21)*(x2292)))+(((x2305)*(x2310)))+(((IkReal(-1.00000000000000))*(r20)*(x2303)))); +evalcond[3]=((((x2305)*(x2306)))+(((IkReal(-1.00000000000000))*(r22)*(x2308)))+(((IkReal(-1.00000000000000))*(r22)*(x2297)))+(((r20)*(x2316)))+(((IkReal(-0.0100000000000000))*(cj5)*(x2305)))+(((IkReal(-0.0100000000000000))*(r20)*(x2294)))+(pz)); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x2292)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x2299)))+(((cj5)*(r21)*(x2303)))); +evalcond[5]=((((r02)*(sj5)*(x2293)))+(((x2302)*(x2303)))+(((r00)*(x2293)*(x2294)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x2291)*(x2294)))+(((IkReal(-1.00000000000000))*(r00)*(x2300)*(x2303)))+(((IkReal(-1.00000000000000))*(r12)*(x2291)*(x2295)))+(((IkReal(-1.00000000000000))*(x2291)*(x2310)*(x2312)))+(((cj5)*(x2293)*(x2311)))+(((IkReal(-1.00000000000000))*(r11)*(x2291)*(x2292)))+(((x2292)*(x2313)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r02)*(x2291)*(x2295)))+(((IkReal(-1.00000000000000))*(r11)*(x2292)*(x2300)))+(((IkReal(-1.00000000000000))*(x2291)*(x2310)*(x2311)))+(((x2303)*(x2314)))+(((IkReal(-1.00000000000000))*(x2293)*(x2296)))+(((IkReal(-1.00000000000000))*(x2293)*(x2301)*(x2312)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x2291)*(x2294)))+(((IkReal(-1.00000000000000))*(r10)*(x2293)*(x2294)))+(((x2303)*(x2307)))+(((IkReal(-1.00000000000000))*(r01)*(x2291)*(x2292)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((x2304)*(x2316)))+(((IkReal(-1.00000000000000))*(x2302)*(x2316)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x2311)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2312)))+(((IkReal(0.0100000000000000))*(cj0)*(x2296)))+(((sj0)*(x2306)*(x2311)))+(((cj0)*(r12)*(x2297)))+(((IkReal(-1.00000000000000))*(cj0)*(x2306)*(x2312)))+(((IkReal(0.0100000000000000))*(x2294)*(x2302)))+(((IkReal(-0.0100000000000000))*(x2294)*(x2304)))+(((IkReal(-1.00000000000000))*(py)*(x2291)))+(((IkReal(-1.00000000000000))*(x2298)*(x2308)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x2297)*(x2298)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(x2294)*(x2314)))+(((IkReal(-1.00000000000000))*(x2314)*(x2316)))+(((IkReal(0.0100000000000000))*(sj0)*(x2296)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x2312)))+(((r12)*(sj0)*(x2297)))+(((IkReal(-1.00000000000000))*(cj0)*(x2306)*(x2311)))+(((IkReal(-1.00000000000000))*(px)*(x2291)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2311)))+(((IkReal(-1.00000000000000))*(x2307)*(x2316)))+(((IkReal(-1.00000000000000))*(py)*(x2300)))+(((x2297)*(x2309)))+(((IkReal(-1.00000000000000))*(sj0)*(x2306)*(x2312)))+(((x2308)*(x2309)))+(((IkReal(0.0100000000000000))*(x2294)*(x2307)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2318=((IkReal(1.00000000000000))*(cj5)); +IkReal x2319=((r10)*(sj5)*(sj6)); +IkReal x2320=((cj6)*(sj0)*(sj5)); +IkReal x2321=((r00)*(sj5)*(sj6)); +IkReal x2322=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2318)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x2319)))+(((IkReal(-1.00000000000000))*(r01)*(x2320)))+(((IkReal(-1.00000000000000))*(sj0)*(x2321)))+(((r11)*(x2322))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2318)))+(((cj0)*(x2321)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2318)))+(((sj0)*(x2319)))+(((r11)*(x2320)))+(((r01)*(x2322))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2318)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x2319)))+(((IkReal(-1.00000000000000))*(r01)*(x2320)))+(((IkReal(-1.00000000000000))*(sj0)*(x2321)))+(((r11)*(x2322)))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2318)))+(((cj0)*(x2321)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2318)))+(((sj0)*(x2319)))+(((r11)*(x2320)))+(((r01)*(x2322)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2318)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x2319)))+(((IkReal(-1.00000000000000))*(r01)*(x2320)))+(((IkReal(-1.00000000000000))*(sj0)*(x2321)))+(((r11)*(x2322)))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2318)))+(((cj0)*(x2321)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2318)))+(((sj0)*(x2319)))+(((r11)*(x2320)))+(((r01)*(x2322))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x2323=IKcos(j3); +IkReal x2324=IKsin(j3); +IkReal x2325=((sj0)*(sj5)); +IkReal x2326=((r00)*(sj6)); +IkReal x2327=((IkReal(1.00000000000000))*(cj4)); +IkReal x2328=((cj6)*(sj0)); +IkReal x2329=((r00)*(sj4)); +IkReal x2330=((cj0)*(cj5)); +IkReal x2331=((cj6)*(r01)); +IkReal x2332=((cj5)*(sj0)); +IkReal x2333=((cj0)*(sj5)); +IkReal x2334=((cj6)*(r11)); +IkReal x2335=((r10)*(sj6)); +IkReal x2336=((r10)*(sj4)); +IkReal x2337=((cj0)*(sj4)*(sj6)); +IkReal x2338=((sj0)*(sj4)*(sj6)); +IkReal x2339=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((r12)*(x2330)))+(x2324)+(((IkReal(-1.00000000000000))*(r02)*(x2332)))+(((IkReal(-1.00000000000000))*(x2333)*(x2334)))+(((x2325)*(x2326)))+(((x2325)*(x2331)))+(((IkReal(-1.00000000000000))*(x2333)*(x2335)))); +evalcond[1]=((x2323)+(((IkReal(-1.00000000000000))*(x2325)*(x2335)))+(((IkReal(-1.00000000000000))*(x2331)*(x2333)))+(((IkReal(-1.00000000000000))*(x2325)*(x2334)))+(((r02)*(x2330)))+(((r12)*(x2332)))+(((IkReal(-1.00000000000000))*(x2326)*(x2333)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2336)*(x2339)))+(((IkReal(-1.00000000000000))*(r12)*(x2327)*(x2333)))+(((x2328)*(x2329)))+(((IkReal(-1.00000000000000))*(x2327)*(x2330)*(x2334)))+(((IkReal(-1.00000000000000))*(x2323)))+(((IkReal(-1.00000000000000))*(r01)*(x2338)))+(((IkReal(-1.00000000000000))*(x2327)*(x2330)*(x2335)))+(((cj4)*(x2326)*(x2332)))+(((r11)*(x2337)))+(((cj4)*(cj5)*(r01)*(x2328)))+(((cj4)*(r02)*(x2325)))); +evalcond[3]=((x2324)+(((IkReal(-1.00000000000000))*(r02)*(x2327)*(x2333)))+(((IkReal(-1.00000000000000))*(x2326)*(x2327)*(x2330)))+(((IkReal(-1.00000000000000))*(x2327)*(x2330)*(x2331)))+(((IkReal(-1.00000000000000))*(x2329)*(x2339)))+(((IkReal(-1.00000000000000))*(x2328)*(x2336)))+(((IkReal(-1.00000000000000))*(x2327)*(x2332)*(x2335)))+(((IkReal(-1.00000000000000))*(r12)*(x2325)*(x2327)))+(((r11)*(x2338)))+(((r01)*(x2337)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x2327)*(x2328)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2340=((sj0)*(sj5)); +IkReal x2341=((r00)*(sj6)); +IkReal x2342=((IkReal(1.00000000000000))*(cj5)); +IkReal x2343=((cj6)*(r11)); +IkReal x2344=((cj6)*(r01)); +IkReal x2345=((cj0)*(sj5)); +IkReal x2346=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x2340)*(x2341)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2342)))+(((IkReal(-1.00000000000000))*(x2343)*(x2345)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2345)*(x2346)))+(((x2340)*(x2344))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2342)))+(((x2341)*(x2345)))+(((x2340)*(x2343)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2342)))+(((x2340)*(x2346)))+(((x2344)*(x2345))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x2340)*(x2341)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2342)))+(((IkReal(-1.00000000000000))*(x2343)*(x2345)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2345)*(x2346)))+(((x2340)*(x2344)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2342)))+(((x2341)*(x2345)))+(((x2340)*(x2343)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2342)))+(((x2340)*(x2346)))+(((x2344)*(x2345)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x2340)*(x2341)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2342)))+(((IkReal(-1.00000000000000))*(x2343)*(x2345)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2345)*(x2346)))+(((x2340)*(x2344)))))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2342)))+(((x2341)*(x2345)))+(((x2340)*(x2343)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2342)))+(((x2340)*(x2346)))+(((x2344)*(x2345))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2347=IKsin(j3); +IkReal x2348=IKcos(j3); +IkReal x2349=((sj0)*(sj5)); +IkReal x2350=((r00)*(sj6)); +IkReal x2351=((IkReal(1.00000000000000))*(cj4)); +IkReal x2352=((cj6)*(r01)); +IkReal x2353=((cj0)*(cj5)); +IkReal x2354=((cj5)*(sj0)); +IkReal x2355=((cj6)*(r11)); +IkReal x2356=((cj6)*(sj4)); +IkReal x2357=((cj0)*(sj5)); +IkReal x2358=((cj4)*(cj5)); +IkReal x2359=((cj6)*(r21)); +IkReal x2360=((r20)*(sj6)); +IkReal x2361=((r10)*(sj6)); +IkReal x2362=((IkReal(1.00000000000000))*(cj0)); +IkReal x2363=((cj0)*(sj4)*(sj6)); +IkReal x2364=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj2)*(x2347)))+(((sj5)*(x2360)))+(((sj5)*(x2359)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj2)*(x2348)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x2356)))+(((cj4)*(r22)*(sj5)))+(((x2358)*(x2359)))+(((x2358)*(x2360)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2357)*(x2361)))+(((IkReal(-1.00000000000000))*(sj2)*(x2347)))+(((IkReal(-1.00000000000000))*(x2355)*(x2357)))+(((r12)*(x2353)))+(((x2349)*(x2350)))+(((IkReal(-1.00000000000000))*(r02)*(x2354)))+(((x2349)*(x2352)))); +evalcond[3]=((((r02)*(x2353)))+(((IkReal(-1.00000000000000))*(x2349)*(x2361)))+(((IkReal(-1.00000000000000))*(x2350)*(x2357)))+(x2348)+(((r12)*(x2354)))+(((IkReal(-1.00000000000000))*(x2349)*(x2355)))+(((IkReal(-1.00000000000000))*(x2352)*(x2357)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x2351)*(x2357)))+(((cj4)*(x2350)*(x2354)))+(((IkReal(-1.00000000000000))*(x2351)*(x2353)*(x2361)))+(((r00)*(sj0)*(x2356)))+(((IkReal(-1.00000000000000))*(r10)*(x2356)*(x2362)))+(((cj4)*(x2352)*(x2354)))+(((IkReal(-1.00000000000000))*(x2351)*(x2353)*(x2355)))+(((r11)*(x2363)))+(((cj4)*(r02)*(x2349)))+(((sj2)*(x2348)))+(((IkReal(-1.00000000000000))*(r01)*(x2364)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2351)*(x2354)*(x2355)))+(((IkReal(-1.00000000000000))*(x2351)*(x2354)*(x2361)))+(((r11)*(x2364)))+(((IkReal(-1.00000000000000))*(r12)*(x2349)*(x2351)))+(x2347)+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2356)))+(((IkReal(-1.00000000000000))*(x2351)*(x2352)*(x2353)))+(((IkReal(-1.00000000000000))*(r02)*(x2351)*(x2357)))+(((IkReal(-1.00000000000000))*(r00)*(x2356)*(x2362)))+(((r01)*(x2363)))+(((IkReal(-1.00000000000000))*(x2350)*(x2351)*(x2353)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2365=((cj6)*(sj5)); +IkReal x2366=((IkReal(1.00000000000000))*(cj5)); +IkReal x2367=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2365)))+(((IkReal(-1.00000000000000))*(r20)*(x2367)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(r01)*(x2365)))+(((r10)*(sj0)*(x2367)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2366)))+(((r11)*(sj0)*(x2365)))+(((cj0)*(r00)*(x2367)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2366))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2365)))+(((IkReal(-1.00000000000000))*(r20)*(x2367)))+(((cj5)*(r22)))))))+IKsqr(((((cj0)*(r01)*(x2365)))+(((r10)*(sj0)*(x2367)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2366)))+(((r11)*(sj0)*(x2365)))+(((cj0)*(r00)*(x2367)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2366)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2365)))+(((IkReal(-1.00000000000000))*(r20)*(x2367)))+(((cj5)*(r22)))))), ((((cj0)*(r01)*(x2365)))+(((r10)*(sj0)*(x2367)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2366)))+(((r11)*(sj0)*(x2365)))+(((cj0)*(r00)*(x2367)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2366))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2368=IKsin(j3); +IkReal x2369=IKcos(j3); +IkReal x2370=((sj0)*(sj5)); +IkReal x2371=((r00)*(sj6)); +IkReal x2372=((IkReal(1.00000000000000))*(cj4)); +IkReal x2373=((cj6)*(r01)); +IkReal x2374=((cj0)*(cj5)); +IkReal x2375=((cj5)*(sj0)); +IkReal x2376=((cj6)*(r11)); +IkReal x2377=((cj6)*(sj4)); +IkReal x2378=((cj0)*(sj5)); +IkReal x2379=((cj4)*(cj5)); +IkReal x2380=((cj6)*(r21)); +IkReal x2381=((r20)*(sj6)); +IkReal x2382=((r10)*(sj6)); +IkReal x2383=((IkReal(1.00000000000000))*(cj0)); +IkReal x2384=((cj0)*(sj4)*(sj6)); +IkReal x2385=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x2380)))+(((sj5)*(x2381)))+(((cj2)*(x2368)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj2)*(x2369)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x2377)))+(((x2379)*(x2381)))+(((x2379)*(x2380)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2376)*(x2378)))+(((r12)*(x2374)))+(((x2370)*(x2373)))+(((IkReal(-1.00000000000000))*(x2378)*(x2382)))+(((IkReal(-1.00000000000000))*(r02)*(x2375)))+(((x2370)*(x2371)))+(((IkReal(-1.00000000000000))*(sj2)*(x2368)))); +evalcond[3]=((x2369)+(((IkReal(-1.00000000000000))*(x2370)*(x2382)))+(((r02)*(x2374)))+(((IkReal(-1.00000000000000))*(x2371)*(x2378)))+(((IkReal(-1.00000000000000))*(x2370)*(x2376)))+(((r12)*(x2375)))+(((IkReal(-1.00000000000000))*(x2373)*(x2378)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x2372)*(x2378)))+(((IkReal(-1.00000000000000))*(x2372)*(x2374)*(x2376)))+(((r11)*(x2384)))+(((cj4)*(x2373)*(x2375)))+(((cj4)*(r02)*(x2370)))+(((sj2)*(x2369)))+(((IkReal(-1.00000000000000))*(r01)*(x2385)))+(((r00)*(sj0)*(x2377)))+(((IkReal(-1.00000000000000))*(r10)*(x2377)*(x2383)))+(((IkReal(-1.00000000000000))*(x2372)*(x2374)*(x2382)))+(((cj4)*(x2371)*(x2375)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2372)*(x2373)*(x2374)))+(x2368)+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2377)))+(((IkReal(-1.00000000000000))*(x2372)*(x2375)*(x2382)))+(((IkReal(-1.00000000000000))*(r00)*(x2377)*(x2383)))+(((r01)*(x2384)))+(((IkReal(-1.00000000000000))*(x2371)*(x2372)*(x2374)))+(((IkReal(-1.00000000000000))*(x2372)*(x2375)*(x2376)))+(((IkReal(-1.00000000000000))*(r12)*(x2370)*(x2372)))+(((IkReal(-1.00000000000000))*(r02)*(x2372)*(x2378)))+(((r11)*(x2385)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2386=((IkReal(1.00000000000000))*(r21)); +IkReal x2387=((cj4)*(cj5)); +IkReal x2388=((r20)*(sj6)); +if( IKabs(((gconst56)*(((((IkReal(-1.00000000000000))*(sj5)*(x2388)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2386)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst56)*(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x2387)))+(((x2387)*(x2388)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2386))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst56)*(((((IkReal(-1.00000000000000))*(sj5)*(x2388)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2386)))+(((cj5)*(r22)))))), ((gconst56)*(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x2387)))+(((x2387)*(x2388)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2386))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2389=IKsin(j3); +IkReal x2390=IKcos(j3); +IkReal x2391=((sj0)*(sj5)); +IkReal x2392=((r00)*(sj6)); +IkReal x2393=((IkReal(1.00000000000000))*(cj4)); +IkReal x2394=((cj6)*(r01)); +IkReal x2395=((cj0)*(cj5)); +IkReal x2396=((cj5)*(sj0)); +IkReal x2397=((cj6)*(r11)); +IkReal x2398=((cj6)*(sj4)); +IkReal x2399=((cj0)*(sj5)); +IkReal x2400=((cj4)*(cj5)); +IkReal x2401=((cj6)*(r21)); +IkReal x2402=((r20)*(sj6)); +IkReal x2403=((r10)*(sj6)); +IkReal x2404=((IkReal(1.00000000000000))*(cj0)); +IkReal x2405=((cj0)*(sj4)*(sj6)); +IkReal x2406=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x2389)))+(((sj5)*(x2401)))+(((sj5)*(x2402)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x2398)))+(((x2400)*(x2402)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj2)*(x2390)))+(((x2400)*(x2401)))); +evalcond[2]=((((x2391)*(x2392)))+(((IkReal(-1.00000000000000))*(r02)*(x2396)))+(((IkReal(-1.00000000000000))*(x2399)*(x2403)))+(((IkReal(-1.00000000000000))*(sj2)*(x2389)))+(((IkReal(-1.00000000000000))*(x2397)*(x2399)))+(((r12)*(x2395)))+(((x2391)*(x2394)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x2391)*(x2403)))+(((r12)*(x2396)))+(((r02)*(x2395)))+(((IkReal(-1.00000000000000))*(x2392)*(x2399)))+(x2390)+(((IkReal(-1.00000000000000))*(x2394)*(x2399)))+(((IkReal(-1.00000000000000))*(x2391)*(x2397)))); +evalcond[4]=((((cj4)*(r02)*(x2391)))+(((sj2)*(x2390)))+(((cj4)*(x2392)*(x2396)))+(((IkReal(-1.00000000000000))*(r01)*(x2406)))+(((cj4)*(x2394)*(x2396)))+(((IkReal(-1.00000000000000))*(x2393)*(x2395)*(x2397)))+(((r11)*(x2405)))+(((IkReal(-1.00000000000000))*(r10)*(x2398)*(x2404)))+(((IkReal(-1.00000000000000))*(x2393)*(x2395)*(x2403)))+(((IkReal(-1.00000000000000))*(r12)*(x2393)*(x2399)))+(((r00)*(sj0)*(x2398)))); +evalcond[5]=((x2389)+(((IkReal(-1.00000000000000))*(r00)*(x2398)*(x2404)))+(((r01)*(x2405)))+(((IkReal(-1.00000000000000))*(x2393)*(x2394)*(x2395)))+(((IkReal(-1.00000000000000))*(r12)*(x2391)*(x2393)))+(((IkReal(-1.00000000000000))*(x2393)*(x2396)*(x2397)))+(((IkReal(-1.00000000000000))*(x2393)*(x2396)*(x2403)))+(((r11)*(x2406)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2398)))+(((IkReal(-1.00000000000000))*(x2392)*(x2393)*(x2395)))+(((IkReal(-1.00000000000000))*(r02)*(x2393)*(x2399)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} +} +} + +} else +{ +IkReal x2407=((r20)*(sj6)); +IkReal x2408=((IkReal(0.0100000000000000))*(cj5)); +IkReal x2409=((IkReal(0.374290000000000))*(sj5)); +IkReal x2410=((cj6)*(r21)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(x2408)*(x2410)))+(((IkReal(-1.00000000000000))*(x2407)*(x2408)))+(((x2407)*(x2409)))+(((IkReal(-0.0100000000000000))*(r22)*(sj5)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x2409)*(x2410)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 ) +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x2411=((IkReal(0.144927536231884))*(cj0)); +IkReal x2412=((r02)*(sj5)); +IkReal x2413=((IkReal(14.4927536231884))*(cj0)); +IkReal x2414=((cj5)*(cj6)); +IkReal x2415=((cj5)*(sj6)); +IkReal x2416=((IkReal(5.42449275362319))*(sj0)); +IkReal x2417=((cj5)*(r12)); +IkReal x2418=((IkReal(14.4927536231884))*(sj0)); +IkReal x2419=((IkReal(0.144927536231884))*(sj0)); +IkReal x2420=((sj5)*(sj6)); +IkReal x2421=((IkReal(5.42449275362319))*(cj0)); +IkReal x2422=((r12)*(sj5)); +IkReal x2423=((cj5)*(r02)); +IkReal x2424=((cj6)*(r11)*(sj5)); +IkReal x2425=((IkReal(5.42449275362319))*(cj6)*(r01)*(sj5)); +if( IKabs(((((r10)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(px)*(x2418)))+(((IkReal(-1.00000000000000))*(x2411)*(x2422)))+(((r01)*(x2414)*(x2419)))+(((py)*(x2413)))+(((x2421)*(x2424)))+(((x2412)*(x2419)))+(((IkReal(-1.00000000000000))*(r11)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2416)))+(((IkReal(-1.00000000000000))*(r10)*(x2411)*(x2415)))+(((r00)*(x2415)*(x2419)))+(((IkReal(-1.00000000000000))*(x2417)*(x2421)))+(((x2416)*(x2423))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((IkReal(1.00000000000000))+(((x2411)*(x2412)))+(((IkReal(-1.00000000000000))*(px)*(x2413)))+(((r00)*(x2411)*(x2415)))+(((r11)*(x2414)*(x2419)))+(((r10)*(x2415)*(x2419)))+(((x2421)*(x2423)))+(((x2416)*(x2417)))+(((r01)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(x2416)*(x2424)))+(((x2419)*(x2422)))+(((IkReal(-1.00000000000000))*(r10)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(py)*(x2418))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r10)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(px)*(x2418)))+(((IkReal(-1.00000000000000))*(x2411)*(x2422)))+(((r01)*(x2414)*(x2419)))+(((py)*(x2413)))+(((x2421)*(x2424)))+(((x2412)*(x2419)))+(((IkReal(-1.00000000000000))*(r11)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2416)))+(((IkReal(-1.00000000000000))*(r10)*(x2411)*(x2415)))+(((r00)*(x2415)*(x2419)))+(((IkReal(-1.00000000000000))*(x2417)*(x2421)))+(((x2416)*(x2423)))))+IKsqr(((IkReal(1.00000000000000))+(((x2411)*(x2412)))+(((IkReal(-1.00000000000000))*(px)*(x2413)))+(((r00)*(x2411)*(x2415)))+(((r11)*(x2414)*(x2419)))+(((r10)*(x2415)*(x2419)))+(((x2421)*(x2423)))+(((x2416)*(x2417)))+(((r01)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(x2416)*(x2424)))+(((x2419)*(x2422)))+(((IkReal(-1.00000000000000))*(r10)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(py)*(x2418)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((r10)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(px)*(x2418)))+(((IkReal(-1.00000000000000))*(x2411)*(x2422)))+(((r01)*(x2414)*(x2419)))+(((py)*(x2413)))+(((x2421)*(x2424)))+(((x2412)*(x2419)))+(((IkReal(-1.00000000000000))*(r11)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2416)))+(((IkReal(-1.00000000000000))*(r10)*(x2411)*(x2415)))+(((r00)*(x2415)*(x2419)))+(((IkReal(-1.00000000000000))*(x2417)*(x2421)))+(((x2416)*(x2423)))), ((IkReal(1.00000000000000))+(((x2411)*(x2412)))+(((IkReal(-1.00000000000000))*(px)*(x2413)))+(((r00)*(x2411)*(x2415)))+(((r11)*(x2414)*(x2419)))+(((r10)*(x2415)*(x2419)))+(((x2421)*(x2423)))+(((x2416)*(x2417)))+(((r01)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(x2416)*(x2424)))+(((x2419)*(x2422)))+(((IkReal(-1.00000000000000))*(r10)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(py)*(x2418))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[2]; +IkReal x2426=((IkReal(0.374290000000000))*(sj0)); +IkReal x2427=((cj5)*(r02)); +IkReal x2428=((IkReal(0.0100000000000000))*(cj0)); +IkReal x2429=((cj5)*(cj6)); +IkReal x2430=((r02)*(sj5)); +IkReal x2431=((cj5)*(sj6)); +IkReal x2432=((IkReal(1.00000000000000))*(py)); +IkReal x2433=((cj6)*(sj5)); +IkReal x2434=((IkReal(0.0100000000000000))*(sj0)); +IkReal x2435=((sj5)*(sj6)); +IkReal x2436=((cj5)*(r12)); +IkReal x2437=((IkReal(0.374290000000000))*(cj0)); +IkReal x2438=((r12)*(sj5)); +IkReal x2439=((x2433)*(x2437)); +IkReal x2440=((x2435)*(x2437)); +evalcond[0]=((((x2428)*(x2438)))+(((IkReal(-1.00000000000000))*(r10)*(x2440)))+(((IkReal(-1.00000000000000))*(r00)*(x2431)*(x2434)))+(((IkReal(-1.00000000000000))*(r11)*(x2439)))+(((IkReal(-1.00000000000000))*(r01)*(x2429)*(x2434)))+(((r01)*(x2426)*(x2433)))+(((IkReal(-1.00000000000000))*(x2426)*(x2427)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((r10)*(x2428)*(x2431)))+(((r00)*(x2426)*(x2435)))+(((px)*(sj0)))+(((r11)*(x2428)*(x2429)))+(((IkReal(-1.00000000000000))*(cj0)*(x2432)))+(((IkReal(-1.00000000000000))*(x2430)*(x2434)))+(((x2436)*(x2437)))); +evalcond[1]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x2434)*(x2438)))+(((IkReal(-0.0690000000000000))*(IKcos(j2))))+(((r00)*(x2428)*(x2431)))+(((x2426)*(x2436)))+(((r10)*(x2431)*(x2434)))+(((x2427)*(x2437)))+(((IkReal(-1.00000000000000))*(r00)*(x2440)))+(((IkReal(-1.00000000000000))*(r01)*(x2439)))+(((IkReal(-1.00000000000000))*(r10)*(x2426)*(x2435)))+(((r11)*(x2429)*(x2434)))+(((x2428)*(x2430)))+(((r01)*(x2428)*(x2429)))+(((IkReal(-1.00000000000000))*(r11)*(x2426)*(x2433)))+(((IkReal(-1.00000000000000))*(sj0)*(x2432)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst65; +IkReal x2441=(cj6)*(cj6); +IkReal x2442=(sj6)*(sj6); +IkReal x2443=((IkReal(1.00000000000000))*(r21)); +IkReal x2444=((cj6)*(r20)); +IkReal x2445=((r22)*(sj5)); +IkReal x2446=((r01)*(sj0)); +IkReal x2447=((r00)*(sj0)); +IkReal x2448=((cj0)*(r10)); +IkReal x2449=((r02)*(sj0)*(sj5)); +IkReal x2450=((cj5)*(x2441)); +IkReal x2451=((cj0)*(r12)*(sj5)); +IkReal x2452=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x2453=((cj5)*(x2442)); +IkReal x2454=((r20)*(x2453)); +gconst65=IKsign(((((IkReal(-1.00000000000000))*(cj6)*(x2445)*(x2447)))+(((sj6)*(x2445)*(x2446)))+(((r21)*(x2448)*(x2450)))+(((IkReal(-1.00000000000000))*(x2443)*(x2447)*(x2453)))+(((x2446)*(x2454)))+(((IkReal(-1.00000000000000))*(x2443)*(x2447)*(x2450)))+(((r21)*(x2448)*(x2453)))+(((IkReal(-1.00000000000000))*(x2444)*(x2451)))+(((IkReal(-1.00000000000000))*(sj6)*(x2445)*(x2452)))+(((r20)*(x2446)*(x2450)))+(((IkReal(-1.00000000000000))*(x2452)*(x2454)))+(((IkReal(-1.00000000000000))*(r20)*(x2450)*(x2452)))+(((x2444)*(x2449)))+(((IkReal(-1.00000000000000))*(sj6)*(x2443)*(x2449)))+(((r21)*(sj6)*(x2451)))+(((cj6)*(x2445)*(x2448))))); +IkReal x2455=(cj6)*(cj6); +IkReal x2456=(sj6)*(sj6); +IkReal x2457=((IkReal(1.00000000000000))*(r21)); +IkReal x2458=((cj6)*(r20)); +IkReal x2459=((r22)*(sj5)); +IkReal x2460=((r01)*(sj0)); +IkReal x2461=((r00)*(sj0)); +IkReal x2462=((cj0)*(r10)); +IkReal x2463=((r02)*(sj0)*(sj5)); +IkReal x2464=((cj5)*(x2455)); +IkReal x2465=((cj0)*(r12)*(sj5)); +IkReal x2466=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x2467=((cj5)*(x2456)); +IkReal x2468=((r20)*(x2467)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x2458)*(x2465)))+(((r21)*(sj6)*(x2465)))+(((IkReal(-1.00000000000000))*(x2457)*(x2461)*(x2467)))+(((x2458)*(x2463)))+(((IkReal(-1.00000000000000))*(sj6)*(x2459)*(x2466)))+(((IkReal(-1.00000000000000))*(x2466)*(x2468)))+(((cj6)*(x2459)*(x2462)))+(((IkReal(-1.00000000000000))*(x2457)*(x2461)*(x2464)))+(((r20)*(x2460)*(x2464)))+(((r21)*(x2462)*(x2467)))+(((sj6)*(x2459)*(x2460)))+(((IkReal(-1.00000000000000))*(cj6)*(x2459)*(x2461)))+(((IkReal(-1.00000000000000))*(r20)*(x2464)*(x2466)))+(((IkReal(-1.00000000000000))*(sj6)*(x2457)*(x2463)))+(((r21)*(x2462)*(x2464)))+(((x2460)*(x2468)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst66; +IkReal x2469=(sj6)*(sj6); +IkReal x2470=(cj6)*(cj6); +IkReal x2471=((r10)*(sj0)); +IkReal x2472=((r22)*(sj5)); +IkReal x2473=((cj0)*(cj5)); +IkReal x2474=((IkReal(1.00000000000000))*(r20)); +IkReal x2475=((cj0)*(sj6)); +IkReal x2476=((r21)*(sj5)); +IkReal x2477=((sj0)*(sj6)); +IkReal x2478=((cj6)*(sj5)); +IkReal x2479=((r21)*(x2470)); +IkReal x2480=((cj5)*(r11)*(sj0)); +IkReal x2481=((r21)*(x2469)); +gconst66=IKsign(((((r12)*(x2476)*(x2477)))+(((IkReal(-1.00000000000000))*(x2470)*(x2474)*(x2480)))+(((IkReal(-1.00000000000000))*(r01)*(x2469)*(x2473)*(x2474)))+(((IkReal(-1.00000000000000))*(r01)*(x2472)*(x2475)))+(((r00)*(x2473)*(x2481)))+(((cj5)*(x2471)*(x2481)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2474)*(x2478)))+(((r02)*(x2475)*(x2476)))+(((IkReal(-1.00000000000000))*(x2469)*(x2474)*(x2480)))+(((cj5)*(x2471)*(x2479)))+(((r00)*(x2473)*(x2479)))+(((IkReal(-1.00000000000000))*(r11)*(x2472)*(x2477)))+(((cj0)*(cj6)*(r00)*(x2472)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2474)*(x2478)))+(((IkReal(-1.00000000000000))*(r01)*(x2470)*(x2473)*(x2474)))+(((cj6)*(x2471)*(x2472))))); +IkReal x2482=(sj6)*(sj6); +IkReal x2483=(cj6)*(cj6); +IkReal x2484=((r10)*(sj0)); +IkReal x2485=((r22)*(sj5)); +IkReal x2486=((cj0)*(cj5)); +IkReal x2487=((IkReal(1.00000000000000))*(r20)); +IkReal x2488=((cj0)*(sj6)); +IkReal x2489=((r21)*(sj5)); +IkReal x2490=((sj0)*(sj6)); +IkReal x2491=((cj6)*(sj5)); +IkReal x2492=((r21)*(x2483)); +IkReal x2493=((cj5)*(r11)*(sj0)); +IkReal x2494=((r21)*(x2482)); +dummyeval[0]=((((cj6)*(x2484)*(x2485)))+(((r02)*(x2488)*(x2489)))+(((r00)*(x2486)*(x2494)))+(((cj5)*(x2484)*(x2494)))+(((IkReal(-1.00000000000000))*(r01)*(x2483)*(x2486)*(x2487)))+(((IkReal(-1.00000000000000))*(x2482)*(x2487)*(x2493)))+(((IkReal(-1.00000000000000))*(x2483)*(x2487)*(x2493)))+(((IkReal(-1.00000000000000))*(r01)*(x2485)*(x2488)))+(((IkReal(-1.00000000000000))*(r01)*(x2482)*(x2486)*(x2487)))+(((cj5)*(x2484)*(x2492)))+(((IkReal(-1.00000000000000))*(r11)*(x2485)*(x2490)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2487)*(x2491)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2487)*(x2491)))+(((cj0)*(cj6)*(r00)*(x2485)))+(((r00)*(x2486)*(x2492)))+(((r12)*(x2489)*(x2490)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x2495=((cj0)*(r11)); +IkReal x2496=((r01)*(sj0)); +IkReal x2497=((cj0)*(r01)); +IkReal x2498=((IkReal(0.374290000000000))*(sj0)); +IkReal x2499=((cj5)*(r02)); +IkReal x2500=((IkReal(0.374290000000000))*(cj0)); +IkReal x2501=((r11)*(sj0)); +IkReal x2502=((IkReal(0.0100000000000000))*(cj0)); +IkReal x2503=((r02)*(sj5)); +IkReal x2504=((cj5)*(sj6)); +IkReal x2505=((IkReal(1.00000000000000))*(sj0)); +IkReal x2506=((cj5)*(r12)); +IkReal x2507=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2508=((sj5)*(sj6)); +IkReal x2509=((IkReal(1.00000000000000))*(cj0)); +IkReal x2510=((IkReal(0.0100000000000000))*(sj0)); +IkReal x2511=((IkReal(0.374290000000000))*(cj6)*(sj5)); +IkReal x2512=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x2513=((r10)*(x2508)); +IkReal x2514=((IkReal(1.00000000000000))*(cj6)*(sj5)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(0.364420000000000))+(((IkReal(0.374290000000000))*(r20)*(x2508)))+(((IkReal(-0.0100000000000000))*(r20)*(x2504)))+(((IkReal(-1.00000000000000))*(r21)*(x2512)))+(((r21)*(x2511)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x2507)))+(pz)); +evalcond[2]=((((sj0)*(x2506)))+(((IkReal(-1.00000000000000))*(x2501)*(x2514)))+(((IkReal(-1.00000000000000))*(r00)*(x2508)*(x2509)))+(((IkReal(-1.00000000000000))*(x2505)*(x2513)))+(((cj0)*(x2499)))+(((IkReal(-1.00000000000000))*(x2497)*(x2514)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x2500)*(x2513)))+(((r10)*(x2502)*(x2504)))+(((IkReal(-1.00000000000000))*(x2495)*(x2511)))+(((IkReal(-1.00000000000000))*(py)*(x2509)))+(((x2500)*(x2506)))+(((IkReal(-1.00000000000000))*(x2498)*(x2499)))+(((x2495)*(x2512)))+(((IkReal(-1.00000000000000))*(r00)*(x2504)*(x2510)))+(((x2496)*(x2511)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x2503)*(x2510)))+(((r12)*(sj5)*(x2502)))+(((r00)*(x2498)*(x2508)))+(((IkReal(-1.00000000000000))*(x2496)*(x2512)))); +evalcond[4]=((IkReal(0.0690000000000000))+(((r00)*(x2502)*(x2504)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(sj5)*(x2498)))+(((x2498)*(x2506)))+(((x2502)*(x2503)))+(((IkReal(-1.00000000000000))*(r00)*(x2500)*(x2508)))+(((r12)*(sj0)*(x2507)))+(((IkReal(-1.00000000000000))*(px)*(x2509)))+(((IkReal(-1.00000000000000))*(x2497)*(x2511)))+(((x2501)*(x2512)))+(((x2499)*(x2500)))+(((x2497)*(x2512)))+(((IkReal(-1.00000000000000))*(py)*(x2505)))+(((r10)*(x2504)*(x2510)))+(((IkReal(-1.00000000000000))*(x2498)*(x2513)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2515=((sj5)*(sj6)); +IkReal x2516=((cj6)*(sj5)); +IkReal x2517=((IkReal(1.00000000000000))*(cj0)); +IkReal x2518=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r11)*(x2516)*(x2517)))+(((r00)*(sj0)*(x2515)))+(((IkReal(-1.00000000000000))*(r10)*(x2515)*(x2517)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2518)))+(((cj0)*(cj5)*(r12)))+(((r01)*(sj0)*(x2516))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r20)*(x2515)))+(((r21)*(x2516)))+(((IkReal(-1.00000000000000))*(r22)*(x2518))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r11)*(x2516)*(x2517)))+(((r00)*(sj0)*(x2515)))+(((IkReal(-1.00000000000000))*(r10)*(x2515)*(x2517)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2518)))+(((cj0)*(cj5)*(r12)))+(((r01)*(sj0)*(x2516)))))+IKsqr(((((r20)*(x2515)))+(((r21)*(x2516)))+(((IkReal(-1.00000000000000))*(r22)*(x2518)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r11)*(x2516)*(x2517)))+(((r00)*(sj0)*(x2515)))+(((IkReal(-1.00000000000000))*(r10)*(x2515)*(x2517)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2518)))+(((cj0)*(cj5)*(r12)))+(((r01)*(sj0)*(x2516)))), ((((r20)*(x2515)))+(((r21)*(x2516)))+(((IkReal(-1.00000000000000))*(r22)*(x2518))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x2519=((sj5)*(sj6)); +IkReal x2520=((cj6)*(sj5)); +IkReal x2521=((IkReal(1.00000000000000))*(cj0)); +IkReal x2522=((IkReal(1.00000000000000))*(cj5)); +evalcond[0]=((((r21)*(x2520)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((r20)*(x2519)))+(((IkReal(-1.00000000000000))*(r22)*(x2522)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2522)))+(((IkReal(-1.00000000000000))*(r11)*(x2520)*(x2521)))+(((r01)*(sj0)*(x2520)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x2519)*(x2521)))+(((r00)*(sj0)*(x2519)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst71; +IkReal x2523=(r21)*(r21); +IkReal x2524=(cj5)*(cj5); +IkReal x2525=(sj6)*(sj6); +IkReal x2526=(cj6)*(cj6); +IkReal x2527=(r20)*(r20); +IkReal x2528=((cj6)*(r21)); +IkReal x2529=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2530=((cj5)*(r22)*(sj5)); +IkReal x2531=((IkReal(1.00000000000000))*(x2525)); +IkReal x2532=((IkReal(1.00000000000000))*(x2526)); +gconst71=IKsign(((((IkReal(-1.00000000000000))*(x2523)*(x2531)))+(((IkReal(-2.00000000000000))*(x2528)*(x2530)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x2523)*(x2524)*(x2532)))+(((IkReal(-1.00000000000000))*(x2527)*(x2532)))+(((IkReal(-1.00000000000000))*(x2524)*(x2527)*(x2531)))+(((x2528)*(x2529)))+(((IkReal(-1.00000000000000))*(x2524)*(x2528)*(x2529)))+(((IkReal(-1.00000000000000))*(x2529)*(x2530))))); +IkReal x2533=(r21)*(r21); +IkReal x2534=(cj5)*(cj5); +IkReal x2535=(sj6)*(sj6); +IkReal x2536=(cj6)*(cj6); +IkReal x2537=(r20)*(r20); +IkReal x2538=((cj6)*(r21)); +IkReal x2539=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2540=((cj5)*(r22)*(sj5)); +IkReal x2541=((IkReal(1.00000000000000))*(x2535)); +IkReal x2542=((IkReal(1.00000000000000))*(x2536)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x2533)*(x2534)*(x2542)))+(((IkReal(-2.00000000000000))*(x2538)*(x2540)))+(((IkReal(-1.00000000000000))*(x2533)*(x2541)))+(((IkReal(-1.00000000000000))*(x2534)*(x2537)*(x2541)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x2534)*(x2538)*(x2539)))+(((x2538)*(x2539)))+(((IkReal(-1.00000000000000))*(x2537)*(x2542)))+(((IkReal(-1.00000000000000))*(x2539)*(x2540)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst72; +IkReal x2543=(sj6)*(sj6); +IkReal x2544=(cj5)*(cj5); +IkReal x2545=(cj6)*(cj6); +IkReal x2546=(sj5)*(sj5); +IkReal x2547=((r01)*(sj0)); +IkReal x2548=((cj0)*(sj6)); +IkReal x2549=((cj6)*(r21)); +IkReal x2550=((r22)*(sj0)); +IkReal x2551=((cj5)*(sj5)); +IkReal x2552=((r00)*(sj6)); +IkReal x2553=((IkReal(1.00000000000000))*(cj0)); +IkReal x2554=((cj6)*(r22)); +IkReal x2555=((r02)*(sj0)); +IkReal x2556=((r20)*(sj6)); +IkReal x2557=((IkReal(1.00000000000000))*(cj6)); +IkReal x2558=((r00)*(sj0)); +IkReal x2559=((r21)*(x2544)); +IkReal x2560=((IkReal(1.00000000000000))*(x2551)); +IkReal x2561=((r21)*(x2543)); +IkReal x2562=((cj6)*(r11)*(r20)); +IkReal x2563=((r20)*(x2545)); +IkReal x2564=((r20)*(x2543)*(x2544)); +gconst72=IKsign(((((IkReal(-1.00000000000000))*(r11)*(x2551)*(x2553)*(x2554)))+(((x2558)*(x2563)))+(((x2558)*(x2564)))+(((cj6)*(x2544)*(x2547)*(x2556)))+(((IkReal(-1.00000000000000))*(x2547)*(x2556)*(x2557)))+(((x2547)*(x2561)))+(((x2550)*(x2551)*(x2552)))+(((r10)*(x2548)*(x2549)))+(((IkReal(-1.00000000000000))*(r11)*(r20)*(x2544)*(x2548)*(x2557)))+(((r02)*(x2546)*(x2550)))+(((IkReal(-1.00000000000000))*(r12)*(x2549)*(x2551)*(x2553)))+(((IkReal(-1.00000000000000))*(r11)*(x2545)*(x2553)*(x2559)))+(((IkReal(-1.00000000000000))*(r12)*(r20)*(x2548)*(x2560)))+(((x2549)*(x2551)*(x2555)))+(((x2547)*(x2551)*(x2554)))+(((IkReal(-1.00000000000000))*(r12)*(r22)*(x2546)*(x2553)))+(((x2548)*(x2562)))+(((sj0)*(x2544)*(x2549)*(x2552)))+(((IkReal(-1.00000000000000))*(r10)*(x2544)*(x2548)*(x2549)))+(((IkReal(-1.00000000000000))*(r10)*(x2553)*(x2563)))+(((IkReal(-1.00000000000000))*(r10)*(x2553)*(x2564)))+(((IkReal(-1.00000000000000))*(r10)*(r22)*(x2548)*(x2560)))+(((x2545)*(x2547)*(x2559)))+(((IkReal(-1.00000000000000))*(sj0)*(x2549)*(x2552)))+(((x2551)*(x2555)*(x2556)))+(((IkReal(-1.00000000000000))*(r11)*(x2553)*(x2561))))); +IkReal x2565=(sj6)*(sj6); +IkReal x2566=(cj5)*(cj5); +IkReal x2567=(cj6)*(cj6); +IkReal x2568=(sj5)*(sj5); +IkReal x2569=((r01)*(sj0)); +IkReal x2570=((cj0)*(sj6)); +IkReal x2571=((cj6)*(r21)); +IkReal x2572=((r22)*(sj0)); +IkReal x2573=((cj5)*(sj5)); +IkReal x2574=((r00)*(sj6)); +IkReal x2575=((IkReal(1.00000000000000))*(cj0)); +IkReal x2576=((cj6)*(r22)); +IkReal x2577=((r02)*(sj0)); +IkReal x2578=((r20)*(sj6)); +IkReal x2579=((IkReal(1.00000000000000))*(cj6)); +IkReal x2580=((r00)*(sj0)); +IkReal x2581=((r21)*(x2566)); +IkReal x2582=((IkReal(1.00000000000000))*(x2573)); +IkReal x2583=((r21)*(x2565)); +IkReal x2584=((cj6)*(r11)*(r20)); +IkReal x2585=((r20)*(x2567)); +IkReal x2586=((r20)*(x2565)*(x2566)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r11)*(x2567)*(x2575)*(x2581)))+(((x2580)*(x2585)))+(((cj6)*(x2566)*(x2569)*(x2578)))+(((IkReal(-1.00000000000000))*(sj0)*(x2571)*(x2574)))+(((x2569)*(x2583)))+(((IkReal(-1.00000000000000))*(r12)*(x2571)*(x2573)*(x2575)))+(((IkReal(-1.00000000000000))*(r12)*(r20)*(x2570)*(x2582)))+(((IkReal(-1.00000000000000))*(r11)*(r20)*(x2566)*(x2570)*(x2579)))+(((IkReal(-1.00000000000000))*(r10)*(x2575)*(x2585)))+(((x2570)*(x2584)))+(((x2580)*(x2586)))+(((x2567)*(x2569)*(x2581)))+(((IkReal(-1.00000000000000))*(x2569)*(x2578)*(x2579)))+(((x2571)*(x2573)*(x2577)))+(((x2572)*(x2573)*(x2574)))+(((sj0)*(x2566)*(x2571)*(x2574)))+(((IkReal(-1.00000000000000))*(r12)*(r22)*(x2568)*(x2575)))+(((IkReal(-1.00000000000000))*(r10)*(r22)*(x2570)*(x2582)))+(((IkReal(-1.00000000000000))*(r10)*(x2566)*(x2570)*(x2571)))+(((r02)*(x2568)*(x2572)))+(((IkReal(-1.00000000000000))*(r11)*(x2573)*(x2575)*(x2576)))+(((x2569)*(x2573)*(x2576)))+(((x2573)*(x2577)*(x2578)))+(((IkReal(-1.00000000000000))*(r11)*(x2575)*(x2583)))+(((IkReal(-1.00000000000000))*(r10)*(x2575)*(x2586)))+(((r10)*(x2570)*(x2571)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2587=((IkReal(1.00000000000000))*(cj3)); +IkReal x2588=((cj5)*(x2587)); +if( IKabs(((gconst72)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2587)))+(((cj3)*(r21)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst72)*(((((IkReal(-1.00000000000000))*(cj6)*(r21)*(x2588)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x2588)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2587))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst72)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2587)))+(((cj3)*(r21)*(sj6)))))), ((gconst72)*(((((IkReal(-1.00000000000000))*(cj6)*(r21)*(x2588)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x2588)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2587))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2589=IKsin(j4); +IkReal x2590=IKcos(j4); +IkReal x2591=((r22)*(sj5)); +IkReal x2592=((IkReal(1.00000000000000))*(cj6)); +IkReal x2593=((IkReal(1.00000000000000))*(cj0)); +IkReal x2594=((cj5)*(r11)); +IkReal x2595=((cj5)*(cj6)); +IkReal x2596=((r11)*(sj6)); +IkReal x2597=((IkReal(1.00000000000000))*(sj6)); +IkReal x2598=((cj6)*(r00)); +IkReal x2599=((r12)*(sj5)); +IkReal x2600=((r02)*(sj5)); +IkReal x2601=((cj6)*(r10)); +IkReal x2602=((cj5)*(sj6)); +IkReal x2603=((cj5)*(r01)); +IkReal x2604=((sj0)*(x2589)); +IkReal x2605=((r00)*(x2602)); +IkReal x2606=((cj0)*(x2589)); +IkReal x2607=((sj0)*(x2590)); +IkReal x2608=((r20)*(x2590)); +IkReal x2609=((cj0)*(x2590)); +IkReal x2610=((r21)*(x2589)); +IkReal x2611=((r21)*(x2590)); +IkReal x2612=((r20)*(x2589)); +IkReal x2613=((x2590)*(x2599)); +IkReal x2614=((r01)*(sj6)*(x2590)); +IkReal x2615=((cj5)*(r10)*(x2597)); +evalcond[0]=((((sj6)*(x2611)))+(((IkReal(-1.00000000000000))*(x2592)*(x2608)))+(((x2602)*(x2612)))+(((x2595)*(x2610)))+(((x2589)*(x2591)))); +evalcond[1]=((((x2602)*(x2608)))+(((x2590)*(x2591)))+(((IkReal(-1.00000000000000))*(x2597)*(x2610)))+(((cj6)*(x2612)))+(((IkReal(-1.00000000000000))*(sj3)))+(((x2595)*(x2611)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2589)*(x2593)*(x2599)))+(((IkReal(-1.00000000000000))*(r10)*(x2589)*(x2593)*(x2602)))+(((x2600)*(x2604)))+(((x2604)*(x2605)))+(((IkReal(-1.00000000000000))*(r00)*(x2592)*(x2607)))+(((r01)*(x2595)*(x2604)))+(((IkReal(-1.00000000000000))*(x2592)*(x2594)*(x2606)))+(((IkReal(-1.00000000000000))*(x2590)*(x2593)*(x2596)))+(((x2601)*(x2609)))+(((r01)*(sj6)*(x2607)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x2592)*(x2606)))+(((IkReal(-1.00000000000000))*(x2593)*(x2613)))+(((IkReal(-1.00000000000000))*(r10)*(x2590)*(x2593)*(x2602)))+(((IkReal(-1.00000000000000))*(x2592)*(x2594)*(x2609)))+(cj3)+(((x2600)*(x2607)))+(((x2598)*(x2604)))+(((IkReal(-1.00000000000000))*(r01)*(x2597)*(x2604)))+(((r01)*(x2595)*(x2607)))+(((x2605)*(x2607)))+(((x2596)*(x2606)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x2604)*(x2615)))+(((IkReal(-1.00000000000000))*(x2589)*(x2593)*(x2600)))+(((IkReal(-1.00000000000000))*(x2589)*(x2593)*(x2605)))+(((IkReal(-1.00000000000000))*(x2592)*(x2594)*(x2604)))+(((IkReal(-1.00000000000000))*(x2592)*(x2603)*(x2606)))+(((IkReal(-1.00000000000000))*(x2599)*(x2604)))+(((x2601)*(x2607)))+(((IkReal(-1.00000000000000))*(x2596)*(x2607)))+(((x2598)*(x2609)))+(((IkReal(-1.00000000000000))*(x2593)*(x2614)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2607)*(x2615)))+(((r01)*(sj6)*(x2606)))+(((IkReal(-1.00000000000000))*(r00)*(x2592)*(x2606)))+(((IkReal(-1.00000000000000))*(x2592)*(x2603)*(x2609)))+(((IkReal(-1.00000000000000))*(x2590)*(x2593)*(x2600)))+(((IkReal(-1.00000000000000))*(x2599)*(x2607)))+(((IkReal(-1.00000000000000))*(x2590)*(x2593)*(x2605)))+(((IkReal(-1.00000000000000))*(x2592)*(x2594)*(x2607)))+(((x2596)*(x2604)))+(((IkReal(-1.00000000000000))*(r10)*(x2592)*(x2604)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2616=((r21)*(sj3)); +IkReal x2617=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst71)*(((((IkReal(-1.00000000000000))*(cj6)*(x2617)))+(((sj6)*(x2616))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst71)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2617)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2616)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst71)*(((((IkReal(-1.00000000000000))*(cj6)*(x2617)))+(((sj6)*(x2616)))))), ((gconst71)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2617)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2616)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2618=IKsin(j4); +IkReal x2619=IKcos(j4); +IkReal x2620=((r22)*(sj5)); +IkReal x2621=((IkReal(1.00000000000000))*(cj6)); +IkReal x2622=((IkReal(1.00000000000000))*(cj0)); +IkReal x2623=((cj5)*(r11)); +IkReal x2624=((cj5)*(cj6)); +IkReal x2625=((r11)*(sj6)); +IkReal x2626=((IkReal(1.00000000000000))*(sj6)); +IkReal x2627=((cj6)*(r00)); +IkReal x2628=((r12)*(sj5)); +IkReal x2629=((r02)*(sj5)); +IkReal x2630=((cj6)*(r10)); +IkReal x2631=((cj5)*(sj6)); +IkReal x2632=((cj5)*(r01)); +IkReal x2633=((sj0)*(x2618)); +IkReal x2634=((r00)*(x2631)); +IkReal x2635=((cj0)*(x2618)); +IkReal x2636=((sj0)*(x2619)); +IkReal x2637=((r20)*(x2619)); +IkReal x2638=((cj0)*(x2619)); +IkReal x2639=((r21)*(x2618)); +IkReal x2640=((r21)*(x2619)); +IkReal x2641=((r20)*(x2618)); +IkReal x2642=((x2619)*(x2628)); +IkReal x2643=((r01)*(sj6)*(x2619)); +IkReal x2644=((cj5)*(r10)*(x2626)); +evalcond[0]=((((sj6)*(x2640)))+(((IkReal(-1.00000000000000))*(x2621)*(x2637)))+(((x2631)*(x2641)))+(((x2618)*(x2620)))+(((x2624)*(x2639)))); +evalcond[1]=((((x2624)*(x2640)))+(((IkReal(-1.00000000000000))*(x2626)*(x2639)))+(((x2619)*(x2620)))+(((x2631)*(x2637)))+(((cj6)*(x2641)))+(((IkReal(-1.00000000000000))*(sj3)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2618)*(x2622)*(x2628)))+(((IkReal(-1.00000000000000))*(x2621)*(x2623)*(x2635)))+(((IkReal(-1.00000000000000))*(r00)*(x2621)*(x2636)))+(((r01)*(sj6)*(x2636)))+(((x2633)*(x2634)))+(((x2630)*(x2638)))+(((IkReal(-1.00000000000000))*(x2619)*(x2622)*(x2625)))+(((r01)*(x2624)*(x2633)))+(((x2629)*(x2633)))+(((IkReal(-1.00000000000000))*(r10)*(x2618)*(x2622)*(x2631)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x2621)*(x2635)))+(((IkReal(-1.00000000000000))*(r01)*(x2626)*(x2633)))+(((r01)*(x2624)*(x2636)))+(((x2629)*(x2636)))+(((IkReal(-1.00000000000000))*(x2622)*(x2642)))+(((x2634)*(x2636)))+(cj3)+(((x2627)*(x2633)))+(((x2625)*(x2635)))+(((IkReal(-1.00000000000000))*(x2621)*(x2623)*(x2638)))+(((IkReal(-1.00000000000000))*(r10)*(x2619)*(x2622)*(x2631)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x2618)*(x2622)*(x2629)))+(((x2630)*(x2636)))+(((IkReal(-1.00000000000000))*(x2628)*(x2633)))+(((IkReal(-1.00000000000000))*(x2621)*(x2623)*(x2633)))+(((IkReal(-1.00000000000000))*(x2625)*(x2636)))+(((x2627)*(x2638)))+(((IkReal(-1.00000000000000))*(x2633)*(x2644)))+(((IkReal(-1.00000000000000))*(x2621)*(x2632)*(x2635)))+(((IkReal(-1.00000000000000))*(x2622)*(x2643)))+(((IkReal(-1.00000000000000))*(x2618)*(x2622)*(x2634)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x2621)*(x2635)))+(((x2625)*(x2633)))+(((IkReal(-1.00000000000000))*(r10)*(x2621)*(x2633)))+(((IkReal(-1.00000000000000))*(x2621)*(x2632)*(x2638)))+(((IkReal(-1.00000000000000))*(x2636)*(x2644)))+(((IkReal(-1.00000000000000))*(x2619)*(x2622)*(x2629)))+(((IkReal(-1.00000000000000))*(x2619)*(x2622)*(x2634)))+(((IkReal(-1.00000000000000))*(x2621)*(x2623)*(x2636)))+(((r01)*(sj6)*(x2635)))+(((IkReal(-1.00000000000000))*(x2628)*(x2636)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x2645=((cj0)*(r11)); +IkReal x2646=((r01)*(sj0)); +IkReal x2647=((cj0)*(r01)); +IkReal x2648=((IkReal(0.374290000000000))*(sj0)); +IkReal x2649=((cj5)*(r02)); +IkReal x2650=((IkReal(0.374290000000000))*(cj0)); +IkReal x2651=((r11)*(sj0)); +IkReal x2652=((IkReal(0.0100000000000000))*(cj0)); +IkReal x2653=((r02)*(sj5)); +IkReal x2654=((cj5)*(sj6)); +IkReal x2655=((IkReal(1.00000000000000))*(sj0)); +IkReal x2656=((cj5)*(r12)); +IkReal x2657=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2658=((sj5)*(sj6)); +IkReal x2659=((IkReal(1.00000000000000))*(cj0)); +IkReal x2660=((IkReal(0.0100000000000000))*(sj0)); +IkReal x2661=((IkReal(0.374290000000000))*(cj6)*(sj5)); +IkReal x2662=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x2663=((r10)*(x2658)); +IkReal x2664=((IkReal(1.00000000000000))*(cj6)*(sj5)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(0.364420000000000))+(((IkReal(-0.0100000000000000))*(r20)*(x2654)))+(((IkReal(-1.00000000000000))*(r21)*(x2662)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(0.374290000000000))*(r20)*(x2658)))+(((IkReal(-1.00000000000000))*(r22)*(x2657)))+(pz)+(((r21)*(x2661)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2651)*(x2664)))+(((IkReal(-1.00000000000000))*(r00)*(x2658)*(x2659)))+(((IkReal(-1.00000000000000))*(x2647)*(x2664)))+(((sj0)*(x2656)))+(((cj0)*(x2649)))+(((IkReal(-1.00000000000000))*(x2655)*(x2663)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x2648)*(x2649)))+(((r10)*(x2652)*(x2654)))+(((IkReal(-1.00000000000000))*(x2650)*(x2663)))+(((x2645)*(x2662)))+(((IkReal(-1.00000000000000))*(x2646)*(x2662)))+(((IkReal(-1.00000000000000))*(x2645)*(x2661)))+(((IkReal(-1.00000000000000))*(r00)*(x2654)*(x2660)))+(((IkReal(-1.00000000000000))*(py)*(x2659)))+(((r12)*(sj5)*(x2652)))+(((x2650)*(x2656)))+(((r00)*(x2648)*(x2658)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x2653)*(x2660)))+(((x2646)*(x2661)))); +evalcond[4]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x2648)*(x2663)))+(((x2648)*(x2656)))+(((x2651)*(x2662)))+(((x2652)*(x2653)))+(((IkReal(-1.00000000000000))*(px)*(x2659)))+(((x2649)*(x2650)))+(((r10)*(x2654)*(x2660)))+(((r12)*(sj0)*(x2657)))+(((x2647)*(x2662)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(sj5)*(x2648)))+(((r00)*(x2652)*(x2654)))+(((IkReal(-1.00000000000000))*(r00)*(x2650)*(x2658)))+(((IkReal(-1.00000000000000))*(x2647)*(x2661)))+(((IkReal(-1.00000000000000))*(py)*(x2655)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2665=((sj5)*(sj6)); +IkReal x2666=((IkReal(1.00000000000000))*(cj5)); +IkReal x2667=((IkReal(1.00000000000000))*(sj0)); +IkReal x2668=((cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2666)))+(((cj0)*(r11)*(x2668)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x2667)*(x2668)))+(((cj0)*(r10)*(x2665)))+(((IkReal(-1.00000000000000))*(r00)*(x2665)*(x2667))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r20)*(x2665)))+(((IkReal(-1.00000000000000))*(r22)*(x2666)))+(((r21)*(x2668))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2666)))+(((cj0)*(r11)*(x2668)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x2667)*(x2668)))+(((cj0)*(r10)*(x2665)))+(((IkReal(-1.00000000000000))*(r00)*(x2665)*(x2667)))))+IKsqr(((((r20)*(x2665)))+(((IkReal(-1.00000000000000))*(r22)*(x2666)))+(((r21)*(x2668)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2666)))+(((cj0)*(r11)*(x2668)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x2667)*(x2668)))+(((cj0)*(r10)*(x2665)))+(((IkReal(-1.00000000000000))*(r00)*(x2665)*(x2667)))), ((((r20)*(x2665)))+(((IkReal(-1.00000000000000))*(r22)*(x2666)))+(((r21)*(x2668))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x2669=((sj5)*(sj6)); +IkReal x2670=((cj6)*(sj5)); +IkReal x2671=((IkReal(1.00000000000000))*(cj0)); +IkReal x2672=((IkReal(1.00000000000000))*(cj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(IKcos(j3))))+(((r21)*(x2670)))+(((IkReal(-1.00000000000000))*(r22)*(x2672)))+(((r20)*(x2669)))); +evalcond[1]=((((r00)*(sj0)*(x2669)))+(((IkReal(-1.00000000000000))*(r10)*(x2669)*(x2671)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2672)))+(((r01)*(sj0)*(x2670)))+(((IkReal(-1.00000000000000))*(r11)*(x2670)*(x2671)))+(IKsin(j3))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst75; +IkReal x2673=(r21)*(r21); +IkReal x2674=(cj5)*(cj5); +IkReal x2675=(sj6)*(sj6); +IkReal x2676=(cj6)*(cj6); +IkReal x2677=(r20)*(r20); +IkReal x2678=((cj6)*(r21)); +IkReal x2679=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2680=((cj5)*(r22)*(sj5)); +IkReal x2681=((IkReal(1.00000000000000))*(x2675)); +IkReal x2682=((IkReal(1.00000000000000))*(x2676)); +gconst75=IKsign(((((x2678)*(x2679)))+(((IkReal(-1.00000000000000))*(x2674)*(x2677)*(x2681)))+(((IkReal(-1.00000000000000))*(x2673)*(x2681)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x2679)*(x2680)))+(((IkReal(-2.00000000000000))*(x2678)*(x2680)))+(((IkReal(-1.00000000000000))*(x2674)*(x2678)*(x2679)))+(((IkReal(-1.00000000000000))*(x2677)*(x2682)))+(((IkReal(-1.00000000000000))*(x2673)*(x2674)*(x2682))))); +IkReal x2683=(r21)*(r21); +IkReal x2684=(cj5)*(cj5); +IkReal x2685=(sj6)*(sj6); +IkReal x2686=(cj6)*(cj6); +IkReal x2687=(r20)*(r20); +IkReal x2688=((cj6)*(r21)); +IkReal x2689=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2690=((cj5)*(r22)*(sj5)); +IkReal x2691=((IkReal(1.00000000000000))*(x2685)); +IkReal x2692=((IkReal(1.00000000000000))*(x2686)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x2689)*(x2690)))+(((IkReal(-1.00000000000000))*(x2683)*(x2691)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((x2688)*(x2689)))+(((IkReal(-1.00000000000000))*(x2683)*(x2684)*(x2692)))+(((IkReal(-2.00000000000000))*(x2688)*(x2690)))+(((IkReal(-1.00000000000000))*(x2684)*(x2687)*(x2691)))+(((IkReal(-1.00000000000000))*(x2684)*(x2688)*(x2689)))+(((IkReal(-1.00000000000000))*(x2687)*(x2692)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst76; +IkReal x2693=(cj6)*(cj6); +IkReal x2694=(cj5)*(cj5); +IkReal x2695=(sj6)*(sj6); +IkReal x2696=(sj5)*(sj5); +IkReal x2697=((cj0)*(r12)); +IkReal x2698=((cj6)*(sj6)); +IkReal x2699=((cj0)*(r21)); +IkReal x2700=((cj0)*(r11)); +IkReal x2701=((IkReal(1.00000000000000))*(r20)); +IkReal x2702=((r01)*(sj0)); +IkReal x2703=((r00)*(sj0)); +IkReal x2704=((IkReal(1.00000000000000))*(r22)); +IkReal x2705=((cj0)*(r10)); +IkReal x2706=((r02)*(sj0)); +IkReal x2707=((r22)*(x2696)); +IkReal x2708=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x2709=((cj5)*(cj6)*(sj5)); +IkReal x2710=((cj5)*(sj5)*(sj6)); +IkReal x2711=((cj0)*(r20)*(x2694)); +IkReal x2712=((x2693)*(x2694)); +gconst76=IKsign(((((IkReal(-1.00000000000000))*(r10)*(x2698)*(x2699)))+(((x2697)*(x2707)))+(((r21)*(x2698)*(x2703)))+(((IkReal(-1.00000000000000))*(x2698)*(x2700)*(x2701)))+(((r20)*(x2694)*(x2698)*(x2700)))+(((r20)*(x2694)*(x2695)*(x2705)))+(((IkReal(-1.00000000000000))*(x2696)*(x2704)*(x2706)))+(((IkReal(-1.00000000000000))*(x2701)*(x2706)*(x2710)))+(((r20)*(x2693)*(x2705)))+(((IkReal(-1.00000000000000))*(r21)*(x2706)*(x2709)))+(((IkReal(-1.00000000000000))*(x2693)*(x2701)*(x2703)))+(((r22)*(x2705)*(x2710)))+(((IkReal(-1.00000000000000))*(x2694)*(x2698)*(x2701)*(x2702)))+(((r21)*(x2697)*(x2709)))+(((IkReal(-1.00000000000000))*(x2703)*(x2704)*(x2710)))+(((IkReal(-1.00000000000000))*(x2694)*(x2695)*(x2701)*(x2703)))+(((IkReal(-1.00000000000000))*(x2702)*(x2704)*(x2709)))+(((r20)*(x2698)*(x2702)))+(((r10)*(x2694)*(x2698)*(x2699)))+(((r11)*(x2695)*(x2699)))+(((IkReal(-1.00000000000000))*(r21)*(x2702)*(x2712)))+(((IkReal(-1.00000000000000))*(r21)*(x2694)*(x2698)*(x2703)))+(((r20)*(x2697)*(x2710)))+(((r22)*(x2700)*(x2709)))+(((IkReal(-1.00000000000000))*(r21)*(x2695)*(x2702)))+(((r11)*(x2699)*(x2712))))); +IkReal x2713=(cj6)*(cj6); +IkReal x2714=(cj5)*(cj5); +IkReal x2715=(sj6)*(sj6); +IkReal x2716=(sj5)*(sj5); +IkReal x2717=((cj0)*(r12)); +IkReal x2718=((cj6)*(sj6)); +IkReal x2719=((cj0)*(r21)); +IkReal x2720=((cj0)*(r11)); +IkReal x2721=((IkReal(1.00000000000000))*(r20)); +IkReal x2722=((r01)*(sj0)); +IkReal x2723=((r00)*(sj0)); +IkReal x2724=((IkReal(1.00000000000000))*(r22)); +IkReal x2725=((cj0)*(r10)); +IkReal x2726=((r02)*(sj0)); +IkReal x2727=((r22)*(x2716)); +IkReal x2728=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x2729=((cj5)*(cj6)*(sj5)); +IkReal x2730=((cj5)*(sj5)*(sj6)); +IkReal x2731=((cj0)*(r20)*(x2714)); +IkReal x2732=((x2713)*(x2714)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x2714)*(x2715)*(x2721)*(x2723)))+(((r22)*(x2725)*(x2730)))+(((IkReal(-1.00000000000000))*(x2714)*(x2718)*(x2721)*(x2722)))+(((IkReal(-1.00000000000000))*(r21)*(x2715)*(x2722)))+(((r11)*(x2715)*(x2719)))+(((x2717)*(x2727)))+(((IkReal(-1.00000000000000))*(x2723)*(x2724)*(x2730)))+(((IkReal(-1.00000000000000))*(x2722)*(x2724)*(x2729)))+(((r21)*(x2717)*(x2729)))+(((IkReal(-1.00000000000000))*(r10)*(x2718)*(x2719)))+(((r11)*(x2719)*(x2732)))+(((r21)*(x2718)*(x2723)))+(((IkReal(-1.00000000000000))*(x2713)*(x2721)*(x2723)))+(((IkReal(-1.00000000000000))*(x2716)*(x2724)*(x2726)))+(((r20)*(x2714)*(x2715)*(x2725)))+(((r10)*(x2714)*(x2718)*(x2719)))+(((r20)*(x2713)*(x2725)))+(((IkReal(-1.00000000000000))*(x2718)*(x2720)*(x2721)))+(((r20)*(x2718)*(x2722)))+(((IkReal(-1.00000000000000))*(r21)*(x2714)*(x2718)*(x2723)))+(((IkReal(-1.00000000000000))*(r21)*(x2726)*(x2729)))+(((IkReal(-1.00000000000000))*(x2721)*(x2726)*(x2730)))+(((r20)*(x2714)*(x2718)*(x2720)))+(((r20)*(x2717)*(x2730)))+(((r22)*(x2720)*(x2729)))+(((IkReal(-1.00000000000000))*(r21)*(x2722)*(x2732)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2733=((IkReal(1.00000000000000))*(cj3)); +IkReal x2734=((cj5)*(x2733)); +if( IKabs(((gconst76)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2733)))+(((cj3)*(r21)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst76)*(((((IkReal(-1.00000000000000))*(r20)*(sj6)*(x2734)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2733)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x2734))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst76)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2733)))+(((cj3)*(r21)*(sj6)))))), ((gconst76)*(((((IkReal(-1.00000000000000))*(r20)*(sj6)*(x2734)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2733)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x2734))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2735=IKsin(j4); +IkReal x2736=IKcos(j4); +IkReal x2737=((r22)*(sj5)); +IkReal x2738=((IkReal(1.00000000000000))*(cj6)); +IkReal x2739=((IkReal(1.00000000000000))*(cj0)); +IkReal x2740=((cj5)*(r11)); +IkReal x2741=((cj5)*(cj6)); +IkReal x2742=((r11)*(sj6)); +IkReal x2743=((IkReal(1.00000000000000))*(sj6)); +IkReal x2744=((cj6)*(r00)); +IkReal x2745=((r12)*(sj5)); +IkReal x2746=((r02)*(sj5)); +IkReal x2747=((cj6)*(r10)); +IkReal x2748=((cj5)*(sj6)); +IkReal x2749=((cj5)*(r01)); +IkReal x2750=((sj0)*(x2735)); +IkReal x2751=((r00)*(x2748)); +IkReal x2752=((cj0)*(x2735)); +IkReal x2753=((sj0)*(x2736)); +IkReal x2754=((r20)*(x2736)); +IkReal x2755=((cj0)*(x2736)); +IkReal x2756=((r21)*(x2735)); +IkReal x2757=((r21)*(x2736)); +IkReal x2758=((r20)*(x2735)); +IkReal x2759=((x2736)*(x2745)); +IkReal x2760=((r01)*(sj6)*(x2736)); +IkReal x2761=((cj5)*(r10)*(x2743)); +evalcond[0]=((((x2748)*(x2758)))+(((x2735)*(x2737)))+(((x2741)*(x2756)))+(((IkReal(-1.00000000000000))*(x2738)*(x2754)))+(((sj6)*(x2757)))); +evalcond[1]=((((x2736)*(x2737)))+(((x2741)*(x2757)))+(((x2748)*(x2754)))+(((cj6)*(x2758)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(x2743)*(x2756)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2736)*(x2739)*(x2742)))+(((IkReal(-1.00000000000000))*(r00)*(x2738)*(x2753)))+(((x2750)*(x2751)))+(((r01)*(x2741)*(x2750)))+(((IkReal(-1.00000000000000))*(r10)*(x2735)*(x2739)*(x2748)))+(((IkReal(-1.00000000000000))*(x2738)*(x2740)*(x2752)))+(((x2746)*(x2750)))+(((x2747)*(x2755)))+(((IkReal(-1.00000000000000))*(x2735)*(x2739)*(x2745)))+(((r01)*(sj6)*(x2753)))); +evalcond[3]=((((x2751)*(x2753)))+(((IkReal(-1.00000000000000))*(x2738)*(x2740)*(x2755)))+(((IkReal(-1.00000000000000))*(x2739)*(x2759)))+(((IkReal(-1.00000000000000))*(r10)*(x2738)*(x2752)))+(((IkReal(-1.00000000000000))*(r10)*(x2736)*(x2739)*(x2748)))+(((x2744)*(x2750)))+(((x2746)*(x2753)))+(((r01)*(x2741)*(x2753)))+(((x2742)*(x2752)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(r01)*(x2743)*(x2750)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x2739)*(x2760)))+(((IkReal(-1.00000000000000))*(x2745)*(x2750)))+(((IkReal(-1.00000000000000))*(x2735)*(x2739)*(x2746)))+(((IkReal(-1.00000000000000))*(x2742)*(x2753)))+(((IkReal(-1.00000000000000))*(x2735)*(x2739)*(x2751)))+(((IkReal(-1.00000000000000))*(x2738)*(x2740)*(x2750)))+(((IkReal(-1.00000000000000))*(x2750)*(x2761)))+(((IkReal(-1.00000000000000))*(x2738)*(x2749)*(x2752)))+(((x2744)*(x2755)))+(((x2747)*(x2753)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2736)*(x2739)*(x2751)))+(((r01)*(sj6)*(x2752)))+(((IkReal(-1.00000000000000))*(x2738)*(x2740)*(x2753)))+(((x2742)*(x2750)))+(((IkReal(-1.00000000000000))*(x2745)*(x2753)))+(((IkReal(-1.00000000000000))*(x2738)*(x2749)*(x2755)))+(((IkReal(-1.00000000000000))*(x2736)*(x2739)*(x2746)))+(((IkReal(-1.00000000000000))*(x2753)*(x2761)))+(((IkReal(-1.00000000000000))*(r00)*(x2738)*(x2752)))+(((IkReal(-1.00000000000000))*(r10)*(x2738)*(x2750)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2762=((r21)*(sj3)); +IkReal x2763=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst75)*(((((IkReal(-1.00000000000000))*(cj6)*(x2763)))+(((sj6)*(x2762))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst75)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2762)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2763)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst75)*(((((IkReal(-1.00000000000000))*(cj6)*(x2763)))+(((sj6)*(x2762)))))), ((gconst75)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2762)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2763)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2764=IKsin(j4); +IkReal x2765=IKcos(j4); +IkReal x2766=((r22)*(sj5)); +IkReal x2767=((IkReal(1.00000000000000))*(cj6)); +IkReal x2768=((IkReal(1.00000000000000))*(cj0)); +IkReal x2769=((cj5)*(r11)); +IkReal x2770=((cj5)*(cj6)); +IkReal x2771=((r11)*(sj6)); +IkReal x2772=((IkReal(1.00000000000000))*(sj6)); +IkReal x2773=((cj6)*(r00)); +IkReal x2774=((r12)*(sj5)); +IkReal x2775=((r02)*(sj5)); +IkReal x2776=((cj6)*(r10)); +IkReal x2777=((cj5)*(sj6)); +IkReal x2778=((cj5)*(r01)); +IkReal x2779=((sj0)*(x2764)); +IkReal x2780=((r00)*(x2777)); +IkReal x2781=((cj0)*(x2764)); +IkReal x2782=((sj0)*(x2765)); +IkReal x2783=((r20)*(x2765)); +IkReal x2784=((cj0)*(x2765)); +IkReal x2785=((r21)*(x2764)); +IkReal x2786=((r21)*(x2765)); +IkReal x2787=((r20)*(x2764)); +IkReal x2788=((x2765)*(x2774)); +IkReal x2789=((r01)*(sj6)*(x2765)); +IkReal x2790=((cj5)*(r10)*(x2772)); +evalcond[0]=((((sj6)*(x2786)))+(((x2777)*(x2787)))+(((IkReal(-1.00000000000000))*(x2767)*(x2783)))+(((x2764)*(x2766)))+(((x2770)*(x2785)))); +evalcond[1]=((((x2770)*(x2786)))+(((x2765)*(x2766)))+(((x2777)*(x2783)))+(((IkReal(-1.00000000000000))*(sj3)))+(((cj6)*(x2787)))+(((IkReal(-1.00000000000000))*(x2772)*(x2785)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2767)*(x2769)*(x2781)))+(((IkReal(-1.00000000000000))*(x2764)*(x2768)*(x2774)))+(((r01)*(sj6)*(x2782)))+(((IkReal(-1.00000000000000))*(x2765)*(x2768)*(x2771)))+(((IkReal(-1.00000000000000))*(r10)*(x2764)*(x2768)*(x2777)))+(((x2779)*(x2780)))+(((x2775)*(x2779)))+(((r01)*(x2770)*(x2779)))+(((x2776)*(x2784)))+(((IkReal(-1.00000000000000))*(r00)*(x2767)*(x2782)))); +evalcond[3]=((((r01)*(x2770)*(x2782)))+(((x2773)*(x2779)))+(((IkReal(-1.00000000000000))*(x2767)*(x2769)*(x2784)))+(((IkReal(-1.00000000000000))*(r10)*(x2767)*(x2781)))+(((IkReal(-1.00000000000000))*(r10)*(x2765)*(x2768)*(x2777)))+(((x2780)*(x2782)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x2775)*(x2782)))+(((IkReal(-1.00000000000000))*(r01)*(x2772)*(x2779)))+(((x2771)*(x2781)))+(((IkReal(-1.00000000000000))*(x2768)*(x2788)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x2776)*(x2782)))+(((IkReal(-1.00000000000000))*(x2764)*(x2768)*(x2775)))+(((IkReal(-1.00000000000000))*(x2774)*(x2779)))+(((IkReal(-1.00000000000000))*(x2764)*(x2768)*(x2780)))+(((IkReal(-1.00000000000000))*(x2767)*(x2778)*(x2781)))+(((x2773)*(x2784)))+(((IkReal(-1.00000000000000))*(x2771)*(x2782)))+(((IkReal(-1.00000000000000))*(x2768)*(x2789)))+(((IkReal(-1.00000000000000))*(x2779)*(x2790)))+(((IkReal(-1.00000000000000))*(x2767)*(x2769)*(x2779)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2767)*(x2778)*(x2784)))+(((r01)*(sj6)*(x2781)))+(((IkReal(-1.00000000000000))*(r10)*(x2767)*(x2779)))+(((IkReal(-1.00000000000000))*(x2765)*(x2768)*(x2780)))+(((IkReal(-1.00000000000000))*(x2767)*(x2769)*(x2782)))+(((IkReal(-1.00000000000000))*(x2774)*(x2782)))+(((x2771)*(x2779)))+(((IkReal(-1.00000000000000))*(x2782)*(x2790)))+(((IkReal(-1.00000000000000))*(r00)*(x2767)*(x2781)))+(((IkReal(-1.00000000000000))*(x2765)*(x2768)*(x2775)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2791=((sj5)*(sj6)); +IkReal x2792=((IkReal(1.00000000000000))*(cj5)); +IkReal x2793=((cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj0)*(r00)*(x2791)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2792)))+(((r11)*(sj0)*(x2793)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2792)))+(((r10)*(sj0)*(x2791)))+(((cj0)*(r01)*(x2793))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r22)*(x2792)))+(((r21)*(x2793)))+(((r20)*(x2791))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj0)*(r00)*(x2791)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2792)))+(((r11)*(sj0)*(x2793)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2792)))+(((r10)*(sj0)*(x2791)))+(((cj0)*(r01)*(x2793)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r22)*(x2792)))+(((r21)*(x2793)))+(((r20)*(x2791)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj0)*(r00)*(x2791)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2792)))+(((r11)*(sj0)*(x2793)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2792)))+(((r10)*(sj0)*(x2791)))+(((cj0)*(r01)*(x2793)))))), ((((IkReal(-1.00000000000000))*(r22)*(x2792)))+(((r21)*(x2793)))+(((r20)*(x2791))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x2794=IKsin(j3); +IkReal x2795=((sj5)*(sj6)); +IkReal x2796=((cj0)*(cj5)); +IkReal x2797=((IkReal(1.00000000000000))*(cj0)); +IkReal x2798=((IkReal(1.00000000000000))*(sj0)); +IkReal x2799=((cj6)*(r01)*(sj5)); +IkReal x2800=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((r20)*(x2795)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r10)*(x2795)*(x2797)))+(((sj0)*(x2799)))+(((r12)*(x2796)))+(((IkReal(-1.00000000000000))*(x2797)*(x2800)))+(((r00)*(sj0)*(x2795)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x2798)))+(((IkReal(-1.00000000000000))*(sj2)*(x2794)))); +evalcond[2]=((((cj2)*(x2794)))+(((IkReal(-1.00000000000000))*(x2797)*(x2799)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x2795)*(x2797)))+(((IkReal(-1.00000000000000))*(x2798)*(x2800)))+(((IkReal(-1.00000000000000))*(r10)*(x2795)*(x2798)))+(((r02)*(x2796)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst67; +IkReal x2801=(r21)*(r21); +IkReal x2802=(cj5)*(cj5); +IkReal x2803=(sj6)*(sj6); +IkReal x2804=(cj6)*(cj6); +IkReal x2805=(r20)*(r20); +IkReal x2806=((cj6)*(r21)); +IkReal x2807=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2808=((cj5)*(r22)*(sj5)); +IkReal x2809=((IkReal(1.00000000000000))*(x2803)); +IkReal x2810=((IkReal(1.00000000000000))*(x2804)); +gconst67=IKsign(((((IkReal(-1.00000000000000))*(x2807)*(x2808)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x2802)*(x2805)*(x2809)))+(((IkReal(-1.00000000000000))*(x2805)*(x2810)))+(((IkReal(-1.00000000000000))*(x2801)*(x2809)))+(((IkReal(-1.00000000000000))*(x2802)*(x2806)*(x2807)))+(((x2806)*(x2807)))+(((IkReal(-2.00000000000000))*(x2806)*(x2808)))+(((IkReal(-1.00000000000000))*(x2801)*(x2802)*(x2810))))); +IkReal x2811=(r21)*(r21); +IkReal x2812=(cj5)*(cj5); +IkReal x2813=(sj6)*(sj6); +IkReal x2814=(cj6)*(cj6); +IkReal x2815=(r20)*(r20); +IkReal x2816=((cj6)*(r21)); +IkReal x2817=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2818=((cj5)*(r22)*(sj5)); +IkReal x2819=((IkReal(1.00000000000000))*(x2813)); +IkReal x2820=((IkReal(1.00000000000000))*(x2814)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x2817)*(x2818)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x2811)*(x2819)))+(((IkReal(-1.00000000000000))*(x2815)*(x2820)))+(((IkReal(-1.00000000000000))*(x2812)*(x2816)*(x2817)))+(((IkReal(-1.00000000000000))*(x2812)*(x2815)*(x2819)))+(((x2816)*(x2817)))+(((IkReal(-1.00000000000000))*(x2811)*(x2812)*(x2820)))+(((IkReal(-2.00000000000000))*(x2816)*(x2818)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst68; +IkReal x2821=(cj6)*(cj6); +IkReal x2822=(sj6)*(sj6); +IkReal x2823=((IkReal(1.00000000000000))*(r21)); +IkReal x2824=((cj6)*(r20)); +IkReal x2825=((r22)*(sj5)); +IkReal x2826=((r01)*(sj0)); +IkReal x2827=((r00)*(sj0)); +IkReal x2828=((cj0)*(r10)); +IkReal x2829=((r02)*(sj0)*(sj5)); +IkReal x2830=((cj5)*(x2821)); +IkReal x2831=((cj0)*(r12)*(sj5)); +IkReal x2832=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x2833=((cj5)*(x2822)); +IkReal x2834=((r20)*(x2833)); +gconst68=IKsign(((((cj6)*(x2825)*(x2828)))+(((IkReal(-1.00000000000000))*(x2823)*(x2827)*(x2833)))+(((IkReal(-1.00000000000000))*(sj6)*(x2823)*(x2829)))+(((IkReal(-1.00000000000000))*(sj6)*(x2825)*(x2832)))+(((IkReal(-1.00000000000000))*(x2832)*(x2834)))+(((IkReal(-1.00000000000000))*(cj6)*(x2825)*(x2827)))+(((x2826)*(x2834)))+(((r20)*(x2826)*(x2830)))+(((IkReal(-1.00000000000000))*(x2824)*(x2831)))+(((x2824)*(x2829)))+(((r21)*(x2828)*(x2833)))+(((IkReal(-1.00000000000000))*(x2823)*(x2827)*(x2830)))+(((sj6)*(x2825)*(x2826)))+(((r21)*(sj6)*(x2831)))+(((r21)*(x2828)*(x2830)))+(((IkReal(-1.00000000000000))*(r20)*(x2830)*(x2832))))); +IkReal x2835=(cj6)*(cj6); +IkReal x2836=(sj6)*(sj6); +IkReal x2837=((IkReal(1.00000000000000))*(r21)); +IkReal x2838=((cj6)*(r20)); +IkReal x2839=((r22)*(sj5)); +IkReal x2840=((r01)*(sj0)); +IkReal x2841=((r00)*(sj0)); +IkReal x2842=((cj0)*(r10)); +IkReal x2843=((r02)*(sj0)*(sj5)); +IkReal x2844=((cj5)*(x2835)); +IkReal x2845=((cj0)*(r12)*(sj5)); +IkReal x2846=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x2847=((cj5)*(x2836)); +IkReal x2848=((r20)*(x2847)); +dummyeval[0]=((((x2838)*(x2843)))+(((IkReal(-1.00000000000000))*(sj6)*(x2839)*(x2846)))+(((r21)*(x2842)*(x2847)))+(((cj6)*(x2839)*(x2842)))+(((IkReal(-1.00000000000000))*(cj6)*(x2839)*(x2841)))+(((r21)*(x2842)*(x2844)))+(((IkReal(-1.00000000000000))*(x2837)*(x2841)*(x2844)))+(((r20)*(x2840)*(x2844)))+(((sj6)*(x2839)*(x2840)))+(((x2840)*(x2848)))+(((IkReal(-1.00000000000000))*(x2838)*(x2845)))+(((IkReal(-1.00000000000000))*(sj6)*(x2837)*(x2843)))+(((r21)*(sj6)*(x2845)))+(((IkReal(-1.00000000000000))*(x2846)*(x2848)))+(((IkReal(-1.00000000000000))*(r20)*(x2844)*(x2846)))+(((IkReal(-1.00000000000000))*(x2837)*(x2841)*(x2847)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2849=((cj2)*(sj6)); +IkReal x2850=((IkReal(1.00000000000000))*(r20)); +IkReal x2851=((cj2)*(cj6)); +if( IKabs(((gconst68)*(((((r21)*(x2849)))+(((IkReal(-1.00000000000000))*(x2850)*(x2851))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst68)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x2851)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(x2849)*(x2850))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst68)*(((((r21)*(x2849)))+(((IkReal(-1.00000000000000))*(x2850)*(x2851)))))), ((gconst68)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x2851)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(x2849)*(x2850))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2852=IKsin(j4); +IkReal x2853=IKcos(j4); +IkReal x2854=((r00)*(sj6)); +IkReal x2855=((IkReal(1.00000000000000))*(r12)); +IkReal x2856=((IkReal(1.00000000000000))*(cj6)); +IkReal x2857=((cj6)*(r01)); +IkReal x2858=((r11)*(sj6)); +IkReal x2859=((r01)*(sj6)); +IkReal x2860=((IkReal(1.00000000000000))*(cj5)); +IkReal x2861=((r10)*(sj6)); +IkReal x2862=((cj5)*(r11)); +IkReal x2863=((cj6)*(r00)); +IkReal x2864=((r21)*(sj6)); +IkReal x2865=((r02)*(sj5)); +IkReal x2866=((cj6)*(r10)); +IkReal x2867=((cj5)*(sj6)); +IkReal x2868=((cj5)*(r01)); +IkReal x2869=((sj5)*(x2852)); +IkReal x2870=((cj0)*(x2853)); +IkReal x2871=((cj0)*(x2852)); +IkReal x2872=((sj0)*(x2853)); +IkReal x2873=((sj0)*(x2852)); +IkReal x2874=((r20)*(x2853)); +IkReal x2875=((cj5)*(cj6)*(r21)); +IkReal x2876=((r20)*(x2852)); +IkReal x2877=((cj5)*(x2873)); +evalcond[0]=((((r22)*(x2869)))+(((x2852)*(x2875)))+(((IkReal(-1.00000000000000))*(x2856)*(x2874)))+(((x2853)*(x2864)))+(((x2867)*(x2876)))); +evalcond[1]=((((cj6)*(x2876)))+(((IkReal(-1.00000000000000))*(x2852)*(x2864)))+(((x2867)*(x2874)))+(((IkReal(-1.00000000000000))*(sj3)))+(((r22)*(sj5)*(x2853)))+(((x2853)*(x2875)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x2856)*(x2872)))+(((IkReal(-1.00000000000000))*(cj0)*(x2855)*(x2869)))+(((IkReal(-1.00000000000000))*(x2858)*(x2870)))+(((x2857)*(x2877)))+(((x2865)*(x2873)))+(((IkReal(-1.00000000000000))*(x2856)*(x2862)*(x2871)))+(cj2)+(((x2859)*(x2872)))+(((x2854)*(x2877)))+(((IkReal(-1.00000000000000))*(x2860)*(x2861)*(x2871)))+(((x2866)*(x2870)))); +evalcond[3]=((((x2865)*(x2872)))+(((x2858)*(x2871)))+(((IkReal(-1.00000000000000))*(x2856)*(x2862)*(x2870)))+(((cj5)*(x2857)*(x2872)))+(((x2863)*(x2873)))+(((IkReal(-1.00000000000000))*(x2859)*(x2873)))+(((cj3)*(sj2)))+(((cj5)*(x2854)*(x2872)))+(((IkReal(-1.00000000000000))*(r10)*(x2856)*(x2871)))+(((IkReal(-1.00000000000000))*(sj5)*(x2855)*(x2870)))+(((IkReal(-1.00000000000000))*(x2860)*(x2861)*(x2870)))); +evalcond[4]=((((x2866)*(x2872)))+(((IkReal(-1.00000000000000))*(x2856)*(x2868)*(x2871)))+(sj2)+(((IkReal(-1.00000000000000))*(x2859)*(x2870)))+(((IkReal(-1.00000000000000))*(x2860)*(x2861)*(x2873)))+(((IkReal(-1.00000000000000))*(x2854)*(x2860)*(x2871)))+(((IkReal(-1.00000000000000))*(x2856)*(x2862)*(x2873)))+(((IkReal(-1.00000000000000))*(x2858)*(x2872)))+(((x2863)*(x2870)))+(((IkReal(-1.00000000000000))*(sj0)*(x2855)*(x2869)))+(((IkReal(-1.00000000000000))*(x2865)*(x2871)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x2856)*(x2873)))+(((IkReal(-1.00000000000000))*(r00)*(x2856)*(x2871)))+(((IkReal(-1.00000000000000))*(x2860)*(x2861)*(x2872)))+(((IkReal(-1.00000000000000))*(sj5)*(x2855)*(x2872)))+(((IkReal(-1.00000000000000))*(x2856)*(x2868)*(x2870)))+(((x2859)*(x2871)))+(((IkReal(-1.00000000000000))*(x2865)*(x2870)))+(((x2858)*(x2873)))+(((IkReal(-1.00000000000000))*(x2854)*(x2860)*(x2870)))+(((IkReal(-1.00000000000000))*(x2856)*(x2862)*(x2872)))+(((IkReal(-1.00000000000000))*(cj2)*(cj3)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2878=((r21)*(sj3)); +IkReal x2879=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst67)*(((((IkReal(-1.00000000000000))*(cj6)*(x2879)))+(((sj6)*(x2878))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst67)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2878)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2879)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst67)*(((((IkReal(-1.00000000000000))*(cj6)*(x2879)))+(((sj6)*(x2878)))))), ((gconst67)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2878)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2879)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2880=IKsin(j4); +IkReal x2881=IKcos(j4); +IkReal x2882=((r00)*(sj6)); +IkReal x2883=((IkReal(1.00000000000000))*(r12)); +IkReal x2884=((IkReal(1.00000000000000))*(cj6)); +IkReal x2885=((cj6)*(r01)); +IkReal x2886=((r11)*(sj6)); +IkReal x2887=((r01)*(sj6)); +IkReal x2888=((IkReal(1.00000000000000))*(cj5)); +IkReal x2889=((r10)*(sj6)); +IkReal x2890=((cj5)*(r11)); +IkReal x2891=((cj6)*(r00)); +IkReal x2892=((r21)*(sj6)); +IkReal x2893=((r02)*(sj5)); +IkReal x2894=((cj6)*(r10)); +IkReal x2895=((cj5)*(sj6)); +IkReal x2896=((cj5)*(r01)); +IkReal x2897=((sj5)*(x2880)); +IkReal x2898=((cj0)*(x2881)); +IkReal x2899=((cj0)*(x2880)); +IkReal x2900=((sj0)*(x2881)); +IkReal x2901=((sj0)*(x2880)); +IkReal x2902=((r20)*(x2881)); +IkReal x2903=((cj5)*(cj6)*(r21)); +IkReal x2904=((r20)*(x2880)); +IkReal x2905=((cj5)*(x2901)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x2884)*(x2902)))+(((r22)*(x2897)))+(((x2895)*(x2904)))+(((x2880)*(x2903)))+(((x2881)*(x2892)))); +evalcond[1]=((((x2881)*(x2903)))+(((x2895)*(x2902)))+(((cj6)*(x2904)))+(((r22)*(sj5)*(x2881)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(x2880)*(x2892)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2886)*(x2898)))+(((IkReal(-1.00000000000000))*(r00)*(x2884)*(x2900)))+(((x2894)*(x2898)))+(((x2885)*(x2905)))+(((IkReal(-1.00000000000000))*(x2888)*(x2889)*(x2899)))+(((IkReal(-1.00000000000000))*(x2884)*(x2890)*(x2899)))+(((x2893)*(x2901)))+(cj2)+(((IkReal(-1.00000000000000))*(cj0)*(x2883)*(x2897)))+(((x2882)*(x2905)))+(((x2887)*(x2900)))); +evalcond[3]=((((x2893)*(x2900)))+(((cj5)*(x2885)*(x2900)))+(((IkReal(-1.00000000000000))*(x2888)*(x2889)*(x2898)))+(((cj5)*(x2882)*(x2900)))+(((IkReal(-1.00000000000000))*(x2887)*(x2901)))+(((IkReal(-1.00000000000000))*(sj5)*(x2883)*(x2898)))+(((IkReal(-1.00000000000000))*(x2884)*(x2890)*(x2898)))+(((x2886)*(x2899)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(r10)*(x2884)*(x2899)))+(((x2891)*(x2901)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x2886)*(x2900)))+(((IkReal(-1.00000000000000))*(sj0)*(x2883)*(x2897)))+(((IkReal(-1.00000000000000))*(x2882)*(x2888)*(x2899)))+(sj2)+(((IkReal(-1.00000000000000))*(x2888)*(x2889)*(x2901)))+(((IkReal(-1.00000000000000))*(x2893)*(x2899)))+(((IkReal(-1.00000000000000))*(x2887)*(x2898)))+(((IkReal(-1.00000000000000))*(x2884)*(x2896)*(x2899)))+(((x2891)*(x2898)))+(((x2894)*(x2900)))+(((IkReal(-1.00000000000000))*(x2884)*(x2890)*(x2901)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x2884)*(x2901)))+(((IkReal(-1.00000000000000))*(sj5)*(x2883)*(x2900)))+(((IkReal(-1.00000000000000))*(x2884)*(x2890)*(x2900)))+(((IkReal(-1.00000000000000))*(x2888)*(x2889)*(x2900)))+(((IkReal(-1.00000000000000))*(x2884)*(x2896)*(x2898)))+(((IkReal(-1.00000000000000))*(r00)*(x2884)*(x2899)))+(((x2887)*(x2899)))+(((IkReal(-1.00000000000000))*(x2882)*(x2888)*(x2898)))+(((x2886)*(x2901)))+(((IkReal(-1.00000000000000))*(x2893)*(x2898)))+(((IkReal(-1.00000000000000))*(cj2)*(cj3)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2906=((IkReal(1.00000000000000))*(sj2)); +if( IKabs(((gconst66)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2906)))+(((r21)*(sj2)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst66)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2906)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(r21)*(x2906)))+(((IkReal(-1.00000000000000))*(cj5)*(r20)*(sj6)*(x2906))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst66)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2906)))+(((r21)*(sj2)*(sj6)))))), ((gconst66)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2906)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(r21)*(x2906)))+(((IkReal(-1.00000000000000))*(cj5)*(r20)*(sj6)*(x2906))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x2907=IKsin(j4); +IkReal x2908=IKcos(j4); +IkReal x2909=((r00)*(sj6)); +IkReal x2910=((cj6)*(r01)); +IkReal x2911=((IkReal(1.00000000000000))*(cj0)); +IkReal x2912=((IkReal(1.00000000000000))*(sj0)); +IkReal x2913=((r10)*(sj6)); +IkReal x2914=((sj5)*(x2907)); +IkReal x2915=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x2916=((cj5)*(x2907)); +IkReal x2917=((cj6)*(x2908)); +IkReal x2918=((sj0)*(x2916)); +IkReal x2919=((r01)*(sj6)*(x2908)); +IkReal x2920=((r11)*(sj6)*(x2908)); +evalcond[0]=((((cj6)*(r21)*(x2916)))+(((IkReal(-1.00000000000000))*(r20)*(x2917)))+(((r22)*(x2914)))+(((r21)*(sj6)*(x2908)))+(((r20)*(sj6)*(x2916)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x2911)*(x2913)*(x2916)))+(((IkReal(-1.00000000000000))*(x2911)*(x2920)))+(((cj0)*(r10)*(x2917)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2911)*(x2916)))+(((IkReal(-1.00000000000000))*(r00)*(x2912)*(x2917)))+(((x2910)*(x2918)))+(cj2)+(((IkReal(-1.00000000000000))*(r12)*(x2911)*(x2914)))+(((r02)*(sj0)*(x2914)))+(((sj0)*(x2919)))+(((x2909)*(x2918)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2909)*(x2911)*(x2916)))+(((IkReal(-1.00000000000000))*(x2912)*(x2920)))+(((cj0)*(r00)*(x2917)))+(sj2)+(((IkReal(-1.00000000000000))*(x2910)*(x2911)*(x2916)))+(((IkReal(-1.00000000000000))*(r02)*(x2911)*(x2914)))+(((IkReal(-1.00000000000000))*(x2912)*(x2913)*(x2916)))+(((IkReal(-1.00000000000000))*(x2911)*(x2919)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2912)*(x2916)))+(((IkReal(-1.00000000000000))*(r12)*(x2912)*(x2914)))+(((r10)*(sj0)*(x2917)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2921=((r20)*(sj6)); +IkReal x2922=((cj4)*(cj5)); +IkReal x2923=((cj6)*(r21)); +if( IKabs(((((x2922)*(x2923)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2921)*(x2922))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x2923)))+(((sj5)*(x2921)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x2922)*(x2923)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2921)*(x2922)))))+IKsqr(((((sj5)*(x2923)))+(((sj5)*(x2921)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x2922)*(x2923)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2921)*(x2922)))), ((((sj5)*(x2923)))+(((sj5)*(x2921)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2924=IKsin(j3); +IkReal x2925=IKcos(j3); +IkReal x2926=((sj0)*(sj5)); +IkReal x2927=((r00)*(sj6)); +IkReal x2928=((cj6)*(r01)); +IkReal x2929=((cj4)*(cj5)); +IkReal x2930=((IkReal(1.00000000000000))*(cj0)); +IkReal x2931=((cj5)*(r12)); +IkReal x2932=((IkReal(1.00000000000000))*(sj0)); +IkReal x2933=((cj6)*(r11)); +IkReal x2934=((cj6)*(sj4)); +IkReal x2935=((cj5)*(r02)); +IkReal x2936=((cj6)*(r21)); +IkReal x2937=((r20)*(sj6)); +IkReal x2938=((r10)*(sj6)); +IkReal x2939=((sj4)*(sj6)); +IkReal x2940=((cj4)*(r02)); +IkReal x2941=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x2942=((cj0)*(x2939)); +IkReal x2943=((IkReal(1.00000000000000))*(x2924)); +IkReal x2944=((IkReal(1.00000000000000))*(x2925)); +evalcond[0]=((((sj5)*(x2937)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x2944)))+(((sj5)*(x2936)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x2939)))+(((x2929)*(x2936)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x2943)))+(((r20)*(x2934)))+(((x2929)*(x2937)))); +evalcond[2]=((((x2926)*(x2927)))+(((cj0)*(x2931)))+(((IkReal(-1.00000000000000))*(sj5)*(x2930)*(x2938)))+(((IkReal(-1.00000000000000))*(x2932)*(x2935)))+(((IkReal(-1.00000000000000))*(sj5)*(x2930)*(x2933)))+(((x2926)*(x2928)))+(((IkReal(-1.00000000000000))*(sj2)*(x2943)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x2926)*(x2938)))+(((cj2)*(x2924)))+(((IkReal(-1.00000000000000))*(sj5)*(x2928)*(x2930)))+(((IkReal(-1.00000000000000))*(x2926)*(x2933)))+(((cj0)*(x2935)))+(((sj0)*(x2931)))+(((IkReal(-1.00000000000000))*(sj5)*(x2927)*(x2930)))); +evalcond[4]=((((x2926)*(x2940)))+(((IkReal(-1.00000000000000))*(r01)*(x2932)*(x2939)))+(((r11)*(x2942)))+(((sj0)*(x2928)*(x2929)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x2930)))+(((r00)*(sj0)*(x2934)))+(((sj0)*(x2927)*(x2929)))+(((IkReal(-1.00000000000000))*(x2929)*(x2930)*(x2933)))+(((IkReal(-1.00000000000000))*(r10)*(x2930)*(x2934)))+(((IkReal(-1.00000000000000))*(x2929)*(x2930)*(x2938)))+(((sj2)*(x2925)))); +evalcond[5]=((((r11)*(sj0)*(x2939)))+(((IkReal(-1.00000000000000))*(x2927)*(x2929)*(x2930)))+(((r01)*(x2942)))+(((IkReal(-1.00000000000000))*(r10)*(x2932)*(x2934)))+(((IkReal(-1.00000000000000))*(x2926)*(x2941)))+(((IkReal(-1.00000000000000))*(r00)*(x2930)*(x2934)))+(((IkReal(-1.00000000000000))*(sj5)*(x2930)*(x2940)))+(((IkReal(-1.00000000000000))*(x2929)*(x2932)*(x2933)))+(((IkReal(-1.00000000000000))*(x2928)*(x2929)*(x2930)))+(((IkReal(-1.00000000000000))*(cj2)*(x2944)))+(((IkReal(-1.00000000000000))*(x2929)*(x2932)*(x2938)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2945=((cj2)*(sj6)); +IkReal x2946=((IkReal(1.00000000000000))*(r20)); +IkReal x2947=((cj2)*(cj6)); +if( IKabs(((gconst65)*(((((IkReal(-1.00000000000000))*(x2946)*(x2947)))+(((r21)*(x2945))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst65)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x2947)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(x2945)*(x2946))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst65)*(((((IkReal(-1.00000000000000))*(x2946)*(x2947)))+(((r21)*(x2945)))))), ((gconst65)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x2947)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(x2945)*(x2946))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x2948=IKsin(j4); +IkReal x2949=IKcos(j4); +IkReal x2950=((r00)*(sj6)); +IkReal x2951=((cj6)*(r01)); +IkReal x2952=((IkReal(1.00000000000000))*(cj0)); +IkReal x2953=((IkReal(1.00000000000000))*(sj0)); +IkReal x2954=((r10)*(sj6)); +IkReal x2955=((sj5)*(x2948)); +IkReal x2956=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x2957=((cj5)*(x2948)); +IkReal x2958=((cj6)*(x2949)); +IkReal x2959=((sj0)*(x2957)); +IkReal x2960=((r01)*(sj6)*(x2949)); +IkReal x2961=((r11)*(sj6)*(x2949)); +evalcond[0]=((((r20)*(sj6)*(x2957)))+(((cj6)*(r21)*(x2957)))+(((r22)*(x2955)))+(((IkReal(-1.00000000000000))*(r20)*(x2958)))+(((r21)*(sj6)*(x2949)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x2952)*(x2954)*(x2957)))+(((IkReal(-1.00000000000000))*(r12)*(x2952)*(x2955)))+(((IkReal(-1.00000000000000))*(r00)*(x2953)*(x2958)))+(((x2950)*(x2959)))+(((x2951)*(x2959)))+(cj2)+(((sj0)*(x2960)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2952)*(x2957)))+(((IkReal(-1.00000000000000))*(x2952)*(x2961)))+(((cj0)*(r10)*(x2958)))+(((r02)*(sj0)*(x2955)))); +evalcond[2]=((sj2)+(((IkReal(-1.00000000000000))*(x2950)*(x2952)*(x2957)))+(((IkReal(-1.00000000000000))*(x2951)*(x2952)*(x2957)))+(((cj0)*(r00)*(x2958)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2953)*(x2957)))+(((IkReal(-1.00000000000000))*(r12)*(x2953)*(x2955)))+(((IkReal(-1.00000000000000))*(x2953)*(x2961)))+(((r10)*(sj0)*(x2958)))+(((IkReal(-1.00000000000000))*(x2952)*(x2960)))+(((IkReal(-1.00000000000000))*(x2953)*(x2954)*(x2957)))+(((IkReal(-1.00000000000000))*(r02)*(x2952)*(x2955)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2962=((r20)*(sj6)); +IkReal x2963=((cj4)*(cj5)); +IkReal x2964=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x2962)*(x2963)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2963)*(x2964))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x2962)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x2964))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x2962)*(x2963)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2963)*(x2964)))))+IKsqr(((((sj5)*(x2962)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x2964)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x2962)*(x2963)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2963)*(x2964)))), ((((sj5)*(x2962)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x2964))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2965=IKsin(j3); +IkReal x2966=IKcos(j3); +IkReal x2967=((sj0)*(sj5)); +IkReal x2968=((r00)*(sj6)); +IkReal x2969=((cj6)*(r01)); +IkReal x2970=((cj4)*(cj5)); +IkReal x2971=((IkReal(1.00000000000000))*(cj0)); +IkReal x2972=((cj5)*(r12)); +IkReal x2973=((IkReal(1.00000000000000))*(sj0)); +IkReal x2974=((cj6)*(r11)); +IkReal x2975=((cj6)*(sj4)); +IkReal x2976=((cj5)*(r02)); +IkReal x2977=((cj6)*(r21)); +IkReal x2978=((r20)*(sj6)); +IkReal x2979=((r10)*(sj6)); +IkReal x2980=((sj4)*(sj6)); +IkReal x2981=((cj4)*(r02)); +IkReal x2982=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x2983=((cj0)*(x2980)); +IkReal x2984=((IkReal(1.00000000000000))*(x2965)); +IkReal x2985=((IkReal(1.00000000000000))*(x2966)); +evalcond[0]=((((sj5)*(x2978)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x2985)))+(((sj5)*(x2977)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x2984)))+(((cj4)*(r22)*(sj5)))+(((x2970)*(x2977)))+(((IkReal(-1.00000000000000))*(r21)*(x2980)))+(((r20)*(x2975)))+(((x2970)*(x2978)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x2984)))+(((IkReal(-1.00000000000000))*(x2973)*(x2976)))+(((IkReal(-1.00000000000000))*(sj5)*(x2971)*(x2979)))+(((cj0)*(x2972)))+(((x2967)*(x2968)))+(((x2967)*(x2969)))+(((IkReal(-1.00000000000000))*(sj5)*(x2971)*(x2974)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x2968)*(x2971)))+(((IkReal(-1.00000000000000))*(x2967)*(x2974)))+(((IkReal(-1.00000000000000))*(sj5)*(x2969)*(x2971)))+(((sj0)*(x2972)))+(((cj0)*(x2976)))+(((IkReal(-1.00000000000000))*(x2967)*(x2979)))+(((cj2)*(x2965)))); +evalcond[4]=((((sj0)*(x2969)*(x2970)))+(((IkReal(-1.00000000000000))*(r01)*(x2973)*(x2980)))+(((r11)*(x2983)))+(((IkReal(-1.00000000000000))*(r10)*(x2971)*(x2975)))+(((IkReal(-1.00000000000000))*(x2970)*(x2971)*(x2979)))+(((x2967)*(x2981)))+(((sj0)*(x2968)*(x2970)))+(((IkReal(-1.00000000000000))*(x2970)*(x2971)*(x2974)))+(((r00)*(sj0)*(x2975)))+(((sj2)*(x2966)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x2971)))); +evalcond[5]=((((r01)*(x2983)))+(((IkReal(-1.00000000000000))*(sj5)*(x2971)*(x2981)))+(((IkReal(-1.00000000000000))*(r10)*(x2973)*(x2975)))+(((IkReal(-1.00000000000000))*(r00)*(x2971)*(x2975)))+(((IkReal(-1.00000000000000))*(x2967)*(x2982)))+(((IkReal(-1.00000000000000))*(x2970)*(x2973)*(x2979)))+(((IkReal(-1.00000000000000))*(x2969)*(x2970)*(x2971)))+(((r11)*(sj0)*(x2980)))+(((IkReal(-1.00000000000000))*(x2968)*(x2970)*(x2971)))+(((IkReal(-1.00000000000000))*(cj2)*(x2985)))+(((IkReal(-1.00000000000000))*(x2970)*(x2973)*(x2974)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} +} +} + +} + +} +} +} + +} else +{ +IkReal x2986=((r20)*(sj6)); +IkReal x2987=((IkReal(0.0100000000000000))*(cj5)); +IkReal x2988=((IkReal(0.374290000000000))*(sj5)); +IkReal x2989=((cj6)*(r21)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(-0.364420000000000))+(((x2988)*(x2989)))+(((IkReal(-1.00000000000000))*(x2986)*(x2987)))+(((IkReal(-0.0100000000000000))*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x2987)*(x2989)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x2986)*(x2988)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 ) +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x2990=((r00)*(sj6)); +IkReal x2991=((IkReal(14.4927536231884))*(cj0)); +IkReal x2992=((cj6)*(r11)); +IkReal x2993=((cj0)*(sj5)); +IkReal x2994=((IkReal(0.144927536231884))*(r02)); +IkReal x2995=((r10)*(sj6)); +IkReal x2996=((cj5)*(sj0)); +IkReal x2997=((IkReal(5.42449275362319))*(r12)); +IkReal x2998=((IkReal(14.4927536231884))*(sj0)); +IkReal x2999=((cj6)*(r01)); +IkReal x3000=((sj0)*(sj5)); +IkReal x3001=((IkReal(0.144927536231884))*(r12)); +IkReal x3002=((IkReal(5.42449275362319))*(r02)); +IkReal x3003=((cj0)*(cj5)); +IkReal x3004=((IkReal(0.144927536231884))*(x3003)); +IkReal x3005=((IkReal(5.42449275362319))*(sj5)*(x2999)); +if( IKabs(((((IkReal(0.144927536231884))*(x2990)*(x2996)))+(((IkReal(5.42449275362319))*(x2993)*(x2995)))+(((IkReal(-1.00000000000000))*(px)*(x2998)))+(((IkReal(-1.00000000000000))*(x2997)*(x3003)))+(((x2996)*(x3002)))+(((IkReal(-5.42449275362319))*(x2999)*(x3000)))+(((py)*(x2991)))+(((IkReal(0.144927536231884))*(x2996)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x2993)))+(((IkReal(-1.00000000000000))*(x2993)*(x3001)))+(((IkReal(-1.00000000000000))*(x2995)*(x3004)))+(((x2994)*(x3000)))+(((IkReal(-1.00000000000000))*(x2992)*(x3004)))+(((IkReal(-5.42449275362319))*(x2990)*(x3000))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x2990)*(x3004)))+(((IkReal(5.42449275362319))*(x2993)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x3000)))+(((IkReal(-1.00000000000000))*(x3000)*(x3001)))+(((IkReal(5.42449275362319))*(x2990)*(x2993)))+(((IkReal(5.42449275362319))*(x2995)*(x3000)))+(((IkReal(-1.00000000000000))*(x2999)*(x3004)))+(((px)*(x2991)))+(((IkReal(-1.00000000000000))*(x3002)*(x3003)))+(((IkReal(-1.00000000000000))*(x2993)*(x2994)))+(((py)*(x2998)))+(((IkReal(-0.144927536231884))*(x2992)*(x2996)))+(((IkReal(-0.144927536231884))*(x2995)*(x2996)))+(((IkReal(-1.00000000000000))*(x2996)*(x2997))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(0.144927536231884))*(x2990)*(x2996)))+(((IkReal(5.42449275362319))*(x2993)*(x2995)))+(((IkReal(-1.00000000000000))*(px)*(x2998)))+(((IkReal(-1.00000000000000))*(x2997)*(x3003)))+(((x2996)*(x3002)))+(((IkReal(-5.42449275362319))*(x2999)*(x3000)))+(((py)*(x2991)))+(((IkReal(0.144927536231884))*(x2996)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x2993)))+(((IkReal(-1.00000000000000))*(x2993)*(x3001)))+(((IkReal(-1.00000000000000))*(x2995)*(x3004)))+(((x2994)*(x3000)))+(((IkReal(-1.00000000000000))*(x2992)*(x3004)))+(((IkReal(-5.42449275362319))*(x2990)*(x3000)))))+IKsqr(((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x2990)*(x3004)))+(((IkReal(5.42449275362319))*(x2993)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x3000)))+(((IkReal(-1.00000000000000))*(x3000)*(x3001)))+(((IkReal(5.42449275362319))*(x2990)*(x2993)))+(((IkReal(5.42449275362319))*(x2995)*(x3000)))+(((IkReal(-1.00000000000000))*(x2999)*(x3004)))+(((px)*(x2991)))+(((IkReal(-1.00000000000000))*(x3002)*(x3003)))+(((IkReal(-1.00000000000000))*(x2993)*(x2994)))+(((py)*(x2998)))+(((IkReal(-0.144927536231884))*(x2992)*(x2996)))+(((IkReal(-0.144927536231884))*(x2995)*(x2996)))+(((IkReal(-1.00000000000000))*(x2996)*(x2997)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((IkReal(0.144927536231884))*(x2990)*(x2996)))+(((IkReal(5.42449275362319))*(x2993)*(x2995)))+(((IkReal(-1.00000000000000))*(px)*(x2998)))+(((IkReal(-1.00000000000000))*(x2997)*(x3003)))+(((x2996)*(x3002)))+(((IkReal(-5.42449275362319))*(x2999)*(x3000)))+(((py)*(x2991)))+(((IkReal(0.144927536231884))*(x2996)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x2993)))+(((IkReal(-1.00000000000000))*(x2993)*(x3001)))+(((IkReal(-1.00000000000000))*(x2995)*(x3004)))+(((x2994)*(x3000)))+(((IkReal(-1.00000000000000))*(x2992)*(x3004)))+(((IkReal(-5.42449275362319))*(x2990)*(x3000)))), ((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x2990)*(x3004)))+(((IkReal(5.42449275362319))*(x2993)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x3000)))+(((IkReal(-1.00000000000000))*(x3000)*(x3001)))+(((IkReal(5.42449275362319))*(x2990)*(x2993)))+(((IkReal(5.42449275362319))*(x2995)*(x3000)))+(((IkReal(-1.00000000000000))*(x2999)*(x3004)))+(((px)*(x2991)))+(((IkReal(-1.00000000000000))*(x3002)*(x3003)))+(((IkReal(-1.00000000000000))*(x2993)*(x2994)))+(((py)*(x2998)))+(((IkReal(-0.144927536231884))*(x2992)*(x2996)))+(((IkReal(-0.144927536231884))*(x2995)*(x2996)))+(((IkReal(-1.00000000000000))*(x2996)*(x2997))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[2]; +IkReal x3006=((IkReal(0.374290000000000))*(sj0)); +IkReal x3007=((cj5)*(r02)); +IkReal x3008=((IkReal(0.0100000000000000))*(cj0)); +IkReal x3009=((cj5)*(cj6)); +IkReal x3010=((r02)*(sj5)); +IkReal x3011=((cj5)*(sj6)); +IkReal x3012=((IkReal(1.00000000000000))*(py)); +IkReal x3013=((cj6)*(sj5)); +IkReal x3014=((IkReal(0.0100000000000000))*(sj0)); +IkReal x3015=((sj5)*(sj6)); +IkReal x3016=((cj5)*(r12)); +IkReal x3017=((IkReal(0.374290000000000))*(cj0)); +IkReal x3018=((r12)*(sj5)); +IkReal x3019=((x3013)*(x3017)); +IkReal x3020=((x3015)*(x3017)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj0)*(x3012)))+(((IkReal(-1.00000000000000))*(r10)*(x3020)))+(((IkReal(-1.00000000000000))*(x3006)*(x3007)))+(((r10)*(x3008)*(x3011)))+(((r00)*(x3006)*(x3015)))+(((IkReal(-1.00000000000000))*(r01)*(x3009)*(x3014)))+(((IkReal(-1.00000000000000))*(r11)*(x3019)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((IkReal(-1.00000000000000))*(r00)*(x3011)*(x3014)))+(((x3016)*(x3017)))+(((x3008)*(x3018)))+(((r01)*(x3006)*(x3013)))+(((px)*(sj0)))+(((r11)*(x3008)*(x3009)))+(((IkReal(-1.00000000000000))*(x3010)*(x3014)))); +evalcond[1]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x3006)*(x3015)))+(((r01)*(x3008)*(x3009)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(sj0)*(x3012)))+(((x3007)*(x3017)))+(((x3008)*(x3010)))+(((IkReal(-1.00000000000000))*(r00)*(x3020)))+(((IkReal(0.0690000000000000))*(IKcos(j2))))+(((IkReal(-1.00000000000000))*(r11)*(x3006)*(x3013)))+(((r00)*(x3008)*(x3011)))+(((x3006)*(x3016)))+(((IkReal(-1.00000000000000))*(r01)*(x3019)))+(((r10)*(x3011)*(x3014)))+(((r11)*(x3009)*(x3014)))+(((x3014)*(x3018)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst77; +IkReal x3021=(cj6)*(cj6); +IkReal x3022=(sj6)*(sj6); +IkReal x3023=((IkReal(1.00000000000000))*(r21)); +IkReal x3024=((cj6)*(r20)); +IkReal x3025=((r22)*(sj5)); +IkReal x3026=((r01)*(sj0)); +IkReal x3027=((r00)*(sj0)); +IkReal x3028=((cj0)*(r10)); +IkReal x3029=((r02)*(sj0)*(sj5)); +IkReal x3030=((cj5)*(x3021)); +IkReal x3031=((cj0)*(r12)*(sj5)); +IkReal x3032=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3033=((cj5)*(x3022)); +IkReal x3034=((r20)*(x3033)); +gconst77=IKsign(((((IkReal(-1.00000000000000))*(sj6)*(x3023)*(x3029)))+(((sj6)*(x3025)*(x3026)))+(((x3026)*(x3034)))+(((r20)*(x3026)*(x3030)))+(((r21)*(sj6)*(x3031)))+(((IkReal(-1.00000000000000))*(sj6)*(x3025)*(x3032)))+(((IkReal(-1.00000000000000))*(x3024)*(x3031)))+(((IkReal(-1.00000000000000))*(x3023)*(x3027)*(x3030)))+(((IkReal(-1.00000000000000))*(cj6)*(x3025)*(x3027)))+(((IkReal(-1.00000000000000))*(x3032)*(x3034)))+(((x3024)*(x3029)))+(((IkReal(-1.00000000000000))*(r20)*(x3030)*(x3032)))+(((r21)*(x3028)*(x3030)))+(((IkReal(-1.00000000000000))*(x3023)*(x3027)*(x3033)))+(((cj6)*(x3025)*(x3028)))+(((r21)*(x3028)*(x3033))))); +IkReal x3035=(cj6)*(cj6); +IkReal x3036=(sj6)*(sj6); +IkReal x3037=((IkReal(1.00000000000000))*(r21)); +IkReal x3038=((cj6)*(r20)); +IkReal x3039=((r22)*(sj5)); +IkReal x3040=((r01)*(sj0)); +IkReal x3041=((r00)*(sj0)); +IkReal x3042=((cj0)*(r10)); +IkReal x3043=((r02)*(sj0)*(sj5)); +IkReal x3044=((cj5)*(x3035)); +IkReal x3045=((cj0)*(r12)*(sj5)); +IkReal x3046=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3047=((cj5)*(x3036)); +IkReal x3048=((r20)*(x3047)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x3046)*(x3048)))+(((IkReal(-1.00000000000000))*(x3037)*(x3041)*(x3047)))+(((r20)*(x3040)*(x3044)))+(((r21)*(x3042)*(x3044)))+(((x3040)*(x3048)))+(((cj6)*(x3039)*(x3042)))+(((IkReal(-1.00000000000000))*(sj6)*(x3039)*(x3046)))+(((r21)*(sj6)*(x3045)))+(((IkReal(-1.00000000000000))*(cj6)*(x3039)*(x3041)))+(((IkReal(-1.00000000000000))*(r20)*(x3044)*(x3046)))+(((r21)*(x3042)*(x3047)))+(((IkReal(-1.00000000000000))*(x3038)*(x3045)))+(((x3038)*(x3043)))+(((sj6)*(x3039)*(x3040)))+(((IkReal(-1.00000000000000))*(x3037)*(x3041)*(x3044)))+(((IkReal(-1.00000000000000))*(sj6)*(x3037)*(x3043)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst78; +IkReal x3049=(cj6)*(cj6); +IkReal x3050=(sj6)*(sj6); +IkReal x3051=((sj5)*(sj6)); +IkReal x3052=((IkReal(1.00000000000000))*(cj0)); +IkReal x3053=((cj6)*(sj5)); +IkReal x3054=((r20)*(sj0)); +IkReal x3055=((cj0)*(r20)); +IkReal x3056=((r00)*(r21)); +IkReal x3057=((r22)*(sj0)); +IkReal x3058=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3059=((cj5)*(x3050)); +IkReal x3060=((cj5)*(x3049)); +gconst78=IKsign(((((r12)*(x3053)*(x3054)))+(((r01)*(x3055)*(x3060)))+(((IkReal(-1.00000000000000))*(x3052)*(x3056)*(x3060)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3052)*(x3053)))+(((IkReal(-1.00000000000000))*(x3052)*(x3056)*(x3059)))+(((IkReal(-1.00000000000000))*(r12)*(x3051)*(x3058)))+(((IkReal(-1.00000000000000))*(r10)*(x3058)*(x3060)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3051)*(x3052)))+(((IkReal(-1.00000000000000))*(r10)*(x3053)*(x3057)))+(((r02)*(x3053)*(x3055)))+(((cj0)*(r01)*(r22)*(x3051)))+(((r11)*(x3054)*(x3059)))+(((IkReal(-1.00000000000000))*(r10)*(x3058)*(x3059)))+(((r11)*(x3051)*(x3057)))+(((r11)*(x3054)*(x3060)))+(((r01)*(x3055)*(x3059))))); +IkReal x3061=(cj6)*(cj6); +IkReal x3062=(sj6)*(sj6); +IkReal x3063=((sj5)*(sj6)); +IkReal x3064=((IkReal(1.00000000000000))*(cj0)); +IkReal x3065=((cj6)*(sj5)); +IkReal x3066=((r20)*(sj0)); +IkReal x3067=((cj0)*(r20)); +IkReal x3068=((r00)*(r21)); +IkReal x3069=((r22)*(sj0)); +IkReal x3070=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3071=((cj5)*(x3062)); +IkReal x3072=((cj5)*(x3061)); +dummyeval[0]=((((r12)*(x3065)*(x3066)))+(((IkReal(-1.00000000000000))*(r10)*(x3070)*(x3071)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3064)*(x3065)))+(((r01)*(x3067)*(x3072)))+(((IkReal(-1.00000000000000))*(r12)*(x3063)*(x3070)))+(((cj0)*(r01)*(r22)*(x3063)))+(((r11)*(x3063)*(x3069)))+(((IkReal(-1.00000000000000))*(r10)*(x3070)*(x3072)))+(((r02)*(x3065)*(x3067)))+(((r01)*(x3067)*(x3071)))+(((r11)*(x3066)*(x3072)))+(((r11)*(x3066)*(x3071)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3063)*(x3064)))+(((IkReal(-1.00000000000000))*(x3064)*(x3068)*(x3071)))+(((IkReal(-1.00000000000000))*(x3064)*(x3068)*(x3072)))+(((IkReal(-1.00000000000000))*(r10)*(x3065)*(x3069)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x3073=((sj0)*(sj5)); +IkReal x3074=((r00)*(sj6)); +IkReal x3075=((cj6)*(r01)); +IkReal x3076=((cj0)*(cj5)); +IkReal x3077=((cj0)*(sj5)); +IkReal x3078=((r10)*(sj6)); +IkReal x3079=((cj6)*(r11)); +IkReal x3080=((IkReal(0.374290000000000))*(sj5)); +IkReal x3081=((IkReal(0.0100000000000000))*(r02)); +IkReal x3082=((IkReal(1.00000000000000))*(py)); +IkReal x3083=((cj5)*(sj0)); +IkReal x3084=((IkReal(0.374290000000000))*(r12)); +IkReal x3085=((r20)*(sj6)); +IkReal x3086=((IkReal(0.0100000000000000))*(r12)); +IkReal x3087=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x3088=((r02)*(x3083)); +IkReal x3089=((IkReal(0.374290000000000))*(cj6)*(x3077)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(-0.364420000000000))+(((IkReal(-0.0100000000000000))*(cj5)*(x3085)))+(((cj6)*(r21)*(x3080)))+(((IkReal(-0.0100000000000000))*(r22)*(sj5)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x3080)*(x3085)))+(pz)+(((IkReal(-1.00000000000000))*(r21)*(x3087)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3077)*(x3078)))+(((IkReal(-1.00000000000000))*(x3077)*(x3079)))+(((x3073)*(x3075)))+(((x3073)*(x3074)))+(((r12)*(x3076)))+(((IkReal(-1.00000000000000))*(x3088)))); +evalcond[3]=((((x3076)*(x3084)))+(((IkReal(-1.00000000000000))*(cj0)*(x3082)))+(((IkReal(-0.374290000000000))*(x3077)*(x3078)))+(((IkReal(0.0100000000000000))*(x3076)*(x3079)))+(((IkReal(0.374290000000000))*(x3073)*(x3075)))+(((IkReal(-1.00000000000000))*(x3073)*(x3081)))+(((IkReal(-0.0100000000000000))*(x3075)*(x3083)))+(((IkReal(-0.0100000000000000))*(x3074)*(x3083)))+(((IkReal(-0.374290000000000))*(x3077)*(x3079)))+(((x3077)*(x3086)))+(((px)*(sj0)))+(((IkReal(-0.374290000000000))*(x3088)))+(((IkReal(0.0100000000000000))*(x3076)*(x3078)))+(((IkReal(0.374290000000000))*(x3073)*(x3074)))); +evalcond[4]=((IkReal(0.138000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x3073)*(x3086)))+(((IkReal(0.0100000000000000))*(x3075)*(x3076)))+(((x3083)*(x3084)))+(((IkReal(-0.374290000000000))*(x3074)*(x3077)))+(((IkReal(-1.00000000000000))*(sj0)*(x3082)))+(((IkReal(0.0100000000000000))*(x3079)*(x3083)))+(((IkReal(0.374290000000000))*(r02)*(x3076)))+(((x3077)*(x3081)))+(((IkReal(-0.374290000000000))*(x3073)*(x3078)))+(((IkReal(0.0100000000000000))*(x3074)*(x3076)))+(((IkReal(0.0100000000000000))*(x3078)*(x3083)))+(((IkReal(-0.374290000000000))*(x3073)*(x3079)))+(((IkReal(-0.374290000000000))*(x3075)*(x3077)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3090=((IkReal(1.00000000000000))*(cj6)*(sj5)); +IkReal x3091=((IkReal(1.00000000000000))*(sj5)*(sj6)); +if( IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x3090)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x3091)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3091)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x3090))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r20)*(x3091)))+(((IkReal(-1.00000000000000))*(r21)*(x3090)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x3090)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x3091)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3091)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x3090)))))+IKsqr(((((IkReal(-1.00000000000000))*(r20)*(x3091)))+(((IkReal(-1.00000000000000))*(r21)*(x3090)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x3090)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x3091)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3091)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x3090)))), ((((IkReal(-1.00000000000000))*(r20)*(x3091)))+(((IkReal(-1.00000000000000))*(r21)*(x3090)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x3092=((sj5)*(sj6)); +IkReal x3093=((IkReal(1.00000000000000))*(cj6)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(IKcos(j3))+(((r20)*(x3092)))); +evalcond[1]=((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x3093)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3092)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x3092)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x3093)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst83; +IkReal x3094=(cj5)*(cj5); +IkReal x3095=(r20)*(r20); +IkReal x3096=(sj6)*(sj6); +IkReal x3097=(cj6)*(cj6); +IkReal x3098=(r21)*(r21); +IkReal x3099=((cj6)*(r21)); +IkReal x3100=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3101=((cj5)*(r22)*(sj5)); +gconst83=IKsign(((((x3100)*(x3101)))+(((x3094)*(x3095)*(x3096)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3096)*(x3098)))+(((x3094)*(x3097)*(x3098)))+(((x3095)*(x3097)))+(((IkReal(2.00000000000000))*(x3099)*(x3101)))+(((x3094)*(x3099)*(x3100)))+(((IkReal(-1.00000000000000))*(x3099)*(x3100))))); +IkReal x3102=(cj5)*(cj5); +IkReal x3103=(r20)*(r20); +IkReal x3104=(sj6)*(sj6); +IkReal x3105=(cj6)*(cj6); +IkReal x3106=(r21)*(r21); +IkReal x3107=((cj6)*(r21)); +IkReal x3108=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3109=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x3104)*(x3106)))+(((x3103)*(x3105)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3102)*(x3105)*(x3106)))+(((x3102)*(x3103)*(x3104)))+(((x3102)*(x3107)*(x3108)))+(((IkReal(2.00000000000000))*(x3107)*(x3109)))+(((x3108)*(x3109)))+(((IkReal(-1.00000000000000))*(x3107)*(x3108)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst84; +IkReal x3110=(cj6)*(cj6); +IkReal x3111=(sj6)*(sj6); +IkReal x3112=((IkReal(1.00000000000000))*(r21)); +IkReal x3113=((cj6)*(r20)); +IkReal x3114=((r22)*(sj5)); +IkReal x3115=((r01)*(sj0)); +IkReal x3116=((r00)*(sj0)); +IkReal x3117=((cj0)*(r10)); +IkReal x3118=((r02)*(sj0)*(sj5)); +IkReal x3119=((cj5)*(x3110)); +IkReal x3120=((cj0)*(r12)*(sj5)); +IkReal x3121=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3122=((cj5)*(x3111)); +IkReal x3123=((r20)*(x3122)); +gconst84=IKsign(((((IkReal(-1.00000000000000))*(x3112)*(x3116)*(x3122)))+(((IkReal(-1.00000000000000))*(x3112)*(x3116)*(x3119)))+(((IkReal(-1.00000000000000))*(x3113)*(x3120)))+(((r21)*(sj6)*(x3120)))+(((r20)*(x3115)*(x3119)))+(((IkReal(-1.00000000000000))*(x3121)*(x3123)))+(((IkReal(-1.00000000000000))*(cj6)*(x3114)*(x3116)))+(((IkReal(-1.00000000000000))*(sj6)*(x3114)*(x3121)))+(((x3115)*(x3123)))+(((IkReal(-1.00000000000000))*(sj6)*(x3112)*(x3118)))+(((x3113)*(x3118)))+(((sj6)*(x3114)*(x3115)))+(((IkReal(-1.00000000000000))*(r20)*(x3119)*(x3121)))+(((r21)*(x3117)*(x3119)))+(((cj6)*(x3114)*(x3117)))+(((r21)*(x3117)*(x3122))))); +IkReal x3124=(cj6)*(cj6); +IkReal x3125=(sj6)*(sj6); +IkReal x3126=((IkReal(1.00000000000000))*(r21)); +IkReal x3127=((cj6)*(r20)); +IkReal x3128=((r22)*(sj5)); +IkReal x3129=((r01)*(sj0)); +IkReal x3130=((r00)*(sj0)); +IkReal x3131=((cj0)*(r10)); +IkReal x3132=((r02)*(sj0)*(sj5)); +IkReal x3133=((cj5)*(x3124)); +IkReal x3134=((cj0)*(r12)*(sj5)); +IkReal x3135=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3136=((cj5)*(x3125)); +IkReal x3137=((r20)*(x3136)); +dummyeval[0]=((((cj6)*(x3128)*(x3131)))+(((sj6)*(x3128)*(x3129)))+(((IkReal(-1.00000000000000))*(x3135)*(x3137)))+(((r21)*(x3131)*(x3136)))+(((IkReal(-1.00000000000000))*(x3127)*(x3134)))+(((r21)*(sj6)*(x3134)))+(((r21)*(x3131)*(x3133)))+(((r20)*(x3129)*(x3133)))+(((IkReal(-1.00000000000000))*(r20)*(x3133)*(x3135)))+(((IkReal(-1.00000000000000))*(cj6)*(x3128)*(x3130)))+(((IkReal(-1.00000000000000))*(x3126)*(x3130)*(x3133)))+(((IkReal(-1.00000000000000))*(sj6)*(x3128)*(x3135)))+(((x3129)*(x3137)))+(((IkReal(-1.00000000000000))*(sj6)*(x3126)*(x3132)))+(((IkReal(-1.00000000000000))*(x3126)*(x3130)*(x3136)))+(((x3127)*(x3132)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3138=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((gconst84)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst84)*(((((IkReal(-1.00000000000000))*(cj6)*(r21)*(x3138)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x3138)))+(((IkReal(-1.00000000000000))*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst84)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)))))), ((gconst84)*(((((IkReal(-1.00000000000000))*(cj6)*(r21)*(x3138)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x3138)))+(((IkReal(-1.00000000000000))*(r22)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3139=IKsin(j4); +IkReal x3140=IKcos(j4); +IkReal x3141=((r22)*(sj5)); +IkReal x3142=((IkReal(1.00000000000000))*(cj6)); +IkReal x3143=((IkReal(1.00000000000000))*(cj0)); +IkReal x3144=((cj5)*(r11)); +IkReal x3145=((cj5)*(cj6)); +IkReal x3146=((r11)*(sj6)); +IkReal x3147=((IkReal(1.00000000000000))*(sj6)); +IkReal x3148=((cj6)*(r00)); +IkReal x3149=((r12)*(sj5)); +IkReal x3150=((r02)*(sj5)); +IkReal x3151=((cj6)*(r10)); +IkReal x3152=((cj5)*(sj6)); +IkReal x3153=((cj5)*(r01)); +IkReal x3154=((sj0)*(x3139)); +IkReal x3155=((r00)*(x3152)); +IkReal x3156=((cj0)*(x3139)); +IkReal x3157=((sj0)*(x3140)); +IkReal x3158=((r20)*(x3140)); +IkReal x3159=((cj0)*(x3140)); +IkReal x3160=((r21)*(x3139)); +IkReal x3161=((r21)*(x3140)); +IkReal x3162=((r20)*(x3139)); +IkReal x3163=((x3140)*(x3149)); +IkReal x3164=((r01)*(sj6)*(x3140)); +IkReal x3165=((cj5)*(r10)*(x3147)); +evalcond[0]=((((x3139)*(x3141)))+(((IkReal(-1.00000000000000))*(x3142)*(x3158)))+(((sj6)*(x3161)))+(((x3152)*(x3162)))+(((x3145)*(x3160)))); +evalcond[1]=((((x3152)*(x3158)))+(sj3)+(((cj6)*(x3162)))+(((IkReal(-1.00000000000000))*(x3147)*(x3160)))+(((x3145)*(x3161)))+(((x3140)*(x3141)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x3139)*(x3143)*(x3149)))+(((IkReal(-1.00000000000000))*(r00)*(x3142)*(x3157)))+(((r01)*(sj6)*(x3157)))+(((x3150)*(x3154)))+(((IkReal(-1.00000000000000))*(r10)*(x3139)*(x3143)*(x3152)))+(((IkReal(-1.00000000000000))*(x3140)*(x3143)*(x3146)))+(((IkReal(-1.00000000000000))*(x3142)*(x3144)*(x3156)))+(((r01)*(x3145)*(x3154)))+(((x3151)*(x3159)))+(((x3154)*(x3155)))); +evalcond[3]=((((r01)*(x3145)*(x3157)))+(((x3155)*(x3157)))+(((x3146)*(x3156)))+(((IkReal(-1.00000000000000))*(x3142)*(x3144)*(x3159)))+(((IkReal(-1.00000000000000))*(x3143)*(x3163)))+(((IkReal(-1.00000000000000))*(r10)*(x3142)*(x3156)))+(((IkReal(-1.00000000000000))*(r01)*(x3147)*(x3154)))+(((x3148)*(x3154)))+(((IkReal(-1.00000000000000))*(r10)*(x3140)*(x3143)*(x3152)))+(((x3150)*(x3157)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3154)*(x3165)))+(((IkReal(-1.00000000000000))*(x3142)*(x3153)*(x3156)))+(((IkReal(-1.00000000000000))*(x3146)*(x3157)))+(((IkReal(-1.00000000000000))*(x3143)*(x3164)))+(((IkReal(-1.00000000000000))*(x3142)*(x3144)*(x3154)))+(((IkReal(-1.00000000000000))*(x3149)*(x3154)))+(((x3151)*(x3157)))+(((IkReal(-1.00000000000000))*(x3139)*(x3143)*(x3155)))+(((IkReal(-1.00000000000000))*(x3139)*(x3143)*(x3150)))+(((x3148)*(x3159)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x3142)*(x3153)*(x3159)))+(((IkReal(-1.00000000000000))*(r00)*(x3142)*(x3156)))+(((x3146)*(x3154)))+(((IkReal(-1.00000000000000))*(x3140)*(x3143)*(x3150)))+(cj3)+(((IkReal(-1.00000000000000))*(x3149)*(x3157)))+(((IkReal(-1.00000000000000))*(r10)*(x3142)*(x3154)))+(((IkReal(-1.00000000000000))*(x3157)*(x3165)))+(((IkReal(-1.00000000000000))*(x3142)*(x3144)*(x3157)))+(((r01)*(sj6)*(x3156)))+(((IkReal(-1.00000000000000))*(x3140)*(x3143)*(x3155)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3166=((r21)*(sj3)); +IkReal x3167=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst83)*(((((IkReal(-1.00000000000000))*(cj6)*(x3167)))+(((sj6)*(x3166))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst83)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3166)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3167)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst83)*(((((IkReal(-1.00000000000000))*(cj6)*(x3167)))+(((sj6)*(x3166)))))), ((gconst83)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3166)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3167)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3168=IKsin(j4); +IkReal x3169=IKcos(j4); +IkReal x3170=((r22)*(sj5)); +IkReal x3171=((IkReal(1.00000000000000))*(cj6)); +IkReal x3172=((IkReal(1.00000000000000))*(cj0)); +IkReal x3173=((cj5)*(r11)); +IkReal x3174=((cj5)*(cj6)); +IkReal x3175=((r11)*(sj6)); +IkReal x3176=((IkReal(1.00000000000000))*(sj6)); +IkReal x3177=((cj6)*(r00)); +IkReal x3178=((r12)*(sj5)); +IkReal x3179=((r02)*(sj5)); +IkReal x3180=((cj6)*(r10)); +IkReal x3181=((cj5)*(sj6)); +IkReal x3182=((cj5)*(r01)); +IkReal x3183=((sj0)*(x3168)); +IkReal x3184=((r00)*(x3181)); +IkReal x3185=((cj0)*(x3168)); +IkReal x3186=((sj0)*(x3169)); +IkReal x3187=((r20)*(x3169)); +IkReal x3188=((cj0)*(x3169)); +IkReal x3189=((r21)*(x3168)); +IkReal x3190=((r21)*(x3169)); +IkReal x3191=((r20)*(x3168)); +IkReal x3192=((x3169)*(x3178)); +IkReal x3193=((r01)*(sj6)*(x3169)); +IkReal x3194=((cj5)*(r10)*(x3176)); +evalcond[0]=((((sj6)*(x3190)))+(((x3181)*(x3191)))+(((x3168)*(x3170)))+(((IkReal(-1.00000000000000))*(x3171)*(x3187)))+(((x3174)*(x3189)))); +evalcond[1]=((((x3169)*(x3170)))+(sj3)+(((cj6)*(x3191)))+(((x3174)*(x3190)))+(((x3181)*(x3187)))+(((IkReal(-1.00000000000000))*(x3176)*(x3189)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x3168)*(x3172)*(x3181)))+(((x3180)*(x3188)))+(((IkReal(-1.00000000000000))*(r00)*(x3171)*(x3186)))+(((x3183)*(x3184)))+(((r01)*(x3174)*(x3183)))+(((r01)*(sj6)*(x3186)))+(((IkReal(-1.00000000000000))*(x3168)*(x3172)*(x3178)))+(((IkReal(-1.00000000000000))*(x3169)*(x3172)*(x3175)))+(((x3179)*(x3183)))+(((IkReal(-1.00000000000000))*(x3171)*(x3173)*(x3185)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x3171)*(x3173)*(x3188)))+(((x3175)*(x3185)))+(((IkReal(-1.00000000000000))*(r10)*(x3169)*(x3172)*(x3181)))+(((x3184)*(x3186)))+(((x3179)*(x3186)))+(((IkReal(-1.00000000000000))*(x3172)*(x3192)))+(((IkReal(-1.00000000000000))*(r01)*(x3176)*(x3183)))+(((IkReal(-1.00000000000000))*(r10)*(x3171)*(x3185)))+(((x3177)*(x3183)))+(((r01)*(x3174)*(x3186)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3171)*(x3173)*(x3183)))+(((x3180)*(x3186)))+(((x3177)*(x3188)))+(((IkReal(-1.00000000000000))*(x3168)*(x3172)*(x3184)))+(((IkReal(-1.00000000000000))*(x3172)*(x3193)))+(((IkReal(-1.00000000000000))*(x3168)*(x3172)*(x3179)))+(((IkReal(-1.00000000000000))*(x3183)*(x3194)))+(((IkReal(-1.00000000000000))*(x3175)*(x3186)))+(((IkReal(-1.00000000000000))*(x3178)*(x3183)))+(((IkReal(-1.00000000000000))*(x3171)*(x3182)*(x3185)))); +evalcond[5]=((((r01)*(sj6)*(x3185)))+(((IkReal(-1.00000000000000))*(x3178)*(x3186)))+(((IkReal(-1.00000000000000))*(x3169)*(x3172)*(x3184)))+(((IkReal(-1.00000000000000))*(x3186)*(x3194)))+(((IkReal(-1.00000000000000))*(x3171)*(x3173)*(x3186)))+(cj3)+(((IkReal(-1.00000000000000))*(x3171)*(x3182)*(x3188)))+(((x3175)*(x3183)))+(((IkReal(-1.00000000000000))*(x3169)*(x3172)*(x3179)))+(((IkReal(-1.00000000000000))*(r00)*(x3171)*(x3185)))+(((IkReal(-1.00000000000000))*(r10)*(x3171)*(x3183)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x3195=((sj0)*(sj5)); +IkReal x3196=((r00)*(sj6)); +IkReal x3197=((cj6)*(r01)); +IkReal x3198=((cj0)*(cj5)); +IkReal x3199=((cj0)*(sj5)); +IkReal x3200=((r10)*(sj6)); +IkReal x3201=((cj6)*(r11)); +IkReal x3202=((IkReal(0.374290000000000))*(sj5)); +IkReal x3203=((IkReal(0.0100000000000000))*(r02)); +IkReal x3204=((IkReal(1.00000000000000))*(py)); +IkReal x3205=((cj5)*(sj0)); +IkReal x3206=((IkReal(0.374290000000000))*(r12)); +IkReal x3207=((r20)*(sj6)); +IkReal x3208=((IkReal(0.0100000000000000))*(r12)); +IkReal x3209=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x3210=((r02)*(x3205)); +IkReal x3211=((IkReal(0.374290000000000))*(cj6)*(x3199)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(-0.364420000000000))+(((IkReal(-0.0100000000000000))*(cj5)*(x3207)))+(((IkReal(-0.0100000000000000))*(r22)*(sj5)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r21)*(x3209)))+(pz)+(((x3202)*(x3207)))+(((cj6)*(r21)*(x3202)))); +evalcond[2]=((((r12)*(x3198)))+(((IkReal(-1.00000000000000))*(x3210)))+(((IkReal(-1.00000000000000))*(x3199)*(x3201)))+(((IkReal(-1.00000000000000))*(x3199)*(x3200)))+(((x3195)*(x3197)))+(((x3195)*(x3196)))); +evalcond[3]=((((IkReal(0.374290000000000))*(x3195)*(x3196)))+(((IkReal(-0.374290000000000))*(x3199)*(x3200)))+(((IkReal(0.374290000000000))*(x3195)*(x3197)))+(((IkReal(0.0100000000000000))*(x3198)*(x3200)))+(((IkReal(-1.00000000000000))*(cj0)*(x3204)))+(((IkReal(-1.00000000000000))*(x3195)*(x3203)))+(((x3198)*(x3206)))+(((x3199)*(x3208)))+(((IkReal(0.0100000000000000))*(x3198)*(x3201)))+(((IkReal(-0.374290000000000))*(x3199)*(x3201)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(x3197)*(x3205)))+(((IkReal(-0.374290000000000))*(x3210)))+(((IkReal(-0.0100000000000000))*(x3196)*(x3205)))); +evalcond[4]=((((IkReal(0.0100000000000000))*(x3197)*(x3198)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-0.374290000000000))*(x3196)*(x3199)))+(((x3195)*(x3208)))+(((IkReal(0.374290000000000))*(r02)*(x3198)))+(((IkReal(-0.374290000000000))*(x3197)*(x3199)))+(((IkReal(-0.374290000000000))*(x3195)*(x3200)))+(((x3199)*(x3203)))+(((IkReal(-1.00000000000000))*(sj0)*(x3204)))+(((x3205)*(x3206)))+(((IkReal(0.0100000000000000))*(x3200)*(x3205)))+(((IkReal(-0.374290000000000))*(x3195)*(x3201)))+(((IkReal(0.0100000000000000))*(x3201)*(x3205)))+(((IkReal(0.0100000000000000))*(x3196)*(x3198)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3212=((IkReal(1.00000000000000))*(cj5)); +IkReal x3213=((cj6)*(sj5)); +IkReal x3214=((sj5)*(sj6)); +if( IKabs(((((r10)*(sj0)*(x3214)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3212)))+(((r11)*(sj0)*(x3213)))+(((cj0)*(r00)*(x3214)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3212)))+(((cj0)*(r01)*(x3213))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r21)*(x3213)))+(((IkReal(-1.00000000000000))*(r20)*(x3214)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r10)*(sj0)*(x3214)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3212)))+(((r11)*(sj0)*(x3213)))+(((cj0)*(r00)*(x3214)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3212)))+(((cj0)*(r01)*(x3213)))))+IKsqr(((((IkReal(-1.00000000000000))*(r21)*(x3213)))+(((IkReal(-1.00000000000000))*(r20)*(x3214)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r10)*(sj0)*(x3214)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3212)))+(((r11)*(sj0)*(x3213)))+(((cj0)*(r00)*(x3214)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3212)))+(((cj0)*(r01)*(x3213)))), ((((IkReal(-1.00000000000000))*(r21)*(x3213)))+(((IkReal(-1.00000000000000))*(r20)*(x3214)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x3215=((sj5)*(sj6)); +IkReal x3216=((IkReal(1.00000000000000))*(cj6)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((r20)*(x3215)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(IKcos(j3))); +evalcond[1]=((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x3215)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x3216)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3215)))+(IKsin(j3))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x3216)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst87; +IkReal x3217=(cj5)*(cj5); +IkReal x3218=(r20)*(r20); +IkReal x3219=(sj6)*(sj6); +IkReal x3220=(cj6)*(cj6); +IkReal x3221=(r21)*(r21); +IkReal x3222=((cj6)*(r21)); +IkReal x3223=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3224=((cj5)*(r22)*(sj5)); +gconst87=IKsign(((((IkReal(-1.00000000000000))*(x3222)*(x3223)))+(((x3217)*(x3218)*(x3219)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3219)*(x3221)))+(((x3218)*(x3220)))+(((x3217)*(x3222)*(x3223)))+(((x3223)*(x3224)))+(((x3217)*(x3220)*(x3221)))+(((IkReal(2.00000000000000))*(x3222)*(x3224))))); +IkReal x3225=(cj5)*(cj5); +IkReal x3226=(r20)*(r20); +IkReal x3227=(sj6)*(sj6); +IkReal x3228=(cj6)*(cj6); +IkReal x3229=(r21)*(r21); +IkReal x3230=((cj6)*(r21)); +IkReal x3231=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3232=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x3227)*(x3229)))+(((x3231)*(x3232)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3225)*(x3228)*(x3229)))+(((IkReal(-1.00000000000000))*(x3230)*(x3231)))+(((x3226)*(x3228)))+(((x3225)*(x3230)*(x3231)))+(((x3225)*(x3226)*(x3227)))+(((IkReal(2.00000000000000))*(x3230)*(x3232)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst88; +IkReal x3233=(cj6)*(cj6); +IkReal x3234=(sj6)*(sj6); +IkReal x3235=((IkReal(1.00000000000000))*(r01)); +IkReal x3236=((sj0)*(sj5)); +IkReal x3237=((cj6)*(r22)); +IkReal x3238=((r21)*(sj6)); +IkReal x3239=((r00)*(r21)); +IkReal x3240=((cj0)*(sj5)); +IkReal x3241=((cj6)*(r20)); +IkReal x3242=((r22)*(sj6)); +IkReal x3243=((cj0)*(cj5)); +IkReal x3244=((IkReal(1.00000000000000))*(r10)); +IkReal x3245=((cj5)*(sj0)); +IkReal x3246=((r20)*(x3234)); +IkReal x3247=((x3233)*(x3245)); +gconst88=IKsign(((((IkReal(-1.00000000000000))*(r21)*(x3234)*(x3243)*(x3244)))+(((r11)*(x3240)*(x3242)))+(((x3234)*(x3239)*(x3245)))+(((r12)*(x3240)*(x3241)))+(((IkReal(-1.00000000000000))*(r21)*(x3233)*(x3243)*(x3244)))+(((r00)*(x3236)*(x3237)))+(((IkReal(-1.00000000000000))*(x3237)*(x3240)*(x3244)))+(((r11)*(r20)*(x3233)*(x3243)))+(((r02)*(x3236)*(x3238)))+(((IkReal(-1.00000000000000))*(x3235)*(x3245)*(x3246)))+(((IkReal(-1.00000000000000))*(x3235)*(x3236)*(x3242)))+(((IkReal(-1.00000000000000))*(r20)*(x3235)*(x3247)))+(((IkReal(-1.00000000000000))*(r02)*(x3236)*(x3241)))+(((IkReal(-1.00000000000000))*(r12)*(x3238)*(x3240)))+(((x3239)*(x3247)))+(((r11)*(x3243)*(x3246))))); +IkReal x3248=(cj6)*(cj6); +IkReal x3249=(sj6)*(sj6); +IkReal x3250=((IkReal(1.00000000000000))*(r01)); +IkReal x3251=((sj0)*(sj5)); +IkReal x3252=((cj6)*(r22)); +IkReal x3253=((r21)*(sj6)); +IkReal x3254=((r00)*(r21)); +IkReal x3255=((cj0)*(sj5)); +IkReal x3256=((cj6)*(r20)); +IkReal x3257=((r22)*(sj6)); +IkReal x3258=((cj0)*(cj5)); +IkReal x3259=((IkReal(1.00000000000000))*(r10)); +IkReal x3260=((cj5)*(sj0)); +IkReal x3261=((r20)*(x3249)); +IkReal x3262=((x3248)*(x3260)); +dummyeval[0]=((((r11)*(x3258)*(x3261)))+(((IkReal(-1.00000000000000))*(x3252)*(x3255)*(x3259)))+(((IkReal(-1.00000000000000))*(x3250)*(x3251)*(x3257)))+(((IkReal(-1.00000000000000))*(r12)*(x3253)*(x3255)))+(((IkReal(-1.00000000000000))*(r02)*(x3251)*(x3256)))+(((r02)*(x3251)*(x3253)))+(((r11)*(r20)*(x3248)*(x3258)))+(((IkReal(-1.00000000000000))*(r21)*(x3248)*(x3258)*(x3259)))+(((r00)*(x3251)*(x3252)))+(((x3249)*(x3254)*(x3260)))+(((r11)*(x3255)*(x3257)))+(((IkReal(-1.00000000000000))*(r21)*(x3249)*(x3258)*(x3259)))+(((IkReal(-1.00000000000000))*(r20)*(x3250)*(x3262)))+(((IkReal(-1.00000000000000))*(x3250)*(x3260)*(x3261)))+(((r12)*(x3255)*(x3256)))+(((x3254)*(x3262)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3263=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((gconst88)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst88)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x3263)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x3263))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst88)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)))))), ((gconst88)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x3263)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x3263))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3264=IKsin(j4); +IkReal x3265=IKcos(j4); +IkReal x3266=((r22)*(sj5)); +IkReal x3267=((IkReal(1.00000000000000))*(cj6)); +IkReal x3268=((IkReal(1.00000000000000))*(cj0)); +IkReal x3269=((cj5)*(r11)); +IkReal x3270=((cj5)*(cj6)); +IkReal x3271=((r11)*(sj6)); +IkReal x3272=((IkReal(1.00000000000000))*(sj6)); +IkReal x3273=((cj6)*(r00)); +IkReal x3274=((r12)*(sj5)); +IkReal x3275=((r02)*(sj5)); +IkReal x3276=((cj6)*(r10)); +IkReal x3277=((cj5)*(sj6)); +IkReal x3278=((cj5)*(r01)); +IkReal x3279=((sj0)*(x3264)); +IkReal x3280=((r00)*(x3277)); +IkReal x3281=((cj0)*(x3264)); +IkReal x3282=((sj0)*(x3265)); +IkReal x3283=((r20)*(x3265)); +IkReal x3284=((cj0)*(x3265)); +IkReal x3285=((r21)*(x3264)); +IkReal x3286=((r21)*(x3265)); +IkReal x3287=((r20)*(x3264)); +IkReal x3288=((x3265)*(x3274)); +IkReal x3289=((r01)*(sj6)*(x3265)); +IkReal x3290=((cj5)*(r10)*(x3272)); +evalcond[0]=((((x3277)*(x3287)))+(((x3264)*(x3266)))+(((IkReal(-1.00000000000000))*(x3267)*(x3283)))+(((x3270)*(x3285)))+(((sj6)*(x3286)))); +evalcond[1]=((sj3)+(((cj6)*(x3287)))+(((IkReal(-1.00000000000000))*(x3272)*(x3285)))+(((x3277)*(x3283)))+(((x3270)*(x3286)))+(((x3265)*(x3266)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r01)*(sj6)*(x3282)))+(((r01)*(x3270)*(x3279)))+(((x3275)*(x3279)))+(((IkReal(-1.00000000000000))*(x3264)*(x3268)*(x3274)))+(((IkReal(-1.00000000000000))*(x3267)*(x3269)*(x3281)))+(((IkReal(-1.00000000000000))*(r10)*(x3264)*(x3268)*(x3277)))+(((x3276)*(x3284)))+(((IkReal(-1.00000000000000))*(r00)*(x3267)*(x3282)))+(((x3279)*(x3280)))+(((IkReal(-1.00000000000000))*(x3265)*(x3268)*(x3271)))); +evalcond[3]=((((x3273)*(x3279)))+(((x3275)*(x3282)))+(((IkReal(-1.00000000000000))*(r10)*(x3265)*(x3268)*(x3277)))+(((r01)*(x3270)*(x3282)))+(((x3280)*(x3282)))+(((IkReal(-1.00000000000000))*(r10)*(x3267)*(x3281)))+(((IkReal(-1.00000000000000))*(x3267)*(x3269)*(x3284)))+(((IkReal(-1.00000000000000))*(x3268)*(x3288)))+(((x3271)*(x3281)))+(((IkReal(-1.00000000000000))*(r01)*(x3272)*(x3279)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3274)*(x3279)))+(((x3273)*(x3284)))+(((IkReal(-1.00000000000000))*(x3279)*(x3290)))+(((IkReal(-1.00000000000000))*(x3267)*(x3278)*(x3281)))+(((IkReal(-1.00000000000000))*(x3267)*(x3269)*(x3279)))+(((IkReal(-1.00000000000000))*(x3264)*(x3268)*(x3280)))+(((x3276)*(x3282)))+(((IkReal(-1.00000000000000))*(x3264)*(x3268)*(x3275)))+(((IkReal(-1.00000000000000))*(x3271)*(x3282)))+(((IkReal(-1.00000000000000))*(x3268)*(x3289)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x3267)*(x3279)))+(((IkReal(-1.00000000000000))*(r00)*(x3267)*(x3281)))+(((IkReal(-1.00000000000000))*(x3274)*(x3282)))+(((x3271)*(x3279)))+(((IkReal(-1.00000000000000))*(x3267)*(x3278)*(x3284)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x3265)*(x3268)*(x3280)))+(((IkReal(-1.00000000000000))*(x3265)*(x3268)*(x3275)))+(((IkReal(-1.00000000000000))*(x3267)*(x3269)*(x3282)))+(((r01)*(sj6)*(x3281)))+(((IkReal(-1.00000000000000))*(x3282)*(x3290)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3291=((r21)*(sj3)); +IkReal x3292=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst87)*(((((sj6)*(x3291)))+(((IkReal(-1.00000000000000))*(cj6)*(x3292))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst87)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3292)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3291)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst87)*(((((sj6)*(x3291)))+(((IkReal(-1.00000000000000))*(cj6)*(x3292)))))), ((gconst87)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3292)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3291)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3293=IKsin(j4); +IkReal x3294=IKcos(j4); +IkReal x3295=((r22)*(sj5)); +IkReal x3296=((IkReal(1.00000000000000))*(cj6)); +IkReal x3297=((IkReal(1.00000000000000))*(cj0)); +IkReal x3298=((cj5)*(r11)); +IkReal x3299=((cj5)*(cj6)); +IkReal x3300=((r11)*(sj6)); +IkReal x3301=((IkReal(1.00000000000000))*(sj6)); +IkReal x3302=((cj6)*(r00)); +IkReal x3303=((r12)*(sj5)); +IkReal x3304=((r02)*(sj5)); +IkReal x3305=((cj6)*(r10)); +IkReal x3306=((cj5)*(sj6)); +IkReal x3307=((cj5)*(r01)); +IkReal x3308=((sj0)*(x3293)); +IkReal x3309=((r00)*(x3306)); +IkReal x3310=((cj0)*(x3293)); +IkReal x3311=((sj0)*(x3294)); +IkReal x3312=((r20)*(x3294)); +IkReal x3313=((cj0)*(x3294)); +IkReal x3314=((r21)*(x3293)); +IkReal x3315=((r21)*(x3294)); +IkReal x3316=((r20)*(x3293)); +IkReal x3317=((x3294)*(x3303)); +IkReal x3318=((r01)*(sj6)*(x3294)); +IkReal x3319=((cj5)*(r10)*(x3301)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x3296)*(x3312)))+(((x3299)*(x3314)))+(((x3293)*(x3295)))+(((x3306)*(x3316)))+(((sj6)*(x3315)))); +evalcond[1]=((((cj6)*(x3316)))+(sj3)+(((x3306)*(x3312)))+(((IkReal(-1.00000000000000))*(x3301)*(x3314)))+(((x3294)*(x3295)))+(((x3299)*(x3315)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x3294)*(x3297)*(x3300)))+(((r01)*(x3299)*(x3308)))+(((IkReal(-1.00000000000000))*(x3296)*(x3298)*(x3310)))+(((x3305)*(x3313)))+(((IkReal(-1.00000000000000))*(r00)*(x3296)*(x3311)))+(((x3308)*(x3309)))+(((IkReal(-1.00000000000000))*(r10)*(x3293)*(x3297)*(x3306)))+(((x3304)*(x3308)))+(((r01)*(sj6)*(x3311)))+(((IkReal(-1.00000000000000))*(x3293)*(x3297)*(x3303)))); +evalcond[3]=((((x3300)*(x3310)))+(((IkReal(-1.00000000000000))*(x3296)*(x3298)*(x3313)))+(((IkReal(-1.00000000000000))*(x3297)*(x3317)))+(((IkReal(-1.00000000000000))*(r10)*(x3294)*(x3297)*(x3306)))+(((x3304)*(x3311)))+(((x3309)*(x3311)))+(((IkReal(-1.00000000000000))*(r01)*(x3301)*(x3308)))+(((IkReal(-1.00000000000000))*(r10)*(x3296)*(x3310)))+(((r01)*(x3299)*(x3311)))+(((x3302)*(x3308)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3300)*(x3311)))+(((x3305)*(x3311)))+(((x3302)*(x3313)))+(((IkReal(-1.00000000000000))*(x3308)*(x3319)))+(((IkReal(-1.00000000000000))*(x3296)*(x3298)*(x3308)))+(((IkReal(-1.00000000000000))*(x3293)*(x3297)*(x3304)))+(((IkReal(-1.00000000000000))*(x3296)*(x3307)*(x3310)))+(((IkReal(-1.00000000000000))*(x3293)*(x3297)*(x3309)))+(((IkReal(-1.00000000000000))*(x3303)*(x3308)))+(((IkReal(-1.00000000000000))*(x3297)*(x3318)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x3296)*(x3308)))+(((r01)*(sj6)*(x3310)))+(((IkReal(-1.00000000000000))*(r00)*(x3296)*(x3310)))+(((IkReal(-1.00000000000000))*(x3296)*(x3307)*(x3313)))+(((IkReal(-1.00000000000000))*(x3311)*(x3319)))+(((x3300)*(x3308)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x3294)*(x3297)*(x3304)))+(((IkReal(-1.00000000000000))*(x3303)*(x3311)))+(((IkReal(-1.00000000000000))*(x3296)*(x3298)*(x3311)))+(((IkReal(-1.00000000000000))*(x3294)*(x3297)*(x3309)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3320=((sj0)*(sj5)); +IkReal x3321=((IkReal(1.00000000000000))*(cj6)*(sj5)); +IkReal x3322=((IkReal(1.00000000000000))*(sj5)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((cj6)*(r01)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r11)*(x3321)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj6)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x3322)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(sj0))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r20)*(x3322)))+(((IkReal(-1.00000000000000))*(r21)*(x3321)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((cj6)*(r01)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r11)*(x3321)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj6)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x3322)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(sj0)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r20)*(x3322)))+(((IkReal(-1.00000000000000))*(r21)*(x3321)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((cj6)*(r01)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r11)*(x3321)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj6)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x3322)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(sj0)))))), ((((IkReal(-1.00000000000000))*(r20)*(x3322)))+(((IkReal(-1.00000000000000))*(r21)*(x3321)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x3323=IKsin(j3); +IkReal x3324=((sj5)*(sj6)); +IkReal x3325=((cj0)*(cj5)); +IkReal x3326=((IkReal(1.00000000000000))*(cj0)); +IkReal x3327=((IkReal(1.00000000000000))*(sj0)); +IkReal x3328=((IkReal(1.00000000000000))*(x3323)); +IkReal x3329=((cj6)*(r01)*(sj5)); +IkReal x3330=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x3324)))+(IKcos(j3))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x3326)*(x3330)))+(((r12)*(x3325)))+(((r00)*(sj0)*(x3324)))+(((IkReal(-1.00000000000000))*(sj2)*(x3328)))+(((IkReal(-1.00000000000000))*(r10)*(x3324)*(x3326)))+(((sj0)*(x3329)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x3327)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x3324)*(x3326)))+(((r02)*(x3325)))+(((IkReal(-1.00000000000000))*(x3327)*(x3330)))+(((IkReal(-1.00000000000000))*(r10)*(x3324)*(x3327)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj2)*(x3328)))+(((IkReal(-1.00000000000000))*(x3326)*(x3329)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst79; +IkReal x3331=(cj5)*(cj5); +IkReal x3332=(r20)*(r20); +IkReal x3333=(sj6)*(sj6); +IkReal x3334=(cj6)*(cj6); +IkReal x3335=(r21)*(r21); +IkReal x3336=((cj6)*(r21)); +IkReal x3337=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3338=((cj5)*(r22)*(sj5)); +gconst79=IKsign(((((x3337)*(x3338)))+(((IkReal(-1.00000000000000))*(x3336)*(x3337)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3331)*(x3334)*(x3335)))+(((x3331)*(x3336)*(x3337)))+(((x3331)*(x3332)*(x3333)))+(((x3333)*(x3335)))+(((IkReal(2.00000000000000))*(x3336)*(x3338)))+(((x3332)*(x3334))))); +IkReal x3339=(cj5)*(cj5); +IkReal x3340=(r20)*(r20); +IkReal x3341=(sj6)*(sj6); +IkReal x3342=(cj6)*(cj6); +IkReal x3343=(r21)*(r21); +IkReal x3344=((cj6)*(r21)); +IkReal x3345=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3346=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x3344)*(x3345)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3340)*(x3342)))+(((x3341)*(x3343)))+(((x3339)*(x3340)*(x3341)))+(((x3339)*(x3342)*(x3343)))+(((x3345)*(x3346)))+(((IkReal(2.00000000000000))*(x3344)*(x3346)))+(((x3339)*(x3344)*(x3345)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst80; +IkReal x3347=(cj6)*(cj6); +IkReal x3348=(sj6)*(sj6); +IkReal x3349=((IkReal(1.00000000000000))*(r21)); +IkReal x3350=((cj6)*(r20)); +IkReal x3351=((r22)*(sj5)); +IkReal x3352=((r01)*(sj0)); +IkReal x3353=((r00)*(sj0)); +IkReal x3354=((cj0)*(r10)); +IkReal x3355=((r02)*(sj0)*(sj5)); +IkReal x3356=((cj5)*(x3347)); +IkReal x3357=((cj0)*(r12)*(sj5)); +IkReal x3358=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3359=((cj5)*(x3348)); +IkReal x3360=((r20)*(x3359)); +gconst80=IKsign(((((x3352)*(x3360)))+(((IkReal(-1.00000000000000))*(x3349)*(x3353)*(x3359)))+(((r20)*(x3352)*(x3356)))+(((IkReal(-1.00000000000000))*(x3358)*(x3360)))+(((x3350)*(x3355)))+(((cj6)*(x3351)*(x3354)))+(((IkReal(-1.00000000000000))*(sj6)*(x3351)*(x3358)))+(((IkReal(-1.00000000000000))*(cj6)*(x3351)*(x3353)))+(((r21)*(sj6)*(x3357)))+(((r21)*(x3354)*(x3356)))+(((sj6)*(x3351)*(x3352)))+(((r21)*(x3354)*(x3359)))+(((IkReal(-1.00000000000000))*(r20)*(x3356)*(x3358)))+(((IkReal(-1.00000000000000))*(x3349)*(x3353)*(x3356)))+(((IkReal(-1.00000000000000))*(x3350)*(x3357)))+(((IkReal(-1.00000000000000))*(sj6)*(x3349)*(x3355))))); +IkReal x3361=(cj6)*(cj6); +IkReal x3362=(sj6)*(sj6); +IkReal x3363=((IkReal(1.00000000000000))*(r21)); +IkReal x3364=((cj6)*(r20)); +IkReal x3365=((r22)*(sj5)); +IkReal x3366=((r01)*(sj0)); +IkReal x3367=((r00)*(sj0)); +IkReal x3368=((cj0)*(r10)); +IkReal x3369=((r02)*(sj0)*(sj5)); +IkReal x3370=((cj5)*(x3361)); +IkReal x3371=((cj0)*(r12)*(sj5)); +IkReal x3372=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3373=((cj5)*(x3362)); +IkReal x3374=((r20)*(x3373)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r20)*(x3370)*(x3372)))+(((x3366)*(x3374)))+(((x3364)*(x3369)))+(((r21)*(x3368)*(x3370)))+(((IkReal(-1.00000000000000))*(x3363)*(x3367)*(x3370)))+(((r21)*(sj6)*(x3371)))+(((r21)*(x3368)*(x3373)))+(((IkReal(-1.00000000000000))*(x3364)*(x3371)))+(((IkReal(-1.00000000000000))*(sj6)*(x3363)*(x3369)))+(((IkReal(-1.00000000000000))*(x3372)*(x3374)))+(((cj6)*(x3365)*(x3368)))+(((r20)*(x3366)*(x3370)))+(((sj6)*(x3365)*(x3366)))+(((IkReal(-1.00000000000000))*(x3363)*(x3367)*(x3373)))+(((IkReal(-1.00000000000000))*(sj6)*(x3365)*(x3372)))+(((IkReal(-1.00000000000000))*(cj6)*(x3365)*(x3367)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3375=((cj2)*(sj6)); +IkReal x3376=((IkReal(1.00000000000000))*(r20)); +IkReal x3377=((cj2)*(cj6)); +if( IKabs(((gconst80)*(((((r21)*(x3375)))+(((IkReal(-1.00000000000000))*(x3376)*(x3377))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst80)*(((((IkReal(-1.00000000000000))*(cj5)*(x3375)*(x3376)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r21)*(x3377))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst80)*(((((r21)*(x3375)))+(((IkReal(-1.00000000000000))*(x3376)*(x3377)))))), ((gconst80)*(((((IkReal(-1.00000000000000))*(cj5)*(x3375)*(x3376)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r21)*(x3377))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3378=IKsin(j4); +IkReal x3379=IKcos(j4); +IkReal x3380=((r00)*(sj6)); +IkReal x3381=((IkReal(1.00000000000000))*(r12)); +IkReal x3382=((IkReal(1.00000000000000))*(cj6)); +IkReal x3383=((cj6)*(r01)); +IkReal x3384=((r11)*(sj6)); +IkReal x3385=((r01)*(sj6)); +IkReal x3386=((IkReal(1.00000000000000))*(cj5)); +IkReal x3387=((IkReal(1.00000000000000))*(sj6)); +IkReal x3388=((cj5)*(r11)); +IkReal x3389=((cj6)*(r00)); +IkReal x3390=((cj5)*(cj6)); +IkReal x3391=((r02)*(sj5)); +IkReal x3392=((cj6)*(r10)); +IkReal x3393=((cj5)*(sj6)); +IkReal x3394=((r10)*(sj6)); +IkReal x3395=((cj5)*(r01)); +IkReal x3396=((sj5)*(x3378)); +IkReal x3397=((cj0)*(x3379)); +IkReal x3398=((cj0)*(x3378)); +IkReal x3399=((sj0)*(x3379)); +IkReal x3400=((sj0)*(x3378)); +IkReal x3401=((r20)*(x3379)); +IkReal x3402=((r21)*(x3378)); +IkReal x3403=((r21)*(x3379)); +IkReal x3404=((r20)*(x3378)); +IkReal x3405=((cj5)*(x3400)); +evalcond[0]=((((r22)*(x3396)))+(((IkReal(-1.00000000000000))*(x3382)*(x3401)))+(((x3393)*(x3404)))+(((x3390)*(x3402)))+(((sj6)*(x3403)))); +evalcond[1]=((((cj6)*(x3404)))+(sj3)+(((IkReal(-1.00000000000000))*(x3387)*(x3402)))+(((r22)*(sj5)*(x3379)))+(((x3393)*(x3401)))+(((x3390)*(x3403)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3384)*(x3397)))+(((x3385)*(x3399)))+(((x3391)*(x3400)))+(((IkReal(-1.00000000000000))*(x3386)*(x3394)*(x3398)))+(((x3392)*(x3397)))+(((x3380)*(x3405)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x3382)*(x3399)))+(((IkReal(-1.00000000000000))*(x3382)*(x3388)*(x3398)))+(((IkReal(-1.00000000000000))*(cj0)*(x3381)*(x3396)))+(((x3383)*(x3405)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x3382)*(x3388)*(x3397)))+(((IkReal(-1.00000000000000))*(x3386)*(x3394)*(x3397)))+(((x3389)*(x3400)))+(((IkReal(-1.00000000000000))*(sj5)*(x3381)*(x3397)))+(((cj5)*(x3380)*(x3399)))+(((IkReal(-1.00000000000000))*(r10)*(x3382)*(x3398)))+(((IkReal(-1.00000000000000))*(x3385)*(x3400)))+(((cj5)*(x3383)*(x3399)))+(((cj3)*(sj2)))+(((x3391)*(x3399)))+(((x3384)*(x3398)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(sj0)*(x3381)*(x3396)))+(((IkReal(-1.00000000000000))*(sj2)))+(((x3389)*(x3397)))+(((IkReal(-1.00000000000000))*(x3385)*(x3397)))+(((x3392)*(x3399)))+(((IkReal(-1.00000000000000))*(x3391)*(x3398)))+(((IkReal(-1.00000000000000))*(x3380)*(x3386)*(x3398)))+(((IkReal(-1.00000000000000))*(x3386)*(x3394)*(x3400)))+(((IkReal(-1.00000000000000))*(x3382)*(x3395)*(x3398)))+(((IkReal(-1.00000000000000))*(x3384)*(x3399)))+(((IkReal(-1.00000000000000))*(x3382)*(x3388)*(x3400)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x3382)*(x3400)))+(((IkReal(-1.00000000000000))*(x3380)*(x3386)*(x3397)))+(((IkReal(-1.00000000000000))*(x3391)*(x3397)))+(((IkReal(-1.00000000000000))*(x3386)*(x3394)*(x3399)))+(((IkReal(-1.00000000000000))*(r00)*(x3382)*(x3398)))+(((x3384)*(x3400)))+(((cj2)*(cj3)))+(((IkReal(-1.00000000000000))*(x3382)*(x3395)*(x3397)))+(((IkReal(-1.00000000000000))*(sj5)*(x3381)*(x3399)))+(((x3385)*(x3398)))+(((IkReal(-1.00000000000000))*(x3382)*(x3388)*(x3399)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3406=((r21)*(sj3)); +IkReal x3407=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst79)*(((((sj6)*(x3406)))+(((IkReal(-1.00000000000000))*(cj6)*(x3407))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst79)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3407)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3406)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst79)*(((((sj6)*(x3406)))+(((IkReal(-1.00000000000000))*(cj6)*(x3407)))))), ((gconst79)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3407)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3406)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3408=IKsin(j4); +IkReal x3409=IKcos(j4); +IkReal x3410=((r00)*(sj6)); +IkReal x3411=((IkReal(1.00000000000000))*(r12)); +IkReal x3412=((IkReal(1.00000000000000))*(cj6)); +IkReal x3413=((cj6)*(r01)); +IkReal x3414=((r11)*(sj6)); +IkReal x3415=((r01)*(sj6)); +IkReal x3416=((IkReal(1.00000000000000))*(cj5)); +IkReal x3417=((IkReal(1.00000000000000))*(sj6)); +IkReal x3418=((cj5)*(r11)); +IkReal x3419=((cj6)*(r00)); +IkReal x3420=((cj5)*(cj6)); +IkReal x3421=((r02)*(sj5)); +IkReal x3422=((cj6)*(r10)); +IkReal x3423=((cj5)*(sj6)); +IkReal x3424=((r10)*(sj6)); +IkReal x3425=((cj5)*(r01)); +IkReal x3426=((sj5)*(x3408)); +IkReal x3427=((cj0)*(x3409)); +IkReal x3428=((cj0)*(x3408)); +IkReal x3429=((sj0)*(x3409)); +IkReal x3430=((sj0)*(x3408)); +IkReal x3431=((r20)*(x3409)); +IkReal x3432=((r21)*(x3408)); +IkReal x3433=((r21)*(x3409)); +IkReal x3434=((r20)*(x3408)); +IkReal x3435=((cj5)*(x3430)); +evalcond[0]=((((r22)*(x3426)))+(((sj6)*(x3433)))+(((x3420)*(x3432)))+(((IkReal(-1.00000000000000))*(x3412)*(x3431)))+(((x3423)*(x3434)))); +evalcond[1]=((((r22)*(sj5)*(x3409)))+(sj3)+(((cj6)*(x3434)))+(((x3423)*(x3431)))+(((x3420)*(x3433)))+(((IkReal(-1.00000000000000))*(x3417)*(x3432)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3414)*(x3427)))+(((IkReal(-1.00000000000000))*(r00)*(x3412)*(x3429)))+(((IkReal(-1.00000000000000))*(x3416)*(x3424)*(x3428)))+(((x3422)*(x3427)))+(((x3415)*(x3429)))+(((x3413)*(x3435)))+(cj2)+(((IkReal(-1.00000000000000))*(cj0)*(x3411)*(x3426)))+(((x3410)*(x3435)))+(((IkReal(-1.00000000000000))*(x3412)*(x3418)*(x3428)))+(((x3421)*(x3430)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x3415)*(x3430)))+(((IkReal(-1.00000000000000))*(x3412)*(x3418)*(x3427)))+(((x3419)*(x3430)))+(((IkReal(-1.00000000000000))*(sj5)*(x3411)*(x3427)))+(((cj5)*(x3410)*(x3429)))+(((IkReal(-1.00000000000000))*(r10)*(x3412)*(x3428)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(x3416)*(x3424)*(x3427)))+(((x3421)*(x3429)))+(((x3414)*(x3428)))+(((cj5)*(x3413)*(x3429)))); +evalcond[4]=((((x3419)*(x3427)))+(((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(x3421)*(x3428)))+(((IkReal(-1.00000000000000))*(x3412)*(x3425)*(x3428)))+(((IkReal(-1.00000000000000))*(x3412)*(x3418)*(x3430)))+(((x3422)*(x3429)))+(((IkReal(-1.00000000000000))*(x3410)*(x3416)*(x3428)))+(((IkReal(-1.00000000000000))*(x3414)*(x3429)))+(((IkReal(-1.00000000000000))*(sj0)*(x3411)*(x3426)))+(((IkReal(-1.00000000000000))*(x3415)*(x3427)))+(((IkReal(-1.00000000000000))*(x3416)*(x3424)*(x3430)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x3412)*(x3418)*(x3429)))+(((IkReal(-1.00000000000000))*(x3410)*(x3416)*(x3427)))+(((x3415)*(x3428)))+(((x3414)*(x3430)))+(((IkReal(-1.00000000000000))*(r00)*(x3412)*(x3428)))+(((IkReal(-1.00000000000000))*(x3416)*(x3424)*(x3429)))+(((cj2)*(cj3)))+(((IkReal(-1.00000000000000))*(x3412)*(x3425)*(x3427)))+(((IkReal(-1.00000000000000))*(r10)*(x3412)*(x3430)))+(((IkReal(-1.00000000000000))*(sj5)*(x3411)*(x3429)))+(((IkReal(-1.00000000000000))*(x3421)*(x3427)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3436=((IkReal(1.00000000000000))*(sj2)); +if( IKabs(((gconst78)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x3436)))+(((r21)*(sj2)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst78)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x3436)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(r21)*(x3436)))+(((IkReal(-1.00000000000000))*(cj5)*(r20)*(sj6)*(x3436))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst78)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x3436)))+(((r21)*(sj2)*(sj6)))))), ((gconst78)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x3436)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(r21)*(x3436)))+(((IkReal(-1.00000000000000))*(cj5)*(r20)*(sj6)*(x3436))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x3437=IKsin(j4); +IkReal x3438=IKcos(j4); +IkReal x3439=((r00)*(sj6)); +IkReal x3440=((cj6)*(r01)); +IkReal x3441=((IkReal(1.00000000000000))*(cj0)); +IkReal x3442=((IkReal(1.00000000000000))*(sj0)); +IkReal x3443=((r10)*(sj6)); +IkReal x3444=((sj5)*(x3437)); +IkReal x3445=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x3446=((cj5)*(x3437)); +IkReal x3447=((cj6)*(x3438)); +IkReal x3448=((sj0)*(x3446)); +IkReal x3449=((r01)*(sj6)*(x3438)); +IkReal x3450=((r11)*(sj6)*(x3438)); +evalcond[0]=((((r22)*(x3444)))+(((r21)*(sj6)*(x3438)))+(((r20)*(sj6)*(x3446)))+(((cj6)*(r21)*(x3446)))+(((IkReal(-1.00000000000000))*(r20)*(x3447)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r12)*(x3441)*(x3444)))+(((r02)*(sj0)*(x3444)))+(((sj0)*(x3449)))+(((x3440)*(x3448)))+(((IkReal(-1.00000000000000))*(x3441)*(x3450)))+(cj2)+(((cj0)*(r10)*(x3447)))+(((x3439)*(x3448)))+(((IkReal(-1.00000000000000))*(r00)*(x3442)*(x3447)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x3441)*(x3446)))+(((IkReal(-1.00000000000000))*(x3441)*(x3443)*(x3446)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3440)*(x3441)*(x3446)))+(((IkReal(-1.00000000000000))*(x3442)*(x3443)*(x3446)))+(((IkReal(-1.00000000000000))*(x3439)*(x3441)*(x3446)))+(((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(r02)*(x3441)*(x3444)))+(((r10)*(sj0)*(x3447)))+(((cj0)*(r00)*(x3447)))+(((IkReal(-1.00000000000000))*(x3442)*(x3450)))+(((IkReal(-1.00000000000000))*(r12)*(x3442)*(x3444)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x3442)*(x3446)))+(((IkReal(-1.00000000000000))*(x3441)*(x3449)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3451=((IkReal(1.00000000000000))*(sj5)); +IkReal x3452=((cj6)*(r21)); +IkReal x3453=((r20)*(sj6)); +IkReal x3454=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x3452)*(x3454)))+(((IkReal(-1.00000000000000))*(x3453)*(x3454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3451)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x3451)*(x3452)))+(((IkReal(-1.00000000000000))*(x3451)*(x3453)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x3452)*(x3454)))+(((IkReal(-1.00000000000000))*(x3453)*(x3454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3451)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x3451)*(x3452)))+(((IkReal(-1.00000000000000))*(x3451)*(x3453)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x3452)*(x3454)))+(((IkReal(-1.00000000000000))*(x3453)*(x3454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3451)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x3451)*(x3452)))+(((IkReal(-1.00000000000000))*(x3451)*(x3453)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x3455=IKsin(j3); +IkReal x3456=IKcos(j3); +IkReal x3457=((sj0)*(sj5)); +IkReal x3458=((r00)*(sj6)); +IkReal x3459=((IkReal(1.00000000000000))*(cj4)); +IkReal x3460=((cj6)*(r01)); +IkReal x3461=((cj0)*(cj5)); +IkReal x3462=((cj5)*(sj0)); +IkReal x3463=((cj6)*(r11)); +IkReal x3464=((cj0)*(sj5)); +IkReal x3465=((cj6)*(sj4)); +IkReal x3466=((cj4)*(cj5)); +IkReal x3467=((cj6)*(r21)); +IkReal x3468=((r20)*(sj6)); +IkReal x3469=((r10)*(sj6)); +IkReal x3470=((IkReal(1.00000000000000))*(cj0)); +IkReal x3471=((IkReal(1.00000000000000))*(x3455)); +IkReal x3472=((cj0)*(sj4)*(sj6)); +IkReal x3473=((sj0)*(sj4)*(sj6)); +evalcond[0]=((x3456)+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x3468)))+(((sj5)*(x3467)))); +evalcond[1]=((((r20)*(x3465)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(x3455)+(((cj4)*(r22)*(sj5)))+(((x3466)*(x3468)))+(((x3466)*(x3467)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x3471)))+(((IkReal(-1.00000000000000))*(r02)*(x3462)))+(((x3457)*(x3460)))+(((IkReal(-1.00000000000000))*(x3464)*(x3469)))+(((x3457)*(x3458)))+(((IkReal(-1.00000000000000))*(x3463)*(x3464)))+(((r12)*(x3461)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x3457)*(x3463)))+(((IkReal(-1.00000000000000))*(cj2)*(x3471)))+(((r02)*(x3461)))+(((IkReal(-1.00000000000000))*(x3460)*(x3464)))+(((r12)*(x3462)))+(((IkReal(-1.00000000000000))*(x3457)*(x3469)))+(((IkReal(-1.00000000000000))*(x3458)*(x3464)))); +evalcond[4]=((((r00)*(sj0)*(x3465)))+(((cj4)*(x3458)*(x3462)))+(((IkReal(-1.00000000000000))*(r12)*(x3459)*(x3464)))+(((cj4)*(r02)*(x3457)))+(((IkReal(-1.00000000000000))*(r01)*(x3473)))+(((IkReal(-1.00000000000000))*(x3459)*(x3461)*(x3469)))+(((sj2)*(x3456)))+(((cj4)*(x3460)*(x3462)))+(((IkReal(-1.00000000000000))*(r10)*(x3465)*(x3470)))+(((IkReal(-1.00000000000000))*(x3459)*(x3461)*(x3463)))+(((r11)*(x3472)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x3458)*(x3459)*(x3461)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3465)))+(((IkReal(-1.00000000000000))*(x3459)*(x3460)*(x3461)))+(((r01)*(x3472)))+(((cj2)*(x3456)))+(((IkReal(-1.00000000000000))*(r00)*(x3465)*(x3470)))+(((IkReal(-1.00000000000000))*(r02)*(x3459)*(x3464)))+(((r11)*(x3473)))+(((IkReal(-1.00000000000000))*(r12)*(x3457)*(x3459)))+(((IkReal(-1.00000000000000))*(x3459)*(x3462)*(x3469)))+(((IkReal(-1.00000000000000))*(x3459)*(x3462)*(x3463)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3474=((cj2)*(sj6)); +IkReal x3475=((IkReal(1.00000000000000))*(r20)); +IkReal x3476=((cj2)*(cj6)); +if( IKabs(((gconst77)*(((((r21)*(x3474)))+(((IkReal(-1.00000000000000))*(x3475)*(x3476))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst77)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x3476)))+(((IkReal(-1.00000000000000))*(cj5)*(x3474)*(x3475)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst77)*(((((r21)*(x3474)))+(((IkReal(-1.00000000000000))*(x3475)*(x3476)))))), ((gconst77)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x3476)))+(((IkReal(-1.00000000000000))*(cj5)*(x3474)*(x3475)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x3477=IKsin(j4); +IkReal x3478=IKcos(j4); +IkReal x3479=((r00)*(sj6)); +IkReal x3480=((cj6)*(r01)); +IkReal x3481=((IkReal(1.00000000000000))*(cj0)); +IkReal x3482=((IkReal(1.00000000000000))*(sj0)); +IkReal x3483=((r10)*(sj6)); +IkReal x3484=((sj5)*(x3477)); +IkReal x3485=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x3486=((cj5)*(x3477)); +IkReal x3487=((cj6)*(x3478)); +IkReal x3488=((sj0)*(x3486)); +IkReal x3489=((r01)*(sj6)*(x3478)); +IkReal x3490=((r11)*(sj6)*(x3478)); +evalcond[0]=((((r20)*(sj6)*(x3486)))+(((cj6)*(r21)*(x3486)))+(((r21)*(sj6)*(x3478)))+(((IkReal(-1.00000000000000))*(r20)*(x3487)))+(((r22)*(x3484)))); +evalcond[1]=((((sj0)*(x3489)))+(((IkReal(-1.00000000000000))*(r12)*(x3481)*(x3484)))+(((IkReal(-1.00000000000000))*(x3481)*(x3483)*(x3486)))+(((r02)*(sj0)*(x3484)))+(((cj0)*(r10)*(x3487)))+(((IkReal(-1.00000000000000))*(r00)*(x3482)*(x3487)))+(cj2)+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x3481)*(x3486)))+(((x3479)*(x3488)))+(((x3480)*(x3488)))+(((IkReal(-1.00000000000000))*(x3481)*(x3490)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x3481)*(x3484)))+(((IkReal(-1.00000000000000))*(x3482)*(x3483)*(x3486)))+(((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(x3479)*(x3481)*(x3486)))+(((IkReal(-1.00000000000000))*(x3482)*(x3490)))+(((cj0)*(r00)*(x3487)))+(((IkReal(-1.00000000000000))*(r12)*(x3482)*(x3484)))+(((r10)*(sj0)*(x3487)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x3482)*(x3486)))+(((IkReal(-1.00000000000000))*(x3480)*(x3481)*(x3486)))+(((IkReal(-1.00000000000000))*(x3481)*(x3489)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3491=((IkReal(1.00000000000000))*(sj5)); +IkReal x3492=((cj6)*(r21)); +IkReal x3493=((r20)*(sj6)); +IkReal x3494=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3491)))+(((IkReal(-1.00000000000000))*(x3493)*(x3494)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x3492)*(x3494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x3491)*(x3492)))+(((IkReal(-1.00000000000000))*(x3491)*(x3493)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3491)))+(((IkReal(-1.00000000000000))*(x3493)*(x3494)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x3492)*(x3494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x3491)*(x3492)))+(((IkReal(-1.00000000000000))*(x3491)*(x3493)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3491)))+(((IkReal(-1.00000000000000))*(x3493)*(x3494)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x3492)*(x3494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x3491)*(x3492)))+(((IkReal(-1.00000000000000))*(x3491)*(x3493)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x3495=IKsin(j3); +IkReal x3496=IKcos(j3); +IkReal x3497=((sj0)*(sj5)); +IkReal x3498=((r00)*(sj6)); +IkReal x3499=((IkReal(1.00000000000000))*(cj4)); +IkReal x3500=((cj6)*(r01)); +IkReal x3501=((cj0)*(cj5)); +IkReal x3502=((cj5)*(sj0)); +IkReal x3503=((cj6)*(r11)); +IkReal x3504=((cj0)*(sj5)); +IkReal x3505=((cj6)*(sj4)); +IkReal x3506=((cj4)*(cj5)); +IkReal x3507=((cj6)*(r21)); +IkReal x3508=((r20)*(sj6)); +IkReal x3509=((r10)*(sj6)); +IkReal x3510=((IkReal(1.00000000000000))*(cj0)); +IkReal x3511=((IkReal(1.00000000000000))*(x3495)); +IkReal x3512=((cj0)*(sj4)*(sj6)); +IkReal x3513=((sj0)*(sj4)*(sj6)); +evalcond[0]=((x3496)+(((sj5)*(x3508)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x3507)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x3506)*(x3507)))+(x3495)+(((cj4)*(r22)*(sj5)))+(((x3506)*(x3508)))+(((r20)*(x3505)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3503)*(x3504)))+(((IkReal(-1.00000000000000))*(x3504)*(x3509)))+(((IkReal(-1.00000000000000))*(r02)*(x3502)))+(((r12)*(x3501)))+(((x3497)*(x3500)))+(((x3497)*(x3498)))+(((IkReal(-1.00000000000000))*(sj2)*(x3511)))); +evalcond[3]=((((r02)*(x3501)))+(((IkReal(-1.00000000000000))*(x3497)*(x3509)))+(((IkReal(-1.00000000000000))*(x3498)*(x3504)))+(((IkReal(-1.00000000000000))*(x3500)*(x3504)))+(((IkReal(-1.00000000000000))*(x3497)*(x3503)))+(((IkReal(-1.00000000000000))*(cj2)*(x3511)))+(((r12)*(x3502)))); +evalcond[4]=((((cj4)*(r02)*(x3497)))+(((IkReal(-1.00000000000000))*(r10)*(x3505)*(x3510)))+(((IkReal(-1.00000000000000))*(x3499)*(x3501)*(x3509)))+(((r00)*(sj0)*(x3505)))+(((IkReal(-1.00000000000000))*(x3499)*(x3501)*(x3503)))+(((IkReal(-1.00000000000000))*(r01)*(x3513)))+(((r11)*(x3512)))+(((cj4)*(x3500)*(x3502)))+(((sj2)*(x3496)))+(((cj4)*(x3498)*(x3502)))+(((IkReal(-1.00000000000000))*(r12)*(x3499)*(x3504)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x3499)*(x3502)*(x3509)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3505)))+(((IkReal(-1.00000000000000))*(x3499)*(x3502)*(x3503)))+(((IkReal(-1.00000000000000))*(r02)*(x3499)*(x3504)))+(((IkReal(-1.00000000000000))*(x3498)*(x3499)*(x3501)))+(((r01)*(x3512)))+(((cj2)*(x3496)))+(((IkReal(-1.00000000000000))*(r12)*(x3497)*(x3499)))+(((r11)*(x3513)))+(((IkReal(-1.00000000000000))*(x3499)*(x3500)*(x3501)))+(((IkReal(-1.00000000000000))*(r00)*(x3505)*(x3510)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x3514=((cj6)*(r01)); +IkReal x3515=((cj0)*(cj5)); +IkReal x3516=((sj0)*(sj5)); +IkReal x3517=((cj0)*(sj5)); +IkReal x3518=((cj6)*(r11)); +IkReal x3519=((r10)*(sj6)); +IkReal x3520=((cj5)*(sj0)); +IkReal x3521=((r00)*(sj6)); +if( IKabs(((((IkReal(-5.42449275362319))*(x3516)*(x3521)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(5.42449275362319))*(x3517)*(x3518)))+(((IkReal(-0.144927536231884))*(x3515)*(x3519)))+(((IkReal(5.42449275362319))*(x3517)*(x3519)))+(((IkReal(-0.144927536231884))*(r12)*(x3517)))+(((IkReal(0.144927536231884))*(x3514)*(x3520)))+(((IkReal(0.144927536231884))*(x3520)*(x3521)))+(((IkReal(-5.42449275362319))*(r12)*(x3515)))+(((IkReal(-0.144927536231884))*(x3515)*(x3518)))+(((IkReal(-5.42449275362319))*(x3514)*(x3516)))+(((IkReal(5.42449275362319))*(r02)*(x3520)))+(((IkReal(0.144927536231884))*(r02)*(x3516))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((IkReal(0.0144927536231884))*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((IkReal(69.0000000000000))+(((IkReal(-374.290000000000))*(x3514)*(x3517)))+(((IkReal(10.0000000000000))*(x3515)*(x3521)))+(((IkReal(10.0000000000000))*(r02)*(x3517)))+(((IkReal(10.0000000000000))*(x3519)*(x3520)))+(((IkReal(-374.290000000000))*(x3517)*(x3521)))+(((IkReal(-1000.00000000000))*(cj0)*(px)))+(((IkReal(10.0000000000000))*(x3518)*(x3520)))+(((IkReal(364.420000000000))*(cj1)))+(((IkReal(10.0000000000000))*(x3514)*(x3515)))+(((IkReal(-374.290000000000))*(x3516)*(x3519)))+(((IkReal(-374.290000000000))*(x3516)*(x3518)))+(((IkReal(374.290000000000))*(r12)*(x3520)))+(((IkReal(374.290000000000))*(r02)*(x3515)))+(((IkReal(-1000.00000000000))*(py)*(sj0)))+(((IkReal(10.0000000000000))*(r12)*(x3516))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-5.42449275362319))*(x3516)*(x3521)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(5.42449275362319))*(x3517)*(x3518)))+(((IkReal(-0.144927536231884))*(x3515)*(x3519)))+(((IkReal(5.42449275362319))*(x3517)*(x3519)))+(((IkReal(-0.144927536231884))*(r12)*(x3517)))+(((IkReal(0.144927536231884))*(x3514)*(x3520)))+(((IkReal(0.144927536231884))*(x3520)*(x3521)))+(((IkReal(-5.42449275362319))*(r12)*(x3515)))+(((IkReal(-0.144927536231884))*(x3515)*(x3518)))+(((IkReal(-5.42449275362319))*(x3514)*(x3516)))+(((IkReal(5.42449275362319))*(r02)*(x3520)))+(((IkReal(0.144927536231884))*(r02)*(x3516)))))+IKsqr(((IkReal(0.0144927536231884))*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((IkReal(69.0000000000000))+(((IkReal(-374.290000000000))*(x3514)*(x3517)))+(((IkReal(10.0000000000000))*(x3515)*(x3521)))+(((IkReal(10.0000000000000))*(r02)*(x3517)))+(((IkReal(10.0000000000000))*(x3519)*(x3520)))+(((IkReal(-374.290000000000))*(x3517)*(x3521)))+(((IkReal(-1000.00000000000))*(cj0)*(px)))+(((IkReal(10.0000000000000))*(x3518)*(x3520)))+(((IkReal(364.420000000000))*(cj1)))+(((IkReal(10.0000000000000))*(x3514)*(x3515)))+(((IkReal(-374.290000000000))*(x3516)*(x3519)))+(((IkReal(-374.290000000000))*(x3516)*(x3518)))+(((IkReal(374.290000000000))*(r12)*(x3520)))+(((IkReal(374.290000000000))*(r02)*(x3515)))+(((IkReal(-1000.00000000000))*(py)*(sj0)))+(((IkReal(10.0000000000000))*(r12)*(x3516)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((IkReal(-5.42449275362319))*(x3516)*(x3521)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(5.42449275362319))*(x3517)*(x3518)))+(((IkReal(-0.144927536231884))*(x3515)*(x3519)))+(((IkReal(5.42449275362319))*(x3517)*(x3519)))+(((IkReal(-0.144927536231884))*(r12)*(x3517)))+(((IkReal(0.144927536231884))*(x3514)*(x3520)))+(((IkReal(0.144927536231884))*(x3520)*(x3521)))+(((IkReal(-5.42449275362319))*(r12)*(x3515)))+(((IkReal(-0.144927536231884))*(x3515)*(x3518)))+(((IkReal(-5.42449275362319))*(x3514)*(x3516)))+(((IkReal(5.42449275362319))*(r02)*(x3520)))+(((IkReal(0.144927536231884))*(r02)*(x3516)))), ((IkReal(0.0144927536231884))*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((IkReal(69.0000000000000))+(((IkReal(-374.290000000000))*(x3514)*(x3517)))+(((IkReal(10.0000000000000))*(x3515)*(x3521)))+(((IkReal(10.0000000000000))*(r02)*(x3517)))+(((IkReal(10.0000000000000))*(x3519)*(x3520)))+(((IkReal(-374.290000000000))*(x3517)*(x3521)))+(((IkReal(-1000.00000000000))*(cj0)*(px)))+(((IkReal(10.0000000000000))*(x3518)*(x3520)))+(((IkReal(364.420000000000))*(cj1)))+(((IkReal(10.0000000000000))*(x3514)*(x3515)))+(((IkReal(-374.290000000000))*(x3516)*(x3519)))+(((IkReal(-374.290000000000))*(x3516)*(x3518)))+(((IkReal(374.290000000000))*(r12)*(x3520)))+(((IkReal(374.290000000000))*(r02)*(x3515)))+(((IkReal(-1000.00000000000))*(py)*(sj0)))+(((IkReal(10.0000000000000))*(r12)*(x3516))))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[3]; +IkReal x3522=IKcos(j2); +IkReal x3523=((IkReal(0.374290000000000))*(sj5)); +IkReal x3524=((cj0)*(sj6)); +IkReal x3525=((IkReal(0.0100000000000000))*(sj5)); +IkReal x3526=((cj0)*(r02)); +IkReal x3527=((IkReal(0.0100000000000000))*(cj5)); +IkReal x3528=((IkReal(1.00000000000000))*(py)); +IkReal x3529=((r01)*(sj0)); +IkReal x3530=((r20)*(sj6)); +IkReal x3531=((r11)*(sj0)); +IkReal x3532=((IkReal(0.374290000000000))*(cj5)); +IkReal x3533=((cj0)*(r12)); +IkReal x3534=((sj0)*(x3532)); +IkReal x3535=((cj6)*(x3527)); +IkReal x3536=((IkReal(0.0690000000000000))*(x3522)); +IkReal x3537=((r10)*(sj0)*(sj6)); +IkReal x3538=((r00)*(sj0)*(sj6)); +IkReal x3539=((cj0)*(cj6)*(x3523)); +evalcond[0]=((((x3523)*(x3530)))+(((IkReal(0.364420000000000))*(sj1)))+(((cj1)*(x3536)))+(((IkReal(-1.00000000000000))*(r21)*(x3535)))+(((IkReal(-1.00000000000000))*(x3527)*(x3530)))+(((IkReal(-1.00000000000000))*(r22)*(x3532)))+(((cj6)*(r21)*(x3523)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x3525)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x3529)*(x3535)))+(((x3532)*(x3533)))+(((x3525)*(x3533)))+(((r10)*(x3524)*(x3527)))+(((IkReal(-1.00000000000000))*(r11)*(x3539)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3525)))+(((cj6)*(x3523)*(x3529)))+(((x3523)*(x3538)))+(((IkReal(-1.00000000000000))*(x3527)*(x3538)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((IkReal(-1.00000000000000))*(r10)*(x3523)*(x3524)))+(((IkReal(-1.00000000000000))*(r02)*(x3534)))+(((IkReal(-1.00000000000000))*(cj0)*(x3528)))+(((px)*(sj0)))+(((cj0)*(r11)*(x3535)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((x3526)*(x3532)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(r01)*(x3539)))+(((x3527)*(x3537)))+(((r12)*(sj0)*(x3525)))+(((IkReal(-1.00000000000000))*(cj6)*(x3523)*(x3531)))+(((r00)*(x3524)*(x3527)))+(((IkReal(-1.00000000000000))*(x3523)*(x3537)))+(((IkReal(-1.00000000000000))*(sj0)*(x3528)))+(((x3525)*(x3526)))+(((cj0)*(r01)*(x3535)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(r00)*(x3523)*(x3524)))+(((r12)*(x3534)))+(((IkReal(-1.00000000000000))*(sj1)*(x3536)))+(((x3531)*(x3535)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst0; +IkReal x3540=(cj6)*(cj6); +IkReal x3541=(sj6)*(sj6); +IkReal x3542=((IkReal(1.00000000000000))*(r01)); +IkReal x3543=((sj0)*(sj5)); +IkReal x3544=((cj6)*(r22)); +IkReal x3545=((r21)*(sj6)); +IkReal x3546=((r00)*(r21)); +IkReal x3547=((cj0)*(sj5)); +IkReal x3548=((cj6)*(r20)); +IkReal x3549=((r22)*(sj6)); +IkReal x3550=((cj0)*(cj5)); +IkReal x3551=((IkReal(1.00000000000000))*(r10)); +IkReal x3552=((cj5)*(sj0)); +IkReal x3553=((r20)*(x3541)); +IkReal x3554=((x3540)*(x3552)); +gconst0=IKsign(((((r00)*(x3543)*(x3544)))+(((x3546)*(x3554)))+(((IkReal(-1.00000000000000))*(x3544)*(x3547)*(x3551)))+(((IkReal(-1.00000000000000))*(r21)*(x3541)*(x3550)*(x3551)))+(((IkReal(-1.00000000000000))*(r12)*(x3545)*(x3547)))+(((IkReal(-1.00000000000000))*(r20)*(x3542)*(x3554)))+(((r11)*(x3547)*(x3549)))+(((r12)*(x3547)*(x3548)))+(((r11)*(x3550)*(x3553)))+(((r11)*(r20)*(x3540)*(x3550)))+(((IkReal(-1.00000000000000))*(x3542)*(x3552)*(x3553)))+(((IkReal(-1.00000000000000))*(r21)*(x3540)*(x3550)*(x3551)))+(((IkReal(-1.00000000000000))*(x3542)*(x3543)*(x3549)))+(((IkReal(-1.00000000000000))*(r02)*(x3543)*(x3548)))+(((r02)*(x3543)*(x3545)))+(((x3541)*(x3546)*(x3552))))); +IkReal x3555=(cj6)*(cj6); +IkReal x3556=(sj6)*(sj6); +IkReal x3557=((IkReal(1.00000000000000))*(r01)); +IkReal x3558=((sj0)*(sj5)); +IkReal x3559=((cj6)*(r22)); +IkReal x3560=((r21)*(sj6)); +IkReal x3561=((r00)*(r21)); +IkReal x3562=((cj0)*(sj5)); +IkReal x3563=((cj6)*(r20)); +IkReal x3564=((r22)*(sj6)); +IkReal x3565=((cj0)*(cj5)); +IkReal x3566=((IkReal(1.00000000000000))*(r10)); +IkReal x3567=((cj5)*(sj0)); +IkReal x3568=((r20)*(x3556)); +IkReal x3569=((x3555)*(x3567)); +dummyeval[0]=((((r11)*(x3562)*(x3564)))+(((IkReal(-1.00000000000000))*(x3557)*(x3558)*(x3564)))+(((IkReal(-1.00000000000000))*(r02)*(x3558)*(x3563)))+(((IkReal(-1.00000000000000))*(r21)*(x3555)*(x3565)*(x3566)))+(((r11)*(r20)*(x3555)*(x3565)))+(((r00)*(x3558)*(x3559)))+(((IkReal(-1.00000000000000))*(r21)*(x3556)*(x3565)*(x3566)))+(((r11)*(x3565)*(x3568)))+(((x3561)*(x3569)))+(((IkReal(-1.00000000000000))*(x3559)*(x3562)*(x3566)))+(((r02)*(x3558)*(x3560)))+(((IkReal(-1.00000000000000))*(r12)*(x3560)*(x3562)))+(((IkReal(-1.00000000000000))*(r20)*(x3557)*(x3569)))+(((r12)*(x3562)*(x3563)))+(((x3556)*(x3561)*(x3567)))+(((IkReal(-1.00000000000000))*(x3557)*(x3567)*(x3568)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst1; +IkReal x3570=(cj6)*(cj6); +IkReal x3571=(sj6)*(sj6); +IkReal x3572=((sj5)*(sj6)); +IkReal x3573=((IkReal(1.00000000000000))*(cj0)); +IkReal x3574=((cj6)*(sj5)); +IkReal x3575=((r20)*(sj0)); +IkReal x3576=((cj0)*(r20)); +IkReal x3577=((r00)*(r21)); +IkReal x3578=((r22)*(sj0)); +IkReal x3579=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3580=((cj5)*(x3571)); +IkReal x3581=((cj5)*(x3570)); +gconst1=IKsign(((((IkReal(-1.00000000000000))*(x3573)*(x3577)*(x3580)))+(((IkReal(-1.00000000000000))*(r10)*(x3579)*(x3580)))+(((r02)*(x3574)*(x3576)))+(((r12)*(x3574)*(x3575)))+(((r11)*(x3575)*(x3580)))+(((IkReal(-1.00000000000000))*(r10)*(x3579)*(x3581)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3572)*(x3573)))+(((IkReal(-1.00000000000000))*(r10)*(x3574)*(x3578)))+(((r11)*(x3575)*(x3581)))+(((r01)*(x3576)*(x3580)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3573)*(x3574)))+(((r11)*(x3572)*(x3578)))+(((r01)*(x3576)*(x3581)))+(((cj0)*(r01)*(r22)*(x3572)))+(((IkReal(-1.00000000000000))*(r12)*(x3572)*(x3579)))+(((IkReal(-1.00000000000000))*(x3573)*(x3577)*(x3581))))); +IkReal x3582=(cj6)*(cj6); +IkReal x3583=(sj6)*(sj6); +IkReal x3584=((sj5)*(sj6)); +IkReal x3585=((IkReal(1.00000000000000))*(cj0)); +IkReal x3586=((cj6)*(sj5)); +IkReal x3587=((r20)*(sj0)); +IkReal x3588=((cj0)*(r20)); +IkReal x3589=((r00)*(r21)); +IkReal x3590=((r22)*(sj0)); +IkReal x3591=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3592=((cj5)*(x3583)); +IkReal x3593=((cj5)*(x3582)); +dummyeval[0]=((((r02)*(x3586)*(x3588)))+(((r11)*(x3584)*(x3590)))+(((r11)*(x3587)*(x3592)))+(((IkReal(-1.00000000000000))*(r10)*(x3591)*(x3593)))+(((IkReal(-1.00000000000000))*(r10)*(x3586)*(x3590)))+(((r01)*(x3588)*(x3593)))+(((IkReal(-1.00000000000000))*(r10)*(x3591)*(x3592)))+(((cj0)*(r01)*(r22)*(x3584)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3584)*(x3585)))+(((IkReal(-1.00000000000000))*(x3585)*(x3589)*(x3592)))+(((IkReal(-1.00000000000000))*(r12)*(x3584)*(x3591)))+(((r01)*(x3588)*(x3592)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3585)*(x3586)))+(((r11)*(x3587)*(x3593)))+(((r12)*(x3586)*(x3587)))+(((IkReal(-1.00000000000000))*(x3585)*(x3589)*(x3593)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x3594=(cj1)*(cj1); +IkReal x3595=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x3594)))+(((cj2)*(x3595)))); +dummyeval[1]=((x3595)+(x3594)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[4]; +IkReal x3596=((IkReal(0.374290000000000))*(sj5)); +IkReal x3597=((cj0)*(sj6)); +IkReal x3598=((IkReal(0.0100000000000000))*(sj5)); +IkReal x3599=((cj0)*(r02)); +IkReal x3600=((IkReal(0.0100000000000000))*(cj5)); +IkReal x3601=((IkReal(1.00000000000000))*(py)); +IkReal x3602=((r01)*(sj0)); +IkReal x3603=((r20)*(sj6)); +IkReal x3604=((r11)*(sj0)); +IkReal x3605=((IkReal(0.374290000000000))*(cj5)); +IkReal x3606=((cj0)*(r12)); +IkReal x3607=((sj0)*(x3605)); +IkReal x3608=((cj6)*(x3600)); +IkReal x3609=((r10)*(sj0)*(sj6)); +IkReal x3610=((r00)*(sj0)*(sj6)); +IkReal x3611=((cj0)*(cj6)*(x3596)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x3598)))+(((IkReal(-1.00000000000000))*(r21)*(x3608)))+(((cj6)*(r21)*(x3596)))+(((x3596)*(x3603)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x3605)))+(((IkReal(-1.00000000000000))*(x3600)*(x3603)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((r10)*(x3597)*(x3600)))+(((IkReal(-1.00000000000000))*(x3600)*(x3610)))+(((IkReal(-1.00000000000000))*(cj0)*(x3601)))+(((x3596)*(x3610)))+(((cj0)*(r11)*(x3608)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3598)))+(((IkReal(-1.00000000000000))*(x3602)*(x3608)))+(((x3598)*(x3606)))+(((IkReal(-1.00000000000000))*(r11)*(x3611)))+(((x3605)*(x3606)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r02)*(x3607)))+(((cj6)*(x3596)*(x3602)))+(((IkReal(-1.00000000000000))*(r10)*(x3596)*(x3597)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((x3599)*(x3605)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((r12)*(sj0)*(x3598)))+(((IkReal(-1.00000000000000))*(sj0)*(x3601)))+(((x3600)*(x3609)))+(((IkReal(-1.00000000000000))*(r01)*(x3611)))+(((IkReal(-1.00000000000000))*(x3596)*(x3609)))+(((x3604)*(x3608)))+(((cj0)*(r01)*(x3608)))+(((IkReal(-1.00000000000000))*(cj6)*(x3596)*(x3604)))+(((r00)*(x3597)*(x3600)))+(((IkReal(0.364420000000000))*(cj1)))+(((r12)*(x3607)))+(((IkReal(-1.00000000000000))*(r00)*(x3596)*(x3597)))+(((x3598)*(x3599)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst13; +IkReal x3612=(cj6)*(cj6); +IkReal x3613=(sj6)*(sj6); +IkReal x3614=((IkReal(1.00000000000000))*(r21)); +IkReal x3615=((cj6)*(r20)); +IkReal x3616=((r22)*(sj5)); +IkReal x3617=((r01)*(sj0)); +IkReal x3618=((r00)*(sj0)); +IkReal x3619=((cj0)*(r10)); +IkReal x3620=((r02)*(sj0)*(sj5)); +IkReal x3621=((cj5)*(x3612)); +IkReal x3622=((cj0)*(r12)*(sj5)); +IkReal x3623=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3624=((cj5)*(x3613)); +IkReal x3625=((r20)*(x3624)); +gconst13=IKsign(((((r20)*(x3617)*(x3621)))+(((IkReal(-1.00000000000000))*(x3614)*(x3618)*(x3621)))+(((sj6)*(x3616)*(x3617)))+(((x3615)*(x3620)))+(((x3617)*(x3625)))+(((IkReal(-1.00000000000000))*(x3623)*(x3625)))+(((r21)*(sj6)*(x3622)))+(((r21)*(x3619)*(x3624)))+(((r21)*(x3619)*(x3621)))+(((IkReal(-1.00000000000000))*(x3614)*(x3618)*(x3624)))+(((IkReal(-1.00000000000000))*(sj6)*(x3614)*(x3620)))+(((cj6)*(x3616)*(x3619)))+(((IkReal(-1.00000000000000))*(sj6)*(x3616)*(x3623)))+(((IkReal(-1.00000000000000))*(cj6)*(x3616)*(x3618)))+(((IkReal(-1.00000000000000))*(r20)*(x3621)*(x3623)))+(((IkReal(-1.00000000000000))*(x3615)*(x3622))))); +IkReal x3626=(cj6)*(cj6); +IkReal x3627=(sj6)*(sj6); +IkReal x3628=((IkReal(1.00000000000000))*(r21)); +IkReal x3629=((cj6)*(r20)); +IkReal x3630=((r22)*(sj5)); +IkReal x3631=((r01)*(sj0)); +IkReal x3632=((r00)*(sj0)); +IkReal x3633=((cj0)*(r10)); +IkReal x3634=((r02)*(sj0)*(sj5)); +IkReal x3635=((cj5)*(x3626)); +IkReal x3636=((cj0)*(r12)*(sj5)); +IkReal x3637=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3638=((cj5)*(x3627)); +IkReal x3639=((r20)*(x3638)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x3637)*(x3639)))+(((r21)*(sj6)*(x3636)))+(((IkReal(-1.00000000000000))*(sj6)*(x3630)*(x3637)))+(((sj6)*(x3630)*(x3631)))+(((IkReal(-1.00000000000000))*(x3628)*(x3632)*(x3635)))+(((cj6)*(x3630)*(x3633)))+(((IkReal(-1.00000000000000))*(x3629)*(x3636)))+(((IkReal(-1.00000000000000))*(sj6)*(x3628)*(x3634)))+(((x3631)*(x3639)))+(((r20)*(x3631)*(x3635)))+(((IkReal(-1.00000000000000))*(x3628)*(x3632)*(x3638)))+(((IkReal(-1.00000000000000))*(r20)*(x3635)*(x3637)))+(((r21)*(x3633)*(x3635)))+(((x3629)*(x3634)))+(((IkReal(-1.00000000000000))*(cj6)*(x3630)*(x3632)))+(((r21)*(x3633)*(x3638)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst14; +IkReal x3640=(cj6)*(cj6); +IkReal x3641=(sj6)*(sj6); +IkReal x3642=((sj5)*(sj6)); +IkReal x3643=((IkReal(1.00000000000000))*(cj0)); +IkReal x3644=((cj6)*(sj5)); +IkReal x3645=((r20)*(sj0)); +IkReal x3646=((cj0)*(r20)); +IkReal x3647=((r00)*(r21)); +IkReal x3648=((r22)*(sj0)); +IkReal x3649=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3650=((cj5)*(x3641)); +IkReal x3651=((cj5)*(x3640)); +gconst14=IKsign(((((cj0)*(r01)*(r22)*(x3642)))+(((r11)*(x3645)*(x3651)))+(((r01)*(x3646)*(x3651)))+(((IkReal(-1.00000000000000))*(x3643)*(x3647)*(x3650)))+(((r02)*(x3644)*(x3646)))+(((r12)*(x3644)*(x3645)))+(((r01)*(x3646)*(x3650)))+(((IkReal(-1.00000000000000))*(r10)*(x3649)*(x3651)))+(((r11)*(x3645)*(x3650)))+(((IkReal(-1.00000000000000))*(r12)*(x3642)*(x3649)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3643)*(x3644)))+(((IkReal(-1.00000000000000))*(r10)*(x3649)*(x3650)))+(((IkReal(-1.00000000000000))*(x3643)*(x3647)*(x3651)))+(((IkReal(-1.00000000000000))*(r10)*(x3644)*(x3648)))+(((r11)*(x3642)*(x3648)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3642)*(x3643))))); +IkReal x3652=(cj6)*(cj6); +IkReal x3653=(sj6)*(sj6); +IkReal x3654=((sj5)*(sj6)); +IkReal x3655=((IkReal(1.00000000000000))*(cj0)); +IkReal x3656=((cj6)*(sj5)); +IkReal x3657=((r20)*(sj0)); +IkReal x3658=((cj0)*(r20)); +IkReal x3659=((r00)*(r21)); +IkReal x3660=((r22)*(sj0)); +IkReal x3661=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3662=((cj5)*(x3653)); +IkReal x3663=((cj5)*(x3652)); +dummyeval[0]=((((cj0)*(r01)*(r22)*(x3654)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3655)*(x3656)))+(((r11)*(x3657)*(x3663)))+(((r11)*(x3657)*(x3662)))+(((IkReal(-1.00000000000000))*(x3655)*(x3659)*(x3663)))+(((r12)*(x3656)*(x3657)))+(((IkReal(-1.00000000000000))*(r10)*(x3656)*(x3660)))+(((IkReal(-1.00000000000000))*(r12)*(x3654)*(x3661)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3654)*(x3655)))+(((r01)*(x3658)*(x3662)))+(((r11)*(x3654)*(x3660)))+(((IkReal(-1.00000000000000))*(r10)*(x3661)*(x3663)))+(((r01)*(x3658)*(x3663)))+(((IkReal(-1.00000000000000))*(x3655)*(x3659)*(x3662)))+(((IkReal(-1.00000000000000))*(r10)*(x3661)*(x3662)))+(((r02)*(x3656)*(x3658)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x3664=((cj5)*(r22)); +IkReal x3665=((IkReal(0.374290000000000))*(sj5)); +IkReal x3666=((cj0)*(sj6)); +IkReal x3667=((cj6)*(r21)); +IkReal x3668=((IkReal(0.0100000000000000))*(sj5)); +IkReal x3669=((cj0)*(r02)); +IkReal x3670=((IkReal(0.0100000000000000))*(cj5)); +IkReal x3671=((IkReal(1.00000000000000))*(py)); +IkReal x3672=((r01)*(sj0)); +IkReal x3673=((r20)*(sj6)); +IkReal x3674=((r11)*(sj0)); +IkReal x3675=((IkReal(0.374290000000000))*(cj5)); +IkReal x3676=((cj0)*(r12)); +IkReal x3677=((sj0)*(x3675)); +IkReal x3678=((cj6)*(x3670)); +IkReal x3679=((r10)*(sj0)*(sj6)); +IkReal x3680=((r00)*(sj0)*(sj6)); +IkReal x3681=((cj0)*(cj6)*(x3665)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x3667)))+(((IkReal(-1.00000000000000))*(x3664)))+(((sj5)*(x3673)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3670)*(x3673)))+(((IkReal(-1.00000000000000))*(r22)*(x3668)))+(pz)+(((x3665)*(x3673)))+(((IkReal(-0.374290000000000))*(x3664)))+(((IkReal(-1.00000000000000))*(x3667)*(x3670)))+(((x3665)*(x3667)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x3671)))+(((x3668)*(x3676)))+(((IkReal(-1.00000000000000))*(r10)*(x3665)*(x3666)))+(((x3665)*(x3680)))+(((IkReal(-1.00000000000000))*(x3670)*(x3680)))+(((IkReal(-1.00000000000000))*(r02)*(x3677)))+(((cj0)*(r11)*(x3678)))+(((r10)*(x3666)*(x3670)))+(((x3675)*(x3676)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3668)))+(((IkReal(-1.00000000000000))*(x3672)*(x3678)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x3681)))+(((cj6)*(x3665)*(x3672)))); +evalcond[4]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(cj6)*(x3665)*(x3674)))+(((r12)*(x3677)))+(((x3674)*(x3678)))+(((x3668)*(x3669)))+(((IkReal(-1.00000000000000))*(sj0)*(x3671)))+(((x3670)*(x3679)))+(((IkReal(-1.00000000000000))*(r00)*(x3665)*(x3666)))+(((r00)*(x3666)*(x3670)))+(((IkReal(-1.00000000000000))*(r01)*(x3681)))+(((IkReal(-1.00000000000000))*(x3665)*(x3679)))+(((r12)*(sj0)*(x3668)))+(((x3669)*(x3675)))+(((cj0)*(r01)*(x3678)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3682=((cj0)*(cj5)); +IkReal x3683=((IkReal(1.00000000000000))*(cj0)); +IkReal x3684=((cj6)*(r11)); +IkReal x3685=((r10)*(sj6)); +IkReal x3686=((cj5)*(sj0)); +IkReal x3687=((r00)*(sj5)*(sj6)); +IkReal x3688=((cj6)*(r01)*(sj5)); +IkReal x3689=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(x3686)))+(((sj0)*(x3687)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3684)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3685)))+(((r12)*(x3682)))+(((sj0)*(x3688))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r02)*(x3682)))+(((IkReal(-1.00000000000000))*(x3685)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3687)))+(((r12)*(x3686)))+(((IkReal(-1.00000000000000))*(x3684)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3688))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(x3686)))+(((sj0)*(x3687)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3684)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3685)))+(((r12)*(x3682)))+(((sj0)*(x3688)))))+IKsqr(((((r02)*(x3682)))+(((IkReal(-1.00000000000000))*(x3685)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3687)))+(((r12)*(x3686)))+(((IkReal(-1.00000000000000))*(x3684)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3688)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(x3686)))+(((sj0)*(x3687)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3684)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3685)))+(((r12)*(x3682)))+(((sj0)*(x3688)))), ((((r02)*(x3682)))+(((IkReal(-1.00000000000000))*(x3685)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3687)))+(((r12)*(x3686)))+(((IkReal(-1.00000000000000))*(x3684)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3688))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x3690=((cj0)*(cj5)); +IkReal x3691=((IkReal(1.00000000000000))*(cj0)); +IkReal x3692=((cj6)*(r11)); +IkReal x3693=((r10)*(sj6)); +IkReal x3694=((cj5)*(sj0)); +IkReal x3695=((r00)*(sj5)*(sj6)); +IkReal x3696=((cj6)*(r01)*(sj5)); +IkReal x3697=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj5)*(x3691)*(x3692)))+(((sj0)*(x3696)))+(((IkReal(-1.00000000000000))*(sj5)*(x3691)*(x3693)))+(((IkReal(-1.00000000000000))*(r02)*(x3694)))+(((sj0)*(x3695)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((r12)*(x3690)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x3692)*(x3697)))+(((IkReal(-1.00000000000000))*(x3691)*(x3696)))+(((IkReal(-1.00000000000000))*(x3691)*(x3695)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(x3693)*(x3697)))+(((r02)*(x3690)))+(((r12)*(x3694)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst20; +IkReal x3698=(cj5)*(cj5); +IkReal x3699=(r20)*(r20); +IkReal x3700=(sj6)*(sj6); +IkReal x3701=(cj6)*(cj6); +IkReal x3702=(r21)*(r21); +IkReal x3703=((cj6)*(r21)); +IkReal x3704=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3705=((cj5)*(r22)*(sj5)); +gconst20=IKsign(((((x3698)*(x3699)*(x3700)))+(((x3700)*(x3702)))+(((x3704)*(x3705)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3698)*(x3703)*(x3704)))+(((x3698)*(x3701)*(x3702)))+(((x3699)*(x3701)))+(((IkReal(-1.00000000000000))*(x3703)*(x3704)))+(((IkReal(2.00000000000000))*(x3703)*(x3705))))); +IkReal x3706=(cj5)*(cj5); +IkReal x3707=(r20)*(r20); +IkReal x3708=(sj6)*(sj6); +IkReal x3709=(cj6)*(cj6); +IkReal x3710=(r21)*(r21); +IkReal x3711=((cj6)*(r21)); +IkReal x3712=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3713=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x3706)*(x3707)*(x3708)))+(((IkReal(2.00000000000000))*(x3711)*(x3713)))+(((x3707)*(x3709)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3706)*(x3709)*(x3710)))+(((IkReal(-1.00000000000000))*(x3711)*(x3712)))+(((x3712)*(x3713)))+(((x3708)*(x3710)))+(((x3706)*(x3711)*(x3712)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst21; +IkReal x3714=(cj6)*(cj6); +IkReal x3715=(sj6)*(sj6); +IkReal x3716=((IkReal(1.00000000000000))*(r21)); +IkReal x3717=((cj6)*(r20)); +IkReal x3718=((r22)*(sj5)); +IkReal x3719=((r01)*(sj0)); +IkReal x3720=((r00)*(sj0)); +IkReal x3721=((cj0)*(r10)); +IkReal x3722=((r02)*(sj0)*(sj5)); +IkReal x3723=((cj5)*(x3714)); +IkReal x3724=((cj0)*(r12)*(sj5)); +IkReal x3725=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3726=((cj5)*(x3715)); +IkReal x3727=((r20)*(x3726)); +gconst21=IKsign(((((IkReal(-1.00000000000000))*(r20)*(x3723)*(x3725)))+(((cj6)*(x3718)*(x3721)))+(((IkReal(-1.00000000000000))*(x3717)*(x3724)))+(((IkReal(-1.00000000000000))*(cj6)*(x3718)*(x3720)))+(((IkReal(-1.00000000000000))*(sj6)*(x3718)*(x3725)))+(((IkReal(-1.00000000000000))*(sj6)*(x3716)*(x3722)))+(((r21)*(sj6)*(x3724)))+(((x3717)*(x3722)))+(((r20)*(x3719)*(x3723)))+(((r21)*(x3721)*(x3726)))+(((x3719)*(x3727)))+(((IkReal(-1.00000000000000))*(x3725)*(x3727)))+(((r21)*(x3721)*(x3723)))+(((IkReal(-1.00000000000000))*(x3716)*(x3720)*(x3726)))+(((IkReal(-1.00000000000000))*(x3716)*(x3720)*(x3723)))+(((sj6)*(x3718)*(x3719))))); +IkReal x3728=(cj6)*(cj6); +IkReal x3729=(sj6)*(sj6); +IkReal x3730=((IkReal(1.00000000000000))*(r21)); +IkReal x3731=((cj6)*(r20)); +IkReal x3732=((r22)*(sj5)); +IkReal x3733=((r01)*(sj0)); +IkReal x3734=((r00)*(sj0)); +IkReal x3735=((cj0)*(r10)); +IkReal x3736=((r02)*(sj0)*(sj5)); +IkReal x3737=((cj5)*(x3728)); +IkReal x3738=((cj0)*(r12)*(sj5)); +IkReal x3739=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3740=((cj5)*(x3729)); +IkReal x3741=((r20)*(x3740)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x3730)*(x3734)*(x3737)))+(((sj6)*(x3732)*(x3733)))+(((x3731)*(x3736)))+(((r21)*(sj6)*(x3738)))+(((cj6)*(x3732)*(x3735)))+(((r21)*(x3735)*(x3740)))+(((r20)*(x3733)*(x3737)))+(((IkReal(-1.00000000000000))*(x3731)*(x3738)))+(((IkReal(-1.00000000000000))*(x3739)*(x3741)))+(((r21)*(x3735)*(x3737)))+(((x3733)*(x3741)))+(((IkReal(-1.00000000000000))*(sj6)*(x3730)*(x3736)))+(((IkReal(-1.00000000000000))*(r20)*(x3737)*(x3739)))+(((IkReal(-1.00000000000000))*(x3730)*(x3734)*(x3740)))+(((IkReal(-1.00000000000000))*(cj6)*(x3732)*(x3734)))+(((IkReal(-1.00000000000000))*(sj6)*(x3732)*(x3739)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3742=((sj0)*(sj6)); +IkReal x3743=((cj0)*(cj6)); +IkReal x3744=((IkReal(1.00000000000000))*(cj5)); +IkReal x3745=((cj6)*(sj0)); +IkReal x3746=((cj0)*(sj6)); +if( IKabs(((gconst21)*(((((IkReal(-1.00000000000000))*(r00)*(x3745)))+(((IkReal(-1.00000000000000))*(r11)*(x3746)))+(((r10)*(x3743)))+(((r01)*(x3742))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst21)*(((((cj5)*(r11)*(x3743)))+(((IkReal(-1.00000000000000))*(r00)*(x3742)*(x3744)))+(((IkReal(-1.00000000000000))*(r01)*(x3744)*(x3745)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(r10)*(x3746))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst21)*(((((IkReal(-1.00000000000000))*(r00)*(x3745)))+(((IkReal(-1.00000000000000))*(r11)*(x3746)))+(((r10)*(x3743)))+(((r01)*(x3742)))))), ((gconst21)*(((((cj5)*(r11)*(x3743)))+(((IkReal(-1.00000000000000))*(r00)*(x3742)*(x3744)))+(((IkReal(-1.00000000000000))*(r01)*(x3744)*(x3745)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(r10)*(x3746))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3747=IKsin(j4); +IkReal x3748=IKcos(j4); +IkReal x3749=((r22)*(sj5)); +IkReal x3750=((IkReal(1.00000000000000))*(cj6)); +IkReal x3751=((IkReal(1.00000000000000))*(cj0)); +IkReal x3752=((cj5)*(r11)); +IkReal x3753=((cj5)*(cj6)); +IkReal x3754=((r11)*(sj6)); +IkReal x3755=((IkReal(1.00000000000000))*(sj6)); +IkReal x3756=((cj6)*(r00)); +IkReal x3757=((r12)*(sj5)); +IkReal x3758=((r02)*(sj5)); +IkReal x3759=((cj6)*(r10)); +IkReal x3760=((cj5)*(sj6)); +IkReal x3761=((cj5)*(r01)); +IkReal x3762=((sj0)*(x3747)); +IkReal x3763=((r00)*(x3760)); +IkReal x3764=((cj0)*(x3747)); +IkReal x3765=((sj0)*(x3748)); +IkReal x3766=((r20)*(x3748)); +IkReal x3767=((cj0)*(x3748)); +IkReal x3768=((r21)*(x3747)); +IkReal x3769=((r21)*(x3748)); +IkReal x3770=((r20)*(x3747)); +IkReal x3771=((x3748)*(x3757)); +IkReal x3772=((r01)*(sj6)*(x3748)); +IkReal x3773=((cj5)*(r10)*(x3755)); +evalcond[0]=((IkReal(-1.00000000000000))+(((x3753)*(x3768)))+(((x3747)*(x3749)))+(((x3760)*(x3770)))+(((sj6)*(x3769)))+(((IkReal(-1.00000000000000))*(x3750)*(x3766)))); +evalcond[1]=((((cj6)*(x3770)))+(((x3753)*(x3769)))+(((x3760)*(x3766)))+(((x3748)*(x3749)))+(((IkReal(-1.00000000000000))*(x3755)*(x3768)))); +evalcond[2]=((((x3759)*(x3767)))+(((x3762)*(x3763)))+(((r01)*(sj6)*(x3765)))+(((IkReal(-1.00000000000000))*(x3748)*(x3751)*(x3754)))+(((r01)*(x3753)*(x3762)))+(((IkReal(-1.00000000000000))*(r00)*(x3750)*(x3765)))+(((IkReal(-1.00000000000000))*(x3750)*(x3752)*(x3764)))+(((x3758)*(x3762)))+(((IkReal(-1.00000000000000))*(x3747)*(x3751)*(x3757)))+(((IkReal(-1.00000000000000))*(r10)*(x3747)*(x3751)*(x3760)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x3750)*(x3764)))+(((IkReal(-1.00000000000000))*(x3750)*(x3752)*(x3767)))+(((IkReal(-1.00000000000000))*(r01)*(x3755)*(x3762)))+(((x3754)*(x3764)))+(((IkReal(-1.00000000000000))*(x3751)*(x3771)))+(((x3756)*(x3762)))+(cj3)+(((IkReal(-1.00000000000000))*(r10)*(x3748)*(x3751)*(x3760)))+(((r01)*(x3753)*(x3765)))+(((x3758)*(x3765)))+(((x3763)*(x3765)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3750)*(x3752)*(x3762)))+(((IkReal(-1.00000000000000))*(x3747)*(x3751)*(x3758)))+(((IkReal(-1.00000000000000))*(x3762)*(x3773)))+(((IkReal(-1.00000000000000))*(x3757)*(x3762)))+(((IkReal(-1.00000000000000))*(x3754)*(x3765)))+(((IkReal(-1.00000000000000))*(x3750)*(x3761)*(x3764)))+(((IkReal(-1.00000000000000))*(x3751)*(x3772)))+(((x3759)*(x3765)))+(((IkReal(-1.00000000000000))*(x3747)*(x3751)*(x3763)))+(((x3756)*(x3767)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x3750)*(x3762)))+(((IkReal(-1.00000000000000))*(x3757)*(x3765)))+(((IkReal(-1.00000000000000))*(x3750)*(x3752)*(x3765)))+(((IkReal(-1.00000000000000))*(x3748)*(x3751)*(x3758)))+(((IkReal(-1.00000000000000))*(r00)*(x3750)*(x3764)))+(((IkReal(-1.00000000000000))*(x3750)*(x3761)*(x3767)))+(((IkReal(-1.00000000000000))*(x3765)*(x3773)))+(((x3754)*(x3762)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(x3748)*(x3751)*(x3763)))+(((r01)*(sj6)*(x3764)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst20)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst20)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst20)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst20)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3774=IKsin(j4); +IkReal x3775=IKcos(j4); +IkReal x3776=((r22)*(sj5)); +IkReal x3777=((IkReal(1.00000000000000))*(cj6)); +IkReal x3778=((IkReal(1.00000000000000))*(cj0)); +IkReal x3779=((cj5)*(r11)); +IkReal x3780=((cj5)*(cj6)); +IkReal x3781=((r11)*(sj6)); +IkReal x3782=((IkReal(1.00000000000000))*(sj6)); +IkReal x3783=((cj6)*(r00)); +IkReal x3784=((r12)*(sj5)); +IkReal x3785=((r02)*(sj5)); +IkReal x3786=((cj6)*(r10)); +IkReal x3787=((cj5)*(sj6)); +IkReal x3788=((cj5)*(r01)); +IkReal x3789=((sj0)*(x3774)); +IkReal x3790=((r00)*(x3787)); +IkReal x3791=((cj0)*(x3774)); +IkReal x3792=((sj0)*(x3775)); +IkReal x3793=((r20)*(x3775)); +IkReal x3794=((cj0)*(x3775)); +IkReal x3795=((r21)*(x3774)); +IkReal x3796=((r21)*(x3775)); +IkReal x3797=((r20)*(x3774)); +IkReal x3798=((x3775)*(x3784)); +IkReal x3799=((r01)*(sj6)*(x3775)); +IkReal x3800=((cj5)*(r10)*(x3782)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x3777)*(x3793)))+(((x3787)*(x3797)))+(((x3780)*(x3795)))+(((x3774)*(x3776)))+(((sj6)*(x3796)))); +evalcond[1]=((((x3787)*(x3793)))+(((IkReal(-1.00000000000000))*(x3782)*(x3795)))+(((x3775)*(x3776)))+(((x3780)*(x3796)))+(((cj6)*(x3797)))); +evalcond[2]=((((x3789)*(x3790)))+(((IkReal(-1.00000000000000))*(x3775)*(x3778)*(x3781)))+(((x3785)*(x3789)))+(((IkReal(-1.00000000000000))*(x3774)*(x3778)*(x3784)))+(((r01)*(sj6)*(x3792)))+(((r01)*(x3780)*(x3789)))+(((x3786)*(x3794)))+(((IkReal(-1.00000000000000))*(r00)*(x3777)*(x3792)))+(((IkReal(-1.00000000000000))*(x3777)*(x3779)*(x3791)))+(((IkReal(-1.00000000000000))*(r10)*(x3774)*(x3778)*(x3787)))); +evalcond[3]=((((x3785)*(x3792)))+(((IkReal(-1.00000000000000))*(r10)*(x3775)*(x3778)*(x3787)))+(((IkReal(-1.00000000000000))*(x3778)*(x3798)))+(((x3783)*(x3789)))+(cj3)+(((IkReal(-1.00000000000000))*(x3777)*(x3779)*(x3794)))+(((IkReal(-1.00000000000000))*(r10)*(x3777)*(x3791)))+(((r01)*(x3780)*(x3792)))+(((x3781)*(x3791)))+(((x3790)*(x3792)))+(((IkReal(-1.00000000000000))*(r01)*(x3782)*(x3789)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3774)*(x3778)*(x3785)))+(((x3786)*(x3792)))+(((IkReal(-1.00000000000000))*(x3784)*(x3789)))+(((IkReal(-1.00000000000000))*(x3777)*(x3788)*(x3791)))+(((IkReal(-1.00000000000000))*(x3778)*(x3799)))+(((IkReal(-1.00000000000000))*(x3774)*(x3778)*(x3790)))+(((IkReal(-1.00000000000000))*(x3789)*(x3800)))+(((IkReal(-1.00000000000000))*(x3777)*(x3779)*(x3789)))+(((IkReal(-1.00000000000000))*(x3781)*(x3792)))+(((x3783)*(x3794)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x3777)*(x3789)))+(((IkReal(-1.00000000000000))*(x3784)*(x3792)))+(((r01)*(sj6)*(x3791)))+(((IkReal(-1.00000000000000))*(x3792)*(x3800)))+(((x3781)*(x3789)))+(((IkReal(-1.00000000000000))*(x3775)*(x3778)*(x3790)))+(((IkReal(-1.00000000000000))*(x3777)*(x3779)*(x3792)))+(((IkReal(-1.00000000000000))*(x3777)*(x3788)*(x3794)))+(((IkReal(-1.00000000000000))*(x3775)*(x3778)*(x3785)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r00)*(x3777)*(x3791)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x3801=((cj5)*(r22)); +IkReal x3802=((IkReal(0.374290000000000))*(sj5)); +IkReal x3803=((cj0)*(sj6)); +IkReal x3804=((cj6)*(r21)); +IkReal x3805=((IkReal(0.0100000000000000))*(sj5)); +IkReal x3806=((cj0)*(r02)); +IkReal x3807=((IkReal(0.0100000000000000))*(cj5)); +IkReal x3808=((IkReal(1.00000000000000))*(py)); +IkReal x3809=((r01)*(sj0)); +IkReal x3810=((r20)*(sj6)); +IkReal x3811=((r11)*(sj0)); +IkReal x3812=((IkReal(0.374290000000000))*(cj5)); +IkReal x3813=((cj0)*(r12)); +IkReal x3814=((sj0)*(x3812)); +IkReal x3815=((cj6)*(x3807)); +IkReal x3816=((r10)*(sj0)*(sj6)); +IkReal x3817=((r00)*(sj0)*(sj6)); +IkReal x3818=((cj0)*(cj6)*(x3802)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x3804)))+(((sj5)*(x3810)))+(((IkReal(-1.00000000000000))*(x3801)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3807)*(x3810)))+(((IkReal(-0.374290000000000))*(x3801)))+(((x3802)*(x3810)))+(((IkReal(-1.00000000000000))*(x3804)*(x3807)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x3805)))+(((x3802)*(x3804)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r02)*(x3814)))+(((x3805)*(x3813)))+(((IkReal(-1.00000000000000))*(r11)*(x3818)))+(((x3802)*(x3817)))+(((x3812)*(x3813)))+(((IkReal(-1.00000000000000))*(cj0)*(x3808)))+(((IkReal(-1.00000000000000))*(r10)*(x3802)*(x3803)))+(((cj0)*(r11)*(x3815)))+(((IkReal(-1.00000000000000))*(x3809)*(x3815)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3805)))+(((IkReal(-1.00000000000000))*(x3807)*(x3817)))+(((cj6)*(x3802)*(x3809)))+(((px)*(sj0)))+(((r10)*(x3803)*(x3807)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((r12)*(x3814)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x3805)*(x3806)))+(((IkReal(-1.00000000000000))*(cj6)*(x3802)*(x3811)))+(((x3811)*(x3815)))+(((IkReal(-1.00000000000000))*(x3802)*(x3816)))+(((x3807)*(x3816)))+(((r12)*(sj0)*(x3805)))+(((r00)*(x3803)*(x3807)))+(((IkReal(-1.00000000000000))*(r00)*(x3802)*(x3803)))+(((IkReal(-1.00000000000000))*(r01)*(x3818)))+(((cj0)*(r01)*(x3815)))+(((IkReal(-1.00000000000000))*(sj0)*(x3808)))+(((x3806)*(x3812)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3819=((sj0)*(sj5)); +IkReal x3820=((r00)*(sj6)); +IkReal x3821=((IkReal(1.00000000000000))*(cj5)); +IkReal x3822=((cj6)*(r11)); +IkReal x3823=((cj6)*(r01)); +IkReal x3824=((r10)*(sj6)); +IkReal x3825=((cj0)*(sj5)); +if( IKabs(((((x3819)*(x3820)))+(((IkReal(-1.00000000000000))*(x3822)*(x3825)))+(((IkReal(-1.00000000000000))*(x3824)*(x3825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3821)))+(((cj0)*(cj5)*(r12)))+(((x3819)*(x3823))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x3823)*(x3825)))+(((x3820)*(x3825)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3821)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3821)))+(((x3819)*(x3822)))+(((x3819)*(x3824))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x3819)*(x3820)))+(((IkReal(-1.00000000000000))*(x3822)*(x3825)))+(((IkReal(-1.00000000000000))*(x3824)*(x3825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3821)))+(((cj0)*(cj5)*(r12)))+(((x3819)*(x3823)))))+IKsqr(((((x3823)*(x3825)))+(((x3820)*(x3825)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3821)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3821)))+(((x3819)*(x3822)))+(((x3819)*(x3824)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x3819)*(x3820)))+(((IkReal(-1.00000000000000))*(x3822)*(x3825)))+(((IkReal(-1.00000000000000))*(x3824)*(x3825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3821)))+(((cj0)*(cj5)*(r12)))+(((x3819)*(x3823)))), ((((x3823)*(x3825)))+(((x3820)*(x3825)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3821)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3821)))+(((x3819)*(x3822)))+(((x3819)*(x3824))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x3826=((cj0)*(cj5)); +IkReal x3827=((IkReal(1.00000000000000))*(cj0)); +IkReal x3828=((cj6)*(r11)); +IkReal x3829=((r10)*(sj6)); +IkReal x3830=((cj5)*(sj0)); +IkReal x3831=((r00)*(sj5)*(sj6)); +IkReal x3832=((cj6)*(r01)*(sj5)); +IkReal x3833=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj5)*(x3827)*(x3828)))+(((IkReal(-1.00000000000000))*(r02)*(x3830)))+(((IkReal(-1.00000000000000))*(sj5)*(x3827)*(x3829)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((sj0)*(x3832)))+(((sj0)*(x3831)))+(((r12)*(x3826)))); +evalcond[1]=((((r12)*(x3830)))+(((IkReal(-1.00000000000000))*(x3827)*(x3831)))+(((IkReal(-1.00000000000000))*(x3828)*(x3833)))+(((r02)*(x3826)))+(((IkReal(-1.00000000000000))*(x3829)*(x3833)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x3827)*(x3832)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst24; +IkReal x3834=(r21)*(r21); +IkReal x3835=(cj5)*(cj5); +IkReal x3836=(sj6)*(sj6); +IkReal x3837=(cj6)*(cj6); +IkReal x3838=(r20)*(r20); +IkReal x3839=((cj6)*(r21)); +IkReal x3840=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3841=((cj5)*(r22)*(sj5)); +IkReal x3842=((IkReal(1.00000000000000))*(x3836)); +IkReal x3843=((IkReal(1.00000000000000))*(x3837)); +gconst24=IKsign(((((IkReal(-1.00000000000000))*(x3834)*(x3835)*(x3843)))+(((x3839)*(x3840)))+(((IkReal(-1.00000000000000))*(x3835)*(x3839)*(x3840)))+(((IkReal(-1.00000000000000))*(x3835)*(x3838)*(x3842)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x3834)*(x3842)))+(((IkReal(-2.00000000000000))*(x3839)*(x3841)))+(((IkReal(-1.00000000000000))*(x3838)*(x3843)))+(((IkReal(-1.00000000000000))*(x3840)*(x3841))))); +IkReal x3844=(r21)*(r21); +IkReal x3845=(cj5)*(cj5); +IkReal x3846=(sj6)*(sj6); +IkReal x3847=(cj6)*(cj6); +IkReal x3848=(r20)*(r20); +IkReal x3849=((cj6)*(r21)); +IkReal x3850=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3851=((cj5)*(r22)*(sj5)); +IkReal x3852=((IkReal(1.00000000000000))*(x3846)); +IkReal x3853=((IkReal(1.00000000000000))*(x3847)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x3848)*(x3853)))+(((IkReal(-2.00000000000000))*(x3849)*(x3851)))+(((x3849)*(x3850)))+(((IkReal(-1.00000000000000))*(x3844)*(x3845)*(x3853)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x3845)*(x3848)*(x3852)))+(((IkReal(-1.00000000000000))*(x3844)*(x3852)))+(((IkReal(-1.00000000000000))*(x3850)*(x3851)))+(((IkReal(-1.00000000000000))*(x3845)*(x3849)*(x3850)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst25; +IkReal x3854=(cj6)*(cj6); +IkReal x3855=(sj6)*(sj6); +IkReal x3856=((IkReal(1.00000000000000))*(r01)); +IkReal x3857=((sj0)*(sj5)); +IkReal x3858=((cj6)*(r22)); +IkReal x3859=((r21)*(sj6)); +IkReal x3860=((r00)*(r21)); +IkReal x3861=((cj0)*(sj5)); +IkReal x3862=((cj6)*(r20)); +IkReal x3863=((r22)*(sj6)); +IkReal x3864=((cj0)*(cj5)); +IkReal x3865=((IkReal(1.00000000000000))*(r10)); +IkReal x3866=((cj5)*(sj0)); +IkReal x3867=((r20)*(x3855)); +IkReal x3868=((x3854)*(x3866)); +gconst25=IKsign(((((IkReal(-1.00000000000000))*(r02)*(x3857)*(x3862)))+(((r11)*(x3864)*(x3867)))+(((r00)*(x3857)*(x3858)))+(((IkReal(-1.00000000000000))*(x3856)*(x3857)*(x3863)))+(((x3855)*(x3860)*(x3866)))+(((r11)*(r20)*(x3854)*(x3864)))+(((IkReal(-1.00000000000000))*(x3856)*(x3866)*(x3867)))+(((r11)*(x3861)*(x3863)))+(((IkReal(-1.00000000000000))*(x3858)*(x3861)*(x3865)))+(((r02)*(x3857)*(x3859)))+(((IkReal(-1.00000000000000))*(r12)*(x3859)*(x3861)))+(((r12)*(x3861)*(x3862)))+(((IkReal(-1.00000000000000))*(r20)*(x3856)*(x3868)))+(((IkReal(-1.00000000000000))*(r21)*(x3855)*(x3864)*(x3865)))+(((x3860)*(x3868)))+(((IkReal(-1.00000000000000))*(r21)*(x3854)*(x3864)*(x3865))))); +IkReal x3869=(cj6)*(cj6); +IkReal x3870=(sj6)*(sj6); +IkReal x3871=((IkReal(1.00000000000000))*(r01)); +IkReal x3872=((sj0)*(sj5)); +IkReal x3873=((cj6)*(r22)); +IkReal x3874=((r21)*(sj6)); +IkReal x3875=((r00)*(r21)); +IkReal x3876=((cj0)*(sj5)); +IkReal x3877=((cj6)*(r20)); +IkReal x3878=((r22)*(sj6)); +IkReal x3879=((cj0)*(cj5)); +IkReal x3880=((IkReal(1.00000000000000))*(r10)); +IkReal x3881=((cj5)*(sj0)); +IkReal x3882=((r20)*(x3870)); +IkReal x3883=((x3869)*(x3881)); +dummyeval[0]=((((x3870)*(x3875)*(x3881)))+(((r11)*(x3879)*(x3882)))+(((IkReal(-1.00000000000000))*(x3873)*(x3876)*(x3880)))+(((IkReal(-1.00000000000000))*(r21)*(x3869)*(x3879)*(x3880)))+(((r00)*(x3872)*(x3873)))+(((IkReal(-1.00000000000000))*(x3871)*(x3872)*(x3878)))+(((r11)*(x3876)*(x3878)))+(((IkReal(-1.00000000000000))*(r02)*(x3872)*(x3877)))+(((IkReal(-1.00000000000000))*(r20)*(x3871)*(x3883)))+(((r12)*(x3876)*(x3877)))+(((IkReal(-1.00000000000000))*(r21)*(x3870)*(x3879)*(x3880)))+(((x3875)*(x3883)))+(((IkReal(-1.00000000000000))*(x3871)*(x3881)*(x3882)))+(((r11)*(r20)*(x3869)*(x3879)))+(((IkReal(-1.00000000000000))*(r12)*(x3874)*(x3876)))+(((r02)*(x3872)*(x3874)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3884=((r01)*(sj0)); +IkReal x3885=((IkReal(1.00000000000000))*(cj5)); +IkReal x3886=((cj0)*(r10)); +IkReal x3887=((r00)*(sj0)); +IkReal x3888=((cj0)*(r11)); +if( IKabs(((gconst25)*(((((sj6)*(x3884)))+(((IkReal(-1.00000000000000))*(cj6)*(x3887)))+(((IkReal(-1.00000000000000))*(sj6)*(x3888)))+(((cj6)*(x3886))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst25)*(((((cj5)*(cj6)*(x3888)))+(((IkReal(-1.00000000000000))*(cj6)*(x3884)*(x3885)))+(((IkReal(-1.00000000000000))*(sj6)*(x3885)*(x3887)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(sj6)*(x3886))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst25)*(((((sj6)*(x3884)))+(((IkReal(-1.00000000000000))*(cj6)*(x3887)))+(((IkReal(-1.00000000000000))*(sj6)*(x3888)))+(((cj6)*(x3886)))))), ((gconst25)*(((((cj5)*(cj6)*(x3888)))+(((IkReal(-1.00000000000000))*(cj6)*(x3884)*(x3885)))+(((IkReal(-1.00000000000000))*(sj6)*(x3885)*(x3887)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(sj6)*(x3886))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3889=IKsin(j4); +IkReal x3890=IKcos(j4); +IkReal x3891=((r22)*(sj5)); +IkReal x3892=((IkReal(1.00000000000000))*(cj6)); +IkReal x3893=((IkReal(1.00000000000000))*(cj0)); +IkReal x3894=((cj5)*(r11)); +IkReal x3895=((cj5)*(cj6)); +IkReal x3896=((r11)*(sj6)); +IkReal x3897=((IkReal(1.00000000000000))*(sj6)); +IkReal x3898=((cj6)*(r00)); +IkReal x3899=((r12)*(sj5)); +IkReal x3900=((r02)*(sj5)); +IkReal x3901=((cj6)*(r10)); +IkReal x3902=((cj5)*(sj6)); +IkReal x3903=((cj5)*(r01)); +IkReal x3904=((sj0)*(x3889)); +IkReal x3905=((r00)*(x3902)); +IkReal x3906=((cj0)*(x3889)); +IkReal x3907=((sj0)*(x3890)); +IkReal x3908=((r20)*(x3890)); +IkReal x3909=((cj0)*(x3890)); +IkReal x3910=((r21)*(x3889)); +IkReal x3911=((r21)*(x3890)); +IkReal x3912=((r20)*(x3889)); +IkReal x3913=((x3890)*(x3899)); +IkReal x3914=((r01)*(sj6)*(x3890)); +IkReal x3915=((cj5)*(r10)*(x3897)); +evalcond[0]=((IkReal(1.00000000000000))+(((x3902)*(x3912)))+(((IkReal(-1.00000000000000))*(x3892)*(x3908)))+(((x3889)*(x3891)))+(((x3895)*(x3910)))+(((sj6)*(x3911)))); +evalcond[1]=((((x3890)*(x3891)))+(((x3902)*(x3908)))+(((x3895)*(x3911)))+(((cj6)*(x3912)))+(((IkReal(-1.00000000000000))*(x3897)*(x3910)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3890)*(x3893)*(x3896)))+(((x3904)*(x3905)))+(((x3900)*(x3904)))+(((IkReal(-1.00000000000000))*(r00)*(x3892)*(x3907)))+(((x3901)*(x3909)))+(((r01)*(sj6)*(x3907)))+(((IkReal(-1.00000000000000))*(x3889)*(x3893)*(x3899)))+(((r01)*(x3895)*(x3904)))+(((IkReal(-1.00000000000000))*(r10)*(x3889)*(x3893)*(x3902)))+(((IkReal(-1.00000000000000))*(x3892)*(x3894)*(x3906)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(x3897)*(x3904)))+(((x3896)*(x3906)))+(((IkReal(-1.00000000000000))*(x3892)*(x3894)*(x3909)))+(((x3905)*(x3907)))+(((r01)*(x3895)*(x3907)))+(((IkReal(-1.00000000000000))*(r10)*(x3890)*(x3893)*(x3902)))+(cj3)+(((x3898)*(x3904)))+(((x3900)*(x3907)))+(((IkReal(-1.00000000000000))*(r10)*(x3892)*(x3906)))+(((IkReal(-1.00000000000000))*(x3893)*(x3913)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3889)*(x3893)*(x3905)))+(((IkReal(-1.00000000000000))*(x3892)*(x3903)*(x3906)))+(((IkReal(-1.00000000000000))*(x3896)*(x3907)))+(((IkReal(-1.00000000000000))*(x3904)*(x3915)))+(((IkReal(-1.00000000000000))*(x3893)*(x3914)))+(((x3901)*(x3907)))+(((IkReal(-1.00000000000000))*(x3889)*(x3893)*(x3900)))+(((IkReal(-1.00000000000000))*(x3899)*(x3904)))+(((x3898)*(x3909)))+(((IkReal(-1.00000000000000))*(x3892)*(x3894)*(x3904)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x3892)*(x3906)))+(((r01)*(sj6)*(x3906)))+(sj3)+(((IkReal(-1.00000000000000))*(x3892)*(x3903)*(x3909)))+(((IkReal(-1.00000000000000))*(x3890)*(x3893)*(x3900)))+(((IkReal(-1.00000000000000))*(x3892)*(x3894)*(x3907)))+(((IkReal(-1.00000000000000))*(x3899)*(x3907)))+(((x3896)*(x3904)))+(((IkReal(-1.00000000000000))*(r10)*(x3892)*(x3904)))+(((IkReal(-1.00000000000000))*(x3890)*(x3893)*(x3905)))+(((IkReal(-1.00000000000000))*(x3907)*(x3915)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst24)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst24)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst24)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst24)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3916=IKsin(j4); +IkReal x3917=IKcos(j4); +IkReal x3918=((r22)*(sj5)); +IkReal x3919=((IkReal(1.00000000000000))*(cj6)); +IkReal x3920=((IkReal(1.00000000000000))*(cj0)); +IkReal x3921=((cj5)*(r11)); +IkReal x3922=((cj5)*(cj6)); +IkReal x3923=((r11)*(sj6)); +IkReal x3924=((IkReal(1.00000000000000))*(sj6)); +IkReal x3925=((cj6)*(r00)); +IkReal x3926=((r12)*(sj5)); +IkReal x3927=((r02)*(sj5)); +IkReal x3928=((cj6)*(r10)); +IkReal x3929=((cj5)*(sj6)); +IkReal x3930=((cj5)*(r01)); +IkReal x3931=((sj0)*(x3916)); +IkReal x3932=((r00)*(x3929)); +IkReal x3933=((cj0)*(x3916)); +IkReal x3934=((sj0)*(x3917)); +IkReal x3935=((r20)*(x3917)); +IkReal x3936=((cj0)*(x3917)); +IkReal x3937=((r21)*(x3916)); +IkReal x3938=((r21)*(x3917)); +IkReal x3939=((r20)*(x3916)); +IkReal x3940=((x3917)*(x3926)); +IkReal x3941=((r01)*(sj6)*(x3917)); +IkReal x3942=((cj5)*(r10)*(x3924)); +evalcond[0]=((IkReal(1.00000000000000))+(((x3929)*(x3939)))+(((x3922)*(x3937)))+(((sj6)*(x3938)))+(((x3916)*(x3918)))+(((IkReal(-1.00000000000000))*(x3919)*(x3935)))); +evalcond[1]=((((x3917)*(x3918)))+(((x3922)*(x3938)))+(((x3929)*(x3935)))+(((cj6)*(x3939)))+(((IkReal(-1.00000000000000))*(x3924)*(x3937)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3916)*(x3920)*(x3926)))+(((IkReal(-1.00000000000000))*(r10)*(x3916)*(x3920)*(x3929)))+(((r01)*(x3922)*(x3931)))+(((r01)*(sj6)*(x3934)))+(((IkReal(-1.00000000000000))*(r00)*(x3919)*(x3934)))+(((IkReal(-1.00000000000000))*(x3917)*(x3920)*(x3923)))+(((x3931)*(x3932)))+(((IkReal(-1.00000000000000))*(x3919)*(x3921)*(x3933)))+(((x3928)*(x3936)))+(((x3927)*(x3931)))); +evalcond[3]=((((x3925)*(x3931)))+(((x3923)*(x3933)))+(((x3932)*(x3934)))+(((IkReal(-1.00000000000000))*(r01)*(x3924)*(x3931)))+(((r01)*(x3922)*(x3934)))+(((IkReal(-1.00000000000000))*(r10)*(x3919)*(x3933)))+(cj3)+(((IkReal(-1.00000000000000))*(x3919)*(x3921)*(x3936)))+(((x3927)*(x3934)))+(((IkReal(-1.00000000000000))*(r10)*(x3917)*(x3920)*(x3929)))+(((IkReal(-1.00000000000000))*(x3920)*(x3940)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3920)*(x3941)))+(((IkReal(-1.00000000000000))*(x3923)*(x3934)))+(((IkReal(-1.00000000000000))*(x3916)*(x3920)*(x3932)))+(((IkReal(-1.00000000000000))*(x3919)*(x3930)*(x3933)))+(((x3925)*(x3936)))+(((IkReal(-1.00000000000000))*(x3919)*(x3921)*(x3931)))+(((IkReal(-1.00000000000000))*(x3926)*(x3931)))+(((IkReal(-1.00000000000000))*(x3916)*(x3920)*(x3927)))+(((x3928)*(x3934)))+(((IkReal(-1.00000000000000))*(x3931)*(x3942)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x3917)*(x3920)*(x3927)))+(((IkReal(-1.00000000000000))*(x3917)*(x3920)*(x3932)))+(sj3)+(((IkReal(-1.00000000000000))*(x3934)*(x3942)))+(((r01)*(sj6)*(x3933)))+(((IkReal(-1.00000000000000))*(x3919)*(x3921)*(x3934)))+(((IkReal(-1.00000000000000))*(r10)*(x3919)*(x3931)))+(((IkReal(-1.00000000000000))*(x3926)*(x3934)))+(((x3923)*(x3931)))+(((IkReal(-1.00000000000000))*(r00)*(x3919)*(x3933)))+(((IkReal(-1.00000000000000))*(x3919)*(x3930)*(x3936)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3943=((sj5)*(sj6)); +IkReal x3944=((cj6)*(sj5)); +IkReal x3945=((IkReal(1.00000000000000))*(cj0)); +IkReal x3946=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r00)*(sj0)*(x3943)))+(((IkReal(-1.00000000000000))*(r10)*(x3943)*(x3945)))+(((r01)*(sj0)*(x3944)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x3944)*(x3945)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3946))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x3943)))+(((IkReal(-1.00000000000000))*(r22)*(x3946)))+(((r21)*(x3944))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r00)*(sj0)*(x3943)))+(((IkReal(-1.00000000000000))*(r10)*(x3943)*(x3945)))+(((r01)*(sj0)*(x3944)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x3944)*(x3945)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3946)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x3943)))+(((IkReal(-1.00000000000000))*(r22)*(x3946)))+(((r21)*(x3944)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r00)*(sj0)*(x3943)))+(((IkReal(-1.00000000000000))*(r10)*(x3943)*(x3945)))+(((r01)*(sj0)*(x3944)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x3944)*(x3945)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3946)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x3943)))+(((IkReal(-1.00000000000000))*(r22)*(x3946)))+(((r21)*(x3944))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x3947=IKcos(j3); +IkReal x3948=((sj5)*(sj6)); +IkReal x3949=((cj0)*(cj5)); +IkReal x3950=((IkReal(1.00000000000000))*(cj0)); +IkReal x3951=((IkReal(1.00000000000000))*(sj0)); +IkReal x3952=((IkReal(1.00000000000000))*(x3947)); +IkReal x3953=((cj6)*(r01)*(sj5)); +IkReal x3954=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((r20)*(x3948)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x3952)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj5)*(r02)*(x3951)))+(((r12)*(x3949)))+(((IkReal(-1.00000000000000))*(r10)*(x3948)*(x3950)))+(((sj0)*(x3953)))+(((r00)*(sj0)*(x3948)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((IkReal(-1.00000000000000))*(x3950)*(x3954)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3951)*(x3954)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(x3948)*(x3951)))+(((IkReal(-1.00000000000000))*(x3950)*(x3953)))+(((r02)*(x3949)))+(((IkReal(-1.00000000000000))*(r00)*(x3948)*(x3950)))+(((IkReal(-1.00000000000000))*(cj1)*(x3952)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst15; +IkReal x3955=(r21)*(r21); +IkReal x3956=(cj5)*(cj5); +IkReal x3957=(sj6)*(sj6); +IkReal x3958=(cj6)*(cj6); +IkReal x3959=(r20)*(r20); +IkReal x3960=((cj6)*(r21)); +IkReal x3961=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3962=((cj5)*(r22)*(sj5)); +IkReal x3963=((IkReal(1.00000000000000))*(x3957)); +IkReal x3964=((IkReal(1.00000000000000))*(x3958)); +gconst15=IKsign(((((IkReal(-1.00000000000000))*(x3959)*(x3964)))+(((IkReal(-2.00000000000000))*(x3960)*(x3962)))+(((IkReal(-1.00000000000000))*(x3955)*(x3963)))+(((IkReal(-1.00000000000000))*(x3961)*(x3962)))+(((IkReal(-1.00000000000000))*(x3956)*(x3959)*(x3963)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((x3960)*(x3961)))+(((IkReal(-1.00000000000000))*(x3956)*(x3960)*(x3961)))+(((IkReal(-1.00000000000000))*(x3955)*(x3956)*(x3964))))); +IkReal x3965=(r21)*(r21); +IkReal x3966=(cj5)*(cj5); +IkReal x3967=(sj6)*(sj6); +IkReal x3968=(cj6)*(cj6); +IkReal x3969=(r20)*(r20); +IkReal x3970=((cj6)*(r21)); +IkReal x3971=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3972=((cj5)*(r22)*(sj5)); +IkReal x3973=((IkReal(1.00000000000000))*(x3967)); +IkReal x3974=((IkReal(1.00000000000000))*(x3968)); +dummyeval[0]=((((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((x3970)*(x3971)))+(((IkReal(-1.00000000000000))*(x3966)*(x3970)*(x3971)))+(((IkReal(-1.00000000000000))*(x3966)*(x3969)*(x3973)))+(((IkReal(-1.00000000000000))*(x3971)*(x3972)))+(((IkReal(-2.00000000000000))*(x3970)*(x3972)))+(((IkReal(-1.00000000000000))*(x3965)*(x3973)))+(((IkReal(-1.00000000000000))*(x3965)*(x3966)*(x3974)))+(((IkReal(-1.00000000000000))*(x3969)*(x3974)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst16; +IkReal x3975=(cj6)*(cj6); +IkReal x3976=(sj6)*(sj6); +IkReal x3977=((IkReal(1.00000000000000))*(r21)); +IkReal x3978=((cj6)*(r20)); +IkReal x3979=((r22)*(sj5)); +IkReal x3980=((r01)*(sj0)); +IkReal x3981=((r00)*(sj0)); +IkReal x3982=((cj0)*(r10)); +IkReal x3983=((r02)*(sj0)*(sj5)); +IkReal x3984=((cj5)*(x3975)); +IkReal x3985=((cj0)*(r12)*(sj5)); +IkReal x3986=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3987=((cj5)*(x3976)); +IkReal x3988=((r20)*(x3987)); +gconst16=IKsign(((((x3978)*(x3983)))+(((IkReal(-1.00000000000000))*(x3977)*(x3981)*(x3987)))+(((IkReal(-1.00000000000000))*(sj6)*(x3977)*(x3983)))+(((r21)*(sj6)*(x3985)))+(((r21)*(x3982)*(x3984)))+(((r21)*(x3982)*(x3987)))+(((IkReal(-1.00000000000000))*(x3986)*(x3988)))+(((IkReal(-1.00000000000000))*(x3977)*(x3981)*(x3984)))+(((IkReal(-1.00000000000000))*(x3978)*(x3985)))+(((IkReal(-1.00000000000000))*(sj6)*(x3979)*(x3986)))+(((cj6)*(x3979)*(x3982)))+(((sj6)*(x3979)*(x3980)))+(((x3980)*(x3988)))+(((IkReal(-1.00000000000000))*(cj6)*(x3979)*(x3981)))+(((r20)*(x3980)*(x3984)))+(((IkReal(-1.00000000000000))*(r20)*(x3984)*(x3986))))); +IkReal x3989=(cj6)*(cj6); +IkReal x3990=(sj6)*(sj6); +IkReal x3991=((IkReal(1.00000000000000))*(r21)); +IkReal x3992=((cj6)*(r20)); +IkReal x3993=((r22)*(sj5)); +IkReal x3994=((r01)*(sj0)); +IkReal x3995=((r00)*(sj0)); +IkReal x3996=((cj0)*(r10)); +IkReal x3997=((r02)*(sj0)*(sj5)); +IkReal x3998=((cj5)*(x3989)); +IkReal x3999=((cj0)*(r12)*(sj5)); +IkReal x4000=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x4001=((cj5)*(x3990)); +IkReal x4002=((r20)*(x4001)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(cj6)*(x3993)*(x3995)))+(((IkReal(-1.00000000000000))*(x3992)*(x3999)))+(((sj6)*(x3993)*(x3994)))+(((r21)*(x3996)*(x3998)))+(((IkReal(-1.00000000000000))*(x4000)*(x4002)))+(((r21)*(x3996)*(x4001)))+(((r20)*(x3994)*(x3998)))+(((IkReal(-1.00000000000000))*(sj6)*(x3991)*(x3997)))+(((cj6)*(x3993)*(x3996)))+(((IkReal(-1.00000000000000))*(r20)*(x3998)*(x4000)))+(((IkReal(-1.00000000000000))*(sj6)*(x3993)*(x4000)))+(((IkReal(-1.00000000000000))*(x3991)*(x3995)*(x4001)))+(((x3994)*(x4002)))+(((r21)*(sj6)*(x3999)))+(((x3992)*(x3997)))+(((IkReal(-1.00000000000000))*(x3991)*(x3995)*(x3998)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4003=((cj1)*(sj6)); +IkReal x4004=((r01)*(sj0)); +IkReal x4005=((cj0)*(r11)); +IkReal x4006=((cj1)*(cj6)); +IkReal x4007=((cj0)*(r10)); +IkReal x4008=((IkReal(1.00000000000000))*(sj0)); +IkReal x4009=((cj1)*(sj5)); +if( IKabs(((gconst16)*(((((IkReal(-1.00000000000000))*(r00)*(x4006)*(x4008)))+(((x4006)*(x4007)))+(((IkReal(-1.00000000000000))*(x4003)*(x4005)))+(((x4003)*(x4004))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst16)*(((((IkReal(-1.00000000000000))*(cj5)*(x4004)*(x4006)))+(((cj0)*(r12)*(x4009)))+(((IkReal(-1.00000000000000))*(r02)*(x4008)*(x4009)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4003)*(x4008)))+(((cj5)*(x4003)*(x4007)))+(((cj5)*(x4005)*(x4006))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst16)*(((((IkReal(-1.00000000000000))*(r00)*(x4006)*(x4008)))+(((x4006)*(x4007)))+(((IkReal(-1.00000000000000))*(x4003)*(x4005)))+(((x4003)*(x4004)))))), ((gconst16)*(((((IkReal(-1.00000000000000))*(cj5)*(x4004)*(x4006)))+(((cj0)*(r12)*(x4009)))+(((IkReal(-1.00000000000000))*(r02)*(x4008)*(x4009)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4003)*(x4008)))+(((cj5)*(x4003)*(x4007)))+(((cj5)*(x4005)*(x4006))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4010=IKsin(j4); +IkReal x4011=IKcos(j4); +IkReal x4012=((r22)*(sj5)); +IkReal x4013=((IkReal(1.00000000000000))*(cj6)); +IkReal x4014=((IkReal(1.00000000000000))*(cj0)); +IkReal x4015=((cj5)*(r11)); +IkReal x4016=((cj5)*(cj6)); +IkReal x4017=((IkReal(1.00000000000000))*(sj3)); +IkReal x4018=((r11)*(sj6)); +IkReal x4019=((IkReal(1.00000000000000))*(sj6)); +IkReal x4020=((cj6)*(r00)); +IkReal x4021=((r12)*(sj5)); +IkReal x4022=((r02)*(sj5)); +IkReal x4023=((cj6)*(r10)); +IkReal x4024=((cj5)*(sj6)); +IkReal x4025=((cj5)*(r01)); +IkReal x4026=((sj0)*(x4010)); +IkReal x4027=((r00)*(x4024)); +IkReal x4028=((cj0)*(x4010)); +IkReal x4029=((sj0)*(x4011)); +IkReal x4030=((r20)*(x4011)); +IkReal x4031=((cj0)*(x4011)); +IkReal x4032=((r21)*(x4010)); +IkReal x4033=((r21)*(x4011)); +IkReal x4034=((r20)*(x4010)); +IkReal x4035=((x4011)*(x4021)); +IkReal x4036=((r01)*(sj6)*(x4011)); +IkReal x4037=((cj5)*(r10)*(x4019)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x4013)*(x4030)))+(((IkReal(-1.00000000000000))*(cj1)))+(((x4024)*(x4034)))+(((sj6)*(x4033)))+(((x4010)*(x4012)))+(((x4016)*(x4032)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x4017)))+(((x4024)*(x4030)))+(((x4016)*(x4033)))+(((cj6)*(x4034)))+(((IkReal(-1.00000000000000))*(x4019)*(x4032)))+(((x4011)*(x4012)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x4013)*(x4029)))+(((r01)*(sj6)*(x4029)))+(((x4023)*(x4031)))+(((IkReal(-1.00000000000000))*(x4011)*(x4014)*(x4018)))+(((x4026)*(x4027)))+(((r01)*(x4016)*(x4026)))+(((IkReal(-1.00000000000000))*(x4010)*(x4014)*(x4021)))+(((IkReal(-1.00000000000000))*(x4013)*(x4015)*(x4028)))+(((IkReal(-1.00000000000000))*(r10)*(x4010)*(x4014)*(x4024)))+(((x4022)*(x4026)))); +evalcond[3]=((((x4020)*(x4026)))+(((x4018)*(x4028)))+(((x4027)*(x4029)))+(((IkReal(-1.00000000000000))*(x4014)*(x4035)))+(((IkReal(-1.00000000000000))*(x4013)*(x4015)*(x4031)))+(cj3)+(((IkReal(-1.00000000000000))*(r10)*(x4013)*(x4028)))+(((x4022)*(x4029)))+(((r01)*(x4016)*(x4029)))+(((IkReal(-1.00000000000000))*(r10)*(x4011)*(x4014)*(x4024)))+(((IkReal(-1.00000000000000))*(r01)*(x4019)*(x4026)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x4010)*(x4014)*(x4022)))+(((IkReal(-1.00000000000000))*(x4014)*(x4036)))+(((IkReal(-1.00000000000000))*(x4021)*(x4026)))+(((IkReal(-1.00000000000000))*(x4010)*(x4014)*(x4027)))+(sj1)+(((IkReal(-1.00000000000000))*(x4013)*(x4015)*(x4026)))+(((x4023)*(x4029)))+(((IkReal(-1.00000000000000))*(x4026)*(x4037)))+(((x4020)*(x4031)))+(((IkReal(-1.00000000000000))*(x4018)*(x4029)))+(((IkReal(-1.00000000000000))*(x4013)*(x4025)*(x4028)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x4013)*(x4026)))+(((IkReal(-1.00000000000000))*(r00)*(x4013)*(x4028)))+(((IkReal(-1.00000000000000))*(x4013)*(x4025)*(x4031)))+(((IkReal(-1.00000000000000))*(x4011)*(x4014)*(x4022)))+(((IkReal(-1.00000000000000))*(x4011)*(x4014)*(x4027)))+(((IkReal(-1.00000000000000))*(cj1)*(x4017)))+(((IkReal(-1.00000000000000))*(x4029)*(x4037)))+(((x4018)*(x4026)))+(((r01)*(sj6)*(x4028)))+(((IkReal(-1.00000000000000))*(x4021)*(x4029)))+(((IkReal(-1.00000000000000))*(x4013)*(x4015)*(x4029)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4038=((IkReal(1.00000000000000))*(cj1)); +IkReal x4039=((sj1)*(sj3)); +IkReal x4040=((r21)*(sj6)); +IkReal x4041=((r22)*(sj5)); +IkReal x4042=((cj6)*(r20)); +IkReal x4043=((cj5)*(r20)*(sj6)); +IkReal x4044=((cj5)*(cj6)*(r21)); +if( IKabs(((gconst15)*(((((IkReal(-1.00000000000000))*(x4038)*(x4041)))+(((IkReal(-1.00000000000000))*(x4038)*(x4043)))+(((x4039)*(x4040)))+(((IkReal(-1.00000000000000))*(x4038)*(x4044)))+(((IkReal(-1.00000000000000))*(x4039)*(x4042))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst15)*(((((cj1)*(x4042)))+(((IkReal(-1.00000000000000))*(x4038)*(x4040)))+(((IkReal(-1.00000000000000))*(x4039)*(x4041)))+(((IkReal(-1.00000000000000))*(x4039)*(x4044)))+(((IkReal(-1.00000000000000))*(x4039)*(x4043))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst15)*(((((IkReal(-1.00000000000000))*(x4038)*(x4041)))+(((IkReal(-1.00000000000000))*(x4038)*(x4043)))+(((x4039)*(x4040)))+(((IkReal(-1.00000000000000))*(x4038)*(x4044)))+(((IkReal(-1.00000000000000))*(x4039)*(x4042)))))), ((gconst15)*(((((cj1)*(x4042)))+(((IkReal(-1.00000000000000))*(x4038)*(x4040)))+(((IkReal(-1.00000000000000))*(x4039)*(x4041)))+(((IkReal(-1.00000000000000))*(x4039)*(x4044)))+(((IkReal(-1.00000000000000))*(x4039)*(x4043))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4045=IKsin(j4); +IkReal x4046=IKcos(j4); +IkReal x4047=((r22)*(sj5)); +IkReal x4048=((IkReal(1.00000000000000))*(cj6)); +IkReal x4049=((IkReal(1.00000000000000))*(cj0)); +IkReal x4050=((cj5)*(r11)); +IkReal x4051=((cj5)*(cj6)); +IkReal x4052=((IkReal(1.00000000000000))*(sj3)); +IkReal x4053=((r11)*(sj6)); +IkReal x4054=((IkReal(1.00000000000000))*(sj6)); +IkReal x4055=((cj6)*(r00)); +IkReal x4056=((r12)*(sj5)); +IkReal x4057=((r02)*(sj5)); +IkReal x4058=((cj6)*(r10)); +IkReal x4059=((cj5)*(sj6)); +IkReal x4060=((cj5)*(r01)); +IkReal x4061=((sj0)*(x4045)); +IkReal x4062=((r00)*(x4059)); +IkReal x4063=((cj0)*(x4045)); +IkReal x4064=((sj0)*(x4046)); +IkReal x4065=((r20)*(x4046)); +IkReal x4066=((cj0)*(x4046)); +IkReal x4067=((r21)*(x4045)); +IkReal x4068=((r21)*(x4046)); +IkReal x4069=((r20)*(x4045)); +IkReal x4070=((x4046)*(x4056)); +IkReal x4071=((r01)*(sj6)*(x4046)); +IkReal x4072=((cj5)*(r10)*(x4054)); +evalcond[0]=((((x4051)*(x4067)))+(((sj6)*(x4068)))+(((x4045)*(x4047)))+(((IkReal(-1.00000000000000))*(cj1)))+(((x4059)*(x4069)))+(((IkReal(-1.00000000000000))*(x4048)*(x4065)))); +evalcond[1]=((((x4059)*(x4065)))+(((IkReal(-1.00000000000000))*(x4054)*(x4067)))+(((IkReal(-1.00000000000000))*(sj1)*(x4052)))+(((cj6)*(x4069)))+(((x4051)*(x4068)))+(((x4046)*(x4047)))); +evalcond[2]=((((x4057)*(x4061)))+(((x4061)*(x4062)))+(((IkReal(-1.00000000000000))*(x4046)*(x4049)*(x4053)))+(((r01)*(x4051)*(x4061)))+(((r01)*(sj6)*(x4064)))+(((IkReal(-1.00000000000000))*(r00)*(x4048)*(x4064)))+(((IkReal(-1.00000000000000))*(x4048)*(x4050)*(x4063)))+(((IkReal(-1.00000000000000))*(r10)*(x4045)*(x4049)*(x4059)))+(((IkReal(-1.00000000000000))*(x4045)*(x4049)*(x4056)))+(((x4058)*(x4066)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x4048)*(x4063)))+(((x4053)*(x4063)))+(((x4055)*(x4061)))+(((x4057)*(x4064)))+(((IkReal(-1.00000000000000))*(x4048)*(x4050)*(x4066)))+(cj3)+(((r01)*(x4051)*(x4064)))+(((x4062)*(x4064)))+(((IkReal(-1.00000000000000))*(r01)*(x4054)*(x4061)))+(((IkReal(-1.00000000000000))*(r10)*(x4046)*(x4049)*(x4059)))+(((IkReal(-1.00000000000000))*(x4049)*(x4070)))); +evalcond[4]=((sj1)+(((IkReal(-1.00000000000000))*(x4048)*(x4050)*(x4061)))+(((IkReal(-1.00000000000000))*(x4056)*(x4061)))+(((IkReal(-1.00000000000000))*(x4061)*(x4072)))+(((IkReal(-1.00000000000000))*(x4045)*(x4049)*(x4062)))+(((x4055)*(x4066)))+(((IkReal(-1.00000000000000))*(x4048)*(x4060)*(x4063)))+(((x4058)*(x4064)))+(((IkReal(-1.00000000000000))*(x4045)*(x4049)*(x4057)))+(((IkReal(-1.00000000000000))*(x4049)*(x4071)))+(((IkReal(-1.00000000000000))*(x4053)*(x4064)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(cj1)*(x4052)))+(((IkReal(-1.00000000000000))*(x4048)*(x4050)*(x4064)))+(((IkReal(-1.00000000000000))*(x4048)*(x4060)*(x4066)))+(((IkReal(-1.00000000000000))*(x4046)*(x4049)*(x4057)))+(((IkReal(-1.00000000000000))*(r10)*(x4048)*(x4061)))+(((IkReal(-1.00000000000000))*(x4064)*(x4072)))+(((x4053)*(x4061)))+(((IkReal(-1.00000000000000))*(x4056)*(x4064)))+(((IkReal(-1.00000000000000))*(x4046)*(x4049)*(x4062)))+(((IkReal(-1.00000000000000))*(r00)*(x4048)*(x4063)))+(((r01)*(sj6)*(x4063)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4073=((sj0)*(sj6)); +IkReal x4074=((cj0)*(cj6)); +IkReal x4075=((cj0)*(sj6)); +IkReal x4076=((IkReal(1.00000000000000))*(cj1)); +IkReal x4077=((r20)*(sj1)); +IkReal x4078=((cj6)*(sj0)); +IkReal x4079=((r21)*(sj1)); +IkReal x4080=((cj5)*(x4076)); +if( IKabs(((gconst14)*(((((IkReal(-1.00000000000000))*(sj6)*(x4079)))+(((cj6)*(x4077)))+(((cj1)*(r11)*(x4073)))+(((cj1)*(r01)*(x4075)))+(((IkReal(-1.00000000000000))*(r10)*(x4076)*(x4078)))+(((IkReal(-1.00000000000000))*(r00)*(x4074)*(x4076))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst14)*(((((IkReal(-1.00000000000000))*(r11)*(x4078)*(x4080)))+(((IkReal(-1.00000000000000))*(r00)*(x4075)*(x4080)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(sj5)*(x4076)))+(((cj5)*(sj6)*(x4077)))+(((IkReal(-1.00000000000000))*(r01)*(x4074)*(x4080)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x4076)))+(((IkReal(-1.00000000000000))*(r10)*(x4073)*(x4080)))+(((cj5)*(cj6)*(x4079)))+(((r22)*(sj1)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst14)*(((((IkReal(-1.00000000000000))*(sj6)*(x4079)))+(((cj6)*(x4077)))+(((cj1)*(r11)*(x4073)))+(((cj1)*(r01)*(x4075)))+(((IkReal(-1.00000000000000))*(r10)*(x4076)*(x4078)))+(((IkReal(-1.00000000000000))*(r00)*(x4074)*(x4076)))))), ((gconst14)*(((((IkReal(-1.00000000000000))*(r11)*(x4078)*(x4080)))+(((IkReal(-1.00000000000000))*(r00)*(x4075)*(x4080)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(sj5)*(x4076)))+(((cj5)*(sj6)*(x4077)))+(((IkReal(-1.00000000000000))*(r01)*(x4074)*(x4080)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x4076)))+(((IkReal(-1.00000000000000))*(r10)*(x4073)*(x4080)))+(((cj5)*(cj6)*(x4079)))+(((r22)*(sj1)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x4081=IKsin(j4); +IkReal x4082=IKcos(j4); +IkReal x4083=((r00)*(sj6)); +IkReal x4084=((cj6)*(r01)); +IkReal x4085=((IkReal(1.00000000000000))*(cj0)); +IkReal x4086=((IkReal(1.00000000000000))*(sj0)); +IkReal x4087=((r10)*(sj6)); +IkReal x4088=((sj5)*(x4081)); +IkReal x4089=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x4090=((cj5)*(x4081)); +IkReal x4091=((cj6)*(x4082)); +IkReal x4092=((sj0)*(x4090)); +IkReal x4093=((r01)*(sj6)*(x4082)); +IkReal x4094=((r11)*(sj6)*(x4082)); +evalcond[0]=((((r20)*(sj6)*(x4090)))+(((r21)*(sj6)*(x4082)))+(((IkReal(-1.00000000000000))*(cj1)))+(((r22)*(x4088)))+(((cj6)*(r21)*(x4090)))+(((IkReal(-1.00000000000000))*(r20)*(x4091)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4085)*(x4094)))+(((r02)*(sj0)*(x4088)))+(((x4084)*(x4092)))+(((IkReal(-1.00000000000000))*(r00)*(x4086)*(x4091)))+(((IkReal(-1.00000000000000))*(x4085)*(x4087)*(x4090)))+(((cj0)*(r10)*(x4091)))+(((x4083)*(x4092)))+(((IkReal(-1.00000000000000))*(r12)*(x4085)*(x4088)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x4085)*(x4090)))+(((sj0)*(x4093)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4086)*(x4094)))+(((IkReal(-1.00000000000000))*(x4083)*(x4085)*(x4090)))+(((IkReal(-1.00000000000000))*(r02)*(x4085)*(x4088)))+(((IkReal(-1.00000000000000))*(x4086)*(x4087)*(x4090)))+(((cj0)*(r00)*(x4091)))+(sj1)+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x4086)*(x4090)))+(((r10)*(sj0)*(x4091)))+(((IkReal(-1.00000000000000))*(r12)*(x4086)*(x4088)))+(((IkReal(-1.00000000000000))*(x4085)*(x4093)))+(((IkReal(-1.00000000000000))*(x4084)*(x4085)*(x4090)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst17; +gconst17=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x4095=((IkReal(1.00000000000000))*(cj0)); +IkReal x4096=((cj4)*(sj6)); +IkReal x4097=((sj0)*(sj6)); +IkReal x4098=((cj5)*(sj4)); +IkReal x4099=((IkReal(0.374290000000000))*(sj5)); +IkReal x4100=((sj4)*(sj5)); +IkReal x4101=((cj0)*(cj6)); +IkReal x4102=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4103=((cj4)*(sj5)); +IkReal x4104=((cj5)*(sj0)); +IkReal x4105=((IkReal(0.374290000000000))*(r02)); +IkReal x4106=((r20)*(sj6)); +IkReal x4107=((cj6)*(r21)); +IkReal x4108=((IkReal(1.00000000000000))*(sj0)); +IkReal x4109=((cj0)*(sj6)); +IkReal x4110=((cj4)*(cj6)); +IkReal x4111=((IkReal(0.374290000000000))*(r12)); +IkReal x4112=((cj0)*(cj5)); +IkReal x4113=((cj6)*(sj5)); +IkReal x4114=((cj6)*(r01)); +IkReal x4115=((r00)*(sj6)); +IkReal x4116=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4117=((cj6)*(r11)); +IkReal x4118=((IkReal(1.00000000000000))*(r10)); +IkReal x4119=((r02)*(sj0)); +IkReal x4120=((cj6)*(sj4)); +IkReal x4121=((r12)*(x4108)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x4100)))+(((r21)*(x4096)))+(((x4098)*(x4107)))+(((IkReal(-1.00000000000000))*(r20)*(x4110)))+(((x4098)*(x4106)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x4099)*(x4107)))+(((x4099)*(x4106)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x4116)))+(pz)+(((IkReal(-1.00000000000000))*(x4102)*(x4107)))+(((IkReal(-1.00000000000000))*(x4102)*(x4106)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x4095)*(x4115)))+(((r12)*(x4104)))+(((IkReal(-1.00000000000000))*(r11)*(x4108)*(x4113)))+(((IkReal(-1.00000000000000))*(sj5)*(x4097)*(x4118)))+(((IkReal(-1.00000000000000))*(r01)*(x4095)*(x4113)))+(((r02)*(x4112)))); +evalcond[4]=((((sj0)*(x4098)*(x4114)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x4095)*(x4098)))+(((IkReal(-1.00000000000000))*(r12)*(x4095)*(x4100)))+(((IkReal(-1.00000000000000))*(r00)*(x4108)*(x4110)))+(((IkReal(-1.00000000000000))*(r11)*(x4095)*(x4096)))+(((r00)*(x4097)*(x4098)))+(((IkReal(-1.00000000000000))*(x4095)*(x4098)*(x4117)))+(((r01)*(sj0)*(x4096)))+(((x4100)*(x4119)))+(((cj4)*(r10)*(x4101)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x4095)*(x4098)*(x4114)))+(((IkReal(-1.00000000000000))*(x4098)*(x4108)*(x4117)))+(((IkReal(-1.00000000000000))*(x4100)*(x4121)))+(((cj4)*(r00)*(x4101)))+(((IkReal(-1.00000000000000))*(x4097)*(x4098)*(x4118)))+(((IkReal(-1.00000000000000))*(r11)*(x4096)*(x4108)))+(((IkReal(-1.00000000000000))*(x4095)*(x4098)*(x4115)))+(((IkReal(-1.00000000000000))*(r02)*(x4095)*(x4100)))+(((IkReal(-1.00000000000000))*(r01)*(x4095)*(x4096)))+(((r10)*(sj0)*(x4110)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((sj0)*(x4099)*(x4114)))+(((IkReal(-1.00000000000000))*(sj0)*(x4102)*(x4114)))+(((r11)*(x4101)*(x4102)))+(((r00)*(x4097)*(x4099)))+(((IkReal(-1.00000000000000))*(r11)*(x4099)*(x4101)))+(((IkReal(-1.00000000000000))*(r00)*(x4097)*(x4102)))+(((IkReal(-1.00000000000000))*(r10)*(x4099)*(x4109)))+(((IkReal(-1.00000000000000))*(x4116)*(x4119)))+(((IkReal(-1.00000000000000))*(py)*(x4095)))+(((IkReal(-1.00000000000000))*(x4104)*(x4105)))+(((r10)*(x4102)*(x4109)))+(((cj0)*(r12)*(x4116)))+(((px)*(sj0)))+(((x4111)*(x4112)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r02)*(x4095)*(x4103)))+(((r01)*(sj4)*(x4109)))+(((IkReal(-1.00000000000000))*(x4103)*(x4121)))+(((IkReal(-1.00000000000000))*(r00)*(x4095)*(x4120)))+(((r11)*(sj4)*(x4097)))+(((IkReal(-1.00000000000000))*(r10)*(x4108)*(x4120)))+(((IkReal(-1.00000000000000))*(x4096)*(x4104)*(x4118)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x4095)*(x4110)))+(((IkReal(-1.00000000000000))*(r11)*(x4104)*(x4110)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4095)*(x4096)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r00)*(x4102)*(x4109)))+(((IkReal(-1.00000000000000))*(sj0)*(x4099)*(x4117)))+(((IkReal(-1.00000000000000))*(px)*(x4095)))+(((IkReal(-1.00000000000000))*(r01)*(x4099)*(x4101)))+(((r10)*(x4097)*(x4102)))+(((IkReal(-1.00000000000000))*(r10)*(x4097)*(x4099)))+(((cj0)*(r02)*(x4116)))+(((x4105)*(x4112)))+(((r01)*(x4101)*(x4102)))+(((IkReal(-1.00000000000000))*(r00)*(x4099)*(x4109)))+(((IkReal(-1.00000000000000))*(py)*(x4108)))+(((r12)*(sj0)*(x4116)))+(((x4104)*(x4111)))+(((sj0)*(x4102)*(x4117)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4122=((r20)*(sj6)); +IkReal x4123=((cj4)*(cj5)); +IkReal x4124=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x4123)*(x4124)))+(((cj4)*(r22)*(sj5)))+(((x4122)*(x4123))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x4124)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4122))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x4123)*(x4124)))+(((cj4)*(r22)*(sj5)))+(((x4122)*(x4123)))))+IKsqr(((((sj5)*(x4124)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4122)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x4123)*(x4124)))+(((cj4)*(r22)*(sj5)))+(((x4122)*(x4123)))), ((((sj5)*(x4124)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4122))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4125=IKcos(j3); +IkReal x4126=((sj0)*(sj5)); +IkReal x4127=((r00)*(sj6)); +IkReal x4128=((cj6)*(r01)); +IkReal x4129=((cj5)*(sj0)); +IkReal x4130=((cj0)*(cj5)); +IkReal x4131=((cj6)*(sj4)); +IkReal x4132=((sj4)*(sj6)); +IkReal x4133=((cj0)*(r11)); +IkReal x4134=((cj4)*(cj6)); +IkReal x4135=((cj4)*(sj6)); +IkReal x4136=((IkReal(1.00000000000000))*(cj0)); +IkReal x4137=((cj4)*(sj5)); +IkReal x4138=((sj5)*(sj6)); +IkReal x4139=((cj6)*(sj5)); +IkReal x4140=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r21)*(x4139)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4125)))+(((r20)*(x4138)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4140)))+(((r20)*(x4131)))+(((IkReal(-1.00000000000000))*(r21)*(x4132)))+(((cj5)*(r21)*(x4134)))+(((r22)*(x4137)))+(((cj5)*(r20)*(x4135)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4140)))+(((x4126)*(x4128)))+(((IkReal(-1.00000000000000))*(r02)*(x4129)))+(((IkReal(-1.00000000000000))*(x4133)*(x4139)))+(((r12)*(x4130)))+(((IkReal(-1.00000000000000))*(r10)*(x4136)*(x4138)))+(((x4126)*(x4127)))); +evalcond[3]=((((cj4)*(x4127)*(x4129)))+(((IkReal(-1.00000000000000))*(r10)*(x4130)*(x4135)))+(((x4132)*(x4133)))+(((cj4)*(r02)*(x4126)))+(((IkReal(-1.00000000000000))*(r12)*(x4136)*(x4137)))+(((IkReal(-1.00000000000000))*(r10)*(x4131)*(x4136)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x4132)))+(((IkReal(-1.00000000000000))*(r11)*(x4130)*(x4134)))+(((r00)*(sj0)*(x4131)))+(((cj4)*(x4128)*(x4129)))+(x4125)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4141=((IkReal(1.00000000000000))*(cj0)); +IkReal x4142=((cj4)*(sj6)); +IkReal x4143=((sj0)*(sj6)); +IkReal x4144=((cj5)*(sj4)); +IkReal x4145=((IkReal(0.374290000000000))*(sj5)); +IkReal x4146=((sj4)*(sj5)); +IkReal x4147=((cj0)*(cj6)); +IkReal x4148=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4149=((cj4)*(sj5)); +IkReal x4150=((cj5)*(sj0)); +IkReal x4151=((IkReal(0.374290000000000))*(r02)); +IkReal x4152=((r20)*(sj6)); +IkReal x4153=((cj6)*(r21)); +IkReal x4154=((IkReal(1.00000000000000))*(sj0)); +IkReal x4155=((cj0)*(sj6)); +IkReal x4156=((cj4)*(cj6)); +IkReal x4157=((IkReal(0.374290000000000))*(r12)); +IkReal x4158=((cj0)*(cj5)); +IkReal x4159=((cj6)*(sj5)); +IkReal x4160=((cj6)*(r01)); +IkReal x4161=((r00)*(sj6)); +IkReal x4162=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4163=((cj6)*(r11)); +IkReal x4164=((IkReal(1.00000000000000))*(r10)); +IkReal x4165=((r02)*(sj0)); +IkReal x4166=((cj6)*(sj4)); +IkReal x4167=((r12)*(x4154)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x4144)*(x4153)))+(((x4144)*(x4152)))+(((r22)*(x4146)))+(((r21)*(x4142)))+(((IkReal(-1.00000000000000))*(r20)*(x4156)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x4148)*(x4152)))+(((IkReal(-1.00000000000000))*(r22)*(x4162)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x4145)*(x4152)))+(((IkReal(-1.00000000000000))*(x4148)*(x4153)))+(((x4145)*(x4153)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x4141)*(x4161)))+(((IkReal(-1.00000000000000))*(r11)*(x4154)*(x4159)))+(((IkReal(-1.00000000000000))*(r01)*(x4141)*(x4159)))+(((r12)*(x4150)))+(((r02)*(x4158)))+(((IkReal(-1.00000000000000))*(sj5)*(x4143)*(x4164)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x4141)*(x4146)))+(((sj0)*(x4144)*(x4160)))+(((IkReal(-1.00000000000000))*(r11)*(x4141)*(x4142)))+(((r01)*(sj0)*(x4142)))+(((IkReal(-1.00000000000000))*(x4141)*(x4144)*(x4163)))+(((IkReal(-1.00000000000000))*(r00)*(x4154)*(x4156)))+(((cj4)*(r10)*(x4147)))+(((x4146)*(x4165)))+(((r00)*(x4143)*(x4144)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x4141)*(x4144)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((r10)*(sj0)*(x4156)))+(((IkReal(-1.00000000000000))*(x4146)*(x4167)))+(((cj4)*(r00)*(x4147)))+(((IkReal(-1.00000000000000))*(x4141)*(x4144)*(x4161)))+(((IkReal(-1.00000000000000))*(r11)*(x4142)*(x4154)))+(((IkReal(-1.00000000000000))*(x4144)*(x4154)*(x4163)))+(((IkReal(-1.00000000000000))*(x4141)*(x4144)*(x4160)))+(((IkReal(-1.00000000000000))*(x4143)*(x4144)*(x4164)))+(((IkReal(-1.00000000000000))*(r01)*(x4141)*(x4142)))+(((IkReal(-1.00000000000000))*(r02)*(x4141)*(x4146)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r11)*(x4147)*(x4148)))+(((cj0)*(r12)*(x4162)))+(((IkReal(-1.00000000000000))*(x4162)*(x4165)))+(((r00)*(x4143)*(x4145)))+(((IkReal(-1.00000000000000))*(py)*(x4141)))+(((IkReal(-1.00000000000000))*(sj0)*(x4148)*(x4160)))+(((x4157)*(x4158)))+(((IkReal(-1.00000000000000))*(r00)*(x4143)*(x4148)))+(((r10)*(x4148)*(x4155)))+(((IkReal(-1.00000000000000))*(r10)*(x4145)*(x4155)))+(((IkReal(-1.00000000000000))*(x4150)*(x4151)))+(((sj0)*(x4145)*(x4160)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x4145)*(x4147)))); +evalcond[7]=((((r01)*(sj4)*(x4155)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4141)*(x4142)))+(((IkReal(-1.00000000000000))*(r11)*(x4150)*(x4156)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x4141)*(x4156)))+(((IkReal(-1.00000000000000))*(r10)*(x4154)*(x4166)))+(((IkReal(-1.00000000000000))*(x4142)*(x4150)*(x4164)))+(((r11)*(sj4)*(x4143)))+(((IkReal(-1.00000000000000))*(r02)*(x4141)*(x4149)))+(((IkReal(-1.00000000000000))*(r00)*(x4141)*(x4166)))+(((IkReal(-1.00000000000000))*(x4149)*(x4167)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x4143)*(x4145)))+(((r10)*(x4143)*(x4148)))+(((IkReal(-1.00000000000000))*(r00)*(x4145)*(x4155)))+(((r00)*(x4148)*(x4155)))+(((x4150)*(x4157)))+(((r12)*(sj0)*(x4162)))+(((IkReal(-1.00000000000000))*(sj0)*(x4145)*(x4163)))+(((sj0)*(x4148)*(x4163)))+(((IkReal(-1.00000000000000))*(r01)*(x4145)*(x4147)))+(((cj0)*(r02)*(x4162)))+(((r01)*(x4147)*(x4148)))+(((IkReal(-1.00000000000000))*(py)*(x4154)))+(((x4151)*(x4158)))+(((IkReal(-1.00000000000000))*(px)*(x4141)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4168=((IkReal(1.00000000000000))*(sj5)); +IkReal x4169=((cj6)*(r21)); +IkReal x4170=((r20)*(sj6)); +IkReal x4171=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x4170)*(x4171)))+(((IkReal(-1.00000000000000))*(x4169)*(x4171)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4168)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x4168)*(x4170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4168)*(x4169))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x4170)*(x4171)))+(((IkReal(-1.00000000000000))*(x4169)*(x4171)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4168)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x4168)*(x4170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4168)*(x4169)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x4170)*(x4171)))+(((IkReal(-1.00000000000000))*(x4169)*(x4171)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4168)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x4168)*(x4170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4168)*(x4169))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4172=IKsin(j3); +IkReal x4173=IKcos(j3); +IkReal x4174=((sj0)*(sj5)); +IkReal x4175=((r00)*(sj6)); +IkReal x4176=((cj6)*(r01)); +IkReal x4177=((cj5)*(sj0)); +IkReal x4178=((cj0)*(cj5)); +IkReal x4179=((cj6)*(sj4)); +IkReal x4180=((sj4)*(sj6)); +IkReal x4181=((cj0)*(r11)); +IkReal x4182=((cj4)*(cj6)); +IkReal x4183=((cj4)*(sj6)); +IkReal x4184=((IkReal(1.00000000000000))*(cj0)); +IkReal x4185=((cj4)*(sj5)); +IkReal x4186=((sj5)*(sj6)); +IkReal x4187=((cj6)*(sj5)); +evalcond[0]=((((r21)*(x4187)))+(x4173)+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x4186)))); +evalcond[1]=((x4172)+(((r22)*(x4185)))+(((cj5)*(r21)*(x4182)))+(((IkReal(-1.00000000000000))*(r21)*(x4180)))+(((r20)*(x4179)))+(((cj5)*(r20)*(x4183)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4181)*(x4187)))+(((IkReal(-1.00000000000000))*(r02)*(x4177)))+(((r12)*(x4178)))+(((x4174)*(x4175)))+(((x4174)*(x4176)))+(((IkReal(-1.00000000000000))*(r10)*(x4184)*(x4186)))+(((IkReal(-1.00000000000000))*(x4172)))); +evalcond[3]=((((r00)*(sj0)*(x4179)))+(((x4180)*(x4181)))+(((cj4)*(r02)*(x4174)))+(x4173)+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x4180)))+(((cj4)*(x4176)*(x4177)))+(((cj4)*(x4175)*(x4177)))+(((IkReal(-1.00000000000000))*(r10)*(x4179)*(x4184)))+(((IkReal(-1.00000000000000))*(r10)*(x4178)*(x4183)))+(((IkReal(-1.00000000000000))*(r12)*(x4184)*(x4185)))+(((IkReal(-1.00000000000000))*(r11)*(x4178)*(x4182)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4188=((IkReal(1.00000000000000))*(cj0)); +IkReal x4189=((cj4)*(sj6)); +IkReal x4190=((sj0)*(sj4)); +IkReal x4191=((cj5)*(sj6)); +IkReal x4192=((sj4)*(sj5)); +IkReal x4193=((r12)*(sj5)); +IkReal x4194=((IkReal(0.374290000000000))*(cj5)); +IkReal x4195=((r02)*(sj0)); +IkReal x4196=((r20)*(sj4)); +IkReal x4197=((IkReal(1.00000000000000))*(sj0)); +IkReal x4198=((IkReal(1.00000000000000))*(cj5)); +IkReal x4199=((cj0)*(r10)); +IkReal x4200=((cj4)*(cj6)); +IkReal x4201=((r00)*(sj0)); +IkReal x4202=((cj6)*(r21)); +IkReal x4203=((IkReal(0.374290000000000))*(sj5)); +IkReal x4204=((cj0)*(r00)); +IkReal x4205=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4206=((cj0)*(r02)); +IkReal x4207=((cj5)*(sj4)); +IkReal x4208=((cj6)*(r01)); +IkReal x4209=((cj6)*(r11)); +IkReal x4210=((r01)*(sj0)); +IkReal x4211=((r10)*(sj0)); +IkReal x4212=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x4213=((sj6)*(x4203)); +IkReal x4214=((cj0)*(cj6)*(x4203)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x4202)))+(((IkReal(-1.00000000000000))*(r22)*(x4198)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x4202)*(x4207)))+(((x4191)*(x4196)))+(((r21)*(x4189)))+(((r22)*(x4192)))+(((IkReal(-1.00000000000000))*(r20)*(x4200)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x4191)))+(((IkReal(-0.0100000000000000))*(cj5)*(x4202)))+(((x4202)*(x4203)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x4194)))+(((IkReal(-1.00000000000000))*(r22)*(x4205)))+(((r20)*(x4213)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x4200)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x4189)))+(((cj6)*(x4196)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x4188)*(x4191)))+(((r00)*(x4190)*(x4191)))+(((IkReal(-1.00000000000000))*(r00)*(x4197)*(x4200)))+(((IkReal(-1.00000000000000))*(r11)*(x4188)*(x4189)))+(((x4199)*(x4200)))+(((cj5)*(x4190)*(x4208)))+(((r02)*(sj5)*(x4190)))+(((IkReal(-1.00000000000000))*(r12)*(x4188)*(x4192)))+(((IkReal(-1.00000000000000))*(x4188)*(x4207)*(x4209)))+(((x4189)*(x4210)))); +evalcond[6]=((((x4200)*(x4204)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x4188)*(x4191)))+(((x4200)*(x4211)))+(((IkReal(-1.00000000000000))*(r01)*(x4188)*(x4189)))+(((IkReal(-1.00000000000000))*(x4188)*(x4207)*(x4208)))+(((IkReal(-1.00000000000000))*(r02)*(x4188)*(x4192)))+(((IkReal(-1.00000000000000))*(x4190)*(x4198)*(x4209)))+(((IkReal(-1.00000000000000))*(x4190)*(x4193)))+(((IkReal(-1.00000000000000))*(r11)*(x4189)*(x4197)))+(((IkReal(-1.00000000000000))*(r10)*(x4190)*(x4191)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x4203)*(x4209)))+(((IkReal(-1.00000000000000))*(x4195)*(x4205)))+(((sj0)*(x4203)*(x4208)))+(((IkReal(-1.00000000000000))*(py)*(x4188)))+(((cj0)*(r12)*(x4194)))+(((x4201)*(x4213)))+(((IkReal(-1.00000000000000))*(x4194)*(x4195)))+(((IkReal(-1.00000000000000))*(x4199)*(x4213)))+(((IkReal(0.0100000000000000))*(x4191)*(x4199)))+(((IkReal(0.0100000000000000))*(cj0)*(x4193)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4209)))+(((IkReal(-0.0100000000000000))*(x4191)*(x4201)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x4208)))); +evalcond[8]=((IkReal(0.433420000000000))+(((r12)*(sj0)*(x4194)))+(((IkReal(0.0100000000000000))*(x4191)*(x4211)))+(((x4194)*(x4206)))+(((x4205)*(x4206)))+(((IkReal(-1.00000000000000))*(px)*(x4188)))+(((IkReal(-1.00000000000000))*(cj0)*(x4203)*(x4208)))+(((IkReal(0.0100000000000000))*(sj0)*(x4193)))+(((IkReal(-1.00000000000000))*(py)*(x4197)))+(((IkReal(-1.00000000000000))*(sj0)*(x4203)*(x4209)))+(((IkReal(0.0100000000000000))*(x4191)*(x4204)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4208)))+(((IkReal(-1.00000000000000))*(x4211)*(x4213)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x4209)))+(((IkReal(-1.00000000000000))*(x4204)*(x4213)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4215=((cj0)*(cj5)); +IkReal x4216=((IkReal(1.00000000000000))*(cj0)); +IkReal x4217=((cj6)*(r11)); +IkReal x4218=((r10)*(sj6)); +IkReal x4219=((cj5)*(sj0)); +IkReal x4220=((r00)*(sj5)*(sj6)); +IkReal x4221=((cj6)*(r01)*(sj5)); +IkReal x4222=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x4221)))+(((IkReal(-1.00000000000000))*(r02)*(x4219)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4217)))+(((sj0)*(x4220)))+(((r12)*(x4215)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4218))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x4218)*(x4222)))+(((IkReal(-1.00000000000000))*(x4216)*(x4221)))+(((IkReal(-1.00000000000000))*(x4217)*(x4222)))+(((r02)*(x4215)))+(((r12)*(x4219)))+(((IkReal(-1.00000000000000))*(x4216)*(x4220))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x4221)))+(((IkReal(-1.00000000000000))*(r02)*(x4219)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4217)))+(((sj0)*(x4220)))+(((r12)*(x4215)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4218)))))+IKsqr(((((IkReal(-1.00000000000000))*(x4218)*(x4222)))+(((IkReal(-1.00000000000000))*(x4216)*(x4221)))+(((IkReal(-1.00000000000000))*(x4217)*(x4222)))+(((r02)*(x4215)))+(((r12)*(x4219)))+(((IkReal(-1.00000000000000))*(x4216)*(x4220)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x4221)))+(((IkReal(-1.00000000000000))*(r02)*(x4219)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4217)))+(((sj0)*(x4220)))+(((r12)*(x4215)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4218)))), ((((IkReal(-1.00000000000000))*(x4218)*(x4222)))+(((IkReal(-1.00000000000000))*(x4216)*(x4221)))+(((IkReal(-1.00000000000000))*(x4217)*(x4222)))+(((r02)*(x4215)))+(((r12)*(x4219)))+(((IkReal(-1.00000000000000))*(x4216)*(x4220))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4223=IKcos(j3); +IkReal x4224=((sj0)*(sj5)); +IkReal x4225=((r00)*(sj6)); +IkReal x4226=((cj6)*(sj0)); +IkReal x4227=((IkReal(1.00000000000000))*(cj4)); +IkReal x4228=((r00)*(sj4)); +IkReal x4229=((cj0)*(cj5)); +IkReal x4230=((cj5)*(sj0)); +IkReal x4231=((cj6)*(r11)); +IkReal x4232=((r10)*(sj6)); +IkReal x4233=((cj0)*(sj5)); +IkReal x4234=((r10)*(sj4)); +IkReal x4235=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x4236=((cj4)*(cj5)*(r01)); +IkReal x4237=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x4238=((cj0)*(sj4)*(sj6)); +IkReal x4239=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj6)*(r01)*(x4224)))+(((IkReal(-1.00000000000000))*(x4231)*(x4233)))+(((x4224)*(x4225)))+(((IkReal(-1.00000000000000))*(x4232)*(x4233)))+(((IkReal(-1.00000000000000))*(x4235)))+(((r12)*(x4229)))+(((IkReal(-1.00000000000000))*(r02)*(x4230)))); +evalcond[1]=((((r02)*(x4229)))+(((r12)*(x4230)))+(((IkReal(-1.00000000000000))*(x4225)*(x4233)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4233)))+(((IkReal(-1.00000000000000))*(x4223)))+(((IkReal(-1.00000000000000))*(x4224)*(x4232)))+(((IkReal(-1.00000000000000))*(x4224)*(x4231)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4234)*(x4237)))+(((x4226)*(x4236)))+(((cj4)*(x4225)*(x4230)))+(((IkReal(-1.00000000000000))*(r12)*(x4227)*(x4233)))+(((cj4)*(r02)*(x4224)))+(x4223)+(((IkReal(-1.00000000000000))*(r01)*(x4239)))+(((x4226)*(x4228)))+(((IkReal(-1.00000000000000))*(x4227)*(x4229)*(x4232)))+(((IkReal(-1.00000000000000))*(x4227)*(x4229)*(x4231)))+(((r11)*(x4238)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4227)*(x4229)))+(((IkReal(-1.00000000000000))*(x4227)*(x4230)*(x4232)))+(((IkReal(-1.00000000000000))*(r12)*(x4224)*(x4227)))+(((IkReal(-1.00000000000000))*(x4228)*(x4237)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x4226)*(x4227)))+(((r01)*(x4238)))+(((IkReal(-1.00000000000000))*(x4226)*(x4234)))+(((IkReal(-1.00000000000000))*(r02)*(x4227)*(x4233)))+(((r11)*(x4239)))+(((IkReal(-1.00000000000000))*(x4235)))+(((IkReal(-1.00000000000000))*(x4225)*(x4227)*(x4229)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4240=((IkReal(1.00000000000000))*(cj0)); +IkReal x4241=((cj4)*(sj6)); +IkReal x4242=((sj0)*(sj4)); +IkReal x4243=((cj5)*(sj6)); +IkReal x4244=((sj4)*(sj5)); +IkReal x4245=((r12)*(sj5)); +IkReal x4246=((IkReal(0.374290000000000))*(cj5)); +IkReal x4247=((r02)*(sj0)); +IkReal x4248=((r20)*(sj4)); +IkReal x4249=((IkReal(1.00000000000000))*(sj0)); +IkReal x4250=((IkReal(1.00000000000000))*(cj5)); +IkReal x4251=((cj0)*(r10)); +IkReal x4252=((cj4)*(cj6)); +IkReal x4253=((r00)*(sj0)); +IkReal x4254=((cj6)*(r21)); +IkReal x4255=((IkReal(0.374290000000000))*(sj5)); +IkReal x4256=((cj0)*(r00)); +IkReal x4257=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4258=((cj0)*(r02)); +IkReal x4259=((cj5)*(sj4)); +IkReal x4260=((cj6)*(r01)); +IkReal x4261=((cj6)*(r11)); +IkReal x4262=((r01)*(sj0)); +IkReal x4263=((r10)*(sj0)); +IkReal x4264=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x4265=((sj6)*(x4255)); +IkReal x4266=((cj0)*(cj6)*(x4255)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x4250)))+(((sj5)*(x4254)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x4243)*(x4248)))+(((r21)*(x4241)))+(((IkReal(-1.00000000000000))*(r20)*(x4252)))+(((x4254)*(x4259)))+(((r22)*(x4244)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x4246)))+(((x4254)*(x4255)))+(((IkReal(-0.0100000000000000))*(cj5)*(x4254)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x4243)))+(((IkReal(-1.00000000000000))*(r22)*(x4257)))+(((r20)*(x4265)))); +evalcond[4]=((((cj5)*(r21)*(x4252)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x4248)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x4241)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x4240)*(x4243)))+(((r00)*(x4242)*(x4243)))+(((IkReal(-1.00000000000000))*(r12)*(x4240)*(x4244)))+(((IkReal(-1.00000000000000))*(r11)*(x4240)*(x4241)))+(((x4251)*(x4252)))+(((x4241)*(x4262)))+(((r02)*(sj5)*(x4242)))+(((IkReal(-1.00000000000000))*(x4240)*(x4259)*(x4261)))+(((IkReal(-1.00000000000000))*(r00)*(x4249)*(x4252)))+(((cj5)*(x4242)*(x4260)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r00)*(sj4)*(x4240)*(x4243)))+(((IkReal(-1.00000000000000))*(x4242)*(x4250)*(x4261)))+(((IkReal(-1.00000000000000))*(r01)*(x4240)*(x4241)))+(((x4252)*(x4256)))+(((IkReal(-1.00000000000000))*(r11)*(x4241)*(x4249)))+(((IkReal(-1.00000000000000))*(r10)*(x4242)*(x4243)))+(((IkReal(-1.00000000000000))*(x4242)*(x4245)))+(((IkReal(-1.00000000000000))*(x4240)*(x4259)*(x4260)))+(((x4252)*(x4263)))+(((IkReal(-1.00000000000000))*(r02)*(x4240)*(x4244)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(x4243)*(x4251)))+(((IkReal(-1.00000000000000))*(cj0)*(x4255)*(x4261)))+(((x4253)*(x4265)))+(((IkReal(-0.0100000000000000))*(x4243)*(x4253)))+(((IkReal(0.0100000000000000))*(cj0)*(x4245)))+(((IkReal(-1.00000000000000))*(x4246)*(x4247)))+(((cj0)*(r12)*(x4246)))+(((IkReal(-1.00000000000000))*(x4251)*(x4265)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4261)))+(((sj0)*(x4255)*(x4260)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x4260)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x4247)*(x4257)))+(((IkReal(-1.00000000000000))*(py)*(x4240)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(x4256)*(x4265)))+(((IkReal(-1.00000000000000))*(py)*(x4249)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x4261)))+(((IkReal(-1.00000000000000))*(cj0)*(x4255)*(x4260)))+(((r12)*(sj0)*(x4246)))+(((IkReal(-1.00000000000000))*(sj0)*(x4255)*(x4261)))+(((IkReal(0.0100000000000000))*(x4243)*(x4256)))+(((IkReal(0.0100000000000000))*(x4243)*(x4263)))+(((IkReal(-1.00000000000000))*(px)*(x4240)))+(((IkReal(-1.00000000000000))*(x4263)*(x4265)))+(((x4257)*(x4258)))+(((x4246)*(x4258)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4260)))+(((IkReal(0.0100000000000000))*(sj0)*(x4245)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4267=((sj0)*(sj5)); +IkReal x4268=((r00)*(sj6)); +IkReal x4269=((IkReal(1.00000000000000))*(cj5)); +IkReal x4270=((cj6)*(r11)); +IkReal x4271=((cj6)*(r01)); +IkReal x4272=((r10)*(sj6)); +IkReal x4273=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x4272)*(x4273)))+(((cj0)*(cj5)*(r12)))+(((x4267)*(x4268)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4269)))+(((x4267)*(x4271)))+(((IkReal(-1.00000000000000))*(x4270)*(x4273))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x4271)*(x4273)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4269)))+(((x4267)*(x4270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4269)))+(((x4268)*(x4273)))+(((x4267)*(x4272))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x4272)*(x4273)))+(((cj0)*(cj5)*(r12)))+(((x4267)*(x4268)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4269)))+(((x4267)*(x4271)))+(((IkReal(-1.00000000000000))*(x4270)*(x4273)))))+IKsqr(((((x4271)*(x4273)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4269)))+(((x4267)*(x4270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4269)))+(((x4268)*(x4273)))+(((x4267)*(x4272)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x4272)*(x4273)))+(((cj0)*(cj5)*(r12)))+(((x4267)*(x4268)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4269)))+(((x4267)*(x4271)))+(((IkReal(-1.00000000000000))*(x4270)*(x4273)))), ((((x4271)*(x4273)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4269)))+(((x4267)*(x4270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4269)))+(((x4268)*(x4273)))+(((x4267)*(x4272))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4274=IKcos(j3); +IkReal x4275=IKsin(j3); +IkReal x4276=((sj0)*(sj5)); +IkReal x4277=((r00)*(sj6)); +IkReal x4278=((cj6)*(sj0)); +IkReal x4279=((IkReal(1.00000000000000))*(cj4)); +IkReal x4280=((r00)*(sj4)); +IkReal x4281=((cj0)*(cj5)); +IkReal x4282=((cj5)*(sj0)); +IkReal x4283=((cj6)*(r11)); +IkReal x4284=((r10)*(sj6)); +IkReal x4285=((cj0)*(sj5)); +IkReal x4286=((r10)*(sj4)); +IkReal x4287=((cj4)*(cj5)*(r01)); +IkReal x4288=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x4289=((cj0)*(sj4)*(sj6)); +IkReal x4290=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj6)*(r01)*(x4276)))+(((IkReal(-1.00000000000000))*(x4284)*(x4285)))+(((IkReal(-1.00000000000000))*(x4283)*(x4285)))+(((IkReal(-1.00000000000000))*(x4275)))+(((x4276)*(x4277)))+(((IkReal(-1.00000000000000))*(r02)*(x4282)))+(((r12)*(x4281)))); +evalcond[1]=((((r02)*(x4281)))+(((IkReal(-1.00000000000000))*(x4277)*(x4285)))+(((IkReal(-1.00000000000000))*(x4276)*(x4284)))+(x4274)+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4285)))+(((r12)*(x4282)))+(((IkReal(-1.00000000000000))*(x4276)*(x4283)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4279)*(x4281)*(x4284)))+(((x4278)*(x4287)))+(((r11)*(x4289)))+(((x4278)*(x4280)))+(((IkReal(-1.00000000000000))*(r01)*(x4290)))+(x4274)+(((IkReal(-1.00000000000000))*(x4286)*(x4288)))+(((IkReal(-1.00000000000000))*(r12)*(x4279)*(x4285)))+(((cj4)*(r02)*(x4276)))+(((IkReal(-1.00000000000000))*(x4279)*(x4281)*(x4283)))+(((cj4)*(x4277)*(x4282)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r02)*(x4279)*(x4285)))+(((IkReal(-1.00000000000000))*(x4280)*(x4288)))+(x4275)+(((r01)*(x4289)))+(((r11)*(x4290)))+(((IkReal(-1.00000000000000))*(x4279)*(x4282)*(x4284)))+(((IkReal(-1.00000000000000))*(x4278)*(x4286)))+(((IkReal(-1.00000000000000))*(x4277)*(x4279)*(x4281)))+(((IkReal(-1.00000000000000))*(r12)*(x4276)*(x4279)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4279)*(x4281)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x4278)*(x4279)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4291=((cj0)*(cj5)); +IkReal x4292=((IkReal(1.00000000000000))*(cj0)); +IkReal x4293=((cj6)*(r11)); +IkReal x4294=((r10)*(sj6)); +IkReal x4295=((cj5)*(sj0)); +IkReal x4296=((r00)*(sj5)*(sj6)); +IkReal x4297=((cj6)*(r01)*(sj5)); +IkReal x4298=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4294)))+(((sj0)*(x4296)))+(((sj0)*(x4297)))+(((IkReal(-1.00000000000000))*(r02)*(x4295)))+(((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4293)))+(((r12)*(x4291))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r12)*(x4295)))+(((IkReal(-1.00000000000000))*(x4293)*(x4298)))+(((r02)*(x4291)))+(((IkReal(-1.00000000000000))*(x4294)*(x4298)))+(((IkReal(-1.00000000000000))*(x4292)*(x4297)))+(((IkReal(-1.00000000000000))*(x4292)*(x4296))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4294)))+(((sj0)*(x4296)))+(((sj0)*(x4297)))+(((IkReal(-1.00000000000000))*(r02)*(x4295)))+(((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4293)))+(((r12)*(x4291)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r12)*(x4295)))+(((IkReal(-1.00000000000000))*(x4293)*(x4298)))+(((r02)*(x4291)))+(((IkReal(-1.00000000000000))*(x4294)*(x4298)))+(((IkReal(-1.00000000000000))*(x4292)*(x4297)))+(((IkReal(-1.00000000000000))*(x4292)*(x4296)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4294)))+(((sj0)*(x4296)))+(((sj0)*(x4297)))+(((IkReal(-1.00000000000000))*(r02)*(x4295)))+(((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4293)))+(((r12)*(x4291)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r12)*(x4295)))+(((IkReal(-1.00000000000000))*(x4293)*(x4298)))+(((r02)*(x4291)))+(((IkReal(-1.00000000000000))*(x4294)*(x4298)))+(((IkReal(-1.00000000000000))*(x4292)*(x4297)))+(((IkReal(-1.00000000000000))*(x4292)*(x4296))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4299=IKsin(j3); +IkReal x4300=IKcos(j3); +IkReal x4301=((sj0)*(sj5)); +IkReal x4302=((r00)*(sj6)); +IkReal x4303=((cj6)*(r01)); +IkReal x4304=((cj4)*(cj5)); +IkReal x4305=((IkReal(1.00000000000000))*(cj0)); +IkReal x4306=((cj5)*(r12)); +IkReal x4307=((IkReal(1.00000000000000))*(sj0)); +IkReal x4308=((cj6)*(r11)); +IkReal x4309=((cj5)*(r02)); +IkReal x4310=((IkReal(1.00000000000000))*(cj1)); +IkReal x4311=((cj6)*(sj4)); +IkReal x4312=((cj6)*(r21)); +IkReal x4313=((r20)*(sj6)); +IkReal x4314=((r10)*(sj6)); +IkReal x4315=((sj4)*(sj6)); +IkReal x4316=((cj4)*(r02)); +IkReal x4317=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4318=((IkReal(1.00000000000000))*(x4299)); +IkReal x4319=((cj0)*(x4315)); +evalcond[0]=((((sj5)*(x4313)))+(((IkReal(-1.00000000000000))*(sj1)*(x4300)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4312)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x4318)))+(((x4304)*(x4313)))+(((IkReal(-1.00000000000000))*(r21)*(x4315)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x4311)))+(((x4304)*(x4312)))); +evalcond[2]=((((cj0)*(x4306)))+(((IkReal(-1.00000000000000))*(sj5)*(x4305)*(x4314)))+(((x4301)*(x4303)))+(((IkReal(-1.00000000000000))*(x4318)))+(((IkReal(-1.00000000000000))*(x4307)*(x4309)))+(((x4301)*(x4302)))+(((IkReal(-1.00000000000000))*(sj5)*(x4305)*(x4308)))); +evalcond[3]=((((sj0)*(x4306)))+(((IkReal(-1.00000000000000))*(x4301)*(x4308)))+(((IkReal(-1.00000000000000))*(sj5)*(x4302)*(x4305)))+(((IkReal(-1.00000000000000))*(x4301)*(x4314)))+(((IkReal(-1.00000000000000))*(x4300)*(x4310)))+(((IkReal(-1.00000000000000))*(sj5)*(x4303)*(x4305)))+(((cj0)*(x4309)))); +evalcond[4]=((((r11)*(x4319)))+(((x4301)*(x4316)))+(((IkReal(-1.00000000000000))*(x4304)*(x4305)*(x4308)))+(((IkReal(-1.00000000000000))*(x4304)*(x4305)*(x4314)))+(((IkReal(-1.00000000000000))*(r10)*(x4305)*(x4311)))+(((sj0)*(x4303)*(x4304)))+(((IkReal(-1.00000000000000))*(r01)*(x4307)*(x4315)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4305)))+(((sj0)*(x4302)*(x4304)))+(x4300)+(((r00)*(sj0)*(x4311)))); +evalcond[5]=((((r11)*(sj0)*(x4315)))+(((IkReal(-1.00000000000000))*(r00)*(x4305)*(x4311)))+(((IkReal(-1.00000000000000))*(r10)*(x4307)*(x4311)))+(((IkReal(-1.00000000000000))*(x4299)*(x4310)))+(((IkReal(-1.00000000000000))*(x4304)*(x4307)*(x4308)))+(((IkReal(-1.00000000000000))*(x4301)*(x4317)))+(((IkReal(-1.00000000000000))*(sj5)*(x4305)*(x4316)))+(((IkReal(-1.00000000000000))*(x4303)*(x4304)*(x4305)))+(((IkReal(-1.00000000000000))*(x4304)*(x4307)*(x4314)))+(((IkReal(-1.00000000000000))*(x4302)*(x4304)*(x4305)))+(((r01)*(x4319)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4320=((sj5)*(sj6)); +IkReal x4321=((cj6)*(sj5)); +IkReal x4322=((IkReal(1.00000000000000))*(cj0)); +IkReal x4323=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r10)*(x4320)*(x4322)))+(((r01)*(sj0)*(x4321)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4323)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x4320)))+(((IkReal(-1.00000000000000))*(r11)*(x4321)*(x4322))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x4321)))+(((IkReal(-1.00000000000000))*(r22)*(x4323)))+(((r20)*(x4320))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r10)*(x4320)*(x4322)))+(((r01)*(sj0)*(x4321)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4323)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x4320)))+(((IkReal(-1.00000000000000))*(r11)*(x4321)*(x4322)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x4321)))+(((IkReal(-1.00000000000000))*(r22)*(x4323)))+(((r20)*(x4320)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r10)*(x4320)*(x4322)))+(((r01)*(sj0)*(x4321)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4323)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x4320)))+(((IkReal(-1.00000000000000))*(r11)*(x4321)*(x4322)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x4321)))+(((IkReal(-1.00000000000000))*(r22)*(x4323)))+(((r20)*(x4320))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4324=IKsin(j3); +IkReal x4325=IKcos(j3); +IkReal x4326=((sj0)*(sj5)); +IkReal x4327=((r00)*(sj6)); +IkReal x4328=((cj6)*(r01)); +IkReal x4329=((cj4)*(cj5)); +IkReal x4330=((IkReal(1.00000000000000))*(cj0)); +IkReal x4331=((cj5)*(r12)); +IkReal x4332=((IkReal(1.00000000000000))*(sj0)); +IkReal x4333=((cj6)*(r11)); +IkReal x4334=((cj5)*(r02)); +IkReal x4335=((IkReal(1.00000000000000))*(cj1)); +IkReal x4336=((cj6)*(sj4)); +IkReal x4337=((cj6)*(r21)); +IkReal x4338=((r20)*(sj6)); +IkReal x4339=((r10)*(sj6)); +IkReal x4340=((sj4)*(sj6)); +IkReal x4341=((cj4)*(r02)); +IkReal x4342=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4343=((IkReal(1.00000000000000))*(x4324)); +IkReal x4344=((cj0)*(x4340)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x4325)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4337)))+(((sj5)*(x4338)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x4340)))+(((r20)*(x4336)))+(((x4329)*(x4337)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x4343)))+(((x4329)*(x4338)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4343)))+(((cj0)*(x4331)))+(((x4326)*(x4328)))+(((x4326)*(x4327)))+(((IkReal(-1.00000000000000))*(x4332)*(x4334)))+(((IkReal(-1.00000000000000))*(sj5)*(x4330)*(x4339)))+(((IkReal(-1.00000000000000))*(sj5)*(x4330)*(x4333)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x4327)*(x4330)))+(((IkReal(-1.00000000000000))*(x4325)*(x4335)))+(((cj0)*(x4334)))+(((IkReal(-1.00000000000000))*(x4326)*(x4339)))+(((sj0)*(x4331)))+(((IkReal(-1.00000000000000))*(sj5)*(x4328)*(x4330)))+(((IkReal(-1.00000000000000))*(x4326)*(x4333)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4330)))+(((IkReal(-1.00000000000000))*(x4329)*(x4330)*(x4333)))+(((IkReal(-1.00000000000000))*(x4329)*(x4330)*(x4339)))+(((r00)*(sj0)*(x4336)))+(((r11)*(x4344)))+(((sj0)*(x4327)*(x4329)))+(((IkReal(-1.00000000000000))*(r01)*(x4332)*(x4340)))+(((IkReal(-1.00000000000000))*(r10)*(x4330)*(x4336)))+(((x4326)*(x4341)))+(((sj0)*(x4328)*(x4329)))+(x4325)); +evalcond[5]=((((r01)*(x4344)))+(((IkReal(-1.00000000000000))*(r00)*(x4330)*(x4336)))+(((IkReal(-1.00000000000000))*(x4326)*(x4342)))+(((IkReal(-1.00000000000000))*(x4328)*(x4329)*(x4330)))+(((IkReal(-1.00000000000000))*(r10)*(x4332)*(x4336)))+(((IkReal(-1.00000000000000))*(x4327)*(x4329)*(x4330)))+(((IkReal(-1.00000000000000))*(x4329)*(x4332)*(x4339)))+(((IkReal(-1.00000000000000))*(x4324)*(x4335)))+(((IkReal(-1.00000000000000))*(x4329)*(x4332)*(x4333)))+(((IkReal(-1.00000000000000))*(sj5)*(x4330)*(x4341)))+(((r11)*(sj0)*(x4340)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4345=((r20)*(sj6)); +IkReal x4346=((cj4)*(cj5)); +IkReal x4347=((cj6)*(r21)); +if( IKabs(((gconst17)*(((((x4345)*(x4346)))+(((x4346)*(x4347)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst17)*(((((sj5)*(x4345)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4347))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst17)*(((((x4345)*(x4346)))+(((x4346)*(x4347)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))), ((gconst17)*(((((sj5)*(x4345)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4347))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4348=IKsin(j3); +IkReal x4349=IKcos(j3); +IkReal x4350=((sj0)*(sj5)); +IkReal x4351=((r00)*(sj6)); +IkReal x4352=((cj6)*(r01)); +IkReal x4353=((cj4)*(cj5)); +IkReal x4354=((IkReal(1.00000000000000))*(cj0)); +IkReal x4355=((cj5)*(r12)); +IkReal x4356=((IkReal(1.00000000000000))*(sj0)); +IkReal x4357=((cj6)*(r11)); +IkReal x4358=((cj5)*(r02)); +IkReal x4359=((IkReal(1.00000000000000))*(cj1)); +IkReal x4360=((cj6)*(sj4)); +IkReal x4361=((cj6)*(r21)); +IkReal x4362=((r20)*(sj6)); +IkReal x4363=((r10)*(sj6)); +IkReal x4364=((sj4)*(sj6)); +IkReal x4365=((cj4)*(r02)); +IkReal x4366=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4367=((IkReal(1.00000000000000))*(x4348)); +IkReal x4368=((cj0)*(x4364)); +evalcond[0]=((((sj5)*(x4361)))+(((sj5)*(x4362)))+(((IkReal(-1.00000000000000))*(sj1)*(x4349)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((x4353)*(x4362)))+(((x4353)*(x4361)))+(((IkReal(-1.00000000000000))*(r21)*(x4364)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x4360)))+(((IkReal(-1.00000000000000))*(sj1)*(x4367)))); +evalcond[2]=((((cj0)*(x4355)))+(((IkReal(-1.00000000000000))*(x4356)*(x4358)))+(((x4350)*(x4352)))+(((IkReal(-1.00000000000000))*(sj5)*(x4354)*(x4363)))+(((IkReal(-1.00000000000000))*(sj5)*(x4354)*(x4357)))+(((IkReal(-1.00000000000000))*(x4367)))+(((x4350)*(x4351)))); +evalcond[3]=((((cj0)*(x4358)))+(((IkReal(-1.00000000000000))*(x4349)*(x4359)))+(((IkReal(-1.00000000000000))*(sj5)*(x4352)*(x4354)))+(((IkReal(-1.00000000000000))*(sj5)*(x4351)*(x4354)))+(((IkReal(-1.00000000000000))*(x4350)*(x4357)))+(((sj0)*(x4355)))+(((IkReal(-1.00000000000000))*(x4350)*(x4363)))); +evalcond[4]=((((r00)*(sj0)*(x4360)))+(((IkReal(-1.00000000000000))*(r01)*(x4356)*(x4364)))+(((sj0)*(x4352)*(x4353)))+(((sj0)*(x4351)*(x4353)))+(((IkReal(-1.00000000000000))*(x4353)*(x4354)*(x4363)))+(((IkReal(-1.00000000000000))*(x4353)*(x4354)*(x4357)))+(x4349)+(((IkReal(-1.00000000000000))*(r10)*(x4354)*(x4360)))+(((x4350)*(x4365)))+(((r11)*(x4368)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4354)))); +evalcond[5]=((((r01)*(x4368)))+(((IkReal(-1.00000000000000))*(sj5)*(x4354)*(x4365)))+(((IkReal(-1.00000000000000))*(x4353)*(x4356)*(x4357)))+(((r11)*(sj0)*(x4364)))+(((IkReal(-1.00000000000000))*(x4350)*(x4366)))+(((IkReal(-1.00000000000000))*(x4353)*(x4356)*(x4363)))+(((IkReal(-1.00000000000000))*(x4351)*(x4353)*(x4354)))+(((IkReal(-1.00000000000000))*(x4348)*(x4359)))+(((IkReal(-1.00000000000000))*(r10)*(x4356)*(x4360)))+(((IkReal(-1.00000000000000))*(r00)*(x4354)*(x4360)))+(((IkReal(-1.00000000000000))*(x4352)*(x4353)*(x4354)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4369=((cj1)*(sj6)); +IkReal x4370=((r01)*(sj0)); +IkReal x4371=((cj0)*(r11)); +IkReal x4372=((cj1)*(cj6)); +IkReal x4373=((cj0)*(r10)); +IkReal x4374=((IkReal(1.00000000000000))*(sj0)); +IkReal x4375=((cj1)*(sj5)); +if( IKabs(((gconst13)*(((((IkReal(-1.00000000000000))*(r00)*(x4372)*(x4374)))+(((x4372)*(x4373)))+(((x4369)*(x4370)))+(((IkReal(-1.00000000000000))*(x4369)*(x4371))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst13)*(((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4369)*(x4374)))+(((IkReal(-1.00000000000000))*(r02)*(x4374)*(x4375)))+(((cj0)*(r12)*(x4375)))+(((cj5)*(x4369)*(x4373)))+(((IkReal(-1.00000000000000))*(cj5)*(x4370)*(x4372)))+(((cj5)*(x4371)*(x4372))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst13)*(((((IkReal(-1.00000000000000))*(r00)*(x4372)*(x4374)))+(((x4372)*(x4373)))+(((x4369)*(x4370)))+(((IkReal(-1.00000000000000))*(x4369)*(x4371)))))), ((gconst13)*(((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4369)*(x4374)))+(((IkReal(-1.00000000000000))*(r02)*(x4374)*(x4375)))+(((cj0)*(r12)*(x4375)))+(((cj5)*(x4369)*(x4373)))+(((IkReal(-1.00000000000000))*(cj5)*(x4370)*(x4372)))+(((cj5)*(x4371)*(x4372))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x4376=IKsin(j4); +IkReal x4377=IKcos(j4); +IkReal x4378=((r00)*(sj6)); +IkReal x4379=((cj6)*(r01)); +IkReal x4380=((IkReal(1.00000000000000))*(cj0)); +IkReal x4381=((IkReal(1.00000000000000))*(sj0)); +IkReal x4382=((r10)*(sj6)); +IkReal x4383=((sj5)*(x4376)); +IkReal x4384=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x4385=((cj5)*(x4376)); +IkReal x4386=((cj6)*(x4377)); +IkReal x4387=((sj0)*(x4385)); +IkReal x4388=((r01)*(sj6)*(x4377)); +IkReal x4389=((r11)*(sj6)*(x4377)); +evalcond[0]=((((r22)*(x4383)))+(((r20)*(sj6)*(x4385)))+(((r21)*(sj6)*(x4377)))+(((IkReal(-1.00000000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(r20)*(x4386)))+(((cj6)*(r21)*(x4385)))); +evalcond[1]=((((x4378)*(x4387)))+(((IkReal(-1.00000000000000))*(r12)*(x4380)*(x4383)))+(((cj0)*(r10)*(x4386)))+(((IkReal(-1.00000000000000))*(r00)*(x4381)*(x4386)))+(((r02)*(sj0)*(x4383)))+(((IkReal(-1.00000000000000))*(x4380)*(x4382)*(x4385)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x4380)*(x4385)))+(((IkReal(-1.00000000000000))*(x4380)*(x4389)))+(((x4379)*(x4387)))+(((sj0)*(x4388)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4379)*(x4380)*(x4385)))+(((cj0)*(r00)*(x4386)))+(((IkReal(-1.00000000000000))*(r12)*(x4381)*(x4383)))+(sj1)+(((IkReal(-1.00000000000000))*(x4380)*(x4388)))+(((r10)*(sj0)*(x4386)))+(((IkReal(-1.00000000000000))*(x4381)*(x4389)))+(((IkReal(-1.00000000000000))*(r02)*(x4380)*(x4383)))+(((IkReal(-1.00000000000000))*(x4381)*(x4382)*(x4385)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x4381)*(x4385)))+(((IkReal(-1.00000000000000))*(x4378)*(x4380)*(x4385)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst17; +gconst17=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x4390=((IkReal(1.00000000000000))*(cj0)); +IkReal x4391=((cj4)*(sj6)); +IkReal x4392=((sj0)*(sj6)); +IkReal x4393=((cj5)*(sj4)); +IkReal x4394=((IkReal(0.374290000000000))*(sj5)); +IkReal x4395=((sj4)*(sj5)); +IkReal x4396=((cj0)*(cj6)); +IkReal x4397=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4398=((cj4)*(sj5)); +IkReal x4399=((cj5)*(sj0)); +IkReal x4400=((IkReal(0.374290000000000))*(r02)); +IkReal x4401=((r20)*(sj6)); +IkReal x4402=((cj6)*(r21)); +IkReal x4403=((IkReal(1.00000000000000))*(sj0)); +IkReal x4404=((cj0)*(sj6)); +IkReal x4405=((cj4)*(cj6)); +IkReal x4406=((IkReal(0.374290000000000))*(r12)); +IkReal x4407=((cj0)*(cj5)); +IkReal x4408=((cj6)*(sj5)); +IkReal x4409=((cj6)*(r01)); +IkReal x4410=((r00)*(sj6)); +IkReal x4411=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4412=((cj6)*(r11)); +IkReal x4413=((IkReal(1.00000000000000))*(r10)); +IkReal x4414=((r02)*(sj0)); +IkReal x4415=((cj6)*(sj4)); +IkReal x4416=((r12)*(x4403)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x4405)))+(((x4393)*(x4402)))+(((x4393)*(x4401)))+(((r21)*(x4391)))+(((r22)*(x4395)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(r22)*(x4411)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4397)*(x4402)))+(((IkReal(-1.00000000000000))*(x4397)*(x4401)))+(((x4394)*(x4401)))+(pz)+(((x4394)*(x4402)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x4403)*(x4408)))+(((r12)*(x4399)))+(((IkReal(-1.00000000000000))*(r01)*(x4390)*(x4408)))+(((IkReal(-1.00000000000000))*(sj5)*(x4392)*(x4413)))+(((IkReal(-1.00000000000000))*(sj5)*(x4390)*(x4410)))+(((r02)*(x4407)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r11)*(x4390)*(x4391)))+(((r01)*(sj0)*(x4391)))+(((IkReal(-1.00000000000000))*(r00)*(x4403)*(x4405)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x4390)*(x4393)))+(((IkReal(-1.00000000000000))*(r12)*(x4390)*(x4395)))+(((x4395)*(x4414)))+(((IkReal(-1.00000000000000))*(x4390)*(x4393)*(x4412)))+(((r00)*(x4392)*(x4393)))+(((sj0)*(x4393)*(x4409)))+(((cj4)*(r10)*(x4396)))); +evalcond[5]=((IkReal(1.00000000000000))+(((r10)*(sj0)*(x4405)))+(((IkReal(-1.00000000000000))*(x4390)*(x4393)*(x4410)))+(((IkReal(-1.00000000000000))*(x4393)*(x4403)*(x4412)))+(((IkReal(-1.00000000000000))*(r11)*(x4391)*(x4403)))+(((cj4)*(r00)*(x4396)))+(((IkReal(-1.00000000000000))*(x4390)*(x4393)*(x4409)))+(((IkReal(-1.00000000000000))*(r01)*(x4390)*(x4391)))+(((IkReal(-1.00000000000000))*(x4395)*(x4416)))+(((IkReal(-1.00000000000000))*(r02)*(x4390)*(x4395)))+(((IkReal(-1.00000000000000))*(x4392)*(x4393)*(x4413)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x4411)*(x4414)))+(((IkReal(-1.00000000000000))*(r00)*(x4392)*(x4397)))+(((IkReal(-1.00000000000000))*(x4399)*(x4400)))+(((r11)*(x4396)*(x4397)))+(((IkReal(-1.00000000000000))*(sj0)*(x4397)*(x4409)))+(((IkReal(-1.00000000000000))*(py)*(x4390)))+(((r10)*(x4397)*(x4404)))+(((x4406)*(x4407)))+(((cj0)*(r12)*(x4411)))+(((IkReal(-1.00000000000000))*(r11)*(x4394)*(x4396)))+(((IkReal(-1.00000000000000))*(r10)*(x4394)*(x4404)))+(((px)*(sj0)))+(((r00)*(x4392)*(x4394)))+(((sj0)*(x4394)*(x4409)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4390)*(x4391)))+(((IkReal(-1.00000000000000))*(x4398)*(x4416)))+(((r01)*(sj4)*(x4404)))+(((IkReal(-1.00000000000000))*(r02)*(x4390)*(x4398)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x4390)*(x4405)))+(((IkReal(-1.00000000000000))*(r00)*(x4390)*(x4415)))+(((IkReal(-1.00000000000000))*(r10)*(x4403)*(x4415)))+(((IkReal(-1.00000000000000))*(r11)*(x4399)*(x4405)))+(((r11)*(sj4)*(x4392)))+(((IkReal(-1.00000000000000))*(x4391)*(x4399)*(x4413)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x4390)))+(((r01)*(x4396)*(x4397)))+(((r12)*(sj0)*(x4411)))+(((x4399)*(x4406)))+(((IkReal(-1.00000000000000))*(r01)*(x4394)*(x4396)))+(((IkReal(-1.00000000000000))*(r00)*(x4394)*(x4404)))+(((IkReal(-1.00000000000000))*(sj0)*(x4394)*(x4412)))+(((IkReal(-1.00000000000000))*(r10)*(x4392)*(x4394)))+(((cj0)*(r02)*(x4411)))+(((r10)*(x4392)*(x4397)))+(((IkReal(-1.00000000000000))*(py)*(x4403)))+(((r00)*(x4397)*(x4404)))+(((sj0)*(x4397)*(x4412)))+(((x4400)*(x4407)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4417=((r20)*(sj6)); +IkReal x4418=((cj4)*(cj5)); +IkReal x4419=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x4417)*(x4418)))+(((x4418)*(x4419))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x4419)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4417))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x4417)*(x4418)))+(((x4418)*(x4419)))))+IKsqr(((((sj5)*(x4419)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4417)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x4417)*(x4418)))+(((x4418)*(x4419)))), ((((sj5)*(x4419)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4417))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4420=IKcos(j3); +IkReal x4421=((sj0)*(sj5)); +IkReal x4422=((r00)*(sj6)); +IkReal x4423=((cj6)*(r01)); +IkReal x4424=((cj5)*(sj0)); +IkReal x4425=((cj0)*(cj5)); +IkReal x4426=((cj6)*(sj4)); +IkReal x4427=((sj4)*(sj6)); +IkReal x4428=((cj0)*(r11)); +IkReal x4429=((cj4)*(cj6)); +IkReal x4430=((cj4)*(sj6)); +IkReal x4431=((IkReal(1.00000000000000))*(cj0)); +IkReal x4432=((cj4)*(sj5)); +IkReal x4433=((sj5)*(sj6)); +IkReal x4434=((cj6)*(sj5)); +IkReal x4435=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r21)*(x4434)))+(((r20)*(x4433)))+(((IkReal(-1.00000000000000))*(x4420)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x4427)))+(((r20)*(x4426)))+(((r22)*(x4432)))+(((cj5)*(r20)*(x4430)))+(((IkReal(-1.00000000000000))*(x4435)))+(((cj5)*(r21)*(x4429)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x4424)))+(((r12)*(x4425)))+(((IkReal(-1.00000000000000))*(x4428)*(x4434)))+(((x4421)*(x4422)))+(((x4421)*(x4423)))+(((IkReal(-1.00000000000000))*(r10)*(x4431)*(x4433)))+(((IkReal(-1.00000000000000))*(x4435)))); +evalcond[3]=((((cj4)*(r02)*(x4421)))+(((cj4)*(x4423)*(x4424)))+(((IkReal(-1.00000000000000))*(r11)*(x4425)*(x4429)))+(((IkReal(-1.00000000000000))*(r12)*(x4431)*(x4432)))+(x4420)+(((x4427)*(x4428)))+(((cj4)*(x4422)*(x4424)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x4427)))+(((IkReal(-1.00000000000000))*(r10)*(x4425)*(x4430)))+(((r00)*(sj0)*(x4426)))+(((IkReal(-1.00000000000000))*(r10)*(x4426)*(x4431)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4436=((IkReal(1.00000000000000))*(cj0)); +IkReal x4437=((cj4)*(sj6)); +IkReal x4438=((sj0)*(sj6)); +IkReal x4439=((cj5)*(sj4)); +IkReal x4440=((IkReal(0.374290000000000))*(sj5)); +IkReal x4441=((sj4)*(sj5)); +IkReal x4442=((cj0)*(cj6)); +IkReal x4443=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4444=((cj4)*(sj5)); +IkReal x4445=((cj5)*(sj0)); +IkReal x4446=((IkReal(0.374290000000000))*(r02)); +IkReal x4447=((r20)*(sj6)); +IkReal x4448=((cj6)*(r21)); +IkReal x4449=((IkReal(1.00000000000000))*(sj0)); +IkReal x4450=((cj0)*(sj6)); +IkReal x4451=((cj4)*(cj6)); +IkReal x4452=((IkReal(0.374290000000000))*(r12)); +IkReal x4453=((cj0)*(cj5)); +IkReal x4454=((cj6)*(sj5)); +IkReal x4455=((cj6)*(r01)); +IkReal x4456=((r00)*(sj6)); +IkReal x4457=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4458=((cj6)*(r11)); +IkReal x4459=((IkReal(1.00000000000000))*(r10)); +IkReal x4460=((r02)*(sj0)); +IkReal x4461=((cj6)*(sj4)); +IkReal x4462=((r12)*(x4449)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x4437)))+(((x4439)*(x4448)))+(((x4439)*(x4447)))+(((r22)*(x4441)))+(((IkReal(-1.00000000000000))*(r20)*(x4451)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x4443)*(x4447)))+(((x4440)*(x4447)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4443)*(x4448)))+(((IkReal(-1.00000000000000))*(r22)*(x4457)))+(pz)+(((x4440)*(x4448)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x4436)*(x4456)))+(((IkReal(-1.00000000000000))*(r11)*(x4449)*(x4454)))+(((r12)*(x4445)))+(((IkReal(-1.00000000000000))*(r01)*(x4436)*(x4454)))+(((r02)*(x4453)))+(((IkReal(-1.00000000000000))*(sj5)*(x4438)*(x4459)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(sj6)*(x4436)*(x4439)))+(((IkReal(-1.00000000000000))*(r11)*(x4436)*(x4437)))+(((IkReal(-1.00000000000000))*(r00)*(x4449)*(x4451)))+(((IkReal(-1.00000000000000))*(x4436)*(x4439)*(x4458)))+(((sj0)*(x4439)*(x4455)))+(((IkReal(-1.00000000000000))*(r12)*(x4436)*(x4441)))+(((r01)*(sj0)*(x4437)))+(((x4441)*(x4460)))+(((cj4)*(r10)*(x4442)))+(((r00)*(x4438)*(x4439)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((r10)*(sj0)*(x4451)))+(((cj4)*(r00)*(x4442)))+(((IkReal(-1.00000000000000))*(x4439)*(x4449)*(x4458)))+(((IkReal(-1.00000000000000))*(r02)*(x4436)*(x4441)))+(((IkReal(-1.00000000000000))*(x4441)*(x4462)))+(((IkReal(-1.00000000000000))*(x4436)*(x4439)*(x4455)))+(((IkReal(-1.00000000000000))*(x4436)*(x4439)*(x4456)))+(((IkReal(-1.00000000000000))*(r11)*(x4437)*(x4449)))+(((IkReal(-1.00000000000000))*(x4438)*(x4439)*(x4459)))+(((IkReal(-1.00000000000000))*(r01)*(x4436)*(x4437)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r10)*(x4443)*(x4450)))+(((IkReal(-1.00000000000000))*(r11)*(x4440)*(x4442)))+(((x4452)*(x4453)))+(((cj0)*(r12)*(x4457)))+(((r00)*(x4438)*(x4440)))+(((IkReal(-1.00000000000000))*(x4445)*(x4446)))+(((r11)*(x4442)*(x4443)))+(((IkReal(-1.00000000000000))*(sj0)*(x4443)*(x4455)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x4436)))+(((IkReal(-1.00000000000000))*(r00)*(x4438)*(x4443)))+(((IkReal(-1.00000000000000))*(x4457)*(x4460)))+(((IkReal(-1.00000000000000))*(r10)*(x4440)*(x4450)))+(((sj0)*(x4440)*(x4455)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x4437)*(x4445)*(x4459)))+(((r11)*(sj4)*(x4438)))+(((IkReal(-1.00000000000000))*(r11)*(x4445)*(x4451)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4436)*(x4437)))+(((IkReal(-1.00000000000000))*(x4444)*(x4462)))+(((r01)*(sj4)*(x4450)))+(((IkReal(-1.00000000000000))*(r00)*(x4436)*(x4461)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x4436)*(x4451)))+(((IkReal(-1.00000000000000))*(r02)*(x4436)*(x4444)))+(((IkReal(-1.00000000000000))*(r10)*(x4449)*(x4461)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x4440)*(x4450)))+(((r01)*(x4442)*(x4443)))+(((r10)*(x4438)*(x4443)))+(((x4445)*(x4452)))+(((r12)*(sj0)*(x4457)))+(((IkReal(-1.00000000000000))*(px)*(x4436)))+(((IkReal(-1.00000000000000))*(py)*(x4449)))+(((cj0)*(r02)*(x4457)))+(((IkReal(-1.00000000000000))*(r01)*(x4440)*(x4442)))+(((IkReal(-1.00000000000000))*(r10)*(x4438)*(x4440)))+(((r00)*(x4443)*(x4450)))+(((sj0)*(x4443)*(x4458)))+(((x4446)*(x4453)))+(((IkReal(-1.00000000000000))*(sj0)*(x4440)*(x4458)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4463=((IkReal(1.00000000000000))*(sj5)); +IkReal x4464=((cj6)*(r21)); +IkReal x4465=((r20)*(sj6)); +IkReal x4466=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x4464)*(x4466)))+(((IkReal(-1.00000000000000))*(x4465)*(x4466)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x4463)*(x4465)))+(((IkReal(-1.00000000000000))*(x4463)*(x4464)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x4464)*(x4466)))+(((IkReal(-1.00000000000000))*(x4465)*(x4466)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x4463)*(x4465)))+(((IkReal(-1.00000000000000))*(x4463)*(x4464)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x4464)*(x4466)))+(((IkReal(-1.00000000000000))*(x4465)*(x4466)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x4463)*(x4465)))+(((IkReal(-1.00000000000000))*(x4463)*(x4464)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4467=IKsin(j3); +IkReal x4468=IKcos(j3); +IkReal x4469=((sj0)*(sj5)); +IkReal x4470=((r00)*(sj6)); +IkReal x4471=((cj6)*(r01)); +IkReal x4472=((cj5)*(sj0)); +IkReal x4473=((cj0)*(cj5)); +IkReal x4474=((cj6)*(sj4)); +IkReal x4475=((sj4)*(sj6)); +IkReal x4476=((cj0)*(r11)); +IkReal x4477=((cj4)*(cj6)); +IkReal x4478=((cj4)*(sj6)); +IkReal x4479=((IkReal(1.00000000000000))*(cj0)); +IkReal x4480=((cj4)*(sj5)); +IkReal x4481=((sj5)*(sj6)); +IkReal x4482=((cj6)*(sj5)); +evalcond[0]=((x4468)+(((r21)*(x4482)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x4481)))); +evalcond[1]=((x4467)+(((r22)*(x4480)))+(((cj5)*(r20)*(x4478)))+(((cj5)*(r21)*(x4477)))+(((IkReal(-1.00000000000000))*(r21)*(x4475)))+(((r20)*(x4474)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x4479)*(x4481)))+(((r12)*(x4473)))+(((x4469)*(x4471)))+(((IkReal(-1.00000000000000))*(x4476)*(x4482)))+(((x4469)*(x4470)))+(((IkReal(-1.00000000000000))*(r02)*(x4472)))+(((IkReal(-1.00000000000000))*(x4467)))); +evalcond[3]=((x4468)+(((r00)*(sj0)*(x4474)))+(((IkReal(-1.00000000000000))*(r10)*(x4474)*(x4479)))+(((cj4)*(x4471)*(x4472)))+(((cj4)*(r02)*(x4469)))+(((x4475)*(x4476)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x4475)))+(((IkReal(-1.00000000000000))*(r11)*(x4473)*(x4477)))+(((IkReal(-1.00000000000000))*(r10)*(x4473)*(x4478)))+(((IkReal(-1.00000000000000))*(r12)*(x4479)*(x4480)))+(((cj4)*(x4470)*(x4472)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4483=((IkReal(1.00000000000000))*(cj0)); +IkReal x4484=((cj4)*(sj6)); +IkReal x4485=((sj0)*(sj4)); +IkReal x4486=((cj5)*(sj6)); +IkReal x4487=((sj4)*(sj5)); +IkReal x4488=((r12)*(sj5)); +IkReal x4489=((IkReal(0.374290000000000))*(cj5)); +IkReal x4490=((r02)*(sj0)); +IkReal x4491=((r20)*(sj4)); +IkReal x4492=((IkReal(1.00000000000000))*(sj0)); +IkReal x4493=((IkReal(1.00000000000000))*(cj5)); +IkReal x4494=((cj0)*(r10)); +IkReal x4495=((cj4)*(cj6)); +IkReal x4496=((r00)*(sj0)); +IkReal x4497=((cj6)*(r21)); +IkReal x4498=((IkReal(0.374290000000000))*(sj5)); +IkReal x4499=((cj0)*(r00)); +IkReal x4500=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4501=((cj0)*(r02)); +IkReal x4502=((cj5)*(sj4)); +IkReal x4503=((cj6)*(r01)); +IkReal x4504=((cj6)*(r11)); +IkReal x4505=((r01)*(sj0)); +IkReal x4506=((r10)*(sj0)); +IkReal x4507=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x4508=((sj6)*(x4498)); +IkReal x4509=((cj0)*(cj6)*(x4498)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x4497)))+(((IkReal(-1.00000000000000))*(r22)*(x4493)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x4495)))+(((x4486)*(x4491)))+(((r22)*(x4487)))+(((r21)*(x4484)))+(((x4497)*(x4502)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x4489)))+(((IkReal(-1.00000000000000))*(r22)*(x4500)))+(((IkReal(-0.0100000000000000))*(cj5)*(x4497)))+(((IkReal(-0.0100000000000000))*(r20)*(x4486)))+(pz)+(((r20)*(x4508)))+(((x4497)*(x4498)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x4491)))+(((cj5)*(r20)*(x4484)))+(((cj5)*(r21)*(x4495)))); +evalcond[5]=((((x4494)*(x4495)))+(((x4484)*(x4505)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x4483)*(x4486)))+(((r02)*(sj5)*(x4485)))+(((r00)*(x4485)*(x4486)))+(((IkReal(-1.00000000000000))*(r12)*(x4483)*(x4487)))+(((IkReal(-1.00000000000000))*(r00)*(x4492)*(x4495)))+(((IkReal(-1.00000000000000))*(r11)*(x4483)*(x4484)))+(((IkReal(-1.00000000000000))*(x4483)*(x4502)*(x4504)))+(((cj5)*(x4485)*(x4503)))); +evalcond[6]=((((x4495)*(x4506)))+(((x4495)*(x4499)))+(((IkReal(-1.00000000000000))*(x4483)*(x4502)*(x4503)))+(((IkReal(-1.00000000000000))*(r11)*(x4484)*(x4492)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x4483)*(x4486)))+(((IkReal(-1.00000000000000))*(r02)*(x4483)*(x4487)))+(((IkReal(-1.00000000000000))*(x4485)*(x4493)*(x4504)))+(((IkReal(-1.00000000000000))*(r10)*(x4485)*(x4486)))+(((IkReal(-1.00000000000000))*(x4485)*(x4488)))+(((IkReal(-1.00000000000000))*(r01)*(x4483)*(x4484)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-0.0100000000000000))*(x4486)*(x4496)))+(((IkReal(-1.00000000000000))*(x4490)*(x4500)))+(((IkReal(-1.00000000000000))*(py)*(x4483)))+(((IkReal(-1.00000000000000))*(cj0)*(x4498)*(x4504)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x4503)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4504)))+(((sj0)*(x4498)*(x4503)))+(((x4496)*(x4508)))+(((IkReal(0.0100000000000000))*(cj0)*(x4488)))+(((IkReal(0.0100000000000000))*(x4486)*(x4494)))+(((cj0)*(r12)*(x4489)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x4489)*(x4490)))+(((IkReal(-1.00000000000000))*(x4494)*(x4508)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4503)))+(((x4500)*(x4501)))+(((x4489)*(x4501)))+(((r12)*(sj0)*(x4489)))+(((IkReal(0.0100000000000000))*(sj0)*(x4488)))+(((IkReal(-1.00000000000000))*(sj0)*(x4498)*(x4504)))+(((IkReal(-1.00000000000000))*(py)*(x4492)))+(((IkReal(-1.00000000000000))*(x4506)*(x4508)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x4504)))+(((IkReal(0.0100000000000000))*(x4486)*(x4506)))+(((IkReal(-1.00000000000000))*(x4499)*(x4508)))+(((IkReal(0.0100000000000000))*(x4486)*(x4499)))+(((IkReal(-1.00000000000000))*(px)*(x4483)))+(((IkReal(-1.00000000000000))*(cj0)*(x4498)*(x4503)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4510=((cj0)*(cj5)); +IkReal x4511=((IkReal(1.00000000000000))*(cj0)); +IkReal x4512=((cj6)*(r11)); +IkReal x4513=((r10)*(sj6)); +IkReal x4514=((cj5)*(sj0)); +IkReal x4515=((r00)*(sj5)*(sj6)); +IkReal x4516=((cj6)*(r01)*(sj5)); +IkReal x4517=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4512)))+(((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4513)))+(((r12)*(x4510)))+(((IkReal(-1.00000000000000))*(r02)*(x4514)))+(((sj0)*(x4515)))+(((sj0)*(x4516))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r02)*(x4510)))+(((r12)*(x4514)))+(((IkReal(-1.00000000000000))*(x4513)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4516)))+(((IkReal(-1.00000000000000))*(x4512)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4515))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4512)))+(((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4513)))+(((r12)*(x4510)))+(((IkReal(-1.00000000000000))*(r02)*(x4514)))+(((sj0)*(x4515)))+(((sj0)*(x4516)))))+IKsqr(((((r02)*(x4510)))+(((r12)*(x4514)))+(((IkReal(-1.00000000000000))*(x4513)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4516)))+(((IkReal(-1.00000000000000))*(x4512)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4515)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4512)))+(((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4513)))+(((r12)*(x4510)))+(((IkReal(-1.00000000000000))*(r02)*(x4514)))+(((sj0)*(x4515)))+(((sj0)*(x4516)))), ((((r02)*(x4510)))+(((r12)*(x4514)))+(((IkReal(-1.00000000000000))*(x4513)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4516)))+(((IkReal(-1.00000000000000))*(x4512)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4515))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4518=IKcos(j3); +IkReal x4519=((sj0)*(sj5)); +IkReal x4520=((r00)*(sj6)); +IkReal x4521=((cj6)*(sj0)); +IkReal x4522=((IkReal(1.00000000000000))*(cj4)); +IkReal x4523=((r00)*(sj4)); +IkReal x4524=((cj0)*(cj5)); +IkReal x4525=((cj5)*(sj0)); +IkReal x4526=((cj6)*(r11)); +IkReal x4527=((r10)*(sj6)); +IkReal x4528=((cj0)*(sj5)); +IkReal x4529=((r10)*(sj4)); +IkReal x4530=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x4531=((cj4)*(cj5)*(r01)); +IkReal x4532=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x4533=((cj0)*(sj4)*(sj6)); +IkReal x4534=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((x4519)*(x4520)))+(((IkReal(-1.00000000000000))*(x4526)*(x4528)))+(((r12)*(x4524)))+(((IkReal(-1.00000000000000))*(r02)*(x4525)))+(((cj6)*(r01)*(x4519)))+(((IkReal(-1.00000000000000))*(x4530)))+(((IkReal(-1.00000000000000))*(x4527)*(x4528)))); +evalcond[1]=((((r02)*(x4524)))+(((IkReal(-1.00000000000000))*(x4518)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4528)))+(((IkReal(-1.00000000000000))*(x4519)*(x4526)))+(((IkReal(-1.00000000000000))*(x4520)*(x4528)))+(((r12)*(x4525)))+(((IkReal(-1.00000000000000))*(x4519)*(x4527)))); +evalcond[2]=((x4518)+(((x4521)*(x4523)))+(((IkReal(-1.00000000000000))*(x4522)*(x4524)*(x4527)))+(((IkReal(-1.00000000000000))*(r12)*(x4522)*(x4528)))+(((IkReal(-1.00000000000000))*(x4522)*(x4524)*(x4526)))+(((IkReal(-1.00000000000000))*(r01)*(x4534)))+(((IkReal(-1.00000000000000))*(x4529)*(x4532)))+(((cj4)*(r02)*(x4519)))+(((r11)*(x4533)))+(((x4521)*(x4531)))+(((cj4)*(x4520)*(x4525)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4522)*(x4524)))+(((IkReal(-1.00000000000000))*(x4521)*(x4529)))+(((IkReal(-1.00000000000000))*(x4522)*(x4525)*(x4527)))+(((IkReal(-1.00000000000000))*(x4520)*(x4522)*(x4524)))+(((IkReal(-1.00000000000000))*(x4523)*(x4532)))+(((r11)*(x4534)))+(((r01)*(x4533)))+(((IkReal(-1.00000000000000))*(r12)*(x4519)*(x4522)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x4521)*(x4522)))+(((IkReal(-1.00000000000000))*(x4530)))+(((IkReal(-1.00000000000000))*(r02)*(x4522)*(x4528)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4535=((IkReal(1.00000000000000))*(cj0)); +IkReal x4536=((cj4)*(sj6)); +IkReal x4537=((sj0)*(sj4)); +IkReal x4538=((cj5)*(sj6)); +IkReal x4539=((sj4)*(sj5)); +IkReal x4540=((r12)*(sj5)); +IkReal x4541=((IkReal(0.374290000000000))*(cj5)); +IkReal x4542=((r02)*(sj0)); +IkReal x4543=((r20)*(sj4)); +IkReal x4544=((IkReal(1.00000000000000))*(sj0)); +IkReal x4545=((IkReal(1.00000000000000))*(cj5)); +IkReal x4546=((cj0)*(r10)); +IkReal x4547=((cj4)*(cj6)); +IkReal x4548=((r00)*(sj0)); +IkReal x4549=((cj6)*(r21)); +IkReal x4550=((IkReal(0.374290000000000))*(sj5)); +IkReal x4551=((cj0)*(r00)); +IkReal x4552=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4553=((cj0)*(r02)); +IkReal x4554=((cj5)*(sj4)); +IkReal x4555=((cj6)*(r01)); +IkReal x4556=((cj6)*(r11)); +IkReal x4557=((r01)*(sj0)); +IkReal x4558=((r10)*(sj0)); +IkReal x4559=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x4560=((sj6)*(x4550)); +IkReal x4561=((cj0)*(cj6)*(x4550)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x4545)))+(((sj5)*(x4549)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x4547)))+(((r21)*(x4536)))+(((x4538)*(x4543)))+(((r22)*(x4539)))+(((x4549)*(x4554)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x4541)))+(((IkReal(-0.0100000000000000))*(r20)*(x4538)))+(((x4549)*(x4550)))+(pz)+(((r20)*(x4560)))+(((IkReal(-1.00000000000000))*(r22)*(x4552)))+(((IkReal(-0.0100000000000000))*(cj5)*(x4549)))); +evalcond[4]=((((cj5)*(r21)*(x4547)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x4536)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x4543)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x4535)*(x4538)))+(((cj5)*(x4537)*(x4555)))+(((IkReal(-1.00000000000000))*(r12)*(x4535)*(x4539)))+(((IkReal(-1.00000000000000))*(x4535)*(x4554)*(x4556)))+(((r00)*(x4537)*(x4538)))+(((r02)*(sj5)*(x4537)))+(((IkReal(-1.00000000000000))*(r00)*(x4544)*(x4547)))+(((IkReal(-1.00000000000000))*(r11)*(x4535)*(x4536)))+(((x4536)*(x4557)))+(((x4546)*(x4547)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r10)*(x4537)*(x4538)))+(((IkReal(-1.00000000000000))*(x4537)*(x4545)*(x4556)))+(((x4547)*(x4558)))+(((x4547)*(x4551)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x4535)*(x4538)))+(((IkReal(-1.00000000000000))*(x4537)*(x4540)))+(((IkReal(-1.00000000000000))*(r01)*(x4535)*(x4536)))+(((IkReal(-1.00000000000000))*(r02)*(x4535)*(x4539)))+(((IkReal(-1.00000000000000))*(r11)*(x4536)*(x4544)))+(((IkReal(-1.00000000000000))*(x4535)*(x4554)*(x4555)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x4550)*(x4556)))+(((IkReal(0.0100000000000000))*(cj0)*(x4540)))+(((IkReal(-1.00000000000000))*(py)*(x4535)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x4555)))+(((IkReal(-1.00000000000000))*(x4546)*(x4560)))+(((IkReal(-0.0100000000000000))*(x4538)*(x4548)))+(((x4548)*(x4560)))+(((IkReal(-1.00000000000000))*(x4542)*(x4552)))+(((IkReal(0.0100000000000000))*(x4538)*(x4546)))+(((cj0)*(r12)*(x4541)))+(((px)*(sj0)))+(((sj0)*(x4550)*(x4555)))+(((IkReal(-1.00000000000000))*(x4541)*(x4542)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4556)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x4552)*(x4553)))+(((IkReal(-1.00000000000000))*(x4558)*(x4560)))+(((IkReal(-1.00000000000000))*(py)*(x4544)))+(((x4541)*(x4553)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4555)))+(((IkReal(-1.00000000000000))*(px)*(x4535)))+(((IkReal(-1.00000000000000))*(sj0)*(x4550)*(x4556)))+(((IkReal(-1.00000000000000))*(cj0)*(x4550)*(x4555)))+(((r12)*(sj0)*(x4541)))+(((IkReal(0.0100000000000000))*(x4538)*(x4551)))+(((IkReal(-1.00000000000000))*(x4551)*(x4560)))+(((IkReal(0.0100000000000000))*(sj0)*(x4540)))+(((IkReal(0.0100000000000000))*(x4538)*(x4558)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x4556)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4562=((sj0)*(sj5)); +IkReal x4563=((r00)*(sj6)); +IkReal x4564=((IkReal(1.00000000000000))*(cj5)); +IkReal x4565=((cj6)*(r11)); +IkReal x4566=((cj6)*(r01)); +IkReal x4567=((r10)*(sj6)); +IkReal x4568=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x4565)*(x4568)))+(((x4562)*(x4563)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4564)))+(((IkReal(-1.00000000000000))*(x4567)*(x4568)))+(((cj0)*(cj5)*(r12)))+(((x4562)*(x4566))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x4563)*(x4568)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4564)))+(((x4562)*(x4567)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4564)))+(((x4562)*(x4565)))+(((x4566)*(x4568))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x4565)*(x4568)))+(((x4562)*(x4563)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4564)))+(((IkReal(-1.00000000000000))*(x4567)*(x4568)))+(((cj0)*(cj5)*(r12)))+(((x4562)*(x4566)))))+IKsqr(((((x4563)*(x4568)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4564)))+(((x4562)*(x4567)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4564)))+(((x4562)*(x4565)))+(((x4566)*(x4568)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x4565)*(x4568)))+(((x4562)*(x4563)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4564)))+(((IkReal(-1.00000000000000))*(x4567)*(x4568)))+(((cj0)*(cj5)*(r12)))+(((x4562)*(x4566)))), ((((x4563)*(x4568)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4564)))+(((x4562)*(x4567)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4564)))+(((x4562)*(x4565)))+(((x4566)*(x4568))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4569=IKcos(j3); +IkReal x4570=IKsin(j3); +IkReal x4571=((sj0)*(sj5)); +IkReal x4572=((r00)*(sj6)); +IkReal x4573=((cj6)*(sj0)); +IkReal x4574=((IkReal(1.00000000000000))*(cj4)); +IkReal x4575=((r00)*(sj4)); +IkReal x4576=((cj0)*(cj5)); +IkReal x4577=((cj5)*(sj0)); +IkReal x4578=((cj6)*(r11)); +IkReal x4579=((r10)*(sj6)); +IkReal x4580=((cj0)*(sj5)); +IkReal x4581=((r10)*(sj4)); +IkReal x4582=((cj4)*(cj5)*(r01)); +IkReal x4583=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x4584=((cj0)*(sj4)*(sj6)); +IkReal x4585=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((r12)*(x4576)))+(((cj6)*(r01)*(x4571)))+(((IkReal(-1.00000000000000))*(x4579)*(x4580)))+(((x4571)*(x4572)))+(((IkReal(-1.00000000000000))*(x4578)*(x4580)))+(((IkReal(-1.00000000000000))*(x4570)))+(((IkReal(-1.00000000000000))*(r02)*(x4577)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4571)*(x4579)))+(((IkReal(-1.00000000000000))*(x4571)*(x4578)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4580)))+(((r12)*(x4577)))+(((IkReal(-1.00000000000000))*(x4572)*(x4580)))+(x4569)+(((r02)*(x4576)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x4585)))+(((IkReal(-1.00000000000000))*(x4574)*(x4576)*(x4579)))+(((IkReal(-1.00000000000000))*(x4574)*(x4576)*(x4578)))+(((cj4)*(x4572)*(x4577)))+(((r11)*(x4584)))+(((IkReal(-1.00000000000000))*(x4581)*(x4583)))+(((cj4)*(r02)*(x4571)))+(x4569)+(((x4573)*(x4575)))+(((x4573)*(x4582)))+(((IkReal(-1.00000000000000))*(r12)*(x4574)*(x4580)))); +evalcond[3]=((x4570)+(((IkReal(-1.00000000000000))*(x4574)*(x4577)*(x4579)))+(((IkReal(-1.00000000000000))*(r02)*(x4574)*(x4580)))+(((r11)*(x4585)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4574)*(x4576)))+(((IkReal(-1.00000000000000))*(x4573)*(x4581)))+(((IkReal(-1.00000000000000))*(x4575)*(x4583)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x4573)*(x4574)))+(((r01)*(x4584)))+(((IkReal(-1.00000000000000))*(r12)*(x4571)*(x4574)))+(((IkReal(-1.00000000000000))*(x4572)*(x4574)*(x4576)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4586=((cj0)*(cj5)); +IkReal x4587=((IkReal(1.00000000000000))*(cj0)); +IkReal x4588=((cj6)*(r11)); +IkReal x4589=((r10)*(sj6)); +IkReal x4590=((cj5)*(sj0)); +IkReal x4591=((r00)*(sj5)*(sj6)); +IkReal x4592=((cj6)*(r01)*(sj5)); +IkReal x4593=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x4592)))+(((sj0)*(x4591)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4588)))+(((IkReal(-1.00000000000000))*(r02)*(x4590)))+(((r12)*(x4586)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4589))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x4587)*(x4592)))+(((IkReal(-1.00000000000000))*(x4588)*(x4593)))+(((IkReal(-1.00000000000000))*(x4589)*(x4593)))+(((IkReal(-1.00000000000000))*(x4587)*(x4591)))+(((r12)*(x4590)))+(((r02)*(x4586))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x4592)))+(((sj0)*(x4591)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4588)))+(((IkReal(-1.00000000000000))*(r02)*(x4590)))+(((r12)*(x4586)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4589)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x4587)*(x4592)))+(((IkReal(-1.00000000000000))*(x4588)*(x4593)))+(((IkReal(-1.00000000000000))*(x4589)*(x4593)))+(((IkReal(-1.00000000000000))*(x4587)*(x4591)))+(((r12)*(x4590)))+(((r02)*(x4586)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x4592)))+(((sj0)*(x4591)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4588)))+(((IkReal(-1.00000000000000))*(r02)*(x4590)))+(((r12)*(x4586)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4589)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x4587)*(x4592)))+(((IkReal(-1.00000000000000))*(x4588)*(x4593)))+(((IkReal(-1.00000000000000))*(x4589)*(x4593)))+(((IkReal(-1.00000000000000))*(x4587)*(x4591)))+(((r12)*(x4590)))+(((r02)*(x4586))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4594=IKsin(j3); +IkReal x4595=IKcos(j3); +IkReal x4596=((sj0)*(sj5)); +IkReal x4597=((r00)*(sj6)); +IkReal x4598=((cj6)*(r01)); +IkReal x4599=((cj4)*(cj5)); +IkReal x4600=((IkReal(1.00000000000000))*(cj0)); +IkReal x4601=((cj5)*(r12)); +IkReal x4602=((IkReal(1.00000000000000))*(sj0)); +IkReal x4603=((cj6)*(r11)); +IkReal x4604=((cj5)*(r02)); +IkReal x4605=((IkReal(1.00000000000000))*(cj1)); +IkReal x4606=((cj6)*(sj4)); +IkReal x4607=((cj6)*(r21)); +IkReal x4608=((r20)*(sj6)); +IkReal x4609=((r10)*(sj6)); +IkReal x4610=((sj4)*(sj6)); +IkReal x4611=((cj4)*(r02)); +IkReal x4612=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4613=((IkReal(1.00000000000000))*(x4594)); +IkReal x4614=((cj0)*(x4610)); +evalcond[0]=((((sj5)*(x4608)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x4595)))+(((sj5)*(x4607)))); +evalcond[1]=((((r20)*(x4606)))+(((cj4)*(r22)*(sj5)))+(((x4599)*(x4607)))+(((IkReal(-1.00000000000000))*(sj1)*(x4613)))+(((IkReal(-1.00000000000000))*(r21)*(x4610)))+(((x4599)*(x4608)))); +evalcond[2]=((((cj0)*(x4601)))+(((IkReal(-1.00000000000000))*(sj5)*(x4600)*(x4609)))+(((IkReal(-1.00000000000000))*(x4613)))+(((IkReal(-1.00000000000000))*(sj5)*(x4600)*(x4603)))+(((x4596)*(x4597)))+(((x4596)*(x4598)))+(((IkReal(-1.00000000000000))*(x4602)*(x4604)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x4598)*(x4600)))+(((IkReal(-1.00000000000000))*(x4595)*(x4605)))+(((sj0)*(x4601)))+(((IkReal(-1.00000000000000))*(x4596)*(x4603)))+(((cj0)*(x4604)))+(((IkReal(-1.00000000000000))*(sj5)*(x4597)*(x4600)))+(((IkReal(-1.00000000000000))*(x4596)*(x4609)))); +evalcond[4]=((x4595)+(((r11)*(x4614)))+(((sj0)*(x4598)*(x4599)))+(((sj0)*(x4597)*(x4599)))+(((IkReal(-1.00000000000000))*(x4599)*(x4600)*(x4609)))+(((x4596)*(x4611)))+(((IkReal(-1.00000000000000))*(r01)*(x4602)*(x4610)))+(((IkReal(-1.00000000000000))*(x4599)*(x4600)*(x4603)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4600)))+(((IkReal(-1.00000000000000))*(r10)*(x4600)*(x4606)))+(((r00)*(sj0)*(x4606)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x4594)*(x4605)))+(((IkReal(-1.00000000000000))*(x4599)*(x4602)*(x4603)))+(((IkReal(-1.00000000000000))*(r00)*(x4600)*(x4606)))+(((r01)*(x4614)))+(((IkReal(-1.00000000000000))*(x4597)*(x4599)*(x4600)))+(((IkReal(-1.00000000000000))*(x4599)*(x4602)*(x4609)))+(((IkReal(-1.00000000000000))*(x4598)*(x4599)*(x4600)))+(((IkReal(-1.00000000000000))*(sj5)*(x4600)*(x4611)))+(((r11)*(sj0)*(x4610)))+(((IkReal(-1.00000000000000))*(r10)*(x4602)*(x4606)))+(((IkReal(-1.00000000000000))*(x4596)*(x4612)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4615=((sj5)*(sj6)); +IkReal x4616=((cj6)*(sj5)); +IkReal x4617=((IkReal(1.00000000000000))*(cj0)); +IkReal x4618=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r01)*(sj0)*(x4616)))+(((r00)*(sj0)*(x4615)))+(((IkReal(-1.00000000000000))*(r10)*(x4615)*(x4617)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4618)))+(((IkReal(-1.00000000000000))*(r11)*(x4616)*(x4617))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x4618)))+(((r20)*(x4615)))+(((r21)*(x4616))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r01)*(sj0)*(x4616)))+(((r00)*(sj0)*(x4615)))+(((IkReal(-1.00000000000000))*(r10)*(x4615)*(x4617)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4618)))+(((IkReal(-1.00000000000000))*(r11)*(x4616)*(x4617)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x4618)))+(((r20)*(x4615)))+(((r21)*(x4616)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r01)*(sj0)*(x4616)))+(((r00)*(sj0)*(x4615)))+(((IkReal(-1.00000000000000))*(r10)*(x4615)*(x4617)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4618)))+(((IkReal(-1.00000000000000))*(r11)*(x4616)*(x4617)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x4618)))+(((r20)*(x4615)))+(((r21)*(x4616))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4619=IKsin(j3); +IkReal x4620=IKcos(j3); +IkReal x4621=((sj0)*(sj5)); +IkReal x4622=((r00)*(sj6)); +IkReal x4623=((cj6)*(r01)); +IkReal x4624=((cj4)*(cj5)); +IkReal x4625=((IkReal(1.00000000000000))*(cj0)); +IkReal x4626=((cj5)*(r12)); +IkReal x4627=((IkReal(1.00000000000000))*(sj0)); +IkReal x4628=((cj6)*(r11)); +IkReal x4629=((cj5)*(r02)); +IkReal x4630=((IkReal(1.00000000000000))*(cj1)); +IkReal x4631=((cj6)*(sj4)); +IkReal x4632=((cj6)*(r21)); +IkReal x4633=((r20)*(sj6)); +IkReal x4634=((r10)*(sj6)); +IkReal x4635=((sj4)*(sj6)); +IkReal x4636=((cj4)*(r02)); +IkReal x4637=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4638=((IkReal(1.00000000000000))*(x4619)); +IkReal x4639=((cj0)*(x4635)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x4620)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4632)))+(((sj5)*(x4633)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x4638)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x4631)))+(((x4624)*(x4633)))+(((x4624)*(x4632)))+(((IkReal(-1.00000000000000))*(r21)*(x4635)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4627)*(x4629)))+(((IkReal(-1.00000000000000))*(x4638)))+(((IkReal(-1.00000000000000))*(sj5)*(x4625)*(x4634)))+(((x4621)*(x4623)))+(((x4621)*(x4622)))+(((cj0)*(x4626)))+(((IkReal(-1.00000000000000))*(sj5)*(x4625)*(x4628)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x4621)*(x4628)))+(((cj0)*(x4629)))+(((IkReal(-1.00000000000000))*(sj5)*(x4622)*(x4625)))+(((IkReal(-1.00000000000000))*(sj5)*(x4623)*(x4625)))+(((IkReal(-1.00000000000000))*(x4620)*(x4630)))+(((IkReal(-1.00000000000000))*(x4621)*(x4634)))+(((sj0)*(x4626)))); +evalcond[4]=((((sj0)*(x4623)*(x4624)))+(((IkReal(-1.00000000000000))*(x4624)*(x4625)*(x4634)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4625)))+(((x4621)*(x4636)))+(((r11)*(x4639)))+(((IkReal(-1.00000000000000))*(r10)*(x4625)*(x4631)))+(((IkReal(-1.00000000000000))*(r01)*(x4627)*(x4635)))+(((r00)*(sj0)*(x4631)))+(((sj0)*(x4622)*(x4624)))+(((IkReal(-1.00000000000000))*(x4624)*(x4625)*(x4628)))+(x4620)); +evalcond[5]=((((IkReal(-1.00000000000000))*(x4624)*(x4627)*(x4628)))+(((IkReal(-1.00000000000000))*(x4624)*(x4627)*(x4634)))+(((IkReal(-1.00000000000000))*(r00)*(x4625)*(x4631)))+(((IkReal(-1.00000000000000))*(r10)*(x4627)*(x4631)))+(((IkReal(-1.00000000000000))*(x4622)*(x4624)*(x4625)))+(((IkReal(-1.00000000000000))*(x4619)*(x4630)))+(((r11)*(sj0)*(x4635)))+(((IkReal(-1.00000000000000))*(x4621)*(x4637)))+(((IkReal(-1.00000000000000))*(sj5)*(x4625)*(x4636)))+(((r01)*(x4639)))+(((IkReal(-1.00000000000000))*(x4623)*(x4624)*(x4625)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4640=((r20)*(sj6)); +IkReal x4641=((cj4)*(cj5)); +IkReal x4642=((cj6)*(r21)); +if( IKabs(((gconst17)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x4641)*(x4642)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x4640)*(x4641))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst17)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4640)))+(((sj5)*(x4642))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst17)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x4641)*(x4642)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x4640)*(x4641)))))), ((gconst17)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4640)))+(((sj5)*(x4642))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4643=IKsin(j3); +IkReal x4644=IKcos(j3); +IkReal x4645=((sj0)*(sj5)); +IkReal x4646=((r00)*(sj6)); +IkReal x4647=((cj6)*(r01)); +IkReal x4648=((cj4)*(cj5)); +IkReal x4649=((IkReal(1.00000000000000))*(cj0)); +IkReal x4650=((cj5)*(r12)); +IkReal x4651=((IkReal(1.00000000000000))*(sj0)); +IkReal x4652=((cj6)*(r11)); +IkReal x4653=((cj5)*(r02)); +IkReal x4654=((IkReal(1.00000000000000))*(cj1)); +IkReal x4655=((cj6)*(sj4)); +IkReal x4656=((cj6)*(r21)); +IkReal x4657=((r20)*(sj6)); +IkReal x4658=((r10)*(sj6)); +IkReal x4659=((sj4)*(sj6)); +IkReal x4660=((cj4)*(r02)); +IkReal x4661=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4662=((IkReal(1.00000000000000))*(x4643)); +IkReal x4663=((cj0)*(x4659)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4656)))+(((sj5)*(x4657)))+(((IkReal(-1.00000000000000))*(sj1)*(x4644)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x4662)))+(((r20)*(x4655)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x4659)))+(((x4648)*(x4657)))+(((x4648)*(x4656)))); +evalcond[2]=((((x4645)*(x4646)))+(((IkReal(-1.00000000000000))*(sj5)*(x4649)*(x4658)))+(((cj0)*(x4650)))+(((x4645)*(x4647)))+(((IkReal(-1.00000000000000))*(x4662)))+(((IkReal(-1.00000000000000))*(sj5)*(x4649)*(x4652)))+(((IkReal(-1.00000000000000))*(x4651)*(x4653)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x4645)*(x4658)))+(((IkReal(-1.00000000000000))*(sj5)*(x4647)*(x4649)))+(((IkReal(-1.00000000000000))*(x4644)*(x4654)))+(((cj0)*(x4653)))+(((sj0)*(x4650)))+(((IkReal(-1.00000000000000))*(x4645)*(x4652)))+(((IkReal(-1.00000000000000))*(sj5)*(x4646)*(x4649)))); +evalcond[4]=((((r11)*(x4663)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4649)))+(((sj0)*(x4647)*(x4648)))+(((x4645)*(x4660)))+(((sj0)*(x4646)*(x4648)))+(((IkReal(-1.00000000000000))*(r01)*(x4651)*(x4659)))+(((IkReal(-1.00000000000000))*(x4648)*(x4649)*(x4658)))+(((r00)*(sj0)*(x4655)))+(((IkReal(-1.00000000000000))*(x4648)*(x4649)*(x4652)))+(x4644)+(((IkReal(-1.00000000000000))*(r10)*(x4649)*(x4655)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x4649)*(x4660)))+(((r01)*(x4663)))+(((IkReal(-1.00000000000000))*(r10)*(x4651)*(x4655)))+(((IkReal(-1.00000000000000))*(x4648)*(x4651)*(x4658)))+(((IkReal(-1.00000000000000))*(x4643)*(x4654)))+(((IkReal(-1.00000000000000))*(x4648)*(x4651)*(x4652)))+(((IkReal(-1.00000000000000))*(r00)*(x4649)*(x4655)))+(((r11)*(sj0)*(x4659)))+(((IkReal(-1.00000000000000))*(x4647)*(x4648)*(x4649)))+(((IkReal(-1.00000000000000))*(x4645)*(x4661)))+(((IkReal(-1.00000000000000))*(x4646)*(x4648)*(x4649)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +IkReal x4664=((IkReal(0.374290000000000))*(sj5)); +IkReal x4665=((cj0)*(sj6)); +IkReal x4666=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4667=((cj0)*(r02)); +IkReal x4668=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4669=((IkReal(1.00000000000000))*(py)); +IkReal x4670=((r01)*(sj0)); +IkReal x4671=((r20)*(sj6)); +IkReal x4672=((r11)*(sj0)); +IkReal x4673=((IkReal(0.374290000000000))*(cj5)); +IkReal x4674=((cj0)*(r12)); +IkReal x4675=((sj0)*(x4673)); +IkReal x4676=((cj6)*(x4668)); +IkReal x4677=((r10)*(sj0)*(sj6)); +IkReal x4678=((r00)*(sj0)*(sj6)); +IkReal x4679=((cj0)*(cj6)*(x4664)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(0.364420000000000))*(sj1)))+(((x4664)*(x4671)))+(((IkReal(-1.00000000000000))*(r22)*(x4673)))+(((cj6)*(r21)*(x4664)))+(((IkReal(-1.00000000000000))*(r21)*(x4676)))+(pz)+(((IkReal(-1.00000000000000))*(x4668)*(x4671)))+(((IkReal(-1.00000000000000))*(r22)*(x4666)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x4679)))+(((IkReal(-1.00000000000000))*(x4670)*(x4676)))+(((x4664)*(x4678)))+(((IkReal(-1.00000000000000))*(x4668)*(x4678)))+(((x4666)*(x4674)))+(((cj0)*(r11)*(x4676)))+(((IkReal(-1.00000000000000))*(r10)*(x4664)*(x4665)))+(((cj6)*(x4664)*(x4670)))+(((r10)*(x4665)*(x4668)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4666)))+(((px)*(sj0)))+(((x4673)*(x4674)))+(((IkReal(-1.00000000000000))*(r02)*(x4675)))+(((IkReal(-1.00000000000000))*(cj0)*(x4669)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((x4667)*(x4673)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(cj6)*(x4664)*(x4672)))+(((r00)*(x4665)*(x4668)))+(((r12)*(sj0)*(x4666)))+(((cj0)*(r01)*(x4676)))+(((IkReal(-1.00000000000000))*(r00)*(x4664)*(x4665)))+(((x4666)*(x4667)))+(((IkReal(-1.00000000000000))*(sj0)*(x4669)))+(((IkReal(-1.00000000000000))*(r01)*(x4679)))+(((r12)*(x4675)))+(((x4668)*(x4677)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(x4664)*(x4677)))+(((x4672)*(x4676)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst26; +IkReal x4680=(cj6)*(cj6); +IkReal x4681=(sj6)*(sj6); +IkReal x4682=((IkReal(1.00000000000000))*(r01)); +IkReal x4683=((sj0)*(sj5)); +IkReal x4684=((cj6)*(r22)); +IkReal x4685=((r21)*(sj6)); +IkReal x4686=((r00)*(r21)); +IkReal x4687=((cj0)*(sj5)); +IkReal x4688=((cj6)*(r20)); +IkReal x4689=((r22)*(sj6)); +IkReal x4690=((cj0)*(cj5)); +IkReal x4691=((IkReal(1.00000000000000))*(r10)); +IkReal x4692=((cj5)*(sj0)); +IkReal x4693=((r20)*(x4681)); +IkReal x4694=((x4680)*(x4692)); +gconst26=IKsign(((((r00)*(x4683)*(x4684)))+(((r11)*(x4690)*(x4693)))+(((x4686)*(x4694)))+(((IkReal(-1.00000000000000))*(x4682)*(x4683)*(x4689)))+(((IkReal(-1.00000000000000))*(r02)*(x4683)*(x4688)))+(((IkReal(-1.00000000000000))*(x4682)*(x4692)*(x4693)))+(((r11)*(x4687)*(x4689)))+(((IkReal(-1.00000000000000))*(r21)*(x4681)*(x4690)*(x4691)))+(((r11)*(r20)*(x4680)*(x4690)))+(((IkReal(-1.00000000000000))*(r12)*(x4685)*(x4687)))+(((IkReal(-1.00000000000000))*(x4684)*(x4687)*(x4691)))+(((r12)*(x4687)*(x4688)))+(((IkReal(-1.00000000000000))*(r21)*(x4680)*(x4690)*(x4691)))+(((x4681)*(x4686)*(x4692)))+(((r02)*(x4683)*(x4685)))+(((IkReal(-1.00000000000000))*(r20)*(x4682)*(x4694))))); +IkReal x4695=(cj6)*(cj6); +IkReal x4696=(sj6)*(sj6); +IkReal x4697=((IkReal(1.00000000000000))*(r01)); +IkReal x4698=((sj0)*(sj5)); +IkReal x4699=((cj6)*(r22)); +IkReal x4700=((r21)*(sj6)); +IkReal x4701=((r00)*(r21)); +IkReal x4702=((cj0)*(sj5)); +IkReal x4703=((cj6)*(r20)); +IkReal x4704=((r22)*(sj6)); +IkReal x4705=((cj0)*(cj5)); +IkReal x4706=((IkReal(1.00000000000000))*(r10)); +IkReal x4707=((cj5)*(sj0)); +IkReal x4708=((r20)*(x4696)); +IkReal x4709=((x4695)*(x4707)); +dummyeval[0]=((((r11)*(x4705)*(x4708)))+(((IkReal(-1.00000000000000))*(x4697)*(x4698)*(x4704)))+(((IkReal(-1.00000000000000))*(r20)*(x4697)*(x4709)))+(((r11)*(x4702)*(x4704)))+(((IkReal(-1.00000000000000))*(r21)*(x4696)*(x4705)*(x4706)))+(((IkReal(-1.00000000000000))*(r21)*(x4695)*(x4705)*(x4706)))+(((r00)*(x4698)*(x4699)))+(((r11)*(r20)*(x4695)*(x4705)))+(((IkReal(-1.00000000000000))*(r12)*(x4700)*(x4702)))+(((r12)*(x4702)*(x4703)))+(((r02)*(x4698)*(x4700)))+(((IkReal(-1.00000000000000))*(x4699)*(x4702)*(x4706)))+(((x4701)*(x4709)))+(((x4696)*(x4701)*(x4707)))+(((IkReal(-1.00000000000000))*(x4697)*(x4707)*(x4708)))+(((IkReal(-1.00000000000000))*(r02)*(x4698)*(x4703)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst27; +IkReal x4710=(cj6)*(cj6); +IkReal x4711=(sj6)*(sj6); +IkReal x4712=((sj5)*(sj6)); +IkReal x4713=((IkReal(1.00000000000000))*(cj0)); +IkReal x4714=((cj6)*(sj5)); +IkReal x4715=((r20)*(sj0)); +IkReal x4716=((cj0)*(r20)); +IkReal x4717=((r00)*(r21)); +IkReal x4718=((r22)*(sj0)); +IkReal x4719=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x4720=((cj5)*(x4711)); +IkReal x4721=((cj5)*(x4710)); +gconst27=IKsign(((((IkReal(-1.00000000000000))*(r10)*(x4719)*(x4721)))+(((r11)*(x4715)*(x4720)))+(((r01)*(x4716)*(x4720)))+(((r11)*(x4712)*(x4718)))+(((IkReal(-1.00000000000000))*(x4713)*(x4717)*(x4721)))+(((r01)*(x4716)*(x4721)))+(((IkReal(-1.00000000000000))*(r10)*(x4719)*(x4720)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x4713)*(x4714)))+(((r12)*(x4714)*(x4715)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x4712)*(x4713)))+(((cj0)*(r01)*(r22)*(x4712)))+(((r11)*(x4715)*(x4721)))+(((r02)*(x4714)*(x4716)))+(((IkReal(-1.00000000000000))*(x4713)*(x4717)*(x4720)))+(((IkReal(-1.00000000000000))*(r12)*(x4712)*(x4719)))+(((IkReal(-1.00000000000000))*(r10)*(x4714)*(x4718))))); +IkReal x4722=(cj6)*(cj6); +IkReal x4723=(sj6)*(sj6); +IkReal x4724=((sj5)*(sj6)); +IkReal x4725=((IkReal(1.00000000000000))*(cj0)); +IkReal x4726=((cj6)*(sj5)); +IkReal x4727=((r20)*(sj0)); +IkReal x4728=((cj0)*(r20)); +IkReal x4729=((r00)*(r21)); +IkReal x4730=((r22)*(sj0)); +IkReal x4731=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x4732=((cj5)*(x4723)); +IkReal x4733=((cj5)*(x4722)); +dummyeval[0]=((((cj0)*(r01)*(r22)*(x4724)))+(((IkReal(-1.00000000000000))*(r12)*(x4724)*(x4731)))+(((r02)*(x4726)*(x4728)))+(((IkReal(-1.00000000000000))*(r10)*(x4731)*(x4733)))+(((IkReal(-1.00000000000000))*(x4725)*(x4729)*(x4733)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x4724)*(x4725)))+(((r01)*(x4728)*(x4733)))+(((IkReal(-1.00000000000000))*(r10)*(x4731)*(x4732)))+(((r11)*(x4727)*(x4732)))+(((r01)*(x4728)*(x4732)))+(((IkReal(-1.00000000000000))*(r10)*(x4726)*(x4730)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x4725)*(x4726)))+(((r11)*(x4724)*(x4730)))+(((r12)*(x4726)*(x4727)))+(((r11)*(x4727)*(x4733)))+(((IkReal(-1.00000000000000))*(x4725)*(x4729)*(x4732)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x4734=((cj5)*(r22)); +IkReal x4735=((IkReal(0.374290000000000))*(sj5)); +IkReal x4736=((cj0)*(sj6)); +IkReal x4737=((cj6)*(r21)); +IkReal x4738=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4739=((cj0)*(r02)); +IkReal x4740=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4741=((IkReal(1.00000000000000))*(py)); +IkReal x4742=((r01)*(sj0)); +IkReal x4743=((r20)*(sj6)); +IkReal x4744=((r11)*(sj0)); +IkReal x4745=((IkReal(0.374290000000000))*(cj5)); +IkReal x4746=((cj0)*(r12)); +IkReal x4747=((sj0)*(x4745)); +IkReal x4748=((cj6)*(x4740)); +IkReal x4749=((r10)*(sj0)*(sj6)); +IkReal x4750=((r00)*(sj0)*(sj6)); +IkReal x4751=((cj0)*(cj6)*(x4735)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4734)))+(((sj5)*(x4737)))+(((sj5)*(x4743)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x4738)))+(((x4735)*(x4737)))+(pz)+(((IkReal(-1.00000000000000))*(x4740)*(x4743)))+(((IkReal(-0.374290000000000))*(x4734)))+(((IkReal(-1.00000000000000))*(x4737)*(x4740)))+(((x4735)*(x4743)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((x4738)*(x4746)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4738)))+(((x4735)*(x4750)))+(((IkReal(-1.00000000000000))*(x4742)*(x4748)))+(((r10)*(x4736)*(x4740)))+(((cj0)*(r11)*(x4748)))+(((IkReal(-1.00000000000000))*(r11)*(x4751)))+(((IkReal(-1.00000000000000))*(r10)*(x4735)*(x4736)))+(((x4745)*(x4746)))+(((IkReal(-1.00000000000000))*(x4740)*(x4750)))+(((IkReal(-1.00000000000000))*(r02)*(x4747)))+(((cj6)*(x4735)*(x4742)))+(((IkReal(-1.00000000000000))*(cj0)*(x4741)))+(((px)*(sj0)))); +evalcond[4]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(r01)*(x4751)))+(((IkReal(-1.00000000000000))*(x4735)*(x4749)))+(((r12)*(x4747)))+(((cj0)*(r01)*(x4748)))+(((r00)*(x4736)*(x4740)))+(((IkReal(-1.00000000000000))*(sj0)*(x4741)))+(((IkReal(-1.00000000000000))*(r00)*(x4735)*(x4736)))+(((x4738)*(x4739)))+(((x4739)*(x4745)))+(((r12)*(sj0)*(x4738)))+(((IkReal(-1.00000000000000))*(cj6)*(x4735)*(x4744)))+(((x4744)*(x4748)))+(((x4740)*(x4749)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4752=((cj5)*(r02)); +IkReal x4753=((cj0)*(sj5)); +IkReal x4754=((r10)*(sj6)); +IkReal x4755=((IkReal(1.00000000000000))*(cj6)); +IkReal x4756=((sj0)*(sj5)); +IkReal x4757=((cj5)*(r12)); +IkReal x4758=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x4757)))+(((IkReal(-1.00000000000000))*(r01)*(x4755)*(x4756)))+(((x4753)*(x4754)))+(((IkReal(-1.00000000000000))*(x4756)*(x4758)))+(((cj6)*(r11)*(x4753)))+(((sj0)*(x4752))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj0)*(x4757)))+(((cj0)*(x4752)))+(((IkReal(-1.00000000000000))*(x4754)*(x4756)))+(((IkReal(-1.00000000000000))*(x4753)*(x4758)))+(((IkReal(-1.00000000000000))*(r11)*(x4755)*(x4756)))+(((IkReal(-1.00000000000000))*(r01)*(x4753)*(x4755))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x4757)))+(((IkReal(-1.00000000000000))*(r01)*(x4755)*(x4756)))+(((x4753)*(x4754)))+(((IkReal(-1.00000000000000))*(x4756)*(x4758)))+(((cj6)*(r11)*(x4753)))+(((sj0)*(x4752)))))+IKsqr(((((sj0)*(x4757)))+(((cj0)*(x4752)))+(((IkReal(-1.00000000000000))*(x4754)*(x4756)))+(((IkReal(-1.00000000000000))*(x4753)*(x4758)))+(((IkReal(-1.00000000000000))*(r11)*(x4755)*(x4756)))+(((IkReal(-1.00000000000000))*(r01)*(x4753)*(x4755)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x4757)))+(((IkReal(-1.00000000000000))*(r01)*(x4755)*(x4756)))+(((x4753)*(x4754)))+(((IkReal(-1.00000000000000))*(x4756)*(x4758)))+(((cj6)*(r11)*(x4753)))+(((sj0)*(x4752)))), ((((sj0)*(x4757)))+(((cj0)*(x4752)))+(((IkReal(-1.00000000000000))*(x4754)*(x4756)))+(((IkReal(-1.00000000000000))*(x4753)*(x4758)))+(((IkReal(-1.00000000000000))*(r11)*(x4755)*(x4756)))+(((IkReal(-1.00000000000000))*(r01)*(x4753)*(x4755))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x4759=((cj0)*(cj5)); +IkReal x4760=((IkReal(1.00000000000000))*(cj0)); +IkReal x4761=((cj6)*(r11)); +IkReal x4762=((r10)*(sj6)); +IkReal x4763=((cj5)*(sj0)); +IkReal x4764=((r00)*(sj5)*(sj6)); +IkReal x4765=((cj6)*(r01)*(sj5)); +IkReal x4766=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x4763)))+(((sj0)*(x4765)))+(((r12)*(x4759)))+(((sj0)*(x4764)))+(((IkReal(-1.00000000000000))*(sj5)*(x4760)*(x4761)))+(IKsin(j3))+(((IkReal(-1.00000000000000))*(sj5)*(x4760)*(x4762)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4760)*(x4765)))+(((IkReal(-1.00000000000000))*(x4761)*(x4766)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((r02)*(x4759)))+(((IkReal(-1.00000000000000))*(x4760)*(x4764)))+(((r12)*(x4763)))+(((IkReal(-1.00000000000000))*(x4762)*(x4766)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst33; +IkReal x4767=(r21)*(r21); +IkReal x4768=(cj5)*(cj5); +IkReal x4769=(sj6)*(sj6); +IkReal x4770=(cj6)*(cj6); +IkReal x4771=(r20)*(r20); +IkReal x4772=((cj6)*(r21)); +IkReal x4773=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x4774=((cj5)*(r22)*(sj5)); +IkReal x4775=((IkReal(1.00000000000000))*(x4769)); +IkReal x4776=((IkReal(1.00000000000000))*(x4770)); +gconst33=IKsign(((((IkReal(-1.00000000000000))*(x4771)*(x4776)))+(((IkReal(-1.00000000000000))*(x4767)*(x4775)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x4767)*(x4768)*(x4776)))+(((IkReal(-1.00000000000000))*(x4768)*(x4771)*(x4775)))+(((IkReal(-1.00000000000000))*(x4768)*(x4772)*(x4773)))+(((x4772)*(x4773)))+(((IkReal(-1.00000000000000))*(x4773)*(x4774)))+(((IkReal(-2.00000000000000))*(x4772)*(x4774))))); +IkReal x4777=(r21)*(r21); +IkReal x4778=(cj5)*(cj5); +IkReal x4779=(sj6)*(sj6); +IkReal x4780=(cj6)*(cj6); +IkReal x4781=(r20)*(r20); +IkReal x4782=((cj6)*(r21)); +IkReal x4783=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x4784=((cj5)*(r22)*(sj5)); +IkReal x4785=((IkReal(1.00000000000000))*(x4779)); +IkReal x4786=((IkReal(1.00000000000000))*(x4780)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x4777)*(x4785)))+(((IkReal(-1.00000000000000))*(x4783)*(x4784)))+(((IkReal(-1.00000000000000))*(x4778)*(x4782)*(x4783)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x4777)*(x4778)*(x4786)))+(((x4782)*(x4783)))+(((IkReal(-1.00000000000000))*(x4781)*(x4786)))+(((IkReal(-1.00000000000000))*(x4778)*(x4781)*(x4785)))+(((IkReal(-2.00000000000000))*(x4782)*(x4784)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst34; +IkReal x4787=(cj6)*(cj6); +IkReal x4788=(sj6)*(sj6); +IkReal x4789=((IkReal(1.00000000000000))*(r01)); +IkReal x4790=((sj0)*(sj5)); +IkReal x4791=((cj6)*(r22)); +IkReal x4792=((r21)*(sj6)); +IkReal x4793=((r00)*(r21)); +IkReal x4794=((cj0)*(sj5)); +IkReal x4795=((cj6)*(r20)); +IkReal x4796=((r22)*(sj6)); +IkReal x4797=((cj0)*(cj5)); +IkReal x4798=((IkReal(1.00000000000000))*(r10)); +IkReal x4799=((cj5)*(sj0)); +IkReal x4800=((r20)*(x4788)); +IkReal x4801=((x4787)*(x4799)); +gconst34=IKsign(((((r02)*(x4790)*(x4792)))+(((IkReal(-1.00000000000000))*(r20)*(x4789)*(x4801)))+(((r12)*(x4794)*(x4795)))+(((r11)*(x4794)*(x4796)))+(((IkReal(-1.00000000000000))*(x4789)*(x4799)*(x4800)))+(((x4788)*(x4793)*(x4799)))+(((x4793)*(x4801)))+(((IkReal(-1.00000000000000))*(r21)*(x4787)*(x4797)*(x4798)))+(((r11)*(r20)*(x4787)*(x4797)))+(((IkReal(-1.00000000000000))*(r21)*(x4788)*(x4797)*(x4798)))+(((r00)*(x4790)*(x4791)))+(((IkReal(-1.00000000000000))*(r02)*(x4790)*(x4795)))+(((IkReal(-1.00000000000000))*(x4791)*(x4794)*(x4798)))+(((IkReal(-1.00000000000000))*(x4789)*(x4790)*(x4796)))+(((r11)*(x4797)*(x4800)))+(((IkReal(-1.00000000000000))*(r12)*(x4792)*(x4794))))); +IkReal x4802=(cj6)*(cj6); +IkReal x4803=(sj6)*(sj6); +IkReal x4804=((IkReal(1.00000000000000))*(r01)); +IkReal x4805=((sj0)*(sj5)); +IkReal x4806=((cj6)*(r22)); +IkReal x4807=((r21)*(sj6)); +IkReal x4808=((r00)*(r21)); +IkReal x4809=((cj0)*(sj5)); +IkReal x4810=((cj6)*(r20)); +IkReal x4811=((r22)*(sj6)); +IkReal x4812=((cj0)*(cj5)); +IkReal x4813=((IkReal(1.00000000000000))*(r10)); +IkReal x4814=((cj5)*(sj0)); +IkReal x4815=((r20)*(x4803)); +IkReal x4816=((x4802)*(x4814)); +dummyeval[0]=((((r11)*(r20)*(x4802)*(x4812)))+(((IkReal(-1.00000000000000))*(r21)*(x4803)*(x4812)*(x4813)))+(((r12)*(x4809)*(x4810)))+(((IkReal(-1.00000000000000))*(x4804)*(x4805)*(x4811)))+(((IkReal(-1.00000000000000))*(r21)*(x4802)*(x4812)*(x4813)))+(((IkReal(-1.00000000000000))*(r20)*(x4804)*(x4816)))+(((x4803)*(x4808)*(x4814)))+(((IkReal(-1.00000000000000))*(x4806)*(x4809)*(x4813)))+(((IkReal(-1.00000000000000))*(r12)*(x4807)*(x4809)))+(((r00)*(x4805)*(x4806)))+(((r11)*(x4809)*(x4811)))+(((IkReal(-1.00000000000000))*(r02)*(x4805)*(x4810)))+(((x4808)*(x4816)))+(((r11)*(x4812)*(x4815)))+(((IkReal(-1.00000000000000))*(x4804)*(x4814)*(x4815)))+(((r02)*(x4805)*(x4807)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4817=((sj0)*(sj6)); +IkReal x4818=((cj0)*(r10)); +IkReal x4819=((IkReal(1.00000000000000))*(cj5)); +IkReal x4820=((cj6)*(sj0)); +IkReal x4821=((cj0)*(r11)); +if( IKabs(((gconst34)*(((((r01)*(x4817)))+(((IkReal(-1.00000000000000))*(r00)*(x4820)))+(((cj6)*(x4818)))+(((IkReal(-1.00000000000000))*(sj6)*(x4821))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst34)*(((((IkReal(-1.00000000000000))*(r00)*(x4817)*(x4819)))+(((cj0)*(r12)*(sj5)))+(((cj5)*(cj6)*(x4821)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r01)*(x4819)*(x4820)))+(((cj5)*(sj6)*(x4818))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst34)*(((((r01)*(x4817)))+(((IkReal(-1.00000000000000))*(r00)*(x4820)))+(((cj6)*(x4818)))+(((IkReal(-1.00000000000000))*(sj6)*(x4821)))))), ((gconst34)*(((((IkReal(-1.00000000000000))*(r00)*(x4817)*(x4819)))+(((cj0)*(r12)*(sj5)))+(((cj5)*(cj6)*(x4821)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r01)*(x4819)*(x4820)))+(((cj5)*(sj6)*(x4818))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4822=IKsin(j4); +IkReal x4823=IKcos(j4); +IkReal x4824=((r22)*(sj5)); +IkReal x4825=((IkReal(1.00000000000000))*(cj6)); +IkReal x4826=((IkReal(1.00000000000000))*(cj0)); +IkReal x4827=((cj5)*(r11)); +IkReal x4828=((cj5)*(cj6)); +IkReal x4829=((r11)*(sj6)); +IkReal x4830=((IkReal(1.00000000000000))*(sj6)); +IkReal x4831=((cj6)*(r00)); +IkReal x4832=((r12)*(sj5)); +IkReal x4833=((r02)*(sj5)); +IkReal x4834=((cj6)*(r10)); +IkReal x4835=((cj5)*(sj6)); +IkReal x4836=((cj5)*(r01)); +IkReal x4837=((sj0)*(x4822)); +IkReal x4838=((r00)*(x4835)); +IkReal x4839=((cj0)*(x4822)); +IkReal x4840=((sj0)*(x4823)); +IkReal x4841=((r20)*(x4823)); +IkReal x4842=((cj0)*(x4823)); +IkReal x4843=((r21)*(x4822)); +IkReal x4844=((r21)*(x4823)); +IkReal x4845=((r20)*(x4822)); +IkReal x4846=((x4823)*(x4832)); +IkReal x4847=((r01)*(sj6)*(x4823)); +IkReal x4848=((cj5)*(r10)*(x4830)); +evalcond[0]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x4825)*(x4841)))+(((x4835)*(x4845)))+(((sj6)*(x4844)))+(((x4828)*(x4843)))+(((x4822)*(x4824)))); +evalcond[1]=((((x4828)*(x4844)))+(((x4835)*(x4841)))+(((cj6)*(x4845)))+(((IkReal(-1.00000000000000))*(x4830)*(x4843)))+(((x4823)*(x4824)))); +evalcond[2]=((((r01)*(x4828)*(x4837)))+(((IkReal(-1.00000000000000))*(r10)*(x4822)*(x4826)*(x4835)))+(((IkReal(-1.00000000000000))*(x4822)*(x4826)*(x4832)))+(((IkReal(-1.00000000000000))*(x4825)*(x4827)*(x4839)))+(((IkReal(-1.00000000000000))*(r00)*(x4825)*(x4840)))+(((x4833)*(x4837)))+(((x4837)*(x4838)))+(((IkReal(-1.00000000000000))*(x4823)*(x4826)*(x4829)))+(((r01)*(sj6)*(x4840)))+(((x4834)*(x4842)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x4825)*(x4839)))+(((IkReal(-1.00000000000000))*(r01)*(x4830)*(x4837)))+(((IkReal(-1.00000000000000))*(x4825)*(x4827)*(x4842)))+(((x4838)*(x4840)))+(((x4829)*(x4839)))+(((IkReal(-1.00000000000000))*(r10)*(x4823)*(x4826)*(x4835)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x4831)*(x4837)))+(((r01)*(x4828)*(x4840)))+(((x4833)*(x4840)))+(((IkReal(-1.00000000000000))*(x4826)*(x4846)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x4837)*(x4848)))+(((x4831)*(x4842)))+(((IkReal(-1.00000000000000))*(x4822)*(x4826)*(x4838)))+(((IkReal(-1.00000000000000))*(x4822)*(x4826)*(x4833)))+(((IkReal(-1.00000000000000))*(x4829)*(x4840)))+(((x4834)*(x4840)))+(((IkReal(-1.00000000000000))*(x4825)*(x4827)*(x4837)))+(((IkReal(-1.00000000000000))*(x4826)*(x4847)))+(((IkReal(-1.00000000000000))*(x4825)*(x4836)*(x4839)))+(((IkReal(-1.00000000000000))*(x4832)*(x4837)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x4825)*(x4837)))+(((r01)*(sj6)*(x4839)))+(((IkReal(-1.00000000000000))*(x4825)*(x4836)*(x4842)))+(((x4829)*(x4837)))+(((IkReal(-1.00000000000000))*(x4825)*(x4827)*(x4840)))+(((IkReal(-1.00000000000000))*(x4840)*(x4848)))+(((IkReal(-1.00000000000000))*(x4832)*(x4840)))+(((IkReal(-1.00000000000000))*(x4823)*(x4826)*(x4833)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r00)*(x4825)*(x4839)))+(((IkReal(-1.00000000000000))*(x4823)*(x4826)*(x4838)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst33)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst33)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst33)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst33)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4849=IKsin(j4); +IkReal x4850=IKcos(j4); +IkReal x4851=((r22)*(sj5)); +IkReal x4852=((IkReal(1.00000000000000))*(cj6)); +IkReal x4853=((IkReal(1.00000000000000))*(cj0)); +IkReal x4854=((cj5)*(r11)); +IkReal x4855=((cj5)*(cj6)); +IkReal x4856=((r11)*(sj6)); +IkReal x4857=((IkReal(1.00000000000000))*(sj6)); +IkReal x4858=((cj6)*(r00)); +IkReal x4859=((r12)*(sj5)); +IkReal x4860=((r02)*(sj5)); +IkReal x4861=((cj6)*(r10)); +IkReal x4862=((cj5)*(sj6)); +IkReal x4863=((cj5)*(r01)); +IkReal x4864=((sj0)*(x4849)); +IkReal x4865=((r00)*(x4862)); +IkReal x4866=((cj0)*(x4849)); +IkReal x4867=((sj0)*(x4850)); +IkReal x4868=((r20)*(x4850)); +IkReal x4869=((cj0)*(x4850)); +IkReal x4870=((r21)*(x4849)); +IkReal x4871=((r21)*(x4850)); +IkReal x4872=((r20)*(x4849)); +IkReal x4873=((x4850)*(x4859)); +IkReal x4874=((r01)*(sj6)*(x4850)); +IkReal x4875=((cj5)*(r10)*(x4857)); +evalcond[0]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x4852)*(x4868)))+(((sj6)*(x4871)))+(((x4849)*(x4851)))+(((x4855)*(x4870)))+(((x4862)*(x4872)))); +evalcond[1]=((((x4850)*(x4851)))+(((IkReal(-1.00000000000000))*(x4857)*(x4870)))+(((x4862)*(x4868)))+(((cj6)*(x4872)))+(((x4855)*(x4871)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x4852)*(x4867)))+(((IkReal(-1.00000000000000))*(x4852)*(x4854)*(x4866)))+(((x4861)*(x4869)))+(((x4864)*(x4865)))+(((IkReal(-1.00000000000000))*(r10)*(x4849)*(x4853)*(x4862)))+(((IkReal(-1.00000000000000))*(x4849)*(x4853)*(x4859)))+(((IkReal(-1.00000000000000))*(x4850)*(x4853)*(x4856)))+(((x4860)*(x4864)))+(((r01)*(x4855)*(x4864)))+(((r01)*(sj6)*(x4867)))); +evalcond[3]=((((x4858)*(x4864)))+(((IkReal(-1.00000000000000))*(r10)*(x4852)*(x4866)))+(((x4856)*(x4866)))+(((IkReal(-1.00000000000000))*(r10)*(x4850)*(x4853)*(x4862)))+(((r01)*(x4855)*(x4867)))+(((IkReal(-1.00000000000000))*(r01)*(x4857)*(x4864)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x4853)*(x4873)))+(((x4865)*(x4867)))+(((IkReal(-1.00000000000000))*(x4852)*(x4854)*(x4869)))+(((x4860)*(x4867)))); +evalcond[4]=((((x4858)*(x4869)))+(((IkReal(-1.00000000000000))*(x4849)*(x4853)*(x4865)))+(((IkReal(-1.00000000000000))*(x4864)*(x4875)))+(((IkReal(-1.00000000000000))*(x4852)*(x4863)*(x4866)))+(((IkReal(-1.00000000000000))*(x4859)*(x4864)))+(((IkReal(-1.00000000000000))*(x4853)*(x4874)))+(((IkReal(-1.00000000000000))*(x4849)*(x4853)*(x4860)))+(((IkReal(-1.00000000000000))*(x4856)*(x4867)))+(((x4861)*(x4867)))+(((IkReal(-1.00000000000000))*(x4852)*(x4854)*(x4864)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x4850)*(x4853)*(x4860)))+(((IkReal(-1.00000000000000))*(r00)*(x4852)*(x4866)))+(((x4856)*(x4864)))+(((IkReal(-1.00000000000000))*(x4852)*(x4854)*(x4867)))+(((r01)*(sj6)*(x4866)))+(((IkReal(-1.00000000000000))*(x4852)*(x4863)*(x4869)))+(((IkReal(-1.00000000000000))*(x4867)*(x4875)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r10)*(x4852)*(x4864)))+(((IkReal(-1.00000000000000))*(x4859)*(x4867)))+(((IkReal(-1.00000000000000))*(x4850)*(x4853)*(x4865)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x4876=((cj5)*(r22)); +IkReal x4877=((IkReal(0.374290000000000))*(sj5)); +IkReal x4878=((cj0)*(sj6)); +IkReal x4879=((cj6)*(r21)); +IkReal x4880=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4881=((cj0)*(r02)); +IkReal x4882=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4883=((IkReal(1.00000000000000))*(py)); +IkReal x4884=((r01)*(sj0)); +IkReal x4885=((r20)*(sj6)); +IkReal x4886=((r11)*(sj0)); +IkReal x4887=((IkReal(0.374290000000000))*(cj5)); +IkReal x4888=((cj0)*(r12)); +IkReal x4889=((sj0)*(x4887)); +IkReal x4890=((cj6)*(x4882)); +IkReal x4891=((r10)*(sj0)*(sj6)); +IkReal x4892=((r00)*(sj0)*(sj6)); +IkReal x4893=((cj0)*(cj6)*(x4877)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4876)))+(((sj5)*(x4879)))+(((sj5)*(x4885)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4879)*(x4882)))+(((IkReal(-0.374290000000000))*(x4876)))+(((x4877)*(x4879)))+(((IkReal(-1.00000000000000))*(r22)*(x4880)))+(((IkReal(-1.00000000000000))*(x4882)*(x4885)))+(pz)+(((x4877)*(x4885)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((cj0)*(r11)*(x4890)))+(((x4880)*(x4888)))+(((IkReal(-1.00000000000000))*(x4884)*(x4890)))+(((x4877)*(x4892)))+(((r10)*(x4878)*(x4882)))+(((IkReal(-1.00000000000000))*(r10)*(x4877)*(x4878)))+(((IkReal(-1.00000000000000))*(r02)*(x4889)))+(((cj6)*(x4877)*(x4884)))+(((x4887)*(x4888)))+(((IkReal(-1.00000000000000))*(x4882)*(x4892)))+(((IkReal(-1.00000000000000))*(cj0)*(x4883)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4880)))+(((IkReal(-1.00000000000000))*(r11)*(x4893)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((cj0)*(r01)*(x4890)))+(((IkReal(-1.00000000000000))*(r00)*(x4877)*(x4878)))+(((r12)*(x4889)))+(((IkReal(-1.00000000000000))*(cj6)*(x4877)*(x4886)))+(((x4882)*(x4891)))+(((r12)*(sj0)*(x4880)))+(((IkReal(-1.00000000000000))*(x4877)*(x4891)))+(((x4881)*(x4887)))+(((IkReal(-1.00000000000000))*(sj0)*(x4883)))+(((r00)*(x4878)*(x4882)))+(((x4880)*(x4881)))+(((IkReal(-1.00000000000000))*(r01)*(x4893)))+(((x4886)*(x4890)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4894=((IkReal(1.00000000000000))*(cj5)); +IkReal x4895=((r10)*(sj5)*(sj6)); +IkReal x4896=((cj6)*(sj0)*(sj5)); +IkReal x4897=((r00)*(sj5)*(sj6)); +IkReal x4898=((cj0)*(cj6)*(sj5)); +if( IKabs(((((r11)*(x4898)))+(((cj0)*(x4895)))+(((IkReal(-1.00000000000000))*(sj0)*(x4897)))+(((IkReal(-1.00000000000000))*(r01)*(x4896)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x4894)))+(((cj5)*(r02)*(sj0))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r01)*(x4898)))+(((cj0)*(x4897)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4894)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4894)))+(((r11)*(x4896)))+(((sj0)*(x4895))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r11)*(x4898)))+(((cj0)*(x4895)))+(((IkReal(-1.00000000000000))*(sj0)*(x4897)))+(((IkReal(-1.00000000000000))*(r01)*(x4896)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x4894)))+(((cj5)*(r02)*(sj0)))))+IKsqr(((((r01)*(x4898)))+(((cj0)*(x4897)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4894)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4894)))+(((r11)*(x4896)))+(((sj0)*(x4895)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r11)*(x4898)))+(((cj0)*(x4895)))+(((IkReal(-1.00000000000000))*(sj0)*(x4897)))+(((IkReal(-1.00000000000000))*(r01)*(x4896)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x4894)))+(((cj5)*(r02)*(sj0)))), ((((r01)*(x4898)))+(((cj0)*(x4897)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4894)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4894)))+(((r11)*(x4896)))+(((sj0)*(x4895))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x4899=((cj0)*(cj5)); +IkReal x4900=((IkReal(1.00000000000000))*(cj0)); +IkReal x4901=((cj6)*(r11)); +IkReal x4902=((r10)*(sj6)); +IkReal x4903=((cj5)*(sj0)); +IkReal x4904=((r00)*(sj5)*(sj6)); +IkReal x4905=((cj6)*(r01)*(sj5)); +IkReal x4906=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((sj0)*(x4904)))+(((r12)*(x4899)))+(IKsin(j3))+(((IkReal(-1.00000000000000))*(sj5)*(x4900)*(x4901)))+(((IkReal(-1.00000000000000))*(sj5)*(x4900)*(x4902)))+(((sj0)*(x4905)))+(((IkReal(-1.00000000000000))*(r02)*(x4903)))); +evalcond[1]=((((r02)*(x4899)))+(((IkReal(-1.00000000000000))*(x4902)*(x4906)))+(((IkReal(-1.00000000000000))*(x4900)*(x4905)))+(((IkReal(-1.00000000000000))*(x4900)*(x4904)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x4901)*(x4906)))+(((r12)*(x4903)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst37; +IkReal x4907=(cj5)*(cj5); +IkReal x4908=(r20)*(r20); +IkReal x4909=(sj6)*(sj6); +IkReal x4910=(cj6)*(cj6); +IkReal x4911=(r21)*(r21); +IkReal x4912=((cj6)*(r21)); +IkReal x4913=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x4914=((cj5)*(r22)*(sj5)); +gconst37=IKsign(((((x4907)*(x4910)*(x4911)))+(((x4907)*(x4908)*(x4909)))+(((x4913)*(x4914)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x4907)*(x4912)*(x4913)))+(((IkReal(-1.00000000000000))*(x4912)*(x4913)))+(((IkReal(2.00000000000000))*(x4912)*(x4914)))+(((x4908)*(x4910)))+(((x4909)*(x4911))))); +IkReal x4915=(cj5)*(cj5); +IkReal x4916=(r20)*(r20); +IkReal x4917=(sj6)*(sj6); +IkReal x4918=(cj6)*(cj6); +IkReal x4919=(r21)*(r21); +IkReal x4920=((cj6)*(r21)); +IkReal x4921=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x4922=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((IkReal(2.00000000000000))*(x4920)*(x4922)))+(((x4915)*(x4916)*(x4917)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x4917)*(x4919)))+(((IkReal(-1.00000000000000))*(x4920)*(x4921)))+(((x4915)*(x4920)*(x4921)))+(((x4921)*(x4922)))+(((x4915)*(x4918)*(x4919)))+(((x4916)*(x4918)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst38; +IkReal x4923=(cj6)*(cj6); +IkReal x4924=(sj6)*(sj6); +IkReal x4925=((IkReal(1.00000000000000))*(r21)); +IkReal x4926=((cj6)*(r20)); +IkReal x4927=((r22)*(sj5)); +IkReal x4928=((r01)*(sj0)); +IkReal x4929=((r00)*(sj0)); +IkReal x4930=((cj0)*(r10)); +IkReal x4931=((r02)*(sj0)*(sj5)); +IkReal x4932=((cj5)*(x4923)); +IkReal x4933=((cj0)*(r12)*(sj5)); +IkReal x4934=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x4935=((cj5)*(x4924)); +IkReal x4936=((r20)*(x4935)); +gconst38=IKsign(((((x4928)*(x4936)))+(((IkReal(-1.00000000000000))*(cj6)*(x4927)*(x4929)))+(((IkReal(-1.00000000000000))*(sj6)*(x4927)*(x4934)))+(((IkReal(-1.00000000000000))*(sj6)*(x4925)*(x4931)))+(((r21)*(sj6)*(x4933)))+(((r21)*(x4930)*(x4935)))+(((IkReal(-1.00000000000000))*(x4925)*(x4929)*(x4935)))+(((x4926)*(x4931)))+(((IkReal(-1.00000000000000))*(r20)*(x4932)*(x4934)))+(((IkReal(-1.00000000000000))*(x4925)*(x4929)*(x4932)))+(((IkReal(-1.00000000000000))*(x4926)*(x4933)))+(((r21)*(x4930)*(x4932)))+(((IkReal(-1.00000000000000))*(x4934)*(x4936)))+(((r20)*(x4928)*(x4932)))+(((cj6)*(x4927)*(x4930)))+(((sj6)*(x4927)*(x4928))))); +IkReal x4937=(cj6)*(cj6); +IkReal x4938=(sj6)*(sj6); +IkReal x4939=((IkReal(1.00000000000000))*(r21)); +IkReal x4940=((cj6)*(r20)); +IkReal x4941=((r22)*(sj5)); +IkReal x4942=((r01)*(sj0)); +IkReal x4943=((r00)*(sj0)); +IkReal x4944=((cj0)*(r10)); +IkReal x4945=((r02)*(sj0)*(sj5)); +IkReal x4946=((cj5)*(x4937)); +IkReal x4947=((cj0)*(r12)*(sj5)); +IkReal x4948=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x4949=((cj5)*(x4938)); +IkReal x4950=((r20)*(x4949)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x4939)*(x4943)*(x4946)))+(((r21)*(x4944)*(x4949)))+(((r21)*(x4944)*(x4946)))+(((r20)*(x4942)*(x4946)))+(((IkReal(-1.00000000000000))*(cj6)*(x4941)*(x4943)))+(((sj6)*(x4941)*(x4942)))+(((IkReal(-1.00000000000000))*(sj6)*(x4939)*(x4945)))+(((x4940)*(x4945)))+(((IkReal(-1.00000000000000))*(x4940)*(x4947)))+(((IkReal(-1.00000000000000))*(x4948)*(x4950)))+(((IkReal(-1.00000000000000))*(x4939)*(x4943)*(x4949)))+(((IkReal(-1.00000000000000))*(sj6)*(x4941)*(x4948)))+(((x4942)*(x4950)))+(((cj6)*(x4941)*(x4944)))+(((r21)*(sj6)*(x4947)))+(((IkReal(-1.00000000000000))*(r20)*(x4946)*(x4948)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4951=((sj0)*(sj6)); +IkReal x4952=((cj0)*(r10)); +IkReal x4953=((IkReal(1.00000000000000))*(cj5)); +IkReal x4954=((cj6)*(sj0)); +IkReal x4955=((cj0)*(r11)); +if( IKabs(((gconst38)*(((((cj6)*(x4952)))+(((r01)*(x4951)))+(((IkReal(-1.00000000000000))*(r00)*(x4954)))+(((IkReal(-1.00000000000000))*(sj6)*(x4955))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst38)*(((((cj5)*(sj6)*(x4952)))+(((IkReal(-1.00000000000000))*(r01)*(x4953)*(x4954)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x4951)*(x4953)))+(((cj5)*(cj6)*(x4955))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst38)*(((((cj6)*(x4952)))+(((r01)*(x4951)))+(((IkReal(-1.00000000000000))*(r00)*(x4954)))+(((IkReal(-1.00000000000000))*(sj6)*(x4955)))))), ((gconst38)*(((((cj5)*(sj6)*(x4952)))+(((IkReal(-1.00000000000000))*(r01)*(x4953)*(x4954)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x4951)*(x4953)))+(((cj5)*(cj6)*(x4955))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4956=IKsin(j4); +IkReal x4957=IKcos(j4); +IkReal x4958=((r22)*(sj5)); +IkReal x4959=((IkReal(1.00000000000000))*(cj6)); +IkReal x4960=((IkReal(1.00000000000000))*(cj0)); +IkReal x4961=((cj5)*(r11)); +IkReal x4962=((cj5)*(cj6)); +IkReal x4963=((r11)*(sj6)); +IkReal x4964=((IkReal(1.00000000000000))*(sj6)); +IkReal x4965=((cj6)*(r00)); +IkReal x4966=((r12)*(sj5)); +IkReal x4967=((r02)*(sj5)); +IkReal x4968=((cj6)*(r10)); +IkReal x4969=((cj5)*(sj6)); +IkReal x4970=((cj5)*(r01)); +IkReal x4971=((sj0)*(x4956)); +IkReal x4972=((r00)*(x4969)); +IkReal x4973=((cj0)*(x4956)); +IkReal x4974=((sj0)*(x4957)); +IkReal x4975=((r20)*(x4957)); +IkReal x4976=((cj0)*(x4957)); +IkReal x4977=((r21)*(x4956)); +IkReal x4978=((r21)*(x4957)); +IkReal x4979=((r20)*(x4956)); +IkReal x4980=((x4957)*(x4966)); +IkReal x4981=((r01)*(sj6)*(x4957)); +IkReal x4982=((cj5)*(r10)*(x4964)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x4959)*(x4975)))+(((x4969)*(x4979)))+(((sj6)*(x4978)))+(((x4956)*(x4958)))+(((x4962)*(x4977)))); +evalcond[1]=((((x4969)*(x4975)))+(((IkReal(-1.00000000000000))*(x4964)*(x4977)))+(((x4962)*(x4978)))+(((x4957)*(x4958)))+(((cj6)*(x4979)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x4956)*(x4960)*(x4969)))+(((x4967)*(x4971)))+(((IkReal(-1.00000000000000))*(x4956)*(x4960)*(x4966)))+(((IkReal(-1.00000000000000))*(x4957)*(x4960)*(x4963)))+(((r01)*(x4962)*(x4971)))+(((r01)*(sj6)*(x4974)))+(((x4971)*(x4972)))+(((IkReal(-1.00000000000000))*(r00)*(x4959)*(x4974)))+(((x4968)*(x4976)))+(((IkReal(-1.00000000000000))*(x4959)*(x4961)*(x4973)))); +evalcond[3]=((((r01)*(x4962)*(x4974)))+(((x4965)*(x4971)))+(((IkReal(-1.00000000000000))*(r10)*(x4959)*(x4973)))+(((x4963)*(x4973)))+(((IkReal(-1.00000000000000))*(r01)*(x4964)*(x4971)))+(((IkReal(-1.00000000000000))*(r10)*(x4957)*(x4960)*(x4969)))+(((IkReal(-1.00000000000000))*(x4959)*(x4961)*(x4976)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x4972)*(x4974)))+(((x4967)*(x4974)))+(((IkReal(-1.00000000000000))*(x4960)*(x4980)))); +evalcond[4]=((((x4968)*(x4974)))+(((IkReal(-1.00000000000000))*(x4956)*(x4960)*(x4967)))+(((IkReal(-1.00000000000000))*(x4959)*(x4970)*(x4973)))+(((IkReal(-1.00000000000000))*(x4956)*(x4960)*(x4972)))+(((IkReal(-1.00000000000000))*(x4960)*(x4981)))+(((IkReal(-1.00000000000000))*(x4963)*(x4974)))+(((IkReal(-1.00000000000000))*(x4959)*(x4961)*(x4971)))+(((IkReal(-1.00000000000000))*(x4966)*(x4971)))+(((x4965)*(x4976)))+(((IkReal(-1.00000000000000))*(x4971)*(x4982)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x4959)*(x4970)*(x4976)))+(sj3)+(((IkReal(-1.00000000000000))*(r00)*(x4959)*(x4973)))+(((IkReal(-1.00000000000000))*(x4959)*(x4961)*(x4974)))+(((r01)*(sj6)*(x4973)))+(((IkReal(-1.00000000000000))*(x4966)*(x4974)))+(((x4963)*(x4971)))+(((IkReal(-1.00000000000000))*(x4957)*(x4960)*(x4972)))+(((IkReal(-1.00000000000000))*(r10)*(x4959)*(x4971)))+(((IkReal(-1.00000000000000))*(x4974)*(x4982)))+(((IkReal(-1.00000000000000))*(x4957)*(x4960)*(x4967)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst37)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst37)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst37)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst37)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4983=IKsin(j4); +IkReal x4984=IKcos(j4); +IkReal x4985=((r22)*(sj5)); +IkReal x4986=((IkReal(1.00000000000000))*(cj6)); +IkReal x4987=((IkReal(1.00000000000000))*(cj0)); +IkReal x4988=((cj5)*(r11)); +IkReal x4989=((cj5)*(cj6)); +IkReal x4990=((r11)*(sj6)); +IkReal x4991=((IkReal(1.00000000000000))*(sj6)); +IkReal x4992=((cj6)*(r00)); +IkReal x4993=((r12)*(sj5)); +IkReal x4994=((r02)*(sj5)); +IkReal x4995=((cj6)*(r10)); +IkReal x4996=((cj5)*(sj6)); +IkReal x4997=((cj5)*(r01)); +IkReal x4998=((sj0)*(x4983)); +IkReal x4999=((r00)*(x4996)); +IkReal x5000=((cj0)*(x4983)); +IkReal x5001=((sj0)*(x4984)); +IkReal x5002=((r20)*(x4984)); +IkReal x5003=((cj0)*(x4984)); +IkReal x5004=((r21)*(x4983)); +IkReal x5005=((r21)*(x4984)); +IkReal x5006=((r20)*(x4983)); +IkReal x5007=((x4984)*(x4993)); +IkReal x5008=((r01)*(sj6)*(x4984)); +IkReal x5009=((cj5)*(r10)*(x4991)); +evalcond[0]=((IkReal(-1.00000000000000))+(((sj6)*(x5005)))+(((x4996)*(x5006)))+(((x4983)*(x4985)))+(((x4989)*(x5004)))+(((IkReal(-1.00000000000000))*(x4986)*(x5002)))); +evalcond[1]=((((x4989)*(x5005)))+(((x4984)*(x4985)))+(((IkReal(-1.00000000000000))*(x4991)*(x5004)))+(((cj6)*(x5006)))+(((x4996)*(x5002)))); +evalcond[2]=((((r01)*(x4989)*(x4998)))+(((IkReal(-1.00000000000000))*(x4986)*(x4988)*(x5000)))+(((x4994)*(x4998)))+(((x4998)*(x4999)))+(((IkReal(-1.00000000000000))*(r10)*(x4983)*(x4987)*(x4996)))+(((IkReal(-1.00000000000000))*(x4984)*(x4987)*(x4990)))+(((IkReal(-1.00000000000000))*(x4983)*(x4987)*(x4993)))+(((x4995)*(x5003)))+(((IkReal(-1.00000000000000))*(r00)*(x4986)*(x5001)))+(((r01)*(sj6)*(x5001)))); +evalcond[3]=((((x4994)*(x5001)))+(((IkReal(-1.00000000000000))*(r10)*(x4986)*(x5000)))+(((IkReal(-1.00000000000000))*(r10)*(x4984)*(x4987)*(x4996)))+(((IkReal(-1.00000000000000))*(x4987)*(x5007)))+(((x4990)*(x5000)))+(((r01)*(x4989)*(x5001)))+(((IkReal(-1.00000000000000))*(r01)*(x4991)*(x4998)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x4986)*(x4988)*(x5003)))+(((x4999)*(x5001)))+(((x4992)*(x4998)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x4993)*(x4998)))+(((IkReal(-1.00000000000000))*(x4983)*(x4987)*(x4999)))+(((IkReal(-1.00000000000000))*(x4987)*(x5008)))+(((IkReal(-1.00000000000000))*(x4986)*(x4988)*(x4998)))+(((IkReal(-1.00000000000000))*(x4990)*(x5001)))+(((IkReal(-1.00000000000000))*(x4983)*(x4987)*(x4994)))+(((x4992)*(x5003)))+(((IkReal(-1.00000000000000))*(x4998)*(x5009)))+(((x4995)*(x5001)))+(((IkReal(-1.00000000000000))*(x4986)*(x4997)*(x5000)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x4984)*(x4987)*(x4999)))+(sj3)+(((IkReal(-1.00000000000000))*(x5001)*(x5009)))+(((r01)*(sj6)*(x5000)))+(((IkReal(-1.00000000000000))*(x4993)*(x5001)))+(((IkReal(-1.00000000000000))*(x4986)*(x4997)*(x5003)))+(((IkReal(-1.00000000000000))*(x4984)*(x4987)*(x4994)))+(((IkReal(-1.00000000000000))*(x4986)*(x4988)*(x5001)))+(((IkReal(-1.00000000000000))*(r10)*(x4986)*(x4998)))+(((x4990)*(x4998)))+(((IkReal(-1.00000000000000))*(r00)*(x4986)*(x5000)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5010=((sj5)*(sj6)); +IkReal x5011=((IkReal(1.00000000000000))*(sj0)); +IkReal x5012=((cj6)*(sj5)); +IkReal x5013=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r01)*(x5011)*(x5012)))+(((IkReal(-1.00000000000000))*(r00)*(x5010)*(x5011)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5013)))+(((cj0)*(r11)*(x5012)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x5010))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5012)))+(((IkReal(-1.00000000000000))*(r22)*(x5013)))+(((r20)*(x5010))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x5011)*(x5012)))+(((IkReal(-1.00000000000000))*(r00)*(x5010)*(x5011)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5013)))+(((cj0)*(r11)*(x5012)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x5010)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5012)))+(((IkReal(-1.00000000000000))*(r22)*(x5013)))+(((r20)*(x5010)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r01)*(x5011)*(x5012)))+(((IkReal(-1.00000000000000))*(r00)*(x5010)*(x5011)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5013)))+(((cj0)*(r11)*(x5012)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x5010)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5012)))+(((IkReal(-1.00000000000000))*(r22)*(x5013)))+(((r20)*(x5010))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x5014=IKcos(j3); +IkReal x5015=((sj5)*(sj6)); +IkReal x5016=((cj0)*(cj5)); +IkReal x5017=((IkReal(1.00000000000000))*(cj0)); +IkReal x5018=((IkReal(1.00000000000000))*(sj0)); +IkReal x5019=((IkReal(1.00000000000000))*(x5014)); +IkReal x5020=((cj6)*(r01)*(sj5)); +IkReal x5021=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x5019)))+(((r20)*(x5015)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((sj0)*(x5020)))+(((IkReal(-1.00000000000000))*(x5017)*(x5021)))+(((r12)*(x5016)))+(((r00)*(sj0)*(x5015)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x5018)))+(((IkReal(-1.00000000000000))*(r10)*(x5015)*(x5017)))+(IKsin(j3))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x5015)*(x5017)))+(((cj5)*(r12)*(sj0)))+(((r02)*(x5016)))+(((IkReal(-1.00000000000000))*(x5018)*(x5021)))+(((IkReal(-1.00000000000000))*(cj1)*(x5019)))+(((IkReal(-1.00000000000000))*(r10)*(x5015)*(x5018)))+(((IkReal(-1.00000000000000))*(x5017)*(x5020)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst28; +IkReal x5022=(r21)*(r21); +IkReal x5023=(cj5)*(cj5); +IkReal x5024=(sj6)*(sj6); +IkReal x5025=(cj6)*(cj6); +IkReal x5026=(r20)*(r20); +IkReal x5027=((cj6)*(r21)); +IkReal x5028=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x5029=((cj5)*(r22)*(sj5)); +IkReal x5030=((IkReal(1.00000000000000))*(x5024)); +IkReal x5031=((IkReal(1.00000000000000))*(x5025)); +gconst28=IKsign(((((IkReal(-1.00000000000000))*(x5026)*(x5031)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x5022)*(x5030)))+(((IkReal(-1.00000000000000))*(x5023)*(x5026)*(x5030)))+(((IkReal(-2.00000000000000))*(x5027)*(x5029)))+(((x5027)*(x5028)))+(((IkReal(-1.00000000000000))*(x5022)*(x5023)*(x5031)))+(((IkReal(-1.00000000000000))*(x5023)*(x5027)*(x5028)))+(((IkReal(-1.00000000000000))*(x5028)*(x5029))))); +IkReal x5032=(r21)*(r21); +IkReal x5033=(cj5)*(cj5); +IkReal x5034=(sj6)*(sj6); +IkReal x5035=(cj6)*(cj6); +IkReal x5036=(r20)*(r20); +IkReal x5037=((cj6)*(r21)); +IkReal x5038=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x5039=((cj5)*(r22)*(sj5)); +IkReal x5040=((IkReal(1.00000000000000))*(x5034)); +IkReal x5041=((IkReal(1.00000000000000))*(x5035)); +dummyeval[0]=((((x5037)*(x5038)))+(((IkReal(-1.00000000000000))*(x5038)*(x5039)))+(((IkReal(-1.00000000000000))*(x5036)*(x5041)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x5032)*(x5033)*(x5041)))+(((IkReal(-1.00000000000000))*(x5033)*(x5037)*(x5038)))+(((IkReal(-2.00000000000000))*(x5037)*(x5039)))+(((IkReal(-1.00000000000000))*(x5032)*(x5040)))+(((IkReal(-1.00000000000000))*(x5033)*(x5036)*(x5040)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst29; +IkReal x5042=(cj6)*(cj6); +IkReal x5043=(sj6)*(sj6); +IkReal x5044=((IkReal(1.00000000000000))*(r01)); +IkReal x5045=((sj0)*(sj5)); +IkReal x5046=((cj6)*(r22)); +IkReal x5047=((r21)*(sj6)); +IkReal x5048=((r00)*(r21)); +IkReal x5049=((cj0)*(sj5)); +IkReal x5050=((cj6)*(r20)); +IkReal x5051=((r22)*(sj6)); +IkReal x5052=((cj0)*(cj5)); +IkReal x5053=((IkReal(1.00000000000000))*(r10)); +IkReal x5054=((cj5)*(sj0)); +IkReal x5055=((r20)*(x5043)); +IkReal x5056=((x5042)*(x5054)); +gconst29=IKsign(((((r11)*(r20)*(x5042)*(x5052)))+(((r00)*(x5045)*(x5046)))+(((IkReal(-1.00000000000000))*(x5046)*(x5049)*(x5053)))+(((IkReal(-1.00000000000000))*(r12)*(x5047)*(x5049)))+(((r11)*(x5052)*(x5055)))+(((IkReal(-1.00000000000000))*(r20)*(x5044)*(x5056)))+(((r02)*(x5045)*(x5047)))+(((IkReal(-1.00000000000000))*(r21)*(x5042)*(x5052)*(x5053)))+(((IkReal(-1.00000000000000))*(x5044)*(x5045)*(x5051)))+(((IkReal(-1.00000000000000))*(r21)*(x5043)*(x5052)*(x5053)))+(((r12)*(x5049)*(x5050)))+(((IkReal(-1.00000000000000))*(r02)*(x5045)*(x5050)))+(((x5043)*(x5048)*(x5054)))+(((x5048)*(x5056)))+(((IkReal(-1.00000000000000))*(x5044)*(x5054)*(x5055)))+(((r11)*(x5049)*(x5051))))); +IkReal x5057=(cj6)*(cj6); +IkReal x5058=(sj6)*(sj6); +IkReal x5059=((IkReal(1.00000000000000))*(r01)); +IkReal x5060=((sj0)*(sj5)); +IkReal x5061=((cj6)*(r22)); +IkReal x5062=((r21)*(sj6)); +IkReal x5063=((r00)*(r21)); +IkReal x5064=((cj0)*(sj5)); +IkReal x5065=((cj6)*(r20)); +IkReal x5066=((r22)*(sj6)); +IkReal x5067=((cj0)*(cj5)); +IkReal x5068=((IkReal(1.00000000000000))*(r10)); +IkReal x5069=((cj5)*(sj0)); +IkReal x5070=((r20)*(x5058)); +IkReal x5071=((x5057)*(x5069)); +dummyeval[0]=((((r02)*(x5060)*(x5062)))+(((x5058)*(x5063)*(x5069)))+(((IkReal(-1.00000000000000))*(x5061)*(x5064)*(x5068)))+(((r11)*(r20)*(x5057)*(x5067)))+(((IkReal(-1.00000000000000))*(r12)*(x5062)*(x5064)))+(((r11)*(x5064)*(x5066)))+(((r11)*(x5067)*(x5070)))+(((IkReal(-1.00000000000000))*(r02)*(x5060)*(x5065)))+(((x5063)*(x5071)))+(((r00)*(x5060)*(x5061)))+(((r12)*(x5064)*(x5065)))+(((IkReal(-1.00000000000000))*(r21)*(x5058)*(x5067)*(x5068)))+(((IkReal(-1.00000000000000))*(x5059)*(x5069)*(x5070)))+(((IkReal(-1.00000000000000))*(x5059)*(x5060)*(x5066)))+(((IkReal(-1.00000000000000))*(r21)*(x5057)*(x5067)*(x5068)))+(((IkReal(-1.00000000000000))*(r20)*(x5059)*(x5071)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5072=((cj1)*(cj6)); +IkReal x5073=((IkReal(1.00000000000000))*(sj0)); +IkReal x5074=((cj0)*(r10)); +IkReal x5075=((cj1)*(sj5)); +IkReal x5076=((cj1)*(sj6)); +IkReal x5077=((cj0)*(r11)); +if( IKabs(((gconst29)*(((((IkReal(-1.00000000000000))*(x5076)*(x5077)))+(((x5072)*(x5074)))+(((r01)*(sj0)*(x5076)))+(((IkReal(-1.00000000000000))*(r00)*(x5072)*(x5073))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst29)*(((((cj5)*(x5074)*(x5076)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5073)*(x5076)))+(((cj5)*(x5072)*(x5077)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5072)*(x5073)))+(((IkReal(-1.00000000000000))*(r02)*(x5073)*(x5075)))+(((cj0)*(r12)*(x5075))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst29)*(((((IkReal(-1.00000000000000))*(x5076)*(x5077)))+(((x5072)*(x5074)))+(((r01)*(sj0)*(x5076)))+(((IkReal(-1.00000000000000))*(r00)*(x5072)*(x5073)))))), ((gconst29)*(((((cj5)*(x5074)*(x5076)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5073)*(x5076)))+(((cj5)*(x5072)*(x5077)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5072)*(x5073)))+(((IkReal(-1.00000000000000))*(r02)*(x5073)*(x5075)))+(((cj0)*(r12)*(x5075))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x5078=IKsin(j4); +IkReal x5079=IKcos(j4); +IkReal x5080=((r22)*(sj5)); +IkReal x5081=((IkReal(1.00000000000000))*(cj6)); +IkReal x5082=((IkReal(1.00000000000000))*(cj0)); +IkReal x5083=((IkReal(1.00000000000000))*(sj1)); +IkReal x5084=((cj5)*(r11)); +IkReal x5085=((cj5)*(cj6)); +IkReal x5086=((r11)*(sj6)); +IkReal x5087=((IkReal(1.00000000000000))*(sj6)); +IkReal x5088=((cj6)*(r00)); +IkReal x5089=((r12)*(sj5)); +IkReal x5090=((r02)*(sj5)); +IkReal x5091=((cj6)*(r10)); +IkReal x5092=((cj5)*(sj6)); +IkReal x5093=((cj5)*(r01)); +IkReal x5094=((sj0)*(x5078)); +IkReal x5095=((r00)*(x5092)); +IkReal x5096=((cj0)*(x5078)); +IkReal x5097=((sj0)*(x5079)); +IkReal x5098=((r20)*(x5079)); +IkReal x5099=((cj0)*(x5079)); +IkReal x5100=((r21)*(x5078)); +IkReal x5101=((r21)*(x5079)); +IkReal x5102=((r20)*(x5078)); +IkReal x5103=((x5079)*(x5089)); +IkReal x5104=((r01)*(sj6)*(x5079)); +IkReal x5105=((cj5)*(r10)*(x5087)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x5081)*(x5098)))+(((x5085)*(x5100)))+(((x5092)*(x5102)))+(cj1)+(((sj6)*(x5101)))+(((x5078)*(x5080)))); +evalcond[1]=((((x5085)*(x5101)))+(((x5079)*(x5080)))+(((x5092)*(x5098)))+(((IkReal(-1.00000000000000))*(sj3)*(x5083)))+(((IkReal(-1.00000000000000))*(x5087)*(x5100)))+(((cj6)*(x5102)))); +evalcond[2]=((((x5090)*(x5094)))+(((x5091)*(x5099)))+(((r01)*(sj6)*(x5097)))+(((IkReal(-1.00000000000000))*(x5078)*(x5082)*(x5089)))+(((IkReal(-1.00000000000000))*(x5079)*(x5082)*(x5086)))+(((IkReal(-1.00000000000000))*(r00)*(x5081)*(x5097)))+(((r01)*(x5085)*(x5094)))+(((IkReal(-1.00000000000000))*(r10)*(x5078)*(x5082)*(x5092)))+(((IkReal(-1.00000000000000))*(x5081)*(x5084)*(x5096)))+(((x5094)*(x5095)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5082)*(x5103)))+(((IkReal(-1.00000000000000))*(r10)*(x5081)*(x5096)))+(((IkReal(-1.00000000000000))*(x5081)*(x5084)*(x5099)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x5095)*(x5097)))+(((x5086)*(x5096)))+(((IkReal(-1.00000000000000))*(r01)*(x5087)*(x5094)))+(((r01)*(x5085)*(x5097)))+(((x5090)*(x5097)))+(((x5088)*(x5094)))+(((IkReal(-1.00000000000000))*(r10)*(x5079)*(x5082)*(x5092)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5094)*(x5105)))+(((IkReal(-1.00000000000000))*(x5082)*(x5104)))+(((IkReal(-1.00000000000000))*(x5086)*(x5097)))+(((IkReal(-1.00000000000000))*(x5081)*(x5093)*(x5096)))+(((IkReal(-1.00000000000000))*(x5089)*(x5094)))+(((IkReal(-1.00000000000000))*(x5081)*(x5084)*(x5094)))+(((x5091)*(x5097)))+(((x5088)*(x5099)))+(((IkReal(-1.00000000000000))*(x5078)*(x5082)*(x5090)))+(((IkReal(-1.00000000000000))*(x5078)*(x5082)*(x5095)))+(((IkReal(-1.00000000000000))*(x5083)))); +evalcond[5]=((((x5086)*(x5094)))+(((IkReal(-1.00000000000000))*(r00)*(x5081)*(x5096)))+(((IkReal(-1.00000000000000))*(r10)*(x5081)*(x5094)))+(((r01)*(sj6)*(x5096)))+(((IkReal(-1.00000000000000))*(cj1)*(sj3)))+(((IkReal(-1.00000000000000))*(x5081)*(x5093)*(x5099)))+(((IkReal(-1.00000000000000))*(x5079)*(x5082)*(x5090)))+(((IkReal(-1.00000000000000))*(x5079)*(x5082)*(x5095)))+(((IkReal(-1.00000000000000))*(x5081)*(x5084)*(x5097)))+(((IkReal(-1.00000000000000))*(x5097)*(x5105)))+(((IkReal(-1.00000000000000))*(x5089)*(x5097)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5106=((cj1)*(r20)); +IkReal x5107=((cj5)*(sj6)); +IkReal x5108=((sj1)*(sj3)); +IkReal x5109=((r21)*(sj6)); +IkReal x5110=((r22)*(sj5)); +IkReal x5111=((IkReal(1.00000000000000))*(cj6)); +IkReal x5112=((cj5)*(r21)); +if( IKabs(((gconst28)*(((((cj1)*(x5110)))+(((x5106)*(x5107)))+(((IkReal(-1.00000000000000))*(r20)*(x5108)*(x5111)))+(((x5108)*(x5109)))+(((cj1)*(cj6)*(x5112))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst28)*(((((IkReal(-1.00000000000000))*(r20)*(x5107)*(x5108)))+(((IkReal(-1.00000000000000))*(x5108)*(x5111)*(x5112)))+(((IkReal(-1.00000000000000))*(x5108)*(x5110)))+(((cj1)*(x5109)))+(((IkReal(-1.00000000000000))*(x5106)*(x5111))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst28)*(((((cj1)*(x5110)))+(((x5106)*(x5107)))+(((IkReal(-1.00000000000000))*(r20)*(x5108)*(x5111)))+(((x5108)*(x5109)))+(((cj1)*(cj6)*(x5112)))))), ((gconst28)*(((((IkReal(-1.00000000000000))*(r20)*(x5107)*(x5108)))+(((IkReal(-1.00000000000000))*(x5108)*(x5111)*(x5112)))+(((IkReal(-1.00000000000000))*(x5108)*(x5110)))+(((cj1)*(x5109)))+(((IkReal(-1.00000000000000))*(x5106)*(x5111))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x5113=IKsin(j4); +IkReal x5114=IKcos(j4); +IkReal x5115=((r22)*(sj5)); +IkReal x5116=((IkReal(1.00000000000000))*(cj6)); +IkReal x5117=((IkReal(1.00000000000000))*(cj0)); +IkReal x5118=((IkReal(1.00000000000000))*(sj1)); +IkReal x5119=((cj5)*(r11)); +IkReal x5120=((cj5)*(cj6)); +IkReal x5121=((r11)*(sj6)); +IkReal x5122=((IkReal(1.00000000000000))*(sj6)); +IkReal x5123=((cj6)*(r00)); +IkReal x5124=((r12)*(sj5)); +IkReal x5125=((r02)*(sj5)); +IkReal x5126=((cj6)*(r10)); +IkReal x5127=((cj5)*(sj6)); +IkReal x5128=((cj5)*(r01)); +IkReal x5129=((sj0)*(x5113)); +IkReal x5130=((r00)*(x5127)); +IkReal x5131=((cj0)*(x5113)); +IkReal x5132=((sj0)*(x5114)); +IkReal x5133=((r20)*(x5114)); +IkReal x5134=((cj0)*(x5114)); +IkReal x5135=((r21)*(x5113)); +IkReal x5136=((r21)*(x5114)); +IkReal x5137=((r20)*(x5113)); +IkReal x5138=((x5114)*(x5124)); +IkReal x5139=((r01)*(sj6)*(x5114)); +IkReal x5140=((cj5)*(r10)*(x5122)); +evalcond[0]=((((x5127)*(x5137)))+(((x5113)*(x5115)))+(((x5120)*(x5135)))+(cj1)+(((IkReal(-1.00000000000000))*(x5116)*(x5133)))+(((sj6)*(x5136)))); +evalcond[1]=((((cj6)*(x5137)))+(((x5114)*(x5115)))+(((x5127)*(x5133)))+(((IkReal(-1.00000000000000))*(x5122)*(x5135)))+(((x5120)*(x5136)))+(((IkReal(-1.00000000000000))*(sj3)*(x5118)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5113)*(x5117)*(x5124)))+(((IkReal(-1.00000000000000))*(x5116)*(x5119)*(x5131)))+(((x5125)*(x5129)))+(((x5129)*(x5130)))+(((IkReal(-1.00000000000000))*(x5114)*(x5117)*(x5121)))+(((x5126)*(x5134)))+(((r01)*(sj6)*(x5132)))+(((IkReal(-1.00000000000000))*(r10)*(x5113)*(x5117)*(x5127)))+(((r01)*(x5120)*(x5129)))+(((IkReal(-1.00000000000000))*(r00)*(x5116)*(x5132)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x5116)*(x5131)))+(((IkReal(-1.00000000000000))*(r10)*(x5114)*(x5117)*(x5127)))+(((x5130)*(x5132)))+(((IkReal(-1.00000000000000))*(x5117)*(x5138)))+(((IkReal(-1.00000000000000))*(x5116)*(x5119)*(x5134)))+(((x5123)*(x5129)))+(((r01)*(x5120)*(x5132)))+(((x5121)*(x5131)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(r01)*(x5122)*(x5129)))+(((x5125)*(x5132)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5116)*(x5119)*(x5129)))+(((IkReal(-1.00000000000000))*(x5129)*(x5140)))+(((IkReal(-1.00000000000000))*(x5113)*(x5117)*(x5125)))+(((x5126)*(x5132)))+(((IkReal(-1.00000000000000))*(x5117)*(x5139)))+(((IkReal(-1.00000000000000))*(x5113)*(x5117)*(x5130)))+(((IkReal(-1.00000000000000))*(x5124)*(x5129)))+(((IkReal(-1.00000000000000))*(x5121)*(x5132)))+(((IkReal(-1.00000000000000))*(x5118)))+(((x5123)*(x5134)))+(((IkReal(-1.00000000000000))*(x5116)*(x5128)*(x5131)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5116)*(x5128)*(x5134)))+(((IkReal(-1.00000000000000))*(x5114)*(x5117)*(x5125)))+(((IkReal(-1.00000000000000))*(x5114)*(x5117)*(x5130)))+(((IkReal(-1.00000000000000))*(x5116)*(x5119)*(x5132)))+(((IkReal(-1.00000000000000))*(r00)*(x5116)*(x5131)))+(((x5121)*(x5129)))+(((IkReal(-1.00000000000000))*(r10)*(x5116)*(x5129)))+(((IkReal(-1.00000000000000))*(cj1)*(sj3)))+(((IkReal(-1.00000000000000))*(x5132)*(x5140)))+(((r01)*(sj6)*(x5131)))+(((IkReal(-1.00000000000000))*(x5124)*(x5132)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5141=((IkReal(1.00000000000000))*(sj1)); +IkReal x5142=((cj0)*(cj1)); +IkReal x5143=((cj1)*(sj0)); +IkReal x5144=((cj5)*(sj6)); +IkReal x5145=((cj5)*(cj6)); +IkReal x5146=((sj6)*(x5142)); +IkReal x5147=((cj6)*(x5143)); +if( IKabs(((gconst27)*(((((IkReal(-1.00000000000000))*(r11)*(sj6)*(x5143)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(x5141)))+(((r10)*(x5147)))+(((IkReal(-1.00000000000000))*(r01)*(x5146)))+(((cj6)*(r00)*(x5142)))+(((r21)*(sj1)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst27)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x5141)))+(((r01)*(x5142)*(x5145)))+(((r12)*(sj5)*(x5143)))+(((IkReal(-1.00000000000000))*(r20)*(x5141)*(x5144)))+(((r11)*(x5143)*(x5145)))+(((r00)*(x5142)*(x5144)))+(((r02)*(sj5)*(x5142)))+(((IkReal(-1.00000000000000))*(r21)*(x5141)*(x5145)))+(((r10)*(x5143)*(x5144))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst27)*(((((IkReal(-1.00000000000000))*(r11)*(sj6)*(x5143)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(x5141)))+(((r10)*(x5147)))+(((IkReal(-1.00000000000000))*(r01)*(x5146)))+(((cj6)*(r00)*(x5142)))+(((r21)*(sj1)*(sj6)))))), ((gconst27)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x5141)))+(((r01)*(x5142)*(x5145)))+(((r12)*(sj5)*(x5143)))+(((IkReal(-1.00000000000000))*(r20)*(x5141)*(x5144)))+(((r11)*(x5143)*(x5145)))+(((r00)*(x5142)*(x5144)))+(((r02)*(sj5)*(x5142)))+(((IkReal(-1.00000000000000))*(r21)*(x5141)*(x5145)))+(((r10)*(x5143)*(x5144))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x5148=IKsin(j4); +IkReal x5149=IKcos(j4); +IkReal x5150=((r00)*(sj6)); +IkReal x5151=((cj6)*(r01)); +IkReal x5152=((IkReal(1.00000000000000))*(cj0)); +IkReal x5153=((IkReal(1.00000000000000))*(sj0)); +IkReal x5154=((r10)*(sj6)); +IkReal x5155=((sj5)*(x5148)); +IkReal x5156=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x5157=((cj5)*(x5148)); +IkReal x5158=((cj6)*(x5149)); +IkReal x5159=((sj0)*(x5157)); +IkReal x5160=((r01)*(sj6)*(x5149)); +IkReal x5161=((r11)*(sj6)*(x5149)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r20)*(x5158)))+(((r21)*(sj6)*(x5149)))+(((r20)*(sj6)*(x5157)))+(cj1)+(((r22)*(x5155)))+(((cj6)*(r21)*(x5157)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r00)*(x5153)*(x5158)))+(((IkReal(-1.00000000000000))*(r12)*(x5152)*(x5155)))+(((IkReal(-1.00000000000000))*(x5152)*(x5154)*(x5157)))+(((x5150)*(x5159)))+(((x5151)*(x5159)))+(((cj0)*(r10)*(x5158)))+(((r02)*(sj0)*(x5155)))+(((sj0)*(x5160)))+(((IkReal(-1.00000000000000))*(x5152)*(x5161)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5152)*(x5157)))); +evalcond[2]=((((r10)*(sj0)*(x5158)))+(((cj0)*(r00)*(x5158)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5153)*(x5157)))+(((IkReal(-1.00000000000000))*(x5151)*(x5152)*(x5157)))+(((IkReal(-1.00000000000000))*(x5152)*(x5160)))+(((IkReal(-1.00000000000000))*(x5153)*(x5154)*(x5157)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(x5150)*(x5152)*(x5157)))+(((IkReal(-1.00000000000000))*(r02)*(x5152)*(x5155)))+(((IkReal(-1.00000000000000))*(r12)*(x5153)*(x5155)))+(((IkReal(-1.00000000000000))*(x5153)*(x5161)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst30; +gconst30=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x5162=((IkReal(1.00000000000000))*(cj0)); +IkReal x5163=((cj4)*(sj6)); +IkReal x5164=((sj0)*(sj6)); +IkReal x5165=((cj5)*(sj4)); +IkReal x5166=((IkReal(0.374290000000000))*(sj5)); +IkReal x5167=((sj4)*(sj5)); +IkReal x5168=((cj0)*(cj6)); +IkReal x5169=((IkReal(0.0100000000000000))*(cj5)); +IkReal x5170=((cj4)*(sj5)); +IkReal x5171=((cj5)*(sj0)); +IkReal x5172=((IkReal(0.374290000000000))*(r02)); +IkReal x5173=((r20)*(sj6)); +IkReal x5174=((cj6)*(r21)); +IkReal x5175=((IkReal(1.00000000000000))*(sj0)); +IkReal x5176=((cj0)*(sj6)); +IkReal x5177=((cj4)*(cj6)); +IkReal x5178=((IkReal(0.374290000000000))*(r12)); +IkReal x5179=((cj0)*(cj5)); +IkReal x5180=((cj6)*(sj5)); +IkReal x5181=((cj6)*(r01)); +IkReal x5182=((r00)*(sj6)); +IkReal x5183=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5184=((cj6)*(r11)); +IkReal x5185=((IkReal(1.00000000000000))*(r10)); +IkReal x5186=((r02)*(sj0)); +IkReal x5187=((cj6)*(sj4)); +IkReal x5188=((r12)*(x5175)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x5177)))+(((r21)*(x5163)))+(((x5165)*(x5173)))+(((r22)*(x5167)))+(((x5165)*(x5174)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x5166)*(x5174)))+(((IkReal(-1.00000000000000))*(x5169)*(x5174)))+(((IkReal(-1.00000000000000))*(x5169)*(x5173)))+(((IkReal(-1.00000000000000))*(r22)*(x5183)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x5166)*(x5173)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x5164)*(x5185)))+(((IkReal(-1.00000000000000))*(sj5)*(x5162)*(x5182)))+(((r02)*(x5179)))+(((IkReal(-1.00000000000000))*(r01)*(x5162)*(x5180)))+(((IkReal(-1.00000000000000))*(r11)*(x5175)*(x5180)))+(((r12)*(x5171)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r11)*(x5162)*(x5163)))+(((cj4)*(r10)*(x5168)))+(((x5167)*(x5186)))+(((IkReal(-1.00000000000000))*(x5162)*(x5165)*(x5184)))+(((r00)*(x5164)*(x5165)))+(((IkReal(-1.00000000000000))*(r00)*(x5175)*(x5177)))+(((r01)*(sj0)*(x5163)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x5162)*(x5165)))+(((sj0)*(x5165)*(x5181)))+(((IkReal(-1.00000000000000))*(r12)*(x5162)*(x5167)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x5162)*(x5163)))+(((IkReal(-1.00000000000000))*(x5162)*(x5165)*(x5181)))+(((IkReal(-1.00000000000000))*(r02)*(x5162)*(x5167)))+(((r10)*(sj0)*(x5177)))+(((IkReal(-1.00000000000000))*(x5165)*(x5175)*(x5184)))+(((IkReal(-1.00000000000000))*(x5167)*(x5188)))+(((IkReal(-1.00000000000000))*(x5162)*(x5165)*(x5182)))+(((cj4)*(r00)*(x5168)))+(((IkReal(-1.00000000000000))*(r11)*(x5163)*(x5175)))+(((IkReal(-1.00000000000000))*(x5164)*(x5165)*(x5185)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r11)*(x5168)*(x5169)))+(((r10)*(x5169)*(x5176)))+(((IkReal(-1.00000000000000))*(py)*(x5162)))+(((IkReal(-1.00000000000000))*(r10)*(x5166)*(x5176)))+(((r00)*(x5164)*(x5166)))+(((x5178)*(x5179)))+(((IkReal(-1.00000000000000))*(x5171)*(x5172)))+(((cj0)*(r12)*(x5183)))+(((IkReal(-1.00000000000000))*(r11)*(x5166)*(x5168)))+(((IkReal(-1.00000000000000))*(r00)*(x5164)*(x5169)))+(((IkReal(-1.00000000000000))*(x5183)*(x5186)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x5169)*(x5181)))+(((sj0)*(x5166)*(x5181)))); +evalcond[7]=((((r01)*(sj4)*(x5176)))+(((IkReal(-1.00000000000000))*(r10)*(x5175)*(x5187)))+(((IkReal(-1.00000000000000))*(x5170)*(x5188)))+(((IkReal(-1.00000000000000))*(r11)*(x5171)*(x5177)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5162)*(x5163)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5162)*(x5177)))+(((IkReal(-1.00000000000000))*(x5163)*(x5171)*(x5185)))+(((IkReal(-1.00000000000000))*(r00)*(x5162)*(x5187)))+(((r11)*(sj4)*(x5164)))+(((IkReal(-1.00000000000000))*(r02)*(x5162)*(x5170)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x5166)*(x5168)))+(((r12)*(sj0)*(x5183)))+(((IkReal(-1.00000000000000))*(r00)*(x5166)*(x5176)))+(((r00)*(x5169)*(x5176)))+(((r01)*(x5168)*(x5169)))+(((r10)*(x5164)*(x5169)))+(((IkReal(-1.00000000000000))*(px)*(x5162)))+(((sj0)*(x5169)*(x5184)))+(((cj0)*(r02)*(x5183)))+(((IkReal(-1.00000000000000))*(r10)*(x5164)*(x5166)))+(((IkReal(-1.00000000000000))*(py)*(x5175)))+(((IkReal(-1.00000000000000))*(sj0)*(x5166)*(x5184)))+(((x5172)*(x5179)))+(((x5171)*(x5178)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5189=((r20)*(sj6)); +IkReal x5190=((cj4)*(cj5)); +IkReal x5191=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5189)*(x5190)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5190)*(x5191))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x5189)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5191))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5189)*(x5190)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5190)*(x5191)))))+IKsqr(((((sj5)*(x5189)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5191)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5189)*(x5190)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5190)*(x5191)))), ((((sj5)*(x5189)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5191))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5192=IKsin(j3); +IkReal x5193=((sj0)*(sj5)); +IkReal x5194=((r00)*(sj6)); +IkReal x5195=((cj6)*(r01)); +IkReal x5196=((cj5)*(sj0)); +IkReal x5197=((cj0)*(cj5)); +IkReal x5198=((cj6)*(sj4)); +IkReal x5199=((sj4)*(sj6)); +IkReal x5200=((cj0)*(r11)); +IkReal x5201=((cj4)*(cj6)); +IkReal x5202=((cj4)*(sj6)); +IkReal x5203=((IkReal(1.00000000000000))*(cj0)); +IkReal x5204=((cj4)*(sj5)); +IkReal x5205=((sj5)*(sj6)); +IkReal x5206=((cj6)*(sj5)); +IkReal x5207=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(x5207)))+(((r21)*(x5206)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x5205)))); +evalcond[1]=((((cj5)*(r21)*(x5201)))+(((cj5)*(r20)*(x5202)))+(((IkReal(-1.00000000000000))*(r21)*(x5199)))+(((r22)*(x5204)))+(((IkReal(-1.00000000000000))*(x5192)))+(((r20)*(x5198)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5200)*(x5206)))+(x5192)+(((r12)*(x5197)))+(((IkReal(-1.00000000000000))*(r10)*(x5203)*(x5205)))+(((x5193)*(x5194)))+(((IkReal(-1.00000000000000))*(r02)*(x5196)))+(((x5193)*(x5195)))); +evalcond[3]=((((x5199)*(x5200)))+(((cj4)*(x5195)*(x5196)))+(((IkReal(-1.00000000000000))*(r11)*(x5197)*(x5201)))+(((IkReal(-1.00000000000000))*(r10)*(x5197)*(x5202)))+(((IkReal(-1.00000000000000))*(x5207)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x5199)))+(((IkReal(-1.00000000000000))*(r10)*(x5198)*(x5203)))+(((cj4)*(r02)*(x5193)))+(((IkReal(-1.00000000000000))*(r12)*(x5203)*(x5204)))+(((cj4)*(x5194)*(x5196)))+(((r00)*(sj0)*(x5198)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5208=((IkReal(1.00000000000000))*(cj0)); +IkReal x5209=((cj4)*(sj6)); +IkReal x5210=((sj0)*(sj6)); +IkReal x5211=((cj5)*(sj4)); +IkReal x5212=((IkReal(0.374290000000000))*(sj5)); +IkReal x5213=((sj4)*(sj5)); +IkReal x5214=((cj0)*(cj6)); +IkReal x5215=((IkReal(0.0100000000000000))*(cj5)); +IkReal x5216=((cj4)*(sj5)); +IkReal x5217=((cj5)*(sj0)); +IkReal x5218=((IkReal(0.374290000000000))*(r02)); +IkReal x5219=((r20)*(sj6)); +IkReal x5220=((cj6)*(r21)); +IkReal x5221=((IkReal(1.00000000000000))*(sj0)); +IkReal x5222=((cj0)*(sj6)); +IkReal x5223=((cj4)*(cj6)); +IkReal x5224=((IkReal(0.374290000000000))*(r12)); +IkReal x5225=((cj0)*(cj5)); +IkReal x5226=((cj6)*(sj5)); +IkReal x5227=((cj6)*(r01)); +IkReal x5228=((r00)*(sj6)); +IkReal x5229=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5230=((cj6)*(r11)); +IkReal x5231=((IkReal(1.00000000000000))*(r10)); +IkReal x5232=((r02)*(sj0)); +IkReal x5233=((cj6)*(sj4)); +IkReal x5234=((r12)*(x5221)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x5223)))+(((x5211)*(x5220)))+(((r22)*(x5213)))+(((r21)*(x5209)))+(((x5211)*(x5219)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(r22)*(x5229)))+(((IkReal(-1.00000000000000))*(x5215)*(x5220)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x5215)*(x5219)))+(pz)+(((x5212)*(x5219)))+(((x5212)*(x5220)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x5210)*(x5231)))+(((IkReal(-1.00000000000000))*(r01)*(x5208)*(x5226)))+(((IkReal(-1.00000000000000))*(r11)*(x5221)*(x5226)))+(((r12)*(x5217)))+(((r02)*(x5225)))+(((IkReal(-1.00000000000000))*(sj5)*(x5208)*(x5228)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x5208)*(x5213)))+(((r01)*(sj0)*(x5209)))+(((IkReal(-1.00000000000000))*(x5208)*(x5211)*(x5230)))+(((sj0)*(x5211)*(x5227)))+(((IkReal(-1.00000000000000))*(r00)*(x5221)*(x5223)))+(((IkReal(-1.00000000000000))*(r11)*(x5208)*(x5209)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x5208)*(x5211)))+(((cj4)*(r10)*(x5214)))+(((r00)*(x5210)*(x5211)))+(((x5213)*(x5232)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x5208)*(x5211)*(x5228)))+(((IkReal(-1.00000000000000))*(r01)*(x5208)*(x5209)))+(((IkReal(-1.00000000000000))*(r02)*(x5208)*(x5213)))+(((IkReal(-1.00000000000000))*(r11)*(x5209)*(x5221)))+(((IkReal(-1.00000000000000))*(x5210)*(x5211)*(x5231)))+(((IkReal(-1.00000000000000))*(x5208)*(x5211)*(x5227)))+(((IkReal(-1.00000000000000))*(x5211)*(x5221)*(x5230)))+(((r10)*(sj0)*(x5223)))+(((cj4)*(r00)*(x5214)))+(((IkReal(-1.00000000000000))*(x5213)*(x5234)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x5208)))+(((r11)*(x5214)*(x5215)))+(((IkReal(-1.00000000000000))*(r00)*(x5210)*(x5215)))+(((IkReal(-1.00000000000000))*(x5229)*(x5232)))+(((IkReal(-1.00000000000000))*(x5217)*(x5218)))+(((IkReal(-1.00000000000000))*(sj0)*(x5215)*(x5227)))+(((r00)*(x5210)*(x5212)))+(((cj0)*(r12)*(x5229)))+(((IkReal(-1.00000000000000))*(r11)*(x5212)*(x5214)))+(((IkReal(-1.00000000000000))*(r10)*(x5212)*(x5222)))+(((x5224)*(x5225)))+(((px)*(sj0)))+(((sj0)*(x5212)*(x5227)))+(((r10)*(x5215)*(x5222)))); +evalcond[7]=((((r11)*(sj4)*(x5210)))+(((IkReal(-1.00000000000000))*(r11)*(x5217)*(x5223)))+(((IkReal(-1.00000000000000))*(r10)*(x5221)*(x5233)))+(((IkReal(-1.00000000000000))*(r02)*(x5208)*(x5216)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5208)*(x5223)))+(((r01)*(sj4)*(x5222)))+(((IkReal(-1.00000000000000))*(x5216)*(x5234)))+(((IkReal(-1.00000000000000))*(x5209)*(x5217)*(x5231)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5208)*(x5209)))+(((IkReal(-1.00000000000000))*(r00)*(x5208)*(x5233)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r01)*(x5214)*(x5215)))+(((IkReal(-1.00000000000000))*(r01)*(x5212)*(x5214)))+(((sj0)*(x5215)*(x5230)))+(((r10)*(x5210)*(x5215)))+(((IkReal(-1.00000000000000))*(px)*(x5208)))+(((IkReal(-1.00000000000000))*(sj0)*(x5212)*(x5230)))+(((r00)*(x5215)*(x5222)))+(((IkReal(-1.00000000000000))*(r00)*(x5212)*(x5222)))+(((cj0)*(r02)*(x5229)))+(((r12)*(sj0)*(x5229)))+(((IkReal(-1.00000000000000))*(py)*(x5221)))+(((x5217)*(x5224)))+(((IkReal(-1.00000000000000))*(r10)*(x5210)*(x5212)))+(((x5218)*(x5225)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5235=((IkReal(1.00000000000000))*(sj5)); +IkReal x5236=((cj6)*(r21)); +IkReal x5237=((r20)*(sj6)); +IkReal x5238=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5235)))+(((IkReal(-1.00000000000000))*(x5237)*(x5238)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5236)*(x5238)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x5235)*(x5236)))+(((IkReal(-1.00000000000000))*(x5235)*(x5237)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5235)))+(((IkReal(-1.00000000000000))*(x5237)*(x5238)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5236)*(x5238)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x5235)*(x5236)))+(((IkReal(-1.00000000000000))*(x5235)*(x5237)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5235)))+(((IkReal(-1.00000000000000))*(x5237)*(x5238)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5236)*(x5238)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x5235)*(x5236)))+(((IkReal(-1.00000000000000))*(x5235)*(x5237)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5239=IKsin(j3); +IkReal x5240=IKcos(j3); +IkReal x5241=((sj0)*(sj5)); +IkReal x5242=((r00)*(sj6)); +IkReal x5243=((cj6)*(r01)); +IkReal x5244=((cj0)*(cj5)); +IkReal x5245=((IkReal(1.00000000000000))*(cj5)); +IkReal x5246=((cj4)*(cj5)); +IkReal x5247=((cj6)*(sj4)); +IkReal x5248=((sj4)*(sj6)); +IkReal x5249=((cj0)*(r11)); +IkReal x5250=((IkReal(1.00000000000000))*(cj4)); +IkReal x5251=((cj6)*(r21)); +IkReal x5252=((r20)*(sj6)); +IkReal x5253=((cj0)*(sj5)); +IkReal x5254=((r10)*(sj6)); +evalcond[0]=((x5240)+(((IkReal(-1.00000000000000))*(r22)*(x5245)))+(((sj5)*(x5251)))+(((sj5)*(x5252)))); +evalcond[1]=((((x5246)*(x5252)))+(x5239)+(((cj4)*(r22)*(sj5)))+(((r20)*(x5247)))+(((x5246)*(x5251)))+(((IkReal(-1.00000000000000))*(r21)*(x5248)))); +evalcond[2]=((x5239)+(((r12)*(x5244)))+(((IkReal(-1.00000000000000))*(x5253)*(x5254)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x5249)))+(((x5241)*(x5242)))+(((x5241)*(x5243)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x5245)))); +evalcond[3]=((((sj0)*(x5242)*(x5246)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x5248)))+(((r00)*(sj0)*(x5247)))+(((IkReal(-1.00000000000000))*(x5244)*(x5250)*(x5254)))+(((sj0)*(x5243)*(x5246)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x5247)))+(((IkReal(-1.00000000000000))*(r12)*(x5250)*(x5253)))+(((x5248)*(x5249)))+(((IkReal(-1.00000000000000))*(x5240)))+(((cj4)*(r02)*(x5241)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5244)*(x5250)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5255=((IkReal(1.00000000000000))*(cj0)); +IkReal x5256=((cj4)*(sj6)); +IkReal x5257=((sj0)*(sj4)); +IkReal x5258=((cj5)*(sj6)); +IkReal x5259=((sj4)*(sj5)); +IkReal x5260=((r12)*(sj5)); +IkReal x5261=((IkReal(0.374290000000000))*(cj5)); +IkReal x5262=((r02)*(sj0)); +IkReal x5263=((r20)*(sj4)); +IkReal x5264=((IkReal(1.00000000000000))*(sj0)); +IkReal x5265=((IkReal(1.00000000000000))*(cj5)); +IkReal x5266=((cj0)*(r10)); +IkReal x5267=((cj4)*(cj6)); +IkReal x5268=((r00)*(sj0)); +IkReal x5269=((cj6)*(r21)); +IkReal x5270=((IkReal(0.374290000000000))*(sj5)); +IkReal x5271=((cj0)*(r00)); +IkReal x5272=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5273=((cj0)*(r02)); +IkReal x5274=((cj5)*(sj4)); +IkReal x5275=((cj6)*(r01)); +IkReal x5276=((cj6)*(r11)); +IkReal x5277=((r01)*(sj0)); +IkReal x5278=((r10)*(sj0)); +IkReal x5279=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x5280=((sj6)*(x5270)); +IkReal x5281=((cj0)*(cj6)*(x5270)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x5269)))+(((r20)*(sj5)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(x5265)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x5258)*(x5263)))+(((IkReal(-1.00000000000000))*(r20)*(x5267)))+(((x5269)*(x5274)))+(((r21)*(x5256)))+(((r22)*(x5259)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x5272)))+(((r20)*(x5280)))+(((IkReal(-0.0100000000000000))*(r20)*(x5258)))+(((IkReal(-0.0100000000000000))*(cj5)*(x5269)))+(pz)+(((x5269)*(x5270)))+(((IkReal(-1.00000000000000))*(r22)*(x5261)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x5263)))+(((cj5)*(r21)*(x5267)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x5256)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x5255)*(x5259)))+(((r02)*(sj5)*(x5257)))+(((x5266)*(x5267)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x5255)*(x5258)))+(((r00)*(x5257)*(x5258)))+(((IkReal(-1.00000000000000))*(r11)*(x5255)*(x5256)))+(((cj5)*(x5257)*(x5275)))+(((x5256)*(x5277)))+(((IkReal(-1.00000000000000))*(r00)*(x5264)*(x5267)))+(((IkReal(-1.00000000000000))*(x5255)*(x5274)*(x5276)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r11)*(x5256)*(x5264)))+(((IkReal(-1.00000000000000))*(r10)*(x5257)*(x5258)))+(((IkReal(-1.00000000000000))*(x5257)*(x5260)))+(((IkReal(-1.00000000000000))*(r02)*(x5255)*(x5259)))+(((IkReal(-1.00000000000000))*(x5257)*(x5265)*(x5276)))+(((x5267)*(x5271)))+(((IkReal(-1.00000000000000))*(x5255)*(x5274)*(x5275)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x5255)*(x5258)))+(((IkReal(-1.00000000000000))*(r01)*(x5255)*(x5256)))+(((x5267)*(x5278)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((cj0)*(r12)*(x5261)))+(((IkReal(-0.0100000000000000))*(x5258)*(x5268)))+(((IkReal(-1.00000000000000))*(x5266)*(x5280)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5276)))+(((x5268)*(x5280)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x5275)))+(((sj0)*(x5270)*(x5275)))+(((IkReal(0.0100000000000000))*(x5258)*(x5266)))+(((IkReal(-1.00000000000000))*(py)*(x5255)))+(((IkReal(-1.00000000000000))*(cj0)*(x5270)*(x5276)))+(((IkReal(-1.00000000000000))*(x5262)*(x5272)))+(((IkReal(0.0100000000000000))*(cj0)*(x5260)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x5261)*(x5262)))); +evalcond[8]=((IkReal(0.433420000000000))+(((r12)*(sj0)*(x5261)))+(((IkReal(0.0100000000000000))*(x5258)*(x5278)))+(((IkReal(-1.00000000000000))*(sj0)*(x5270)*(x5276)))+(((IkReal(-1.00000000000000))*(py)*(x5264)))+(((IkReal(-1.00000000000000))*(px)*(x5255)))+(((x5272)*(x5273)))+(((IkReal(-1.00000000000000))*(x5271)*(x5280)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x5276)))+(((x5261)*(x5273)))+(((IkReal(-1.00000000000000))*(x5278)*(x5280)))+(((IkReal(-1.00000000000000))*(cj0)*(x5270)*(x5275)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5275)))+(((IkReal(0.0100000000000000))*(sj0)*(x5260)))+(((IkReal(0.0100000000000000))*(x5258)*(x5271)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5282=((cj5)*(r02)); +IkReal x5283=((cj0)*(sj5)); +IkReal x5284=((r10)*(sj6)); +IkReal x5285=((IkReal(1.00000000000000))*(cj6)); +IkReal x5286=((sj0)*(sj5)); +IkReal x5287=((cj5)*(r12)); +IkReal x5288=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(x5286)*(x5288)))+(((IkReal(-1.00000000000000))*(cj0)*(x5287)))+(((sj0)*(x5282)))+(((IkReal(-1.00000000000000))*(r01)*(x5285)*(x5286)))+(((cj6)*(r11)*(x5283)))+(((x5283)*(x5284))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x5283)*(x5288)))+(((sj0)*(x5287)))+(((IkReal(-1.00000000000000))*(r11)*(x5285)*(x5286)))+(((IkReal(-1.00000000000000))*(r01)*(x5283)*(x5285)))+(((cj0)*(x5282)))+(((IkReal(-1.00000000000000))*(x5284)*(x5286))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x5286)*(x5288)))+(((IkReal(-1.00000000000000))*(cj0)*(x5287)))+(((sj0)*(x5282)))+(((IkReal(-1.00000000000000))*(r01)*(x5285)*(x5286)))+(((cj6)*(r11)*(x5283)))+(((x5283)*(x5284)))))+IKsqr(((((IkReal(-1.00000000000000))*(x5283)*(x5288)))+(((sj0)*(x5287)))+(((IkReal(-1.00000000000000))*(r11)*(x5285)*(x5286)))+(((IkReal(-1.00000000000000))*(r01)*(x5283)*(x5285)))+(((cj0)*(x5282)))+(((IkReal(-1.00000000000000))*(x5284)*(x5286)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x5286)*(x5288)))+(((IkReal(-1.00000000000000))*(cj0)*(x5287)))+(((sj0)*(x5282)))+(((IkReal(-1.00000000000000))*(r01)*(x5285)*(x5286)))+(((cj6)*(r11)*(x5283)))+(((x5283)*(x5284)))), ((((IkReal(-1.00000000000000))*(x5283)*(x5288)))+(((sj0)*(x5287)))+(((IkReal(-1.00000000000000))*(r11)*(x5285)*(x5286)))+(((IkReal(-1.00000000000000))*(r01)*(x5283)*(x5285)))+(((cj0)*(x5282)))+(((IkReal(-1.00000000000000))*(x5284)*(x5286))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5289=IKsin(j3); +IkReal x5290=((sj0)*(sj5)); +IkReal x5291=((r00)*(sj6)); +IkReal x5292=((IkReal(1.00000000000000))*(cj4)); +IkReal x5293=((cj6)*(sj0)); +IkReal x5294=((r00)*(sj4)); +IkReal x5295=((cj0)*(cj5)); +IkReal x5296=((cj6)*(r01)); +IkReal x5297=((cj5)*(sj0)); +IkReal x5298=((cj0)*(sj5)); +IkReal x5299=((cj6)*(r11)); +IkReal x5300=((r10)*(sj6)); +IkReal x5301=((r10)*(sj4)); +IkReal x5302=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x5303=((cj0)*(sj4)*(sj6)); +IkReal x5304=((sj0)*(sj4)*(sj6)); +IkReal x5305=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((x5289)+(((r12)*(x5295)))+(((x5290)*(x5296)))+(((IkReal(-1.00000000000000))*(r02)*(x5297)))+(((IkReal(-1.00000000000000))*(x5298)*(x5299)))+(((IkReal(-1.00000000000000))*(x5298)*(x5300)))+(((x5290)*(x5291)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5296)*(x5298)))+(((r12)*(x5297)))+(((IkReal(-1.00000000000000))*(x5290)*(x5300)))+(((IkReal(-1.00000000000000))*(x5290)*(x5299)))+(((IkReal(-1.00000000000000))*(x5302)))+(((IkReal(-1.00000000000000))*(x5291)*(x5298)))+(((r02)*(x5295)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x5292)*(x5298)))+(((cj4)*(cj5)*(r01)*(x5293)))+(((IkReal(-1.00000000000000))*(x5301)*(x5305)))+(((cj4)*(r02)*(x5290)))+(((cj4)*(x5291)*(x5297)))+(((x5293)*(x5294)))+(((IkReal(-1.00000000000000))*(x5302)))+(((r11)*(x5303)))+(((IkReal(-1.00000000000000))*(x5292)*(x5295)*(x5300)))+(((IkReal(-1.00000000000000))*(r01)*(x5304)))+(((IkReal(-1.00000000000000))*(x5292)*(x5295)*(x5299)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5292)*(x5297)*(x5300)))+(((IkReal(-1.00000000000000))*(x5291)*(x5292)*(x5295)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x5292)*(x5293)))+(((r11)*(x5304)))+(((r01)*(x5303)))+(((IkReal(-1.00000000000000))*(x5294)*(x5305)))+(((IkReal(-1.00000000000000))*(x5293)*(x5301)))+(((IkReal(-1.00000000000000))*(r12)*(x5290)*(x5292)))+(((IkReal(-1.00000000000000))*(x5289)))+(((IkReal(-1.00000000000000))*(x5292)*(x5295)*(x5296)))+(((IkReal(-1.00000000000000))*(r02)*(x5292)*(x5298)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5306=((IkReal(1.00000000000000))*(cj0)); +IkReal x5307=((cj4)*(sj6)); +IkReal x5308=((sj0)*(sj4)); +IkReal x5309=((cj5)*(sj6)); +IkReal x5310=((sj4)*(sj5)); +IkReal x5311=((r12)*(sj5)); +IkReal x5312=((IkReal(0.374290000000000))*(cj5)); +IkReal x5313=((r02)*(sj0)); +IkReal x5314=((r20)*(sj4)); +IkReal x5315=((IkReal(1.00000000000000))*(sj0)); +IkReal x5316=((IkReal(1.00000000000000))*(cj5)); +IkReal x5317=((cj0)*(r10)); +IkReal x5318=((cj4)*(cj6)); +IkReal x5319=((r00)*(sj0)); +IkReal x5320=((cj6)*(r21)); +IkReal x5321=((IkReal(0.374290000000000))*(sj5)); +IkReal x5322=((cj0)*(r00)); +IkReal x5323=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5324=((cj0)*(r02)); +IkReal x5325=((cj5)*(sj4)); +IkReal x5326=((cj6)*(r01)); +IkReal x5327=((cj6)*(r11)); +IkReal x5328=((r01)*(sj0)); +IkReal x5329=((r10)*(sj0)); +IkReal x5330=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x5331=((sj6)*(x5321)); +IkReal x5332=((cj0)*(cj6)*(x5321)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x5316)))+(((sj5)*(x5320)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x5318)))+(((r21)*(x5307)))+(((x5320)*(x5325)))+(((r22)*(x5310)))+(((x5309)*(x5314)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x5323)))+(((IkReal(-1.00000000000000))*(r22)*(x5312)))+(((IkReal(-0.0100000000000000))*(r20)*(x5309)))+(((IkReal(-0.0100000000000000))*(cj5)*(x5320)))+(((x5320)*(x5321)))+(pz)+(((r20)*(x5331)))); +evalcond[4]=((((cj5)*(r20)*(x5307)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x5314)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x5318)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x5306)*(x5310)))+(((IkReal(-1.00000000000000))*(r11)*(x5306)*(x5307)))+(((r02)*(sj5)*(x5308)))+(((IkReal(-1.00000000000000))*(r00)*(x5315)*(x5318)))+(((x5307)*(x5328)))+(((r00)*(x5308)*(x5309)))+(((IkReal(-1.00000000000000))*(x5306)*(x5325)*(x5327)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x5306)*(x5309)))+(((x5317)*(x5318)))+(((cj5)*(x5308)*(x5326)))); +evalcond[6]=((((x5318)*(x5322)))+(((IkReal(-1.00000000000000))*(x5308)*(x5311)))+(((IkReal(-1.00000000000000))*(x5308)*(x5316)*(x5327)))+(((IkReal(-1.00000000000000))*(r10)*(x5308)*(x5309)))+(((IkReal(-1.00000000000000))*(r02)*(x5306)*(x5310)))+(((IkReal(-1.00000000000000))*(x5306)*(x5325)*(x5326)))+(((IkReal(-1.00000000000000))*(r11)*(x5307)*(x5315)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x5306)*(x5309)))+(((IkReal(-1.00000000000000))*(r01)*(x5306)*(x5307)))+(((x5318)*(x5329)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((sj0)*(x5321)*(x5326)))+(((x5319)*(x5331)))+(((cj0)*(r12)*(x5312)))+(((IkReal(-1.00000000000000))*(x5312)*(x5313)))+(((IkReal(0.0100000000000000))*(x5309)*(x5317)))+(((IkReal(-1.00000000000000))*(x5313)*(x5323)))+(((IkReal(-0.0100000000000000))*(x5309)*(x5319)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5327)))+(((IkReal(-1.00000000000000))*(py)*(x5306)))+(((IkReal(0.0100000000000000))*(cj0)*(x5311)))+(((IkReal(-1.00000000000000))*(x5317)*(x5331)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x5326)))+(((IkReal(-1.00000000000000))*(cj0)*(x5321)*(x5327)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(x5309)*(x5322)))+(((IkReal(-1.00000000000000))*(cj0)*(x5321)*(x5326)))+(((x5312)*(x5324)))+(((IkReal(-1.00000000000000))*(py)*(x5315)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x5327)))+(((IkReal(-1.00000000000000))*(sj0)*(x5321)*(x5327)))+(((IkReal(-1.00000000000000))*(x5329)*(x5331)))+(((x5323)*(x5324)))+(((IkReal(-1.00000000000000))*(x5322)*(x5331)))+(((IkReal(0.0100000000000000))*(sj0)*(x5311)))+(((IkReal(-1.00000000000000))*(px)*(x5306)))+(((r12)*(sj0)*(x5312)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5326)))+(((IkReal(0.0100000000000000))*(x5309)*(x5329)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5333=((IkReal(1.00000000000000))*(cj5)); +IkReal x5334=((r10)*(sj5)*(sj6)); +IkReal x5335=((cj6)*(sj0)*(sj5)); +IkReal x5336=((r00)*(sj5)*(sj6)); +IkReal x5337=((cj0)*(cj6)*(sj5)); +if( IKabs(((((cj0)*(x5334)))+(((IkReal(-1.00000000000000))*(sj0)*(x5336)))+(((IkReal(-1.00000000000000))*(r01)*(x5335)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5333)))+(((r11)*(x5337))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj0)*(x5334)))+(((cj0)*(x5336)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5333)))+(((r01)*(x5337)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5333)))+(((r11)*(x5335))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(x5334)))+(((IkReal(-1.00000000000000))*(sj0)*(x5336)))+(((IkReal(-1.00000000000000))*(r01)*(x5335)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5333)))+(((r11)*(x5337)))))+IKsqr(((((sj0)*(x5334)))+(((cj0)*(x5336)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5333)))+(((r01)*(x5337)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5333)))+(((r11)*(x5335)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(x5334)))+(((IkReal(-1.00000000000000))*(sj0)*(x5336)))+(((IkReal(-1.00000000000000))*(r01)*(x5335)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5333)))+(((r11)*(x5337)))), ((((sj0)*(x5334)))+(((cj0)*(x5336)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5333)))+(((r01)*(x5337)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5333)))+(((r11)*(x5335))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5338=IKcos(j3); +IkReal x5339=IKsin(j3); +IkReal x5340=((sj0)*(sj5)); +IkReal x5341=((r00)*(sj6)); +IkReal x5342=((IkReal(1.00000000000000))*(cj4)); +IkReal x5343=((cj6)*(sj0)); +IkReal x5344=((r00)*(sj4)); +IkReal x5345=((cj0)*(cj5)); +IkReal x5346=((cj6)*(r01)); +IkReal x5347=((cj5)*(sj0)); +IkReal x5348=((cj0)*(sj5)); +IkReal x5349=((cj6)*(r11)); +IkReal x5350=((r10)*(sj6)); +IkReal x5351=((r10)*(sj4)); +IkReal x5352=((cj0)*(sj4)*(sj6)); +IkReal x5353=((sj0)*(sj4)*(sj6)); +IkReal x5354=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((r12)*(x5345)))+(((IkReal(-1.00000000000000))*(x5348)*(x5350)))+(((IkReal(-1.00000000000000))*(x5348)*(x5349)))+(((IkReal(-1.00000000000000))*(r02)*(x5347)))+(((x5340)*(x5346)))+(((x5340)*(x5341)))+(x5339)); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5340)*(x5349)))+(((IkReal(-1.00000000000000))*(x5340)*(x5350)))+(((IkReal(-1.00000000000000))*(x5346)*(x5348)))+(((r02)*(x5345)))+(((IkReal(-1.00000000000000))*(x5341)*(x5348)))+(((r12)*(x5347)))+(x5338)); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x5353)))+(((IkReal(-1.00000000000000))*(r12)*(x5342)*(x5348)))+(((IkReal(-1.00000000000000))*(x5342)*(x5345)*(x5350)))+(((cj4)*(x5341)*(x5347)))+(((IkReal(-1.00000000000000))*(x5342)*(x5345)*(x5349)))+(((cj4)*(cj5)*(r01)*(x5343)))+(((IkReal(-1.00000000000000))*(x5338)))+(((x5343)*(x5344)))+(((r11)*(x5352)))+(((IkReal(-1.00000000000000))*(x5351)*(x5354)))+(((cj4)*(r02)*(x5340)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x5340)*(x5342)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x5342)*(x5343)))+(((IkReal(-1.00000000000000))*(x5343)*(x5351)))+(((IkReal(-1.00000000000000))*(x5341)*(x5342)*(x5345)))+(((IkReal(-1.00000000000000))*(x5342)*(x5345)*(x5346)))+(((IkReal(-1.00000000000000))*(x5344)*(x5354)))+(((IkReal(-1.00000000000000))*(r02)*(x5342)*(x5348)))+(((r11)*(x5353)))+(((r01)*(x5352)))+(((IkReal(-1.00000000000000))*(x5342)*(x5347)*(x5350)))+(x5339)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5355=((cj5)*(r02)); +IkReal x5356=((cj0)*(sj5)); +IkReal x5357=((r10)*(sj6)); +IkReal x5358=((IkReal(1.00000000000000))*(cj6)); +IkReal x5359=((sj0)*(sj5)); +IkReal x5360=((cj5)*(r12)); +IkReal x5361=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((x5356)*(x5357)))+(((cj6)*(r11)*(x5356)))+(((IkReal(-1.00000000000000))*(r01)*(x5358)*(x5359)))+(((sj0)*(x5355)))+(((IkReal(-1.00000000000000))*(x5359)*(x5361)))+(((IkReal(-1.00000000000000))*(cj0)*(x5360))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x5357)*(x5359)))+(((sj0)*(x5360)))+(((IkReal(-1.00000000000000))*(r01)*(x5356)*(x5358)))+(((IkReal(-1.00000000000000))*(r11)*(x5358)*(x5359)))+(((IkReal(-1.00000000000000))*(x5356)*(x5361)))+(((cj0)*(x5355))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x5356)*(x5357)))+(((cj6)*(r11)*(x5356)))+(((IkReal(-1.00000000000000))*(r01)*(x5358)*(x5359)))+(((sj0)*(x5355)))+(((IkReal(-1.00000000000000))*(x5359)*(x5361)))+(((IkReal(-1.00000000000000))*(cj0)*(x5360)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x5357)*(x5359)))+(((sj0)*(x5360)))+(((IkReal(-1.00000000000000))*(r01)*(x5356)*(x5358)))+(((IkReal(-1.00000000000000))*(r11)*(x5358)*(x5359)))+(((IkReal(-1.00000000000000))*(x5356)*(x5361)))+(((cj0)*(x5355)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x5356)*(x5357)))+(((cj6)*(r11)*(x5356)))+(((IkReal(-1.00000000000000))*(r01)*(x5358)*(x5359)))+(((sj0)*(x5355)))+(((IkReal(-1.00000000000000))*(x5359)*(x5361)))+(((IkReal(-1.00000000000000))*(cj0)*(x5360)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x5357)*(x5359)))+(((sj0)*(x5360)))+(((IkReal(-1.00000000000000))*(r01)*(x5356)*(x5358)))+(((IkReal(-1.00000000000000))*(r11)*(x5358)*(x5359)))+(((IkReal(-1.00000000000000))*(x5356)*(x5361)))+(((cj0)*(x5355))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5362=IKsin(j3); +IkReal x5363=IKcos(j3); +IkReal x5364=((sj0)*(sj5)); +IkReal x5365=((r00)*(sj6)); +IkReal x5366=((IkReal(1.00000000000000))*(cj4)); +IkReal x5367=((cj6)*(r01)); +IkReal x5368=((cj0)*(cj5)); +IkReal x5369=((cj5)*(sj0)); +IkReal x5370=((cj6)*(r11)); +IkReal x5371=((cj0)*(sj5)); +IkReal x5372=((IkReal(1.00000000000000))*(cj1)); +IkReal x5373=((cj6)*(sj4)); +IkReal x5374=((IkReal(1.00000000000000))*(sj1)); +IkReal x5375=((cj4)*(cj5)); +IkReal x5376=((cj6)*(r21)); +IkReal x5377=((r20)*(sj6)); +IkReal x5378=((r10)*(sj6)); +IkReal x5379=((IkReal(1.00000000000000))*(cj0)); +IkReal x5380=((cj0)*(sj4)*(sj6)); +IkReal x5381=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x5377)))+(((sj5)*(x5376)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x5363)*(x5374)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5362)*(x5374)))+(((cj4)*(r22)*(sj5)))+(((x5375)*(x5376)))+(((r20)*(x5373)))+(((x5375)*(x5377)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5371)*(x5378)))+(((x5364)*(x5367)))+(((r12)*(x5368)))+(((IkReal(-1.00000000000000))*(x5370)*(x5371)))+(((IkReal(-1.00000000000000))*(r02)*(x5369)))+(x5362)+(((x5364)*(x5365)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5363)*(x5372)))+(((r12)*(x5369)))+(((IkReal(-1.00000000000000))*(x5365)*(x5371)))+(((IkReal(-1.00000000000000))*(x5364)*(x5378)))+(((r02)*(x5368)))+(((IkReal(-1.00000000000000))*(x5367)*(x5371)))+(((IkReal(-1.00000000000000))*(x5364)*(x5370)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x5366)*(x5371)))+(((cj4)*(x5367)*(x5369)))+(((r00)*(sj0)*(x5373)))+(((IkReal(-1.00000000000000))*(r01)*(x5381)))+(((IkReal(-1.00000000000000))*(r10)*(x5373)*(x5379)))+(((IkReal(-1.00000000000000))*(x5363)))+(((r11)*(x5380)))+(((cj4)*(x5365)*(x5369)))+(((IkReal(-1.00000000000000))*(x5366)*(x5368)*(x5370)))+(((cj4)*(r02)*(x5364)))+(((IkReal(-1.00000000000000))*(x5366)*(x5368)*(x5378)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5362)*(x5372)))+(((IkReal(-1.00000000000000))*(r02)*(x5366)*(x5371)))+(((IkReal(-1.00000000000000))*(x5366)*(x5367)*(x5368)))+(((IkReal(-1.00000000000000))*(x5366)*(x5369)*(x5378)))+(((r01)*(x5380)))+(((r11)*(x5381)))+(((IkReal(-1.00000000000000))*(x5365)*(x5366)*(x5368)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5373)))+(((IkReal(-1.00000000000000))*(r12)*(x5364)*(x5366)))+(((IkReal(-1.00000000000000))*(x5366)*(x5369)*(x5370)))+(((IkReal(-1.00000000000000))*(r00)*(x5373)*(x5379)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5382=((sj5)*(sj6)); +IkReal x5383=((IkReal(1.00000000000000))*(sj0)); +IkReal x5384=((cj6)*(sj5)); +IkReal x5385=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r10)*(x5382)))+(((cj0)*(r11)*(x5384)))+(((IkReal(-1.00000000000000))*(r01)*(x5383)*(x5384)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x5382)*(x5383)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5385))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x5385)))+(((r21)*(x5384)))+(((r20)*(x5382))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r10)*(x5382)))+(((cj0)*(r11)*(x5384)))+(((IkReal(-1.00000000000000))*(r01)*(x5383)*(x5384)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x5382)*(x5383)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5385)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x5385)))+(((r21)*(x5384)))+(((r20)*(x5382)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r10)*(x5382)))+(((cj0)*(r11)*(x5384)))+(((IkReal(-1.00000000000000))*(r01)*(x5383)*(x5384)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x5382)*(x5383)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5385)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x5385)))+(((r21)*(x5384)))+(((r20)*(x5382))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5386=IKsin(j3); +IkReal x5387=IKcos(j3); +IkReal x5388=((sj0)*(sj5)); +IkReal x5389=((r00)*(sj6)); +IkReal x5390=((IkReal(1.00000000000000))*(cj4)); +IkReal x5391=((cj6)*(r01)); +IkReal x5392=((cj0)*(cj5)); +IkReal x5393=((cj5)*(sj0)); +IkReal x5394=((cj6)*(r11)); +IkReal x5395=((cj0)*(sj5)); +IkReal x5396=((IkReal(1.00000000000000))*(cj1)); +IkReal x5397=((cj6)*(sj4)); +IkReal x5398=((IkReal(1.00000000000000))*(sj1)); +IkReal x5399=((cj4)*(cj5)); +IkReal x5400=((cj6)*(r21)); +IkReal x5401=((r20)*(sj6)); +IkReal x5402=((r10)*(sj6)); +IkReal x5403=((IkReal(1.00000000000000))*(cj0)); +IkReal x5404=((cj0)*(sj4)*(sj6)); +IkReal x5405=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x5387)*(x5398)))+(((sj5)*(x5400)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5401)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x5399)*(x5400)))+(((IkReal(-1.00000000000000))*(x5386)*(x5398)))+(((x5399)*(x5401)))+(((r20)*(x5397)))); +evalcond[2]=((((r12)*(x5392)))+(((IkReal(-1.00000000000000))*(r02)*(x5393)))+(((IkReal(-1.00000000000000))*(x5395)*(x5402)))+(((x5388)*(x5391)))+(((x5388)*(x5389)))+(x5386)+(((IkReal(-1.00000000000000))*(x5394)*(x5395)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5388)*(x5402)))+(((IkReal(-1.00000000000000))*(x5391)*(x5395)))+(((IkReal(-1.00000000000000))*(x5388)*(x5394)))+(((IkReal(-1.00000000000000))*(x5389)*(x5395)))+(((IkReal(-1.00000000000000))*(x5387)*(x5396)))+(((r02)*(x5392)))+(((r12)*(x5393)))); +evalcond[4]=((((cj4)*(x5391)*(x5393)))+(((IkReal(-1.00000000000000))*(x5390)*(x5392)*(x5402)))+(((IkReal(-1.00000000000000))*(x5387)))+(((r11)*(x5404)))+(((IkReal(-1.00000000000000))*(r10)*(x5397)*(x5403)))+(((r00)*(sj0)*(x5397)))+(((IkReal(-1.00000000000000))*(r12)*(x5390)*(x5395)))+(((IkReal(-1.00000000000000))*(x5390)*(x5392)*(x5394)))+(((cj4)*(x5389)*(x5393)))+(((IkReal(-1.00000000000000))*(r01)*(x5405)))+(((cj4)*(r02)*(x5388)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5386)*(x5396)))+(((IkReal(-1.00000000000000))*(r12)*(x5388)*(x5390)))+(((r11)*(x5405)))+(((IkReal(-1.00000000000000))*(x5390)*(x5393)*(x5402)))+(((IkReal(-1.00000000000000))*(x5390)*(x5393)*(x5394)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5397)))+(((IkReal(-1.00000000000000))*(r02)*(x5390)*(x5395)))+(((IkReal(-1.00000000000000))*(r00)*(x5397)*(x5403)))+(((r01)*(x5404)))+(((IkReal(-1.00000000000000))*(x5389)*(x5390)*(x5392)))+(((IkReal(-1.00000000000000))*(x5390)*(x5391)*(x5392)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5406=((r20)*(sj6)); +IkReal x5407=((cj4)*(cj5)); +IkReal x5408=((cj6)*(r21)); +if( IKabs(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5406)*(x5407)))+(((x5407)*(x5408))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst30)*(((((sj5)*(x5408)))+(((sj5)*(x5406)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5406)*(x5407)))+(((x5407)*(x5408)))))), ((gconst30)*(((((sj5)*(x5408)))+(((sj5)*(x5406)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5409=IKsin(j3); +IkReal x5410=IKcos(j3); +IkReal x5411=((sj0)*(sj5)); +IkReal x5412=((r00)*(sj6)); +IkReal x5413=((IkReal(1.00000000000000))*(cj4)); +IkReal x5414=((cj6)*(r01)); +IkReal x5415=((cj0)*(cj5)); +IkReal x5416=((cj5)*(sj0)); +IkReal x5417=((cj6)*(r11)); +IkReal x5418=((cj0)*(sj5)); +IkReal x5419=((IkReal(1.00000000000000))*(cj1)); +IkReal x5420=((cj6)*(sj4)); +IkReal x5421=((IkReal(1.00000000000000))*(sj1)); +IkReal x5422=((cj4)*(cj5)); +IkReal x5423=((cj6)*(r21)); +IkReal x5424=((r20)*(sj6)); +IkReal x5425=((r10)*(sj6)); +IkReal x5426=((IkReal(1.00000000000000))*(cj0)); +IkReal x5427=((cj0)*(sj4)*(sj6)); +IkReal x5428=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x5424)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x5410)*(x5421)))+(((sj5)*(x5423)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5422)*(x5424)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x5420)))+(((x5422)*(x5423)))+(((IkReal(-1.00000000000000))*(x5409)*(x5421)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5418)*(x5425)))+(((r12)*(x5415)))+(((x5411)*(x5412)))+(((x5411)*(x5414)))+(((IkReal(-1.00000000000000))*(r02)*(x5416)))+(((IkReal(-1.00000000000000))*(x5417)*(x5418)))+(x5409)); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5411)*(x5417)))+(((r02)*(x5415)))+(((IkReal(-1.00000000000000))*(x5414)*(x5418)))+(((IkReal(-1.00000000000000))*(x5412)*(x5418)))+(((IkReal(-1.00000000000000))*(x5410)*(x5419)))+(((r12)*(x5416)))+(((IkReal(-1.00000000000000))*(x5411)*(x5425)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5413)*(x5415)*(x5425)))+(((cj4)*(x5414)*(x5416)))+(((IkReal(-1.00000000000000))*(r01)*(x5428)))+(((cj4)*(x5412)*(x5416)))+(((IkReal(-1.00000000000000))*(r12)*(x5413)*(x5418)))+(((IkReal(-1.00000000000000))*(r10)*(x5420)*(x5426)))+(((cj4)*(r02)*(x5411)))+(((r11)*(x5427)))+(((IkReal(-1.00000000000000))*(x5413)*(x5415)*(x5417)))+(((IkReal(-1.00000000000000))*(x5410)))+(((r00)*(sj0)*(x5420)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5409)*(x5419)))+(((r01)*(x5427)))+(((IkReal(-1.00000000000000))*(x5412)*(x5413)*(x5415)))+(((IkReal(-1.00000000000000))*(x5413)*(x5414)*(x5415)))+(((IkReal(-1.00000000000000))*(r00)*(x5420)*(x5426)))+(((r11)*(x5428)))+(((IkReal(-1.00000000000000))*(x5413)*(x5416)*(x5425)))+(((IkReal(-1.00000000000000))*(r12)*(x5411)*(x5413)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5420)))+(((IkReal(-1.00000000000000))*(r02)*(x5413)*(x5418)))+(((IkReal(-1.00000000000000))*(x5413)*(x5416)*(x5417)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5429=((cj1)*(sj6)); +IkReal x5430=((r01)*(sj0)); +IkReal x5431=((cj0)*(r11)); +IkReal x5432=((cj1)*(cj6)); +IkReal x5433=((cj0)*(r10)); +IkReal x5434=((IkReal(1.00000000000000))*(sj0)); +IkReal x5435=((cj1)*(sj5)); +if( IKabs(((gconst26)*(((((IkReal(-1.00000000000000))*(r00)*(x5432)*(x5434)))+(((IkReal(-1.00000000000000))*(x5429)*(x5431)))+(((x5432)*(x5433)))+(((x5429)*(x5430))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst26)*(((((cj5)*(x5431)*(x5432)))+(((IkReal(-1.00000000000000))*(r02)*(x5434)*(x5435)))+(((IkReal(-1.00000000000000))*(cj5)*(x5430)*(x5432)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5429)*(x5434)))+(((cj0)*(r12)*(x5435)))+(((cj5)*(x5429)*(x5433))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst26)*(((((IkReal(-1.00000000000000))*(r00)*(x5432)*(x5434)))+(((IkReal(-1.00000000000000))*(x5429)*(x5431)))+(((x5432)*(x5433)))+(((x5429)*(x5430)))))), ((gconst26)*(((((cj5)*(x5431)*(x5432)))+(((IkReal(-1.00000000000000))*(r02)*(x5434)*(x5435)))+(((IkReal(-1.00000000000000))*(cj5)*(x5430)*(x5432)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5429)*(x5434)))+(((cj0)*(r12)*(x5435)))+(((cj5)*(x5429)*(x5433))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x5436=IKsin(j4); +IkReal x5437=IKcos(j4); +IkReal x5438=((r00)*(sj6)); +IkReal x5439=((cj6)*(r01)); +IkReal x5440=((IkReal(1.00000000000000))*(cj0)); +IkReal x5441=((IkReal(1.00000000000000))*(sj0)); +IkReal x5442=((r10)*(sj6)); +IkReal x5443=((sj5)*(x5436)); +IkReal x5444=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x5445=((cj5)*(x5436)); +IkReal x5446=((cj6)*(x5437)); +IkReal x5447=((sj0)*(x5445)); +IkReal x5448=((r01)*(sj6)*(x5437)); +IkReal x5449=((r11)*(sj6)*(x5437)); +evalcond[0]=((((r20)*(sj6)*(x5445)))+(((r22)*(x5443)))+(((r21)*(sj6)*(x5437)))+(cj1)+(((cj6)*(r21)*(x5445)))+(((IkReal(-1.00000000000000))*(r20)*(x5446)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5440)*(x5442)*(x5445)))+(((x5439)*(x5447)))+(((r02)*(sj0)*(x5443)))+(((IkReal(-1.00000000000000))*(r12)*(x5440)*(x5443)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5440)*(x5445)))+(((cj0)*(r10)*(x5446)))+(((x5438)*(x5447)))+(((IkReal(-1.00000000000000))*(x5440)*(x5449)))+(((IkReal(-1.00000000000000))*(r00)*(x5441)*(x5446)))+(((sj0)*(x5448)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5438)*(x5440)*(x5445)))+(((IkReal(-1.00000000000000))*(x5441)*(x5449)))+(((IkReal(-1.00000000000000))*(x5439)*(x5440)*(x5445)))+(((IkReal(-1.00000000000000))*(r12)*(x5441)*(x5443)))+(((IkReal(-1.00000000000000))*(r02)*(x5440)*(x5443)))+(((IkReal(-1.00000000000000))*(sj1)))+(((r10)*(sj0)*(x5446)))+(((IkReal(-1.00000000000000))*(x5441)*(x5442)*(x5445)))+(((IkReal(-1.00000000000000))*(x5440)*(x5448)))+(((cj0)*(r00)*(x5446)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5441)*(x5445)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst30; +gconst30=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x5450=((IkReal(1.00000000000000))*(cj0)); +IkReal x5451=((cj4)*(sj6)); +IkReal x5452=((sj0)*(sj6)); +IkReal x5453=((cj5)*(sj4)); +IkReal x5454=((IkReal(0.374290000000000))*(sj5)); +IkReal x5455=((sj4)*(sj5)); +IkReal x5456=((cj0)*(cj6)); +IkReal x5457=((IkReal(0.0100000000000000))*(cj5)); +IkReal x5458=((cj4)*(sj5)); +IkReal x5459=((cj5)*(sj0)); +IkReal x5460=((IkReal(0.374290000000000))*(r02)); +IkReal x5461=((r20)*(sj6)); +IkReal x5462=((cj6)*(r21)); +IkReal x5463=((IkReal(1.00000000000000))*(sj0)); +IkReal x5464=((cj0)*(sj6)); +IkReal x5465=((cj4)*(cj6)); +IkReal x5466=((IkReal(0.374290000000000))*(r12)); +IkReal x5467=((cj0)*(cj5)); +IkReal x5468=((cj6)*(sj5)); +IkReal x5469=((cj6)*(r01)); +IkReal x5470=((r00)*(sj6)); +IkReal x5471=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5472=((cj6)*(r11)); +IkReal x5473=((IkReal(1.00000000000000))*(r10)); +IkReal x5474=((r02)*(sj0)); +IkReal x5475=((cj6)*(sj4)); +IkReal x5476=((r12)*(x5463)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x5465)))+(((x5453)*(x5461)))+(((r22)*(x5455)))+(((x5453)*(x5462)))+(((r21)*(x5451)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x5454)*(x5461)))+(((IkReal(-1.00000000000000))*(x5457)*(x5461)))+(((IkReal(-1.00000000000000))*(x5457)*(x5462)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x5471)))+(pz)+(((x5454)*(x5462)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x5463)*(x5468)))+(((r02)*(x5467)))+(((IkReal(-1.00000000000000))*(r01)*(x5450)*(x5468)))+(((IkReal(-1.00000000000000))*(sj5)*(x5450)*(x5470)))+(((r12)*(x5459)))+(((IkReal(-1.00000000000000))*(sj5)*(x5452)*(x5473)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x5450)*(x5455)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x5450)*(x5453)))+(((IkReal(-1.00000000000000))*(x5450)*(x5453)*(x5472)))+(((IkReal(-1.00000000000000))*(r11)*(x5450)*(x5451)))+(((sj0)*(x5453)*(x5469)))+(((x5455)*(x5474)))+(((r01)*(sj0)*(x5451)))+(((IkReal(-1.00000000000000))*(r00)*(x5463)*(x5465)))+(((cj4)*(r10)*(x5456)))+(((r00)*(x5452)*(x5453)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((r10)*(sj0)*(x5465)))+(((IkReal(-1.00000000000000))*(r01)*(x5450)*(x5451)))+(((cj4)*(r00)*(x5456)))+(((IkReal(-1.00000000000000))*(x5452)*(x5453)*(x5473)))+(((IkReal(-1.00000000000000))*(x5450)*(x5453)*(x5470)))+(((IkReal(-1.00000000000000))*(r02)*(x5450)*(x5455)))+(((IkReal(-1.00000000000000))*(x5450)*(x5453)*(x5469)))+(((IkReal(-1.00000000000000))*(r11)*(x5451)*(x5463)))+(((IkReal(-1.00000000000000))*(x5453)*(x5463)*(x5472)))+(((IkReal(-1.00000000000000))*(x5455)*(x5476)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x5454)*(x5456)))+(((cj0)*(r12)*(x5471)))+(((r10)*(x5457)*(x5464)))+(((IkReal(-1.00000000000000))*(x5459)*(x5460)))+(((IkReal(-1.00000000000000))*(py)*(x5450)))+(((IkReal(-1.00000000000000))*(sj0)*(x5457)*(x5469)))+(((IkReal(-1.00000000000000))*(x5471)*(x5474)))+(((IkReal(-1.00000000000000))*(r00)*(x5452)*(x5457)))+(((r11)*(x5456)*(x5457)))+(((r00)*(x5452)*(x5454)))+(((px)*(sj0)))+(((x5466)*(x5467)))+(((sj0)*(x5454)*(x5469)))+(((IkReal(-1.00000000000000))*(r10)*(x5454)*(x5464)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x5450)*(x5475)))+(((IkReal(-1.00000000000000))*(x5451)*(x5459)*(x5473)))+(((IkReal(-1.00000000000000))*(x5458)*(x5476)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5450)*(x5451)))+(((IkReal(-1.00000000000000))*(r11)*(x5459)*(x5465)))+(((r11)*(sj4)*(x5452)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5450)*(x5465)))+(((IkReal(-1.00000000000000))*(r02)*(x5450)*(x5458)))+(((r01)*(sj4)*(x5464)))+(((IkReal(-1.00000000000000))*(r10)*(x5463)*(x5475)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x5452)*(x5454)))+(((cj0)*(r02)*(x5471)))+(((r01)*(x5456)*(x5457)))+(((x5460)*(x5467)))+(((r12)*(sj0)*(x5471)))+(((IkReal(-1.00000000000000))*(px)*(x5450)))+(((IkReal(-1.00000000000000))*(r01)*(x5454)*(x5456)))+(((x5459)*(x5466)))+(((IkReal(-1.00000000000000))*(py)*(x5463)))+(((r00)*(x5457)*(x5464)))+(((r10)*(x5452)*(x5457)))+(((IkReal(-1.00000000000000))*(sj0)*(x5454)*(x5472)))+(((IkReal(-1.00000000000000))*(r00)*(x5454)*(x5464)))+(((sj0)*(x5457)*(x5472)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5477=((r20)*(sj6)); +IkReal x5478=((cj4)*(cj5)); +IkReal x5479=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5477)*(x5478)))+(((x5478)*(x5479))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5477)))+(((sj5)*(x5479))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5477)*(x5478)))+(((x5478)*(x5479)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5477)))+(((sj5)*(x5479)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5477)*(x5478)))+(((x5478)*(x5479)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5477)))+(((sj5)*(x5479))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5480=IKsin(j3); +IkReal x5481=((sj0)*(sj5)); +IkReal x5482=((r00)*(sj6)); +IkReal x5483=((cj6)*(r01)); +IkReal x5484=((cj5)*(sj0)); +IkReal x5485=((cj0)*(cj5)); +IkReal x5486=((cj6)*(sj4)); +IkReal x5487=((sj4)*(sj6)); +IkReal x5488=((cj0)*(r11)); +IkReal x5489=((cj4)*(cj6)); +IkReal x5490=((cj4)*(sj6)); +IkReal x5491=((IkReal(1.00000000000000))*(cj0)); +IkReal x5492=((cj4)*(sj5)); +IkReal x5493=((sj5)*(sj6)); +IkReal x5494=((cj6)*(sj5)); +IkReal x5495=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r21)*(x5494)))+(((r20)*(x5493)))+(((IkReal(-1.00000000000000))*(x5495)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x5487)))+(((cj5)*(r20)*(x5490)))+(((IkReal(-1.00000000000000))*(x5480)))+(((r20)*(x5486)))+(((cj5)*(r21)*(x5489)))+(((r22)*(x5492)))); +evalcond[2]=((x5480)+(((IkReal(-1.00000000000000))*(r10)*(x5491)*(x5493)))+(((r12)*(x5485)))+(((IkReal(-1.00000000000000))*(r02)*(x5484)))+(((x5481)*(x5482)))+(((IkReal(-1.00000000000000))*(x5488)*(x5494)))+(((x5481)*(x5483)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x5485)*(x5489)))+(((cj4)*(x5482)*(x5484)))+(((IkReal(-1.00000000000000))*(r12)*(x5491)*(x5492)))+(((IkReal(-1.00000000000000))*(r10)*(x5485)*(x5490)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x5487)))+(((cj4)*(x5483)*(x5484)))+(((r00)*(sj0)*(x5486)))+(((cj4)*(r02)*(x5481)))+(((x5487)*(x5488)))+(((IkReal(-1.00000000000000))*(r10)*(x5486)*(x5491)))+(((IkReal(-1.00000000000000))*(x5495)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5496=((IkReal(1.00000000000000))*(cj0)); +IkReal x5497=((cj4)*(sj6)); +IkReal x5498=((sj0)*(sj6)); +IkReal x5499=((cj5)*(sj4)); +IkReal x5500=((IkReal(0.374290000000000))*(sj5)); +IkReal x5501=((sj4)*(sj5)); +IkReal x5502=((cj0)*(cj6)); +IkReal x5503=((IkReal(0.0100000000000000))*(cj5)); +IkReal x5504=((cj4)*(sj5)); +IkReal x5505=((cj5)*(sj0)); +IkReal x5506=((IkReal(0.374290000000000))*(r02)); +IkReal x5507=((r20)*(sj6)); +IkReal x5508=((cj6)*(r21)); +IkReal x5509=((IkReal(1.00000000000000))*(sj0)); +IkReal x5510=((cj0)*(sj6)); +IkReal x5511=((cj4)*(cj6)); +IkReal x5512=((IkReal(0.374290000000000))*(r12)); +IkReal x5513=((cj0)*(cj5)); +IkReal x5514=((cj6)*(sj5)); +IkReal x5515=((cj6)*(r01)); +IkReal x5516=((r00)*(sj6)); +IkReal x5517=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5518=((cj6)*(r11)); +IkReal x5519=((IkReal(1.00000000000000))*(r10)); +IkReal x5520=((r02)*(sj0)); +IkReal x5521=((cj6)*(sj4)); +IkReal x5522=((r12)*(x5509)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x5497)))+(((x5499)*(x5508)))+(((x5499)*(x5507)))+(((r22)*(x5501)))+(((IkReal(-1.00000000000000))*(r20)*(x5511)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(r22)*(x5517)))+(((x5500)*(x5508)))+(((x5500)*(x5507)))+(((IkReal(-1.00000000000000))*(x5503)*(x5508)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x5503)*(x5507)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x5509)*(x5514)))+(((r12)*(x5505)))+(((IkReal(-1.00000000000000))*(sj5)*(x5496)*(x5516)))+(((IkReal(-1.00000000000000))*(r01)*(x5496)*(x5514)))+(((IkReal(-1.00000000000000))*(sj5)*(x5498)*(x5519)))+(((r02)*(x5513)))); +evalcond[4]=((((r00)*(x5498)*(x5499)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x5496)*(x5499)))+(((cj4)*(r10)*(x5502)))+(((sj0)*(x5499)*(x5515)))+(((r01)*(sj0)*(x5497)))+(((IkReal(-1.00000000000000))*(r11)*(x5496)*(x5497)))+(((IkReal(-1.00000000000000))*(r12)*(x5496)*(x5501)))+(((IkReal(-1.00000000000000))*(x5496)*(x5499)*(x5518)))+(((IkReal(-1.00000000000000))*(r00)*(x5509)*(x5511)))+(((x5501)*(x5520)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x5499)*(x5509)*(x5518)))+(((IkReal(-1.00000000000000))*(r02)*(x5496)*(x5501)))+(((IkReal(-1.00000000000000))*(x5496)*(x5499)*(x5516)))+(((IkReal(-1.00000000000000))*(r11)*(x5497)*(x5509)))+(((IkReal(-1.00000000000000))*(x5501)*(x5522)))+(((r10)*(sj0)*(x5511)))+(((cj4)*(r00)*(x5502)))+(((IkReal(-1.00000000000000))*(x5498)*(x5499)*(x5519)))+(((IkReal(-1.00000000000000))*(r01)*(x5496)*(x5497)))+(((IkReal(-1.00000000000000))*(x5496)*(x5499)*(x5515)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x5500)*(x5510)))+(((IkReal(-1.00000000000000))*(x5505)*(x5506)))+(((IkReal(-1.00000000000000))*(sj0)*(x5503)*(x5515)))+(((cj0)*(r12)*(x5517)))+(((r10)*(x5503)*(x5510)))+(((r11)*(x5502)*(x5503)))+(((IkReal(-1.00000000000000))*(r00)*(x5498)*(x5503)))+(((IkReal(-1.00000000000000))*(py)*(x5496)))+(((r00)*(x5498)*(x5500)))+(((sj0)*(x5500)*(x5515)))+(((IkReal(-1.00000000000000))*(x5517)*(x5520)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x5500)*(x5502)))+(((x5512)*(x5513)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5496)*(x5497)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5496)*(x5511)))+(((IkReal(-1.00000000000000))*(x5504)*(x5522)))+(((IkReal(-1.00000000000000))*(r02)*(x5496)*(x5504)))+(((r01)*(sj4)*(x5510)))+(((IkReal(-1.00000000000000))*(x5497)*(x5505)*(x5519)))+(((IkReal(-1.00000000000000))*(r10)*(x5509)*(x5521)))+(((r11)*(sj4)*(x5498)))+(((IkReal(-1.00000000000000))*(r11)*(x5505)*(x5511)))+(((IkReal(-1.00000000000000))*(r00)*(x5496)*(x5521)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x5509)))+(((r00)*(x5503)*(x5510)))+(((IkReal(-1.00000000000000))*(sj0)*(x5500)*(x5518)))+(((IkReal(-1.00000000000000))*(px)*(x5496)))+(((IkReal(-1.00000000000000))*(r10)*(x5498)*(x5500)))+(((r01)*(x5502)*(x5503)))+(((r10)*(x5498)*(x5503)))+(((IkReal(-1.00000000000000))*(r01)*(x5500)*(x5502)))+(((sj0)*(x5503)*(x5518)))+(((x5505)*(x5512)))+(((r12)*(sj0)*(x5517)))+(((x5506)*(x5513)))+(((IkReal(-1.00000000000000))*(r00)*(x5500)*(x5510)))+(((cj0)*(r02)*(x5517)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5523=((IkReal(1.00000000000000))*(sj5)); +IkReal x5524=((cj6)*(r21)); +IkReal x5525=((r20)*(sj6)); +IkReal x5526=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x5524)*(x5526)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5525)*(x5526)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5523)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x5523)*(x5525)))+(((IkReal(-1.00000000000000))*(x5523)*(x5524)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x5524)*(x5526)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5525)*(x5526)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5523)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x5523)*(x5525)))+(((IkReal(-1.00000000000000))*(x5523)*(x5524)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x5524)*(x5526)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5525)*(x5526)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5523)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x5523)*(x5525)))+(((IkReal(-1.00000000000000))*(x5523)*(x5524)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5527=IKsin(j3); +IkReal x5528=IKcos(j3); +IkReal x5529=((sj0)*(sj5)); +IkReal x5530=((r00)*(sj6)); +IkReal x5531=((cj6)*(r01)); +IkReal x5532=((cj0)*(cj5)); +IkReal x5533=((IkReal(1.00000000000000))*(cj5)); +IkReal x5534=((cj4)*(cj5)); +IkReal x5535=((cj6)*(sj4)); +IkReal x5536=((sj4)*(sj6)); +IkReal x5537=((cj0)*(r11)); +IkReal x5538=((IkReal(1.00000000000000))*(cj4)); +IkReal x5539=((cj6)*(r21)); +IkReal x5540=((r20)*(sj6)); +IkReal x5541=((cj0)*(sj5)); +IkReal x5542=((r10)*(sj6)); +evalcond[0]=((((sj5)*(x5540)))+(((IkReal(-1.00000000000000))*(r22)*(x5533)))+(x5528)+(((sj5)*(x5539)))); +evalcond[1]=((((x5534)*(x5540)))+(((cj4)*(r22)*(sj5)))+(((x5534)*(x5539)))+(x5527)+(((r20)*(x5535)))+(((IkReal(-1.00000000000000))*(r21)*(x5536)))); +evalcond[2]=((((x5529)*(x5531)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x5537)))+(((r12)*(x5532)))+(x5527)+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x5533)))+(((x5529)*(x5530)))+(((IkReal(-1.00000000000000))*(x5541)*(x5542)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x5538)*(x5541)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5532)*(x5538)))+(((r00)*(sj0)*(x5535)))+(((x5536)*(x5537)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x5535)))+(((IkReal(-1.00000000000000))*(x5528)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x5536)))+(((IkReal(-1.00000000000000))*(x5532)*(x5538)*(x5542)))+(((sj0)*(x5531)*(x5534)))+(((cj4)*(r02)*(x5529)))+(((sj0)*(x5530)*(x5534)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5543=((IkReal(1.00000000000000))*(cj0)); +IkReal x5544=((cj4)*(sj6)); +IkReal x5545=((sj0)*(sj4)); +IkReal x5546=((cj5)*(sj6)); +IkReal x5547=((sj4)*(sj5)); +IkReal x5548=((r12)*(sj5)); +IkReal x5549=((IkReal(0.374290000000000))*(cj5)); +IkReal x5550=((r02)*(sj0)); +IkReal x5551=((r20)*(sj4)); +IkReal x5552=((IkReal(1.00000000000000))*(sj0)); +IkReal x5553=((IkReal(1.00000000000000))*(cj5)); +IkReal x5554=((cj0)*(r10)); +IkReal x5555=((cj4)*(cj6)); +IkReal x5556=((r00)*(sj0)); +IkReal x5557=((cj6)*(r21)); +IkReal x5558=((IkReal(0.374290000000000))*(sj5)); +IkReal x5559=((cj0)*(r00)); +IkReal x5560=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5561=((cj0)*(r02)); +IkReal x5562=((cj5)*(sj4)); +IkReal x5563=((cj6)*(r01)); +IkReal x5564=((cj6)*(r11)); +IkReal x5565=((r01)*(sj0)); +IkReal x5566=((r10)*(sj0)); +IkReal x5567=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x5568=((sj6)*(x5558)); +IkReal x5569=((cj0)*(cj6)*(x5558)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x5553)))+(((sj5)*(x5557)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x5546)*(x5551)))+(((x5557)*(x5562)))+(((r22)*(x5547)))+(((IkReal(-1.00000000000000))*(r20)*(x5555)))+(((r21)*(x5544)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x5560)))+(((x5557)*(x5558)))+(((IkReal(-0.0100000000000000))*(cj5)*(x5557)))+(((r20)*(x5568)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x5549)))+(((IkReal(-0.0100000000000000))*(r20)*(x5546)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x5551)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x5555)))+(((cj5)*(r20)*(x5544)))); +evalcond[5]=((((r02)*(sj5)*(x5545)))+(((cj5)*(x5545)*(x5563)))+(((r00)*(x5545)*(x5546)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x5543)*(x5546)))+(((IkReal(-1.00000000000000))*(x5543)*(x5562)*(x5564)))+(((IkReal(-1.00000000000000))*(r00)*(x5552)*(x5555)))+(((x5544)*(x5565)))+(((IkReal(-1.00000000000000))*(r11)*(x5543)*(x5544)))+(((IkReal(-1.00000000000000))*(r12)*(x5543)*(x5547)))+(((x5554)*(x5555)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r02)*(x5543)*(x5547)))+(((IkReal(-1.00000000000000))*(r10)*(x5545)*(x5546)))+(((IkReal(-1.00000000000000))*(x5545)*(x5548)))+(((x5555)*(x5566)))+(((IkReal(-1.00000000000000))*(x5545)*(x5553)*(x5564)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x5543)*(x5546)))+(((IkReal(-1.00000000000000))*(x5543)*(x5562)*(x5563)))+(((IkReal(-1.00000000000000))*(r11)*(x5544)*(x5552)))+(((IkReal(-1.00000000000000))*(r01)*(x5543)*(x5544)))+(((x5555)*(x5559)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x5554)*(x5568)))+(((IkReal(-1.00000000000000))*(cj0)*(x5558)*(x5564)))+(((IkReal(0.0100000000000000))*(x5546)*(x5554)))+(((IkReal(-1.00000000000000))*(x5549)*(x5550)))+(((sj0)*(x5558)*(x5563)))+(((x5556)*(x5568)))+(((cj0)*(r12)*(x5549)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x5563)))+(((IkReal(0.0100000000000000))*(cj0)*(x5548)))+(((IkReal(-1.00000000000000))*(py)*(x5543)))+(((IkReal(-1.00000000000000))*(x5550)*(x5560)))+(((IkReal(-0.0100000000000000))*(x5546)*(x5556)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5564)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(x5546)*(x5559)))+(((r12)*(sj0)*(x5549)))+(((x5549)*(x5561)))+(((IkReal(-1.00000000000000))*(x5566)*(x5568)))+(((IkReal(-1.00000000000000))*(py)*(x5552)))+(((IkReal(0.0100000000000000))*(x5546)*(x5566)))+(((IkReal(0.0100000000000000))*(sj0)*(x5548)))+(((x5560)*(x5561)))+(((IkReal(-1.00000000000000))*(sj0)*(x5558)*(x5564)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x5564)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5563)))+(((IkReal(-1.00000000000000))*(cj0)*(x5558)*(x5563)))+(((IkReal(-1.00000000000000))*(x5559)*(x5568)))+(((IkReal(-1.00000000000000))*(px)*(x5543)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5570=((cj5)*(r02)); +IkReal x5571=((cj0)*(sj5)); +IkReal x5572=((r10)*(sj6)); +IkReal x5573=((IkReal(1.00000000000000))*(cj6)); +IkReal x5574=((sj0)*(sj5)); +IkReal x5575=((cj5)*(r12)); +IkReal x5576=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((cj6)*(r11)*(x5571)))+(((IkReal(-1.00000000000000))*(cj0)*(x5575)))+(((x5571)*(x5572)))+(((IkReal(-1.00000000000000))*(x5574)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5573)*(x5574)))+(((sj0)*(x5570))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r11)*(x5573)*(x5574)))+(((IkReal(-1.00000000000000))*(x5571)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5571)*(x5573)))+(((cj0)*(x5570)))+(((IkReal(-1.00000000000000))*(x5572)*(x5574)))+(((sj0)*(x5575))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj6)*(r11)*(x5571)))+(((IkReal(-1.00000000000000))*(cj0)*(x5575)))+(((x5571)*(x5572)))+(((IkReal(-1.00000000000000))*(x5574)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5573)*(x5574)))+(((sj0)*(x5570)))))+IKsqr(((((IkReal(-1.00000000000000))*(r11)*(x5573)*(x5574)))+(((IkReal(-1.00000000000000))*(x5571)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5571)*(x5573)))+(((cj0)*(x5570)))+(((IkReal(-1.00000000000000))*(x5572)*(x5574)))+(((sj0)*(x5575)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj6)*(r11)*(x5571)))+(((IkReal(-1.00000000000000))*(cj0)*(x5575)))+(((x5571)*(x5572)))+(((IkReal(-1.00000000000000))*(x5574)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5573)*(x5574)))+(((sj0)*(x5570)))), ((((IkReal(-1.00000000000000))*(r11)*(x5573)*(x5574)))+(((IkReal(-1.00000000000000))*(x5571)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5571)*(x5573)))+(((cj0)*(x5570)))+(((IkReal(-1.00000000000000))*(x5572)*(x5574)))+(((sj0)*(x5575))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5577=IKsin(j3); +IkReal x5578=((sj0)*(sj5)); +IkReal x5579=((r00)*(sj6)); +IkReal x5580=((IkReal(1.00000000000000))*(cj4)); +IkReal x5581=((cj6)*(sj0)); +IkReal x5582=((r00)*(sj4)); +IkReal x5583=((cj0)*(cj5)); +IkReal x5584=((cj6)*(r01)); +IkReal x5585=((cj5)*(sj0)); +IkReal x5586=((cj0)*(sj5)); +IkReal x5587=((cj6)*(r11)); +IkReal x5588=((r10)*(sj6)); +IkReal x5589=((r10)*(sj4)); +IkReal x5590=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x5591=((cj0)*(sj4)*(sj6)); +IkReal x5592=((sj0)*(sj4)*(sj6)); +IkReal x5593=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((x5578)*(x5584)))+(((r12)*(x5583)))+(((IkReal(-1.00000000000000))*(x5586)*(x5587)))+(((x5578)*(x5579)))+(((IkReal(-1.00000000000000))*(x5586)*(x5588)))+(((IkReal(-1.00000000000000))*(r02)*(x5585)))+(x5577)); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5578)*(x5588)))+(((r02)*(x5583)))+(((r12)*(x5585)))+(((IkReal(-1.00000000000000))*(x5579)*(x5586)))+(((IkReal(-1.00000000000000))*(x5578)*(x5587)))+(((IkReal(-1.00000000000000))*(x5584)*(x5586)))+(((IkReal(-1.00000000000000))*(x5590)))); +evalcond[2]=((((cj4)*(cj5)*(r01)*(x5581)))+(((cj4)*(r02)*(x5578)))+(((IkReal(-1.00000000000000))*(x5589)*(x5593)))+(((IkReal(-1.00000000000000))*(x5580)*(x5583)*(x5587)))+(((IkReal(-1.00000000000000))*(r12)*(x5580)*(x5586)))+(((cj4)*(x5579)*(x5585)))+(((r11)*(x5591)))+(((IkReal(-1.00000000000000))*(x5590)))+(((x5581)*(x5582)))+(((IkReal(-1.00000000000000))*(x5580)*(x5583)*(x5588)))+(((IkReal(-1.00000000000000))*(r01)*(x5592)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x5578)*(x5580)))+(((IkReal(-1.00000000000000))*(x5577)))+(((IkReal(-1.00000000000000))*(x5580)*(x5585)*(x5588)))+(((IkReal(-1.00000000000000))*(x5580)*(x5583)*(x5584)))+(((r01)*(x5591)))+(((IkReal(-1.00000000000000))*(x5579)*(x5580)*(x5583)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x5580)*(x5581)))+(((IkReal(-1.00000000000000))*(r02)*(x5580)*(x5586)))+(((IkReal(-1.00000000000000))*(x5582)*(x5593)))+(((IkReal(-1.00000000000000))*(x5581)*(x5589)))+(((r11)*(x5592)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5594=((IkReal(1.00000000000000))*(cj0)); +IkReal x5595=((cj4)*(sj6)); +IkReal x5596=((sj0)*(sj4)); +IkReal x5597=((cj5)*(sj6)); +IkReal x5598=((sj4)*(sj5)); +IkReal x5599=((r12)*(sj5)); +IkReal x5600=((IkReal(0.374290000000000))*(cj5)); +IkReal x5601=((r02)*(sj0)); +IkReal x5602=((r20)*(sj4)); +IkReal x5603=((IkReal(1.00000000000000))*(sj0)); +IkReal x5604=((IkReal(1.00000000000000))*(cj5)); +IkReal x5605=((cj0)*(r10)); +IkReal x5606=((cj4)*(cj6)); +IkReal x5607=((r00)*(sj0)); +IkReal x5608=((cj6)*(r21)); +IkReal x5609=((IkReal(0.374290000000000))*(sj5)); +IkReal x5610=((cj0)*(r00)); +IkReal x5611=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5612=((cj0)*(r02)); +IkReal x5613=((cj5)*(sj4)); +IkReal x5614=((cj6)*(r01)); +IkReal x5615=((cj6)*(r11)); +IkReal x5616=((r01)*(sj0)); +IkReal x5617=((r10)*(sj0)); +IkReal x5618=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x5619=((sj6)*(x5609)); +IkReal x5620=((cj0)*(cj6)*(x5609)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x5608)))+(((IkReal(-1.00000000000000))*(r22)*(x5604)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x5597)*(x5602)))+(((x5608)*(x5613)))+(((r22)*(x5598)))+(((IkReal(-1.00000000000000))*(r20)*(x5606)))+(((r21)*(x5595)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x5597)))+(((IkReal(-0.0100000000000000))*(cj5)*(x5608)))+(((IkReal(-1.00000000000000))*(r22)*(x5611)))+(((x5608)*(x5609)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x5600)))+(((r20)*(x5619)))); +evalcond[4]=((((cj5)*(r21)*(x5606)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x5595)))+(((cj6)*(x5602)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5594)*(x5613)*(x5615)))+(((x5595)*(x5616)))+(((IkReal(-1.00000000000000))*(r00)*(x5603)*(x5606)))+(((IkReal(-1.00000000000000))*(r11)*(x5594)*(x5595)))+(((cj5)*(x5596)*(x5614)))+(((IkReal(-1.00000000000000))*(r12)*(x5594)*(x5598)))+(((r02)*(sj5)*(x5596)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x5594)*(x5597)))+(((r00)*(x5596)*(x5597)))+(((x5605)*(x5606)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r00)*(sj4)*(x5594)*(x5597)))+(((x5606)*(x5617)))+(((IkReal(-1.00000000000000))*(r02)*(x5594)*(x5598)))+(((IkReal(-1.00000000000000))*(x5596)*(x5604)*(x5615)))+(((IkReal(-1.00000000000000))*(x5596)*(x5599)))+(((IkReal(-1.00000000000000))*(r01)*(x5594)*(x5595)))+(((IkReal(-1.00000000000000))*(x5594)*(x5613)*(x5614)))+(((IkReal(-1.00000000000000))*(r11)*(x5595)*(x5603)))+(((x5606)*(x5610)))+(((IkReal(-1.00000000000000))*(r10)*(x5596)*(x5597)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((cj0)*(r12)*(x5600)))+(((IkReal(-1.00000000000000))*(x5601)*(x5611)))+(((sj0)*(x5609)*(x5614)))+(((IkReal(-1.00000000000000))*(x5600)*(x5601)))+(((IkReal(0.0100000000000000))*(cj0)*(x5599)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x5614)))+(((IkReal(-0.0100000000000000))*(x5597)*(x5607)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5615)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x5594)))+(((IkReal(0.0100000000000000))*(x5597)*(x5605)))+(((x5607)*(x5619)))+(((IkReal(-1.00000000000000))*(x5605)*(x5619)))+(((IkReal(-1.00000000000000))*(cj0)*(x5609)*(x5615)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5614)))+(((IkReal(-1.00000000000000))*(cj0)*(x5609)*(x5614)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x5615)))+(((IkReal(0.0100000000000000))*(sj0)*(x5599)))+(((IkReal(-1.00000000000000))*(x5617)*(x5619)))+(((IkReal(-1.00000000000000))*(sj0)*(x5609)*(x5615)))+(((IkReal(0.0100000000000000))*(x5597)*(x5617)))+(((IkReal(-1.00000000000000))*(py)*(x5603)))+(((r12)*(sj0)*(x5600)))+(((IkReal(0.0100000000000000))*(x5597)*(x5610)))+(((x5611)*(x5612)))+(((x5600)*(x5612)))+(((IkReal(-1.00000000000000))*(x5610)*(x5619)))+(((IkReal(-1.00000000000000))*(px)*(x5594)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5621=((IkReal(1.00000000000000))*(cj5)); +IkReal x5622=((r10)*(sj5)*(sj6)); +IkReal x5623=((cj6)*(sj0)*(sj5)); +IkReal x5624=((r00)*(sj5)*(sj6)); +IkReal x5625=((cj0)*(cj6)*(sj5)); +if( IKabs(((((r11)*(x5625)))+(((cj0)*(x5622)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x5624)))+(((IkReal(-1.00000000000000))*(r01)*(x5623)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5621))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5621)))+(((r11)*(x5623)))+(((sj0)*(x5622)))+(((cj0)*(x5624)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5621)))+(((r01)*(x5625))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r11)*(x5625)))+(((cj0)*(x5622)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x5624)))+(((IkReal(-1.00000000000000))*(r01)*(x5623)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5621)))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5621)))+(((r11)*(x5623)))+(((sj0)*(x5622)))+(((cj0)*(x5624)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5621)))+(((r01)*(x5625)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r11)*(x5625)))+(((cj0)*(x5622)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x5624)))+(((IkReal(-1.00000000000000))*(r01)*(x5623)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5621)))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5621)))+(((r11)*(x5623)))+(((sj0)*(x5622)))+(((cj0)*(x5624)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5621)))+(((r01)*(x5625))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5626=IKcos(j3); +IkReal x5627=IKsin(j3); +IkReal x5628=((sj0)*(sj5)); +IkReal x5629=((r00)*(sj6)); +IkReal x5630=((IkReal(1.00000000000000))*(cj4)); +IkReal x5631=((cj6)*(sj0)); +IkReal x5632=((r00)*(sj4)); +IkReal x5633=((cj0)*(cj5)); +IkReal x5634=((cj6)*(r01)); +IkReal x5635=((cj5)*(sj0)); +IkReal x5636=((cj0)*(sj5)); +IkReal x5637=((cj6)*(r11)); +IkReal x5638=((r10)*(sj6)); +IkReal x5639=((r10)*(sj4)); +IkReal x5640=((cj0)*(sj4)*(sj6)); +IkReal x5641=((sj0)*(sj4)*(sj6)); +IkReal x5642=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x5635)))+(((x5628)*(x5629)))+(((IkReal(-1.00000000000000))*(x5636)*(x5638)))+(((r12)*(x5633)))+(((x5628)*(x5634)))+(x5627)+(((IkReal(-1.00000000000000))*(x5636)*(x5637)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5628)*(x5637)))+(((IkReal(-1.00000000000000))*(x5629)*(x5636)))+(((IkReal(-1.00000000000000))*(x5634)*(x5636)))+(((IkReal(-1.00000000000000))*(x5628)*(x5638)))+(((r02)*(x5633)))+(((r12)*(x5635)))+(x5626)); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x5641)))+(((IkReal(-1.00000000000000))*(r12)*(x5630)*(x5636)))+(((cj4)*(r02)*(x5628)))+(((IkReal(-1.00000000000000))*(x5630)*(x5633)*(x5638)))+(((cj4)*(cj5)*(r01)*(x5631)))+(((IkReal(-1.00000000000000))*(x5630)*(x5633)*(x5637)))+(((r11)*(x5640)))+(((cj4)*(x5629)*(x5635)))+(((x5631)*(x5632)))+(((IkReal(-1.00000000000000))*(x5639)*(x5642)))+(((IkReal(-1.00000000000000))*(x5626)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5630)*(x5635)*(x5638)))+(((r11)*(x5641)))+(((IkReal(-1.00000000000000))*(x5629)*(x5630)*(x5633)))+(((IkReal(-1.00000000000000))*(x5631)*(x5639)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x5630)*(x5631)))+(((IkReal(-1.00000000000000))*(x5630)*(x5633)*(x5634)))+(((r01)*(x5640)))+(((IkReal(-1.00000000000000))*(r12)*(x5628)*(x5630)))+(((IkReal(-1.00000000000000))*(x5632)*(x5642)))+(x5627)+(((IkReal(-1.00000000000000))*(r02)*(x5630)*(x5636)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5643=((cj5)*(r02)); +IkReal x5644=((cj0)*(sj5)); +IkReal x5645=((r10)*(sj6)); +IkReal x5646=((IkReal(1.00000000000000))*(cj6)); +IkReal x5647=((sj0)*(sj5)); +IkReal x5648=((cj5)*(r12)); +IkReal x5649=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((cj6)*(r11)*(x5644)))+(((x5644)*(x5645)))+(((IkReal(-1.00000000000000))*(cj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5647)*(x5649)))+(((IkReal(-1.00000000000000))*(r01)*(x5646)*(x5647)))+(((sj0)*(x5643))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5645)*(x5647)))+(((cj0)*(x5643)))+(((IkReal(-1.00000000000000))*(x5644)*(x5649)))+(((IkReal(-1.00000000000000))*(r11)*(x5646)*(x5647)))+(((IkReal(-1.00000000000000))*(r01)*(x5644)*(x5646))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj6)*(r11)*(x5644)))+(((x5644)*(x5645)))+(((IkReal(-1.00000000000000))*(cj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5647)*(x5649)))+(((IkReal(-1.00000000000000))*(r01)*(x5646)*(x5647)))+(((sj0)*(x5643)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5645)*(x5647)))+(((cj0)*(x5643)))+(((IkReal(-1.00000000000000))*(x5644)*(x5649)))+(((IkReal(-1.00000000000000))*(r11)*(x5646)*(x5647)))+(((IkReal(-1.00000000000000))*(r01)*(x5644)*(x5646)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj6)*(r11)*(x5644)))+(((x5644)*(x5645)))+(((IkReal(-1.00000000000000))*(cj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5647)*(x5649)))+(((IkReal(-1.00000000000000))*(r01)*(x5646)*(x5647)))+(((sj0)*(x5643)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5645)*(x5647)))+(((cj0)*(x5643)))+(((IkReal(-1.00000000000000))*(x5644)*(x5649)))+(((IkReal(-1.00000000000000))*(r11)*(x5646)*(x5647)))+(((IkReal(-1.00000000000000))*(r01)*(x5644)*(x5646))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5650=IKsin(j3); +IkReal x5651=IKcos(j3); +IkReal x5652=((sj0)*(sj5)); +IkReal x5653=((r00)*(sj6)); +IkReal x5654=((IkReal(1.00000000000000))*(cj4)); +IkReal x5655=((cj6)*(r01)); +IkReal x5656=((cj0)*(cj5)); +IkReal x5657=((cj5)*(sj0)); +IkReal x5658=((cj6)*(r11)); +IkReal x5659=((cj0)*(sj5)); +IkReal x5660=((IkReal(1.00000000000000))*(cj1)); +IkReal x5661=((cj6)*(sj4)); +IkReal x5662=((IkReal(1.00000000000000))*(sj1)); +IkReal x5663=((cj4)*(cj5)); +IkReal x5664=((cj6)*(r21)); +IkReal x5665=((r20)*(sj6)); +IkReal x5666=((r10)*(sj6)); +IkReal x5667=((IkReal(1.00000000000000))*(cj0)); +IkReal x5668=((cj0)*(sj4)*(sj6)); +IkReal x5669=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x5664)))+(((IkReal(-1.00000000000000))*(x5651)*(x5662)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5665)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x5661)))+(((x5663)*(x5665)))+(((IkReal(-1.00000000000000))*(x5650)*(x5662)))+(((x5663)*(x5664)))); +evalcond[2]=((((x5652)*(x5653)))+(((r12)*(x5656)))+(((x5652)*(x5655)))+(((IkReal(-1.00000000000000))*(x5659)*(x5666)))+(((IkReal(-1.00000000000000))*(x5658)*(x5659)))+(x5650)+(((IkReal(-1.00000000000000))*(r02)*(x5657)))); +evalcond[3]=((((r12)*(x5657)))+(((IkReal(-1.00000000000000))*(x5651)*(x5660)))+(((r02)*(x5656)))+(((IkReal(-1.00000000000000))*(x5655)*(x5659)))+(((IkReal(-1.00000000000000))*(x5652)*(x5666)))+(((IkReal(-1.00000000000000))*(x5652)*(x5658)))+(((IkReal(-1.00000000000000))*(x5653)*(x5659)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x5669)))+(((cj4)*(x5655)*(x5657)))+(((IkReal(-1.00000000000000))*(x5654)*(x5656)*(x5658)))+(((r11)*(x5668)))+(((cj4)*(r02)*(x5652)))+(((IkReal(-1.00000000000000))*(x5654)*(x5656)*(x5666)))+(((IkReal(-1.00000000000000))*(r10)*(x5661)*(x5667)))+(((r00)*(sj0)*(x5661)))+(((cj4)*(x5653)*(x5657)))+(((IkReal(-1.00000000000000))*(r12)*(x5654)*(x5659)))+(((IkReal(-1.00000000000000))*(x5651)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x5654)*(x5659)))+(((IkReal(-1.00000000000000))*(x5650)*(x5660)))+(((r11)*(x5669)))+(((IkReal(-1.00000000000000))*(x5653)*(x5654)*(x5656)))+(((IkReal(-1.00000000000000))*(r12)*(x5652)*(x5654)))+(((IkReal(-1.00000000000000))*(r00)*(x5661)*(x5667)))+(((IkReal(-1.00000000000000))*(x5654)*(x5657)*(x5658)))+(((IkReal(-1.00000000000000))*(x5654)*(x5655)*(x5656)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5661)))+(((IkReal(-1.00000000000000))*(x5654)*(x5657)*(x5666)))+(((r01)*(x5668)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5670=((sj5)*(sj6)); +IkReal x5671=((IkReal(1.00000000000000))*(sj0)); +IkReal x5672=((cj6)*(sj5)); +IkReal x5673=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r00)*(x5670)*(x5671)))+(((cj0)*(r10)*(x5670)))+(((cj0)*(r11)*(x5672)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x5671)*(x5672)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5673))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5672)))+(((r20)*(x5670)))+(((IkReal(-1.00000000000000))*(r22)*(x5673))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r00)*(x5670)*(x5671)))+(((cj0)*(r10)*(x5670)))+(((cj0)*(r11)*(x5672)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x5671)*(x5672)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5673)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5672)))+(((r20)*(x5670)))+(((IkReal(-1.00000000000000))*(r22)*(x5673)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r00)*(x5670)*(x5671)))+(((cj0)*(r10)*(x5670)))+(((cj0)*(r11)*(x5672)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x5671)*(x5672)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5673)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5672)))+(((r20)*(x5670)))+(((IkReal(-1.00000000000000))*(r22)*(x5673))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5674=IKsin(j3); +IkReal x5675=IKcos(j3); +IkReal x5676=((sj0)*(sj5)); +IkReal x5677=((r00)*(sj6)); +IkReal x5678=((IkReal(1.00000000000000))*(cj4)); +IkReal x5679=((cj6)*(r01)); +IkReal x5680=((cj0)*(cj5)); +IkReal x5681=((cj5)*(sj0)); +IkReal x5682=((cj6)*(r11)); +IkReal x5683=((cj0)*(sj5)); +IkReal x5684=((IkReal(1.00000000000000))*(cj1)); +IkReal x5685=((cj6)*(sj4)); +IkReal x5686=((IkReal(1.00000000000000))*(sj1)); +IkReal x5687=((cj4)*(cj5)); +IkReal x5688=((cj6)*(r21)); +IkReal x5689=((r20)*(sj6)); +IkReal x5690=((r10)*(sj6)); +IkReal x5691=((IkReal(1.00000000000000))*(cj0)); +IkReal x5692=((cj0)*(sj4)*(sj6)); +IkReal x5693=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x5675)*(x5686)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5689)))+(((sj5)*(x5688)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5687)*(x5689)))+(((IkReal(-1.00000000000000))*(x5674)*(x5686)))+(((r20)*(x5685)))+(((cj4)*(r22)*(sj5)))+(((x5687)*(x5688)))); +evalcond[2]=((x5674)+(((IkReal(-1.00000000000000))*(x5682)*(x5683)))+(((IkReal(-1.00000000000000))*(r02)*(x5681)))+(((x5676)*(x5677)))+(((IkReal(-1.00000000000000))*(x5683)*(x5690)))+(((x5676)*(x5679)))+(((r12)*(x5680)))); +evalcond[3]=((((r02)*(x5680)))+(((IkReal(-1.00000000000000))*(x5675)*(x5684)))+(((IkReal(-1.00000000000000))*(x5679)*(x5683)))+(((IkReal(-1.00000000000000))*(x5676)*(x5690)))+(((r12)*(x5681)))+(((IkReal(-1.00000000000000))*(x5677)*(x5683)))+(((IkReal(-1.00000000000000))*(x5676)*(x5682)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5675)))+(((cj4)*(x5677)*(x5681)))+(((IkReal(-1.00000000000000))*(r01)*(x5693)))+(((r00)*(sj0)*(x5685)))+(((cj4)*(x5679)*(x5681)))+(((IkReal(-1.00000000000000))*(x5678)*(x5680)*(x5682)))+(((cj4)*(r02)*(x5676)))+(((IkReal(-1.00000000000000))*(r12)*(x5678)*(x5683)))+(((IkReal(-1.00000000000000))*(r10)*(x5685)*(x5691)))+(((r11)*(x5692)))+(((IkReal(-1.00000000000000))*(x5678)*(x5680)*(x5690)))); +evalcond[5]=((((r01)*(x5692)))+(((IkReal(-1.00000000000000))*(x5674)*(x5684)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5685)))+(((r11)*(x5693)))+(((IkReal(-1.00000000000000))*(r02)*(x5678)*(x5683)))+(((IkReal(-1.00000000000000))*(x5678)*(x5681)*(x5690)))+(((IkReal(-1.00000000000000))*(r12)*(x5676)*(x5678)))+(((IkReal(-1.00000000000000))*(x5677)*(x5678)*(x5680)))+(((IkReal(-1.00000000000000))*(x5678)*(x5681)*(x5682)))+(((IkReal(-1.00000000000000))*(x5678)*(x5679)*(x5680)))+(((IkReal(-1.00000000000000))*(r00)*(x5685)*(x5691)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5694=((r20)*(sj6)); +IkReal x5695=((cj4)*(cj5)); +IkReal x5696=((cj6)*(r21)); +if( IKabs(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5695)*(x5696)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5694)*(x5695))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst30)*(((((sj5)*(x5694)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5696))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5695)*(x5696)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5694)*(x5695)))))), ((gconst30)*(((((sj5)*(x5694)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5696))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5697=IKsin(j3); +IkReal x5698=IKcos(j3); +IkReal x5699=((sj0)*(sj5)); +IkReal x5700=((r00)*(sj6)); +IkReal x5701=((IkReal(1.00000000000000))*(cj4)); +IkReal x5702=((cj6)*(r01)); +IkReal x5703=((cj0)*(cj5)); +IkReal x5704=((cj5)*(sj0)); +IkReal x5705=((cj6)*(r11)); +IkReal x5706=((cj0)*(sj5)); +IkReal x5707=((IkReal(1.00000000000000))*(cj1)); +IkReal x5708=((cj6)*(sj4)); +IkReal x5709=((IkReal(1.00000000000000))*(sj1)); +IkReal x5710=((cj4)*(cj5)); +IkReal x5711=((cj6)*(r21)); +IkReal x5712=((r20)*(sj6)); +IkReal x5713=((r10)*(sj6)); +IkReal x5714=((IkReal(1.00000000000000))*(cj0)); +IkReal x5715=((cj0)*(sj4)*(sj6)); +IkReal x5716=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x5711)))+(((IkReal(-1.00000000000000))*(x5698)*(x5709)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5712)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x5710)*(x5711)))+(((r20)*(x5708)))+(((IkReal(-1.00000000000000))*(x5697)*(x5709)))+(((x5710)*(x5712)))); +evalcond[2]=((x5697)+(((x5699)*(x5702)))+(((x5699)*(x5700)))+(((IkReal(-1.00000000000000))*(r02)*(x5704)))+(((IkReal(-1.00000000000000))*(x5706)*(x5713)))+(((IkReal(-1.00000000000000))*(x5705)*(x5706)))+(((r12)*(x5703)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5702)*(x5706)))+(((r02)*(x5703)))+(((IkReal(-1.00000000000000))*(x5700)*(x5706)))+(((IkReal(-1.00000000000000))*(x5699)*(x5705)))+(((IkReal(-1.00000000000000))*(x5698)*(x5707)))+(((r12)*(x5704)))+(((IkReal(-1.00000000000000))*(x5699)*(x5713)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5701)*(x5703)*(x5713)))+(((IkReal(-1.00000000000000))*(r01)*(x5716)))+(((IkReal(-1.00000000000000))*(x5698)))+(((IkReal(-1.00000000000000))*(r12)*(x5701)*(x5706)))+(((IkReal(-1.00000000000000))*(r10)*(x5708)*(x5714)))+(((r00)*(sj0)*(x5708)))+(((r11)*(x5715)))+(((cj4)*(x5702)*(x5704)))+(((cj4)*(x5700)*(x5704)))+(((IkReal(-1.00000000000000))*(x5701)*(x5703)*(x5705)))+(((cj4)*(r02)*(x5699)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5701)*(x5702)*(x5703)))+(((r01)*(x5715)))+(((IkReal(-1.00000000000000))*(x5700)*(x5701)*(x5703)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5708)))+(((IkReal(-1.00000000000000))*(r00)*(x5708)*(x5714)))+(((IkReal(-1.00000000000000))*(x5697)*(x5707)))+(((IkReal(-1.00000000000000))*(r12)*(x5699)*(x5701)))+(((r11)*(x5716)))+(((IkReal(-1.00000000000000))*(x5701)*(x5704)*(x5705)))+(((IkReal(-1.00000000000000))*(x5701)*(x5704)*(x5713)))+(((IkReal(-1.00000000000000))*(r02)*(x5701)*(x5706)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5717=(cj1)*(cj1); +IkReal x5718=(sj1)*(sj1); +IkReal x5719=((r00)*(sj6)); +IkReal x5720=((cj6)*(r01)); +IkReal x5721=((IkReal(1.00000000000000))*(cj1)); +IkReal x5722=((cj5)*(r22)); +IkReal x5723=((sj5)*(sj6)); +IkReal x5724=((r10)*(sj0)); +IkReal x5725=((cj1)*(cj5)); +IkReal x5726=((cj0)*(r02)); +IkReal x5727=((r12)*(sj0)); +IkReal x5728=((IkReal(1.00000000000000))*(sj1)); +IkReal x5729=((cj6)*(sj5)); +IkReal x5730=((cj0)*(sj5)); +IkReal x5731=((r11)*(sj0)); +IkReal x5732=((sj1)*(x5730)); +if( IKabs(((((IKabs(((((cj2)*(x5717)))+(((cj2)*(x5718))))) != 0)?((IkReal)1/(((((cj2)*(x5717)))+(((cj2)*(x5718)))))):(IkReal)1.0e30))*(((((x5720)*(x5732)))+(((sj1)*(x5729)*(x5731)))+(((IkReal(-1.00000000000000))*(cj5)*(x5726)*(x5728)))+(((IkReal(-1.00000000000000))*(cj5)*(x5727)*(x5728)))+(((cj1)*(r21)*(x5729)))+(((cj1)*(r20)*(x5723)))+(((x5719)*(x5732)))+(((sj1)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5721)*(x5722))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x5718)+(x5717))) != 0)?((IkReal)1/(((x5718)+(x5717)))):(IkReal)1.0e30))*(((((x5725)*(x5726)))+(((IkReal(-1.00000000000000))*(x5721)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5719)*(x5721)*(x5730)))+(((x5725)*(x5727)))+(((IkReal(-1.00000000000000))*(x5722)*(x5728)))+(((r20)*(sj1)*(x5723)))+(((r21)*(sj1)*(x5729)))+(((IkReal(-1.00000000000000))*(x5720)*(x5721)*(x5730)))+(((IkReal(-1.00000000000000))*(x5721)*(x5729)*(x5731))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x5717)))+(((cj2)*(x5718))))) != 0)?((IkReal)1/(((((cj2)*(x5717)))+(((cj2)*(x5718)))))):(IkReal)1.0e30))*(((((x5720)*(x5732)))+(((sj1)*(x5729)*(x5731)))+(((IkReal(-1.00000000000000))*(cj5)*(x5726)*(x5728)))+(((IkReal(-1.00000000000000))*(cj5)*(x5727)*(x5728)))+(((cj1)*(r21)*(x5729)))+(((cj1)*(r20)*(x5723)))+(((x5719)*(x5732)))+(((sj1)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5721)*(x5722)))))))+IKsqr(((((IKabs(((x5718)+(x5717))) != 0)?((IkReal)1/(((x5718)+(x5717)))):(IkReal)1.0e30))*(((((x5725)*(x5726)))+(((IkReal(-1.00000000000000))*(x5721)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5719)*(x5721)*(x5730)))+(((x5725)*(x5727)))+(((IkReal(-1.00000000000000))*(x5722)*(x5728)))+(((r20)*(sj1)*(x5723)))+(((r21)*(sj1)*(x5729)))+(((IkReal(-1.00000000000000))*(x5720)*(x5721)*(x5730)))+(((IkReal(-1.00000000000000))*(x5721)*(x5729)*(x5731)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x5717)))+(((cj2)*(x5718))))) != 0)?((IkReal)1/(((((cj2)*(x5717)))+(((cj2)*(x5718)))))):(IkReal)1.0e30))*(((((x5720)*(x5732)))+(((sj1)*(x5729)*(x5731)))+(((IkReal(-1.00000000000000))*(cj5)*(x5726)*(x5728)))+(((IkReal(-1.00000000000000))*(cj5)*(x5727)*(x5728)))+(((cj1)*(r21)*(x5729)))+(((cj1)*(r20)*(x5723)))+(((x5719)*(x5732)))+(((sj1)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5721)*(x5722)))))), ((((IKabs(((x5718)+(x5717))) != 0)?((IkReal)1/(((x5718)+(x5717)))):(IkReal)1.0e30))*(((((x5725)*(x5726)))+(((IkReal(-1.00000000000000))*(x5721)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5719)*(x5721)*(x5730)))+(((x5725)*(x5727)))+(((IkReal(-1.00000000000000))*(x5722)*(x5728)))+(((r20)*(sj1)*(x5723)))+(((r21)*(sj1)*(x5729)))+(((IkReal(-1.00000000000000))*(x5720)*(x5721)*(x5730)))+(((IkReal(-1.00000000000000))*(x5721)*(x5729)*(x5731))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x5733=IKsin(j3); +IkReal x5734=IKcos(j3); +IkReal x5735=((sj5)*(sj6)); +IkReal x5736=((cj0)*(cj5)); +IkReal x5737=((IkReal(1.00000000000000))*(cj0)); +IkReal x5738=((IkReal(1.00000000000000))*(sj0)); +IkReal x5739=((IkReal(1.00000000000000))*(x5734)); +IkReal x5740=((IkReal(1.00000000000000))*(x5733)); +IkReal x5741=((cj6)*(r01)*(sj5)); +IkReal x5742=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x5739)))+(((IkReal(-1.00000000000000))*(cj1)*(cj2)*(x5740)))+(((r20)*(x5735)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5737)*(x5742)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x5738)))+(((r12)*(x5736)))+(((IkReal(-1.00000000000000))*(r10)*(x5735)*(x5737)))+(((sj0)*(x5741)))+(((IkReal(-1.00000000000000))*(sj2)*(x5740)))+(((r00)*(sj0)*(x5735)))); +evalcond[2]=((((cj2)*(sj1)*(x5733)))+(((IkReal(-1.00000000000000))*(r00)*(x5735)*(x5737)))+(((IkReal(-1.00000000000000))*(x5738)*(x5742)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(x5737)*(x5741)))+(((r02)*(x5736)))+(((IkReal(-1.00000000000000))*(r10)*(x5735)*(x5738)))+(((IkReal(-1.00000000000000))*(cj1)*(x5739)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst2; +IkReal x5743=(r21)*(r21); +IkReal x5744=(cj5)*(cj5); +IkReal x5745=(sj6)*(sj6); +IkReal x5746=(cj6)*(cj6); +IkReal x5747=(r20)*(r20); +IkReal x5748=((cj6)*(r21)); +IkReal x5749=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x5750=((cj5)*(r22)*(sj5)); +IkReal x5751=((IkReal(1.00000000000000))*(x5745)); +IkReal x5752=((IkReal(1.00000000000000))*(x5746)); +gconst2=IKsign(((((x5748)*(x5749)))+(((IkReal(-1.00000000000000))*(x5749)*(x5750)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-2.00000000000000))*(x5748)*(x5750)))+(((IkReal(-1.00000000000000))*(x5744)*(x5747)*(x5751)))+(((IkReal(-1.00000000000000))*(x5743)*(x5744)*(x5752)))+(((IkReal(-1.00000000000000))*(x5743)*(x5751)))+(((IkReal(-1.00000000000000))*(x5747)*(x5752)))+(((IkReal(-1.00000000000000))*(x5744)*(x5748)*(x5749))))); +IkReal x5753=(r21)*(r21); +IkReal x5754=(cj5)*(cj5); +IkReal x5755=(sj6)*(sj6); +IkReal x5756=(cj6)*(cj6); +IkReal x5757=(r20)*(r20); +IkReal x5758=((cj6)*(r21)); +IkReal x5759=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x5760=((cj5)*(r22)*(sj5)); +IkReal x5761=((IkReal(1.00000000000000))*(x5755)); +IkReal x5762=((IkReal(1.00000000000000))*(x5756)); +dummyeval[0]=((((IkReal(-2.00000000000000))*(x5758)*(x5760)))+(((IkReal(-1.00000000000000))*(x5753)*(x5761)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x5754)*(x5758)*(x5759)))+(((IkReal(-1.00000000000000))*(x5754)*(x5757)*(x5761)))+(((IkReal(-1.00000000000000))*(x5759)*(x5760)))+(((x5758)*(x5759)))+(((IkReal(-1.00000000000000))*(x5753)*(x5754)*(x5762)))+(((IkReal(-1.00000000000000))*(x5757)*(x5762)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst3; +IkReal x5763=(cj6)*(cj6); +IkReal x5764=(sj6)*(sj6); +IkReal x5765=((IkReal(1.00000000000000))*(r21)); +IkReal x5766=((cj6)*(r20)); +IkReal x5767=((r22)*(sj5)); +IkReal x5768=((r01)*(sj0)); +IkReal x5769=((r00)*(sj0)); +IkReal x5770=((cj0)*(r10)); +IkReal x5771=((r02)*(sj0)*(sj5)); +IkReal x5772=((cj5)*(x5763)); +IkReal x5773=((cj0)*(r12)*(sj5)); +IkReal x5774=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x5775=((cj5)*(x5764)); +IkReal x5776=((r20)*(x5775)); +gconst3=IKsign(((((IkReal(-1.00000000000000))*(x5765)*(x5769)*(x5775)))+(((sj6)*(x5767)*(x5768)))+(((IkReal(-1.00000000000000))*(x5774)*(x5776)))+(((x5768)*(x5776)))+(((r21)*(x5770)*(x5775)))+(((cj6)*(x5767)*(x5770)))+(((r21)*(x5770)*(x5772)))+(((IkReal(-1.00000000000000))*(r20)*(x5772)*(x5774)))+(((r21)*(sj6)*(x5773)))+(((IkReal(-1.00000000000000))*(x5766)*(x5773)))+(((IkReal(-1.00000000000000))*(sj6)*(x5767)*(x5774)))+(((IkReal(-1.00000000000000))*(cj6)*(x5767)*(x5769)))+(((IkReal(-1.00000000000000))*(x5765)*(x5769)*(x5772)))+(((r20)*(x5768)*(x5772)))+(((IkReal(-1.00000000000000))*(sj6)*(x5765)*(x5771)))+(((x5766)*(x5771))))); +IkReal x5777=(cj6)*(cj6); +IkReal x5778=(sj6)*(sj6); +IkReal x5779=((IkReal(1.00000000000000))*(r21)); +IkReal x5780=((cj6)*(r20)); +IkReal x5781=((r22)*(sj5)); +IkReal x5782=((r01)*(sj0)); +IkReal x5783=((r00)*(sj0)); +IkReal x5784=((cj0)*(r10)); +IkReal x5785=((r02)*(sj0)*(sj5)); +IkReal x5786=((cj5)*(x5777)); +IkReal x5787=((cj0)*(r12)*(sj5)); +IkReal x5788=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x5789=((cj5)*(x5778)); +IkReal x5790=((r20)*(x5789)); +dummyeval[0]=((((x5780)*(x5785)))+(((r20)*(x5782)*(x5786)))+(((sj6)*(x5781)*(x5782)))+(((x5782)*(x5790)))+(((IkReal(-1.00000000000000))*(cj6)*(x5781)*(x5783)))+(((r21)*(x5784)*(x5789)))+(((r21)*(sj6)*(x5787)))+(((IkReal(-1.00000000000000))*(r20)*(x5786)*(x5788)))+(((IkReal(-1.00000000000000))*(sj6)*(x5779)*(x5785)))+(((IkReal(-1.00000000000000))*(x5788)*(x5790)))+(((r21)*(x5784)*(x5786)))+(((IkReal(-1.00000000000000))*(sj6)*(x5781)*(x5788)))+(((IkReal(-1.00000000000000))*(x5779)*(x5783)*(x5786)))+(((IkReal(-1.00000000000000))*(x5780)*(x5787)))+(((cj6)*(x5781)*(x5784)))+(((IkReal(-1.00000000000000))*(x5779)*(x5783)*(x5789)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5791=((cj5)*(sj6)); +IkReal x5792=((cj2)*(r21)); +IkReal x5793=((cj5)*(cj6)); +IkReal x5794=((IkReal(1.00000000000000))*(cj2)*(r20)); +IkReal x5795=((cj0)*(cj1)*(sj2)); +IkReal x5796=((IkReal(1.00000000000000))*(cj1)*(sj0)*(sj2)); +IkReal x5797=((r10)*(x5795)); +if( IKabs(((gconst3)*(((((IkReal(-1.00000000000000))*(r11)*(sj6)*(x5795)))+(((sj6)*(x5792)))+(((IkReal(-1.00000000000000))*(cj6)*(x5794)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x5796)))+(((cj1)*(r01)*(sj0)*(sj2)*(sj6)))+(((cj6)*(x5797))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst3)*(((((IkReal(-1.00000000000000))*(x5792)*(x5793)))+(((r11)*(x5793)*(x5795)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x5796)))+(((x5791)*(x5797)))+(((IkReal(-1.00000000000000))*(r01)*(x5793)*(x5796)))+(((IkReal(-1.00000000000000))*(r00)*(x5791)*(x5796)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x5791)*(x5794)))+(((r12)*(sj5)*(x5795))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst3)*(((((IkReal(-1.00000000000000))*(r11)*(sj6)*(x5795)))+(((sj6)*(x5792)))+(((IkReal(-1.00000000000000))*(cj6)*(x5794)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x5796)))+(((cj1)*(r01)*(sj0)*(sj2)*(sj6)))+(((cj6)*(x5797)))))), ((gconst3)*(((((IkReal(-1.00000000000000))*(x5792)*(x5793)))+(((r11)*(x5793)*(x5795)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x5796)))+(((x5791)*(x5797)))+(((IkReal(-1.00000000000000))*(r01)*(x5793)*(x5796)))+(((IkReal(-1.00000000000000))*(r00)*(x5791)*(x5796)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x5791)*(x5794)))+(((r12)*(sj5)*(x5795))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x5798=IKsin(j4); +IkReal x5799=IKcos(j4); +IkReal x5800=((r00)*(sj6)); +IkReal x5801=((IkReal(1.00000000000000))*(r12)); +IkReal x5802=((IkReal(1.00000000000000))*(cj6)); +IkReal x5803=((cj6)*(r01)); +IkReal x5804=((IkReal(1.00000000000000))*(cj1)); +IkReal x5805=((cj2)*(cj3)); +IkReal x5806=((IkReal(1.00000000000000))*(sj1)); +IkReal x5807=((r11)*(sj6)); +IkReal x5808=((r01)*(sj6)); +IkReal x5809=((IkReal(1.00000000000000))*(cj5)); +IkReal x5810=((r10)*(sj6)); +IkReal x5811=((cj5)*(r11)); +IkReal x5812=((cj6)*(r00)); +IkReal x5813=((r21)*(sj6)); +IkReal x5814=((r02)*(sj5)); +IkReal x5815=((cj6)*(r10)); +IkReal x5816=((cj5)*(sj6)); +IkReal x5817=((cj5)*(r01)); +IkReal x5818=((sj5)*(x5798)); +IkReal x5819=((cj0)*(x5799)); +IkReal x5820=((cj0)*(x5798)); +IkReal x5821=((sj0)*(x5799)); +IkReal x5822=((sj0)*(x5798)); +IkReal x5823=((r20)*(x5799)); +IkReal x5824=((cj5)*(cj6)*(r21)); +IkReal x5825=((r20)*(x5798)); +IkReal x5826=((cj5)*(x5822)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj2)*(x5804)))+(((x5816)*(x5825)))+(((r22)*(x5818)))+(((IkReal(-1.00000000000000))*(x5802)*(x5823)))+(((x5798)*(x5824)))+(((x5799)*(x5813)))); +evalcond[1]=((((x5799)*(x5824)))+(((IkReal(-1.00000000000000))*(sj3)*(x5806)))+(((cj1)*(x5805)))+(((r22)*(sj5)*(x5799)))+(((IkReal(-1.00000000000000))*(x5798)*(x5813)))+(((x5816)*(x5823)))+(((cj6)*(x5825)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x5802)*(x5821)))+(((IkReal(-1.00000000000000))*(cj0)*(x5801)*(x5818)))+(((IkReal(-1.00000000000000))*(x5802)*(x5811)*(x5820)))+(((x5808)*(x5821)))+(cj2)+(((x5803)*(x5826)))+(((IkReal(-1.00000000000000))*(x5809)*(x5810)*(x5820)))+(((x5800)*(x5826)))+(((x5815)*(x5819)))+(((IkReal(-1.00000000000000))*(x5807)*(x5819)))+(((x5814)*(x5822)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x5802)*(x5820)))+(((cj5)*(x5803)*(x5821)))+(((IkReal(-1.00000000000000))*(sj5)*(x5801)*(x5819)))+(((x5807)*(x5820)))+(((IkReal(-1.00000000000000))*(x5808)*(x5822)))+(((x5814)*(x5821)))+(((x5812)*(x5822)))+(((IkReal(-1.00000000000000))*(x5809)*(x5810)*(x5819)))+(((cj3)*(sj2)))+(((cj5)*(x5800)*(x5821)))+(((IkReal(-1.00000000000000))*(x5802)*(x5811)*(x5819)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5809)*(x5810)*(x5822)))+(((x5815)*(x5821)))+(((IkReal(-1.00000000000000))*(x5814)*(x5820)))+(((IkReal(-1.00000000000000))*(x5808)*(x5819)))+(((x5812)*(x5819)))+(((IkReal(-1.00000000000000))*(sj0)*(x5801)*(x5818)))+(((IkReal(-1.00000000000000))*(x5807)*(x5821)))+(((IkReal(-1.00000000000000))*(x5800)*(x5809)*(x5820)))+(((sj1)*(sj2)))+(((IkReal(-1.00000000000000))*(x5802)*(x5811)*(x5822)))+(((IkReal(-1.00000000000000))*(x5802)*(x5817)*(x5820)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x5801)*(x5821)))+(((IkReal(-1.00000000000000))*(x5802)*(x5817)*(x5819)))+(((IkReal(-1.00000000000000))*(x5805)*(x5806)))+(((IkReal(-1.00000000000000))*(x5814)*(x5819)))+(((IkReal(-1.00000000000000))*(r10)*(x5802)*(x5822)))+(((IkReal(-1.00000000000000))*(x5809)*(x5810)*(x5821)))+(((IkReal(-1.00000000000000))*(x5802)*(x5811)*(x5821)))+(((x5808)*(x5820)))+(((IkReal(-1.00000000000000))*(r00)*(x5802)*(x5820)))+(((x5807)*(x5822)))+(((IkReal(-1.00000000000000))*(sj3)*(x5804)))+(((IkReal(-1.00000000000000))*(x5800)*(x5809)*(x5819)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5827=((cj1)*(sj2)); +IkReal x5828=((cj6)*(r20)); +IkReal x5829=((sj1)*(sj3)); +IkReal x5830=((r21)*(sj6)); +IkReal x5831=((IkReal(1.00000000000000))*(cj5)); +IkReal x5832=((cj6)*(r21)); +IkReal x5833=((r20)*(sj6)); +IkReal x5834=((IkReal(1.00000000000000))*(r22)*(sj5)); +IkReal x5835=((cj1)*(cj2)*(cj3)); +if( IKabs(((gconst2)*(((((IkReal(-1.00000000000000))*(x5827)*(x5831)*(x5832)))+(((x5828)*(x5835)))+(((IkReal(-1.00000000000000))*(x5827)*(x5831)*(x5833)))+(((IkReal(-1.00000000000000))*(x5830)*(x5835)))+(((x5829)*(x5830)))+(((IkReal(-1.00000000000000))*(x5827)*(x5834)))+(((IkReal(-1.00000000000000))*(x5828)*(x5829))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst2)*(((((IkReal(-1.00000000000000))*(x5829)*(x5831)*(x5832)))+(((IkReal(-1.00000000000000))*(x5829)*(x5834)))+(((cj5)*(x5833)*(x5835)))+(((IkReal(-1.00000000000000))*(x5827)*(x5830)))+(((x5827)*(x5828)))+(((r22)*(sj5)*(x5835)))+(((cj5)*(x5832)*(x5835)))+(((IkReal(-1.00000000000000))*(x5829)*(x5831)*(x5833))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst2)*(((((IkReal(-1.00000000000000))*(x5827)*(x5831)*(x5832)))+(((x5828)*(x5835)))+(((IkReal(-1.00000000000000))*(x5827)*(x5831)*(x5833)))+(((IkReal(-1.00000000000000))*(x5830)*(x5835)))+(((x5829)*(x5830)))+(((IkReal(-1.00000000000000))*(x5827)*(x5834)))+(((IkReal(-1.00000000000000))*(x5828)*(x5829)))))), ((gconst2)*(((((IkReal(-1.00000000000000))*(x5829)*(x5831)*(x5832)))+(((IkReal(-1.00000000000000))*(x5829)*(x5834)))+(((cj5)*(x5833)*(x5835)))+(((IkReal(-1.00000000000000))*(x5827)*(x5830)))+(((x5827)*(x5828)))+(((r22)*(sj5)*(x5835)))+(((cj5)*(x5832)*(x5835)))+(((IkReal(-1.00000000000000))*(x5829)*(x5831)*(x5833))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x5836=IKsin(j4); +IkReal x5837=IKcos(j4); +IkReal x5838=((r00)*(sj6)); +IkReal x5839=((IkReal(1.00000000000000))*(r12)); +IkReal x5840=((IkReal(1.00000000000000))*(cj6)); +IkReal x5841=((cj6)*(r01)); +IkReal x5842=((IkReal(1.00000000000000))*(cj1)); +IkReal x5843=((cj2)*(cj3)); +IkReal x5844=((IkReal(1.00000000000000))*(sj1)); +IkReal x5845=((r11)*(sj6)); +IkReal x5846=((r01)*(sj6)); +IkReal x5847=((IkReal(1.00000000000000))*(cj5)); +IkReal x5848=((r10)*(sj6)); +IkReal x5849=((cj5)*(r11)); +IkReal x5850=((cj6)*(r00)); +IkReal x5851=((r21)*(sj6)); +IkReal x5852=((r02)*(sj5)); +IkReal x5853=((cj6)*(r10)); +IkReal x5854=((cj5)*(sj6)); +IkReal x5855=((cj5)*(r01)); +IkReal x5856=((sj5)*(x5836)); +IkReal x5857=((cj0)*(x5837)); +IkReal x5858=((cj0)*(x5836)); +IkReal x5859=((sj0)*(x5837)); +IkReal x5860=((sj0)*(x5836)); +IkReal x5861=((r20)*(x5837)); +IkReal x5862=((cj5)*(cj6)*(r21)); +IkReal x5863=((r20)*(x5836)); +IkReal x5864=((cj5)*(x5860)); +evalcond[0]=((((x5837)*(x5851)))+(((r22)*(x5856)))+(((x5836)*(x5862)))+(((IkReal(-1.00000000000000))*(x5840)*(x5861)))+(((x5854)*(x5863)))+(((IkReal(-1.00000000000000))*(sj2)*(x5842)))); +evalcond[1]=((((x5837)*(x5862)))+(((IkReal(-1.00000000000000))*(sj3)*(x5844)))+(((IkReal(-1.00000000000000))*(x5836)*(x5851)))+(((x5854)*(x5861)))+(((cj1)*(x5843)))+(((cj6)*(x5863)))+(((r22)*(sj5)*(x5837)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj0)*(x5839)*(x5856)))+(((IkReal(-1.00000000000000))*(x5840)*(x5849)*(x5858)))+(((x5853)*(x5857)))+(((IkReal(-1.00000000000000))*(r00)*(x5840)*(x5859)))+(((IkReal(-1.00000000000000))*(x5845)*(x5857)))+(cj2)+(((IkReal(-1.00000000000000))*(x5847)*(x5848)*(x5858)))+(((x5846)*(x5859)))+(((x5841)*(x5864)))+(((x5838)*(x5864)))+(((x5852)*(x5860)))); +evalcond[3]=((((cj5)*(x5838)*(x5859)))+(((cj5)*(x5841)*(x5859)))+(((x5852)*(x5859)))+(((x5850)*(x5860)))+(((IkReal(-1.00000000000000))*(sj5)*(x5839)*(x5857)))+(((x5845)*(x5858)))+(((IkReal(-1.00000000000000))*(x5840)*(x5849)*(x5857)))+(((IkReal(-1.00000000000000))*(r10)*(x5840)*(x5858)))+(((IkReal(-1.00000000000000))*(x5847)*(x5848)*(x5857)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(x5846)*(x5860)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5852)*(x5858)))+(((IkReal(-1.00000000000000))*(x5840)*(x5855)*(x5858)))+(((IkReal(-1.00000000000000))*(x5847)*(x5848)*(x5860)))+(((IkReal(-1.00000000000000))*(x5840)*(x5849)*(x5860)))+(((IkReal(-1.00000000000000))*(sj0)*(x5839)*(x5856)))+(((x5853)*(x5859)))+(((IkReal(-1.00000000000000))*(x5838)*(x5847)*(x5858)))+(((x5850)*(x5857)))+(((IkReal(-1.00000000000000))*(x5845)*(x5859)))+(((sj1)*(sj2)))+(((IkReal(-1.00000000000000))*(x5846)*(x5857)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5840)*(x5855)*(x5857)))+(((IkReal(-1.00000000000000))*(x5852)*(x5857)))+(((IkReal(-1.00000000000000))*(x5838)*(x5847)*(x5857)))+(((IkReal(-1.00000000000000))*(r10)*(x5840)*(x5860)))+(((IkReal(-1.00000000000000))*(x5847)*(x5848)*(x5859)))+(((x5845)*(x5860)))+(((IkReal(-1.00000000000000))*(x5840)*(x5849)*(x5859)))+(((IkReal(-1.00000000000000))*(r00)*(x5840)*(x5858)))+(((x5846)*(x5858)))+(((IkReal(-1.00000000000000))*(x5843)*(x5844)))+(((IkReal(-1.00000000000000))*(sj3)*(x5842)))+(((IkReal(-1.00000000000000))*(sj5)*(x5839)*(x5859)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5865=((cj0)*(r00)); +IkReal x5866=((r10)*(sj0)); +IkReal x5867=((cj0)*(r01)); +IkReal x5868=((IkReal(1.00000000000000))*(cj5)); +IkReal x5869=((r11)*(sj0)); +IkReal x5870=((sj2)*(sj5)); +IkReal x5871=((IkReal(1.00000000000000))*(cj1)); +IkReal x5872=((r20)*(sj1)*(sj2)); +IkReal x5873=((cj1)*(sj2)*(sj6)); +IkReal x5874=((r21)*(sj1)*(sj2)); +IkReal x5875=((cj6)*(sj2)*(x5871)); +if( IKabs(((gconst1)*(((((IkReal(-1.00000000000000))*(sj6)*(x5874)))+(((IkReal(-1.00000000000000))*(x5865)*(x5875)))+(((x5867)*(x5873)))+(((x5869)*(x5873)))+(((cj6)*(x5872)))+(((IkReal(-1.00000000000000))*(x5866)*(x5875))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst1)*(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5870)*(x5871)))+(((cj5)*(sj6)*(x5872)))+(((IkReal(-1.00000000000000))*(x5866)*(x5868)*(x5873)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5870)*(x5871)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x5868)*(x5869)))+(((r22)*(sj1)*(x5870)))+(((cj5)*(cj6)*(x5874)))+(((IkReal(-1.00000000000000))*(x5865)*(x5868)*(x5873)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x5867)*(x5868))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst1)*(((((IkReal(-1.00000000000000))*(sj6)*(x5874)))+(((IkReal(-1.00000000000000))*(x5865)*(x5875)))+(((x5867)*(x5873)))+(((x5869)*(x5873)))+(((cj6)*(x5872)))+(((IkReal(-1.00000000000000))*(x5866)*(x5875)))))), ((gconst1)*(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5870)*(x5871)))+(((cj5)*(sj6)*(x5872)))+(((IkReal(-1.00000000000000))*(x5866)*(x5868)*(x5873)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5870)*(x5871)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x5868)*(x5869)))+(((r22)*(sj1)*(x5870)))+(((cj5)*(cj6)*(x5874)))+(((IkReal(-1.00000000000000))*(x5865)*(x5868)*(x5873)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x5867)*(x5868))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x5876=IKsin(j4); +IkReal x5877=IKcos(j4); +IkReal x5878=((r00)*(sj6)); +IkReal x5879=((cj6)*(r01)); +IkReal x5880=((IkReal(1.00000000000000))*(cj0)); +IkReal x5881=((IkReal(1.00000000000000))*(sj0)); +IkReal x5882=((r10)*(sj6)); +IkReal x5883=((sj5)*(x5876)); +IkReal x5884=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x5885=((cj5)*(x5876)); +IkReal x5886=((cj6)*(x5877)); +IkReal x5887=((sj0)*(x5885)); +IkReal x5888=((r01)*(sj6)*(x5877)); +IkReal x5889=((r11)*(sj6)*(x5877)); +evalcond[0]=((((cj6)*(r21)*(x5885)))+(((r22)*(x5883)))+(((IkReal(-1.00000000000000))*(cj1)*(sj2)))+(((r20)*(sj6)*(x5885)))+(((r21)*(sj6)*(x5877)))+(((IkReal(-1.00000000000000))*(r20)*(x5886)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5880)*(x5885)))+(((IkReal(-1.00000000000000))*(x5880)*(x5889)))+(((r02)*(sj0)*(x5883)))+(((IkReal(-1.00000000000000))*(r00)*(x5881)*(x5886)))+(((IkReal(-1.00000000000000))*(r12)*(x5880)*(x5883)))+(((IkReal(-1.00000000000000))*(x5880)*(x5882)*(x5885)))+(cj2)+(((x5878)*(x5887)))+(((x5879)*(x5887)))+(((sj0)*(x5888)))+(((cj0)*(r10)*(x5886)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5878)*(x5880)*(x5885)))+(((IkReal(-1.00000000000000))*(x5880)*(x5888)))+(((IkReal(-1.00000000000000))*(x5879)*(x5880)*(x5885)))+(((IkReal(-1.00000000000000))*(x5881)*(x5882)*(x5885)))+(((r10)*(sj0)*(x5886)))+(((cj0)*(r00)*(x5886)))+(((IkReal(-1.00000000000000))*(x5881)*(x5889)))+(((IkReal(-1.00000000000000))*(r02)*(x5880)*(x5883)))+(((sj1)*(sj2)))+(((IkReal(-1.00000000000000))*(r12)*(x5881)*(x5883)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5881)*(x5885)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst4; +gconst4=IKsign((((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2)))))); +dummyeval[0]=(((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2))))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x5890=(cj1)*(cj1); +IkReal x5891=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x5890)))+(((cj2)*(x5891)))); +dummyeval[1]=((x5890)+(x5891)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +dummyeval[0]=sj2; +dummyeval[1]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x5892=((cj5)*(sj4)); +IkReal x5893=((IkReal(1.00000000000000))*(sj6)); +IkReal x5894=((r10)*(sj0)); +IkReal x5895=((sj4)*(sj5)); +IkReal x5896=((cj4)*(cj5)); +IkReal x5897=((IkReal(1.00000000000000))*(r02)); +IkReal x5898=((IkReal(0.374290000000000))*(cj0)); +IkReal x5899=((cj5)*(r12)); +IkReal x5900=((cj6)*(sj5)); +IkReal x5901=((cj0)*(r11)); +IkReal x5902=((cj5)*(sj0)); +IkReal x5903=((r20)*(sj6)); +IkReal x5904=((IkReal(1.00000000000000))*(sj0)); +IkReal x5905=((IkReal(1.00000000000000))*(cj6)); +IkReal x5906=((IkReal(0.0100000000000000))*(cj5)); +IkReal x5907=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5908=((sj5)*(sj6)); +IkReal x5909=((cj0)*(r10)); +IkReal x5910=((cj4)*(cj6)); +IkReal x5911=((cj0)*(r01)); +IkReal x5912=((cj0)*(r00)); +IkReal x5913=((cj6)*(r21)); +IkReal x5914=((IkReal(0.374290000000000))*(sj0)); +IkReal x5915=((IkReal(0.374290000000000))*(sj5)); +IkReal x5916=((cj6)*(r11)); +IkReal x5917=((sj0)*(sj4)); +IkReal x5918=((cj4)*(sj5)); +IkReal x5919=((cj4)*(sj6)); +IkReal x5920=((IkReal(1.00000000000000))*(cj0)); +IkReal x5921=((r02)*(sj0)); +IkReal x5922=((r00)*(sj0)*(sj6)); +IkReal x5923=((cj6)*(r01)*(sj0)); +IkReal x5924=((r00)*(x5910)); +IkReal x5925=((r12)*(x5920)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x5892)*(x5913)))+(((x5892)*(x5903)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x5905)))+(((r21)*(x5919)))+(((r22)*(x5895)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5906)*(x5913)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(0.374290000000000))*(r21)*(x5900)))+(((IkReal(-1.00000000000000))*(r22)*(x5907)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x5903)*(x5915)))+(((IkReal(-1.00000000000000))*(x5903)*(x5906)))+(((IkReal(0.0690000000000000))*(cj1)))); +evalcond[3]=((((r01)*(sj0)*(x5900)))+(((IkReal(-1.00000000000000))*(x5900)*(x5901)))+(((r00)*(sj0)*(x5908)))+(((IkReal(-1.00000000000000))*(sj5)*(x5893)*(x5909)))+(((cj0)*(x5899)))+(((IkReal(-1.00000000000000))*(x5897)*(x5902)))); +evalcond[4]=((IkReal(1.00000000000000))+(((x5892)*(x5922)))+(((IkReal(-1.00000000000000))*(x5892)*(x5901)*(x5905)))+(((IkReal(-1.00000000000000))*(x5904)*(x5924)))+(((x5895)*(x5921)))+(((x5909)*(x5910)))+(((IkReal(-1.00000000000000))*(cj4)*(x5893)*(x5901)))+(((r01)*(sj0)*(x5919)))+(((x5892)*(x5923)))+(((IkReal(-1.00000000000000))*(x5895)*(x5925)))+(((IkReal(-1.00000000000000))*(x5892)*(x5893)*(x5909)))); +evalcond[5]=((((sj4)*(sj6)*(x5901)))+(((IkReal(-1.00000000000000))*(sj4)*(x5905)*(x5909)))+(((IkReal(-1.00000000000000))*(x5918)*(x5925)))+(((x5896)*(x5922)))+(((IkReal(-1.00000000000000))*(x5896)*(x5901)*(x5905)))+(((x5918)*(x5921)))+(((IkReal(-1.00000000000000))*(r01)*(x5893)*(x5917)))+(((cj6)*(r00)*(x5917)))+(((x5896)*(x5923)))+(((IkReal(-1.00000000000000))*(x5893)*(x5896)*(x5909)))); +evalcond[6]=((((x5894)*(x5910)))+(((IkReal(-1.00000000000000))*(r12)*(x5895)*(x5904)))+(((IkReal(-1.00000000000000))*(x5892)*(x5893)*(x5894)))+(((IkReal(-1.00000000000000))*(x5892)*(x5905)*(x5911)))+(((IkReal(-1.00000000000000))*(x5892)*(x5893)*(x5912)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x5893)))+(((IkReal(-1.00000000000000))*(x5892)*(x5904)*(x5916)))+(((x5910)*(x5912)))+(((IkReal(-1.00000000000000))*(cj0)*(x5895)*(x5897)))+(((IkReal(-1.00000000000000))*(cj4)*(x5893)*(x5911)))); +evalcond[7]=((((cj6)*(x5901)*(x5906)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x5902)))+(((IkReal(-1.00000000000000))*(r10)*(x5898)*(x5908)))+(((IkReal(-1.00000000000000))*(x5907)*(x5921)))+(((sj6)*(x5906)*(x5909)))+(((IkReal(-1.00000000000000))*(r11)*(x5898)*(x5900)))+(((IkReal(-0.374290000000000))*(r02)*(x5902)))+(((r01)*(x5900)*(x5914)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x5902)))+(((x5898)*(x5899)))+(((px)*(sj0)))+(((cj0)*(r12)*(x5907)))+(((IkReal(-1.00000000000000))*(py)*(x5920)))+(((r00)*(x5908)*(x5914)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-0.0690000000000000))*(sj1)))+(((sj6)*(x5906)*(x5912)))+(((r12)*(sj0)*(x5907)))+(((IkReal(-1.00000000000000))*(r01)*(x5898)*(x5900)))+(((IkReal(0.0100000000000000))*(x5902)*(x5916)))+(((cj5)*(r02)*(x5898)))+(((IkReal(-1.00000000000000))*(r00)*(x5898)*(x5908)))+(((x5899)*(x5914)))+(((cj6)*(x5906)*(x5911)))+(((IkReal(-1.00000000000000))*(px)*(x5920)))+(((IkReal(-1.00000000000000))*(py)*(x5904)))+(((IkReal(-0.374290000000000))*(x5894)*(x5908)))+(((IkReal(-1.00000000000000))*(r11)*(x5900)*(x5914)))+(((sj6)*(x5894)*(x5906)))+(((IkReal(0.364420000000000))*(cj1)))+(((cj0)*(r02)*(x5907)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst5; +gconst5=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst6; +gconst6=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5926=((sj5)*(sj6)); +IkReal x5927=((IkReal(1.00000000000000))*(sj0)); +IkReal x5928=((cj5)*(r12)); +IkReal x5929=((cj0)*(r00)); +IkReal x5930=((cj0)*(cj1)); +IkReal x5931=((cj6)*(sj5)); +IkReal x5932=((cj5)*(r02)); +IkReal x5933=((IkReal(1.00000000000000))*(cj1)); +IkReal x5934=((sj0)*(sj1)); +IkReal x5935=((cj0)*(sj1)); +IkReal x5936=((cj5)*(r22)); +if( IKabs(((gconst6)*(((((r10)*(x5926)*(x5934)))+(((IkReal(-1.00000000000000))*(x5932)*(x5935)))+(((IkReal(-1.00000000000000))*(sj1)*(x5927)*(x5928)))+(((r11)*(x5931)*(x5934)))+(((IkReal(-1.00000000000000))*(x5933)*(x5936)))+(((cj1)*(r20)*(x5926)))+(((r01)*(x5931)*(x5935)))+(((cj1)*(r21)*(x5931)))+(((sj1)*(x5926)*(x5929))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst6)*(((((IkReal(-1.00000000000000))*(sj1)*(x5936)))+(((x5930)*(x5932)))+(((r20)*(sj1)*(x5926)))+(((IkReal(-1.00000000000000))*(r01)*(x5930)*(x5931)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x5926)*(x5927)))+(((r21)*(sj1)*(x5931)))+(((cj1)*(sj0)*(x5928)))+(((IkReal(-1.00000000000000))*(x5926)*(x5929)*(x5933)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x5927)*(x5931))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst6)*(((((r10)*(x5926)*(x5934)))+(((IkReal(-1.00000000000000))*(x5932)*(x5935)))+(((IkReal(-1.00000000000000))*(sj1)*(x5927)*(x5928)))+(((r11)*(x5931)*(x5934)))+(((IkReal(-1.00000000000000))*(x5933)*(x5936)))+(((cj1)*(r20)*(x5926)))+(((r01)*(x5931)*(x5935)))+(((cj1)*(r21)*(x5931)))+(((sj1)*(x5926)*(x5929)))))), ((gconst6)*(((((IkReal(-1.00000000000000))*(sj1)*(x5936)))+(((x5930)*(x5932)))+(((r20)*(sj1)*(x5926)))+(((IkReal(-1.00000000000000))*(r01)*(x5930)*(x5931)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x5926)*(x5927)))+(((r21)*(sj1)*(x5931)))+(((cj1)*(sj0)*(x5928)))+(((IkReal(-1.00000000000000))*(x5926)*(x5929)*(x5933)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x5927)*(x5931))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5937=IKcos(j3); +IkReal x5938=IKsin(j3); +IkReal x5939=((IkReal(1.00000000000000))*(cj4)); +IkReal x5940=((sj0)*(sj5)); +IkReal x5941=((cj0)*(cj5)); +IkReal x5942=((cj6)*(r01)); +IkReal x5943=((r00)*(sj6)); +IkReal x5944=((cj6)*(r11)); +IkReal x5945=((cj5)*(sj0)); +IkReal x5946=((cj6)*(sj4)); +IkReal x5947=((sj4)*(sj6)); +IkReal x5948=((cj4)*(cj5)); +IkReal x5949=((cj6)*(r21)); +IkReal x5950=((r20)*(sj6)); +IkReal x5951=((r10)*(sj6)); +IkReal x5952=((cj1)*(x5937)); +IkReal x5953=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x5954=((IkReal(1.00000000000000))*(x5938)); +IkReal x5955=((IkReal(1.00000000000000))*(sj1)*(x5937)); +IkReal x5956=((cj1)*(x5954)); +IkReal x5957=((x5955)+(x5956)); +evalcond[0]=((((sj5)*(x5950)))+(((IkReal(-1.00000000000000))*(x5957)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5949)))); +evalcond[1]=((((r20)*(x5946)))+(((IkReal(-1.00000000000000))*(sj1)*(x5954)))+(((cj4)*(r22)*(sj5)))+(x5952)+(((x5948)*(x5950)))+(((x5948)*(x5949)))+(((IkReal(-1.00000000000000))*(r21)*(x5947)))); +evalcond[2]=((((sj1)*(x5938)))+(((r12)*(x5945)))+(((IkReal(-1.00000000000000))*(x5940)*(x5944)))+(((IkReal(-1.00000000000000))*(x5942)*(x5953)))+(((r02)*(x5941)))+(((IkReal(-1.00000000000000))*(x5943)*(x5953)))+(((IkReal(-1.00000000000000))*(x5952)))+(((IkReal(-1.00000000000000))*(x5940)*(x5951)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x5939)*(x5940)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x5939)))+(((r11)*(sj0)*(x5947)))+(((cj0)*(r01)*(x5947)))+(((IkReal(-1.00000000000000))*(x5957)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x5946)))+(((IkReal(-1.00000000000000))*(x5939)*(x5945)*(x5951)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5946)))+(((IkReal(-1.00000000000000))*(x5939)*(x5941)*(x5943)))+(((IkReal(-1.00000000000000))*(x5939)*(x5941)*(x5942)))+(((IkReal(-1.00000000000000))*(x5939)*(x5944)*(x5945)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5958=((sj1)*(sj5)); +IkReal x5959=((r20)*(sj6)); +IkReal x5960=((cj4)*(r22)); +IkReal x5961=((IkReal(1.00000000000000))*(cj1)); +IkReal x5962=((cj5)*(sj1)); +IkReal x5963=((cj6)*(r21)); +IkReal x5964=((cj1)*(sj5)); +IkReal x5965=((cj4)*(cj5)); +IkReal x5966=((cj6)*(r20)*(sj4)); +IkReal x5967=((r21)*(sj4)*(sj6)); +if( IKabs(((gconst5)*(((((x5963)*(x5964)))+(((IkReal(-1.00000000000000))*(sj1)*(x5967)))+(((cj4)*(x5962)*(x5963)))+(((cj4)*(x5959)*(x5962)))+(((x5959)*(x5964)))+(((x5958)*(x5960)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x5961)))+(((sj1)*(x5966))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst5)*(((((x5958)*(x5963)))+(((IkReal(-1.00000000000000))*(x5961)*(x5963)*(x5965)))+(((cj1)*(x5967)))+(((IkReal(-1.00000000000000))*(x5961)*(x5966)))+(((x5958)*(x5959)))+(((IkReal(-1.00000000000000))*(r22)*(x5962)))+(((IkReal(-1.00000000000000))*(sj5)*(x5960)*(x5961)))+(((IkReal(-1.00000000000000))*(x5959)*(x5961)*(x5965))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst5)*(((((x5963)*(x5964)))+(((IkReal(-1.00000000000000))*(sj1)*(x5967)))+(((cj4)*(x5962)*(x5963)))+(((cj4)*(x5959)*(x5962)))+(((x5959)*(x5964)))+(((x5958)*(x5960)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x5961)))+(((sj1)*(x5966)))))), ((gconst5)*(((((x5958)*(x5963)))+(((IkReal(-1.00000000000000))*(x5961)*(x5963)*(x5965)))+(((cj1)*(x5967)))+(((IkReal(-1.00000000000000))*(x5961)*(x5966)))+(((x5958)*(x5959)))+(((IkReal(-1.00000000000000))*(r22)*(x5962)))+(((IkReal(-1.00000000000000))*(sj5)*(x5960)*(x5961)))+(((IkReal(-1.00000000000000))*(x5959)*(x5961)*(x5965))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5968=IKcos(j3); +IkReal x5969=IKsin(j3); +IkReal x5970=((IkReal(1.00000000000000))*(cj4)); +IkReal x5971=((sj0)*(sj5)); +IkReal x5972=((cj0)*(cj5)); +IkReal x5973=((cj6)*(r01)); +IkReal x5974=((r00)*(sj6)); +IkReal x5975=((cj6)*(r11)); +IkReal x5976=((cj5)*(sj0)); +IkReal x5977=((cj6)*(sj4)); +IkReal x5978=((sj4)*(sj6)); +IkReal x5979=((cj4)*(cj5)); +IkReal x5980=((cj6)*(r21)); +IkReal x5981=((r20)*(sj6)); +IkReal x5982=((r10)*(sj6)); +IkReal x5983=((cj1)*(x5968)); +IkReal x5984=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x5985=((IkReal(1.00000000000000))*(x5969)); +IkReal x5986=((IkReal(1.00000000000000))*(sj1)*(x5968)); +IkReal x5987=((cj1)*(x5985)); +IkReal x5988=((x5986)+(x5987)); +evalcond[0]=((((sj5)*(x5980)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5981)))+(((IkReal(-1.00000000000000))*(x5988)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x5978)))+(((IkReal(-1.00000000000000))*(sj1)*(x5985)))+(x5983)+(((x5979)*(x5980)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x5977)))+(((x5979)*(x5981)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5983)))+(((IkReal(-1.00000000000000))*(x5973)*(x5984)))+(((IkReal(-1.00000000000000))*(x5971)*(x5975)))+(((IkReal(-1.00000000000000))*(x5971)*(x5982)))+(((r12)*(x5976)))+(((IkReal(-1.00000000000000))*(x5974)*(x5984)))+(((sj1)*(x5969)))+(((r02)*(x5972)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5970)*(x5972)*(x5974)))+(((r11)*(sj0)*(x5978)))+(((IkReal(-1.00000000000000))*(r12)*(x5970)*(x5971)))+(((cj0)*(r01)*(x5978)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x5977)))+(((IkReal(-1.00000000000000))*(x5970)*(x5976)*(x5982)))+(((IkReal(-1.00000000000000))*(x5970)*(x5972)*(x5973)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x5970)))+(((IkReal(-1.00000000000000))*(x5988)))+(((IkReal(-1.00000000000000))*(x5970)*(x5975)*(x5976)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5977)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x5989=((cj5)*(sj4)); +IkReal x5990=((IkReal(1.00000000000000))*(sj6)); +IkReal x5991=((r10)*(sj0)); +IkReal x5992=((sj4)*(sj5)); +IkReal x5993=((cj4)*(cj5)); +IkReal x5994=((IkReal(1.00000000000000))*(r02)); +IkReal x5995=((IkReal(0.374290000000000))*(cj0)); +IkReal x5996=((cj5)*(r12)); +IkReal x5997=((cj6)*(sj5)); +IkReal x5998=((cj0)*(r11)); +IkReal x5999=((cj5)*(sj0)); +IkReal x6000=((r20)*(sj6)); +IkReal x6001=((IkReal(1.00000000000000))*(sj0)); +IkReal x6002=((IkReal(1.00000000000000))*(cj6)); +IkReal x6003=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6004=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6005=((sj5)*(sj6)); +IkReal x6006=((cj0)*(r10)); +IkReal x6007=((cj4)*(cj6)); +IkReal x6008=((cj0)*(r01)); +IkReal x6009=((cj0)*(r00)); +IkReal x6010=((cj6)*(r21)); +IkReal x6011=((IkReal(0.374290000000000))*(sj0)); +IkReal x6012=((IkReal(0.374290000000000))*(sj5)); +IkReal x6013=((cj6)*(r11)); +IkReal x6014=((sj0)*(sj4)); +IkReal x6015=((cj4)*(sj5)); +IkReal x6016=((cj4)*(sj6)); +IkReal x6017=((IkReal(1.00000000000000))*(cj0)); +IkReal x6018=((r02)*(sj0)); +IkReal x6019=((r00)*(sj0)*(sj6)); +IkReal x6020=((cj6)*(r01)*(sj0)); +IkReal x6021=((r00)*(x6007)); +IkReal x6022=((r12)*(x6017)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x5992)))+(((x5989)*(x6000)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x6002)))+(((x5989)*(x6010)))+(((r21)*(x6016)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6000)*(x6003)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.0690000000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(x6003)*(x6010)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x6000)*(x6012)))+(((IkReal(0.374290000000000))*(r21)*(x5997)))+(((IkReal(-1.00000000000000))*(r22)*(x6004)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x5990)*(x6006)))+(((cj0)*(x5996)))+(((IkReal(-1.00000000000000))*(x5994)*(x5999)))+(((r01)*(sj0)*(x5997)))+(((r00)*(sj0)*(x6005)))+(((IkReal(-1.00000000000000))*(x5997)*(x5998)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x5989)*(x6020)))+(((x5992)*(x6018)))+(((r01)*(sj0)*(x6016)))+(((IkReal(-1.00000000000000))*(cj4)*(x5990)*(x5998)))+(((x6006)*(x6007)))+(((IkReal(-1.00000000000000))*(x5992)*(x6022)))+(((x5989)*(x6019)))+(((IkReal(-1.00000000000000))*(x6001)*(x6021)))+(((IkReal(-1.00000000000000))*(x5989)*(x5990)*(x6006)))+(((IkReal(-1.00000000000000))*(x5989)*(x5998)*(x6002)))); +evalcond[5]=((((sj4)*(sj6)*(x5998)))+(((x5993)*(x6020)))+(((x5993)*(x6019)))+(((IkReal(-1.00000000000000))*(x5990)*(x5993)*(x6006)))+(((IkReal(-1.00000000000000))*(x5993)*(x5998)*(x6002)))+(((x6015)*(x6018)))+(((cj6)*(r00)*(x6014)))+(((IkReal(-1.00000000000000))*(x6015)*(x6022)))+(((IkReal(-1.00000000000000))*(r01)*(x5990)*(x6014)))+(((IkReal(-1.00000000000000))*(sj4)*(x6002)*(x6006)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x5989)*(x6002)*(x6008)))+(((x5991)*(x6007)))+(((IkReal(-1.00000000000000))*(r12)*(x5992)*(x6001)))+(((IkReal(-1.00000000000000))*(x5989)*(x6001)*(x6013)))+(((IkReal(-1.00000000000000))*(cj4)*(x5990)*(x6008)))+(((x6007)*(x6009)))+(((IkReal(-1.00000000000000))*(x5989)*(x5990)*(x6009)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x5990)))+(((IkReal(-1.00000000000000))*(x5989)*(x5990)*(x5991)))+(((IkReal(-1.00000000000000))*(cj0)*(x5992)*(x5994)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(py)*(x6017)))+(((r01)*(x5997)*(x6011)))+(((IkReal(-1.00000000000000))*(x6004)*(x6018)))+(((IkReal(-1.00000000000000))*(r11)*(x5995)*(x5997)))+(((x5995)*(x5996)))+(((sj6)*(x6003)*(x6006)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x5999)))+(((cj0)*(r12)*(x6004)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x5999)))+(((IkReal(-0.374290000000000))*(r02)*(x5999)))+(((IkReal(-1.00000000000000))*(r10)*(x5995)*(x6005)))+(((r00)*(x6005)*(x6011)))+(((cj6)*(x5998)*(x6003)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((x5996)*(x6011)))+(((IkReal(-1.00000000000000))*(r01)*(x5995)*(x5997)))+(((IkReal(-1.00000000000000))*(r11)*(x5997)*(x6011)))+(((cj0)*(r02)*(x6004)))+(((cj6)*(x6003)*(x6008)))+(((IkReal(0.0690000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r00)*(x5995)*(x6005)))+(((sj6)*(x6003)*(x6009)))+(((cj5)*(r02)*(x5995)))+(((IkReal(-0.374290000000000))*(x5991)*(x6005)))+(((IkReal(-1.00000000000000))*(px)*(x6017)))+(((IkReal(-1.00000000000000))*(py)*(x6001)))+(((IkReal(0.0100000000000000))*(x5999)*(x6013)))+(((r12)*(sj0)*(x6004)))+(((IkReal(0.364420000000000))*(cj1)))+(((sj6)*(x5991)*(x6003)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst7; +gconst7=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst8; +gconst8=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6023=((IkReal(1.00000000000000))*(sj0)); +IkReal x6024=((cj6)*(r21)); +IkReal x6025=((cj0)*(r00)); +IkReal x6026=((cj5)*(sj1)); +IkReal x6027=((r12)*(sj0)); +IkReal x6028=((cj1)*(cj5)); +IkReal x6029=((cj0)*(r02)); +IkReal x6030=((sj1)*(sj5)); +IkReal x6031=((cj6)*(r11)); +IkReal x6032=((cj1)*(sj5)); +IkReal x6033=((sj6)*(x6030)); +IkReal x6034=((IkReal(1.00000000000000))*(x6032)); +IkReal x6035=((cj0)*(cj6)*(r01)); +if( IKabs(((gconst8)*(((((x6026)*(x6029)))+(((IkReal(-1.00000000000000))*(x6023)*(x6030)*(x6031)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x6034)))+(((IkReal(-1.00000000000000))*(x6025)*(x6033)))+(((IkReal(-1.00000000000000))*(x6024)*(x6034)))+(((x6026)*(x6027)))+(((IkReal(-1.00000000000000))*(x6030)*(x6035)))+(((r22)*(x6028)))+(((IkReal(-1.00000000000000))*(r10)*(x6023)*(x6033))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst8)*(((((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6023)*(x6032)))+(((x6028)*(x6029)))+(((IkReal(-1.00000000000000))*(x6023)*(x6031)*(x6032)))+(((IkReal(-1.00000000000000))*(x6034)*(x6035)))+(((x6027)*(x6028)))+(((IkReal(-1.00000000000000))*(sj6)*(x6025)*(x6034)))+(((IkReal(-1.00000000000000))*(r22)*(x6026)))+(((r20)*(x6033)))+(((x6024)*(x6030))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst8)*(((((x6026)*(x6029)))+(((IkReal(-1.00000000000000))*(x6023)*(x6030)*(x6031)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x6034)))+(((IkReal(-1.00000000000000))*(x6025)*(x6033)))+(((IkReal(-1.00000000000000))*(x6024)*(x6034)))+(((x6026)*(x6027)))+(((IkReal(-1.00000000000000))*(x6030)*(x6035)))+(((r22)*(x6028)))+(((IkReal(-1.00000000000000))*(r10)*(x6023)*(x6033)))))), ((gconst8)*(((((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6023)*(x6032)))+(((x6028)*(x6029)))+(((IkReal(-1.00000000000000))*(x6023)*(x6031)*(x6032)))+(((IkReal(-1.00000000000000))*(x6034)*(x6035)))+(((x6027)*(x6028)))+(((IkReal(-1.00000000000000))*(sj6)*(x6025)*(x6034)))+(((IkReal(-1.00000000000000))*(r22)*(x6026)))+(((r20)*(x6033)))+(((x6024)*(x6030))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6036=IKsin(j3); +IkReal x6037=IKcos(j3); +IkReal x6038=((IkReal(1.00000000000000))*(cj4)); +IkReal x6039=((sj0)*(sj5)); +IkReal x6040=((cj0)*(cj5)); +IkReal x6041=((cj6)*(r01)); +IkReal x6042=((r00)*(sj6)); +IkReal x6043=((cj6)*(r11)); +IkReal x6044=((cj5)*(sj0)); +IkReal x6045=((cj6)*(sj4)); +IkReal x6046=((sj4)*(sj6)); +IkReal x6047=((cj4)*(cj5)); +IkReal x6048=((cj6)*(r21)); +IkReal x6049=((r20)*(sj6)); +IkReal x6050=((r10)*(sj6)); +IkReal x6051=((cj1)*(x6036)); +IkReal x6052=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x6053=((IkReal(1.00000000000000))*(x6037)); +IkReal x6054=((IkReal(1.00000000000000))*(sj1)*(x6036)); +IkReal x6055=((cj1)*(x6053)); +IkReal x6056=((x6055)+(x6054)); +evalcond[0]=((((sj5)*(x6049)))+(((IkReal(-1.00000000000000))*(sj1)*(x6053)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x6051)+(((sj5)*(x6048)))); +evalcond[1]=((((x6047)*(x6048)))+(((IkReal(-1.00000000000000))*(r21)*(x6046)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x6045)))+(((x6047)*(x6049)))+(((IkReal(-1.00000000000000))*(x6056)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6039)*(x6043)))+(((IkReal(-1.00000000000000))*(x6042)*(x6052)))+(((r02)*(x6040)))+(((IkReal(-1.00000000000000))*(x6041)*(x6052)))+(((IkReal(-1.00000000000000))*(x6039)*(x6050)))+(((IkReal(-1.00000000000000))*(x6056)))+(((r12)*(x6044)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x6038)*(x6039)))+(((IkReal(-1.00000000000000))*(x6038)*(x6040)*(x6042)))+(((IkReal(-1.00000000000000))*(x6051)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6045)))+(((sj1)*(x6037)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6045)))+(((IkReal(-1.00000000000000))*(x6038)*(x6043)*(x6044)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6038)))+(((IkReal(-1.00000000000000))*(x6038)*(x6040)*(x6041)))+(((IkReal(-1.00000000000000))*(x6038)*(x6044)*(x6050)))+(((r11)*(sj0)*(x6046)))+(((cj0)*(r01)*(x6046)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6057=((sj1)*(sj6)); +IkReal x6058=((r20)*(sj5)); +IkReal x6059=((IkReal(1.00000000000000))*(r21)); +IkReal x6060=((cj1)*(cj6)); +IkReal x6061=((r20)*(sj4)); +IkReal x6062=((cj6)*(sj1)); +IkReal x6063=((cj4)*(cj5)); +IkReal x6064=((cj1)*(sj6)); +IkReal x6065=((cj5)*(r22)); +IkReal x6066=((cj4)*(r22)*(sj5)); +if( IKabs(((gconst7)*(((((IkReal(-1.00000000000000))*(sj5)*(x6059)*(x6060)))+(((r21)*(x6062)*(x6063)))+(((cj1)*(x6065)))+(((x6061)*(x6062)))+(((IkReal(-1.00000000000000))*(sj4)*(x6057)*(x6059)))+(((sj1)*(x6066)))+(((r20)*(x6057)*(x6063)))+(((IkReal(-1.00000000000000))*(x6058)*(x6064))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst7)*(((((IkReal(-1.00000000000000))*(sj1)*(x6065)))+(((r20)*(x6063)*(x6064)))+(((cj1)*(x6066)))+(((IkReal(-1.00000000000000))*(sj4)*(x6059)*(x6064)))+(((x6057)*(x6058)))+(((r21)*(sj5)*(x6062)))+(((x6060)*(x6061)))+(((r21)*(x6060)*(x6063))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst7)*(((((IkReal(-1.00000000000000))*(sj5)*(x6059)*(x6060)))+(((r21)*(x6062)*(x6063)))+(((cj1)*(x6065)))+(((x6061)*(x6062)))+(((IkReal(-1.00000000000000))*(sj4)*(x6057)*(x6059)))+(((sj1)*(x6066)))+(((r20)*(x6057)*(x6063)))+(((IkReal(-1.00000000000000))*(x6058)*(x6064)))))), ((gconst7)*(((((IkReal(-1.00000000000000))*(sj1)*(x6065)))+(((r20)*(x6063)*(x6064)))+(((cj1)*(x6066)))+(((IkReal(-1.00000000000000))*(sj4)*(x6059)*(x6064)))+(((x6057)*(x6058)))+(((r21)*(sj5)*(x6062)))+(((x6060)*(x6061)))+(((r21)*(x6060)*(x6063))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6067=IKsin(j3); +IkReal x6068=IKcos(j3); +IkReal x6069=((IkReal(1.00000000000000))*(cj4)); +IkReal x6070=((sj0)*(sj5)); +IkReal x6071=((cj0)*(cj5)); +IkReal x6072=((cj6)*(r01)); +IkReal x6073=((r00)*(sj6)); +IkReal x6074=((cj6)*(r11)); +IkReal x6075=((cj5)*(sj0)); +IkReal x6076=((cj6)*(sj4)); +IkReal x6077=((sj4)*(sj6)); +IkReal x6078=((cj4)*(cj5)); +IkReal x6079=((cj6)*(r21)); +IkReal x6080=((r20)*(sj6)); +IkReal x6081=((r10)*(sj6)); +IkReal x6082=((cj1)*(x6067)); +IkReal x6083=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x6084=((IkReal(1.00000000000000))*(x6068)); +IkReal x6085=((IkReal(1.00000000000000))*(sj1)*(x6067)); +IkReal x6086=((cj1)*(x6084)); +IkReal x6087=((x6086)+(x6085)); +evalcond[0]=((((sj5)*(x6080)))+(((IkReal(-1.00000000000000))*(sj1)*(x6084)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x6082)+(((sj5)*(x6079)))); +evalcond[1]=((((x6078)*(x6080)))+(((IkReal(-1.00000000000000))*(r21)*(x6077)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x6087)))+(((x6078)*(x6079)))+(((r20)*(x6076)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6070)*(x6074)))+(((IkReal(-1.00000000000000))*(x6072)*(x6083)))+(((IkReal(-1.00000000000000))*(x6073)*(x6083)))+(((r12)*(x6075)))+(((r02)*(x6071)))+(((IkReal(-1.00000000000000))*(x6087)))+(((IkReal(-1.00000000000000))*(x6070)*(x6081)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6069)*(x6071)*(x6073)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6076)))+(((sj1)*(x6068)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6069)))+(((IkReal(-1.00000000000000))*(r12)*(x6069)*(x6070)))+(((IkReal(-1.00000000000000))*(x6069)*(x6075)*(x6081)))+(((IkReal(-1.00000000000000))*(x6069)*(x6074)*(x6075)))+(((r11)*(sj0)*(x6077)))+(((IkReal(-1.00000000000000))*(x6069)*(x6071)*(x6072)))+(((cj0)*(r01)*(x6077)))+(((IkReal(-1.00000000000000))*(x6082)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6076)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x6088=((IkReal(1.00000000000000))*(cj0)); +IkReal x6089=((cj4)*(sj6)); +IkReal x6090=((sj0)*(sj4)); +IkReal x6091=((cj5)*(sj6)); +IkReal x6092=((sj4)*(sj5)); +IkReal x6093=((r12)*(sj5)); +IkReal x6094=((IkReal(0.374290000000000))*(cj5)); +IkReal x6095=((r02)*(sj0)); +IkReal x6096=((cj6)*(r21)); +IkReal x6097=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6098=((IkReal(1.00000000000000))*(sj0)); +IkReal x6099=((cj0)*(r10)); +IkReal x6100=((cj4)*(cj6)); +IkReal x6101=((r00)*(sj0)); +IkReal x6102=((IkReal(0.374290000000000))*(sj5)); +IkReal x6103=((cj0)*(r00)); +IkReal x6104=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6105=((cj0)*(r02)); +IkReal x6106=((cj5)*(sj4)); +IkReal x6107=((cj6)*(r01)); +IkReal x6108=((cj6)*(r11)); +IkReal x6109=((r10)*(sj0)); +IkReal x6110=((sj6)*(x6102)); +IkReal x6111=((cj0)*(cj6)*(x6102)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(r20)*(x6100)))+(((r22)*(x6092)))+(((r20)*(sj4)*(x6091)))+(((x6096)*(x6106)))+(((r21)*(x6089)))); +evalcond[2]=((((IkReal(-0.0100000000000000))*(r20)*(x6091)))+(((IkReal(-1.00000000000000))*(r22)*(x6094)))+(((IkReal(-1.00000000000000))*(r22)*(x6104)))+(pz)+(((r20)*(x6110)))+(((IkReal(-1.00000000000000))*(x6096)*(x6097)))+(((x6096)*(x6102)))+(((IkReal(0.0690000000000000))*(cj2)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x6088)*(x6089)))+(((x6099)*(x6100)))+(((IkReal(-1.00000000000000))*(x6088)*(x6106)*(x6108)))+(((r01)*(sj0)*(x6089)))+(((cj5)*(x6090)*(x6107)))+(((r00)*(x6090)*(x6091)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x6098)*(x6100)))+(((r02)*(sj5)*(x6090)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6088)*(x6091)))+(((IkReal(-1.00000000000000))*(r12)*(x6088)*(x6092)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x6090)*(x6093)))+(((IkReal(-1.00000000000000))*(r11)*(x6089)*(x6098)))+(((IkReal(-1.00000000000000))*(r01)*(x6088)*(x6089)))+(((IkReal(-1.00000000000000))*(r10)*(x6090)*(x6091)))+(((x6100)*(x6109)))+(((x6100)*(x6103)))+(((IkReal(-1.00000000000000))*(x6088)*(x6106)*(x6107)))+(((IkReal(-1.00000000000000))*(cj5)*(x6090)*(x6108)))+(((IkReal(-1.00000000000000))*(r02)*(x6088)*(x6092)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6088)*(x6091)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6099)*(x6110)))+(((x6101)*(x6110)))+(((IkReal(-1.00000000000000))*(sj0)*(x6097)*(x6107)))+(((IkReal(-1.00000000000000))*(py)*(x6088)))+(((IkReal(-0.0100000000000000))*(x6091)*(x6101)))+(((IkReal(-1.00000000000000))*(cj0)*(x6102)*(x6108)))+(((IkReal(0.0690000000000000))*(sj2)))+(((cj0)*(x6097)*(x6108)))+(((IkReal(0.0100000000000000))*(cj0)*(x6093)))+(((IkReal(0.0100000000000000))*(x6091)*(x6099)))+(((px)*(sj0)))+(((cj0)*(r12)*(x6094)))+(((sj0)*(x6102)*(x6107)))+(((IkReal(-1.00000000000000))*(x6095)*(x6104)))+(((IkReal(-1.00000000000000))*(x6094)*(x6095)))); +evalcond[6]=((IkReal(0.433420000000000))+(((x6094)*(x6105)))+(((IkReal(-1.00000000000000))*(px)*(x6088)))+(((IkReal(-1.00000000000000))*(py)*(x6098)))+(((sj0)*(x6097)*(x6108)))+(((IkReal(-1.00000000000000))*(x6103)*(x6110)))+(((IkReal(0.0100000000000000))*(x6091)*(x6109)))+(((r12)*(sj0)*(x6094)))+(((IkReal(-1.00000000000000))*(sj0)*(x6102)*(x6108)))+(((IkReal(-1.00000000000000))*(cj0)*(x6102)*(x6107)))+(((x6104)*(x6105)))+(((cj0)*(x6097)*(x6107)))+(((IkReal(-1.00000000000000))*(x6109)*(x6110)))+(((IkReal(0.0100000000000000))*(x6091)*(x6103)))+(((IkReal(0.0100000000000000))*(sj0)*(x6093)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst9; +gconst9=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x6112=((cj5)*(sj4)); +IkReal x6113=((IkReal(1.00000000000000))*(sj6)); +IkReal x6114=((r10)*(sj0)); +IkReal x6115=((sj4)*(sj5)); +IkReal x6116=((cj5)*(cj6)); +IkReal x6117=((r01)*(sj0)); +IkReal x6118=((IkReal(1.00000000000000))*(r02)); +IkReal x6119=((IkReal(0.374290000000000))*(cj0)); +IkReal x6120=((cj5)*(r12)); +IkReal x6121=((cj6)*(sj5)); +IkReal x6122=((cj0)*(r11)); +IkReal x6123=((cj5)*(sj0)); +IkReal x6124=((r20)*(sj6)); +IkReal x6125=((IkReal(1.00000000000000))*(sj0)); +IkReal x6126=((cj4)*(cj5)); +IkReal x6127=((IkReal(1.00000000000000))*(cj6)); +IkReal x6128=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6129=((sj5)*(sj6)); +IkReal x6130=((cj0)*(r10)); +IkReal x6131=((cj4)*(cj6)); +IkReal x6132=((cj0)*(r01)); +IkReal x6133=((IkReal(1.00000000000000))*(cj4)); +IkReal x6134=((cj0)*(r00)); +IkReal x6135=((IkReal(0.374290000000000))*(sj0)); +IkReal x6136=((cj0)*(r12)); +IkReal x6137=((IkReal(0.374290000000000))*(sj5)); +IkReal x6138=((cj4)*(sj6)); +IkReal x6139=((IkReal(1.00000000000000))*(cj0)); +IkReal x6140=((r02)*(sj0)); +IkReal x6141=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6142=((r11)*(sj0)); +IkReal x6143=((r00)*(sj0)*(sj6)); +IkReal x6144=((r00)*(x6131)); +IkReal x6145=((sj6)*(x6141)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj4)*(r20)*(x6127)))+(((cj6)*(r21)*(x6112)))+(((x6112)*(x6124)))+(((r21)*(x6138)))+(((r22)*(x6115)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x6128)))+(((IkReal(-1.00000000000000))*(x6124)*(x6141)))+(((IkReal(0.374290000000000))*(r21)*(x6121)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x6124)*(x6137)))+(pz)+(((IkReal(-0.0100000000000000))*(r21)*(x6116)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6121)*(x6122)))+(((x6117)*(x6121)))+(((r00)*(sj0)*(x6129)))+(((cj0)*(x6120)))+(((IkReal(-1.00000000000000))*(sj5)*(x6113)*(x6130)))+(((IkReal(-1.00000000000000))*(x6118)*(x6123)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x6115)*(x6136)))+(((IkReal(-1.00000000000000))*(x6125)*(x6144)))+(((cj6)*(x6112)*(x6117)))+(((x6112)*(x6143)))+(((x6115)*(x6140)))+(((IkReal(-1.00000000000000))*(x6112)*(x6122)*(x6127)))+(((x6130)*(x6131)))+(((IkReal(-1.00000000000000))*(cj4)*(x6113)*(x6122)))+(((x6117)*(x6138)))+(((IkReal(-1.00000000000000))*(x6112)*(x6113)*(x6130)))); +evalcond[5]=((((sj4)*(sj6)*(x6122)))+(((cj4)*(sj5)*(x6140)))+(((r00)*(x6123)*(x6138)))+(((IkReal(-1.00000000000000))*(x6116)*(x6122)*(x6133)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(x6127)*(x6130)))+(((cj4)*(x6116)*(x6117)))+(((IkReal(-1.00000000000000))*(sj4)*(x6113)*(x6117)))+(((IkReal(-1.00000000000000))*(sj5)*(x6133)*(x6136)))+(((IkReal(-1.00000000000000))*(x6113)*(x6126)*(x6130)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x6113)*(x6132)))+(((IkReal(-1.00000000000000))*(x6112)*(x6113)*(x6114)))+(((IkReal(-1.00000000000000))*(cj4)*(x6113)*(x6142)))+(((IkReal(-1.00000000000000))*(r12)*(x6115)*(x6125)))+(((IkReal(-1.00000000000000))*(cj0)*(x6115)*(x6118)))+(((x6114)*(x6131)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x6112)*(x6125)))+(((x6131)*(x6134)))+(((IkReal(-1.00000000000000))*(x6112)*(x6113)*(x6134)))+(((IkReal(-1.00000000000000))*(x6112)*(x6127)*(x6132)))); +evalcond[7]=((((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x6123)))+(((x6128)*(x6136)))+(((IkReal(-0.0100000000000000))*(x6116)*(x6117)))+(((x6119)*(x6120)))+(((IkReal(0.0100000000000000))*(x6116)*(x6122)))+(((IkReal(-0.374290000000000))*(r02)*(x6123)))+(((IkReal(-1.00000000000000))*(py)*(x6139)))+(((IkReal(-1.00000000000000))*(r10)*(x6119)*(x6129)))+(((IkReal(-1.00000000000000))*(r11)*(x6119)*(x6121)))+(((px)*(sj0)))+(((x6130)*(x6145)))+(((IkReal(0.374290000000000))*(x6117)*(x6121)))+(((r00)*(x6129)*(x6135)))+(((IkReal(-1.00000000000000))*(x6128)*(x6140)))); +evalcond[8]=((IkReal(0.433420000000000))+(((cj5)*(r02)*(x6119)))+(((r12)*(sj0)*(x6128)))+(((IkReal(0.0100000000000000))*(x6116)*(x6142)))+(((IkReal(-1.00000000000000))*(px)*(x6139)))+(((IkReal(-1.00000000000000))*(r00)*(x6119)*(x6129)))+(((cj0)*(r02)*(x6128)))+(((IkReal(-1.00000000000000))*(py)*(x6125)))+(((x6134)*(x6145)))+(((IkReal(-1.00000000000000))*(r11)*(x6121)*(x6135)))+(((IkReal(-0.374290000000000))*(x6114)*(x6129)))+(((IkReal(0.0100000000000000))*(x6116)*(x6132)))+(((x6114)*(x6145)))+(((x6120)*(x6135)))+(((IkReal(-1.00000000000000))*(r01)*(x6119)*(x6121)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6146=((IkReal(1.00000000000000))*(cj4)); +IkReal x6147=((cj6)*(r21)); +IkReal x6148=((r20)*(sj6)); +if( IKabs(((((sj5)*(x6147)))+(((sj5)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6147)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6146)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x6147)))+(((sj5)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6147)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6146)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x6147)))+(((sj5)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6147)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6146)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6149=IKcos(j3); +IkReal x6150=((IkReal(1.00000000000000))*(cj4)); +IkReal x6151=((sj0)*(sj5)); +IkReal x6152=((cj0)*(cj5)); +IkReal x6153=((cj6)*(r01)); +IkReal x6154=((r00)*(sj6)); +IkReal x6155=((cj6)*(r11)); +IkReal x6156=((cj5)*(sj0)); +IkReal x6157=((cj6)*(sj4)); +IkReal x6158=((sj4)*(sj6)); +IkReal x6159=((cj4)*(cj5)); +IkReal x6160=((cj6)*(r21)); +IkReal x6161=((r20)*(sj6)); +IkReal x6162=((r10)*(sj6)); +IkReal x6163=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x6164=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x6163)))+(((sj5)*(x6160)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6161)))); +evalcond[1]=((((x6159)*(x6160)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x6157)))+(((IkReal(-1.00000000000000))*(r21)*(x6158)))+(x6149)+(((x6159)*(x6161)))); +evalcond[2]=((((r02)*(x6152)))+(((r12)*(x6156)))+(((IkReal(-1.00000000000000))*(x6151)*(x6155)))+(((IkReal(-1.00000000000000))*(x6154)*(x6164)))+(((IkReal(-1.00000000000000))*(x6153)*(x6164)))+(((IkReal(-1.00000000000000))*(x6149)))+(((IkReal(-1.00000000000000))*(x6151)*(x6162)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6150)*(x6155)*(x6156)))+(((IkReal(-1.00000000000000))*(x6163)))+(((cj0)*(r01)*(x6158)))+(((r11)*(sj0)*(x6158)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6157)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6150)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6157)))+(((IkReal(-1.00000000000000))*(x6150)*(x6156)*(x6162)))+(((IkReal(-1.00000000000000))*(x6150)*(x6152)*(x6154)))+(((IkReal(-1.00000000000000))*(r12)*(x6150)*(x6151)))+(((IkReal(-1.00000000000000))*(x6150)*(x6152)*(x6153)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6165=((cj5)*(sj4)); +IkReal x6166=((IkReal(1.00000000000000))*(sj6)); +IkReal x6167=((r10)*(sj0)); +IkReal x6168=((sj4)*(sj5)); +IkReal x6169=((cj5)*(cj6)); +IkReal x6170=((r01)*(sj0)); +IkReal x6171=((IkReal(1.00000000000000))*(r02)); +IkReal x6172=((IkReal(0.374290000000000))*(cj0)); +IkReal x6173=((cj5)*(r12)); +IkReal x6174=((cj6)*(sj5)); +IkReal x6175=((cj0)*(r11)); +IkReal x6176=((cj5)*(sj0)); +IkReal x6177=((r20)*(sj6)); +IkReal x6178=((IkReal(1.00000000000000))*(sj0)); +IkReal x6179=((cj4)*(cj5)); +IkReal x6180=((IkReal(1.00000000000000))*(cj6)); +IkReal x6181=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6182=((sj5)*(sj6)); +IkReal x6183=((cj0)*(r10)); +IkReal x6184=((cj4)*(cj6)); +IkReal x6185=((cj0)*(r01)); +IkReal x6186=((IkReal(1.00000000000000))*(cj4)); +IkReal x6187=((cj0)*(r00)); +IkReal x6188=((IkReal(0.374290000000000))*(sj0)); +IkReal x6189=((cj0)*(r12)); +IkReal x6190=((IkReal(0.374290000000000))*(sj5)); +IkReal x6191=((cj4)*(sj6)); +IkReal x6192=((IkReal(1.00000000000000))*(cj0)); +IkReal x6193=((r02)*(sj0)); +IkReal x6194=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6195=((r11)*(sj0)); +IkReal x6196=((r00)*(sj0)*(sj6)); +IkReal x6197=((r00)*(x6184)); +IkReal x6198=((sj6)*(x6194)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((cj6)*(r21)*(x6165)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x6180)))+(((x6165)*(x6177)))+(((r21)*(x6191)))+(((r22)*(x6168)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x6181)))+(((IkReal(-1.00000000000000))*(x6177)*(x6194)))+(((IkReal(0.374290000000000))*(r21)*(x6174)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x6169)))+(pz)+(((x6177)*(x6190)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x6166)*(x6183)))+(((IkReal(-1.00000000000000))*(x6174)*(x6175)))+(((r00)*(sj0)*(x6182)))+(((IkReal(-1.00000000000000))*(x6171)*(x6176)))+(((x6170)*(x6174)))+(((cj0)*(x6173)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x6183)*(x6184)))+(((IkReal(-1.00000000000000))*(x6168)*(x6189)))+(((x6168)*(x6193)))+(((x6170)*(x6191)))+(((IkReal(-1.00000000000000))*(x6165)*(x6166)*(x6183)))+(((cj6)*(x6165)*(x6170)))+(((x6165)*(x6196)))+(((IkReal(-1.00000000000000))*(x6178)*(x6197)))+(((IkReal(-1.00000000000000))*(cj4)*(x6166)*(x6175)))+(((IkReal(-1.00000000000000))*(x6165)*(x6175)*(x6180)))); +evalcond[5]=((((sj4)*(sj6)*(x6175)))+(((IkReal(-1.00000000000000))*(x6169)*(x6175)*(x6186)))+(((IkReal(-1.00000000000000))*(x6166)*(x6179)*(x6183)))+(((IkReal(-1.00000000000000))*(sj5)*(x6186)*(x6189)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(x6169)*(x6170)))+(((IkReal(-1.00000000000000))*(sj4)*(x6166)*(x6170)))+(((IkReal(-1.00000000000000))*(sj4)*(x6180)*(x6183)))+(((r00)*(x6176)*(x6191)))+(((cj4)*(sj5)*(x6193)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x6165)*(x6178)))+(((x6167)*(x6184)))+(((x6184)*(x6187)))+(((IkReal(-1.00000000000000))*(x6165)*(x6180)*(x6185)))+(((IkReal(-1.00000000000000))*(cj4)*(x6166)*(x6185)))+(((IkReal(-1.00000000000000))*(x6165)*(x6166)*(x6167)))+(((IkReal(-1.00000000000000))*(r12)*(x6168)*(x6178)))+(((IkReal(-1.00000000000000))*(cj4)*(x6166)*(x6195)))+(((IkReal(-1.00000000000000))*(cj0)*(x6168)*(x6171)))+(((IkReal(-1.00000000000000))*(x6165)*(x6166)*(x6187)))); +evalcond[7]=((((x6181)*(x6189)))+(((x6172)*(x6173)))+(((IkReal(0.374290000000000))*(x6170)*(x6174)))+(((IkReal(-1.00000000000000))*(r11)*(x6172)*(x6174)))+(((IkReal(-0.0100000000000000))*(x6169)*(x6170)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x6176)))+(((r00)*(x6182)*(x6188)))+(((IkReal(-1.00000000000000))*(x6181)*(x6193)))+(((IkReal(0.0100000000000000))*(x6169)*(x6175)))+(((IkReal(-1.00000000000000))*(py)*(x6192)))+(((IkReal(-1.00000000000000))*(r10)*(x6172)*(x6182)))+(((IkReal(-0.374290000000000))*(r02)*(x6176)))+(((px)*(sj0)))+(((x6183)*(x6198)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x6173)*(x6188)))+(((IkReal(-1.00000000000000))*(py)*(x6178)))+(((cj0)*(r02)*(x6181)))+(((cj5)*(r02)*(x6172)))+(((IkReal(0.0100000000000000))*(x6169)*(x6185)))+(((IkReal(-1.00000000000000))*(px)*(x6192)))+(((IkReal(-1.00000000000000))*(r01)*(x6172)*(x6174)))+(((IkReal(-1.00000000000000))*(r11)*(x6174)*(x6188)))+(((r12)*(sj0)*(x6181)))+(((IkReal(-0.374290000000000))*(x6167)*(x6182)))+(((x6187)*(x6198)))+(((x6167)*(x6198)))+(((IkReal(-1.00000000000000))*(r00)*(x6172)*(x6182)))+(((IkReal(0.0100000000000000))*(x6169)*(x6195)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6199=((IkReal(1.00000000000000))*(r21)); +IkReal x6200=((cj4)*(cj5)); +IkReal x6201=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x6201)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6199)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r21)*(x6200)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6199)))+(((x6200)*(x6201))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x6201)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6199)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r21)*(x6200)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6199)))+(((x6200)*(x6201)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x6201)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6199)))+(((cj5)*(r22)))), ((((cj6)*(r21)*(x6200)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6199)))+(((x6200)*(x6201))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6202=IKsin(j3); +IkReal x6203=((IkReal(1.00000000000000))*(cj4)); +IkReal x6204=((sj0)*(sj5)); +IkReal x6205=((cj0)*(cj5)); +IkReal x6206=((cj6)*(r01)); +IkReal x6207=((r00)*(sj6)); +IkReal x6208=((cj6)*(r11)); +IkReal x6209=((cj5)*(sj0)); +IkReal x6210=((cj6)*(sj4)); +IkReal x6211=((sj4)*(sj6)); +IkReal x6212=((cj4)*(cj5)); +IkReal x6213=((cj6)*(r21)); +IkReal x6214=((r20)*(sj6)); +IkReal x6215=((r10)*(sj6)); +IkReal x6216=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x6217=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x6213)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x6202)+(((sj5)*(x6214)))); +evalcond[1]=((((x6212)*(x6214)))+(((cj4)*(r22)*(sj5)))+(((x6212)*(x6213)))+(((IkReal(-1.00000000000000))*(r21)*(x6211)))+(((IkReal(-1.00000000000000))*(x6216)))+(((r20)*(x6210)))); +evalcond[2]=((((r02)*(x6205)))+(((IkReal(-1.00000000000000))*(x6204)*(x6208)))+(((IkReal(-1.00000000000000))*(x6207)*(x6217)))+(((IkReal(-1.00000000000000))*(x6206)*(x6217)))+(((r12)*(x6209)))+(((IkReal(-1.00000000000000))*(x6216)))+(((IkReal(-1.00000000000000))*(x6204)*(x6215)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6210)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6203)))+(((r11)*(sj0)*(x6211)))+(((IkReal(-1.00000000000000))*(x6203)*(x6205)*(x6207)))+(((IkReal(-1.00000000000000))*(x6203)*(x6205)*(x6206)))+(((IkReal(-1.00000000000000))*(x6203)*(x6208)*(x6209)))+(((IkReal(-1.00000000000000))*(x6203)*(x6209)*(x6215)))+(((IkReal(-1.00000000000000))*(x6202)))+(((IkReal(-1.00000000000000))*(r12)*(x6203)*(x6204)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6210)))+(((cj0)*(r01)*(x6211)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6218=((IkReal(1.00000000000000))*(cj0)); +IkReal x6219=((cj4)*(sj6)); +IkReal x6220=((sj0)*(sj4)); +IkReal x6221=((cj5)*(sj6)); +IkReal x6222=((sj4)*(sj5)); +IkReal x6223=((r12)*(sj5)); +IkReal x6224=((IkReal(0.374290000000000))*(cj5)); +IkReal x6225=((r02)*(sj0)); +IkReal x6226=((r20)*(sj4)); +IkReal x6227=((IkReal(1.00000000000000))*(sj0)); +IkReal x6228=((IkReal(1.00000000000000))*(cj5)); +IkReal x6229=((cj0)*(r10)); +IkReal x6230=((cj4)*(cj6)); +IkReal x6231=((r00)*(sj0)); +IkReal x6232=((cj6)*(r21)); +IkReal x6233=((IkReal(0.374290000000000))*(sj5)); +IkReal x6234=((cj0)*(r00)); +IkReal x6235=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6236=((cj0)*(r02)); +IkReal x6237=((cj5)*(sj4)); +IkReal x6238=((cj6)*(r01)); +IkReal x6239=((cj6)*(r11)); +IkReal x6240=((r01)*(sj0)); +IkReal x6241=((r10)*(sj0)); +IkReal x6242=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6243=((sj6)*(x6233)); +IkReal x6244=((cj0)*(cj6)*(x6233)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x6232)))+(((IkReal(-1.00000000000000))*(r22)*(x6228)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r21)*(x6219)))+(((IkReal(-1.00000000000000))*(r20)*(x6230)))+(((x6232)*(x6237)))+(((r22)*(x6222)))+(((x6221)*(x6226)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x6221)))+(((x6232)*(x6233)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x6224)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6232)))+(((r20)*(x6243)))+(((IkReal(-1.00000000000000))*(r22)*(x6235)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x6219)))+(((cj6)*(x6226)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x6230)))); +evalcond[5]=((((r00)*(x6220)*(x6221)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6218)*(x6221)))+(((cj5)*(x6220)*(x6238)))+(((IkReal(-1.00000000000000))*(x6218)*(x6237)*(x6239)))+(((IkReal(-1.00000000000000))*(r12)*(x6218)*(x6222)))+(((x6219)*(x6240)))+(((IkReal(-1.00000000000000))*(r00)*(x6227)*(x6230)))+(((IkReal(-1.00000000000000))*(r11)*(x6218)*(x6219)))+(((x6229)*(x6230)))+(((r02)*(sj5)*(x6220)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r10)*(x6220)*(x6221)))+(((x6230)*(x6241)))+(((IkReal(-1.00000000000000))*(x6220)*(x6223)))+(((x6230)*(x6234)))+(((IkReal(-1.00000000000000))*(r02)*(x6218)*(x6222)))+(((IkReal(-1.00000000000000))*(r01)*(x6218)*(x6219)))+(((IkReal(-1.00000000000000))*(r11)*(x6219)*(x6227)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6218)*(x6221)))+(((IkReal(-1.00000000000000))*(x6218)*(x6237)*(x6238)))+(((IkReal(-1.00000000000000))*(x6220)*(x6228)*(x6239)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(x6223)))+(((IkReal(-1.00000000000000))*(py)*(x6218)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6238)))+(((IkReal(-1.00000000000000))*(x6225)*(x6235)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6239)))+(((cj0)*(r12)*(x6224)))+(((x6231)*(x6243)))+(((IkReal(-1.00000000000000))*(cj0)*(x6233)*(x6239)))+(((IkReal(0.0100000000000000))*(x6221)*(x6229)))+(((sj0)*(x6233)*(x6238)))+(((IkReal(-0.0100000000000000))*(x6221)*(x6231)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x6229)*(x6243)))+(((IkReal(-1.00000000000000))*(x6224)*(x6225)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(x6221)*(x6234)))+(((IkReal(0.0100000000000000))*(sj0)*(x6223)))+(((IkReal(0.0100000000000000))*(x6221)*(x6241)))+(((IkReal(-1.00000000000000))*(x6241)*(x6243)))+(((r12)*(sj0)*(x6224)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6239)))+(((IkReal(-1.00000000000000))*(x6234)*(x6243)))+(((IkReal(-1.00000000000000))*(sj0)*(x6233)*(x6239)))+(((IkReal(-1.00000000000000))*(px)*(x6218)))+(((x6224)*(x6236)))+(((IkReal(-1.00000000000000))*(py)*(x6227)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6238)))+(((IkReal(-1.00000000000000))*(cj0)*(x6233)*(x6238)))+(((x6235)*(x6236)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6245=((cj0)*(cj5)); +IkReal x6246=((IkReal(1.00000000000000))*(cj0)); +IkReal x6247=((cj6)*(r11)); +IkReal x6248=((r10)*(sj6)); +IkReal x6249=((cj5)*(sj0)); +IkReal x6250=((r00)*(sj5)*(sj6)); +IkReal x6251=((cj6)*(r01)*(sj5)); +IkReal x6252=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6247)))+(((IkReal(-1.00000000000000))*(r02)*(x6249)))+(((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6248)))+(((sj0)*(x6251)))+(((sj0)*(x6250)))+(((r12)*(x6245))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x6247)*(x6252)))+(((r02)*(x6245)))+(((IkReal(-1.00000000000000))*(x6246)*(x6251)))+(((r12)*(x6249)))+(((IkReal(-1.00000000000000))*(x6246)*(x6250)))+(((IkReal(-1.00000000000000))*(x6248)*(x6252))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6247)))+(((IkReal(-1.00000000000000))*(r02)*(x6249)))+(((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6248)))+(((sj0)*(x6251)))+(((sj0)*(x6250)))+(((r12)*(x6245)))))+IKsqr(((((IkReal(-1.00000000000000))*(x6247)*(x6252)))+(((r02)*(x6245)))+(((IkReal(-1.00000000000000))*(x6246)*(x6251)))+(((r12)*(x6249)))+(((IkReal(-1.00000000000000))*(x6246)*(x6250)))+(((IkReal(-1.00000000000000))*(x6248)*(x6252)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6247)))+(((IkReal(-1.00000000000000))*(r02)*(x6249)))+(((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6248)))+(((sj0)*(x6251)))+(((sj0)*(x6250)))+(((r12)*(x6245)))), ((((IkReal(-1.00000000000000))*(x6247)*(x6252)))+(((r02)*(x6245)))+(((IkReal(-1.00000000000000))*(x6246)*(x6251)))+(((r12)*(x6249)))+(((IkReal(-1.00000000000000))*(x6246)*(x6250)))+(((IkReal(-1.00000000000000))*(x6248)*(x6252))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6253=IKcos(j3); +IkReal x6254=((sj0)*(sj5)); +IkReal x6255=((r00)*(sj6)); +IkReal x6256=((cj6)*(sj0)); +IkReal x6257=((IkReal(1.00000000000000))*(cj4)); +IkReal x6258=((r00)*(sj4)); +IkReal x6259=((cj0)*(cj5)); +IkReal x6260=((cj5)*(sj0)); +IkReal x6261=((cj6)*(r11)); +IkReal x6262=((r10)*(sj6)); +IkReal x6263=((cj0)*(sj5)); +IkReal x6264=((r10)*(sj4)); +IkReal x6265=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x6266=((cj4)*(cj5)*(r01)); +IkReal x6267=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x6268=((cj0)*(sj4)*(sj6)); +IkReal x6269=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x6261)*(x6263)))+(((IkReal(-1.00000000000000))*(r02)*(x6260)))+(((cj6)*(r01)*(x6254)))+(((IkReal(-1.00000000000000))*(x6262)*(x6263)))+(((r12)*(x6259)))+(((IkReal(-1.00000000000000))*(x6265)))+(((x6254)*(x6255)))); +evalcond[1]=((((r12)*(x6260)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x6263)))+(((r02)*(x6259)))+(((IkReal(-1.00000000000000))*(x6253)))+(((IkReal(-1.00000000000000))*(x6254)*(x6262)))+(((IkReal(-1.00000000000000))*(x6255)*(x6263)))+(((IkReal(-1.00000000000000))*(x6254)*(x6261)))); +evalcond[2]=((((r11)*(x6268)))+(x6253)+(((IkReal(-1.00000000000000))*(r01)*(x6269)))+(((cj4)*(r02)*(x6254)))+(((IkReal(-1.00000000000000))*(r12)*(x6257)*(x6263)))+(((x6256)*(x6266)))+(((cj4)*(x6255)*(x6260)))+(((IkReal(-1.00000000000000))*(x6264)*(x6267)))+(((x6256)*(x6258)))+(((IkReal(-1.00000000000000))*(x6257)*(x6259)*(x6261)))+(((IkReal(-1.00000000000000))*(x6257)*(x6259)*(x6262)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x6257)*(x6259)))+(((IkReal(-1.00000000000000))*(x6257)*(x6260)*(x6262)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x6256)*(x6257)))+(((IkReal(-1.00000000000000))*(x6256)*(x6264)))+(((IkReal(-1.00000000000000))*(x6258)*(x6267)))+(((r01)*(x6268)))+(((IkReal(-1.00000000000000))*(x6265)))+(((IkReal(-1.00000000000000))*(r02)*(x6257)*(x6263)))+(((IkReal(-1.00000000000000))*(r12)*(x6254)*(x6257)))+(((r11)*(x6269)))+(((IkReal(-1.00000000000000))*(x6255)*(x6257)*(x6259)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6270=((IkReal(1.00000000000000))*(cj0)); +IkReal x6271=((cj4)*(sj6)); +IkReal x6272=((sj0)*(sj4)); +IkReal x6273=((cj5)*(sj6)); +IkReal x6274=((sj4)*(sj5)); +IkReal x6275=((r12)*(sj5)); +IkReal x6276=((IkReal(0.374290000000000))*(cj5)); +IkReal x6277=((r02)*(sj0)); +IkReal x6278=((r20)*(sj4)); +IkReal x6279=((IkReal(1.00000000000000))*(sj0)); +IkReal x6280=((IkReal(1.00000000000000))*(cj5)); +IkReal x6281=((cj0)*(r10)); +IkReal x6282=((cj4)*(cj6)); +IkReal x6283=((r00)*(sj0)); +IkReal x6284=((cj6)*(r21)); +IkReal x6285=((IkReal(0.374290000000000))*(sj5)); +IkReal x6286=((cj0)*(r00)); +IkReal x6287=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6288=((cj0)*(r02)); +IkReal x6289=((cj5)*(sj4)); +IkReal x6290=((cj6)*(r01)); +IkReal x6291=((cj6)*(r11)); +IkReal x6292=((r01)*(sj0)); +IkReal x6293=((r10)*(sj0)); +IkReal x6294=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6295=((sj6)*(x6285)); +IkReal x6296=((cj0)*(cj6)*(x6285)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x6280)))+(((sj5)*(x6284)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x6273)*(x6278)))+(((x6284)*(x6289)))+(((r21)*(x6271)))+(((r22)*(x6274)))+(((IkReal(-1.00000000000000))*(r20)*(x6282)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x6273)))+(((r20)*(x6295)))+(((IkReal(-1.00000000000000))*(r22)*(x6276)))+(((x6284)*(x6285)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x6287)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6284)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x6282)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x6271)))+(((cj6)*(x6278)))); +evalcond[5]=((((r00)*(x6272)*(x6273)))+(((IkReal(-1.00000000000000))*(r11)*(x6270)*(x6271)))+(((r02)*(sj5)*(x6272)))+(((IkReal(-1.00000000000000))*(r12)*(x6270)*(x6274)))+(((x6281)*(x6282)))+(((IkReal(-1.00000000000000))*(x6270)*(x6289)*(x6291)))+(((x6271)*(x6292)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6270)*(x6273)))+(((cj5)*(x6272)*(x6290)))+(((IkReal(-1.00000000000000))*(r00)*(x6279)*(x6282)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r11)*(x6271)*(x6279)))+(((IkReal(-1.00000000000000))*(x6272)*(x6275)))+(((x6282)*(x6293)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6270)*(x6273)))+(((x6282)*(x6286)))+(((IkReal(-1.00000000000000))*(x6270)*(x6289)*(x6290)))+(((IkReal(-1.00000000000000))*(r10)*(x6272)*(x6273)))+(((IkReal(-1.00000000000000))*(x6272)*(x6280)*(x6291)))+(((IkReal(-1.00000000000000))*(r02)*(x6270)*(x6274)))+(((IkReal(-1.00000000000000))*(r01)*(x6270)*(x6271)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x6276)*(x6277)))+(((IkReal(0.0100000000000000))*(x6273)*(x6281)))+(((sj0)*(x6285)*(x6290)))+(((cj0)*(r12)*(x6276)))+(((IkReal(-1.00000000000000))*(py)*(x6270)))+(((x6283)*(x6295)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6291)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6290)))+(((IkReal(-1.00000000000000))*(cj0)*(x6285)*(x6291)))+(((IkReal(-1.00000000000000))*(x6281)*(x6295)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x6277)*(x6287)))+(((IkReal(-0.0100000000000000))*(x6273)*(x6283)))+(((IkReal(0.0100000000000000))*(cj0)*(x6275)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(x6273)*(x6293)))+(((IkReal(0.0100000000000000))*(x6273)*(x6286)))+(((IkReal(-1.00000000000000))*(py)*(x6279)))+(((IkReal(-1.00000000000000))*(x6286)*(x6295)))+(((x6276)*(x6288)))+(((IkReal(-1.00000000000000))*(px)*(x6270)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6291)))+(((x6287)*(x6288)))+(((r12)*(sj0)*(x6276)))+(((IkReal(-1.00000000000000))*(sj0)*(x6285)*(x6291)))+(((IkReal(-1.00000000000000))*(x6293)*(x6295)))+(((IkReal(0.0100000000000000))*(sj0)*(x6275)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6290)))+(((IkReal(-1.00000000000000))*(cj0)*(x6285)*(x6290)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6297=((cj5)*(r02)); +IkReal x6298=((cj0)*(sj5)); +IkReal x6299=((r10)*(sj6)); +IkReal x6300=((IkReal(1.00000000000000))*(cj6)); +IkReal x6301=((sj0)*(sj5)); +IkReal x6302=((cj5)*(r12)); +IkReal x6303=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((sj0)*(x6297)))+(((IkReal(-1.00000000000000))*(x6301)*(x6303)))+(((cj6)*(r11)*(x6298)))+(((x6298)*(x6299)))+(((IkReal(-1.00000000000000))*(r01)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(cj0)*(x6302))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x6299)*(x6301)))+(((cj0)*(x6297)))+(((IkReal(-1.00000000000000))*(r11)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(x6298)*(x6303)))+(((sj0)*(x6302)))+(((IkReal(-1.00000000000000))*(r01)*(x6298)*(x6300))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x6297)))+(((IkReal(-1.00000000000000))*(x6301)*(x6303)))+(((cj6)*(r11)*(x6298)))+(((x6298)*(x6299)))+(((IkReal(-1.00000000000000))*(r01)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(cj0)*(x6302)))))+IKsqr(((((IkReal(-1.00000000000000))*(x6299)*(x6301)))+(((cj0)*(x6297)))+(((IkReal(-1.00000000000000))*(r11)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(x6298)*(x6303)))+(((sj0)*(x6302)))+(((IkReal(-1.00000000000000))*(r01)*(x6298)*(x6300)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x6297)))+(((IkReal(-1.00000000000000))*(x6301)*(x6303)))+(((cj6)*(r11)*(x6298)))+(((x6298)*(x6299)))+(((IkReal(-1.00000000000000))*(r01)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(cj0)*(x6302)))), ((((IkReal(-1.00000000000000))*(x6299)*(x6301)))+(((cj0)*(x6297)))+(((IkReal(-1.00000000000000))*(r11)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(x6298)*(x6303)))+(((sj0)*(x6302)))+(((IkReal(-1.00000000000000))*(r01)*(x6298)*(x6300))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6304=IKsin(j3); +IkReal x6305=((sj0)*(sj5)); +IkReal x6306=((r00)*(sj6)); +IkReal x6307=((IkReal(1.00000000000000))*(cj4)); +IkReal x6308=((cj6)*(sj0)); +IkReal x6309=((r00)*(sj4)); +IkReal x6310=((cj0)*(cj5)); +IkReal x6311=((cj6)*(r01)); +IkReal x6312=((cj5)*(sj0)); +IkReal x6313=((cj0)*(sj5)); +IkReal x6314=((cj6)*(r11)); +IkReal x6315=((r10)*(sj6)); +IkReal x6316=((r10)*(sj4)); +IkReal x6317=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x6318=((cj0)*(sj4)*(sj6)); +IkReal x6319=((sj0)*(sj4)*(sj6)); +IkReal x6320=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((x6305)*(x6311)))+(x6304)+(((IkReal(-1.00000000000000))*(x6313)*(x6314)))+(((x6305)*(x6306)))+(((IkReal(-1.00000000000000))*(x6313)*(x6315)))+(((r12)*(x6310)))+(((IkReal(-1.00000000000000))*(r02)*(x6312)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x6311)*(x6313)))+(((IkReal(-1.00000000000000))*(x6317)))+(((IkReal(-1.00000000000000))*(x6305)*(x6315)))+(((IkReal(-1.00000000000000))*(x6306)*(x6313)))+(((IkReal(-1.00000000000000))*(x6305)*(x6314)))+(((r02)*(x6310)))+(((r12)*(x6312)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x6319)))+(((cj4)*(cj5)*(r01)*(x6308)))+(((cj4)*(r02)*(x6305)))+(((IkReal(-1.00000000000000))*(x6317)))+(((IkReal(-1.00000000000000))*(x6307)*(x6310)*(x6315)))+(((IkReal(-1.00000000000000))*(x6316)*(x6320)))+(((IkReal(-1.00000000000000))*(x6307)*(x6310)*(x6314)))+(((IkReal(-1.00000000000000))*(r12)*(x6307)*(x6313)))+(((x6308)*(x6309)))+(((cj4)*(x6306)*(x6312)))+(((r11)*(x6318)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6309)*(x6320)))+(((r11)*(x6319)))+(((IkReal(-1.00000000000000))*(x6307)*(x6310)*(x6311)))+(((IkReal(-1.00000000000000))*(x6304)))+(((IkReal(-1.00000000000000))*(x6307)*(x6312)*(x6315)))+(((IkReal(-1.00000000000000))*(r12)*(x6305)*(x6307)))+(((IkReal(-1.00000000000000))*(x6308)*(x6316)))+(((IkReal(-1.00000000000000))*(r02)*(x6307)*(x6313)))+(((r01)*(x6318)))+(((IkReal(-1.00000000000000))*(x6306)*(x6307)*(x6310)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x6307)*(x6308)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6321=((cj0)*(cj5)); +IkReal x6322=((IkReal(1.00000000000000))*(cj0)); +IkReal x6323=((cj6)*(r11)); +IkReal x6324=((r10)*(sj6)); +IkReal x6325=((cj5)*(sj0)); +IkReal x6326=((r00)*(sj5)*(sj6)); +IkReal x6327=((cj6)*(r01)*(sj5)); +IkReal x6328=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6324)))+(((sj0)*(x6327)))+(((r12)*(x6321)))+(((sj0)*(x6326)))+(((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6323)))+(((IkReal(-1.00000000000000))*(r02)*(x6325))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x6323)*(x6328)))+(((IkReal(-1.00000000000000))*(x6324)*(x6328)))+(((r02)*(x6321)))+(((IkReal(-1.00000000000000))*(x6322)*(x6327)))+(((IkReal(-1.00000000000000))*(x6322)*(x6326)))+(((r12)*(x6325))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6324)))+(((sj0)*(x6327)))+(((r12)*(x6321)))+(((sj0)*(x6326)))+(((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6323)))+(((IkReal(-1.00000000000000))*(r02)*(x6325)))))))+IKsqr(((((IkReal(-1.00000000000000))*(x6323)*(x6328)))+(((IkReal(-1.00000000000000))*(x6324)*(x6328)))+(((r02)*(x6321)))+(((IkReal(-1.00000000000000))*(x6322)*(x6327)))+(((IkReal(-1.00000000000000))*(x6322)*(x6326)))+(((r12)*(x6325)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6324)))+(((sj0)*(x6327)))+(((r12)*(x6321)))+(((sj0)*(x6326)))+(((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6323)))+(((IkReal(-1.00000000000000))*(r02)*(x6325)))))), ((((IkReal(-1.00000000000000))*(x6323)*(x6328)))+(((IkReal(-1.00000000000000))*(x6324)*(x6328)))+(((r02)*(x6321)))+(((IkReal(-1.00000000000000))*(x6322)*(x6327)))+(((IkReal(-1.00000000000000))*(x6322)*(x6326)))+(((r12)*(x6325))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6329=IKsin(j3); +IkReal x6330=IKcos(j3); +IkReal x6331=((sj0)*(sj5)); +IkReal x6332=((r00)*(sj6)); +IkReal x6333=((IkReal(1.00000000000000))*(cj4)); +IkReal x6334=((cj6)*(r01)); +IkReal x6335=((cj0)*(cj5)); +IkReal x6336=((cj5)*(sj0)); +IkReal x6337=((cj6)*(r11)); +IkReal x6338=((cj0)*(sj5)); +IkReal x6339=((cj6)*(sj4)); +IkReal x6340=((cj4)*(cj5)); +IkReal x6341=((cj6)*(r21)); +IkReal x6342=((r20)*(sj6)); +IkReal x6343=((r10)*(sj6)); +IkReal x6344=((IkReal(1.00000000000000))*(cj0)); +IkReal x6345=((IkReal(1.00000000000000))*(x6329)); +IkReal x6346=((cj0)*(sj4)*(sj6)); +IkReal x6347=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x6341)))+(((sj5)*(x6342)))+(((IkReal(-1.00000000000000))*(cj2)*(x6345)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x6339)))+(((x6340)*(x6342)))+(((x6340)*(x6341)))+(((cj2)*(x6330)))+(((cj4)*(r22)*(sj5)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6338)*(x6343)))+(((r12)*(x6335)))+(((IkReal(-1.00000000000000))*(sj2)*(x6345)))+(((x6331)*(x6332)))+(((IkReal(-1.00000000000000))*(r02)*(x6336)))+(((IkReal(-1.00000000000000))*(x6337)*(x6338)))+(((x6331)*(x6334)))); +evalcond[3]=((((r02)*(x6335)))+(((IkReal(-1.00000000000000))*(x6331)*(x6343)))+(((IkReal(-1.00000000000000))*(x6332)*(x6338)))+(((IkReal(-1.00000000000000))*(x6334)*(x6338)))+(((r12)*(x6336)))+(((IkReal(-1.00000000000000))*(x6330)))+(((IkReal(-1.00000000000000))*(x6331)*(x6337)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x6339)*(x6344)))+(((cj4)*(x6334)*(x6336)))+(((cj4)*(r02)*(x6331)))+(((IkReal(-1.00000000000000))*(x6333)*(x6335)*(x6337)))+(((IkReal(-1.00000000000000))*(r01)*(x6347)))+(((r11)*(x6346)))+(((IkReal(-1.00000000000000))*(x6333)*(x6335)*(x6343)))+(((IkReal(-1.00000000000000))*(r12)*(x6333)*(x6338)))+(((cj4)*(x6332)*(x6336)))+(((r00)*(sj0)*(x6339)))+(((sj2)*(x6330)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6333)*(x6336)*(x6337)))+(((IkReal(-1.00000000000000))*(x6332)*(x6333)*(x6335)))+(((IkReal(-1.00000000000000))*(r02)*(x6333)*(x6338)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6339)))+(((IkReal(-1.00000000000000))*(r12)*(x6331)*(x6333)))+(((IkReal(-1.00000000000000))*(x6333)*(x6336)*(x6343)))+(((IkReal(-1.00000000000000))*(x6333)*(x6334)*(x6335)))+(((r11)*(x6347)))+(((r01)*(x6346)))+(((IkReal(-1.00000000000000))*(r00)*(x6339)*(x6344)))+(((IkReal(-1.00000000000000))*(x6345)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6348=((sj5)*(sj6)); +IkReal x6349=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x6348)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x6349)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6348)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6348)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x6349))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x6348)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x6349)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6348)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6348)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x6349)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x6348)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x6349)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6348)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6348)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x6349))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6350=IKsin(j3); +IkReal x6351=IKcos(j3); +IkReal x6352=((sj0)*(sj5)); +IkReal x6353=((r00)*(sj6)); +IkReal x6354=((IkReal(1.00000000000000))*(cj4)); +IkReal x6355=((cj6)*(r01)); +IkReal x6356=((cj0)*(cj5)); +IkReal x6357=((cj5)*(sj0)); +IkReal x6358=((cj6)*(r11)); +IkReal x6359=((cj0)*(sj5)); +IkReal x6360=((cj6)*(sj4)); +IkReal x6361=((cj4)*(cj5)); +IkReal x6362=((cj6)*(r21)); +IkReal x6363=((r20)*(sj6)); +IkReal x6364=((r10)*(sj6)); +IkReal x6365=((IkReal(1.00000000000000))*(cj0)); +IkReal x6366=((IkReal(1.00000000000000))*(x6350)); +IkReal x6367=((cj0)*(sj4)*(sj6)); +IkReal x6368=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x6363)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6362)))+(((IkReal(-1.00000000000000))*(cj2)*(x6366)))); +evalcond[1]=((((x6361)*(x6363)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x6360)))+(((x6361)*(x6362)))+(((cj2)*(x6351)))+(((cj4)*(r22)*(sj5)))); +evalcond[2]=((((x6352)*(x6353)))+(((IkReal(-1.00000000000000))*(sj2)*(x6366)))+(((r12)*(x6356)))+(((x6352)*(x6355)))+(((IkReal(-1.00000000000000))*(x6358)*(x6359)))+(((IkReal(-1.00000000000000))*(r02)*(x6357)))+(((IkReal(-1.00000000000000))*(x6359)*(x6364)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6353)*(x6359)))+(((IkReal(-1.00000000000000))*(x6351)))+(((IkReal(-1.00000000000000))*(x6352)*(x6364)))+(((IkReal(-1.00000000000000))*(x6352)*(x6358)))+(((r02)*(x6356)))+(((r12)*(x6357)))+(((IkReal(-1.00000000000000))*(x6355)*(x6359)))); +evalcond[4]=((((cj4)*(r02)*(x6352)))+(((r11)*(x6367)))+(((sj2)*(x6351)))+(((cj4)*(x6353)*(x6357)))+(((IkReal(-1.00000000000000))*(r10)*(x6360)*(x6365)))+(((IkReal(-1.00000000000000))*(x6354)*(x6356)*(x6358)))+(((IkReal(-1.00000000000000))*(x6354)*(x6356)*(x6364)))+(((cj4)*(x6355)*(x6357)))+(((IkReal(-1.00000000000000))*(r12)*(x6354)*(x6359)))+(((IkReal(-1.00000000000000))*(r01)*(x6368)))+(((r00)*(sj0)*(x6360)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6354)*(x6357)*(x6364)))+(((IkReal(-1.00000000000000))*(r12)*(x6352)*(x6354)))+(((r01)*(x6367)))+(((r11)*(x6368)))+(((IkReal(-1.00000000000000))*(x6366)))+(((IkReal(-1.00000000000000))*(x6354)*(x6355)*(x6356)))+(((IkReal(-1.00000000000000))*(r00)*(x6360)*(x6365)))+(((IkReal(-1.00000000000000))*(r02)*(x6354)*(x6359)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6360)))+(((IkReal(-1.00000000000000))*(x6354)*(x6357)*(x6358)))+(((IkReal(-1.00000000000000))*(x6353)*(x6354)*(x6356)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6369=((IkReal(1.00000000000000))*(cj4)); +IkReal x6370=((cj6)*(r21)); +IkReal x6371=((r20)*(sj6)); +if( IKabs(((gconst9)*(((((sj5)*(x6371)))+(((sj5)*(x6370)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x6369)*(x6370)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6369)))+(((IkReal(-1.00000000000000))*(cj5)*(x6369)*(x6371)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst9)*(((((sj5)*(x6371)))+(((sj5)*(x6370)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x6369)*(x6370)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6369)))+(((IkReal(-1.00000000000000))*(cj5)*(x6369)*(x6371)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6372=IKsin(j3); +IkReal x6373=IKcos(j3); +IkReal x6374=((sj0)*(sj5)); +IkReal x6375=((r00)*(sj6)); +IkReal x6376=((IkReal(1.00000000000000))*(cj4)); +IkReal x6377=((cj6)*(r01)); +IkReal x6378=((cj0)*(cj5)); +IkReal x6379=((cj5)*(sj0)); +IkReal x6380=((cj6)*(r11)); +IkReal x6381=((cj0)*(sj5)); +IkReal x6382=((cj6)*(sj4)); +IkReal x6383=((cj4)*(cj5)); +IkReal x6384=((cj6)*(r21)); +IkReal x6385=((r20)*(sj6)); +IkReal x6386=((r10)*(sj6)); +IkReal x6387=((IkReal(1.00000000000000))*(cj0)); +IkReal x6388=((IkReal(1.00000000000000))*(x6372)); +IkReal x6389=((cj0)*(sj4)*(sj6)); +IkReal x6390=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x6384)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6385)))+(((IkReal(-1.00000000000000))*(cj2)*(x6388)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x6373)))+(((r20)*(x6382)))+(((cj4)*(r22)*(sj5)))+(((x6383)*(x6384)))+(((x6383)*(x6385)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x6388)))+(((x6374)*(x6377)))+(((IkReal(-1.00000000000000))*(x6380)*(x6381)))+(((x6374)*(x6375)))+(((IkReal(-1.00000000000000))*(x6381)*(x6386)))+(((IkReal(-1.00000000000000))*(r02)*(x6379)))+(((r12)*(x6378)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6377)*(x6381)))+(((IkReal(-1.00000000000000))*(x6373)))+(((IkReal(-1.00000000000000))*(x6374)*(x6380)))+(((IkReal(-1.00000000000000))*(x6375)*(x6381)))+(((r12)*(x6379)))+(((IkReal(-1.00000000000000))*(x6374)*(x6386)))+(((r02)*(x6378)))); +evalcond[4]=((((sj2)*(x6373)))+(((IkReal(-1.00000000000000))*(r12)*(x6376)*(x6381)))+(((IkReal(-1.00000000000000))*(r10)*(x6382)*(x6387)))+(((r11)*(x6389)))+(((r00)*(sj0)*(x6382)))+(((IkReal(-1.00000000000000))*(r01)*(x6390)))+(((cj4)*(x6375)*(x6379)))+(((cj4)*(r02)*(x6374)))+(((IkReal(-1.00000000000000))*(x6376)*(x6378)*(x6386)))+(((cj4)*(x6377)*(x6379)))+(((IkReal(-1.00000000000000))*(x6376)*(x6378)*(x6380)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x6376)*(x6381)))+(((IkReal(-1.00000000000000))*(r00)*(x6382)*(x6387)))+(((r11)*(x6390)))+(((IkReal(-1.00000000000000))*(x6376)*(x6377)*(x6378)))+(((r01)*(x6389)))+(((IkReal(-1.00000000000000))*(x6376)*(x6379)*(x6380)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6382)))+(((IkReal(-1.00000000000000))*(x6375)*(x6376)*(x6378)))+(((IkReal(-1.00000000000000))*(r12)*(x6374)*(x6376)))+(((IkReal(-1.00000000000000))*(x6388)))+(((IkReal(-1.00000000000000))*(x6376)*(x6379)*(x6386)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x6391=((IkReal(1.00000000000000))*(cj0)); +IkReal x6392=((cj4)*(sj6)); +IkReal x6393=((sj0)*(sj4)); +IkReal x6394=((cj5)*(sj6)); +IkReal x6395=((sj4)*(sj5)); +IkReal x6396=((r12)*(sj5)); +IkReal x6397=((IkReal(0.374290000000000))*(cj5)); +IkReal x6398=((r02)*(sj0)); +IkReal x6399=((IkReal(1.00000000000000))*(sj0)); +IkReal x6400=((cj0)*(r10)); +IkReal x6401=((cj4)*(cj6)); +IkReal x6402=((r00)*(sj0)); +IkReal x6403=((cj6)*(r21)); +IkReal x6404=((IkReal(0.374290000000000))*(sj5)); +IkReal x6405=((cj0)*(r00)); +IkReal x6406=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6407=((cj0)*(r02)); +IkReal x6408=((cj5)*(sj4)); +IkReal x6409=((cj6)*(r01)); +IkReal x6410=((cj6)*(r11)); +IkReal x6411=((r01)*(sj0)); +IkReal x6412=((r10)*(sj0)); +IkReal x6413=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6414=((sj6)*(x6404)); +IkReal x6415=((cj0)*(cj6)*(x6404)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((r20)*(sj4)*(x6394)))+(((x6403)*(x6408)))+(sj2)+(((r22)*(x6395)))+(((r21)*(x6392)))+(((IkReal(-1.00000000000000))*(r20)*(x6401)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x6397)))+(((r20)*(x6414)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6403)))+(((IkReal(-0.0690000000000000))*(cj2)))+(pz)+(((x6403)*(x6404)))+(((IkReal(-1.00000000000000))*(r22)*(x6406)))+(((IkReal(-0.0100000000000000))*(r20)*(x6394)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x6391)*(x6395)))+(((x6392)*(x6411)))+(((IkReal(-1.00000000000000))*(r11)*(x6391)*(x6392)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6391)*(x6394)))+(((r00)*(x6393)*(x6394)))+(((x6400)*(x6401)))+(cj2)+(((cj5)*(x6393)*(x6409)))+(((r02)*(sj5)*(x6393)))+(((IkReal(-1.00000000000000))*(r00)*(x6399)*(x6401)))+(((IkReal(-1.00000000000000))*(x6391)*(x6408)*(x6410)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj5)*(x6393)*(x6410)))+(((IkReal(-1.00000000000000))*(r02)*(x6391)*(x6395)))+(((IkReal(-1.00000000000000))*(x6393)*(x6396)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6391)*(x6394)))+(((IkReal(-1.00000000000000))*(x6391)*(x6408)*(x6409)))+(((x6401)*(x6405)))+(((IkReal(-1.00000000000000))*(r11)*(x6392)*(x6399)))+(((IkReal(-1.00000000000000))*(r01)*(x6391)*(x6392)))+(((IkReal(-1.00000000000000))*(r10)*(x6393)*(x6394)))+(((x6401)*(x6412)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(cj0)*(x6404)*(x6410)))+(((IkReal(-0.0100000000000000))*(x6394)*(x6402)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(0.0100000000000000))*(cj0)*(x6396)))+(((IkReal(-1.00000000000000))*(x6397)*(x6398)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6409)))+(((IkReal(0.0100000000000000))*(x6394)*(x6400)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6410)))+(((x6402)*(x6414)))+(((cj0)*(r12)*(x6397)))+(((IkReal(-1.00000000000000))*(x6400)*(x6414)))+(((sj0)*(x6404)*(x6409)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x6398)*(x6406)))+(((IkReal(-1.00000000000000))*(py)*(x6391)))); +evalcond[6]=((IkReal(-0.295420000000000))+(((x6406)*(x6407)))+(((IkReal(-1.00000000000000))*(px)*(x6391)))+(((IkReal(-1.00000000000000))*(x6405)*(x6414)))+(((IkReal(0.0100000000000000))*(x6394)*(x6405)))+(((IkReal(-1.00000000000000))*(x6412)*(x6414)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6410)))+(((IkReal(0.0100000000000000))*(x6394)*(x6412)))+(((r12)*(sj0)*(x6397)))+(((IkReal(-1.00000000000000))*(sj0)*(x6404)*(x6410)))+(((IkReal(-1.00000000000000))*(py)*(x6399)))+(((x6397)*(x6407)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6409)))+(((IkReal(0.0100000000000000))*(sj0)*(x6396)))+(((IkReal(-1.00000000000000))*(cj0)*(x6404)*(x6409)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst10; +gconst10=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x6416=((cj5)*(sj4)); +IkReal x6417=((IkReal(1.00000000000000))*(sj6)); +IkReal x6418=((r10)*(sj0)); +IkReal x6419=((sj4)*(sj5)); +IkReal x6420=((cj5)*(cj6)); +IkReal x6421=((r01)*(sj0)); +IkReal x6422=((IkReal(1.00000000000000))*(r02)); +IkReal x6423=((IkReal(0.374290000000000))*(cj0)); +IkReal x6424=((cj5)*(r12)); +IkReal x6425=((cj6)*(sj5)); +IkReal x6426=((cj0)*(r11)); +IkReal x6427=((cj5)*(sj0)); +IkReal x6428=((r20)*(sj6)); +IkReal x6429=((IkReal(1.00000000000000))*(sj0)); +IkReal x6430=((cj4)*(cj5)); +IkReal x6431=((IkReal(1.00000000000000))*(cj6)); +IkReal x6432=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6433=((sj5)*(sj6)); +IkReal x6434=((cj0)*(r10)); +IkReal x6435=((cj4)*(cj6)); +IkReal x6436=((cj0)*(r01)); +IkReal x6437=((IkReal(1.00000000000000))*(cj4)); +IkReal x6438=((cj0)*(r00)); +IkReal x6439=((IkReal(0.374290000000000))*(sj0)); +IkReal x6440=((cj0)*(r12)); +IkReal x6441=((IkReal(0.374290000000000))*(sj5)); +IkReal x6442=((cj4)*(sj6)); +IkReal x6443=((IkReal(1.00000000000000))*(cj0)); +IkReal x6444=((r02)*(sj0)); +IkReal x6445=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6446=((r11)*(sj0)); +IkReal x6447=((r00)*(sj0)*(sj6)); +IkReal x6448=((r00)*(x6435)); +IkReal x6449=((sj6)*(x6445)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj4)*(r20)*(x6431)))+(((r22)*(x6419)))+(((cj6)*(r21)*(x6416)))+(((x6416)*(x6428)))+(((r21)*(x6442)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x6425)))+(((x6428)*(x6441)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x6432)))+(((IkReal(-1.00000000000000))*(x6428)*(x6445)))+(((IkReal(-0.0100000000000000))*(r21)*(x6420)))); +evalcond[3]=((((r00)*(sj0)*(x6433)))+(((IkReal(-1.00000000000000))*(sj5)*(x6417)*(x6434)))+(((IkReal(-1.00000000000000))*(x6422)*(x6427)))+(((x6421)*(x6425)))+(((cj0)*(x6424)))+(((IkReal(-1.00000000000000))*(x6425)*(x6426)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x6416)*(x6426)*(x6431)))+(((x6416)*(x6447)))+(((cj6)*(x6416)*(x6421)))+(((IkReal(-1.00000000000000))*(x6419)*(x6440)))+(((x6434)*(x6435)))+(((IkReal(-1.00000000000000))*(cj4)*(x6417)*(x6426)))+(((IkReal(-1.00000000000000))*(x6416)*(x6417)*(x6434)))+(((x6419)*(x6444)))+(((x6421)*(x6442)))+(((IkReal(-1.00000000000000))*(x6429)*(x6448)))); +evalcond[5]=((((cj4)*(x6420)*(x6421)))+(((IkReal(-1.00000000000000))*(x6417)*(x6430)*(x6434)))+(((r00)*(x6427)*(x6442)))+(((sj4)*(sj6)*(x6426)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(sj5)*(x6444)))+(((IkReal(-1.00000000000000))*(sj4)*(x6417)*(x6421)))+(((IkReal(-1.00000000000000))*(sj4)*(x6431)*(x6434)))+(((IkReal(-1.00000000000000))*(x6420)*(x6426)*(x6437)))+(((IkReal(-1.00000000000000))*(sj5)*(x6437)*(x6440)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x6417)*(x6436)))+(((IkReal(-1.00000000000000))*(r12)*(x6419)*(x6429)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x6416)*(x6429)))+(((IkReal(-1.00000000000000))*(cj0)*(x6419)*(x6422)))+(((x6435)*(x6438)))+(((x6418)*(x6435)))+(((IkReal(-1.00000000000000))*(x6416)*(x6431)*(x6436)))+(((IkReal(-1.00000000000000))*(cj4)*(x6417)*(x6446)))+(((IkReal(-1.00000000000000))*(x6416)*(x6417)*(x6438)))+(((IkReal(-1.00000000000000))*(x6416)*(x6417)*(x6418)))); +evalcond[7]=((((IkReal(-0.0100000000000000))*(x6420)*(x6421)))+(((IkReal(-1.00000000000000))*(py)*(x6443)))+(((IkReal(-1.00000000000000))*(r11)*(x6423)*(x6425)))+(((IkReal(0.374290000000000))*(x6421)*(x6425)))+(((x6434)*(x6449)))+(((x6432)*(x6440)))+(((x6423)*(x6424)))+(((IkReal(-1.00000000000000))*(r10)*(x6423)*(x6433)))+(((IkReal(-0.374290000000000))*(r02)*(x6427)))+(((IkReal(-1.00000000000000))*(x6432)*(x6444)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x6427)))+(((IkReal(0.0100000000000000))*(x6420)*(x6426)))+(((px)*(sj0)))+(((r00)*(x6433)*(x6439)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((cj0)*(r02)*(x6432)))+(((IkReal(0.0100000000000000))*(x6420)*(x6436)))+(((x6424)*(x6439)))+(((r12)*(sj0)*(x6432)))+(((IkReal(-1.00000000000000))*(r00)*(x6423)*(x6433)))+(((IkReal(-1.00000000000000))*(r11)*(x6425)*(x6439)))+(((IkReal(-0.374290000000000))*(x6418)*(x6433)))+(((IkReal(-1.00000000000000))*(py)*(x6429)))+(((IkReal(-1.00000000000000))*(r01)*(x6423)*(x6425)))+(((IkReal(-1.00000000000000))*(px)*(x6443)))+(((x6438)*(x6449)))+(((x6418)*(x6449)))+(((IkReal(0.0100000000000000))*(x6420)*(x6446)))+(((cj5)*(r02)*(x6423)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6450=((IkReal(1.00000000000000))*(r21)); +IkReal x6451=((cj4)*(cj5)); +IkReal x6452=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x6452)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6450)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6450)))+(((x6451)*(x6452)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x6451))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x6452)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6450)))+(((cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6450)))+(((x6451)*(x6452)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x6451)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x6452)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6450)))+(((cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6450)))+(((x6451)*(x6452)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x6451))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6453=IKcos(j3); +IkReal x6454=IKsin(j3); +IkReal x6455=((IkReal(1.00000000000000))*(cj4)); +IkReal x6456=((sj0)*(sj5)); +IkReal x6457=((cj0)*(cj5)); +IkReal x6458=((cj6)*(r01)); +IkReal x6459=((r00)*(sj6)); +IkReal x6460=((cj6)*(r11)); +IkReal x6461=((cj5)*(sj0)); +IkReal x6462=((cj6)*(sj4)); +IkReal x6463=((sj4)*(sj6)); +IkReal x6464=((cj4)*(cj5)); +IkReal x6465=((cj6)*(r21)); +IkReal x6466=((r20)*(sj6)); +IkReal x6467=((r10)*(sj6)); +IkReal x6468=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x6465)))+(((sj5)*(x6466)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x6454)); +evalcond[1]=((((x6464)*(x6466)))+(((IkReal(-1.00000000000000))*(x6453)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x6462)))+(((x6464)*(x6465)))+(((IkReal(-1.00000000000000))*(r21)*(x6463)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6456)*(x6460)))+(((IkReal(-1.00000000000000))*(x6458)*(x6468)))+(((IkReal(-1.00000000000000))*(x6459)*(x6468)))+(((r12)*(x6461)))+(((r02)*(x6457)))+(((IkReal(-1.00000000000000))*(x6456)*(x6467)))+(x6453)); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6455)))+(((IkReal(-1.00000000000000))*(x6455)*(x6460)*(x6461)))+(((IkReal(-1.00000000000000))*(x6455)*(x6461)*(x6467)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6462)))+(((IkReal(-1.00000000000000))*(x6455)*(x6457)*(x6458)))+(((r11)*(sj0)*(x6463)))+(((IkReal(-1.00000000000000))*(x6455)*(x6457)*(x6459)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6462)))+(((cj0)*(r01)*(x6463)))+(x6454)+(((IkReal(-1.00000000000000))*(r12)*(x6455)*(x6456)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6469=((cj5)*(sj4)); +IkReal x6470=((IkReal(1.00000000000000))*(sj6)); +IkReal x6471=((r10)*(sj0)); +IkReal x6472=((sj4)*(sj5)); +IkReal x6473=((cj5)*(cj6)); +IkReal x6474=((r01)*(sj0)); +IkReal x6475=((IkReal(1.00000000000000))*(r02)); +IkReal x6476=((IkReal(0.374290000000000))*(cj0)); +IkReal x6477=((cj5)*(r12)); +IkReal x6478=((cj6)*(sj5)); +IkReal x6479=((cj0)*(r11)); +IkReal x6480=((cj5)*(sj0)); +IkReal x6481=((r20)*(sj6)); +IkReal x6482=((IkReal(1.00000000000000))*(sj0)); +IkReal x6483=((cj4)*(cj5)); +IkReal x6484=((IkReal(1.00000000000000))*(cj6)); +IkReal x6485=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6486=((sj5)*(sj6)); +IkReal x6487=((cj0)*(r10)); +IkReal x6488=((cj4)*(cj6)); +IkReal x6489=((cj0)*(r01)); +IkReal x6490=((IkReal(1.00000000000000))*(cj4)); +IkReal x6491=((cj0)*(r00)); +IkReal x6492=((IkReal(0.374290000000000))*(sj0)); +IkReal x6493=((cj0)*(r12)); +IkReal x6494=((IkReal(0.374290000000000))*(sj5)); +IkReal x6495=((cj4)*(sj6)); +IkReal x6496=((IkReal(1.00000000000000))*(cj0)); +IkReal x6497=((r02)*(sj0)); +IkReal x6498=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6499=((r11)*(sj0)); +IkReal x6500=((r00)*(sj0)*(sj6)); +IkReal x6501=((r00)*(x6488)); +IkReal x6502=((sj6)*(x6498)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x6472)))+(((x6469)*(x6481)))+(((cj6)*(r21)*(x6469)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x6484)))+(((r21)*(x6495)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x6473)))+(((IkReal(-1.00000000000000))*(r22)*(x6485)))+(((x6481)*(x6494)))+(pz)+(((IkReal(0.374290000000000))*(r21)*(x6478)))+(((IkReal(-1.00000000000000))*(x6481)*(x6498)))); +evalcond[3]=((((r00)*(sj0)*(x6486)))+(((IkReal(-1.00000000000000))*(x6478)*(x6479)))+(((x6474)*(x6478)))+(((IkReal(-1.00000000000000))*(x6475)*(x6480)))+(((cj0)*(x6477)))+(((IkReal(-1.00000000000000))*(sj5)*(x6470)*(x6487)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x6487)*(x6488)))+(((IkReal(-1.00000000000000))*(x6482)*(x6501)))+(((IkReal(-1.00000000000000))*(x6469)*(x6470)*(x6487)))+(((x6469)*(x6500)))+(((x6474)*(x6495)))+(((cj6)*(x6469)*(x6474)))+(((x6472)*(x6497)))+(((IkReal(-1.00000000000000))*(cj4)*(x6470)*(x6479)))+(((IkReal(-1.00000000000000))*(x6472)*(x6493)))+(((IkReal(-1.00000000000000))*(x6469)*(x6479)*(x6484)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x6490)*(x6493)))+(((IkReal(-1.00000000000000))*(x6470)*(x6483)*(x6487)))+(((IkReal(-1.00000000000000))*(sj4)*(x6470)*(x6474)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x6473)*(x6479)*(x6490)))+(((IkReal(-1.00000000000000))*(sj4)*(x6484)*(x6487)))+(((sj4)*(sj6)*(x6479)))+(((cj4)*(sj5)*(x6497)))+(((cj4)*(x6473)*(x6474)))+(((r00)*(x6480)*(x6495)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x6470)*(x6499)))+(((x6488)*(x6491)))+(((x6471)*(x6488)))+(((IkReal(-1.00000000000000))*(x6469)*(x6470)*(x6491)))+(((IkReal(-1.00000000000000))*(r12)*(x6472)*(x6482)))+(((IkReal(-1.00000000000000))*(x6469)*(x6484)*(x6489)))+(((IkReal(-1.00000000000000))*(x6469)*(x6470)*(x6471)))+(((IkReal(-1.00000000000000))*(cj0)*(x6472)*(x6475)))+(((IkReal(-1.00000000000000))*(cj4)*(x6470)*(x6489)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x6469)*(x6482)))); +evalcond[7]=((((x6487)*(x6502)))+(((IkReal(0.374290000000000))*(x6474)*(x6478)))+(((IkReal(-0.0100000000000000))*(x6473)*(x6474)))+(((x6476)*(x6477)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x6480)))+(((IkReal(-1.00000000000000))*(x6485)*(x6497)))+(((px)*(sj0)))+(((IkReal(-0.374290000000000))*(r02)*(x6480)))+(((IkReal(-1.00000000000000))*(r10)*(x6476)*(x6486)))+(((IkReal(-1.00000000000000))*(py)*(x6496)))+(((IkReal(-1.00000000000000))*(r11)*(x6476)*(x6478)))+(((x6485)*(x6493)))+(((r00)*(x6486)*(x6492)))+(((IkReal(0.0100000000000000))*(x6473)*(x6479)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(r00)*(x6476)*(x6486)))+(((IkReal(-1.00000000000000))*(px)*(x6496)))+(((cj0)*(r02)*(x6485)))+(((r12)*(sj0)*(x6485)))+(((IkReal(-0.374290000000000))*(x6471)*(x6486)))+(((cj5)*(r02)*(x6476)))+(((x6477)*(x6492)))+(((IkReal(-1.00000000000000))*(r01)*(x6476)*(x6478)))+(((x6471)*(x6502)))+(((IkReal(0.0100000000000000))*(x6473)*(x6499)))+(((IkReal(-1.00000000000000))*(py)*(x6482)))+(((IkReal(0.0100000000000000))*(x6473)*(x6489)))+(((IkReal(-1.00000000000000))*(r11)*(x6478)*(x6492)))+(((x6491)*(x6502)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6503=((IkReal(1.00000000000000))*(cj4)); +IkReal x6504=((cj6)*(r21)); +IkReal x6505=((r20)*(sj6)); +if( IKabs(((((sj5)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6504))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6504)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6503)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6504)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6504)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6503)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6504)))), ((((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6504)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6503)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6506=IKcos(j3); +IkReal x6507=IKsin(j3); +IkReal x6508=((IkReal(1.00000000000000))*(cj4)); +IkReal x6509=((sj0)*(sj5)); +IkReal x6510=((cj0)*(cj5)); +IkReal x6511=((cj6)*(r01)); +IkReal x6512=((r00)*(sj6)); +IkReal x6513=((cj6)*(r11)); +IkReal x6514=((cj5)*(sj0)); +IkReal x6515=((cj6)*(sj4)); +IkReal x6516=((sj4)*(sj6)); +IkReal x6517=((cj4)*(cj5)); +IkReal x6518=((cj6)*(r21)); +IkReal x6519=((r20)*(sj6)); +IkReal x6520=((r10)*(sj6)); +IkReal x6521=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x6518)))+(((IkReal(-1.00000000000000))*(x6507)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6519)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x6516)))+(((x6517)*(x6518)))+(((x6517)*(x6519)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x6515)))+(x6506)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6509)*(x6513)))+(((IkReal(-1.00000000000000))*(x6511)*(x6521)))+(((r02)*(x6510)))+(((IkReal(-1.00000000000000))*(x6509)*(x6520)))+(x6506)+(((r12)*(x6514)))+(((IkReal(-1.00000000000000))*(x6512)*(x6521)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6508)*(x6510)*(x6511)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6515)))+(((IkReal(-1.00000000000000))*(x6508)*(x6514)*(x6520)))+(((IkReal(-1.00000000000000))*(x6508)*(x6510)*(x6512)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6515)))+(((cj0)*(r01)*(x6516)))+(((IkReal(-1.00000000000000))*(x6508)*(x6513)*(x6514)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6508)))+(((r11)*(sj0)*(x6516)))+(((IkReal(-1.00000000000000))*(r12)*(x6508)*(x6509)))+(x6507)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6522=((IkReal(1.00000000000000))*(cj0)); +IkReal x6523=((cj4)*(sj6)); +IkReal x6524=((sj0)*(sj4)); +IkReal x6525=((cj5)*(sj6)); +IkReal x6526=((sj4)*(sj5)); +IkReal x6527=((r12)*(sj5)); +IkReal x6528=((IkReal(0.374290000000000))*(cj5)); +IkReal x6529=((r02)*(sj0)); +IkReal x6530=((r20)*(sj4)); +IkReal x6531=((IkReal(1.00000000000000))*(sj0)); +IkReal x6532=((IkReal(1.00000000000000))*(cj5)); +IkReal x6533=((cj0)*(r10)); +IkReal x6534=((cj4)*(cj6)); +IkReal x6535=((r00)*(sj0)); +IkReal x6536=((cj6)*(r21)); +IkReal x6537=((IkReal(0.374290000000000))*(sj5)); +IkReal x6538=((cj0)*(r00)); +IkReal x6539=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6540=((cj0)*(r02)); +IkReal x6541=((cj5)*(sj4)); +IkReal x6542=((cj6)*(r01)); +IkReal x6543=((cj6)*(r11)); +IkReal x6544=((r01)*(sj0)); +IkReal x6545=((r10)*(sj0)); +IkReal x6546=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6547=((sj6)*(x6537)); +IkReal x6548=((cj0)*(cj6)*(x6537)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x6536)))+(((IkReal(-1.00000000000000))*(r22)*(x6532)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x6536)*(x6541)))+(((r21)*(x6523)))+(((r22)*(x6526)))+(((IkReal(-1.00000000000000))*(r20)*(x6534)))+(((x6525)*(x6530)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x6536)))+(((x6536)*(x6537)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x6539)))+(((IkReal(-0.0100000000000000))*(r20)*(x6525)))+(((r20)*(x6547)))+(((IkReal(-1.00000000000000))*(r22)*(x6528)))); +evalcond[4]=((((cj6)*(x6530)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x6534)))+(((cj5)*(r20)*(x6523)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x6522)*(x6526)))+(((r02)*(sj5)*(x6524)))+(((IkReal(-1.00000000000000))*(x6522)*(x6541)*(x6543)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6522)*(x6525)))+(((x6523)*(x6544)))+(((x6533)*(x6534)))+(((IkReal(-1.00000000000000))*(r11)*(x6522)*(x6523)))+(((r00)*(x6524)*(x6525)))+(((cj5)*(x6524)*(x6542)))+(((IkReal(-1.00000000000000))*(r00)*(x6531)*(x6534)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r01)*(x6522)*(x6523)))+(((IkReal(-1.00000000000000))*(x6524)*(x6532)*(x6543)))+(((IkReal(-1.00000000000000))*(r02)*(x6522)*(x6526)))+(((x6534)*(x6538)))+(((IkReal(-1.00000000000000))*(x6524)*(x6527)))+(((IkReal(-1.00000000000000))*(r11)*(x6523)*(x6531)))+(((IkReal(-1.00000000000000))*(x6522)*(x6541)*(x6542)))+(((IkReal(-1.00000000000000))*(r10)*(x6524)*(x6525)))+(((x6534)*(x6545)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6522)*(x6525)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x6537)*(x6543)))+(((IkReal(0.0100000000000000))*(x6525)*(x6533)))+(((IkReal(-1.00000000000000))*(x6533)*(x6547)))+(((cj0)*(r12)*(x6528)))+(((IkReal(-1.00000000000000))*(py)*(x6522)))+(((IkReal(-1.00000000000000))*(x6529)*(x6539)))+(((IkReal(-0.0100000000000000))*(x6525)*(x6535)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6543)))+(((IkReal(0.0100000000000000))*(cj0)*(x6527)))+(((IkReal(-1.00000000000000))*(x6528)*(x6529)))+(((sj0)*(x6537)*(x6542)))+(((x6535)*(x6547)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6542)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(x6525)*(x6538)))+(((IkReal(-1.00000000000000))*(sj0)*(x6537)*(x6543)))+(((IkReal(-1.00000000000000))*(py)*(x6531)))+(((IkReal(-1.00000000000000))*(x6538)*(x6547)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6543)))+(((IkReal(-1.00000000000000))*(x6545)*(x6547)))+(((x6528)*(x6540)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6542)))+(((x6539)*(x6540)))+(((IkReal(-1.00000000000000))*(px)*(x6522)))+(((IkReal(0.0100000000000000))*(x6525)*(x6545)))+(((r12)*(sj0)*(x6528)))+(((IkReal(0.0100000000000000))*(sj0)*(x6527)))+(((IkReal(-1.00000000000000))*(cj0)*(x6537)*(x6542)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6549=((sj0)*(sj5)); +IkReal x6550=((r00)*(sj6)); +IkReal x6551=((IkReal(1.00000000000000))*(cj5)); +IkReal x6552=((cj6)*(r11)); +IkReal x6553=((cj6)*(r01)); +IkReal x6554=((r10)*(sj6)); +IkReal x6555=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x6552)*(x6555)))+(((IkReal(-1.00000000000000))*(x6554)*(x6555)))+(((x6549)*(x6550)))+(((x6549)*(x6553)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6551))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x6553)*(x6555)))+(((x6549)*(x6554)))+(((x6549)*(x6552)))+(((x6550)*(x6555)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6551)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6551))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x6552)*(x6555)))+(((IkReal(-1.00000000000000))*(x6554)*(x6555)))+(((x6549)*(x6550)))+(((x6549)*(x6553)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6551)))))+IKsqr(((((x6553)*(x6555)))+(((x6549)*(x6554)))+(((x6549)*(x6552)))+(((x6550)*(x6555)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6551)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6551)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x6552)*(x6555)))+(((IkReal(-1.00000000000000))*(x6554)*(x6555)))+(((x6549)*(x6550)))+(((x6549)*(x6553)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6551)))), ((((x6553)*(x6555)))+(((x6549)*(x6554)))+(((x6549)*(x6552)))+(((x6550)*(x6555)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6551)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6551))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6556=IKcos(j3); +IkReal x6557=IKsin(j3); +IkReal x6558=((sj0)*(sj5)); +IkReal x6559=((r00)*(sj6)); +IkReal x6560=((cj6)*(sj0)); +IkReal x6561=((IkReal(1.00000000000000))*(cj4)); +IkReal x6562=((r00)*(sj4)); +IkReal x6563=((cj0)*(cj5)); +IkReal x6564=((cj5)*(sj0)); +IkReal x6565=((cj6)*(r11)); +IkReal x6566=((r10)*(sj6)); +IkReal x6567=((cj0)*(sj5)); +IkReal x6568=((r10)*(sj4)); +IkReal x6569=((cj4)*(cj5)*(r01)); +IkReal x6570=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x6571=((cj0)*(sj4)*(sj6)); +IkReal x6572=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((r12)*(x6563)))+(((IkReal(-1.00000000000000))*(r02)*(x6564)))+(((IkReal(-1.00000000000000))*(x6566)*(x6567)))+(((cj6)*(r01)*(x6558)))+(((x6558)*(x6559)))+(((IkReal(-1.00000000000000))*(x6557)))+(((IkReal(-1.00000000000000))*(x6565)*(x6567)))); +evalcond[1]=((((r12)*(x6564)))+(((IkReal(-1.00000000000000))*(x6559)*(x6567)))+(((r02)*(x6563)))+(((IkReal(-1.00000000000000))*(x6558)*(x6565)))+(((IkReal(-1.00000000000000))*(x6558)*(x6566)))+(x6556)+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x6567)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6568)*(x6570)))+(((cj4)*(x6559)*(x6564)))+(((IkReal(-1.00000000000000))*(x6561)*(x6563)*(x6566)))+(((r11)*(x6571)))+(((x6560)*(x6562)))+(((IkReal(-1.00000000000000))*(r01)*(x6572)))+(((cj4)*(r02)*(x6558)))+(x6556)+(((IkReal(-1.00000000000000))*(r12)*(x6561)*(x6567)))+(((x6560)*(x6569)))+(((IkReal(-1.00000000000000))*(x6561)*(x6563)*(x6565)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x6561)*(x6563)))+(((IkReal(-1.00000000000000))*(x6560)*(x6568)))+(((r01)*(x6571)))+(((r11)*(x6572)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x6560)*(x6561)))+(x6557)+(((IkReal(-1.00000000000000))*(r02)*(x6561)*(x6567)))+(((IkReal(-1.00000000000000))*(x6562)*(x6570)))+(((IkReal(-1.00000000000000))*(x6559)*(x6561)*(x6563)))+(((IkReal(-1.00000000000000))*(r12)*(x6558)*(x6561)))+(((IkReal(-1.00000000000000))*(x6561)*(x6564)*(x6566)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6573=((IkReal(1.00000000000000))*(cj0)); +IkReal x6574=((cj4)*(sj6)); +IkReal x6575=((sj0)*(sj4)); +IkReal x6576=((cj5)*(sj6)); +IkReal x6577=((sj4)*(sj5)); +IkReal x6578=((r12)*(sj5)); +IkReal x6579=((IkReal(0.374290000000000))*(cj5)); +IkReal x6580=((r02)*(sj0)); +IkReal x6581=((r20)*(sj4)); +IkReal x6582=((IkReal(1.00000000000000))*(sj0)); +IkReal x6583=((IkReal(1.00000000000000))*(cj5)); +IkReal x6584=((cj0)*(r10)); +IkReal x6585=((cj4)*(cj6)); +IkReal x6586=((r00)*(sj0)); +IkReal x6587=((cj6)*(r21)); +IkReal x6588=((IkReal(0.374290000000000))*(sj5)); +IkReal x6589=((cj0)*(r00)); +IkReal x6590=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6591=((cj0)*(r02)); +IkReal x6592=((cj5)*(sj4)); +IkReal x6593=((cj6)*(r01)); +IkReal x6594=((cj6)*(r11)); +IkReal x6595=((r01)*(sj0)); +IkReal x6596=((r10)*(sj0)); +IkReal x6597=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6598=((sj6)*(x6588)); +IkReal x6599=((cj0)*(cj6)*(x6588)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x6587)))+(((IkReal(-1.00000000000000))*(r22)*(x6583)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x6587)*(x6592)))+(((r22)*(x6577)))+(((x6576)*(x6581)))+(((r21)*(x6574)))+(((IkReal(-1.00000000000000))*(r20)*(x6585)))); +evalcond[3]=((((r20)*(x6598)))+(((IkReal(-1.00000000000000))*(r22)*(x6579)))+(((x6587)*(x6588)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6587)))+(((IkReal(-1.00000000000000))*(r22)*(x6590)))+(((IkReal(-0.0100000000000000))*(r20)*(x6576)))+(pz)); +evalcond[4]=((((cj6)*(x6581)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x6585)))+(((cj5)*(r20)*(x6574)))); +evalcond[5]=((((r00)*(x6575)*(x6576)))+(((IkReal(-1.00000000000000))*(r00)*(x6582)*(x6585)))+(((IkReal(-1.00000000000000))*(r11)*(x6573)*(x6574)))+(((x6584)*(x6585)))+(((IkReal(-1.00000000000000))*(x6573)*(x6592)*(x6594)))+(((cj5)*(x6575)*(x6593)))+(((IkReal(-1.00000000000000))*(r12)*(x6573)*(x6577)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6573)*(x6576)))+(((r02)*(sj5)*(x6575)))+(((x6574)*(x6595)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r01)*(x6573)*(x6574)))+(((IkReal(-1.00000000000000))*(x6575)*(x6583)*(x6594)))+(((IkReal(-1.00000000000000))*(r10)*(x6575)*(x6576)))+(((x6585)*(x6589)))+(((IkReal(-1.00000000000000))*(r02)*(x6573)*(x6577)))+(((IkReal(-1.00000000000000))*(r11)*(x6574)*(x6582)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6573)*(x6576)))+(((IkReal(-1.00000000000000))*(x6575)*(x6578)))+(((x6585)*(x6596)))+(((IkReal(-1.00000000000000))*(x6573)*(x6592)*(x6593)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(0.0100000000000000))*(x6576)*(x6584)))+(((IkReal(-0.0100000000000000))*(x6576)*(x6586)))+(((IkReal(0.0100000000000000))*(cj0)*(x6578)))+(((sj0)*(x6588)*(x6593)))+(((IkReal(-1.00000000000000))*(x6579)*(x6580)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6593)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6594)))+(((x6586)*(x6598)))+(((cj0)*(r12)*(x6579)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(x6588)*(x6594)))+(((IkReal(-1.00000000000000))*(py)*(x6573)))+(((IkReal(-1.00000000000000))*(x6584)*(x6598)))+(((IkReal(-1.00000000000000))*(x6580)*(x6590)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(sj0)*(x6578)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6593)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6594)))+(((IkReal(-1.00000000000000))*(cj0)*(x6588)*(x6593)))+(((r12)*(sj0)*(x6579)))+(((IkReal(-1.00000000000000))*(x6596)*(x6598)))+(((IkReal(0.0100000000000000))*(x6576)*(x6596)))+(((x6590)*(x6591)))+(((x6579)*(x6591)))+(((IkReal(-1.00000000000000))*(py)*(x6582)))+(((IkReal(-1.00000000000000))*(x6589)*(x6598)))+(((IkReal(0.0100000000000000))*(x6576)*(x6589)))+(((IkReal(-1.00000000000000))*(px)*(x6573)))+(((IkReal(-1.00000000000000))*(sj0)*(x6588)*(x6594)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6600=((IkReal(1.00000000000000))*(cj5)); +IkReal x6601=((r10)*(sj5)*(sj6)); +IkReal x6602=((cj6)*(sj0)*(sj5)); +IkReal x6603=((r00)*(sj5)*(sj6)); +IkReal x6604=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r01)*(x6602)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x6600)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x6601)))+(((r11)*(x6604))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj0)*(x6601)))+(((cj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6600)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6600)))+(((r01)*(x6604)))+(((r11)*(x6602))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r01)*(x6602)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x6600)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x6601)))+(((r11)*(x6604)))))+IKsqr(((((sj0)*(x6601)))+(((cj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6600)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6600)))+(((r01)*(x6604)))+(((r11)*(x6602)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r01)*(x6602)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x6600)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x6601)))+(((r11)*(x6604)))), ((((sj0)*(x6601)))+(((cj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6600)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6600)))+(((r01)*(x6604)))+(((r11)*(x6602))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6605=IKcos(j3); +IkReal x6606=IKsin(j3); +IkReal x6607=((sj0)*(sj5)); +IkReal x6608=((r00)*(sj6)); +IkReal x6609=((IkReal(1.00000000000000))*(cj4)); +IkReal x6610=((cj6)*(sj0)); +IkReal x6611=((r00)*(sj4)); +IkReal x6612=((cj0)*(cj5)); +IkReal x6613=((cj6)*(r01)); +IkReal x6614=((cj5)*(sj0)); +IkReal x6615=((cj0)*(sj5)); +IkReal x6616=((cj6)*(r11)); +IkReal x6617=((r10)*(sj6)); +IkReal x6618=((r10)*(sj4)); +IkReal x6619=((cj0)*(sj4)*(sj6)); +IkReal x6620=((sj0)*(sj4)*(sj6)); +IkReal x6621=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x6615)*(x6617)))+(x6606)+(((r12)*(x6612)))+(((x6607)*(x6608)))+(((IkReal(-1.00000000000000))*(x6615)*(x6616)))+(((x6607)*(x6613)))+(((IkReal(-1.00000000000000))*(r02)*(x6614)))); +evalcond[1]=((x6605)+(((IkReal(-1.00000000000000))*(x6613)*(x6615)))+(((r12)*(x6614)))+(((IkReal(-1.00000000000000))*(x6608)*(x6615)))+(((IkReal(-1.00000000000000))*(x6607)*(x6616)))+(((r02)*(x6612)))+(((IkReal(-1.00000000000000))*(x6607)*(x6617)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6605)))+(((r11)*(x6619)))+(((cj4)*(r02)*(x6607)))+(((IkReal(-1.00000000000000))*(r12)*(x6609)*(x6615)))+(((IkReal(-1.00000000000000))*(r01)*(x6620)))+(((IkReal(-1.00000000000000))*(x6609)*(x6612)*(x6617)))+(((IkReal(-1.00000000000000))*(x6609)*(x6612)*(x6616)))+(((IkReal(-1.00000000000000))*(x6618)*(x6621)))+(((cj4)*(x6608)*(x6614)))+(((cj4)*(cj5)*(r01)*(x6610)))+(((x6610)*(x6611)))); +evalcond[3]=((x6606)+(((IkReal(-1.00000000000000))*(r02)*(x6609)*(x6615)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x6609)*(x6610)))+(((IkReal(-1.00000000000000))*(x6609)*(x6614)*(x6617)))+(((IkReal(-1.00000000000000))*(x6608)*(x6609)*(x6612)))+(((IkReal(-1.00000000000000))*(x6610)*(x6618)))+(((r01)*(x6619)))+(((IkReal(-1.00000000000000))*(x6609)*(x6612)*(x6613)))+(((IkReal(-1.00000000000000))*(x6611)*(x6621)))+(((r11)*(x6620)))+(((IkReal(-1.00000000000000))*(r12)*(x6607)*(x6609)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6622=((sj0)*(sj5)); +IkReal x6623=((r00)*(sj6)); +IkReal x6624=((IkReal(1.00000000000000))*(cj5)); +IkReal x6625=((cj6)*(r11)); +IkReal x6626=((cj6)*(r01)); +IkReal x6627=((cj0)*(sj5)); +IkReal x6628=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x6622)*(x6623)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6624)))+(((IkReal(-1.00000000000000))*(x6625)*(x6627)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x6627)*(x6628)))+(((x6622)*(x6626))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6624)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6624)))+(((x6623)*(x6627)))+(((x6622)*(x6625)))+(((x6622)*(x6628)))+(((x6626)*(x6627))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x6622)*(x6623)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6624)))+(((IkReal(-1.00000000000000))*(x6625)*(x6627)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x6627)*(x6628)))+(((x6622)*(x6626)))))))+IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6624)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6624)))+(((x6623)*(x6627)))+(((x6622)*(x6625)))+(((x6622)*(x6628)))+(((x6626)*(x6627)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x6622)*(x6623)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6624)))+(((IkReal(-1.00000000000000))*(x6625)*(x6627)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x6627)*(x6628)))+(((x6622)*(x6626)))))), ((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6624)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6624)))+(((x6623)*(x6627)))+(((x6622)*(x6625)))+(((x6622)*(x6628)))+(((x6626)*(x6627))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6629=IKsin(j3); +IkReal x6630=IKcos(j3); +IkReal x6631=((sj0)*(sj5)); +IkReal x6632=((r00)*(sj6)); +IkReal x6633=((IkReal(1.00000000000000))*(cj4)); +IkReal x6634=((cj6)*(r01)); +IkReal x6635=((cj0)*(cj5)); +IkReal x6636=((cj5)*(sj0)); +IkReal x6637=((cj6)*(r11)); +IkReal x6638=((cj6)*(sj4)); +IkReal x6639=((cj0)*(sj5)); +IkReal x6640=((cj4)*(cj5)); +IkReal x6641=((cj6)*(r21)); +IkReal x6642=((r20)*(sj6)); +IkReal x6643=((r10)*(sj6)); +IkReal x6644=((IkReal(1.00000000000000))*(cj0)); +IkReal x6645=((cj0)*(sj4)*(sj6)); +IkReal x6646=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6641)))+(((sj5)*(x6642)))+(((cj2)*(x6629)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x6640)*(x6642)))+(((IkReal(-1.00000000000000))*(cj2)*(x6630)))+(((r20)*(x6638)))+(((cj4)*(r22)*(sj5)))+(((x6640)*(x6641)))); +evalcond[2]=((((x6631)*(x6632)))+(((r12)*(x6635)))+(((x6631)*(x6634)))+(((IkReal(-1.00000000000000))*(r02)*(x6636)))+(((IkReal(-1.00000000000000))*(x6639)*(x6643)))+(((IkReal(-1.00000000000000))*(sj2)*(x6629)))+(((IkReal(-1.00000000000000))*(x6637)*(x6639)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6631)*(x6643)))+(x6630)+(((r02)*(x6635)))+(((r12)*(x6636)))+(((IkReal(-1.00000000000000))*(x6634)*(x6639)))+(((IkReal(-1.00000000000000))*(x6631)*(x6637)))+(((IkReal(-1.00000000000000))*(x6632)*(x6639)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x6638)*(x6644)))+(((cj4)*(r02)*(x6631)))+(((sj2)*(x6630)))+(((cj4)*(x6632)*(x6636)))+(((IkReal(-1.00000000000000))*(x6633)*(x6635)*(x6643)))+(((IkReal(-1.00000000000000))*(r12)*(x6633)*(x6639)))+(((r11)*(x6645)))+(((IkReal(-1.00000000000000))*(r01)*(x6646)))+(((cj4)*(x6634)*(x6636)))+(((r00)*(sj0)*(x6638)))+(((IkReal(-1.00000000000000))*(x6633)*(x6635)*(x6637)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6632)*(x6633)*(x6635)))+(((IkReal(-1.00000000000000))*(r12)*(x6631)*(x6633)))+(((r11)*(x6646)))+(x6629)+(((IkReal(-1.00000000000000))*(x6633)*(x6636)*(x6643)))+(((IkReal(-1.00000000000000))*(r00)*(x6638)*(x6644)))+(((IkReal(-1.00000000000000))*(x6633)*(x6634)*(x6635)))+(((IkReal(-1.00000000000000))*(x6633)*(x6636)*(x6637)))+(((IkReal(-1.00000000000000))*(r02)*(x6633)*(x6639)))+(((r01)*(x6645)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6638)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6647=((cj6)*(sj5)); +IkReal x6648=((IkReal(1.00000000000000))*(cj5)); +IkReal x6649=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x6649)))+(((IkReal(-1.00000000000000))*(r21)*(x6647)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(r00)*(x6649)))+(((r10)*(sj0)*(x6649)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6648)))+(((cj0)*(r01)*(x6647)))+(((r11)*(sj0)*(x6647)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6648))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x6649)))+(((IkReal(-1.00000000000000))*(r21)*(x6647)))+(((cj5)*(r22)))))))+IKsqr(((((cj0)*(r00)*(x6649)))+(((r10)*(sj0)*(x6649)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6648)))+(((cj0)*(r01)*(x6647)))+(((r11)*(sj0)*(x6647)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6648)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x6649)))+(((IkReal(-1.00000000000000))*(r21)*(x6647)))+(((cj5)*(r22)))))), ((((cj0)*(r00)*(x6649)))+(((r10)*(sj0)*(x6649)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6648)))+(((cj0)*(r01)*(x6647)))+(((r11)*(sj0)*(x6647)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6648))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6650=IKsin(j3); +IkReal x6651=IKcos(j3); +IkReal x6652=((sj0)*(sj5)); +IkReal x6653=((r00)*(sj6)); +IkReal x6654=((IkReal(1.00000000000000))*(cj4)); +IkReal x6655=((cj6)*(r01)); +IkReal x6656=((cj0)*(cj5)); +IkReal x6657=((cj5)*(sj0)); +IkReal x6658=((cj6)*(r11)); +IkReal x6659=((cj6)*(sj4)); +IkReal x6660=((cj0)*(sj5)); +IkReal x6661=((cj4)*(cj5)); +IkReal x6662=((cj6)*(r21)); +IkReal x6663=((r20)*(sj6)); +IkReal x6664=((r10)*(sj6)); +IkReal x6665=((IkReal(1.00000000000000))*(cj0)); +IkReal x6666=((cj0)*(sj4)*(sj6)); +IkReal x6667=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x6663)))+(((sj5)*(x6662)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x6650)))); +evalcond[1]=((((r20)*(x6659)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj2)*(x6651)))+(((cj4)*(r22)*(sj5)))+(((x6661)*(x6662)))+(((x6661)*(x6663)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x6657)))+(((IkReal(-1.00000000000000))*(x6658)*(x6660)))+(((IkReal(-1.00000000000000))*(x6660)*(x6664)))+(((x6652)*(x6655)))+(((r12)*(x6656)))+(((IkReal(-1.00000000000000))*(sj2)*(x6650)))+(((x6652)*(x6653)))); +evalcond[3]=((((r12)*(x6657)))+(((IkReal(-1.00000000000000))*(x6653)*(x6660)))+(((IkReal(-1.00000000000000))*(x6655)*(x6660)))+(((r02)*(x6656)))+(x6651)+(((IkReal(-1.00000000000000))*(x6652)*(x6664)))+(((IkReal(-1.00000000000000))*(x6652)*(x6658)))); +evalcond[4]=((((r11)*(x6666)))+(((IkReal(-1.00000000000000))*(r10)*(x6659)*(x6665)))+(((r00)*(sj0)*(x6659)))+(((cj4)*(x6653)*(x6657)))+(((IkReal(-1.00000000000000))*(x6654)*(x6656)*(x6658)))+(((cj4)*(r02)*(x6652)))+(((IkReal(-1.00000000000000))*(r12)*(x6654)*(x6660)))+(((sj2)*(x6651)))+(((IkReal(-1.00000000000000))*(r01)*(x6667)))+(((cj4)*(x6655)*(x6657)))+(((IkReal(-1.00000000000000))*(x6654)*(x6656)*(x6664)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6654)*(x6657)*(x6664)))+(((IkReal(-1.00000000000000))*(x6653)*(x6654)*(x6656)))+(((IkReal(-1.00000000000000))*(r02)*(x6654)*(x6660)))+(((IkReal(-1.00000000000000))*(x6654)*(x6655)*(x6656)))+(((IkReal(-1.00000000000000))*(r12)*(x6652)*(x6654)))+(((IkReal(-1.00000000000000))*(r00)*(x6659)*(x6665)))+(x6650)+(((r11)*(x6667)))+(((r01)*(x6666)))+(((IkReal(-1.00000000000000))*(x6654)*(x6657)*(x6658)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6659)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6668=((IkReal(1.00000000000000))*(r21)); +IkReal x6669=((cj4)*(cj5)); +IkReal x6670=((r20)*(sj6)); +if( IKabs(((gconst10)*(((((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6668)))+(((IkReal(-1.00000000000000))*(sj5)*(x6670))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst10)*(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6668)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x6669)))+(((x6669)*(x6670))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst10)*(((((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6668)))+(((IkReal(-1.00000000000000))*(sj5)*(x6670)))))), ((gconst10)*(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6668)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x6669)))+(((x6669)*(x6670))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6671=IKsin(j3); +IkReal x6672=IKcos(j3); +IkReal x6673=((sj0)*(sj5)); +IkReal x6674=((r00)*(sj6)); +IkReal x6675=((IkReal(1.00000000000000))*(cj4)); +IkReal x6676=((cj6)*(r01)); +IkReal x6677=((cj0)*(cj5)); +IkReal x6678=((cj5)*(sj0)); +IkReal x6679=((cj6)*(r11)); +IkReal x6680=((cj6)*(sj4)); +IkReal x6681=((cj0)*(sj5)); +IkReal x6682=((cj4)*(cj5)); +IkReal x6683=((cj6)*(r21)); +IkReal x6684=((r20)*(sj6)); +IkReal x6685=((r10)*(sj6)); +IkReal x6686=((IkReal(1.00000000000000))*(cj0)); +IkReal x6687=((cj0)*(sj4)*(sj6)); +IkReal x6688=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x6684)))+(((sj5)*(x6683)))+(((cj2)*(x6671)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((x6682)*(x6683)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x6682)*(x6684)))+(((r20)*(x6680)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj2)*(x6672)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x6671)))+(((IkReal(-1.00000000000000))*(x6681)*(x6685)))+(((r12)*(x6677)))+(((x6673)*(x6676)))+(((IkReal(-1.00000000000000))*(r02)*(x6678)))+(((x6673)*(x6674)))+(((IkReal(-1.00000000000000))*(x6679)*(x6681)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6673)*(x6679)))+(((IkReal(-1.00000000000000))*(x6673)*(x6685)))+(((r12)*(x6678)))+(((IkReal(-1.00000000000000))*(x6674)*(x6681)))+(((IkReal(-1.00000000000000))*(x6676)*(x6681)))+(x6672)+(((r02)*(x6677)))); +evalcond[4]=((((r00)*(sj0)*(x6680)))+(((IkReal(-1.00000000000000))*(r01)*(x6688)))+(((sj2)*(x6672)))+(((IkReal(-1.00000000000000))*(r10)*(x6680)*(x6686)))+(((cj4)*(x6674)*(x6678)))+(((IkReal(-1.00000000000000))*(r12)*(x6675)*(x6681)))+(((IkReal(-1.00000000000000))*(x6675)*(x6677)*(x6679)))+(((cj4)*(x6676)*(x6678)))+(((cj4)*(r02)*(x6673)))+(((IkReal(-1.00000000000000))*(x6675)*(x6677)*(x6685)))+(((r11)*(x6687)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6675)*(x6678)*(x6679)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6680)))+(((IkReal(-1.00000000000000))*(x6675)*(x6676)*(x6677)))+(((r11)*(x6688)))+(((IkReal(-1.00000000000000))*(r00)*(x6680)*(x6686)))+(((IkReal(-1.00000000000000))*(x6674)*(x6675)*(x6677)))+(((IkReal(-1.00000000000000))*(r02)*(x6675)*(x6681)))+(x6671)+(((IkReal(-1.00000000000000))*(x6675)*(x6678)*(x6685)))+(((IkReal(-1.00000000000000))*(r12)*(x6673)*(x6675)))+(((r01)*(x6687)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x6689=((IkReal(1.00000000000000))*(cj0)); +IkReal x6690=((cj4)*(sj6)); +IkReal x6691=((sj0)*(sj4)); +IkReal x6692=((cj5)*(sj6)); +IkReal x6693=((sj4)*(sj5)); +IkReal x6694=((r12)*(sj5)); +IkReal x6695=((IkReal(0.374290000000000))*(cj5)); +IkReal x6696=((r02)*(sj0)); +IkReal x6697=((IkReal(1.00000000000000))*(sj0)); +IkReal x6698=((cj0)*(r10)); +IkReal x6699=((cj4)*(cj6)); +IkReal x6700=((r00)*(sj0)); +IkReal x6701=((cj6)*(r21)); +IkReal x6702=((IkReal(0.374290000000000))*(sj5)); +IkReal x6703=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6704=((cj0)*(r02)); +IkReal x6705=((cj5)*(sj4)); +IkReal x6706=((cj6)*(r01)); +IkReal x6707=((cj0)*(r00)); +IkReal x6708=((cj6)*(r11)); +IkReal x6709=((r01)*(sj0)); +IkReal x6710=((r10)*(sj0)); +IkReal x6711=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6712=((sj6)*(x6702)); +IkReal x6713=((cj0)*(cj6)*(x6702)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x6699)))+(((r21)*(x6690)))+(((r20)*(sj4)*(x6692)))+(((IkReal(-1.00000000000000))*(cj1)))+(((x6701)*(x6705)))+(((r22)*(x6693)))); +evalcond[2]=((((IkReal(-0.0100000000000000))*(r20)*(x6692)))+(((IkReal(0.364420000000000))*(sj1)))+(((r20)*(x6712)))+(((IkReal(-1.00000000000000))*(r22)*(x6703)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6701)))+(pz)+(((x6701)*(x6702)))+(((IkReal(-1.00000000000000))*(r22)*(x6695)))); +evalcond[3]=((((cj5)*(x6691)*(x6706)))+(((IkReal(-1.00000000000000))*(x6689)*(x6705)*(x6708)))+(((IkReal(-1.00000000000000))*(r11)*(x6689)*(x6690)))+(((r02)*(sj5)*(x6691)))+(((r00)*(x6691)*(x6692)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6689)*(x6692)))+(((IkReal(-1.00000000000000))*(r12)*(x6689)*(x6693)))+(((IkReal(-1.00000000000000))*(r00)*(x6697)*(x6699)))+(((x6690)*(x6709)))+(((x6698)*(x6699)))); +evalcond[4]=((((x6699)*(x6707)))+(((IkReal(-1.00000000000000))*(r01)*(x6689)*(x6690)))+(((IkReal(-1.00000000000000))*(cj5)*(x6691)*(x6708)))+(sj1)+(((IkReal(-1.00000000000000))*(x6691)*(x6694)))+(((IkReal(-1.00000000000000))*(x6689)*(x6705)*(x6706)))+(((x6699)*(x6710)))+(((IkReal(-1.00000000000000))*(r02)*(x6689)*(x6693)))+(((IkReal(-1.00000000000000))*(r11)*(x6690)*(x6697)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6689)*(x6692)))+(((IkReal(-1.00000000000000))*(r10)*(x6691)*(x6692)))); +evalcond[5]=((IkReal(0.0690000000000000))+(((x6700)*(x6712)))+(((IkReal(-1.00000000000000))*(x6698)*(x6712)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6708)))+(((IkReal(-1.00000000000000))*(py)*(x6689)))+(((IkReal(0.0100000000000000))*(cj0)*(x6694)))+(((cj0)*(r12)*(x6695)))+(((IkReal(0.0100000000000000))*(x6692)*(x6698)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6706)))+(((sj0)*(x6702)*(x6706)))+(((IkReal(-1.00000000000000))*(cj0)*(x6702)*(x6708)))+(((IkReal(-1.00000000000000))*(x6696)*(x6703)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x6695)*(x6696)))+(((IkReal(-0.0100000000000000))*(x6692)*(x6700)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r12)*(sj0)*(x6695)))+(((x6703)*(x6704)))+(((IkReal(-1.00000000000000))*(cj0)*(x6702)*(x6706)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6706)))+(((IkReal(-1.00000000000000))*(x6707)*(x6712)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6708)))+(((IkReal(0.0100000000000000))*(x6692)*(x6707)))+(((x6695)*(x6704)))+(((IkReal(0.0100000000000000))*(x6692)*(x6710)))+(((IkReal(-1.00000000000000))*(py)*(x6697)))+(((IkReal(-1.00000000000000))*(px)*(x6689)))+(((IkReal(0.0100000000000000))*(sj0)*(x6694)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(x6710)*(x6712)))+(((IkReal(-1.00000000000000))*(sj0)*(x6702)*(x6708)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst11; +gconst11=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x6714=((IkReal(1.00000000000000))*(cj0)); +IkReal x6715=((cj4)*(sj6)); +IkReal x6716=((sj0)*(sj6)); +IkReal x6717=((cj5)*(sj4)); +IkReal x6718=((IkReal(0.374290000000000))*(sj5)); +IkReal x6719=((sj4)*(sj5)); +IkReal x6720=((cj0)*(cj6)); +IkReal x6721=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6722=((cj4)*(sj5)); +IkReal x6723=((cj5)*(sj0)); +IkReal x6724=((IkReal(0.374290000000000))*(r02)); +IkReal x6725=((r20)*(sj6)); +IkReal x6726=((cj6)*(r21)); +IkReal x6727=((IkReal(1.00000000000000))*(sj0)); +IkReal x6728=((cj0)*(sj6)); +IkReal x6729=((cj4)*(cj6)); +IkReal x6730=((IkReal(0.374290000000000))*(r12)); +IkReal x6731=((cj0)*(cj5)); +IkReal x6732=((cj6)*(sj5)); +IkReal x6733=((cj6)*(r01)); +IkReal x6734=((r00)*(sj6)); +IkReal x6735=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6736=((cj6)*(r11)); +IkReal x6737=((IkReal(1.00000000000000))*(r10)); +IkReal x6738=((r02)*(sj0)); +IkReal x6739=((cj6)*(sj4)); +IkReal x6740=((r12)*(x6727)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x6717)*(x6726)))+(((r22)*(x6719)))+(((r21)*(x6715)))+(((x6717)*(x6725)))+(((IkReal(-1.00000000000000))*(r20)*(x6729)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x6718)*(x6725)))+(((x6718)*(x6726)))+(((IkReal(-1.00000000000000))*(x6721)*(x6726)))+(((IkReal(-1.00000000000000))*(r22)*(x6735)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x6721)*(x6725)))); +evalcond[3]=((((r02)*(x6731)))+(((IkReal(-1.00000000000000))*(r01)*(x6714)*(x6732)))+(((IkReal(-1.00000000000000))*(sj5)*(x6714)*(x6734)))+(((IkReal(-1.00000000000000))*(r11)*(x6727)*(x6732)))+(((IkReal(-1.00000000000000))*(sj5)*(x6716)*(x6737)))+(((r12)*(x6723)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x6714)*(x6717)*(x6736)))+(((IkReal(-1.00000000000000))*(r11)*(x6714)*(x6715)))+(((sj0)*(x6717)*(x6733)))+(((r00)*(x6716)*(x6717)))+(((cj4)*(r10)*(x6720)))+(((r01)*(sj0)*(x6715)))+(((x6719)*(x6738)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6714)*(x6717)))+(((IkReal(-1.00000000000000))*(r12)*(x6714)*(x6719)))+(((IkReal(-1.00000000000000))*(r00)*(x6727)*(x6729)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x6717)*(x6727)*(x6736)))+(((IkReal(-1.00000000000000))*(r11)*(x6715)*(x6727)))+(((IkReal(-1.00000000000000))*(r02)*(x6714)*(x6719)))+(((IkReal(-1.00000000000000))*(r01)*(x6714)*(x6715)))+(((IkReal(-1.00000000000000))*(x6716)*(x6717)*(x6737)))+(((IkReal(-1.00000000000000))*(x6714)*(x6717)*(x6734)))+(((IkReal(-1.00000000000000))*(x6714)*(x6717)*(x6733)))+(((r10)*(sj0)*(x6729)))+(((cj4)*(r00)*(x6720)))+(((IkReal(-1.00000000000000))*(x6719)*(x6740)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((sj0)*(x6718)*(x6733)))+(((x6730)*(x6731)))+(((IkReal(-1.00000000000000))*(r11)*(x6718)*(x6720)))+(((IkReal(-1.00000000000000))*(py)*(x6714)))+(((r10)*(x6721)*(x6728)))+(((r11)*(x6720)*(x6721)))+(((IkReal(-1.00000000000000))*(x6723)*(x6724)))+(((IkReal(-1.00000000000000))*(sj0)*(x6721)*(x6733)))+(((IkReal(-1.00000000000000))*(r00)*(x6716)*(x6721)))+(((r00)*(x6716)*(x6718)))+(((cj0)*(r12)*(x6735)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x6735)*(x6738)))+(((IkReal(-1.00000000000000))*(r10)*(x6718)*(x6728)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x6715)*(x6723)*(x6737)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x6714)*(x6715)))+(((IkReal(-1.00000000000000))*(r02)*(x6714)*(x6722)))+(((IkReal(-1.00000000000000))*(x6722)*(x6740)))+(((r01)*(sj4)*(x6728)))+(((IkReal(-1.00000000000000))*(r10)*(x6727)*(x6739)))+(((r11)*(sj4)*(x6716)))+(((IkReal(-1.00000000000000))*(r11)*(x6723)*(x6729)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x6714)*(x6729)))+(((IkReal(-1.00000000000000))*(r00)*(x6714)*(x6739)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r00)*(x6721)*(x6728)))+(((IkReal(-1.00000000000000))*(r00)*(x6718)*(x6728)))+(((cj0)*(r02)*(x6735)))+(((IkReal(-1.00000000000000))*(py)*(x6727)))+(((x6723)*(x6730)))+(((IkReal(-1.00000000000000))*(px)*(x6714)))+(((r12)*(sj0)*(x6735)))+(((IkReal(-1.00000000000000))*(r10)*(x6716)*(x6718)))+(((r01)*(x6720)*(x6721)))+(((IkReal(-1.00000000000000))*(sj0)*(x6718)*(x6736)))+(((sj0)*(x6721)*(x6736)))+(((r10)*(x6716)*(x6721)))+(((IkReal(-1.00000000000000))*(r01)*(x6718)*(x6720)))+(((x6724)*(x6731)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6741=((r20)*(sj6)); +IkReal x6742=((cj4)*(cj5)); +IkReal x6743=((cj6)*(r21)); +if( IKabs(((((x6742)*(x6743)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6741)*(x6742))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6741)))+(((sj5)*(x6743))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x6742)*(x6743)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6741)*(x6742)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6741)))+(((sj5)*(x6743)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x6742)*(x6743)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6741)*(x6742)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6741)))+(((sj5)*(x6743))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6744=IKcos(j3); +IkReal x6745=((sj0)*(sj5)); +IkReal x6746=((r00)*(sj6)); +IkReal x6747=((cj6)*(r01)); +IkReal x6748=((cj5)*(sj0)); +IkReal x6749=((cj0)*(cj5)); +IkReal x6750=((cj6)*(sj4)); +IkReal x6751=((sj4)*(sj6)); +IkReal x6752=((cj0)*(r11)); +IkReal x6753=((cj4)*(cj6)); +IkReal x6754=((cj4)*(sj6)); +IkReal x6755=((IkReal(1.00000000000000))*(cj0)); +IkReal x6756=((cj4)*(sj5)); +IkReal x6757=((sj5)*(sj6)); +IkReal x6758=((cj6)*(sj5)); +IkReal x6759=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r21)*(x6758)))+(((IkReal(-1.00000000000000))*(x6744)))+(((r20)*(x6757)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((cj5)*(r20)*(x6754)))+(((r22)*(x6756)))+(((cj5)*(r21)*(x6753)))+(((IkReal(-1.00000000000000))*(r21)*(x6751)))+(((r20)*(x6750)))+(((IkReal(-1.00000000000000))*(x6759)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x6755)*(x6757)))+(((IkReal(-1.00000000000000))*(r02)*(x6748)))+(((r12)*(x6749)))+(((x6745)*(x6747)))+(((IkReal(-1.00000000000000))*(x6759)))+(((x6745)*(x6746)))+(((IkReal(-1.00000000000000))*(x6752)*(x6758)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x6755)*(x6756)))+(((IkReal(-1.00000000000000))*(r10)*(x6750)*(x6755)))+(((cj4)*(x6747)*(x6748)))+(((IkReal(-1.00000000000000))*(r10)*(x6749)*(x6754)))+(((cj4)*(r02)*(x6745)))+(((r00)*(sj0)*(x6750)))+(((IkReal(-1.00000000000000))*(r11)*(x6749)*(x6753)))+(((cj4)*(x6746)*(x6748)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x6751)))+(x6744)+(((x6751)*(x6752)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6760=((IkReal(1.00000000000000))*(cj0)); +IkReal x6761=((cj4)*(sj6)); +IkReal x6762=((sj0)*(sj6)); +IkReal x6763=((cj5)*(sj4)); +IkReal x6764=((IkReal(0.374290000000000))*(sj5)); +IkReal x6765=((sj4)*(sj5)); +IkReal x6766=((cj0)*(cj6)); +IkReal x6767=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6768=((cj4)*(sj5)); +IkReal x6769=((cj5)*(sj0)); +IkReal x6770=((IkReal(0.374290000000000))*(r02)); +IkReal x6771=((r20)*(sj6)); +IkReal x6772=((cj6)*(r21)); +IkReal x6773=((IkReal(1.00000000000000))*(sj0)); +IkReal x6774=((cj0)*(sj6)); +IkReal x6775=((cj4)*(cj6)); +IkReal x6776=((IkReal(0.374290000000000))*(r12)); +IkReal x6777=((cj0)*(cj5)); +IkReal x6778=((cj6)*(sj5)); +IkReal x6779=((cj6)*(r01)); +IkReal x6780=((r00)*(sj6)); +IkReal x6781=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6782=((cj6)*(r11)); +IkReal x6783=((IkReal(1.00000000000000))*(r10)); +IkReal x6784=((r02)*(sj0)); +IkReal x6785=((cj6)*(sj4)); +IkReal x6786=((r12)*(x6773)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x6765)))+(((x6763)*(x6772)))+(((r21)*(x6761)))+(((x6763)*(x6771)))+(((IkReal(-1.00000000000000))*(r20)*(x6775)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x6767)*(x6772)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x6781)))+(((x6764)*(x6771)))+(((x6764)*(x6772)))+(pz)+(((IkReal(-1.00000000000000))*(x6767)*(x6771)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x6773)*(x6778)))+(((r02)*(x6777)))+(((IkReal(-1.00000000000000))*(sj5)*(x6762)*(x6783)))+(((IkReal(-1.00000000000000))*(r01)*(x6760)*(x6778)))+(((r12)*(x6769)))+(((IkReal(-1.00000000000000))*(sj5)*(x6760)*(x6780)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r00)*(x6773)*(x6775)))+(((IkReal(-1.00000000000000))*(r12)*(x6760)*(x6765)))+(((cj4)*(r10)*(x6766)))+(((r00)*(x6762)*(x6763)))+(((sj0)*(x6763)*(x6779)))+(((r01)*(sj0)*(x6761)))+(((x6765)*(x6784)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6760)*(x6763)))+(((IkReal(-1.00000000000000))*(x6760)*(x6763)*(x6782)))+(((IkReal(-1.00000000000000))*(r11)*(x6760)*(x6761)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x6760)*(x6763)*(x6780)))+(((IkReal(-1.00000000000000))*(r02)*(x6760)*(x6765)))+(((r10)*(sj0)*(x6775)))+(((IkReal(-1.00000000000000))*(x6760)*(x6763)*(x6779)))+(((IkReal(-1.00000000000000))*(x6762)*(x6763)*(x6783)))+(((IkReal(-1.00000000000000))*(r11)*(x6761)*(x6773)))+(((IkReal(-1.00000000000000))*(x6763)*(x6773)*(x6782)))+(((IkReal(-1.00000000000000))*(x6765)*(x6786)))+(((cj4)*(r00)*(x6766)))+(((IkReal(-1.00000000000000))*(r01)*(x6760)*(x6761)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r10)*(x6767)*(x6774)))+(((IkReal(-1.00000000000000))*(r11)*(x6764)*(x6766)))+(((IkReal(-1.00000000000000))*(x6769)*(x6770)))+(((r11)*(x6766)*(x6767)))+(((cj0)*(r12)*(x6781)))+(((IkReal(-1.00000000000000))*(r00)*(x6762)*(x6767)))+(((r00)*(x6762)*(x6764)))+(((IkReal(-1.00000000000000))*(r10)*(x6764)*(x6774)))+(((IkReal(-1.00000000000000))*(x6781)*(x6784)))+(((sj0)*(x6764)*(x6779)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x6767)*(x6779)))+(((IkReal(-1.00000000000000))*(py)*(x6760)))+(((x6776)*(x6777)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x6760)*(x6785)))+(((IkReal(-1.00000000000000))*(r10)*(x6773)*(x6785)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x6760)*(x6761)))+(((IkReal(-1.00000000000000))*(r02)*(x6760)*(x6768)))+(((IkReal(-1.00000000000000))*(r11)*(x6769)*(x6775)))+(((IkReal(-1.00000000000000))*(x6761)*(x6769)*(x6783)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x6760)*(x6775)))+(((IkReal(-1.00000000000000))*(x6768)*(x6786)))+(((r01)*(sj4)*(x6774)))+(((r11)*(sj4)*(x6762)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r00)*(x6767)*(x6774)))+(((x6770)*(x6777)))+(((IkReal(-1.00000000000000))*(py)*(x6773)))+(((IkReal(-1.00000000000000))*(r10)*(x6762)*(x6764)))+(((r01)*(x6766)*(x6767)))+(((cj0)*(r02)*(x6781)))+(((IkReal(-1.00000000000000))*(r01)*(x6764)*(x6766)))+(((x6769)*(x6776)))+(((IkReal(-1.00000000000000))*(px)*(x6760)))+(((sj0)*(x6767)*(x6782)))+(((r10)*(x6762)*(x6767)))+(((IkReal(-1.00000000000000))*(r00)*(x6764)*(x6774)))+(((IkReal(-1.00000000000000))*(sj0)*(x6764)*(x6782)))+(((r12)*(sj0)*(x6781)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6787=((IkReal(1.00000000000000))*(sj5)); +IkReal x6788=((cj6)*(r21)); +IkReal x6789=((r20)*(sj6)); +IkReal x6790=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x6788)*(x6790)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6787)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x6789)*(x6790)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x6787)*(x6788)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x6787)*(x6789))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x6788)*(x6790)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6787)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x6789)*(x6790)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x6787)*(x6788)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x6787)*(x6789)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x6788)*(x6790)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6787)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x6789)*(x6790)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x6787)*(x6788)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x6787)*(x6789))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6791=IKsin(j3); +IkReal x6792=IKcos(j3); +IkReal x6793=((sj0)*(sj5)); +IkReal x6794=((r00)*(sj6)); +IkReal x6795=((cj6)*(r01)); +IkReal x6796=((cj5)*(sj0)); +IkReal x6797=((cj0)*(cj5)); +IkReal x6798=((cj6)*(sj4)); +IkReal x6799=((sj4)*(sj6)); +IkReal x6800=((cj0)*(r11)); +IkReal x6801=((cj4)*(cj6)); +IkReal x6802=((cj4)*(sj6)); +IkReal x6803=((IkReal(1.00000000000000))*(cj0)); +IkReal x6804=((cj4)*(sj5)); +IkReal x6805=((sj5)*(sj6)); +IkReal x6806=((cj6)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x6792)+(((r21)*(x6806)))+(((r20)*(x6805)))); +evalcond[1]=((((cj5)*(r21)*(x6801)))+(((IkReal(-1.00000000000000))*(r21)*(x6799)))+(((r20)*(x6798)))+(((cj5)*(r20)*(x6802)))+(((r22)*(x6804)))+(x6791)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6791)))+(((r12)*(x6797)))+(((x6793)*(x6794)))+(((IkReal(-1.00000000000000))*(x6800)*(x6806)))+(((IkReal(-1.00000000000000))*(r02)*(x6796)))+(((x6793)*(x6795)))+(((IkReal(-1.00000000000000))*(r10)*(x6803)*(x6805)))); +evalcond[3]=((((cj4)*(x6794)*(x6796)))+(((IkReal(-1.00000000000000))*(r10)*(x6797)*(x6802)))+(((cj4)*(x6795)*(x6796)))+(((x6799)*(x6800)))+(((IkReal(-1.00000000000000))*(r12)*(x6803)*(x6804)))+(((r00)*(sj0)*(x6798)))+(((cj4)*(r02)*(x6793)))+(x6792)+(((IkReal(-1.00000000000000))*(r11)*(x6797)*(x6801)))+(((IkReal(-1.00000000000000))*(r10)*(x6798)*(x6803)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x6799)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6807=((cj0)*(cj5)); +IkReal x6808=((IkReal(1.00000000000000))*(cj0)); +IkReal x6809=((cj6)*(r11)); +IkReal x6810=((r10)*(sj6)); +IkReal x6811=((cj5)*(sj0)); +IkReal x6812=((r00)*(sj5)*(sj6)); +IkReal x6813=((cj6)*(r01)*(sj5)); +IkReal x6814=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x6813)))+(((sj0)*(x6812)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6810)))+(((r12)*(x6807)))+(((IkReal(-1.00000000000000))*(r02)*(x6811)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6809))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x6810)*(x6814)))+(((IkReal(-1.00000000000000))*(x6808)*(x6813)))+(((IkReal(-1.00000000000000))*(x6809)*(x6814)))+(((r12)*(x6811)))+(((IkReal(-1.00000000000000))*(x6808)*(x6812)))+(((r02)*(x6807))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x6813)))+(((sj0)*(x6812)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6810)))+(((r12)*(x6807)))+(((IkReal(-1.00000000000000))*(r02)*(x6811)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6809)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x6810)*(x6814)))+(((IkReal(-1.00000000000000))*(x6808)*(x6813)))+(((IkReal(-1.00000000000000))*(x6809)*(x6814)))+(((r12)*(x6811)))+(((IkReal(-1.00000000000000))*(x6808)*(x6812)))+(((r02)*(x6807)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x6813)))+(((sj0)*(x6812)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6810)))+(((r12)*(x6807)))+(((IkReal(-1.00000000000000))*(r02)*(x6811)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6809)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x6810)*(x6814)))+(((IkReal(-1.00000000000000))*(x6808)*(x6813)))+(((IkReal(-1.00000000000000))*(x6809)*(x6814)))+(((r12)*(x6811)))+(((IkReal(-1.00000000000000))*(x6808)*(x6812)))+(((r02)*(x6807))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6815=IKsin(j3); +IkReal x6816=IKcos(j3); +IkReal x6817=((sj0)*(sj5)); +IkReal x6818=((r00)*(sj6)); +IkReal x6819=((cj6)*(r01)); +IkReal x6820=((cj4)*(cj5)); +IkReal x6821=((IkReal(1.00000000000000))*(cj0)); +IkReal x6822=((cj5)*(r12)); +IkReal x6823=((IkReal(1.00000000000000))*(sj0)); +IkReal x6824=((cj6)*(r11)); +IkReal x6825=((cj5)*(r02)); +IkReal x6826=((IkReal(1.00000000000000))*(cj1)); +IkReal x6827=((cj6)*(sj4)); +IkReal x6828=((cj6)*(r21)); +IkReal x6829=((r20)*(sj6)); +IkReal x6830=((r10)*(sj6)); +IkReal x6831=((sj4)*(sj6)); +IkReal x6832=((cj4)*(r02)); +IkReal x6833=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x6834=((IkReal(1.00000000000000))*(x6815)); +IkReal x6835=((cj0)*(x6831)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x6816)))+(((sj5)*(x6829)))+(((sj5)*(x6828)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x6834)))+(((r20)*(x6827)))+(((x6820)*(x6829)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x6831)))+(((x6820)*(x6828)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x6821)*(x6824)))+(((cj0)*(x6822)))+(((IkReal(-1.00000000000000))*(sj5)*(x6821)*(x6830)))+(((x6817)*(x6819)))+(((IkReal(-1.00000000000000))*(x6834)))+(((x6817)*(x6818)))+(((IkReal(-1.00000000000000))*(x6823)*(x6825)))); +evalcond[3]=((((sj0)*(x6822)))+(((IkReal(-1.00000000000000))*(x6817)*(x6830)))+(((IkReal(-1.00000000000000))*(sj5)*(x6818)*(x6821)))+(((cj0)*(x6825)))+(((IkReal(-1.00000000000000))*(x6817)*(x6824)))+(((IkReal(-1.00000000000000))*(sj5)*(x6819)*(x6821)))+(((IkReal(-1.00000000000000))*(x6816)*(x6826)))); +evalcond[4]=((((x6817)*(x6832)))+(((IkReal(-1.00000000000000))*(x6820)*(x6821)*(x6830)))+(((sj0)*(x6819)*(x6820)))+(((IkReal(-1.00000000000000))*(r01)*(x6823)*(x6831)))+(((IkReal(-1.00000000000000))*(x6820)*(x6821)*(x6824)))+(((r00)*(sj0)*(x6827)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x6821)))+(((r11)*(x6835)))+(((sj0)*(x6818)*(x6820)))+(((IkReal(-1.00000000000000))*(r10)*(x6821)*(x6827)))+(x6816)); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x6823)*(x6827)))+(((IkReal(-1.00000000000000))*(x6819)*(x6820)*(x6821)))+(((IkReal(-1.00000000000000))*(sj5)*(x6821)*(x6832)))+(((IkReal(-1.00000000000000))*(x6817)*(x6833)))+(((IkReal(-1.00000000000000))*(x6820)*(x6823)*(x6824)))+(((IkReal(-1.00000000000000))*(x6818)*(x6820)*(x6821)))+(((IkReal(-1.00000000000000))*(x6815)*(x6826)))+(((r11)*(sj0)*(x6831)))+(((IkReal(-1.00000000000000))*(r00)*(x6821)*(x6827)))+(((r01)*(x6835)))+(((IkReal(-1.00000000000000))*(x6820)*(x6823)*(x6830)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6836=((sj5)*(sj6)); +IkReal x6837=((cj6)*(sj5)); +IkReal x6838=((IkReal(1.00000000000000))*(cj0)); +IkReal x6839=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r01)*(sj0)*(x6837)))+(((IkReal(-1.00000000000000))*(r11)*(x6837)*(x6838)))+(((r00)*(sj0)*(x6836)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6839)))+(((IkReal(-1.00000000000000))*(r10)*(x6836)*(x6838))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x6839)))+(((r21)*(x6837)))+(((r20)*(x6836))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r01)*(sj0)*(x6837)))+(((IkReal(-1.00000000000000))*(r11)*(x6837)*(x6838)))+(((r00)*(sj0)*(x6836)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6839)))+(((IkReal(-1.00000000000000))*(r10)*(x6836)*(x6838)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x6839)))+(((r21)*(x6837)))+(((r20)*(x6836)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r01)*(sj0)*(x6837)))+(((IkReal(-1.00000000000000))*(r11)*(x6837)*(x6838)))+(((r00)*(sj0)*(x6836)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6839)))+(((IkReal(-1.00000000000000))*(r10)*(x6836)*(x6838)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x6839)))+(((r21)*(x6837)))+(((r20)*(x6836))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6840=IKsin(j3); +IkReal x6841=IKcos(j3); +IkReal x6842=((sj0)*(sj5)); +IkReal x6843=((r00)*(sj6)); +IkReal x6844=((cj6)*(r01)); +IkReal x6845=((cj4)*(cj5)); +IkReal x6846=((IkReal(1.00000000000000))*(cj0)); +IkReal x6847=((cj5)*(r12)); +IkReal x6848=((IkReal(1.00000000000000))*(sj0)); +IkReal x6849=((cj6)*(r11)); +IkReal x6850=((cj5)*(r02)); +IkReal x6851=((IkReal(1.00000000000000))*(cj1)); +IkReal x6852=((cj6)*(sj4)); +IkReal x6853=((cj6)*(r21)); +IkReal x6854=((r20)*(sj6)); +IkReal x6855=((r10)*(sj6)); +IkReal x6856=((sj4)*(sj6)); +IkReal x6857=((cj4)*(r02)); +IkReal x6858=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x6859=((IkReal(1.00000000000000))*(x6840)); +IkReal x6860=((cj0)*(x6856)); +evalcond[0]=((((sj5)*(x6853)))+(((sj5)*(x6854)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x6841)))); +evalcond[1]=((((x6845)*(x6853)))+(((IkReal(-1.00000000000000))*(sj1)*(x6859)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x6852)))+(((IkReal(-1.00000000000000))*(r21)*(x6856)))+(((x6845)*(x6854)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6848)*(x6850)))+(((x6842)*(x6844)))+(((IkReal(-1.00000000000000))*(sj5)*(x6846)*(x6849)))+(((x6842)*(x6843)))+(((IkReal(-1.00000000000000))*(sj5)*(x6846)*(x6855)))+(((IkReal(-1.00000000000000))*(x6859)))+(((cj0)*(x6847)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6842)*(x6849)))+(((IkReal(-1.00000000000000))*(sj5)*(x6843)*(x6846)))+(((IkReal(-1.00000000000000))*(x6841)*(x6851)))+(((IkReal(-1.00000000000000))*(x6842)*(x6855)))+(((cj0)*(x6850)))+(((IkReal(-1.00000000000000))*(sj5)*(x6844)*(x6846)))+(((sj0)*(x6847)))); +evalcond[4]=((((r11)*(x6860)))+(((r00)*(sj0)*(x6852)))+(((x6842)*(x6857)))+(x6841)+(((IkReal(-1.00000000000000))*(r10)*(x6846)*(x6852)))+(((IkReal(-1.00000000000000))*(r01)*(x6848)*(x6856)))+(((IkReal(-1.00000000000000))*(x6845)*(x6846)*(x6855)))+(((IkReal(-1.00000000000000))*(x6845)*(x6846)*(x6849)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x6846)))+(((sj0)*(x6843)*(x6845)))+(((sj0)*(x6844)*(x6845)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6842)*(x6858)))+(((IkReal(-1.00000000000000))*(x6840)*(x6851)))+(((IkReal(-1.00000000000000))*(x6844)*(x6845)*(x6846)))+(((r01)*(x6860)))+(((IkReal(-1.00000000000000))*(x6845)*(x6848)*(x6849)))+(((IkReal(-1.00000000000000))*(x6845)*(x6848)*(x6855)))+(((IkReal(-1.00000000000000))*(sj5)*(x6846)*(x6857)))+(((IkReal(-1.00000000000000))*(r10)*(x6848)*(x6852)))+(((r11)*(sj0)*(x6856)))+(((IkReal(-1.00000000000000))*(r00)*(x6846)*(x6852)))+(((IkReal(-1.00000000000000))*(x6843)*(x6845)*(x6846)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6861=((r20)*(sj6)); +IkReal x6862=((cj4)*(cj5)); +IkReal x6863=((cj6)*(r21)); +if( IKabs(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6861)*(x6862)))+(((x6862)*(x6863))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst11)*(((((sj5)*(x6863)))+(((sj5)*(x6861)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6861)*(x6862)))+(((x6862)*(x6863)))))), ((gconst11)*(((((sj5)*(x6863)))+(((sj5)*(x6861)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6864=IKsin(j3); +IkReal x6865=IKcos(j3); +IkReal x6866=((sj0)*(sj5)); +IkReal x6867=((r00)*(sj6)); +IkReal x6868=((cj6)*(r01)); +IkReal x6869=((cj4)*(cj5)); +IkReal x6870=((IkReal(1.00000000000000))*(cj0)); +IkReal x6871=((cj5)*(r12)); +IkReal x6872=((IkReal(1.00000000000000))*(sj0)); +IkReal x6873=((cj6)*(r11)); +IkReal x6874=((cj5)*(r02)); +IkReal x6875=((IkReal(1.00000000000000))*(cj1)); +IkReal x6876=((cj6)*(sj4)); +IkReal x6877=((cj6)*(r21)); +IkReal x6878=((r20)*(sj6)); +IkReal x6879=((r10)*(sj6)); +IkReal x6880=((sj4)*(sj6)); +IkReal x6881=((cj4)*(r02)); +IkReal x6882=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x6883=((IkReal(1.00000000000000))*(x6864)); +IkReal x6884=((cj0)*(x6880)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x6865)))+(((sj5)*(x6878)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6877)))); +evalcond[1]=((((r20)*(x6876)))+(((x6869)*(x6878)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x6880)))+(((IkReal(-1.00000000000000))*(sj1)*(x6883)))+(((x6869)*(x6877)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x6870)*(x6879)))+(((x6866)*(x6867)))+(((IkReal(-1.00000000000000))*(sj5)*(x6870)*(x6873)))+(((IkReal(-1.00000000000000))*(x6872)*(x6874)))+(((cj0)*(x6871)))+(((IkReal(-1.00000000000000))*(x6883)))+(((x6866)*(x6868)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6866)*(x6873)))+(((cj0)*(x6874)))+(((IkReal(-1.00000000000000))*(x6866)*(x6879)))+(((IkReal(-1.00000000000000))*(sj5)*(x6868)*(x6870)))+(((IkReal(-1.00000000000000))*(x6865)*(x6875)))+(((IkReal(-1.00000000000000))*(sj5)*(x6867)*(x6870)))+(((sj0)*(x6871)))); +evalcond[4]=((((sj0)*(x6867)*(x6869)))+(((IkReal(-1.00000000000000))*(x6869)*(x6870)*(x6873)))+(((IkReal(-1.00000000000000))*(r10)*(x6870)*(x6876)))+(((r11)*(x6884)))+(((IkReal(-1.00000000000000))*(x6869)*(x6870)*(x6879)))+(x6865)+(((r00)*(sj0)*(x6876)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x6870)))+(((sj0)*(x6868)*(x6869)))+(((IkReal(-1.00000000000000))*(r01)*(x6872)*(x6880)))+(((x6866)*(x6881)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6868)*(x6869)*(x6870)))+(((r01)*(x6884)))+(((IkReal(-1.00000000000000))*(sj5)*(x6870)*(x6881)))+(((IkReal(-1.00000000000000))*(x6866)*(x6882)))+(((r11)*(sj0)*(x6880)))+(((IkReal(-1.00000000000000))*(x6869)*(x6872)*(x6873)))+(((IkReal(-1.00000000000000))*(x6869)*(x6872)*(x6879)))+(((IkReal(-1.00000000000000))*(r10)*(x6872)*(x6876)))+(((IkReal(-1.00000000000000))*(x6864)*(x6875)))+(((IkReal(-1.00000000000000))*(r00)*(x6870)*(x6876)))+(((IkReal(-1.00000000000000))*(x6867)*(x6869)*(x6870)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x6885=((IkReal(1.00000000000000))*(cj0)); +IkReal x6886=((cj4)*(sj6)); +IkReal x6887=((sj0)*(sj4)); +IkReal x6888=((cj5)*(sj6)); +IkReal x6889=((sj4)*(sj5)); +IkReal x6890=((r12)*(sj5)); +IkReal x6891=((IkReal(0.374290000000000))*(cj5)); +IkReal x6892=((r02)*(sj0)); +IkReal x6893=((IkReal(1.00000000000000))*(sj0)); +IkReal x6894=((cj0)*(r10)); +IkReal x6895=((cj4)*(cj6)); +IkReal x6896=((r00)*(sj0)); +IkReal x6897=((cj6)*(r21)); +IkReal x6898=((IkReal(0.374290000000000))*(sj5)); +IkReal x6899=((cj0)*(r00)); +IkReal x6900=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6901=((cj0)*(r02)); +IkReal x6902=((cj5)*(sj4)); +IkReal x6903=((cj6)*(r01)); +IkReal x6904=((cj6)*(r11)); +IkReal x6905=((r01)*(sj0)); +IkReal x6906=((r10)*(sj0)); +IkReal x6907=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6908=((sj6)*(x6898)); +IkReal x6909=((cj0)*(cj6)*(x6898)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x6895)))+(((r21)*(x6886)))+(cj1)+(((r20)*(sj4)*(x6888)))+(((r22)*(x6889)))+(((x6897)*(x6902)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x6891)))+(((IkReal(0.364420000000000))*(sj1)))+(((x6897)*(x6898)))+(((r20)*(x6908)))+(((IkReal(-1.00000000000000))*(r22)*(x6900)))+(((IkReal(-0.0100000000000000))*(r20)*(x6888)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6897)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x6885)*(x6886)))+(((x6886)*(x6905)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6885)*(x6888)))+(((IkReal(-1.00000000000000))*(r00)*(x6893)*(x6895)))+(((x6894)*(x6895)))+(((r00)*(x6887)*(x6888)))+(((IkReal(-1.00000000000000))*(x6885)*(x6902)*(x6904)))+(((IkReal(-1.00000000000000))*(r12)*(x6885)*(x6889)))+(((cj5)*(x6887)*(x6903)))+(((r02)*(sj5)*(x6887)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj5)*(x6887)*(x6904)))+(((x6895)*(x6906)))+(((IkReal(-1.00000000000000))*(x6885)*(x6902)*(x6903)))+(((IkReal(-1.00000000000000))*(r11)*(x6886)*(x6893)))+(((IkReal(-1.00000000000000))*(r10)*(x6887)*(x6888)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6885)*(x6888)))+(((x6895)*(x6899)))+(((IkReal(-1.00000000000000))*(r02)*(x6885)*(x6889)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r01)*(x6885)*(x6886)))+(((IkReal(-1.00000000000000))*(x6887)*(x6890)))); +evalcond[5]=((IkReal(-0.0690000000000000))+(((sj0)*(x6898)*(x6903)))+(((IkReal(0.0100000000000000))*(cj0)*(x6890)))+(((IkReal(-1.00000000000000))*(x6891)*(x6892)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6904)))+(((IkReal(-0.0100000000000000))*(x6888)*(x6896)))+(((IkReal(-1.00000000000000))*(py)*(x6885)))+(((IkReal(-1.00000000000000))*(x6894)*(x6908)))+(((IkReal(-1.00000000000000))*(x6892)*(x6900)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6903)))+(((cj0)*(r12)*(x6891)))+(((IkReal(0.0100000000000000))*(x6888)*(x6894)))+(((x6896)*(x6908)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(x6898)*(x6904)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((x6891)*(x6901)))+(((IkReal(0.0100000000000000))*(x6888)*(x6899)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6904)))+(((IkReal(0.0100000000000000))*(x6888)*(x6906)))+(((r12)*(sj0)*(x6891)))+(((IkReal(-1.00000000000000))*(x6906)*(x6908)))+(((IkReal(-1.00000000000000))*(py)*(x6893)))+(((IkReal(-1.00000000000000))*(sj0)*(x6898)*(x6904)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6903)))+(((x6900)*(x6901)))+(((IkReal(-1.00000000000000))*(px)*(x6885)))+(((IkReal(-1.00000000000000))*(cj0)*(x6898)*(x6903)))+(((IkReal(-1.00000000000000))*(x6899)*(x6908)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(0.0100000000000000))*(sj0)*(x6890)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst12; +gconst12=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x6910=((IkReal(1.00000000000000))*(cj0)); +IkReal x6911=((cj4)*(sj6)); +IkReal x6912=((sj0)*(sj6)); +IkReal x6913=((cj5)*(sj4)); +IkReal x6914=((IkReal(0.374290000000000))*(sj5)); +IkReal x6915=((sj4)*(sj5)); +IkReal x6916=((cj0)*(cj6)); +IkReal x6917=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6918=((cj4)*(sj5)); +IkReal x6919=((cj5)*(sj0)); +IkReal x6920=((IkReal(0.374290000000000))*(r02)); +IkReal x6921=((r20)*(sj6)); +IkReal x6922=((cj6)*(r21)); +IkReal x6923=((IkReal(1.00000000000000))*(sj0)); +IkReal x6924=((cj0)*(sj6)); +IkReal x6925=((cj4)*(cj6)); +IkReal x6926=((IkReal(0.374290000000000))*(r12)); +IkReal x6927=((cj0)*(cj5)); +IkReal x6928=((cj6)*(sj5)); +IkReal x6929=((cj6)*(r01)); +IkReal x6930=((r00)*(sj6)); +IkReal x6931=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6932=((cj6)*(r11)); +IkReal x6933=((IkReal(1.00000000000000))*(r10)); +IkReal x6934=((r02)*(sj0)); +IkReal x6935=((cj6)*(sj4)); +IkReal x6936=((r12)*(x6923)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x6911)))+(((IkReal(-1.00000000000000))*(r20)*(x6925)))+(((x6913)*(x6921)))+(((r22)*(x6915)))+(((x6913)*(x6922)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x6914)*(x6922)))+(((IkReal(-1.00000000000000))*(x6917)*(x6922)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x6931)))+(((x6914)*(x6921)))+(((IkReal(-1.00000000000000))*(x6917)*(x6921)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x6912)*(x6933)))+(((IkReal(-1.00000000000000))*(sj5)*(x6910)*(x6930)))+(((r12)*(x6919)))+(((r02)*(x6927)))+(((IkReal(-1.00000000000000))*(r01)*(x6910)*(x6928)))+(((IkReal(-1.00000000000000))*(r11)*(x6923)*(x6928)))); +evalcond[4]=((((r00)*(x6912)*(x6913)))+(((x6915)*(x6934)))+(((cj4)*(r10)*(x6916)))+(((r01)*(sj0)*(x6911)))+(((IkReal(-1.00000000000000))*(r12)*(x6910)*(x6915)))+(((sj0)*(x6913)*(x6929)))+(((IkReal(-1.00000000000000))*(r11)*(x6910)*(x6911)))+(((IkReal(-1.00000000000000))*(r00)*(x6923)*(x6925)))+(((IkReal(-1.00000000000000))*(x6910)*(x6913)*(x6932)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6910)*(x6913)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x6910)*(x6911)))+(((IkReal(-1.00000000000000))*(r11)*(x6911)*(x6923)))+(((IkReal(-1.00000000000000))*(x6913)*(x6923)*(x6932)))+(((IkReal(-1.00000000000000))*(x6915)*(x6936)))+(((r10)*(sj0)*(x6925)))+(((IkReal(-1.00000000000000))*(r02)*(x6910)*(x6915)))+(((IkReal(-1.00000000000000))*(x6910)*(x6913)*(x6930)))+(((cj4)*(r00)*(x6916)))+(((IkReal(-1.00000000000000))*(x6910)*(x6913)*(x6929)))+(((IkReal(-1.00000000000000))*(x6912)*(x6913)*(x6933)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x6914)*(x6916)))+(((cj0)*(r12)*(x6931)))+(((IkReal(-1.00000000000000))*(sj0)*(x6917)*(x6929)))+(((r11)*(x6916)*(x6917)))+(((IkReal(-1.00000000000000))*(r00)*(x6912)*(x6917)))+(((r00)*(x6912)*(x6914)))+(((x6926)*(x6927)))+(((IkReal(-1.00000000000000))*(x6919)*(x6920)))+(((IkReal(-1.00000000000000))*(r10)*(x6914)*(x6924)))+(((IkReal(-1.00000000000000))*(x6931)*(x6934)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x6910)))+(((sj0)*(x6914)*(x6929)))+(((r10)*(x6917)*(x6924)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r01)*(x6910)*(x6925)))+(((IkReal(-1.00000000000000))*(r02)*(x6910)*(x6918)))+(((IkReal(-1.00000000000000))*(r11)*(x6919)*(x6925)))+(((IkReal(-1.00000000000000))*(r00)*(x6910)*(x6935)))+(((IkReal(-1.00000000000000))*(x6918)*(x6936)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x6910)*(x6911)))+(((IkReal(-1.00000000000000))*(r10)*(x6923)*(x6935)))+(((IkReal(-1.00000000000000))*(x6911)*(x6919)*(x6933)))+(((r11)*(sj4)*(x6912)))+(((r01)*(sj4)*(x6924)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj0)*(r02)*(x6931)))+(((sj0)*(x6917)*(x6932)))+(((r10)*(x6912)*(x6917)))+(((IkReal(-1.00000000000000))*(r10)*(x6912)*(x6914)))+(((IkReal(-1.00000000000000))*(py)*(x6923)))+(((IkReal(-1.00000000000000))*(r01)*(x6914)*(x6916)))+(((x6920)*(x6927)))+(((r12)*(sj0)*(x6931)))+(((IkReal(-1.00000000000000))*(px)*(x6910)))+(((IkReal(-1.00000000000000))*(sj0)*(x6914)*(x6932)))+(((r01)*(x6916)*(x6917)))+(((r00)*(x6917)*(x6924)))+(((x6919)*(x6926)))+(((IkReal(-1.00000000000000))*(r00)*(x6914)*(x6924)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6937=((r20)*(sj6)); +IkReal x6938=((cj4)*(cj5)); +IkReal x6939=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6937)*(x6938)))+(((x6938)*(x6939))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6939)))+(((sj5)*(x6937))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6937)*(x6938)))+(((x6938)*(x6939)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6939)))+(((sj5)*(x6937)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6937)*(x6938)))+(((x6938)*(x6939)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6939)))+(((sj5)*(x6937))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6940=IKsin(j3); +IkReal x6941=((sj0)*(sj5)); +IkReal x6942=((r00)*(sj6)); +IkReal x6943=((cj6)*(r01)); +IkReal x6944=((cj5)*(sj0)); +IkReal x6945=((cj0)*(cj5)); +IkReal x6946=((cj6)*(sj4)); +IkReal x6947=((sj4)*(sj6)); +IkReal x6948=((cj0)*(r11)); +IkReal x6949=((cj4)*(cj6)); +IkReal x6950=((cj4)*(sj6)); +IkReal x6951=((IkReal(1.00000000000000))*(cj0)); +IkReal x6952=((cj4)*(sj5)); +IkReal x6953=((sj5)*(sj6)); +IkReal x6954=((cj6)*(sj5)); +IkReal x6955=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(x6955)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x6953)))+(((r21)*(x6954)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x6940)))+(((r20)*(x6946)))+(((IkReal(-1.00000000000000))*(r21)*(x6947)))+(((r22)*(x6952)))+(((cj5)*(r20)*(x6950)))+(((cj5)*(r21)*(x6949)))); +evalcond[2]=((((x6941)*(x6942)))+(x6940)+(((x6941)*(x6943)))+(((r12)*(x6945)))+(((IkReal(-1.00000000000000))*(x6948)*(x6954)))+(((IkReal(-1.00000000000000))*(r02)*(x6944)))+(((IkReal(-1.00000000000000))*(r10)*(x6951)*(x6953)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6955)))+(((cj4)*(x6942)*(x6944)))+(((IkReal(-1.00000000000000))*(r10)*(x6945)*(x6950)))+(((x6947)*(x6948)))+(((IkReal(-1.00000000000000))*(r10)*(x6946)*(x6951)))+(((r00)*(sj0)*(x6946)))+(((IkReal(-1.00000000000000))*(r12)*(x6951)*(x6952)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x6947)))+(((cj4)*(r02)*(x6941)))+(((IkReal(-1.00000000000000))*(r11)*(x6945)*(x6949)))+(((cj4)*(x6943)*(x6944)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6956=((IkReal(1.00000000000000))*(cj0)); +IkReal x6957=((cj4)*(sj6)); +IkReal x6958=((sj0)*(sj6)); +IkReal x6959=((cj5)*(sj4)); +IkReal x6960=((IkReal(0.374290000000000))*(sj5)); +IkReal x6961=((sj4)*(sj5)); +IkReal x6962=((cj0)*(cj6)); +IkReal x6963=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6964=((cj4)*(sj5)); +IkReal x6965=((cj5)*(sj0)); +IkReal x6966=((IkReal(0.374290000000000))*(r02)); +IkReal x6967=((r20)*(sj6)); +IkReal x6968=((cj6)*(r21)); +IkReal x6969=((IkReal(1.00000000000000))*(sj0)); +IkReal x6970=((cj0)*(sj6)); +IkReal x6971=((cj4)*(cj6)); +IkReal x6972=((IkReal(0.374290000000000))*(r12)); +IkReal x6973=((cj0)*(cj5)); +IkReal x6974=((cj6)*(sj5)); +IkReal x6975=((cj6)*(r01)); +IkReal x6976=((r00)*(sj6)); +IkReal x6977=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6978=((cj6)*(r11)); +IkReal x6979=((IkReal(1.00000000000000))*(r10)); +IkReal x6980=((r02)*(sj0)); +IkReal x6981=((cj6)*(sj4)); +IkReal x6982=((r12)*(x6969)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x6971)))+(((r21)*(x6957)))+(((x6959)*(x6968)))+(((r22)*(x6961)))+(((x6959)*(x6967)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(r22)*(x6977)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x6963)*(x6968)))+(((IkReal(-1.00000000000000))*(x6963)*(x6967)))+(((x6960)*(x6967)))+(((x6960)*(x6968)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(x6956)*(x6974)))+(((IkReal(-1.00000000000000))*(r11)*(x6969)*(x6974)))+(((IkReal(-1.00000000000000))*(sj5)*(x6958)*(x6979)))+(((r02)*(x6973)))+(((r12)*(x6965)))+(((IkReal(-1.00000000000000))*(sj5)*(x6956)*(x6976)))); +evalcond[4]=((((r00)*(x6958)*(x6959)))+(((IkReal(-1.00000000000000))*(r11)*(x6956)*(x6957)))+(((cj4)*(r10)*(x6962)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6956)*(x6959)))+(((IkReal(-1.00000000000000))*(r12)*(x6956)*(x6961)))+(((IkReal(-1.00000000000000))*(r00)*(x6969)*(x6971)))+(((r01)*(sj0)*(x6957)))+(((IkReal(-1.00000000000000))*(x6956)*(x6959)*(x6978)))+(((sj0)*(x6959)*(x6975)))+(((x6961)*(x6980)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x6956)*(x6957)))+(((cj4)*(r00)*(x6962)))+(((r10)*(sj0)*(x6971)))+(((IkReal(-1.00000000000000))*(r11)*(x6957)*(x6969)))+(((IkReal(-1.00000000000000))*(x6958)*(x6959)*(x6979)))+(((IkReal(-1.00000000000000))*(x6956)*(x6959)*(x6975)))+(((IkReal(-1.00000000000000))*(x6959)*(x6969)*(x6978)))+(((IkReal(-1.00000000000000))*(r02)*(x6956)*(x6961)))+(((IkReal(-1.00000000000000))*(x6961)*(x6982)))+(((IkReal(-1.00000000000000))*(x6956)*(x6959)*(x6976)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r11)*(x6962)*(x6963)))+(((r10)*(x6963)*(x6970)))+(((IkReal(-1.00000000000000))*(sj0)*(x6963)*(x6975)))+(((sj0)*(x6960)*(x6975)))+(((IkReal(-1.00000000000000))*(r10)*(x6960)*(x6970)))+(((IkReal(-1.00000000000000))*(x6977)*(x6980)))+(((IkReal(-1.00000000000000))*(py)*(x6956)))+(((IkReal(-1.00000000000000))*(x6965)*(x6966)))+(((x6972)*(x6973)))+(((cj0)*(r12)*(x6977)))+(((IkReal(-1.00000000000000))*(r00)*(x6958)*(x6963)))+(((r00)*(x6958)*(x6960)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x6960)*(x6962)))); +evalcond[7]=((((r01)*(sj4)*(x6970)))+(((IkReal(-1.00000000000000))*(r10)*(x6969)*(x6981)))+(((IkReal(-1.00000000000000))*(r00)*(x6956)*(x6981)))+(((IkReal(-1.00000000000000))*(r11)*(x6965)*(x6971)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x6956)*(x6957)))+(((r11)*(sj4)*(x6958)))+(((IkReal(-1.00000000000000))*(r02)*(x6956)*(x6964)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x6956)*(x6971)))+(((IkReal(-1.00000000000000))*(x6964)*(x6982)))+(((IkReal(-1.00000000000000))*(x6957)*(x6965)*(x6979)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x6960)*(x6962)))+(((x6966)*(x6973)))+(((sj0)*(x6963)*(x6978)))+(((cj0)*(r02)*(x6977)))+(((r00)*(x6963)*(x6970)))+(((x6965)*(x6972)))+(((r12)*(sj0)*(x6977)))+(((IkReal(-1.00000000000000))*(r10)*(x6958)*(x6960)))+(((IkReal(-1.00000000000000))*(px)*(x6956)))+(((IkReal(-1.00000000000000))*(r00)*(x6960)*(x6970)))+(((IkReal(-1.00000000000000))*(py)*(x6969)))+(((IkReal(-1.00000000000000))*(sj0)*(x6960)*(x6978)))+(((r01)*(x6962)*(x6963)))+(((r10)*(x6958)*(x6963)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6983=((IkReal(1.00000000000000))*(sj5)); +IkReal x6984=((cj6)*(r21)); +IkReal x6985=((r20)*(sj6)); +IkReal x6986=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x6984)*(x6986)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6983)))+(((IkReal(-1.00000000000000))*(x6985)*(x6986)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x6983)*(x6984)))+(((IkReal(-1.00000000000000))*(x6983)*(x6985)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x6984)*(x6986)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6983)))+(((IkReal(-1.00000000000000))*(x6985)*(x6986)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x6983)*(x6984)))+(((IkReal(-1.00000000000000))*(x6983)*(x6985)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x6984)*(x6986)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6983)))+(((IkReal(-1.00000000000000))*(x6985)*(x6986)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x6983)*(x6984)))+(((IkReal(-1.00000000000000))*(x6983)*(x6985)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6987=IKsin(j3); +IkReal x6988=IKcos(j3); +IkReal x6989=((sj0)*(sj5)); +IkReal x6990=((r00)*(sj6)); +IkReal x6991=((cj6)*(r01)); +IkReal x6992=((cj0)*(cj5)); +IkReal x6993=((IkReal(1.00000000000000))*(cj5)); +IkReal x6994=((cj4)*(cj5)); +IkReal x6995=((cj6)*(sj4)); +IkReal x6996=((sj4)*(sj6)); +IkReal x6997=((cj0)*(r11)); +IkReal x6998=((IkReal(1.00000000000000))*(cj4)); +IkReal x6999=((cj6)*(r21)); +IkReal x7000=((r20)*(sj6)); +IkReal x7001=((cj0)*(sj5)); +IkReal x7002=((r10)*(sj6)); +evalcond[0]=((((sj5)*(x7000)))+(x6988)+(((sj5)*(x6999)))+(((IkReal(-1.00000000000000))*(r22)*(x6993)))); +evalcond[1]=((((x6994)*(x6999)))+(((r20)*(x6995)))+(((IkReal(-1.00000000000000))*(r21)*(x6996)))+(((cj4)*(r22)*(sj5)))+(x6987)+(((x6994)*(x7000)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6997)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6993)))+(((r12)*(x6992)))+(x6987)+(((IkReal(-1.00000000000000))*(x7001)*(x7002)))+(((x6989)*(x6990)))+(((x6989)*(x6991)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6992)*(x6998)*(x7002)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x6996)))+(((x6996)*(x6997)))+(((cj4)*(r02)*(x6989)))+(((IkReal(-1.00000000000000))*(x6988)))+(((r00)*(sj0)*(x6995)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x6995)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x6992)*(x6998)))+(((sj0)*(x6990)*(x6994)))+(((IkReal(-1.00000000000000))*(r12)*(x6998)*(x7001)))+(((sj0)*(x6991)*(x6994)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7003=((cj5)*(r02)); +IkReal x7004=((cj0)*(sj5)); +IkReal x7005=((r10)*(sj6)); +IkReal x7006=((IkReal(1.00000000000000))*(cj6)); +IkReal x7007=((sj0)*(sj5)); +IkReal x7008=((cj5)*(r12)); +IkReal x7009=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x7008)))+(((x7004)*(x7005)))+(((IkReal(-1.00000000000000))*(r01)*(x7006)*(x7007)))+(((cj6)*(r11)*(x7004)))+(((sj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7007)*(x7009))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x7004)*(x7006)))+(((cj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7005)*(x7007)))+(((sj0)*(x7008)))+(((IkReal(-1.00000000000000))*(r11)*(x7006)*(x7007)))+(((IkReal(-1.00000000000000))*(x7004)*(x7009))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x7008)))+(((x7004)*(x7005)))+(((IkReal(-1.00000000000000))*(r01)*(x7006)*(x7007)))+(((cj6)*(r11)*(x7004)))+(((sj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7007)*(x7009)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x7004)*(x7006)))+(((cj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7005)*(x7007)))+(((sj0)*(x7008)))+(((IkReal(-1.00000000000000))*(r11)*(x7006)*(x7007)))+(((IkReal(-1.00000000000000))*(x7004)*(x7009)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x7008)))+(((x7004)*(x7005)))+(((IkReal(-1.00000000000000))*(r01)*(x7006)*(x7007)))+(((cj6)*(r11)*(x7004)))+(((sj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7007)*(x7009)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x7004)*(x7006)))+(((cj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7005)*(x7007)))+(((sj0)*(x7008)))+(((IkReal(-1.00000000000000))*(r11)*(x7006)*(x7007)))+(((IkReal(-1.00000000000000))*(x7004)*(x7009))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7010=IKsin(j3); +IkReal x7011=IKcos(j3); +IkReal x7012=((sj0)*(sj5)); +IkReal x7013=((r00)*(sj6)); +IkReal x7014=((IkReal(1.00000000000000))*(cj4)); +IkReal x7015=((cj6)*(r01)); +IkReal x7016=((cj0)*(cj5)); +IkReal x7017=((cj5)*(sj0)); +IkReal x7018=((cj6)*(r11)); +IkReal x7019=((cj0)*(sj5)); +IkReal x7020=((IkReal(1.00000000000000))*(cj1)); +IkReal x7021=((cj6)*(sj4)); +IkReal x7022=((IkReal(1.00000000000000))*(sj1)); +IkReal x7023=((cj4)*(cj5)); +IkReal x7024=((cj6)*(r21)); +IkReal x7025=((r20)*(sj6)); +IkReal x7026=((r10)*(sj6)); +IkReal x7027=((IkReal(1.00000000000000))*(cj0)); +IkReal x7028=((cj0)*(sj4)*(sj6)); +IkReal x7029=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x7011)*(x7022)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7024)))+(((sj5)*(x7025)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x7021)))+(((x7023)*(x7024)))+(((x7023)*(x7025)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x7010)*(x7022)))); +evalcond[2]=((((x7012)*(x7015)))+(((r12)*(x7016)))+(x7010)+(((x7012)*(x7013)))+(((IkReal(-1.00000000000000))*(x7019)*(x7026)))+(((IkReal(-1.00000000000000))*(r02)*(x7017)))+(((IkReal(-1.00000000000000))*(x7018)*(x7019)))); +evalcond[3]=((((r12)*(x7017)))+(((IkReal(-1.00000000000000))*(x7015)*(x7019)))+(((IkReal(-1.00000000000000))*(x7012)*(x7018)))+(((r02)*(x7016)))+(((IkReal(-1.00000000000000))*(x7013)*(x7019)))+(((IkReal(-1.00000000000000))*(x7011)*(x7020)))+(((IkReal(-1.00000000000000))*(x7012)*(x7026)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x7021)*(x7027)))+(((r00)*(sj0)*(x7021)))+(((cj4)*(x7015)*(x7017)))+(((IkReal(-1.00000000000000))*(r01)*(x7029)))+(((cj4)*(r02)*(x7012)))+(((cj4)*(x7013)*(x7017)))+(((IkReal(-1.00000000000000))*(x7011)))+(((IkReal(-1.00000000000000))*(x7014)*(x7016)*(x7026)))+(((IkReal(-1.00000000000000))*(x7014)*(x7016)*(x7018)))+(((r11)*(x7028)))+(((IkReal(-1.00000000000000))*(r12)*(x7014)*(x7019)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7014)*(x7017)*(x7026)))+(((IkReal(-1.00000000000000))*(x7013)*(x7014)*(x7016)))+(((IkReal(-1.00000000000000))*(r02)*(x7014)*(x7019)))+(((IkReal(-1.00000000000000))*(x7014)*(x7017)*(x7018)))+(((IkReal(-1.00000000000000))*(x7014)*(x7015)*(x7016)))+(((r01)*(x7028)))+(((IkReal(-1.00000000000000))*(r00)*(x7021)*(x7027)))+(((IkReal(-1.00000000000000))*(x7010)*(x7020)))+(((IkReal(-1.00000000000000))*(r12)*(x7012)*(x7014)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7021)))+(((r11)*(x7029)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7030=((sj5)*(sj6)); +IkReal x7031=((IkReal(1.00000000000000))*(sj0)); +IkReal x7032=((cj6)*(sj5)); +IkReal x7033=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r00)*(x7030)*(x7031)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7033)))+(((cj0)*(r11)*(x7032)))+(((cj0)*(r10)*(x7030)))+(((IkReal(-1.00000000000000))*(r01)*(x7031)*(x7032))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x7033)))+(((r21)*(x7032)))+(((r20)*(x7030))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r00)*(x7030)*(x7031)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7033)))+(((cj0)*(r11)*(x7032)))+(((cj0)*(r10)*(x7030)))+(((IkReal(-1.00000000000000))*(r01)*(x7031)*(x7032)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x7033)))+(((r21)*(x7032)))+(((r20)*(x7030)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r00)*(x7030)*(x7031)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7033)))+(((cj0)*(r11)*(x7032)))+(((cj0)*(r10)*(x7030)))+(((IkReal(-1.00000000000000))*(r01)*(x7031)*(x7032)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x7033)))+(((r21)*(x7032)))+(((r20)*(x7030))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7034=IKsin(j3); +IkReal x7035=IKcos(j3); +IkReal x7036=((sj0)*(sj5)); +IkReal x7037=((r00)*(sj6)); +IkReal x7038=((IkReal(1.00000000000000))*(cj4)); +IkReal x7039=((cj6)*(r01)); +IkReal x7040=((cj0)*(cj5)); +IkReal x7041=((cj5)*(sj0)); +IkReal x7042=((cj6)*(r11)); +IkReal x7043=((cj0)*(sj5)); +IkReal x7044=((IkReal(1.00000000000000))*(cj1)); +IkReal x7045=((cj6)*(sj4)); +IkReal x7046=((IkReal(1.00000000000000))*(sj1)); +IkReal x7047=((cj4)*(cj5)); +IkReal x7048=((cj6)*(r21)); +IkReal x7049=((r20)*(sj6)); +IkReal x7050=((r10)*(sj6)); +IkReal x7051=((IkReal(1.00000000000000))*(cj0)); +IkReal x7052=((cj0)*(sj4)*(sj6)); +IkReal x7053=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x7035)*(x7046)))+(((sj5)*(x7049)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7048)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x7034)*(x7046)))+(((x7047)*(x7048)))+(((r20)*(x7045)))+(((x7047)*(x7049)))); +evalcond[2]=((((x7036)*(x7037)))+(((IkReal(-1.00000000000000))*(x7043)*(x7050)))+(((IkReal(-1.00000000000000))*(r02)*(x7041)))+(x7034)+(((r12)*(x7040)))+(((x7036)*(x7039)))+(((IkReal(-1.00000000000000))*(x7042)*(x7043)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7039)*(x7043)))+(((IkReal(-1.00000000000000))*(x7037)*(x7043)))+(((IkReal(-1.00000000000000))*(x7035)*(x7044)))+(((IkReal(-1.00000000000000))*(x7036)*(x7042)))+(((IkReal(-1.00000000000000))*(x7036)*(x7050)))+(((r12)*(x7041)))+(((r02)*(x7040)))); +evalcond[4]=((((cj4)*(r02)*(x7036)))+(((IkReal(-1.00000000000000))*(r10)*(x7045)*(x7051)))+(((cj4)*(x7039)*(x7041)))+(((r11)*(x7052)))+(((IkReal(-1.00000000000000))*(x7038)*(x7040)*(x7042)))+(((IkReal(-1.00000000000000))*(x7038)*(x7040)*(x7050)))+(((IkReal(-1.00000000000000))*(x7035)))+(((IkReal(-1.00000000000000))*(r01)*(x7053)))+(((r00)*(sj0)*(x7045)))+(((cj4)*(x7037)*(x7041)))+(((IkReal(-1.00000000000000))*(r12)*(x7038)*(x7043)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x7036)*(x7038)))+(((IkReal(-1.00000000000000))*(x7034)*(x7044)))+(((IkReal(-1.00000000000000))*(x7038)*(x7041)*(x7042)))+(((IkReal(-1.00000000000000))*(x7038)*(x7039)*(x7040)))+(((IkReal(-1.00000000000000))*(x7038)*(x7041)*(x7050)))+(((r01)*(x7052)))+(((IkReal(-1.00000000000000))*(r00)*(x7045)*(x7051)))+(((r11)*(x7053)))+(((IkReal(-1.00000000000000))*(x7037)*(x7038)*(x7040)))+(((IkReal(-1.00000000000000))*(r02)*(x7038)*(x7043)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7045)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7054=((r20)*(sj6)); +IkReal x7055=((cj4)*(cj5)); +IkReal x7056=((cj6)*(r21)); +if( IKabs(((gconst12)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x7055)*(x7056)))+(((x7054)*(x7055))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst12)*(((((sj5)*(x7054)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7056))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst12)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x7055)*(x7056)))+(((x7054)*(x7055)))))), ((gconst12)*(((((sj5)*(x7054)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7056))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7057=IKsin(j3); +IkReal x7058=IKcos(j3); +IkReal x7059=((sj0)*(sj5)); +IkReal x7060=((r00)*(sj6)); +IkReal x7061=((IkReal(1.00000000000000))*(cj4)); +IkReal x7062=((cj6)*(r01)); +IkReal x7063=((cj0)*(cj5)); +IkReal x7064=((cj5)*(sj0)); +IkReal x7065=((cj6)*(r11)); +IkReal x7066=((cj0)*(sj5)); +IkReal x7067=((IkReal(1.00000000000000))*(cj1)); +IkReal x7068=((cj6)*(sj4)); +IkReal x7069=((IkReal(1.00000000000000))*(sj1)); +IkReal x7070=((cj4)*(cj5)); +IkReal x7071=((cj6)*(r21)); +IkReal x7072=((r20)*(sj6)); +IkReal x7073=((r10)*(sj6)); +IkReal x7074=((IkReal(1.00000000000000))*(cj0)); +IkReal x7075=((cj0)*(sj4)*(sj6)); +IkReal x7076=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x7072)))+(((IkReal(-1.00000000000000))*(x7058)*(x7069)))+(((sj5)*(x7071)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7068)))+(((x7070)*(x7071)))+(((IkReal(-1.00000000000000))*(x7057)*(x7069)))+(((x7070)*(x7072)))); +evalcond[2]=((((x7059)*(x7062)))+(((x7059)*(x7060)))+(((r12)*(x7063)))+(x7057)+(((IkReal(-1.00000000000000))*(r02)*(x7064)))+(((IkReal(-1.00000000000000))*(x7066)*(x7073)))+(((IkReal(-1.00000000000000))*(x7065)*(x7066)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7060)*(x7066)))+(((IkReal(-1.00000000000000))*(x7059)*(x7073)))+(((r12)*(x7064)))+(((IkReal(-1.00000000000000))*(x7059)*(x7065)))+(((IkReal(-1.00000000000000))*(x7058)*(x7067)))+(((r02)*(x7063)))+(((IkReal(-1.00000000000000))*(x7062)*(x7066)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x7061)*(x7066)))+(((IkReal(-1.00000000000000))*(x7061)*(x7063)*(x7065)))+(((r00)*(sj0)*(x7068)))+(((r11)*(x7075)))+(((IkReal(-1.00000000000000))*(x7058)))+(((cj4)*(x7062)*(x7064)))+(((IkReal(-1.00000000000000))*(x7061)*(x7063)*(x7073)))+(((IkReal(-1.00000000000000))*(r10)*(x7068)*(x7074)))+(((cj4)*(r02)*(x7059)))+(((IkReal(-1.00000000000000))*(r01)*(x7076)))+(((cj4)*(x7060)*(x7064)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7061)*(x7062)*(x7063)))+(((IkReal(-1.00000000000000))*(r02)*(x7061)*(x7066)))+(((IkReal(-1.00000000000000))*(x7060)*(x7061)*(x7063)))+(((IkReal(-1.00000000000000))*(x7061)*(x7064)*(x7073)))+(((r01)*(x7075)))+(((IkReal(-1.00000000000000))*(r00)*(x7068)*(x7074)))+(((IkReal(-1.00000000000000))*(r12)*(x7059)*(x7061)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7068)))+(((IkReal(-1.00000000000000))*(x7057)*(x7067)))+(((IkReal(-1.00000000000000))*(x7061)*(x7064)*(x7065)))+(((r11)*(x7076)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7077=((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30); +IkReal x7078=((sj5)*(sj6)); +IkReal x7079=((r00)*(sj0)); +IkReal x7080=((cj1)*(cj2)); +IkReal x7081=((cj0)*(r10)); +IkReal x7082=((cj6)*(sj5)); +IkReal x7083=((r01)*(sj0)); +IkReal x7084=((IkReal(1.00000000000000))*(cj0)); +IkReal x7085=((cj5)*(r12)); +IkReal x7086=((IkReal(1.00000000000000))*(cj5)); +IkReal x7087=((r02)*(sj0)); +if( IKabs(((x7077)*(((((cj0)*(x7085)))+(((IkReal(-1.00000000000000))*(x7086)*(x7087)))+(((IkReal(-1.00000000000000))*(r11)*(x7082)*(x7084)))+(((IkReal(-1.00000000000000))*(x7078)*(x7081)))+(((x7078)*(x7079)))+(((x7082)*(x7083))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((x7077)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((cj5)*(x7080)*(x7087)))+(((cj0)*(r11)*(x7080)*(x7082)))+(((IkReal(-1.00000000000000))*(x7078)*(x7079)*(x7080)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x7086)))+(((r21)*(sj2)*(x7082)))+(((r20)*(sj2)*(x7078)))+(((IkReal(-1.00000000000000))*(x7080)*(x7082)*(x7083)))+(((x7078)*(x7080)*(x7081)))+(((IkReal(-1.00000000000000))*(x7080)*(x7084)*(x7085))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((x7077)*(((((cj0)*(x7085)))+(((IkReal(-1.00000000000000))*(x7086)*(x7087)))+(((IkReal(-1.00000000000000))*(r11)*(x7082)*(x7084)))+(((IkReal(-1.00000000000000))*(x7078)*(x7081)))+(((x7078)*(x7079)))+(((x7082)*(x7083)))))))+IKsqr(((x7077)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((cj5)*(x7080)*(x7087)))+(((cj0)*(r11)*(x7080)*(x7082)))+(((IkReal(-1.00000000000000))*(x7078)*(x7079)*(x7080)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x7086)))+(((r21)*(sj2)*(x7082)))+(((r20)*(sj2)*(x7078)))+(((IkReal(-1.00000000000000))*(x7080)*(x7082)*(x7083)))+(((x7078)*(x7080)*(x7081)))+(((IkReal(-1.00000000000000))*(x7080)*(x7084)*(x7085)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((x7077)*(((((cj0)*(x7085)))+(((IkReal(-1.00000000000000))*(x7086)*(x7087)))+(((IkReal(-1.00000000000000))*(r11)*(x7082)*(x7084)))+(((IkReal(-1.00000000000000))*(x7078)*(x7081)))+(((x7078)*(x7079)))+(((x7082)*(x7083)))))), ((x7077)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((cj5)*(x7080)*(x7087)))+(((cj0)*(r11)*(x7080)*(x7082)))+(((IkReal(-1.00000000000000))*(x7078)*(x7079)*(x7080)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x7086)))+(((r21)*(sj2)*(x7082)))+(((r20)*(sj2)*(x7078)))+(((IkReal(-1.00000000000000))*(x7080)*(x7082)*(x7083)))+(((x7078)*(x7080)*(x7081)))+(((IkReal(-1.00000000000000))*(x7080)*(x7084)*(x7085))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7088=IKcos(j3); +IkReal x7089=IKsin(j3); +IkReal x7090=((sj0)*(sj5)); +IkReal x7091=((r00)*(sj6)); +IkReal x7092=((IkReal(1.00000000000000))*(cj4)); +IkReal x7093=((cj6)*(r01)); +IkReal x7094=((cj0)*(cj5)); +IkReal x7095=((cj5)*(sj0)); +IkReal x7096=((cj6)*(r11)); +IkReal x7097=((cj6)*(sj4)); +IkReal x7098=((IkReal(1.00000000000000))*(cj1)); +IkReal x7099=((cj4)*(cj5)); +IkReal x7100=((cj6)*(r21)); +IkReal x7101=((r20)*(sj6)); +IkReal x7102=((r10)*(sj6)); +IkReal x7103=((cj0)*(sj5)); +IkReal x7104=((IkReal(1.00000000000000))*(cj0)); +IkReal x7105=((IkReal(1.00000000000000))*(x7103)); +IkReal x7106=((IkReal(1.00000000000000))*(x7089)); +IkReal x7107=((cj0)*(sj4)*(sj6)); +IkReal x7108=((cj2)*(x7089)); +IkReal x7109=((sj0)*(sj4)*(sj6)); +IkReal x7110=((IkReal(1.00000000000000))*(sj1)*(x7088)); +evalcond[0]=((((sj5)*(x7101)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x7110)))+(((IkReal(-1.00000000000000))*(x7098)*(x7108)))+(((sj5)*(x7100)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(sj1)*(x7106)))+(((cj1)*(cj2)*(x7088)))+(((cj4)*(r22)*(sj5)))+(((x7099)*(x7100)))+(((x7099)*(x7101)))+(((r20)*(x7097)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7096)*(x7105)))+(((r12)*(x7094)))+(((IkReal(-1.00000000000000))*(x7102)*(x7105)))+(((x7090)*(x7091)))+(((x7090)*(x7093)))+(((IkReal(-1.00000000000000))*(sj2)*(x7106)))+(((IkReal(-1.00000000000000))*(r02)*(x7095)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7088)*(x7098)))+(((IkReal(-1.00000000000000))*(x7090)*(x7096)))+(((r12)*(x7095)))+(((sj1)*(x7108)))+(((IkReal(-1.00000000000000))*(x7091)*(x7105)))+(((IkReal(-1.00000000000000))*(x7090)*(x7102)))+(((r02)*(x7094)))+(((IkReal(-1.00000000000000))*(x7093)*(x7105)))); +evalcond[4]=((((cj4)*(r02)*(x7090)))+(((sj2)*(x7088)))+(((r11)*(x7107)))+(((r00)*(sj0)*(x7097)))+(((IkReal(-1.00000000000000))*(r10)*(x7097)*(x7104)))+(((cj4)*(x7093)*(x7095)))+(((IkReal(-1.00000000000000))*(x7092)*(x7094)*(x7096)))+(((cj4)*(x7091)*(x7095)))+(((IkReal(-1.00000000000000))*(x7092)*(x7094)*(x7102)))+(((IkReal(-1.00000000000000))*(r12)*(x7092)*(x7103)))+(((IkReal(-1.00000000000000))*(r01)*(x7109)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(cj2)*(x7110)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7097)))+(((IkReal(-1.00000000000000))*(r00)*(x7097)*(x7104)))+(((IkReal(-1.00000000000000))*(x7089)*(x7098)))+(((IkReal(-1.00000000000000))*(x7092)*(x7095)*(x7102)))+(((IkReal(-1.00000000000000))*(x7091)*(x7092)*(x7094)))+(((IkReal(-1.00000000000000))*(x7092)*(x7095)*(x7096)))+(((IkReal(-1.00000000000000))*(r12)*(x7090)*(x7092)))+(((r11)*(x7109)))+(((r01)*(x7107)))+(((IkReal(-1.00000000000000))*(x7092)*(x7093)*(x7094)))+(((IkReal(-1.00000000000000))*(r02)*(x7092)*(x7103)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7111=(cj1)*(cj1); +IkReal x7112=(sj1)*(sj1); +IkReal x7113=((r00)*(sj6)); +IkReal x7114=((cj6)*(r01)); +IkReal x7115=((IkReal(1.00000000000000))*(cj1)); +IkReal x7116=((cj5)*(r22)); +IkReal x7117=((sj5)*(sj6)); +IkReal x7118=((r10)*(sj0)); +IkReal x7119=((cj1)*(cj5)); +IkReal x7120=((cj0)*(r02)); +IkReal x7121=((r12)*(sj0)); +IkReal x7122=((IkReal(1.00000000000000))*(sj1)); +IkReal x7123=((cj6)*(sj5)); +IkReal x7124=((cj0)*(sj5)); +IkReal x7125=((r11)*(sj0)); +IkReal x7126=((sj1)*(x7124)); +if( IKabs(((((IKabs(((((cj2)*(x7111)))+(((cj2)*(x7112))))) != 0)?((IkReal)1/(((((cj2)*(x7111)))+(((cj2)*(x7112)))))):(IkReal)1.0e30))*(((((sj1)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7116)))+(((IkReal(-1.00000000000000))*(cj5)*(x7121)*(x7122)))+(((sj1)*(x7117)*(x7118)))+(((cj1)*(r21)*(x7123)))+(((x7113)*(x7126)))+(((x7114)*(x7126)))+(((IkReal(-1.00000000000000))*(cj5)*(x7120)*(x7122)))+(((cj1)*(r20)*(x7117))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x7112)+(x7111))) != 0)?((IkReal)1/(((x7112)+(x7111)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x7123)))+(((IkReal(-1.00000000000000))*(x7114)*(x7115)*(x7124)))+(((r20)*(sj1)*(x7117)))+(((IkReal(-1.00000000000000))*(x7113)*(x7115)*(x7124)))+(((x7119)*(x7121)))+(((IkReal(-1.00000000000000))*(x7116)*(x7122)))+(((IkReal(-1.00000000000000))*(x7115)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7117)*(x7118)))+(((x7119)*(x7120))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x7111)))+(((cj2)*(x7112))))) != 0)?((IkReal)1/(((((cj2)*(x7111)))+(((cj2)*(x7112)))))):(IkReal)1.0e30))*(((((sj1)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7116)))+(((IkReal(-1.00000000000000))*(cj5)*(x7121)*(x7122)))+(((sj1)*(x7117)*(x7118)))+(((cj1)*(r21)*(x7123)))+(((x7113)*(x7126)))+(((x7114)*(x7126)))+(((IkReal(-1.00000000000000))*(cj5)*(x7120)*(x7122)))+(((cj1)*(r20)*(x7117)))))))+IKsqr(((((IKabs(((x7112)+(x7111))) != 0)?((IkReal)1/(((x7112)+(x7111)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x7123)))+(((IkReal(-1.00000000000000))*(x7114)*(x7115)*(x7124)))+(((r20)*(sj1)*(x7117)))+(((IkReal(-1.00000000000000))*(x7113)*(x7115)*(x7124)))+(((x7119)*(x7121)))+(((IkReal(-1.00000000000000))*(x7116)*(x7122)))+(((IkReal(-1.00000000000000))*(x7115)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7117)*(x7118)))+(((x7119)*(x7120)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x7111)))+(((cj2)*(x7112))))) != 0)?((IkReal)1/(((((cj2)*(x7111)))+(((cj2)*(x7112)))))):(IkReal)1.0e30))*(((((sj1)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7116)))+(((IkReal(-1.00000000000000))*(cj5)*(x7121)*(x7122)))+(((sj1)*(x7117)*(x7118)))+(((cj1)*(r21)*(x7123)))+(((x7113)*(x7126)))+(((x7114)*(x7126)))+(((IkReal(-1.00000000000000))*(cj5)*(x7120)*(x7122)))+(((cj1)*(r20)*(x7117)))))), ((((IKabs(((x7112)+(x7111))) != 0)?((IkReal)1/(((x7112)+(x7111)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x7123)))+(((IkReal(-1.00000000000000))*(x7114)*(x7115)*(x7124)))+(((r20)*(sj1)*(x7117)))+(((IkReal(-1.00000000000000))*(x7113)*(x7115)*(x7124)))+(((x7119)*(x7121)))+(((IkReal(-1.00000000000000))*(x7116)*(x7122)))+(((IkReal(-1.00000000000000))*(x7115)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7117)*(x7118)))+(((x7119)*(x7120))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7127=IKcos(j3); +IkReal x7128=IKsin(j3); +IkReal x7129=((sj0)*(sj5)); +IkReal x7130=((r00)*(sj6)); +IkReal x7131=((IkReal(1.00000000000000))*(cj4)); +IkReal x7132=((cj6)*(r01)); +IkReal x7133=((cj0)*(cj5)); +IkReal x7134=((cj5)*(sj0)); +IkReal x7135=((cj6)*(r11)); +IkReal x7136=((cj6)*(sj4)); +IkReal x7137=((IkReal(1.00000000000000))*(cj1)); +IkReal x7138=((cj4)*(cj5)); +IkReal x7139=((cj6)*(r21)); +IkReal x7140=((r20)*(sj6)); +IkReal x7141=((r10)*(sj6)); +IkReal x7142=((cj0)*(sj5)); +IkReal x7143=((IkReal(1.00000000000000))*(cj0)); +IkReal x7144=((IkReal(1.00000000000000))*(x7142)); +IkReal x7145=((IkReal(1.00000000000000))*(x7128)); +IkReal x7146=((cj0)*(sj4)*(sj6)); +IkReal x7147=((cj2)*(x7128)); +IkReal x7148=((sj0)*(sj4)*(sj6)); +IkReal x7149=((IkReal(1.00000000000000))*(sj1)*(x7127)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x7137)*(x7147)))+(((sj5)*(x7139)))+(((IkReal(-1.00000000000000))*(x7149)))+(((sj5)*(x7140)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x7138)*(x7140)))+(((r20)*(x7136)))+(((cj4)*(r22)*(sj5)))+(((x7138)*(x7139)))+(((cj1)*(cj2)*(x7127)))+(((IkReal(-1.00000000000000))*(sj1)*(x7145)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7141)*(x7144)))+(((IkReal(-1.00000000000000))*(sj2)*(x7145)))+(((r12)*(x7133)))+(((IkReal(-1.00000000000000))*(r02)*(x7134)))+(((x7129)*(x7132)))+(((IkReal(-1.00000000000000))*(x7135)*(x7144)))+(((x7129)*(x7130)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7129)*(x7135)))+(((IkReal(-1.00000000000000))*(x7127)*(x7137)))+(((IkReal(-1.00000000000000))*(x7129)*(x7141)))+(((IkReal(-1.00000000000000))*(x7132)*(x7144)))+(((IkReal(-1.00000000000000))*(x7130)*(x7144)))+(((sj1)*(x7147)))+(((r02)*(x7133)))+(((r12)*(x7134)))); +evalcond[4]=((((r11)*(x7146)))+(((cj4)*(x7132)*(x7134)))+(((IkReal(-1.00000000000000))*(r12)*(x7131)*(x7142)))+(((IkReal(-1.00000000000000))*(r10)*(x7136)*(x7143)))+(((r00)*(sj0)*(x7136)))+(((sj2)*(x7127)))+(((IkReal(-1.00000000000000))*(x7131)*(x7133)*(x7141)))+(((cj4)*(r02)*(x7129)))+(((IkReal(-1.00000000000000))*(r01)*(x7148)))+(((IkReal(-1.00000000000000))*(x7131)*(x7133)*(x7135)))+(((cj4)*(x7130)*(x7134)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(cj2)*(x7149)))+(((IkReal(-1.00000000000000))*(x7128)*(x7137)))+(((IkReal(-1.00000000000000))*(r00)*(x7136)*(x7143)))+(((r01)*(x7146)))+(((r11)*(x7148)))+(((IkReal(-1.00000000000000))*(x7131)*(x7134)*(x7141)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7136)))+(((IkReal(-1.00000000000000))*(x7131)*(x7134)*(x7135)))+(((IkReal(-1.00000000000000))*(r12)*(x7129)*(x7131)))+(((IkReal(-1.00000000000000))*(x7130)*(x7131)*(x7133)))+(((IkReal(-1.00000000000000))*(r02)*(x7131)*(x7142)))+(((IkReal(-1.00000000000000))*(x7131)*(x7132)*(x7133)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7150=((sj1)*(sj6)); +IkReal x7151=((r20)*(sj5)); +IkReal x7152=((IkReal(1.00000000000000))*(r21)); +IkReal x7153=((cj5)*(cj6)); +IkReal x7154=((r22)*(sj5)); +IkReal x7155=((cj4)*(sj1)); +IkReal x7156=((cj1)*(cj2)); +IkReal x7157=((cj5)*(r20)); +IkReal x7158=((cj4)*(x7156)); +IkReal x7159=((IkReal(1.00000000000000))*(cj5)*(r22)); +IkReal x7160=((cj6)*(r20)*(sj4)); +IkReal x7161=((cj6)*(r21)*(sj5)); +if( IKabs(((gconst4)*(((((cj4)*(x7150)*(x7157)))+(((r21)*(x7153)*(x7155)))+(((IkReal(-1.00000000000000))*(x7156)*(x7159)))+(((sj6)*(x7151)*(x7156)))+(((sj1)*(x7160)))+(((x7154)*(x7155)))+(((IkReal(-1.00000000000000))*(sj4)*(x7150)*(x7152)))+(((x7156)*(x7161))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst4)*(((((IkReal(-1.00000000000000))*(x7152)*(x7153)*(x7158)))+(((x7150)*(x7151)))+(((IkReal(-1.00000000000000))*(sj1)*(x7159)))+(((IkReal(-1.00000000000000))*(x7156)*(x7160)))+(((IkReal(-1.00000000000000))*(sj6)*(x7157)*(x7158)))+(((IkReal(-1.00000000000000))*(x7154)*(x7158)))+(((sj1)*(x7161)))+(((r21)*(sj4)*(sj6)*(x7156))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst4)*(((((cj4)*(x7150)*(x7157)))+(((r21)*(x7153)*(x7155)))+(((IkReal(-1.00000000000000))*(x7156)*(x7159)))+(((sj6)*(x7151)*(x7156)))+(((sj1)*(x7160)))+(((x7154)*(x7155)))+(((IkReal(-1.00000000000000))*(sj4)*(x7150)*(x7152)))+(((x7156)*(x7161)))))), ((gconst4)*(((((IkReal(-1.00000000000000))*(x7152)*(x7153)*(x7158)))+(((x7150)*(x7151)))+(((IkReal(-1.00000000000000))*(sj1)*(x7159)))+(((IkReal(-1.00000000000000))*(x7156)*(x7160)))+(((IkReal(-1.00000000000000))*(sj6)*(x7157)*(x7158)))+(((IkReal(-1.00000000000000))*(x7154)*(x7158)))+(((sj1)*(x7161)))+(((r21)*(sj4)*(sj6)*(x7156))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7162=IKcos(j3); +IkReal x7163=IKsin(j3); +IkReal x7164=((sj0)*(sj5)); +IkReal x7165=((r00)*(sj6)); +IkReal x7166=((IkReal(1.00000000000000))*(cj4)); +IkReal x7167=((cj6)*(r01)); +IkReal x7168=((cj0)*(cj5)); +IkReal x7169=((cj5)*(sj0)); +IkReal x7170=((cj6)*(r11)); +IkReal x7171=((cj6)*(sj4)); +IkReal x7172=((IkReal(1.00000000000000))*(cj1)); +IkReal x7173=((cj4)*(cj5)); +IkReal x7174=((cj6)*(r21)); +IkReal x7175=((r20)*(sj6)); +IkReal x7176=((r10)*(sj6)); +IkReal x7177=((cj0)*(sj5)); +IkReal x7178=((IkReal(1.00000000000000))*(cj0)); +IkReal x7179=((IkReal(1.00000000000000))*(x7177)); +IkReal x7180=((IkReal(1.00000000000000))*(x7163)); +IkReal x7181=((cj0)*(sj4)*(sj6)); +IkReal x7182=((cj2)*(x7163)); +IkReal x7183=((sj0)*(sj4)*(sj6)); +IkReal x7184=((IkReal(1.00000000000000))*(sj1)*(x7162)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x7184)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7174)))+(((IkReal(-1.00000000000000))*(x7172)*(x7182)))+(((sj5)*(x7175)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj1)*(cj2)*(x7162)))+(((x7173)*(x7175)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7171)))+(((x7173)*(x7174)))+(((IkReal(-1.00000000000000))*(sj1)*(x7180)))); +evalcond[2]=((((x7164)*(x7167)))+(((x7164)*(x7165)))+(((IkReal(-1.00000000000000))*(x7176)*(x7179)))+(((IkReal(-1.00000000000000))*(sj2)*(x7180)))+(((r12)*(x7168)))+(((IkReal(-1.00000000000000))*(x7170)*(x7179)))+(((IkReal(-1.00000000000000))*(r02)*(x7169)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7165)*(x7179)))+(((r12)*(x7169)))+(((IkReal(-1.00000000000000))*(x7162)*(x7172)))+(((sj1)*(x7182)))+(((r02)*(x7168)))+(((IkReal(-1.00000000000000))*(x7164)*(x7170)))+(((IkReal(-1.00000000000000))*(x7164)*(x7176)))+(((IkReal(-1.00000000000000))*(x7167)*(x7179)))); +evalcond[4]=((((cj4)*(r02)*(x7164)))+(((IkReal(-1.00000000000000))*(x7166)*(x7168)*(x7176)))+(((IkReal(-1.00000000000000))*(r12)*(x7166)*(x7177)))+(((r00)*(sj0)*(x7171)))+(((IkReal(-1.00000000000000))*(r10)*(x7171)*(x7178)))+(((sj2)*(x7162)))+(((cj4)*(x7167)*(x7169)))+(((IkReal(-1.00000000000000))*(x7166)*(x7168)*(x7170)))+(((IkReal(-1.00000000000000))*(r01)*(x7183)))+(((cj4)*(x7165)*(x7169)))+(((r11)*(x7181)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7171)))+(((IkReal(-1.00000000000000))*(x7166)*(x7169)*(x7176)))+(((IkReal(-1.00000000000000))*(r02)*(x7166)*(x7177)))+(((IkReal(-1.00000000000000))*(r00)*(x7171)*(x7178)))+(((IkReal(-1.00000000000000))*(x7166)*(x7167)*(x7168)))+(((IkReal(-1.00000000000000))*(r12)*(x7164)*(x7166)))+(((IkReal(-1.00000000000000))*(x7165)*(x7166)*(x7168)))+(((r11)*(x7183)))+(((IkReal(-1.00000000000000))*(cj2)*(x7184)))+(((IkReal(-1.00000000000000))*(x7166)*(x7169)*(x7170)))+(((r01)*(x7181)))+(((IkReal(-1.00000000000000))*(x7163)*(x7172)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x7185=((cj5)*(sj0)); +IkReal x7186=((cj2)*(sj6)); +IkReal x7187=((IkReal(1.00000000000000))*(cj0)); +IkReal x7188=((cj2)*(cj6)); +IkReal x7189=((cj1)*(cj6)*(sj2)); +IkReal x7190=((r10)*(x7187)); +IkReal x7191=((cj1)*(sj2)*(sj6)); +IkReal x7192=((cj1)*(sj2)*(sj5)); +if( IKabs(((gconst0)*(((((r00)*(sj0)*(x7189)))+(((IkReal(-1.00000000000000))*(x7189)*(x7190)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x7191)))+(((r20)*(x7188)))+(((cj0)*(r11)*(x7191)))+(((IkReal(-1.00000000000000))*(r21)*(x7186))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst0)*(((((IkReal(-1.00000000000000))*(cj5)*(x7190)*(x7191)))+(((cj2)*(r22)*(sj5)))+(((cj5)*(r20)*(x7186)))+(((cj5)*(r21)*(x7188)))+(((r02)*(sj0)*(x7192)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7187)*(x7189)))+(((IkReal(-1.00000000000000))*(r12)*(x7187)*(x7192)))+(((r00)*(x7185)*(x7191)))+(((r01)*(x7185)*(x7189))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst0)*(((((r00)*(sj0)*(x7189)))+(((IkReal(-1.00000000000000))*(x7189)*(x7190)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x7191)))+(((r20)*(x7188)))+(((cj0)*(r11)*(x7191)))+(((IkReal(-1.00000000000000))*(r21)*(x7186)))))), ((gconst0)*(((((IkReal(-1.00000000000000))*(cj5)*(x7190)*(x7191)))+(((cj2)*(r22)*(sj5)))+(((cj5)*(r20)*(x7186)))+(((cj5)*(r21)*(x7188)))+(((r02)*(sj0)*(x7192)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7187)*(x7189)))+(((IkReal(-1.00000000000000))*(r12)*(x7187)*(x7192)))+(((r00)*(x7185)*(x7191)))+(((r01)*(x7185)*(x7189))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x7193=IKsin(j4); +IkReal x7194=IKcos(j4); +IkReal x7195=((r00)*(sj6)); +IkReal x7196=((cj6)*(r01)); +IkReal x7197=((IkReal(1.00000000000000))*(cj0)); +IkReal x7198=((IkReal(1.00000000000000))*(sj0)); +IkReal x7199=((r10)*(sj6)); +IkReal x7200=((sj5)*(x7193)); +IkReal x7201=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x7202=((cj5)*(x7193)); +IkReal x7203=((cj6)*(x7194)); +IkReal x7204=((sj0)*(x7202)); +IkReal x7205=((r01)*(sj6)*(x7194)); +IkReal x7206=((r11)*(sj6)*(x7194)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r20)*(x7203)))+(((IkReal(-1.00000000000000))*(cj1)*(sj2)))+(((cj6)*(r21)*(x7202)))+(((r21)*(sj6)*(x7194)))+(((r22)*(x7200)))+(((r20)*(sj6)*(x7202)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x7197)*(x7199)*(x7202)))+(((sj0)*(x7205)))+(((IkReal(-1.00000000000000))*(x7197)*(x7206)))+(((IkReal(-1.00000000000000))*(r00)*(x7198)*(x7203)))+(((x7195)*(x7204)))+(((IkReal(-1.00000000000000))*(r12)*(x7197)*(x7200)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7197)*(x7202)))+(((r02)*(sj0)*(x7200)))+(cj2)+(((x7196)*(x7204)))+(((cj0)*(r10)*(x7203)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7196)*(x7197)*(x7202)))+(((IkReal(-1.00000000000000))*(x7195)*(x7197)*(x7202)))+(((IkReal(-1.00000000000000))*(r12)*(x7198)*(x7200)))+(((IkReal(-1.00000000000000))*(x7198)*(x7199)*(x7202)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7198)*(x7202)))+(((IkReal(-1.00000000000000))*(r02)*(x7197)*(x7200)))+(((cj0)*(r00)*(x7203)))+(((IkReal(-1.00000000000000))*(x7198)*(x7206)))+(((r10)*(sj0)*(x7203)))+(((sj1)*(sj2)))+(((IkReal(-1.00000000000000))*(x7197)*(x7205)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst4; +gconst4=IKsign((((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2)))))); +dummyeval[0]=(((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2))))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x7207=(cj1)*(cj1); +IkReal x7208=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x7207)))+(((cj2)*(x7208)))); +dummyeval[1]=((x7208)+(x7207)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +dummyeval[0]=sj2; +dummyeval[1]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x7209=((cj5)*(sj4)); +IkReal x7210=((IkReal(1.00000000000000))*(sj6)); +IkReal x7211=((r10)*(sj0)); +IkReal x7212=((sj4)*(sj5)); +IkReal x7213=((cj4)*(cj5)); +IkReal x7214=((IkReal(1.00000000000000))*(r02)); +IkReal x7215=((IkReal(0.374290000000000))*(cj0)); +IkReal x7216=((cj5)*(r12)); +IkReal x7217=((cj6)*(sj5)); +IkReal x7218=((cj0)*(r11)); +IkReal x7219=((cj5)*(sj0)); +IkReal x7220=((r20)*(sj6)); +IkReal x7221=((IkReal(1.00000000000000))*(sj0)); +IkReal x7222=((IkReal(1.00000000000000))*(cj6)); +IkReal x7223=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7224=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7225=((sj5)*(sj6)); +IkReal x7226=((cj0)*(r10)); +IkReal x7227=((cj4)*(cj6)); +IkReal x7228=((cj0)*(r01)); +IkReal x7229=((cj0)*(r00)); +IkReal x7230=((cj6)*(r21)); +IkReal x7231=((IkReal(0.374290000000000))*(sj0)); +IkReal x7232=((IkReal(0.374290000000000))*(sj5)); +IkReal x7233=((cj6)*(r11)); +IkReal x7234=((sj0)*(sj4)); +IkReal x7235=((cj4)*(sj5)); +IkReal x7236=((cj4)*(sj6)); +IkReal x7237=((IkReal(1.00000000000000))*(cj0)); +IkReal x7238=((r02)*(sj0)); +IkReal x7239=((r00)*(sj0)*(sj6)); +IkReal x7240=((cj6)*(r01)*(sj0)); +IkReal x7241=((r00)*(x7227)); +IkReal x7242=((r12)*(x7237)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x7209)*(x7230)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7222)))+(((r22)*(x7212)))+(((r21)*(x7236)))+(((x7209)*(x7220)))); +evalcond[2]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(0.374290000000000))*(r21)*(x7217)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x7220)*(x7232)))+(((IkReal(-1.00000000000000))*(x7223)*(x7230)))+(((IkReal(-1.00000000000000))*(x7220)*(x7223)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x7224)))+(((IkReal(0.0690000000000000))*(cj1)))); +evalcond[3]=((((r01)*(sj0)*(x7217)))+(((cj0)*(x7216)))+(((IkReal(-1.00000000000000))*(x7214)*(x7219)))+(((IkReal(-1.00000000000000))*(x7217)*(x7218)))+(((r00)*(sj0)*(x7225)))+(((IkReal(-1.00000000000000))*(sj5)*(x7210)*(x7226)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x7209)*(x7210)*(x7226)))+(((x7209)*(x7239)))+(((x7226)*(x7227)))+(((IkReal(-1.00000000000000))*(x7221)*(x7241)))+(((x7212)*(x7238)))+(((x7209)*(x7240)))+(((IkReal(-1.00000000000000))*(cj4)*(x7210)*(x7218)))+(((IkReal(-1.00000000000000))*(x7212)*(x7242)))+(((r01)*(sj0)*(x7236)))+(((IkReal(-1.00000000000000))*(x7209)*(x7218)*(x7222)))); +evalcond[5]=((((x7235)*(x7238)))+(((IkReal(-1.00000000000000))*(x7210)*(x7213)*(x7226)))+(((x7213)*(x7239)))+(((IkReal(-1.00000000000000))*(r01)*(x7210)*(x7234)))+(((x7213)*(x7240)))+(((sj4)*(sj6)*(x7218)))+(((IkReal(-1.00000000000000))*(x7235)*(x7242)))+(((IkReal(-1.00000000000000))*(sj4)*(x7222)*(x7226)))+(((IkReal(-1.00000000000000))*(x7213)*(x7218)*(x7222)))+(((cj6)*(r00)*(x7234)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x7209)*(x7210)*(x7211)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x7210)))+(((IkReal(-1.00000000000000))*(x7209)*(x7210)*(x7229)))+(((IkReal(-1.00000000000000))*(x7209)*(x7221)*(x7233)))+(((x7227)*(x7229)))+(((IkReal(-1.00000000000000))*(cj0)*(x7212)*(x7214)))+(((x7211)*(x7227)))+(((IkReal(-1.00000000000000))*(r12)*(x7212)*(x7221)))+(((IkReal(-1.00000000000000))*(cj4)*(x7210)*(x7228)))+(((IkReal(-1.00000000000000))*(x7209)*(x7222)*(x7228)))); +evalcond[7]=((((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x7219)))+(((IkReal(-1.00000000000000))*(x7224)*(x7238)))+(((IkReal(-1.00000000000000))*(py)*(x7237)))+(((cj0)*(r12)*(x7224)))+(((r01)*(x7217)*(x7231)))+(((IkReal(-0.374290000000000))*(r02)*(x7219)))+(((sj6)*(x7223)*(x7226)))+(((IkReal(-1.00000000000000))*(r11)*(x7215)*(x7217)))+(((cj6)*(x7218)*(x7223)))+(((r00)*(x7225)*(x7231)))+(((x7215)*(x7216)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7219)))+(((IkReal(-1.00000000000000))*(r10)*(x7215)*(x7225)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-0.0690000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(py)*(x7221)))+(((IkReal(-1.00000000000000))*(px)*(x7237)))+(((IkReal(-1.00000000000000))*(r11)*(x7217)*(x7231)))+(((cj5)*(r02)*(x7215)))+(((cj0)*(r02)*(x7224)))+(((sj6)*(x7211)*(x7223)))+(((IkReal(-0.374290000000000))*(x7211)*(x7225)))+(((IkReal(-1.00000000000000))*(r01)*(x7215)*(x7217)))+(((x7216)*(x7231)))+(((IkReal(0.0100000000000000))*(x7219)*(x7233)))+(((IkReal(-1.00000000000000))*(r00)*(x7215)*(x7225)))+(((r12)*(sj0)*(x7224)))+(((cj6)*(x7223)*(x7228)))+(((IkReal(0.364420000000000))*(cj1)))+(((sj6)*(x7223)*(x7229)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst5; +gconst5=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst6; +gconst6=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7243=((sj5)*(sj6)); +IkReal x7244=((IkReal(1.00000000000000))*(sj0)); +IkReal x7245=((cj5)*(r12)); +IkReal x7246=((cj0)*(r00)); +IkReal x7247=((cj0)*(cj1)); +IkReal x7248=((cj6)*(sj5)); +IkReal x7249=((cj5)*(r02)); +IkReal x7250=((IkReal(1.00000000000000))*(cj1)); +IkReal x7251=((sj0)*(sj1)); +IkReal x7252=((cj0)*(sj1)); +IkReal x7253=((cj5)*(r22)); +if( IKabs(((gconst6)*(((((cj1)*(r20)*(x7243)))+(((IkReal(-1.00000000000000))*(x7249)*(x7252)))+(((IkReal(-1.00000000000000))*(x7250)*(x7253)))+(((r11)*(x7248)*(x7251)))+(((sj1)*(x7243)*(x7246)))+(((r01)*(x7248)*(x7252)))+(((cj1)*(r21)*(x7248)))+(((r10)*(x7243)*(x7251)))+(((IkReal(-1.00000000000000))*(sj1)*(x7244)*(x7245))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst6)*(((((IkReal(-1.00000000000000))*(sj1)*(x7253)))+(((r21)*(sj1)*(x7248)))+(((r20)*(sj1)*(x7243)))+(((x7247)*(x7249)))+(((IkReal(-1.00000000000000))*(r01)*(x7247)*(x7248)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x7244)*(x7248)))+(((cj1)*(sj0)*(x7245)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x7243)*(x7244)))+(((IkReal(-1.00000000000000))*(x7243)*(x7246)*(x7250))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst6)*(((((cj1)*(r20)*(x7243)))+(((IkReal(-1.00000000000000))*(x7249)*(x7252)))+(((IkReal(-1.00000000000000))*(x7250)*(x7253)))+(((r11)*(x7248)*(x7251)))+(((sj1)*(x7243)*(x7246)))+(((r01)*(x7248)*(x7252)))+(((cj1)*(r21)*(x7248)))+(((r10)*(x7243)*(x7251)))+(((IkReal(-1.00000000000000))*(sj1)*(x7244)*(x7245)))))), ((gconst6)*(((((IkReal(-1.00000000000000))*(sj1)*(x7253)))+(((r21)*(sj1)*(x7248)))+(((r20)*(sj1)*(x7243)))+(((x7247)*(x7249)))+(((IkReal(-1.00000000000000))*(r01)*(x7247)*(x7248)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x7244)*(x7248)))+(((cj1)*(sj0)*(x7245)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x7243)*(x7244)))+(((IkReal(-1.00000000000000))*(x7243)*(x7246)*(x7250))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7254=IKcos(j3); +IkReal x7255=IKsin(j3); +IkReal x7256=((IkReal(1.00000000000000))*(cj4)); +IkReal x7257=((sj0)*(sj5)); +IkReal x7258=((cj0)*(cj5)); +IkReal x7259=((cj6)*(r01)); +IkReal x7260=((r00)*(sj6)); +IkReal x7261=((cj6)*(r11)); +IkReal x7262=((cj5)*(sj0)); +IkReal x7263=((cj6)*(sj4)); +IkReal x7264=((sj4)*(sj6)); +IkReal x7265=((cj4)*(cj5)); +IkReal x7266=((cj6)*(r21)); +IkReal x7267=((r20)*(sj6)); +IkReal x7268=((r10)*(sj6)); +IkReal x7269=((cj1)*(x7254)); +IkReal x7270=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x7271=((IkReal(1.00000000000000))*(x7255)); +IkReal x7272=((IkReal(1.00000000000000))*(sj1)*(x7254)); +IkReal x7273=((cj1)*(x7271)); +IkReal x7274=((x7272)+(x7273)); +evalcond[0]=((((sj5)*(x7267)))+(((sj5)*(x7266)))+(((IkReal(-1.00000000000000))*(x7274)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((x7265)*(x7266)))+(((IkReal(-1.00000000000000))*(sj1)*(x7271)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7263)))+(x7269)+(((x7265)*(x7267)))+(((IkReal(-1.00000000000000))*(r21)*(x7264)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7269)))+(((sj1)*(x7255)))+(((r02)*(x7258)))+(((r12)*(x7262)))+(((IkReal(-1.00000000000000))*(x7259)*(x7270)))+(((IkReal(-1.00000000000000))*(x7260)*(x7270)))+(((IkReal(-1.00000000000000))*(x7257)*(x7268)))+(((IkReal(-1.00000000000000))*(x7257)*(x7261)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7263)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7263)))+(((IkReal(-1.00000000000000))*(x7256)*(x7261)*(x7262)))+(((IkReal(-1.00000000000000))*(x7256)*(x7258)*(x7259)))+(((IkReal(-1.00000000000000))*(x7256)*(x7262)*(x7268)))+(((IkReal(-1.00000000000000))*(x7274)))+(((cj0)*(r01)*(x7264)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7256)))+(((IkReal(-1.00000000000000))*(x7256)*(x7258)*(x7260)))+(((IkReal(-1.00000000000000))*(r12)*(x7256)*(x7257)))+(((r11)*(sj0)*(x7264)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7275=((sj1)*(sj5)); +IkReal x7276=((r20)*(sj6)); +IkReal x7277=((cj4)*(r22)); +IkReal x7278=((IkReal(1.00000000000000))*(cj1)); +IkReal x7279=((cj5)*(sj1)); +IkReal x7280=((cj6)*(r21)); +IkReal x7281=((cj1)*(sj5)); +IkReal x7282=((cj4)*(cj5)); +IkReal x7283=((cj6)*(r20)*(sj4)); +IkReal x7284=((r21)*(sj4)*(sj6)); +if( IKabs(((gconst5)*(((((x7276)*(x7281)))+(((x7280)*(x7281)))+(((x7275)*(x7277)))+(((sj1)*(x7283)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x7278)))+(((cj4)*(x7279)*(x7280)))+(((cj4)*(x7276)*(x7279)))+(((IkReal(-1.00000000000000))*(sj1)*(x7284))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst5)*(((((IkReal(-1.00000000000000))*(r22)*(x7279)))+(((IkReal(-1.00000000000000))*(x7278)*(x7280)*(x7282)))+(((cj1)*(x7284)))+(((x7275)*(x7280)))+(((IkReal(-1.00000000000000))*(sj5)*(x7277)*(x7278)))+(((IkReal(-1.00000000000000))*(x7276)*(x7278)*(x7282)))+(((x7275)*(x7276)))+(((IkReal(-1.00000000000000))*(x7278)*(x7283))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst5)*(((((x7276)*(x7281)))+(((x7280)*(x7281)))+(((x7275)*(x7277)))+(((sj1)*(x7283)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x7278)))+(((cj4)*(x7279)*(x7280)))+(((cj4)*(x7276)*(x7279)))+(((IkReal(-1.00000000000000))*(sj1)*(x7284)))))), ((gconst5)*(((((IkReal(-1.00000000000000))*(r22)*(x7279)))+(((IkReal(-1.00000000000000))*(x7278)*(x7280)*(x7282)))+(((cj1)*(x7284)))+(((x7275)*(x7280)))+(((IkReal(-1.00000000000000))*(sj5)*(x7277)*(x7278)))+(((IkReal(-1.00000000000000))*(x7276)*(x7278)*(x7282)))+(((x7275)*(x7276)))+(((IkReal(-1.00000000000000))*(x7278)*(x7283))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7285=IKcos(j3); +IkReal x7286=IKsin(j3); +IkReal x7287=((IkReal(1.00000000000000))*(cj4)); +IkReal x7288=((sj0)*(sj5)); +IkReal x7289=((cj0)*(cj5)); +IkReal x7290=((cj6)*(r01)); +IkReal x7291=((r00)*(sj6)); +IkReal x7292=((cj6)*(r11)); +IkReal x7293=((cj5)*(sj0)); +IkReal x7294=((cj6)*(sj4)); +IkReal x7295=((sj4)*(sj6)); +IkReal x7296=((cj4)*(cj5)); +IkReal x7297=((cj6)*(r21)); +IkReal x7298=((r20)*(sj6)); +IkReal x7299=((r10)*(sj6)); +IkReal x7300=((cj1)*(x7285)); +IkReal x7301=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x7302=((IkReal(1.00000000000000))*(x7286)); +IkReal x7303=((IkReal(1.00000000000000))*(sj1)*(x7285)); +IkReal x7304=((cj1)*(x7302)); +IkReal x7305=((x7303)+(x7304)); +evalcond[0]=((((sj5)*(x7298)))+(((sj5)*(x7297)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x7305)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x7302)))+(((IkReal(-1.00000000000000))*(r21)*(x7295)))+(((cj4)*(r22)*(sj5)))+(x7300)+(((x7296)*(x7297)))+(((r20)*(x7294)))+(((x7296)*(x7298)))); +evalcond[2]=((((sj1)*(x7286)))+(((IkReal(-1.00000000000000))*(x7288)*(x7292)))+(((IkReal(-1.00000000000000))*(x7290)*(x7301)))+(((r02)*(x7289)))+(((r12)*(x7293)))+(((IkReal(-1.00000000000000))*(x7300)))+(((IkReal(-1.00000000000000))*(x7291)*(x7301)))+(((IkReal(-1.00000000000000))*(x7288)*(x7299)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7287)*(x7292)*(x7293)))+(((IkReal(-1.00000000000000))*(x7287)*(x7293)*(x7299)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7294)))+(((IkReal(-1.00000000000000))*(x7287)*(x7289)*(x7290)))+(((IkReal(-1.00000000000000))*(r12)*(x7287)*(x7288)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7294)))+(((cj0)*(r01)*(x7295)))+(((r11)*(sj0)*(x7295)))+(((IkReal(-1.00000000000000))*(x7305)))+(((IkReal(-1.00000000000000))*(x7287)*(x7289)*(x7291)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7287)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x7306=((cj5)*(sj4)); +IkReal x7307=((IkReal(1.00000000000000))*(sj6)); +IkReal x7308=((r10)*(sj0)); +IkReal x7309=((sj4)*(sj5)); +IkReal x7310=((cj4)*(cj5)); +IkReal x7311=((IkReal(1.00000000000000))*(r02)); +IkReal x7312=((IkReal(0.374290000000000))*(cj0)); +IkReal x7313=((cj5)*(r12)); +IkReal x7314=((cj6)*(sj5)); +IkReal x7315=((cj0)*(r11)); +IkReal x7316=((cj5)*(sj0)); +IkReal x7317=((r20)*(sj6)); +IkReal x7318=((IkReal(1.00000000000000))*(sj0)); +IkReal x7319=((IkReal(1.00000000000000))*(cj6)); +IkReal x7320=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7321=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7322=((sj5)*(sj6)); +IkReal x7323=((cj0)*(r10)); +IkReal x7324=((cj4)*(cj6)); +IkReal x7325=((cj0)*(r01)); +IkReal x7326=((cj0)*(r00)); +IkReal x7327=((cj6)*(r21)); +IkReal x7328=((IkReal(0.374290000000000))*(sj0)); +IkReal x7329=((IkReal(0.374290000000000))*(sj5)); +IkReal x7330=((cj6)*(r11)); +IkReal x7331=((sj0)*(sj4)); +IkReal x7332=((cj4)*(sj5)); +IkReal x7333=((cj4)*(sj6)); +IkReal x7334=((IkReal(1.00000000000000))*(cj0)); +IkReal x7335=((r02)*(sj0)); +IkReal x7336=((r00)*(sj0)*(sj6)); +IkReal x7337=((cj6)*(r01)*(sj0)); +IkReal x7338=((r00)*(x7324)); +IkReal x7339=((r12)*(x7334)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((x7306)*(x7317)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7319)))+(((x7306)*(x7327)))+(((r22)*(x7309)))+(((r21)*(x7333)))); +evalcond[2]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.0690000000000000))*(cj1)))+(((IkReal(0.374290000000000))*(r21)*(x7314)))+(((IkReal(-1.00000000000000))*(x7317)*(x7320)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x7321)))+(pz)+(((IkReal(-1.00000000000000))*(x7320)*(x7327)))+(((x7317)*(x7329)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x7307)*(x7323)))+(((IkReal(-1.00000000000000))*(x7311)*(x7316)))+(((r00)*(sj0)*(x7322)))+(((r01)*(sj0)*(x7314)))+(((cj0)*(x7313)))+(((IkReal(-1.00000000000000))*(x7314)*(x7315)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x7306)*(x7315)*(x7319)))+(((x7323)*(x7324)))+(((r01)*(sj0)*(x7333)))+(((x7306)*(x7337)))+(((IkReal(-1.00000000000000))*(cj4)*(x7307)*(x7315)))+(((x7309)*(x7335)))+(((IkReal(-1.00000000000000))*(x7309)*(x7339)))+(((x7306)*(x7336)))+(((IkReal(-1.00000000000000))*(x7318)*(x7338)))+(((IkReal(-1.00000000000000))*(x7306)*(x7307)*(x7323)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7307)*(x7310)*(x7323)))+(((sj4)*(sj6)*(x7315)))+(((x7310)*(x7337)))+(((cj6)*(r00)*(x7331)))+(((IkReal(-1.00000000000000))*(x7332)*(x7339)))+(((x7332)*(x7335)))+(((IkReal(-1.00000000000000))*(x7310)*(x7315)*(x7319)))+(((IkReal(-1.00000000000000))*(sj4)*(x7319)*(x7323)))+(((x7310)*(x7336)))+(((IkReal(-1.00000000000000))*(r01)*(x7307)*(x7331)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x7307)*(x7325)))+(((x7324)*(x7326)))+(((x7308)*(x7324)))+(((IkReal(-1.00000000000000))*(x7306)*(x7307)*(x7326)))+(((IkReal(-1.00000000000000))*(r12)*(x7309)*(x7318)))+(((IkReal(-1.00000000000000))*(x7306)*(x7307)*(x7308)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x7307)))+(((IkReal(-1.00000000000000))*(x7306)*(x7318)*(x7330)))+(((IkReal(-1.00000000000000))*(cj0)*(x7309)*(x7311)))+(((IkReal(-1.00000000000000))*(x7306)*(x7319)*(x7325)))); +evalcond[7]=((((sj6)*(x7320)*(x7323)))+(((IkReal(-1.00000000000000))*(x7321)*(x7335)))+(((IkReal(-1.00000000000000))*(r11)*(x7312)*(x7314)))+(((cj0)*(r12)*(x7321)))+(((r01)*(x7314)*(x7328)))+(((x7312)*(x7313)))+(((r00)*(x7322)*(x7328)))+(((IkReal(-1.00000000000000))*(r10)*(x7312)*(x7322)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x7316)))+(((IkReal(-1.00000000000000))*(py)*(x7334)))+(((px)*(sj0)))+(((cj6)*(x7315)*(x7320)))+(((IkReal(-0.374290000000000))*(r02)*(x7316)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7316)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-0.374290000000000))*(x7308)*(x7322)))+(((cj5)*(r02)*(x7312)))+(((sj6)*(x7308)*(x7320)))+(((IkReal(0.0690000000000000))*(sj1)))+(((x7313)*(x7328)))+(((sj6)*(x7320)*(x7326)))+(((IkReal(-1.00000000000000))*(r11)*(x7314)*(x7328)))+(((r12)*(sj0)*(x7321)))+(((IkReal(-1.00000000000000))*(r00)*(x7312)*(x7322)))+(((IkReal(-1.00000000000000))*(py)*(x7318)))+(((IkReal(-1.00000000000000))*(px)*(x7334)))+(((cj0)*(r02)*(x7321)))+(((IkReal(-1.00000000000000))*(r01)*(x7312)*(x7314)))+(((IkReal(0.0100000000000000))*(x7316)*(x7330)))+(((cj6)*(x7320)*(x7325)))+(((IkReal(0.364420000000000))*(cj1)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst7; +gconst7=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst8; +gconst8=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7340=((IkReal(1.00000000000000))*(sj0)); +IkReal x7341=((cj6)*(r21)); +IkReal x7342=((cj0)*(r00)); +IkReal x7343=((cj5)*(sj1)); +IkReal x7344=((r12)*(sj0)); +IkReal x7345=((cj1)*(cj5)); +IkReal x7346=((cj0)*(r02)); +IkReal x7347=((sj1)*(sj5)); +IkReal x7348=((cj6)*(r11)); +IkReal x7349=((cj1)*(sj5)); +IkReal x7350=((sj6)*(x7347)); +IkReal x7351=((IkReal(1.00000000000000))*(x7349)); +IkReal x7352=((cj0)*(cj6)*(r01)); +if( IKabs(((gconst8)*(((((x7343)*(x7344)))+(((IkReal(-1.00000000000000))*(x7342)*(x7350)))+(((IkReal(-1.00000000000000))*(x7341)*(x7351)))+(((IkReal(-1.00000000000000))*(x7340)*(x7347)*(x7348)))+(((x7343)*(x7346)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x7351)))+(((r22)*(x7345)))+(((IkReal(-1.00000000000000))*(x7347)*(x7352)))+(((IkReal(-1.00000000000000))*(r10)*(x7340)*(x7350))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst8)*(((((x7341)*(x7347)))+(((r20)*(x7350)))+(((x7344)*(x7345)))+(((IkReal(-1.00000000000000))*(sj6)*(x7342)*(x7351)))+(((IkReal(-1.00000000000000))*(x7340)*(x7348)*(x7349)))+(((x7345)*(x7346)))+(((IkReal(-1.00000000000000))*(r22)*(x7343)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x7340)*(x7349)))+(((IkReal(-1.00000000000000))*(x7351)*(x7352))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst8)*(((((x7343)*(x7344)))+(((IkReal(-1.00000000000000))*(x7342)*(x7350)))+(((IkReal(-1.00000000000000))*(x7341)*(x7351)))+(((IkReal(-1.00000000000000))*(x7340)*(x7347)*(x7348)))+(((x7343)*(x7346)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x7351)))+(((r22)*(x7345)))+(((IkReal(-1.00000000000000))*(x7347)*(x7352)))+(((IkReal(-1.00000000000000))*(r10)*(x7340)*(x7350)))))), ((gconst8)*(((((x7341)*(x7347)))+(((r20)*(x7350)))+(((x7344)*(x7345)))+(((IkReal(-1.00000000000000))*(sj6)*(x7342)*(x7351)))+(((IkReal(-1.00000000000000))*(x7340)*(x7348)*(x7349)))+(((x7345)*(x7346)))+(((IkReal(-1.00000000000000))*(r22)*(x7343)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x7340)*(x7349)))+(((IkReal(-1.00000000000000))*(x7351)*(x7352))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7353=IKsin(j3); +IkReal x7354=IKcos(j3); +IkReal x7355=((IkReal(1.00000000000000))*(cj4)); +IkReal x7356=((sj0)*(sj5)); +IkReal x7357=((cj0)*(cj5)); +IkReal x7358=((cj6)*(r01)); +IkReal x7359=((r00)*(sj6)); +IkReal x7360=((cj6)*(r11)); +IkReal x7361=((cj5)*(sj0)); +IkReal x7362=((cj6)*(sj4)); +IkReal x7363=((sj4)*(sj6)); +IkReal x7364=((cj4)*(cj5)); +IkReal x7365=((cj6)*(r21)); +IkReal x7366=((r20)*(sj6)); +IkReal x7367=((r10)*(sj6)); +IkReal x7368=((cj1)*(x7353)); +IkReal x7369=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x7370=((IkReal(1.00000000000000))*(x7354)); +IkReal x7371=((IkReal(1.00000000000000))*(sj1)*(x7353)); +IkReal x7372=((cj1)*(x7370)); +IkReal x7373=((x7372)+(x7371)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x7370)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7365)))+(((sj5)*(x7366)))+(x7368)); +evalcond[1]=((((IkReal(-1.00000000000000))*(x7373)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7362)))+(((x7364)*(x7365)))+(((IkReal(-1.00000000000000))*(r21)*(x7363)))+(((x7364)*(x7366)))); +evalcond[2]=((((r12)*(x7361)))+(((IkReal(-1.00000000000000))*(x7356)*(x7367)))+(((IkReal(-1.00000000000000))*(x7373)))+(((IkReal(-1.00000000000000))*(x7359)*(x7369)))+(((IkReal(-1.00000000000000))*(x7358)*(x7369)))+(((r02)*(x7357)))+(((IkReal(-1.00000000000000))*(x7356)*(x7360)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7355)*(x7357)*(x7358)))+(((r11)*(sj0)*(x7363)))+(((IkReal(-1.00000000000000))*(x7355)*(x7357)*(x7359)))+(((IkReal(-1.00000000000000))*(r12)*(x7355)*(x7356)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7355)))+(((IkReal(-1.00000000000000))*(x7355)*(x7360)*(x7361)))+(((cj0)*(r01)*(x7363)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7362)))+(((IkReal(-1.00000000000000))*(x7355)*(x7361)*(x7367)))+(((sj1)*(x7354)))+(((IkReal(-1.00000000000000))*(x7368)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7362)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7374=((sj1)*(sj6)); +IkReal x7375=((r20)*(sj5)); +IkReal x7376=((IkReal(1.00000000000000))*(r21)); +IkReal x7377=((cj1)*(cj6)); +IkReal x7378=((r20)*(sj4)); +IkReal x7379=((cj6)*(sj1)); +IkReal x7380=((cj4)*(cj5)); +IkReal x7381=((cj1)*(sj6)); +IkReal x7382=((cj5)*(r22)); +IkReal x7383=((cj4)*(r22)*(sj5)); +if( IKabs(((gconst7)*(((((cj1)*(x7382)))+(((IkReal(-1.00000000000000))*(sj4)*(x7374)*(x7376)))+(((IkReal(-1.00000000000000))*(x7375)*(x7381)))+(((r20)*(x7374)*(x7380)))+(((x7378)*(x7379)))+(((sj1)*(x7383)))+(((r21)*(x7379)*(x7380)))+(((IkReal(-1.00000000000000))*(sj5)*(x7376)*(x7377))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst7)*(((((r21)*(x7377)*(x7380)))+(((cj1)*(x7383)))+(((x7374)*(x7375)))+(((x7377)*(x7378)))+(((r20)*(x7380)*(x7381)))+(((r21)*(sj5)*(x7379)))+(((IkReal(-1.00000000000000))*(sj1)*(x7382)))+(((IkReal(-1.00000000000000))*(sj4)*(x7376)*(x7381))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst7)*(((((cj1)*(x7382)))+(((IkReal(-1.00000000000000))*(sj4)*(x7374)*(x7376)))+(((IkReal(-1.00000000000000))*(x7375)*(x7381)))+(((r20)*(x7374)*(x7380)))+(((x7378)*(x7379)))+(((sj1)*(x7383)))+(((r21)*(x7379)*(x7380)))+(((IkReal(-1.00000000000000))*(sj5)*(x7376)*(x7377)))))), ((gconst7)*(((((r21)*(x7377)*(x7380)))+(((cj1)*(x7383)))+(((x7374)*(x7375)))+(((x7377)*(x7378)))+(((r20)*(x7380)*(x7381)))+(((r21)*(sj5)*(x7379)))+(((IkReal(-1.00000000000000))*(sj1)*(x7382)))+(((IkReal(-1.00000000000000))*(sj4)*(x7376)*(x7381))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7384=IKsin(j3); +IkReal x7385=IKcos(j3); +IkReal x7386=((IkReal(1.00000000000000))*(cj4)); +IkReal x7387=((sj0)*(sj5)); +IkReal x7388=((cj0)*(cj5)); +IkReal x7389=((cj6)*(r01)); +IkReal x7390=((r00)*(sj6)); +IkReal x7391=((cj6)*(r11)); +IkReal x7392=((cj5)*(sj0)); +IkReal x7393=((cj6)*(sj4)); +IkReal x7394=((sj4)*(sj6)); +IkReal x7395=((cj4)*(cj5)); +IkReal x7396=((cj6)*(r21)); +IkReal x7397=((r20)*(sj6)); +IkReal x7398=((r10)*(sj6)); +IkReal x7399=((cj1)*(x7384)); +IkReal x7400=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x7401=((IkReal(1.00000000000000))*(x7385)); +IkReal x7402=((IkReal(1.00000000000000))*(sj1)*(x7384)); +IkReal x7403=((cj1)*(x7401)); +IkReal x7404=((x7403)+(x7402)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x7401)))+(((sj5)*(x7396)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x7399)+(((sj5)*(x7397)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x7394)))+(((x7395)*(x7396)))+(((r20)*(x7393)))+(((IkReal(-1.00000000000000))*(x7404)))+(((cj4)*(r22)*(sj5)))+(((x7395)*(x7397)))); +evalcond[2]=((((r02)*(x7388)))+(((IkReal(-1.00000000000000))*(x7404)))+(((r12)*(x7392)))+(((IkReal(-1.00000000000000))*(x7390)*(x7400)))+(((IkReal(-1.00000000000000))*(x7389)*(x7400)))+(((IkReal(-1.00000000000000))*(x7387)*(x7398)))+(((IkReal(-1.00000000000000))*(x7387)*(x7391)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7386)*(x7391)*(x7392)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7393)))+(((IkReal(-1.00000000000000))*(x7386)*(x7388)*(x7389)))+(((IkReal(-1.00000000000000))*(x7386)*(x7388)*(x7390)))+(((sj1)*(x7385)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7386)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7393)))+(((cj0)*(r01)*(x7394)))+(((r11)*(sj0)*(x7394)))+(((IkReal(-1.00000000000000))*(x7386)*(x7392)*(x7398)))+(((IkReal(-1.00000000000000))*(x7399)))+(((IkReal(-1.00000000000000))*(r12)*(x7386)*(x7387)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x7405=((IkReal(1.00000000000000))*(cj0)); +IkReal x7406=((cj4)*(sj6)); +IkReal x7407=((sj0)*(sj4)); +IkReal x7408=((cj5)*(sj6)); +IkReal x7409=((sj4)*(sj5)); +IkReal x7410=((r12)*(sj5)); +IkReal x7411=((IkReal(0.374290000000000))*(cj5)); +IkReal x7412=((r02)*(sj0)); +IkReal x7413=((cj6)*(r21)); +IkReal x7414=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7415=((IkReal(1.00000000000000))*(sj0)); +IkReal x7416=((cj0)*(r10)); +IkReal x7417=((cj4)*(cj6)); +IkReal x7418=((r00)*(sj0)); +IkReal x7419=((IkReal(0.374290000000000))*(sj5)); +IkReal x7420=((cj0)*(r00)); +IkReal x7421=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7422=((cj0)*(r02)); +IkReal x7423=((cj5)*(sj4)); +IkReal x7424=((cj6)*(r01)); +IkReal x7425=((cj6)*(r11)); +IkReal x7426=((r10)*(sj0)); +IkReal x7427=((sj6)*(x7419)); +IkReal x7428=((cj0)*(cj6)*(x7419)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj2)))+(((x7413)*(x7423)))+(((r20)*(sj4)*(x7408)))+(((r21)*(x7406)))+(((r22)*(x7409)))+(((IkReal(-1.00000000000000))*(r20)*(x7417)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x7421)))+(((IkReal(-1.00000000000000))*(x7413)*(x7414)))+(pz)+(((r20)*(x7427)))+(((x7413)*(x7419)))+(((IkReal(0.0690000000000000))*(cj2)))+(((IkReal(-0.0100000000000000))*(r20)*(x7408)))+(((IkReal(-1.00000000000000))*(r22)*(x7411)))); +evalcond[3]=((((r01)*(sj0)*(x7406)))+(((r00)*(x7407)*(x7408)))+(((cj5)*(x7407)*(x7424)))+(((x7416)*(x7417)))+(((IkReal(-1.00000000000000))*(r11)*(x7405)*(x7406)))+(cj2)+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7405)*(x7408)))+(((IkReal(-1.00000000000000))*(r00)*(x7415)*(x7417)))+(((r02)*(sj5)*(x7407)))+(((IkReal(-1.00000000000000))*(r12)*(x7405)*(x7409)))+(((IkReal(-1.00000000000000))*(x7405)*(x7423)*(x7425)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r11)*(x7406)*(x7415)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7405)*(x7408)))+(((IkReal(-1.00000000000000))*(r02)*(x7405)*(x7409)))+(((x7417)*(x7420)))+(((IkReal(-1.00000000000000))*(r10)*(x7407)*(x7408)))+(((IkReal(-1.00000000000000))*(x7405)*(x7423)*(x7424)))+(((IkReal(-1.00000000000000))*(x7407)*(x7410)))+(((x7417)*(x7426)))+(((IkReal(-1.00000000000000))*(cj5)*(x7407)*(x7425)))+(((IkReal(-1.00000000000000))*(r01)*(x7405)*(x7406)))); +evalcond[5]=((((IkReal(-0.0100000000000000))*(x7408)*(x7418)))+(((IkReal(0.0100000000000000))*(x7408)*(x7416)))+(((IkReal(0.0100000000000000))*(cj0)*(x7410)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(py)*(x7405)))+(((cj0)*(r12)*(x7411)))+(((IkReal(-1.00000000000000))*(cj0)*(x7419)*(x7425)))+(((IkReal(-1.00000000000000))*(x7412)*(x7421)))+(((sj0)*(x7419)*(x7424)))+(((x7418)*(x7427)))+(((IkReal(-1.00000000000000))*(sj0)*(x7414)*(x7424)))+(((IkReal(-1.00000000000000))*(x7416)*(x7427)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x7411)*(x7412)))+(((cj0)*(x7414)*(x7425)))); +evalcond[6]=((IkReal(0.433420000000000))+(((cj0)*(x7414)*(x7424)))+(((IkReal(0.0100000000000000))*(x7408)*(x7420)))+(((IkReal(0.0100000000000000))*(sj0)*(x7410)))+(((IkReal(-1.00000000000000))*(x7420)*(x7427)))+(((x7421)*(x7422)))+(((IkReal(-1.00000000000000))*(px)*(x7405)))+(((IkReal(-1.00000000000000))*(py)*(x7415)))+(((IkReal(-1.00000000000000))*(x7426)*(x7427)))+(((IkReal(-1.00000000000000))*(cj0)*(x7419)*(x7424)))+(((IkReal(-1.00000000000000))*(sj0)*(x7419)*(x7425)))+(((x7411)*(x7422)))+(((IkReal(0.0100000000000000))*(x7408)*(x7426)))+(((sj0)*(x7414)*(x7425)))+(((r12)*(sj0)*(x7411)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst9; +gconst9=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x7429=((cj5)*(sj4)); +IkReal x7430=((IkReal(1.00000000000000))*(sj6)); +IkReal x7431=((r10)*(sj0)); +IkReal x7432=((sj4)*(sj5)); +IkReal x7433=((cj5)*(cj6)); +IkReal x7434=((r01)*(sj0)); +IkReal x7435=((IkReal(1.00000000000000))*(r02)); +IkReal x7436=((IkReal(0.374290000000000))*(cj0)); +IkReal x7437=((cj5)*(r12)); +IkReal x7438=((cj6)*(sj5)); +IkReal x7439=((cj0)*(r11)); +IkReal x7440=((cj5)*(sj0)); +IkReal x7441=((r20)*(sj6)); +IkReal x7442=((IkReal(1.00000000000000))*(sj0)); +IkReal x7443=((cj4)*(cj5)); +IkReal x7444=((IkReal(1.00000000000000))*(cj6)); +IkReal x7445=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7446=((sj5)*(sj6)); +IkReal x7447=((cj0)*(r10)); +IkReal x7448=((cj4)*(cj6)); +IkReal x7449=((cj0)*(r01)); +IkReal x7450=((IkReal(1.00000000000000))*(cj4)); +IkReal x7451=((cj0)*(r00)); +IkReal x7452=((IkReal(0.374290000000000))*(sj0)); +IkReal x7453=((cj0)*(r12)); +IkReal x7454=((IkReal(0.374290000000000))*(sj5)); +IkReal x7455=((cj4)*(sj6)); +IkReal x7456=((IkReal(1.00000000000000))*(cj0)); +IkReal x7457=((r02)*(sj0)); +IkReal x7458=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7459=((r11)*(sj0)); +IkReal x7460=((r00)*(sj0)*(sj6)); +IkReal x7461=((r00)*(x7448)); +IkReal x7462=((sj6)*(x7458)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x7429)*(x7441)))+(((r21)*(x7455)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7444)))+(((r22)*(x7432)))+(((cj6)*(r21)*(x7429)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x7438)))+(((IkReal(-1.00000000000000))*(x7441)*(x7458)))+(((IkReal(-0.0100000000000000))*(r21)*(x7433)))+(((x7441)*(x7454)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x7445)))); +evalcond[3]=((((r00)*(sj0)*(x7446)))+(((IkReal(-1.00000000000000))*(x7438)*(x7439)))+(((x7434)*(x7438)))+(((IkReal(-1.00000000000000))*(sj5)*(x7430)*(x7447)))+(((cj0)*(x7437)))+(((IkReal(-1.00000000000000))*(x7435)*(x7440)))); +evalcond[4]=((IkReal(1.00000000000000))+(((x7447)*(x7448)))+(((IkReal(-1.00000000000000))*(x7429)*(x7430)*(x7447)))+(((x7434)*(x7455)))+(((IkReal(-1.00000000000000))*(x7442)*(x7461)))+(((IkReal(-1.00000000000000))*(x7432)*(x7453)))+(((cj6)*(x7429)*(x7434)))+(((x7432)*(x7457)))+(((IkReal(-1.00000000000000))*(cj4)*(x7430)*(x7439)))+(((IkReal(-1.00000000000000))*(x7429)*(x7439)*(x7444)))+(((x7429)*(x7460)))); +evalcond[5]=((((cj4)*(sj5)*(x7457)))+(((cj4)*(x7433)*(x7434)))+(((IkReal(-1.00000000000000))*(sj5)*(x7450)*(x7453)))+(((r00)*(x7440)*(x7455)))+(((IkReal(-1.00000000000000))*(sj4)*(x7430)*(x7434)))+(((IkReal(-1.00000000000000))*(x7430)*(x7443)*(x7447)))+(((IkReal(-1.00000000000000))*(sj4)*(x7444)*(x7447)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x7433)*(x7439)*(x7450)))+(((sj4)*(sj6)*(x7439)))); +evalcond[6]=((((x7431)*(x7448)))+(((IkReal(-1.00000000000000))*(x7429)*(x7430)*(x7451)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7429)*(x7442)))+(((IkReal(-1.00000000000000))*(r12)*(x7432)*(x7442)))+(((IkReal(-1.00000000000000))*(cj4)*(x7430)*(x7459)))+(((IkReal(-1.00000000000000))*(x7429)*(x7444)*(x7449)))+(((x7448)*(x7451)))+(((IkReal(-1.00000000000000))*(cj0)*(x7432)*(x7435)))+(((IkReal(-1.00000000000000))*(x7429)*(x7430)*(x7431)))+(((IkReal(-1.00000000000000))*(cj4)*(x7430)*(x7449)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(py)*(x7456)))+(((IkReal(-1.00000000000000))*(r11)*(x7436)*(x7438)))+(((IkReal(-0.374290000000000))*(r02)*(x7440)))+(((IkReal(0.0100000000000000))*(x7433)*(x7439)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7440)))+(((IkReal(-0.0100000000000000))*(x7433)*(x7434)))+(((x7436)*(x7437)))+(((r00)*(x7446)*(x7452)))+(((x7447)*(x7462)))+(((px)*(sj0)))+(((IkReal(0.374290000000000))*(x7434)*(x7438)))+(((IkReal(-1.00000000000000))*(x7445)*(x7457)))+(((IkReal(-1.00000000000000))*(r10)*(x7436)*(x7446)))+(((x7445)*(x7453)))); +evalcond[8]=((IkReal(0.433420000000000))+(((cj5)*(r02)*(x7436)))+(((IkReal(-1.00000000000000))*(py)*(x7442)))+(((IkReal(-0.374290000000000))*(x7431)*(x7446)))+(((x7431)*(x7462)))+(((x7451)*(x7462)))+(((IkReal(-1.00000000000000))*(r01)*(x7436)*(x7438)))+(((IkReal(-1.00000000000000))*(r00)*(x7436)*(x7446)))+(((IkReal(0.0100000000000000))*(x7433)*(x7449)))+(((IkReal(0.0100000000000000))*(x7433)*(x7459)))+(((IkReal(-1.00000000000000))*(r11)*(x7438)*(x7452)))+(((x7437)*(x7452)))+(((cj0)*(r02)*(x7445)))+(((IkReal(-1.00000000000000))*(px)*(x7456)))+(((r12)*(sj0)*(x7445)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7463=((IkReal(1.00000000000000))*(cj4)); +IkReal x7464=((cj6)*(r21)); +IkReal x7465=((r20)*(sj6)); +if( IKabs(((((sj5)*(x7465)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7464))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7464)))+(((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7465)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x7465)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7464)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7464)))+(((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7465)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x7465)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7464)))), ((((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7464)))+(((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7465)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7466=IKcos(j3); +IkReal x7467=((IkReal(1.00000000000000))*(cj4)); +IkReal x7468=((sj0)*(sj5)); +IkReal x7469=((cj0)*(cj5)); +IkReal x7470=((cj6)*(r01)); +IkReal x7471=((r00)*(sj6)); +IkReal x7472=((cj6)*(r11)); +IkReal x7473=((cj5)*(sj0)); +IkReal x7474=((cj6)*(sj4)); +IkReal x7475=((sj4)*(sj6)); +IkReal x7476=((cj4)*(cj5)); +IkReal x7477=((cj6)*(r21)); +IkReal x7478=((r20)*(sj6)); +IkReal x7479=((r10)*(sj6)); +IkReal x7480=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x7481=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x7477)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7478)))+(((IkReal(-1.00000000000000))*(x7480)))); +evalcond[1]=((((x7476)*(x7477)))+(((x7476)*(x7478)))+(((IkReal(-1.00000000000000))*(r21)*(x7475)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7474)))+(x7466)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7471)*(x7481)))+(((IkReal(-1.00000000000000))*(x7468)*(x7472)))+(((IkReal(-1.00000000000000))*(x7468)*(x7479)))+(((IkReal(-1.00000000000000))*(x7470)*(x7481)))+(((IkReal(-1.00000000000000))*(x7466)))+(((r12)*(x7473)))+(((r02)*(x7469)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x7467)*(x7468)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7467)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7474)))+(((IkReal(-1.00000000000000))*(x7467)*(x7469)*(x7470)))+(((r11)*(sj0)*(x7475)))+(((IkReal(-1.00000000000000))*(x7467)*(x7472)*(x7473)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7474)))+(((IkReal(-1.00000000000000))*(x7480)))+(((cj0)*(r01)*(x7475)))+(((IkReal(-1.00000000000000))*(x7467)*(x7473)*(x7479)))+(((IkReal(-1.00000000000000))*(x7467)*(x7469)*(x7471)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7482=((cj5)*(sj4)); +IkReal x7483=((IkReal(1.00000000000000))*(sj6)); +IkReal x7484=((r10)*(sj0)); +IkReal x7485=((sj4)*(sj5)); +IkReal x7486=((cj5)*(cj6)); +IkReal x7487=((r01)*(sj0)); +IkReal x7488=((IkReal(1.00000000000000))*(r02)); +IkReal x7489=((IkReal(0.374290000000000))*(cj0)); +IkReal x7490=((cj5)*(r12)); +IkReal x7491=((cj6)*(sj5)); +IkReal x7492=((cj0)*(r11)); +IkReal x7493=((cj5)*(sj0)); +IkReal x7494=((r20)*(sj6)); +IkReal x7495=((IkReal(1.00000000000000))*(sj0)); +IkReal x7496=((cj4)*(cj5)); +IkReal x7497=((IkReal(1.00000000000000))*(cj6)); +IkReal x7498=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7499=((sj5)*(sj6)); +IkReal x7500=((cj0)*(r10)); +IkReal x7501=((cj4)*(cj6)); +IkReal x7502=((cj0)*(r01)); +IkReal x7503=((IkReal(1.00000000000000))*(cj4)); +IkReal x7504=((cj0)*(r00)); +IkReal x7505=((IkReal(0.374290000000000))*(sj0)); +IkReal x7506=((cj0)*(r12)); +IkReal x7507=((IkReal(0.374290000000000))*(sj5)); +IkReal x7508=((cj4)*(sj6)); +IkReal x7509=((IkReal(1.00000000000000))*(cj0)); +IkReal x7510=((r02)*(sj0)); +IkReal x7511=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7512=((r11)*(sj0)); +IkReal x7513=((r00)*(sj0)*(sj6)); +IkReal x7514=((r00)*(x7501)); +IkReal x7515=((sj6)*(x7511)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x7508)))+(((r22)*(x7485)))+(((x7482)*(x7494)))+(((cj6)*(r21)*(x7482)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7497)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((x7494)*(x7507)))+(((IkReal(0.374290000000000))*(r21)*(x7491)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x7498)))+(pz)+(((IkReal(-1.00000000000000))*(x7494)*(x7511)))+(((IkReal(-0.0100000000000000))*(r21)*(x7486)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7491)*(x7492)))+(((x7487)*(x7491)))+(((IkReal(-1.00000000000000))*(x7488)*(x7493)))+(((r00)*(sj0)*(x7499)))+(((cj0)*(x7490)))+(((IkReal(-1.00000000000000))*(sj5)*(x7483)*(x7500)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x7482)*(x7492)*(x7497)))+(((x7485)*(x7510)))+(((IkReal(-1.00000000000000))*(cj4)*(x7483)*(x7492)))+(((cj6)*(x7482)*(x7487)))+(((x7500)*(x7501)))+(((x7482)*(x7513)))+(((IkReal(-1.00000000000000))*(x7485)*(x7506)))+(((IkReal(-1.00000000000000))*(x7482)*(x7483)*(x7500)))+(((IkReal(-1.00000000000000))*(x7495)*(x7514)))+(((x7487)*(x7508)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7483)*(x7496)*(x7500)))+(((r00)*(x7493)*(x7508)))+(((cj4)*(sj5)*(x7510)))+(((cj4)*(x7486)*(x7487)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((sj4)*(sj6)*(x7492)))+(((IkReal(-1.00000000000000))*(sj4)*(x7497)*(x7500)))+(((IkReal(-1.00000000000000))*(x7486)*(x7492)*(x7503)))+(((IkReal(-1.00000000000000))*(sj5)*(x7503)*(x7506)))+(((IkReal(-1.00000000000000))*(sj4)*(x7483)*(x7487)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x7483)*(x7512)))+(((x7484)*(x7501)))+(((IkReal(-1.00000000000000))*(cj4)*(x7483)*(x7502)))+(((IkReal(-1.00000000000000))*(x7482)*(x7483)*(x7504)))+(((x7501)*(x7504)))+(((IkReal(-1.00000000000000))*(x7482)*(x7483)*(x7484)))+(((IkReal(-1.00000000000000))*(r12)*(x7485)*(x7495)))+(((IkReal(-1.00000000000000))*(cj0)*(x7485)*(x7488)))+(((IkReal(-1.00000000000000))*(x7482)*(x7497)*(x7502)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7482)*(x7495)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x7498)*(x7510)))+(((IkReal(-1.00000000000000))*(r10)*(x7489)*(x7499)))+(((x7489)*(x7490)))+(((IkReal(-0.374290000000000))*(r02)*(x7493)))+(((IkReal(-1.00000000000000))*(py)*(x7509)))+(((x7500)*(x7515)))+(((IkReal(-0.0100000000000000))*(x7486)*(x7487)))+(((IkReal(-1.00000000000000))*(r11)*(x7489)*(x7491)))+(((IkReal(0.374290000000000))*(x7487)*(x7491)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7493)))+(((x7498)*(x7506)))+(((r00)*(x7499)*(x7505)))+(((IkReal(0.0100000000000000))*(x7486)*(x7492)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x7490)*(x7505)))+(((r12)*(sj0)*(x7498)))+(((x7504)*(x7515)))+(((IkReal(-1.00000000000000))*(r11)*(x7491)*(x7505)))+(((cj0)*(r02)*(x7498)))+(((IkReal(-1.00000000000000))*(r00)*(x7489)*(x7499)))+(((IkReal(-1.00000000000000))*(py)*(x7495)))+(((IkReal(-1.00000000000000))*(r01)*(x7489)*(x7491)))+(((IkReal(-0.374290000000000))*(x7484)*(x7499)))+(((x7484)*(x7515)))+(((cj5)*(r02)*(x7489)))+(((IkReal(0.0100000000000000))*(x7486)*(x7502)))+(((IkReal(0.0100000000000000))*(x7486)*(x7512)))+(((IkReal(-1.00000000000000))*(px)*(x7509)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7516=((IkReal(1.00000000000000))*(r21)); +IkReal x7517=((cj4)*(cj5)); +IkReal x7518=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7516)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj5)*(x7518))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r21)*(x7517)))+(((x7517)*(x7518)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7516))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7516)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj5)*(x7518)))))+IKsqr(((((cj6)*(r21)*(x7517)))+(((x7517)*(x7518)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7516)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7516)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj5)*(x7518)))), ((((cj6)*(r21)*(x7517)))+(((x7517)*(x7518)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7516))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7519=IKsin(j3); +IkReal x7520=((IkReal(1.00000000000000))*(cj4)); +IkReal x7521=((sj0)*(sj5)); +IkReal x7522=((cj0)*(cj5)); +IkReal x7523=((cj6)*(r01)); +IkReal x7524=((r00)*(sj6)); +IkReal x7525=((cj6)*(r11)); +IkReal x7526=((cj5)*(sj0)); +IkReal x7527=((cj6)*(sj4)); +IkReal x7528=((sj4)*(sj6)); +IkReal x7529=((cj4)*(cj5)); +IkReal x7530=((cj6)*(r21)); +IkReal x7531=((r20)*(sj6)); +IkReal x7532=((r10)*(sj6)); +IkReal x7533=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x7534=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((x7519)+(((sj5)*(x7530)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7531)))); +evalcond[1]=((((r20)*(x7527)))+(((x7529)*(x7531)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x7528)))+(((x7529)*(x7530)))+(((IkReal(-1.00000000000000))*(x7533)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7521)*(x7532)))+(((IkReal(-1.00000000000000))*(x7524)*(x7534)))+(((r02)*(x7522)))+(((IkReal(-1.00000000000000))*(x7521)*(x7525)))+(((IkReal(-1.00000000000000))*(x7523)*(x7534)))+(((r12)*(x7526)))+(((IkReal(-1.00000000000000))*(x7533)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x7520)*(x7521)))+(((IkReal(-1.00000000000000))*(x7520)*(x7526)*(x7532)))+(((IkReal(-1.00000000000000))*(x7519)))+(((IkReal(-1.00000000000000))*(x7520)*(x7522)*(x7523)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7527)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7527)))+(((r11)*(sj0)*(x7528)))+(((IkReal(-1.00000000000000))*(x7520)*(x7525)*(x7526)))+(((IkReal(-1.00000000000000))*(x7520)*(x7522)*(x7524)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7520)))+(((cj0)*(r01)*(x7528)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7535=((IkReal(1.00000000000000))*(cj0)); +IkReal x7536=((cj4)*(sj6)); +IkReal x7537=((sj0)*(sj4)); +IkReal x7538=((cj5)*(sj6)); +IkReal x7539=((sj4)*(sj5)); +IkReal x7540=((r12)*(sj5)); +IkReal x7541=((IkReal(0.374290000000000))*(cj5)); +IkReal x7542=((r02)*(sj0)); +IkReal x7543=((r20)*(sj4)); +IkReal x7544=((IkReal(1.00000000000000))*(sj0)); +IkReal x7545=((IkReal(1.00000000000000))*(cj5)); +IkReal x7546=((cj0)*(r10)); +IkReal x7547=((cj4)*(cj6)); +IkReal x7548=((r00)*(sj0)); +IkReal x7549=((cj6)*(r21)); +IkReal x7550=((IkReal(0.374290000000000))*(sj5)); +IkReal x7551=((cj0)*(r00)); +IkReal x7552=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7553=((cj0)*(r02)); +IkReal x7554=((cj5)*(sj4)); +IkReal x7555=((cj6)*(r01)); +IkReal x7556=((cj6)*(r11)); +IkReal x7557=((r01)*(sj0)); +IkReal x7558=((r10)*(sj0)); +IkReal x7559=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x7560=((sj6)*(x7550)); +IkReal x7561=((cj0)*(cj6)*(x7550)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x7545)))+(((r20)*(sj5)*(sj6)))+(((sj5)*(x7549)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x7549)*(x7554)))+(((r22)*(x7539)))+(((r21)*(x7536)))+(((x7538)*(x7543)))+(((IkReal(-1.00000000000000))*(r20)*(x7547)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x7538)))+(((IkReal(-0.0100000000000000))*(cj5)*(x7549)))+(((x7549)*(x7550)))+(((IkReal(-1.00000000000000))*(r22)*(x7552)))+(((IkReal(-1.00000000000000))*(r22)*(x7541)))+(pz)+(((r20)*(x7560)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x7547)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x7536)))+(((cj6)*(x7543)))); +evalcond[5]=((((r00)*(x7537)*(x7538)))+(((IkReal(-1.00000000000000))*(x7535)*(x7554)*(x7556)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7535)*(x7538)))+(((cj5)*(x7537)*(x7555)))+(((IkReal(-1.00000000000000))*(r12)*(x7535)*(x7539)))+(((IkReal(-1.00000000000000))*(r11)*(x7535)*(x7536)))+(((x7546)*(x7547)))+(((IkReal(-1.00000000000000))*(r00)*(x7544)*(x7547)))+(((r02)*(sj5)*(x7537)))+(((x7536)*(x7557)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r10)*(x7537)*(x7538)))+(((IkReal(-1.00000000000000))*(r01)*(x7535)*(x7536)))+(((IkReal(-1.00000000000000))*(x7535)*(x7554)*(x7555)))+(((x7547)*(x7551)))+(((IkReal(-1.00000000000000))*(x7537)*(x7540)))+(((x7547)*(x7558)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7535)*(x7538)))+(((IkReal(-1.00000000000000))*(r02)*(x7535)*(x7539)))+(((IkReal(-1.00000000000000))*(x7537)*(x7545)*(x7556)))+(((IkReal(-1.00000000000000))*(r11)*(x7536)*(x7544)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x7546)*(x7560)))+(((cj0)*(r12)*(x7541)))+(((IkReal(-0.0100000000000000))*(x7538)*(x7548)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7556)))+(((IkReal(-1.00000000000000))*(py)*(x7535)))+(((sj0)*(x7550)*(x7555)))+(((IkReal(-1.00000000000000))*(x7541)*(x7542)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x7555)))+(((x7548)*(x7560)))+(((IkReal(0.0100000000000000))*(x7538)*(x7546)))+(((IkReal(0.0100000000000000))*(cj0)*(x7540)))+(((IkReal(-1.00000000000000))*(x7542)*(x7552)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(x7550)*(x7556)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x7541)*(x7553)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7555)))+(((IkReal(-1.00000000000000))*(x7551)*(x7560)))+(((IkReal(0.0100000000000000))*(sj0)*(x7540)))+(((r12)*(sj0)*(x7541)))+(((IkReal(0.0100000000000000))*(x7538)*(x7558)))+(((IkReal(-1.00000000000000))*(cj0)*(x7550)*(x7555)))+(((x7552)*(x7553)))+(((IkReal(-1.00000000000000))*(py)*(x7544)))+(((IkReal(-1.00000000000000))*(x7558)*(x7560)))+(((IkReal(-1.00000000000000))*(sj0)*(x7550)*(x7556)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x7556)))+(((IkReal(-1.00000000000000))*(px)*(x7535)))+(((IkReal(0.0100000000000000))*(x7538)*(x7551)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7562=((cj0)*(cj5)); +IkReal x7563=((IkReal(1.00000000000000))*(cj0)); +IkReal x7564=((cj6)*(r11)); +IkReal x7565=((r10)*(sj6)); +IkReal x7566=((cj5)*(sj0)); +IkReal x7567=((r00)*(sj5)*(sj6)); +IkReal x7568=((cj6)*(r01)*(sj5)); +IkReal x7569=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7565)))+(((r12)*(x7562)))+(((sj0)*(x7567)))+(((sj0)*(x7568)))+(((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7564)))+(((IkReal(-1.00000000000000))*(r02)*(x7566))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x7563)*(x7567)))+(((IkReal(-1.00000000000000))*(x7564)*(x7569)))+(((r12)*(x7566)))+(((r02)*(x7562)))+(((IkReal(-1.00000000000000))*(x7565)*(x7569)))+(((IkReal(-1.00000000000000))*(x7563)*(x7568))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7565)))+(((r12)*(x7562)))+(((sj0)*(x7567)))+(((sj0)*(x7568)))+(((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7564)))+(((IkReal(-1.00000000000000))*(r02)*(x7566)))))+IKsqr(((((IkReal(-1.00000000000000))*(x7563)*(x7567)))+(((IkReal(-1.00000000000000))*(x7564)*(x7569)))+(((r12)*(x7566)))+(((r02)*(x7562)))+(((IkReal(-1.00000000000000))*(x7565)*(x7569)))+(((IkReal(-1.00000000000000))*(x7563)*(x7568)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7565)))+(((r12)*(x7562)))+(((sj0)*(x7567)))+(((sj0)*(x7568)))+(((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7564)))+(((IkReal(-1.00000000000000))*(r02)*(x7566)))), ((((IkReal(-1.00000000000000))*(x7563)*(x7567)))+(((IkReal(-1.00000000000000))*(x7564)*(x7569)))+(((r12)*(x7566)))+(((r02)*(x7562)))+(((IkReal(-1.00000000000000))*(x7565)*(x7569)))+(((IkReal(-1.00000000000000))*(x7563)*(x7568))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7570=IKcos(j3); +IkReal x7571=((sj0)*(sj5)); +IkReal x7572=((r00)*(sj6)); +IkReal x7573=((cj6)*(sj0)); +IkReal x7574=((IkReal(1.00000000000000))*(cj4)); +IkReal x7575=((r00)*(sj4)); +IkReal x7576=((cj0)*(cj5)); +IkReal x7577=((cj5)*(sj0)); +IkReal x7578=((cj6)*(r11)); +IkReal x7579=((r10)*(sj6)); +IkReal x7580=((cj0)*(sj5)); +IkReal x7581=((r10)*(sj4)); +IkReal x7582=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x7583=((cj4)*(cj5)*(r01)); +IkReal x7584=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x7585=((cj0)*(sj4)*(sj6)); +IkReal x7586=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x7582)))+(((IkReal(-1.00000000000000))*(r02)*(x7577)))+(((IkReal(-1.00000000000000))*(x7578)*(x7580)))+(((cj6)*(r01)*(x7571)))+(((IkReal(-1.00000000000000))*(x7579)*(x7580)))+(((x7571)*(x7572)))+(((r12)*(x7576)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x7580)))+(((IkReal(-1.00000000000000))*(x7571)*(x7578)))+(((IkReal(-1.00000000000000))*(x7571)*(x7579)))+(((IkReal(-1.00000000000000))*(x7570)))+(((r12)*(x7577)))+(((r02)*(x7576)))+(((IkReal(-1.00000000000000))*(x7572)*(x7580)))); +evalcond[2]=((((cj4)*(r02)*(x7571)))+(((IkReal(-1.00000000000000))*(x7574)*(x7576)*(x7579)))+(((r11)*(x7585)))+(((IkReal(-1.00000000000000))*(x7581)*(x7584)))+(((IkReal(-1.00000000000000))*(x7574)*(x7576)*(x7578)))+(((IkReal(-1.00000000000000))*(r01)*(x7586)))+(((x7573)*(x7575)))+(((IkReal(-1.00000000000000))*(r12)*(x7574)*(x7580)))+(((x7573)*(x7583)))+(((cj4)*(x7572)*(x7577)))+(x7570)); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x7571)*(x7574)))+(((IkReal(-1.00000000000000))*(x7582)))+(((IkReal(-1.00000000000000))*(r02)*(x7574)*(x7580)))+(((IkReal(-1.00000000000000))*(x7574)*(x7577)*(x7579)))+(((IkReal(-1.00000000000000))*(x7572)*(x7574)*(x7576)))+(((r11)*(x7586)))+(((r01)*(x7585)))+(((IkReal(-1.00000000000000))*(x7573)*(x7581)))+(((IkReal(-1.00000000000000))*(x7575)*(x7584)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x7574)*(x7576)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7573)*(x7574)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7587=((IkReal(1.00000000000000))*(cj0)); +IkReal x7588=((cj4)*(sj6)); +IkReal x7589=((sj0)*(sj4)); +IkReal x7590=((cj5)*(sj6)); +IkReal x7591=((sj4)*(sj5)); +IkReal x7592=((r12)*(sj5)); +IkReal x7593=((IkReal(0.374290000000000))*(cj5)); +IkReal x7594=((r02)*(sj0)); +IkReal x7595=((r20)*(sj4)); +IkReal x7596=((IkReal(1.00000000000000))*(sj0)); +IkReal x7597=((IkReal(1.00000000000000))*(cj5)); +IkReal x7598=((cj0)*(r10)); +IkReal x7599=((cj4)*(cj6)); +IkReal x7600=((r00)*(sj0)); +IkReal x7601=((cj6)*(r21)); +IkReal x7602=((IkReal(0.374290000000000))*(sj5)); +IkReal x7603=((cj0)*(r00)); +IkReal x7604=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7605=((cj0)*(r02)); +IkReal x7606=((cj5)*(sj4)); +IkReal x7607=((cj6)*(r01)); +IkReal x7608=((cj6)*(r11)); +IkReal x7609=((r01)*(sj0)); +IkReal x7610=((r10)*(sj0)); +IkReal x7611=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x7612=((sj6)*(x7602)); +IkReal x7613=((cj0)*(cj6)*(x7602)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x7601)))+(((IkReal(-1.00000000000000))*(r22)*(x7597)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x7599)))+(((x7601)*(x7606)))+(((r21)*(x7588)))+(((r22)*(x7591)))+(((x7590)*(x7595)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x7601)))+(((x7601)*(x7602)))+(((IkReal(-0.0100000000000000))*(r20)*(x7590)))+(((IkReal(-1.00000000000000))*(r22)*(x7604)))+(pz)+(((r20)*(x7612)))+(((IkReal(-1.00000000000000))*(r22)*(x7593)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x7599)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x7595)))+(((cj5)*(r20)*(x7588)))); +evalcond[5]=((((cj5)*(x7589)*(x7607)))+(((IkReal(-1.00000000000000))*(r11)*(x7587)*(x7588)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7587)*(x7590)))+(((IkReal(-1.00000000000000))*(r12)*(x7587)*(x7591)))+(((r02)*(sj5)*(x7589)))+(((x7588)*(x7609)))+(((IkReal(-1.00000000000000))*(x7587)*(x7606)*(x7608)))+(((x7598)*(x7599)))+(((r00)*(x7589)*(x7590)))+(((IkReal(-1.00000000000000))*(r00)*(x7596)*(x7599)))); +evalcond[6]=((((x7599)*(x7603)))+(((IkReal(-1.00000000000000))*(r01)*(x7587)*(x7588)))+(((IkReal(-1.00000000000000))*(r10)*(x7589)*(x7590)))+(((IkReal(-1.00000000000000))*(x7587)*(x7606)*(x7607)))+(((IkReal(-1.00000000000000))*(x7589)*(x7592)))+(((x7599)*(x7610)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7587)*(x7590)))+(((IkReal(-1.00000000000000))*(r11)*(x7588)*(x7596)))+(((IkReal(-1.00000000000000))*(r02)*(x7587)*(x7591)))+(((IkReal(-1.00000000000000))*(x7589)*(x7597)*(x7608)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((sj0)*(x7602)*(x7607)))+(((IkReal(-0.0100000000000000))*(x7590)*(x7600)))+(((IkReal(-1.00000000000000))*(py)*(x7587)))+(((IkReal(-1.00000000000000))*(x7594)*(x7604)))+(((IkReal(0.0100000000000000))*(cj0)*(x7592)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x7607)))+(((x7600)*(x7612)))+(((IkReal(0.0100000000000000))*(x7590)*(x7598)))+(((cj0)*(r12)*(x7593)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7608)))+(((IkReal(-1.00000000000000))*(cj0)*(x7602)*(x7608)))+(((IkReal(-1.00000000000000))*(x7598)*(x7612)))+(((IkReal(-1.00000000000000))*(x7593)*(x7594)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(x7610)*(x7612)))+(((x7593)*(x7605)))+(((IkReal(-1.00000000000000))*(cj0)*(x7602)*(x7607)))+(((IkReal(0.0100000000000000))*(sj0)*(x7592)))+(((IkReal(-1.00000000000000))*(px)*(x7587)))+(((r12)*(sj0)*(x7593)))+(((IkReal(-1.00000000000000))*(x7603)*(x7612)))+(((IkReal(-1.00000000000000))*(sj0)*(x7602)*(x7608)))+(((IkReal(0.0100000000000000))*(x7590)*(x7603)))+(((IkReal(-1.00000000000000))*(py)*(x7596)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7607)))+(((IkReal(0.0100000000000000))*(x7590)*(x7610)))+(((x7604)*(x7605)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x7608)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7614=((cj5)*(r02)); +IkReal x7615=((cj0)*(sj5)); +IkReal x7616=((r10)*(sj6)); +IkReal x7617=((IkReal(1.00000000000000))*(cj6)); +IkReal x7618=((sj0)*(sj5)); +IkReal x7619=((cj5)*(r12)); +IkReal x7620=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(r01)*(x7617)*(x7618)))+(((sj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7618)*(x7620)))+(((x7615)*(x7616)))+(((IkReal(-1.00000000000000))*(cj0)*(x7619)))+(((cj6)*(r11)*(x7615))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r01)*(x7615)*(x7617)))+(((IkReal(-1.00000000000000))*(x7615)*(x7620)))+(((sj0)*(x7619)))+(((cj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7616)*(x7618)))+(((IkReal(-1.00000000000000))*(r11)*(x7617)*(x7618))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x7617)*(x7618)))+(((sj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7618)*(x7620)))+(((x7615)*(x7616)))+(((IkReal(-1.00000000000000))*(cj0)*(x7619)))+(((cj6)*(r11)*(x7615)))))+IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x7615)*(x7617)))+(((IkReal(-1.00000000000000))*(x7615)*(x7620)))+(((sj0)*(x7619)))+(((cj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7616)*(x7618)))+(((IkReal(-1.00000000000000))*(r11)*(x7617)*(x7618)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r01)*(x7617)*(x7618)))+(((sj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7618)*(x7620)))+(((x7615)*(x7616)))+(((IkReal(-1.00000000000000))*(cj0)*(x7619)))+(((cj6)*(r11)*(x7615)))), ((((IkReal(-1.00000000000000))*(r01)*(x7615)*(x7617)))+(((IkReal(-1.00000000000000))*(x7615)*(x7620)))+(((sj0)*(x7619)))+(((cj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7616)*(x7618)))+(((IkReal(-1.00000000000000))*(r11)*(x7617)*(x7618))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7621=IKsin(j3); +IkReal x7622=((sj0)*(sj5)); +IkReal x7623=((r00)*(sj6)); +IkReal x7624=((IkReal(1.00000000000000))*(cj4)); +IkReal x7625=((cj6)*(sj0)); +IkReal x7626=((r00)*(sj4)); +IkReal x7627=((cj0)*(cj5)); +IkReal x7628=((cj6)*(r01)); +IkReal x7629=((cj5)*(sj0)); +IkReal x7630=((cj0)*(sj5)); +IkReal x7631=((cj6)*(r11)); +IkReal x7632=((r10)*(sj6)); +IkReal x7633=((r10)*(sj4)); +IkReal x7634=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x7635=((cj0)*(sj4)*(sj6)); +IkReal x7636=((sj0)*(sj4)*(sj6)); +IkReal x7637=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x7629)))+(((x7622)*(x7628)))+(((r12)*(x7627)))+(((x7622)*(x7623)))+(x7621)+(((IkReal(-1.00000000000000))*(x7630)*(x7631)))+(((IkReal(-1.00000000000000))*(x7630)*(x7632)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x7628)*(x7630)))+(((IkReal(-1.00000000000000))*(x7634)))+(((IkReal(-1.00000000000000))*(x7622)*(x7632)))+(((IkReal(-1.00000000000000))*(x7623)*(x7630)))+(((r12)*(x7629)))+(((IkReal(-1.00000000000000))*(x7622)*(x7631)))+(((r02)*(x7627)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7624)*(x7627)*(x7632)))+(((IkReal(-1.00000000000000))*(x7624)*(x7627)*(x7631)))+(((cj4)*(r02)*(x7622)))+(((x7625)*(x7626)))+(((IkReal(-1.00000000000000))*(x7634)))+(((cj4)*(x7623)*(x7629)))+(((r11)*(x7635)))+(((IkReal(-1.00000000000000))*(r01)*(x7636)))+(((IkReal(-1.00000000000000))*(x7633)*(x7637)))+(((IkReal(-1.00000000000000))*(r12)*(x7624)*(x7630)))+(((cj4)*(cj5)*(r01)*(x7625)))); +evalcond[3]=((((r11)*(x7636)))+(((IkReal(-1.00000000000000))*(x7626)*(x7637)))+(((IkReal(-1.00000000000000))*(x7624)*(x7627)*(x7628)))+(((IkReal(-1.00000000000000))*(r02)*(x7624)*(x7630)))+(((IkReal(-1.00000000000000))*(x7625)*(x7633)))+(((r01)*(x7635)))+(((IkReal(-1.00000000000000))*(r12)*(x7622)*(x7624)))+(((IkReal(-1.00000000000000))*(x7624)*(x7629)*(x7632)))+(((IkReal(-1.00000000000000))*(x7621)))+(((IkReal(-1.00000000000000))*(x7623)*(x7624)*(x7627)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7624)*(x7625)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7638=((cj0)*(cj5)); +IkReal x7639=((IkReal(1.00000000000000))*(cj0)); +IkReal x7640=((cj6)*(r11)); +IkReal x7641=((r10)*(sj6)); +IkReal x7642=((cj5)*(sj0)); +IkReal x7643=((r00)*(sj5)*(sj6)); +IkReal x7644=((cj6)*(r01)*(sj5)); +IkReal x7645=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(x7642)))+(((sj0)*(x7644)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7640)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7641)))+(((r12)*(x7638)))+(((sj0)*(x7643))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r02)*(x7638)))+(((IkReal(-1.00000000000000))*(x7640)*(x7645)))+(((r12)*(x7642)))+(((IkReal(-1.00000000000000))*(x7639)*(x7643)))+(((IkReal(-1.00000000000000))*(x7639)*(x7644)))+(((IkReal(-1.00000000000000))*(x7641)*(x7645))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(x7642)))+(((sj0)*(x7644)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7640)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7641)))+(((r12)*(x7638)))+(((sj0)*(x7643)))))))+IKsqr(((((r02)*(x7638)))+(((IkReal(-1.00000000000000))*(x7640)*(x7645)))+(((r12)*(x7642)))+(((IkReal(-1.00000000000000))*(x7639)*(x7643)))+(((IkReal(-1.00000000000000))*(x7639)*(x7644)))+(((IkReal(-1.00000000000000))*(x7641)*(x7645)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(x7642)))+(((sj0)*(x7644)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7640)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7641)))+(((r12)*(x7638)))+(((sj0)*(x7643)))))), ((((r02)*(x7638)))+(((IkReal(-1.00000000000000))*(x7640)*(x7645)))+(((r12)*(x7642)))+(((IkReal(-1.00000000000000))*(x7639)*(x7643)))+(((IkReal(-1.00000000000000))*(x7639)*(x7644)))+(((IkReal(-1.00000000000000))*(x7641)*(x7645))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7646=IKsin(j3); +IkReal x7647=IKcos(j3); +IkReal x7648=((sj0)*(sj5)); +IkReal x7649=((r00)*(sj6)); +IkReal x7650=((IkReal(1.00000000000000))*(cj4)); +IkReal x7651=((cj6)*(r01)); +IkReal x7652=((cj0)*(cj5)); +IkReal x7653=((cj5)*(sj0)); +IkReal x7654=((cj6)*(r11)); +IkReal x7655=((cj0)*(sj5)); +IkReal x7656=((cj6)*(sj4)); +IkReal x7657=((cj4)*(cj5)); +IkReal x7658=((cj6)*(r21)); +IkReal x7659=((r20)*(sj6)); +IkReal x7660=((r10)*(sj6)); +IkReal x7661=((IkReal(1.00000000000000))*(cj0)); +IkReal x7662=((IkReal(1.00000000000000))*(x7646)); +IkReal x7663=((cj0)*(sj4)*(sj6)); +IkReal x7664=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj2)*(x7662)))+(((sj5)*(x7659)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7658)))); +evalcond[1]=((((x7657)*(x7658)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x7657)*(x7659)))+(((r20)*(x7656)))+(((cj4)*(r22)*(sj5)))+(((cj2)*(x7647)))); +evalcond[2]=((((x7648)*(x7649)))+(((IkReal(-1.00000000000000))*(x7655)*(x7660)))+(((x7648)*(x7651)))+(((IkReal(-1.00000000000000))*(r02)*(x7653)))+(((r12)*(x7652)))+(((IkReal(-1.00000000000000))*(sj2)*(x7662)))+(((IkReal(-1.00000000000000))*(x7654)*(x7655)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7647)))+(((IkReal(-1.00000000000000))*(x7648)*(x7654)))+(((IkReal(-1.00000000000000))*(x7648)*(x7660)))+(((r12)*(x7653)))+(((IkReal(-1.00000000000000))*(x7651)*(x7655)))+(((IkReal(-1.00000000000000))*(x7649)*(x7655)))+(((r02)*(x7652)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x7650)*(x7655)))+(((r00)*(sj0)*(x7656)))+(((IkReal(-1.00000000000000))*(x7650)*(x7652)*(x7660)))+(((IkReal(-1.00000000000000))*(r01)*(x7664)))+(((cj4)*(r02)*(x7648)))+(((sj2)*(x7647)))+(((IkReal(-1.00000000000000))*(x7650)*(x7652)*(x7654)))+(((cj4)*(x7649)*(x7653)))+(((cj4)*(x7651)*(x7653)))+(((IkReal(-1.00000000000000))*(r10)*(x7656)*(x7661)))+(((r11)*(x7663)))); +evalcond[5]=((((r11)*(x7664)))+(((IkReal(-1.00000000000000))*(x7650)*(x7653)*(x7660)))+(((IkReal(-1.00000000000000))*(x7650)*(x7651)*(x7652)))+(((IkReal(-1.00000000000000))*(x7650)*(x7653)*(x7654)))+(((IkReal(-1.00000000000000))*(r12)*(x7648)*(x7650)))+(((r01)*(x7663)))+(((IkReal(-1.00000000000000))*(x7649)*(x7650)*(x7652)))+(((IkReal(-1.00000000000000))*(r02)*(x7650)*(x7655)))+(((IkReal(-1.00000000000000))*(x7662)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7656)))+(((IkReal(-1.00000000000000))*(r00)*(x7656)*(x7661)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7665=((sj5)*(sj6)); +IkReal x7666=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x7665))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x7666)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7665)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7665)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x7666))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x7665)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x7666)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7665)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7665)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x7666)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x7665)))))), ((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x7666)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7665)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7665)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x7666))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7667=IKsin(j3); +IkReal x7668=IKcos(j3); +IkReal x7669=((sj0)*(sj5)); +IkReal x7670=((r00)*(sj6)); +IkReal x7671=((IkReal(1.00000000000000))*(cj4)); +IkReal x7672=((cj6)*(r01)); +IkReal x7673=((cj0)*(cj5)); +IkReal x7674=((cj5)*(sj0)); +IkReal x7675=((cj6)*(r11)); +IkReal x7676=((cj0)*(sj5)); +IkReal x7677=((cj6)*(sj4)); +IkReal x7678=((cj4)*(cj5)); +IkReal x7679=((cj6)*(r21)); +IkReal x7680=((r20)*(sj6)); +IkReal x7681=((r10)*(sj6)); +IkReal x7682=((IkReal(1.00000000000000))*(cj0)); +IkReal x7683=((IkReal(1.00000000000000))*(x7667)); +IkReal x7684=((cj0)*(sj4)*(sj6)); +IkReal x7685=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x7679)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x7683)))+(((sj5)*(x7680)))); +evalcond[1]=((((r20)*(x7677)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x7668)))+(((cj4)*(r22)*(sj5)))+(((x7678)*(x7680)))+(((x7678)*(x7679)))); +evalcond[2]=((((x7669)*(x7672)))+(((IkReal(-1.00000000000000))*(x7675)*(x7676)))+(((IkReal(-1.00000000000000))*(r02)*(x7674)))+(((IkReal(-1.00000000000000))*(sj2)*(x7683)))+(((x7669)*(x7670)))+(((r12)*(x7673)))+(((IkReal(-1.00000000000000))*(x7676)*(x7681)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7672)*(x7676)))+(((r12)*(x7674)))+(((IkReal(-1.00000000000000))*(x7670)*(x7676)))+(((IkReal(-1.00000000000000))*(x7669)*(x7681)))+(((IkReal(-1.00000000000000))*(x7669)*(x7675)))+(((IkReal(-1.00000000000000))*(x7668)))+(((r02)*(x7673)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x7671)*(x7673)*(x7681)))+(((IkReal(-1.00000000000000))*(r12)*(x7671)*(x7676)))+(((sj2)*(x7668)))+(((cj4)*(x7670)*(x7674)))+(((cj4)*(x7672)*(x7674)))+(((r00)*(sj0)*(x7677)))+(((IkReal(-1.00000000000000))*(r01)*(x7685)))+(((cj4)*(r02)*(x7669)))+(((r11)*(x7684)))+(((IkReal(-1.00000000000000))*(r10)*(x7677)*(x7682)))+(((IkReal(-1.00000000000000))*(x7671)*(x7673)*(x7675)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7671)*(x7672)*(x7673)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7677)))+(((IkReal(-1.00000000000000))*(x7683)))+(((IkReal(-1.00000000000000))*(x7671)*(x7674)*(x7681)))+(((IkReal(-1.00000000000000))*(r02)*(x7671)*(x7676)))+(((IkReal(-1.00000000000000))*(x7671)*(x7674)*(x7675)))+(((IkReal(-1.00000000000000))*(x7670)*(x7671)*(x7673)))+(((IkReal(-1.00000000000000))*(r12)*(x7669)*(x7671)))+(((r01)*(x7684)))+(((IkReal(-1.00000000000000))*(r00)*(x7677)*(x7682)))+(((r11)*(x7685)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7686=((IkReal(1.00000000000000))*(cj4)); +IkReal x7687=((cj6)*(r21)); +IkReal x7688=((r20)*(sj6)); +if( IKabs(((gconst9)*(((((sj5)*(x7687)))+(((sj5)*(x7688)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst9)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7686)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x7686)*(x7688)))+(((IkReal(-1.00000000000000))*(cj5)*(x7686)*(x7687)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst9)*(((((sj5)*(x7687)))+(((sj5)*(x7688)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((gconst9)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7686)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x7686)*(x7688)))+(((IkReal(-1.00000000000000))*(cj5)*(x7686)*(x7687)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7689=IKsin(j3); +IkReal x7690=IKcos(j3); +IkReal x7691=((sj0)*(sj5)); +IkReal x7692=((r00)*(sj6)); +IkReal x7693=((IkReal(1.00000000000000))*(cj4)); +IkReal x7694=((cj6)*(r01)); +IkReal x7695=((cj0)*(cj5)); +IkReal x7696=((cj5)*(sj0)); +IkReal x7697=((cj6)*(r11)); +IkReal x7698=((cj0)*(sj5)); +IkReal x7699=((cj6)*(sj4)); +IkReal x7700=((cj4)*(cj5)); +IkReal x7701=((cj6)*(r21)); +IkReal x7702=((r20)*(sj6)); +IkReal x7703=((r10)*(sj6)); +IkReal x7704=((IkReal(1.00000000000000))*(cj0)); +IkReal x7705=((IkReal(1.00000000000000))*(x7689)); +IkReal x7706=((cj0)*(sj4)*(sj6)); +IkReal x7707=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x7702)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x7705)))+(((sj5)*(x7701)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x7690)))+(((x7700)*(x7701)))+(((r20)*(x7699)))+(((cj4)*(r22)*(sj5)))+(((x7700)*(x7702)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x7705)))+(((x7691)*(x7694)))+(((IkReal(-1.00000000000000))*(x7698)*(x7703)))+(((x7691)*(x7692)))+(((r12)*(x7695)))+(((IkReal(-1.00000000000000))*(r02)*(x7696)))+(((IkReal(-1.00000000000000))*(x7697)*(x7698)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7694)*(x7698)))+(((r12)*(x7696)))+(((IkReal(-1.00000000000000))*(x7691)*(x7703)))+(((IkReal(-1.00000000000000))*(x7690)))+(((r02)*(x7695)))+(((IkReal(-1.00000000000000))*(x7691)*(x7697)))+(((IkReal(-1.00000000000000))*(x7692)*(x7698)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x7707)))+(((IkReal(-1.00000000000000))*(x7693)*(x7695)*(x7703)))+(((r00)*(sj0)*(x7699)))+(((IkReal(-1.00000000000000))*(r10)*(x7699)*(x7704)))+(((IkReal(-1.00000000000000))*(r12)*(x7693)*(x7698)))+(((sj2)*(x7690)))+(((cj4)*(x7694)*(x7696)))+(((r11)*(x7706)))+(((IkReal(-1.00000000000000))*(x7693)*(x7695)*(x7697)))+(((cj4)*(x7692)*(x7696)))+(((cj4)*(r02)*(x7691)))); +evalcond[5]=((((r01)*(x7706)))+(((r11)*(x7707)))+(((IkReal(-1.00000000000000))*(x7705)))+(((IkReal(-1.00000000000000))*(x7693)*(x7696)*(x7703)))+(((IkReal(-1.00000000000000))*(r00)*(x7699)*(x7704)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7699)))+(((IkReal(-1.00000000000000))*(r02)*(x7693)*(x7698)))+(((IkReal(-1.00000000000000))*(x7693)*(x7696)*(x7697)))+(((IkReal(-1.00000000000000))*(r12)*(x7691)*(x7693)))+(((IkReal(-1.00000000000000))*(x7693)*(x7694)*(x7695)))+(((IkReal(-1.00000000000000))*(x7692)*(x7693)*(x7695)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x7708=((IkReal(1.00000000000000))*(cj0)); +IkReal x7709=((cj4)*(sj6)); +IkReal x7710=((sj0)*(sj4)); +IkReal x7711=((cj5)*(sj6)); +IkReal x7712=((sj4)*(sj5)); +IkReal x7713=((r12)*(sj5)); +IkReal x7714=((IkReal(0.374290000000000))*(cj5)); +IkReal x7715=((r02)*(sj0)); +IkReal x7716=((IkReal(1.00000000000000))*(sj0)); +IkReal x7717=((cj0)*(r10)); +IkReal x7718=((cj4)*(cj6)); +IkReal x7719=((r00)*(sj0)); +IkReal x7720=((cj6)*(r21)); +IkReal x7721=((IkReal(0.374290000000000))*(sj5)); +IkReal x7722=((cj0)*(r00)); +IkReal x7723=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7724=((cj0)*(r02)); +IkReal x7725=((cj5)*(sj4)); +IkReal x7726=((cj6)*(r01)); +IkReal x7727=((cj6)*(r11)); +IkReal x7728=((r01)*(sj0)); +IkReal x7729=((r10)*(sj0)); +IkReal x7730=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x7731=((sj6)*(x7721)); +IkReal x7732=((cj0)*(cj6)*(x7721)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((sj2)+(((x7720)*(x7725)))+(((r20)*(sj4)*(x7711)))+(((IkReal(-1.00000000000000))*(r20)*(x7718)))+(((r22)*(x7712)))+(((r21)*(x7709)))); +evalcond[2]=((((IkReal(-0.0100000000000000))*(r20)*(x7711)))+(((IkReal(-0.0690000000000000))*(cj2)))+(((x7720)*(x7721)))+(((IkReal(-0.0100000000000000))*(cj5)*(x7720)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x7723)))+(((r20)*(x7731)))+(((IkReal(-1.00000000000000))*(r22)*(x7714)))); +evalcond[3]=((((x7709)*(x7728)))+(((IkReal(-1.00000000000000))*(r12)*(x7708)*(x7712)))+(((IkReal(-1.00000000000000))*(x7708)*(x7725)*(x7727)))+(cj2)+(((cj5)*(x7710)*(x7726)))+(((r00)*(x7710)*(x7711)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7708)*(x7711)))+(((x7717)*(x7718)))+(((r02)*(sj5)*(x7710)))+(((IkReal(-1.00000000000000))*(r11)*(x7708)*(x7709)))+(((IkReal(-1.00000000000000))*(r00)*(x7716)*(x7718)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x7708)*(x7725)*(x7726)))+(((IkReal(-1.00000000000000))*(r10)*(x7710)*(x7711)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7708)*(x7711)))+(((x7718)*(x7729)))+(((IkReal(-1.00000000000000))*(r02)*(x7708)*(x7712)))+(((IkReal(-1.00000000000000))*(r11)*(x7709)*(x7716)))+(((IkReal(-1.00000000000000))*(r01)*(x7708)*(x7709)))+(((x7718)*(x7722)))+(((IkReal(-1.00000000000000))*(x7710)*(x7713)))+(((IkReal(-1.00000000000000))*(cj5)*(x7710)*(x7727)))); +evalcond[5]=((((IkReal(0.0100000000000000))*(cj0)*(x7713)))+(((IkReal(-1.00000000000000))*(x7714)*(x7715)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x7726)))+(((IkReal(0.0100000000000000))*(x7711)*(x7717)))+(((IkReal(-1.00000000000000))*(x7717)*(x7731)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7727)))+(((x7719)*(x7731)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(py)*(x7708)))+(((IkReal(-1.00000000000000))*(x7715)*(x7723)))+(((IkReal(-1.00000000000000))*(cj0)*(x7721)*(x7727)))+(((cj0)*(r12)*(x7714)))+(((IkReal(-0.0100000000000000))*(x7711)*(x7719)))+(((px)*(sj0)))+(((sj0)*(x7721)*(x7726)))); +evalcond[6]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(x7722)*(x7731)))+(((IkReal(0.0100000000000000))*(x7711)*(x7729)))+(((IkReal(-1.00000000000000))*(py)*(x7716)))+(((IkReal(0.0100000000000000))*(x7711)*(x7722)))+(((IkReal(0.0100000000000000))*(sj0)*(x7713)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x7727)))+(((IkReal(-1.00000000000000))*(px)*(x7708)))+(((r12)*(sj0)*(x7714)))+(((IkReal(-1.00000000000000))*(cj0)*(x7721)*(x7726)))+(((IkReal(-1.00000000000000))*(sj0)*(x7721)*(x7727)))+(((x7723)*(x7724)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7726)))+(((IkReal(-1.00000000000000))*(x7729)*(x7731)))+(((x7714)*(x7724)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst10; +gconst10=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x7733=((cj5)*(sj4)); +IkReal x7734=((IkReal(1.00000000000000))*(sj6)); +IkReal x7735=((r10)*(sj0)); +IkReal x7736=((sj4)*(sj5)); +IkReal x7737=((cj5)*(cj6)); +IkReal x7738=((r01)*(sj0)); +IkReal x7739=((IkReal(1.00000000000000))*(r02)); +IkReal x7740=((IkReal(0.374290000000000))*(cj0)); +IkReal x7741=((cj5)*(r12)); +IkReal x7742=((cj6)*(sj5)); +IkReal x7743=((cj0)*(r11)); +IkReal x7744=((cj5)*(sj0)); +IkReal x7745=((r20)*(sj6)); +IkReal x7746=((IkReal(1.00000000000000))*(sj0)); +IkReal x7747=((cj4)*(cj5)); +IkReal x7748=((IkReal(1.00000000000000))*(cj6)); +IkReal x7749=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7750=((sj5)*(sj6)); +IkReal x7751=((cj0)*(r10)); +IkReal x7752=((cj4)*(cj6)); +IkReal x7753=((cj0)*(r01)); +IkReal x7754=((IkReal(1.00000000000000))*(cj4)); +IkReal x7755=((cj0)*(r00)); +IkReal x7756=((IkReal(0.374290000000000))*(sj0)); +IkReal x7757=((cj0)*(r12)); +IkReal x7758=((IkReal(0.374290000000000))*(sj5)); +IkReal x7759=((cj4)*(sj6)); +IkReal x7760=((IkReal(1.00000000000000))*(cj0)); +IkReal x7761=((r02)*(sj0)); +IkReal x7762=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7763=((r11)*(sj0)); +IkReal x7764=((r00)*(sj0)*(sj6)); +IkReal x7765=((r00)*(x7752)); +IkReal x7766=((sj6)*(x7762)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x7736)))+(((x7733)*(x7745)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7748)))+(((cj6)*(r21)*(x7733)))+(((r21)*(x7759)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x7737)))+(((x7745)*(x7758)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x7749)))+(((IkReal(0.374290000000000))*(r21)*(x7742)))+(((IkReal(-1.00000000000000))*(x7745)*(x7762)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7742)*(x7743)))+(((IkReal(-1.00000000000000))*(sj5)*(x7734)*(x7751)))+(((IkReal(-1.00000000000000))*(x7739)*(x7744)))+(((x7738)*(x7742)))+(((cj0)*(x7741)))+(((r00)*(sj0)*(x7750)))); +evalcond[4]=((IkReal(1.00000000000000))+(((x7736)*(x7761)))+(((IkReal(-1.00000000000000))*(x7733)*(x7734)*(x7751)))+(((IkReal(-1.00000000000000))*(x7736)*(x7757)))+(((x7733)*(x7764)))+(((x7751)*(x7752)))+(((cj6)*(x7733)*(x7738)))+(((IkReal(-1.00000000000000))*(x7733)*(x7743)*(x7748)))+(((IkReal(-1.00000000000000))*(cj4)*(x7734)*(x7743)))+(((x7738)*(x7759)))+(((IkReal(-1.00000000000000))*(x7746)*(x7765)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7734)*(x7747)*(x7751)))+(((IkReal(-1.00000000000000))*(x7737)*(x7743)*(x7754)))+(((IkReal(-1.00000000000000))*(sj4)*(x7734)*(x7738)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(sj5)*(x7761)))+(((r00)*(x7744)*(x7759)))+(((IkReal(-1.00000000000000))*(sj5)*(x7754)*(x7757)))+(((sj4)*(sj6)*(x7743)))+(((IkReal(-1.00000000000000))*(sj4)*(x7748)*(x7751)))+(((cj4)*(x7737)*(x7738)))); +evalcond[6]=((((x7735)*(x7752)))+(((x7752)*(x7755)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7733)*(x7746)))+(((IkReal(-1.00000000000000))*(r12)*(x7736)*(x7746)))+(((IkReal(-1.00000000000000))*(x7733)*(x7734)*(x7755)))+(((IkReal(-1.00000000000000))*(cj4)*(x7734)*(x7753)))+(((IkReal(-1.00000000000000))*(cj4)*(x7734)*(x7763)))+(((IkReal(-1.00000000000000))*(cj0)*(x7736)*(x7739)))+(((IkReal(-1.00000000000000))*(x7733)*(x7734)*(x7735)))+(((IkReal(-1.00000000000000))*(x7733)*(x7748)*(x7753)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x7740)*(x7742)))+(((IkReal(-0.374290000000000))*(r02)*(x7744)))+(((x7740)*(x7741)))+(((IkReal(0.0100000000000000))*(x7737)*(x7743)))+(((IkReal(-1.00000000000000))*(py)*(x7760)))+(((IkReal(-1.00000000000000))*(x7749)*(x7761)))+(((IkReal(0.374290000000000))*(x7738)*(x7742)))+(((IkReal(-1.00000000000000))*(r10)*(x7740)*(x7750)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7744)))+(((x7751)*(x7766)))+(((px)*(sj0)))+(((r00)*(x7750)*(x7756)))+(((x7749)*(x7757)))+(((IkReal(-0.0100000000000000))*(x7737)*(x7738)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((r12)*(sj0)*(x7749)))+(((x7735)*(x7766)))+(((IkReal(0.0100000000000000))*(x7737)*(x7763)))+(((IkReal(-1.00000000000000))*(r11)*(x7742)*(x7756)))+(((x7741)*(x7756)))+(((IkReal(-1.00000000000000))*(r00)*(x7740)*(x7750)))+(((IkReal(-1.00000000000000))*(py)*(x7746)))+(((cj0)*(r02)*(x7749)))+(((IkReal(0.0100000000000000))*(x7737)*(x7753)))+(((IkReal(-0.374290000000000))*(x7735)*(x7750)))+(((IkReal(-1.00000000000000))*(px)*(x7760)))+(((x7755)*(x7766)))+(((cj5)*(r02)*(x7740)))+(((IkReal(-1.00000000000000))*(r01)*(x7740)*(x7742)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7767=((IkReal(1.00000000000000))*(r21)); +IkReal x7768=((cj4)*(cj5)); +IkReal x7769=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7767)))+(((IkReal(-1.00000000000000))*(sj5)*(x7769)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7767)))+(((x7768)*(x7769)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x7768))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7767)))+(((IkReal(-1.00000000000000))*(sj5)*(x7769)))+(((cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7767)))+(((x7768)*(x7769)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x7768)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7767)))+(((IkReal(-1.00000000000000))*(sj5)*(x7769)))+(((cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7767)))+(((x7768)*(x7769)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x7768))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7770=IKcos(j3); +IkReal x7771=IKsin(j3); +IkReal x7772=((IkReal(1.00000000000000))*(cj4)); +IkReal x7773=((sj0)*(sj5)); +IkReal x7774=((cj0)*(cj5)); +IkReal x7775=((cj6)*(r01)); +IkReal x7776=((r00)*(sj6)); +IkReal x7777=((cj6)*(r11)); +IkReal x7778=((cj5)*(sj0)); +IkReal x7779=((cj6)*(sj4)); +IkReal x7780=((sj4)*(sj6)); +IkReal x7781=((cj4)*(cj5)); +IkReal x7782=((cj6)*(r21)); +IkReal x7783=((r20)*(sj6)); +IkReal x7784=((r10)*(sj6)); +IkReal x7785=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x7771)+(((sj5)*(x7782)))+(((sj5)*(x7783)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x7780)))+(((x7781)*(x7782)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7779)))+(((IkReal(-1.00000000000000))*(x7770)))+(((x7781)*(x7783)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7773)*(x7777)))+(((IkReal(-1.00000000000000))*(x7773)*(x7784)))+(((IkReal(-1.00000000000000))*(x7776)*(x7785)))+(((IkReal(-1.00000000000000))*(x7775)*(x7785)))+(x7770)+(((r12)*(x7778)))+(((r02)*(x7774)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7772)*(x7778)*(x7784)))+(((IkReal(-1.00000000000000))*(x7772)*(x7774)*(x7776)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7779)))+(((IkReal(-1.00000000000000))*(x7772)*(x7774)*(x7775)))+(((r11)*(sj0)*(x7780)))+(x7771)+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7779)))+(((cj0)*(r01)*(x7780)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7772)))+(((IkReal(-1.00000000000000))*(r12)*(x7772)*(x7773)))+(((IkReal(-1.00000000000000))*(x7772)*(x7777)*(x7778)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7786=((cj5)*(sj4)); +IkReal x7787=((IkReal(1.00000000000000))*(sj6)); +IkReal x7788=((r10)*(sj0)); +IkReal x7789=((sj4)*(sj5)); +IkReal x7790=((cj5)*(cj6)); +IkReal x7791=((r01)*(sj0)); +IkReal x7792=((IkReal(1.00000000000000))*(r02)); +IkReal x7793=((IkReal(0.374290000000000))*(cj0)); +IkReal x7794=((cj5)*(r12)); +IkReal x7795=((cj6)*(sj5)); +IkReal x7796=((cj0)*(r11)); +IkReal x7797=((cj5)*(sj0)); +IkReal x7798=((r20)*(sj6)); +IkReal x7799=((IkReal(1.00000000000000))*(sj0)); +IkReal x7800=((cj4)*(cj5)); +IkReal x7801=((IkReal(1.00000000000000))*(cj6)); +IkReal x7802=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7803=((sj5)*(sj6)); +IkReal x7804=((cj0)*(r10)); +IkReal x7805=((cj4)*(cj6)); +IkReal x7806=((cj0)*(r01)); +IkReal x7807=((IkReal(1.00000000000000))*(cj4)); +IkReal x7808=((cj0)*(r00)); +IkReal x7809=((IkReal(0.374290000000000))*(sj0)); +IkReal x7810=((cj0)*(r12)); +IkReal x7811=((IkReal(0.374290000000000))*(sj5)); +IkReal x7812=((cj4)*(sj6)); +IkReal x7813=((IkReal(1.00000000000000))*(cj0)); +IkReal x7814=((r02)*(sj0)); +IkReal x7815=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7816=((r11)*(sj0)); +IkReal x7817=((r00)*(sj0)*(sj6)); +IkReal x7818=((r00)*(x7805)); +IkReal x7819=((sj6)*(x7815)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x7812)))+(((x7786)*(x7798)))+(((cj6)*(r21)*(x7786)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7801)))+(((r22)*(x7789)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x7802)))+(((IkReal(0.374290000000000))*(r21)*(x7795)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x7798)*(x7811)))+(pz)+(((IkReal(-0.0100000000000000))*(r21)*(x7790)))+(((IkReal(-1.00000000000000))*(x7798)*(x7815)))); +evalcond[3]=((((r00)*(sj0)*(x7803)))+(((x7791)*(x7795)))+(((cj0)*(x7794)))+(((IkReal(-1.00000000000000))*(x7792)*(x7797)))+(((IkReal(-1.00000000000000))*(x7795)*(x7796)))+(((IkReal(-1.00000000000000))*(sj5)*(x7787)*(x7804)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x7789)*(x7810)))+(((x7786)*(x7817)))+(((cj6)*(x7786)*(x7791)))+(((IkReal(-1.00000000000000))*(x7786)*(x7787)*(x7804)))+(((x7789)*(x7814)))+(((x7791)*(x7812)))+(((IkReal(-1.00000000000000))*(x7799)*(x7818)))+(((IkReal(-1.00000000000000))*(x7786)*(x7796)*(x7801)))+(((x7804)*(x7805)))+(((IkReal(-1.00000000000000))*(cj4)*(x7787)*(x7796)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7790)*(x7796)*(x7807)))+(((r00)*(x7797)*(x7812)))+(((sj4)*(sj6)*(x7796)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x7787)*(x7800)*(x7804)))+(((IkReal(-1.00000000000000))*(sj5)*(x7807)*(x7810)))+(((IkReal(-1.00000000000000))*(sj4)*(x7787)*(x7791)))+(((cj4)*(x7790)*(x7791)))+(((IkReal(-1.00000000000000))*(sj4)*(x7801)*(x7804)))+(((cj4)*(sj5)*(x7814)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x7787)*(x7806)))+(((IkReal(-1.00000000000000))*(cj4)*(x7787)*(x7816)))+(((x7805)*(x7808)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7786)*(x7799)))+(((IkReal(-1.00000000000000))*(x7786)*(x7787)*(x7788)))+(((x7788)*(x7805)))+(((IkReal(-1.00000000000000))*(cj0)*(x7789)*(x7792)))+(((IkReal(-1.00000000000000))*(x7786)*(x7787)*(x7808)))+(((IkReal(-1.00000000000000))*(x7786)*(x7801)*(x7806)))+(((IkReal(-1.00000000000000))*(r12)*(x7789)*(x7799)))); +evalcond[7]=((((r00)*(x7803)*(x7809)))+(((IkReal(-0.0100000000000000))*(x7790)*(x7791)))+(((IkReal(-1.00000000000000))*(x7802)*(x7814)))+(((x7793)*(x7794)))+(((IkReal(-1.00000000000000))*(py)*(x7813)))+(((x7804)*(x7819)))+(((IkReal(-0.374290000000000))*(r02)*(x7797)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7797)))+(((IkReal(0.0100000000000000))*(x7790)*(x7796)))+(((IkReal(0.374290000000000))*(x7791)*(x7795)))+(((IkReal(-1.00000000000000))*(r10)*(x7793)*(x7803)))+(((x7802)*(x7810)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x7793)*(x7795)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(py)*(x7799)))+(((cj5)*(r02)*(x7793)))+(((cj0)*(r02)*(x7802)))+(((r12)*(sj0)*(x7802)))+(((x7788)*(x7819)))+(((x7794)*(x7809)))+(((IkReal(-1.00000000000000))*(r11)*(x7795)*(x7809)))+(((IkReal(-0.374290000000000))*(x7788)*(x7803)))+(((x7808)*(x7819)))+(((IkReal(-1.00000000000000))*(px)*(x7813)))+(((IkReal(-1.00000000000000))*(r01)*(x7793)*(x7795)))+(((IkReal(0.0100000000000000))*(x7790)*(x7806)))+(((IkReal(0.0100000000000000))*(x7790)*(x7816)))+(((IkReal(-1.00000000000000))*(r00)*(x7793)*(x7803)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7820=((IkReal(1.00000000000000))*(cj4)); +IkReal x7821=((cj6)*(r21)); +IkReal x7822=((r20)*(sj6)); +if( IKabs(((((sj5)*(x7821)))+(((sj5)*(x7822)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7822)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7820)))+(((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7821)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x7821)))+(((sj5)*(x7822)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7822)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7820)))+(((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7821)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x7821)))+(((sj5)*(x7822)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7822)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7820)))+(((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7821)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7823=IKcos(j3); +IkReal x7824=IKsin(j3); +IkReal x7825=((IkReal(1.00000000000000))*(cj4)); +IkReal x7826=((sj0)*(sj5)); +IkReal x7827=((cj0)*(cj5)); +IkReal x7828=((cj6)*(r01)); +IkReal x7829=((r00)*(sj6)); +IkReal x7830=((cj6)*(r11)); +IkReal x7831=((cj5)*(sj0)); +IkReal x7832=((cj6)*(sj4)); +IkReal x7833=((sj4)*(sj6)); +IkReal x7834=((cj4)*(cj5)); +IkReal x7835=((cj6)*(r21)); +IkReal x7836=((r20)*(sj6)); +IkReal x7837=((r10)*(sj6)); +IkReal x7838=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x7836)))+(((sj5)*(x7835)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x7824)))); +evalcond[1]=((x7823)+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x7833)))+(((x7834)*(x7836)))+(((x7834)*(x7835)))+(((r20)*(x7832)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7829)*(x7838)))+(((IkReal(-1.00000000000000))*(x7828)*(x7838)))+(((IkReal(-1.00000000000000))*(x7826)*(x7830)))+(x7823)+(((IkReal(-1.00000000000000))*(x7826)*(x7837)))+(((r12)*(x7831)))+(((r02)*(x7827)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7832)))+(((IkReal(-1.00000000000000))*(r12)*(x7825)*(x7826)))+(x7824)+(((r11)*(sj0)*(x7833)))+(((IkReal(-1.00000000000000))*(x7825)*(x7827)*(x7829)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7825)))+(((IkReal(-1.00000000000000))*(x7825)*(x7831)*(x7837)))+(((IkReal(-1.00000000000000))*(x7825)*(x7827)*(x7828)))+(((cj0)*(r01)*(x7833)))+(((IkReal(-1.00000000000000))*(x7825)*(x7830)*(x7831)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7832)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7839=((IkReal(1.00000000000000))*(cj0)); +IkReal x7840=((cj4)*(sj6)); +IkReal x7841=((sj0)*(sj4)); +IkReal x7842=((cj5)*(sj6)); +IkReal x7843=((sj4)*(sj5)); +IkReal x7844=((r12)*(sj5)); +IkReal x7845=((IkReal(0.374290000000000))*(cj5)); +IkReal x7846=((r02)*(sj0)); +IkReal x7847=((r20)*(sj4)); +IkReal x7848=((IkReal(1.00000000000000))*(sj0)); +IkReal x7849=((IkReal(1.00000000000000))*(cj5)); +IkReal x7850=((cj0)*(r10)); +IkReal x7851=((cj4)*(cj6)); +IkReal x7852=((r00)*(sj0)); +IkReal x7853=((cj6)*(r21)); +IkReal x7854=((IkReal(0.374290000000000))*(sj5)); +IkReal x7855=((cj0)*(r00)); +IkReal x7856=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7857=((cj0)*(r02)); +IkReal x7858=((cj5)*(sj4)); +IkReal x7859=((cj6)*(r01)); +IkReal x7860=((cj6)*(r11)); +IkReal x7861=((r01)*(sj0)); +IkReal x7862=((r10)*(sj0)); +IkReal x7863=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x7864=((sj6)*(x7854)); +IkReal x7865=((cj0)*(cj6)*(x7854)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x7849)))+(((sj5)*(x7853)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x7851)))+(((x7842)*(x7847)))+(((r22)*(x7843)))+(((r21)*(x7840)))+(((x7853)*(x7858)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x7845)))+(((IkReal(-0.0100000000000000))*(cj5)*(x7853)))+(((IkReal(-0.0100000000000000))*(r20)*(x7842)))+(((r20)*(x7864)))+(((x7853)*(x7854)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x7856)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x7847)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x7840)))+(((cj5)*(r21)*(x7851)))); +evalcond[5]=((((r02)*(sj5)*(x7841)))+(((IkReal(-1.00000000000000))*(r00)*(x7848)*(x7851)))+(((IkReal(-1.00000000000000))*(r11)*(x7839)*(x7840)))+(((IkReal(-1.00000000000000))*(r12)*(x7839)*(x7843)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7839)*(x7842)))+(((IkReal(-1.00000000000000))*(x7839)*(x7858)*(x7860)))+(((cj5)*(x7841)*(x7859)))+(((r00)*(x7841)*(x7842)))+(((x7840)*(x7861)))+(((x7850)*(x7851)))); +evalcond[6]=((((x7851)*(x7862)))+(((IkReal(-1.00000000000000))*(x7841)*(x7849)*(x7860)))+(((IkReal(-1.00000000000000))*(x7841)*(x7844)))+(((IkReal(-1.00000000000000))*(r10)*(x7841)*(x7842)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7839)*(x7842)))+(((IkReal(-1.00000000000000))*(r02)*(x7839)*(x7843)))+(((IkReal(-1.00000000000000))*(r11)*(x7840)*(x7848)))+(((IkReal(-1.00000000000000))*(x7839)*(x7858)*(x7859)))+(((x7851)*(x7855)))+(((IkReal(-1.00000000000000))*(r01)*(x7839)*(x7840)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(x7842)*(x7850)))+(((x7852)*(x7864)))+(((IkReal(-1.00000000000000))*(py)*(x7839)))+(((IkReal(0.0100000000000000))*(cj0)*(x7844)))+(((IkReal(-1.00000000000000))*(x7850)*(x7864)))+(((sj0)*(x7854)*(x7859)))+(((cj0)*(r12)*(x7845)))+(((IkReal(-0.0100000000000000))*(x7842)*(x7852)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7860)))+(((IkReal(-1.00000000000000))*(x7845)*(x7846)))+(((IkReal(-1.00000000000000))*(cj0)*(x7854)*(x7860)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x7846)*(x7856)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x7859)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x7854)*(x7860)))+(((IkReal(0.0100000000000000))*(sj0)*(x7844)))+(((IkReal(-1.00000000000000))*(x7862)*(x7864)))+(((x7845)*(x7857)))+(((IkReal(-1.00000000000000))*(px)*(x7839)))+(((IkReal(-1.00000000000000))*(py)*(x7848)))+(((IkReal(-1.00000000000000))*(cj0)*(x7854)*(x7859)))+(((r12)*(sj0)*(x7845)))+(((x7856)*(x7857)))+(((IkReal(-1.00000000000000))*(x7855)*(x7864)))+(((IkReal(0.0100000000000000))*(x7842)*(x7862)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x7860)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7859)))+(((IkReal(0.0100000000000000))*(x7842)*(x7855)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7866=((sj0)*(sj5)); +IkReal x7867=((r00)*(sj6)); +IkReal x7868=((IkReal(1.00000000000000))*(cj5)); +IkReal x7869=((cj6)*(r11)); +IkReal x7870=((cj6)*(r01)); +IkReal x7871=((r10)*(sj6)); +IkReal x7872=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7868)))+(((x7866)*(x7867)))+(((x7866)*(x7870)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x7869)*(x7872)))+(((IkReal(-1.00000000000000))*(x7871)*(x7872))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x7867)*(x7872)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7868)))+(((x7866)*(x7871)))+(((x7866)*(x7869)))+(((x7870)*(x7872)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7868))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7868)))+(((x7866)*(x7867)))+(((x7866)*(x7870)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x7869)*(x7872)))+(((IkReal(-1.00000000000000))*(x7871)*(x7872)))))+IKsqr(((((x7867)*(x7872)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7868)))+(((x7866)*(x7871)))+(((x7866)*(x7869)))+(((x7870)*(x7872)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7868)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7868)))+(((x7866)*(x7867)))+(((x7866)*(x7870)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x7869)*(x7872)))+(((IkReal(-1.00000000000000))*(x7871)*(x7872)))), ((((x7867)*(x7872)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7868)))+(((x7866)*(x7871)))+(((x7866)*(x7869)))+(((x7870)*(x7872)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7868))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7873=IKcos(j3); +IkReal x7874=IKsin(j3); +IkReal x7875=((sj0)*(sj5)); +IkReal x7876=((r00)*(sj6)); +IkReal x7877=((cj6)*(sj0)); +IkReal x7878=((IkReal(1.00000000000000))*(cj4)); +IkReal x7879=((r00)*(sj4)); +IkReal x7880=((cj0)*(cj5)); +IkReal x7881=((cj5)*(sj0)); +IkReal x7882=((cj6)*(r11)); +IkReal x7883=((r10)*(sj6)); +IkReal x7884=((cj0)*(sj5)); +IkReal x7885=((r10)*(sj4)); +IkReal x7886=((cj4)*(cj5)*(r01)); +IkReal x7887=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x7888=((cj0)*(sj4)*(sj6)); +IkReal x7889=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((x7875)*(x7876)))+(((r12)*(x7880)))+(((cj6)*(r01)*(x7875)))+(((IkReal(-1.00000000000000))*(r02)*(x7881)))+(((IkReal(-1.00000000000000))*(x7883)*(x7884)))+(((IkReal(-1.00000000000000))*(x7874)))+(((IkReal(-1.00000000000000))*(x7882)*(x7884)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x7875)*(x7883)))+(((IkReal(-1.00000000000000))*(x7876)*(x7884)))+(((r02)*(x7880)))+(((r12)*(x7881)))+(((IkReal(-1.00000000000000))*(x7875)*(x7882)))+(x7873)+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x7884)))); +evalcond[2]=((((cj4)*(r02)*(x7875)))+(((IkReal(-1.00000000000000))*(x7885)*(x7887)))+(((r11)*(x7888)))+(((IkReal(-1.00000000000000))*(r01)*(x7889)))+(((IkReal(-1.00000000000000))*(r12)*(x7878)*(x7884)))+(((IkReal(-1.00000000000000))*(x7878)*(x7880)*(x7883)))+(x7873)+(((cj4)*(x7876)*(x7881)))+(((IkReal(-1.00000000000000))*(x7878)*(x7880)*(x7882)))+(((x7877)*(x7879)))+(((x7877)*(x7886)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7877)*(x7885)))+(((r11)*(x7889)))+(((IkReal(-1.00000000000000))*(x7879)*(x7887)))+(((IkReal(-1.00000000000000))*(r12)*(x7875)*(x7878)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x7878)*(x7880)))+(x7874)+(((IkReal(-1.00000000000000))*(r02)*(x7878)*(x7884)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7877)*(x7878)))+(((IkReal(-1.00000000000000))*(x7878)*(x7881)*(x7883)))+(((IkReal(-1.00000000000000))*(x7876)*(x7878)*(x7880)))+(((r01)*(x7888)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7890=((IkReal(1.00000000000000))*(cj0)); +IkReal x7891=((cj4)*(sj6)); +IkReal x7892=((sj0)*(sj4)); +IkReal x7893=((cj5)*(sj6)); +IkReal x7894=((sj4)*(sj5)); +IkReal x7895=((r12)*(sj5)); +IkReal x7896=((IkReal(0.374290000000000))*(cj5)); +IkReal x7897=((r02)*(sj0)); +IkReal x7898=((r20)*(sj4)); +IkReal x7899=((IkReal(1.00000000000000))*(sj0)); +IkReal x7900=((IkReal(1.00000000000000))*(cj5)); +IkReal x7901=((cj0)*(r10)); +IkReal x7902=((cj4)*(cj6)); +IkReal x7903=((r00)*(sj0)); +IkReal x7904=((cj6)*(r21)); +IkReal x7905=((IkReal(0.374290000000000))*(sj5)); +IkReal x7906=((cj0)*(r00)); +IkReal x7907=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7908=((cj0)*(r02)); +IkReal x7909=((cj5)*(sj4)); +IkReal x7910=((cj6)*(r01)); +IkReal x7911=((cj6)*(r11)); +IkReal x7912=((r01)*(sj0)); +IkReal x7913=((r10)*(sj0)); +IkReal x7914=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x7915=((sj6)*(x7905)); +IkReal x7916=((cj0)*(cj6)*(x7905)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x7904)))+(((IkReal(-1.00000000000000))*(r22)*(x7900)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r21)*(x7891)))+(((x7904)*(x7909)))+(((x7893)*(x7898)))+(((r22)*(x7894)))+(((IkReal(-1.00000000000000))*(r20)*(x7902)))); +evalcond[3]=((((x7904)*(x7905)))+(((IkReal(-0.0100000000000000))*(cj5)*(x7904)))+(((IkReal(-1.00000000000000))*(r22)*(x7896)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x7893)))+(((r20)*(x7915)))+(((IkReal(-1.00000000000000))*(r22)*(x7907)))); +evalcond[4]=((((cj5)*(r20)*(x7891)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x7902)))+(((cj6)*(x7898)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x7890)*(x7894)))+(((cj5)*(x7892)*(x7910)))+(((r02)*(sj5)*(x7892)))+(((IkReal(-1.00000000000000))*(r00)*(x7899)*(x7902)))+(((IkReal(-1.00000000000000))*(r11)*(x7890)*(x7891)))+(((x7901)*(x7902)))+(((r00)*(x7892)*(x7893)))+(((IkReal(-1.00000000000000))*(x7890)*(x7909)*(x7911)))+(((x7891)*(x7912)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7890)*(x7893)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r01)*(x7890)*(x7891)))+(((IkReal(-1.00000000000000))*(x7892)*(x7900)*(x7911)))+(((IkReal(-1.00000000000000))*(r10)*(x7892)*(x7893)))+(((IkReal(-1.00000000000000))*(r11)*(x7891)*(x7899)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7890)*(x7893)))+(((IkReal(-1.00000000000000))*(x7890)*(x7909)*(x7910)))+(((IkReal(-1.00000000000000))*(r02)*(x7890)*(x7894)))+(((x7902)*(x7906)))+(((x7902)*(x7913)))+(((IkReal(-1.00000000000000))*(x7892)*(x7895)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-0.0100000000000000))*(x7893)*(x7903)))+(((IkReal(-1.00000000000000))*(x7897)*(x7907)))+(((IkReal(-1.00000000000000))*(x7896)*(x7897)))+(((cj0)*(r12)*(x7896)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x7910)))+(((IkReal(0.0100000000000000))*(x7893)*(x7901)))+(((IkReal(-1.00000000000000))*(py)*(x7890)))+(((IkReal(-1.00000000000000))*(x7901)*(x7915)))+(((IkReal(-1.00000000000000))*(cj0)*(x7905)*(x7911)))+(((sj0)*(x7905)*(x7910)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7911)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(x7895)))+(((x7903)*(x7915)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x7905)*(x7911)))+(((IkReal(-1.00000000000000))*(py)*(x7899)))+(((IkReal(-1.00000000000000))*(x7906)*(x7915)))+(((IkReal(-1.00000000000000))*(cj0)*(x7905)*(x7910)))+(((IkReal(-1.00000000000000))*(x7913)*(x7915)))+(((x7907)*(x7908)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7910)))+(((IkReal(-1.00000000000000))*(px)*(x7890)))+(((x7896)*(x7908)))+(((IkReal(0.0100000000000000))*(x7893)*(x7913)))+(((IkReal(0.0100000000000000))*(x7893)*(x7906)))+(((IkReal(0.0100000000000000))*(sj0)*(x7895)))+(((r12)*(sj0)*(x7896)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x7911)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7917=((IkReal(1.00000000000000))*(cj5)); +IkReal x7918=((r10)*(sj5)*(sj6)); +IkReal x7919=((cj6)*(sj0)*(sj5)); +IkReal x7920=((r00)*(sj5)*(sj6)); +IkReal x7921=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj0)*(x7920)))+(((r11)*(x7921)))+(((cj0)*(x7918)))+(((IkReal(-1.00000000000000))*(r01)*(x7919)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7917))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(x7920)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7917)))+(((r01)*(x7921)))+(((r11)*(x7919)))+(((sj0)*(x7918)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7917))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj0)*(x7920)))+(((r11)*(x7921)))+(((cj0)*(x7918)))+(((IkReal(-1.00000000000000))*(r01)*(x7919)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7917)))))+IKsqr(((((cj0)*(x7920)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7917)))+(((r01)*(x7921)))+(((r11)*(x7919)))+(((sj0)*(x7918)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7917)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj0)*(x7920)))+(((r11)*(x7921)))+(((cj0)*(x7918)))+(((IkReal(-1.00000000000000))*(r01)*(x7919)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7917)))), ((((cj0)*(x7920)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7917)))+(((r01)*(x7921)))+(((r11)*(x7919)))+(((sj0)*(x7918)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7917))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7922=IKcos(j3); +IkReal x7923=IKsin(j3); +IkReal x7924=((sj0)*(sj5)); +IkReal x7925=((r00)*(sj6)); +IkReal x7926=((IkReal(1.00000000000000))*(cj4)); +IkReal x7927=((cj6)*(sj0)); +IkReal x7928=((r00)*(sj4)); +IkReal x7929=((cj0)*(cj5)); +IkReal x7930=((cj6)*(r01)); +IkReal x7931=((cj5)*(sj0)); +IkReal x7932=((cj0)*(sj5)); +IkReal x7933=((cj6)*(r11)); +IkReal x7934=((r10)*(sj6)); +IkReal x7935=((r10)*(sj4)); +IkReal x7936=((cj0)*(sj4)*(sj6)); +IkReal x7937=((sj0)*(sj4)*(sj6)); +IkReal x7938=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x7931)))+(((x7924)*(x7930)))+(((IkReal(-1.00000000000000))*(x7932)*(x7934)))+(((r12)*(x7929)))+(((x7924)*(x7925)))+(x7923)+(((IkReal(-1.00000000000000))*(x7932)*(x7933)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x7924)*(x7934)))+(((r02)*(x7929)))+(((r12)*(x7931)))+(((IkReal(-1.00000000000000))*(x7925)*(x7932)))+(((IkReal(-1.00000000000000))*(x7924)*(x7933)))+(((IkReal(-1.00000000000000))*(x7930)*(x7932)))+(x7922)); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x7926)*(x7932)))+(((IkReal(-1.00000000000000))*(x7926)*(x7929)*(x7933)))+(((cj4)*(r02)*(x7924)))+(((IkReal(-1.00000000000000))*(x7935)*(x7938)))+(((x7927)*(x7928)))+(((IkReal(-1.00000000000000))*(r01)*(x7937)))+(((cj4)*(x7925)*(x7931)))+(((IkReal(-1.00000000000000))*(x7922)))+(((r11)*(x7936)))+(((cj4)*(cj5)*(r01)*(x7927)))+(((IkReal(-1.00000000000000))*(x7926)*(x7929)*(x7934)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7927)*(x7935)))+(((IkReal(-1.00000000000000))*(r12)*(x7924)*(x7926)))+(((r11)*(x7937)))+(((IkReal(-1.00000000000000))*(x7926)*(x7929)*(x7930)))+(((r01)*(x7936)))+(((IkReal(-1.00000000000000))*(r02)*(x7926)*(x7932)))+(((IkReal(-1.00000000000000))*(x7925)*(x7926)*(x7929)))+(x7923)+(((IkReal(-1.00000000000000))*(x7928)*(x7938)))+(((IkReal(-1.00000000000000))*(x7926)*(x7931)*(x7934)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7926)*(x7927)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7939=((sj0)*(sj5)); +IkReal x7940=((r00)*(sj6)); +IkReal x7941=((IkReal(1.00000000000000))*(cj5)); +IkReal x7942=((cj6)*(r11)); +IkReal x7943=((cj6)*(r01)); +IkReal x7944=((cj0)*(sj5)); +IkReal x7945=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x7942)*(x7944)))+(((x7939)*(x7943)))+(((cj0)*(cj5)*(r12)))+(((x7939)*(x7940)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7941)))+(((IkReal(-1.00000000000000))*(x7944)*(x7945))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7941)))+(((x7939)*(x7942)))+(((x7943)*(x7944)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7941)))+(((x7940)*(x7944)))+(((x7939)*(x7945))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x7942)*(x7944)))+(((x7939)*(x7943)))+(((cj0)*(cj5)*(r12)))+(((x7939)*(x7940)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7941)))+(((IkReal(-1.00000000000000))*(x7944)*(x7945)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7941)))+(((x7939)*(x7942)))+(((x7943)*(x7944)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7941)))+(((x7940)*(x7944)))+(((x7939)*(x7945)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x7942)*(x7944)))+(((x7939)*(x7943)))+(((cj0)*(cj5)*(r12)))+(((x7939)*(x7940)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7941)))+(((IkReal(-1.00000000000000))*(x7944)*(x7945)))))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7941)))+(((x7939)*(x7942)))+(((x7943)*(x7944)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7941)))+(((x7940)*(x7944)))+(((x7939)*(x7945))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7946=IKsin(j3); +IkReal x7947=IKcos(j3); +IkReal x7948=((sj0)*(sj5)); +IkReal x7949=((r00)*(sj6)); +IkReal x7950=((IkReal(1.00000000000000))*(cj4)); +IkReal x7951=((cj6)*(r01)); +IkReal x7952=((cj0)*(cj5)); +IkReal x7953=((cj5)*(sj0)); +IkReal x7954=((cj6)*(r11)); +IkReal x7955=((cj6)*(sj4)); +IkReal x7956=((cj0)*(sj5)); +IkReal x7957=((cj4)*(cj5)); +IkReal x7958=((cj6)*(r21)); +IkReal x7959=((r20)*(sj6)); +IkReal x7960=((r10)*(sj6)); +IkReal x7961=((IkReal(1.00000000000000))*(cj0)); +IkReal x7962=((cj0)*(sj4)*(sj6)); +IkReal x7963=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7959)))+(((cj2)*(x7946)))+(((sj5)*(x7958)))); +evalcond[1]=((((r20)*(x7955)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj2)*(x7947)))+(((x7957)*(x7959)))+(((x7957)*(x7958)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7956)*(x7960)))+(((x7948)*(x7951)))+(((IkReal(-1.00000000000000))*(x7954)*(x7956)))+(((IkReal(-1.00000000000000))*(sj2)*(x7946)))+(((r12)*(x7952)))+(((x7948)*(x7949)))+(((IkReal(-1.00000000000000))*(r02)*(x7953)))); +evalcond[3]=((((r12)*(x7953)))+(x7947)+(((IkReal(-1.00000000000000))*(x7951)*(x7956)))+(((IkReal(-1.00000000000000))*(x7949)*(x7956)))+(((r02)*(x7952)))+(((IkReal(-1.00000000000000))*(x7948)*(x7960)))+(((IkReal(-1.00000000000000))*(x7948)*(x7954)))); +evalcond[4]=((((cj4)*(r02)*(x7948)))+(((IkReal(-1.00000000000000))*(x7950)*(x7952)*(x7954)))+(((r00)*(sj0)*(x7955)))+(((IkReal(-1.00000000000000))*(r10)*(x7955)*(x7961)))+(((r11)*(x7962)))+(((sj2)*(x7947)))+(((IkReal(-1.00000000000000))*(r12)*(x7950)*(x7956)))+(((IkReal(-1.00000000000000))*(x7950)*(x7952)*(x7960)))+(((cj4)*(x7951)*(x7953)))+(((IkReal(-1.00000000000000))*(r01)*(x7963)))+(((cj4)*(x7949)*(x7953)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x7955)*(x7961)))+(((r01)*(x7962)))+(x7946)+(((IkReal(-1.00000000000000))*(x7950)*(x7953)*(x7954)))+(((IkReal(-1.00000000000000))*(r02)*(x7950)*(x7956)))+(((IkReal(-1.00000000000000))*(x7950)*(x7953)*(x7960)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7955)))+(((r11)*(x7963)))+(((IkReal(-1.00000000000000))*(x7949)*(x7950)*(x7952)))+(((IkReal(-1.00000000000000))*(r12)*(x7948)*(x7950)))+(((IkReal(-1.00000000000000))*(x7950)*(x7951)*(x7952)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7964=((cj6)*(sj5)); +IkReal x7965=((IkReal(1.00000000000000))*(cj5)); +IkReal x7966=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x7966)))+(((IkReal(-1.00000000000000))*(r21)*(x7964)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7965)))+(((r11)*(sj0)*(x7964)))+(((cj0)*(r01)*(x7964)))+(((cj0)*(r00)*(x7966)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7965)))+(((r10)*(sj0)*(x7966))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x7966)))+(((IkReal(-1.00000000000000))*(r21)*(x7964)))+(((cj5)*(r22)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7965)))+(((r11)*(sj0)*(x7964)))+(((cj0)*(r01)*(x7964)))+(((cj0)*(r00)*(x7966)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7965)))+(((r10)*(sj0)*(x7966)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x7966)))+(((IkReal(-1.00000000000000))*(r21)*(x7964)))+(((cj5)*(r22)))))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7965)))+(((r11)*(sj0)*(x7964)))+(((cj0)*(r01)*(x7964)))+(((cj0)*(r00)*(x7966)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7965)))+(((r10)*(sj0)*(x7966))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7967=IKsin(j3); +IkReal x7968=IKcos(j3); +IkReal x7969=((sj0)*(sj5)); +IkReal x7970=((r00)*(sj6)); +IkReal x7971=((IkReal(1.00000000000000))*(cj4)); +IkReal x7972=((cj6)*(r01)); +IkReal x7973=((cj0)*(cj5)); +IkReal x7974=((cj5)*(sj0)); +IkReal x7975=((cj6)*(r11)); +IkReal x7976=((cj6)*(sj4)); +IkReal x7977=((cj0)*(sj5)); +IkReal x7978=((cj4)*(cj5)); +IkReal x7979=((cj6)*(r21)); +IkReal x7980=((r20)*(sj6)); +IkReal x7981=((r10)*(sj6)); +IkReal x7982=((IkReal(1.00000000000000))*(cj0)); +IkReal x7983=((cj0)*(sj4)*(sj6)); +IkReal x7984=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x7979)))+(((cj2)*(x7967)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7980)))); +evalcond[1]=((((r20)*(x7976)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x7978)*(x7979)))+(((IkReal(-1.00000000000000))*(cj2)*(x7968)))+(((x7978)*(x7980)))); +evalcond[2]=((((x7969)*(x7970)))+(((x7969)*(x7972)))+(((r12)*(x7973)))+(((IkReal(-1.00000000000000))*(x7975)*(x7977)))+(((IkReal(-1.00000000000000))*(r02)*(x7974)))+(((IkReal(-1.00000000000000))*(x7977)*(x7981)))+(((IkReal(-1.00000000000000))*(sj2)*(x7967)))); +evalcond[3]=((x7968)+(((r02)*(x7973)))+(((IkReal(-1.00000000000000))*(x7970)*(x7977)))+(((IkReal(-1.00000000000000))*(x7969)*(x7981)))+(((r12)*(x7974)))+(((IkReal(-1.00000000000000))*(x7972)*(x7977)))+(((IkReal(-1.00000000000000))*(x7969)*(x7975)))); +evalcond[4]=((((cj4)*(r02)*(x7969)))+(((r00)*(sj0)*(x7976)))+(((cj4)*(x7970)*(x7974)))+(((sj2)*(x7968)))+(((IkReal(-1.00000000000000))*(r12)*(x7971)*(x7977)))+(((IkReal(-1.00000000000000))*(r10)*(x7976)*(x7982)))+(((IkReal(-1.00000000000000))*(r01)*(x7984)))+(((IkReal(-1.00000000000000))*(x7971)*(x7973)*(x7975)))+(((IkReal(-1.00000000000000))*(x7971)*(x7973)*(x7981)))+(((cj4)*(x7972)*(x7974)))+(((r11)*(x7983)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x7971)*(x7977)))+(x7967)+(((r01)*(x7983)))+(((r11)*(x7984)))+(((IkReal(-1.00000000000000))*(x7970)*(x7971)*(x7973)))+(((IkReal(-1.00000000000000))*(x7971)*(x7974)*(x7981)))+(((IkReal(-1.00000000000000))*(r00)*(x7976)*(x7982)))+(((IkReal(-1.00000000000000))*(x7971)*(x7974)*(x7975)))+(((IkReal(-1.00000000000000))*(x7971)*(x7972)*(x7973)))+(((IkReal(-1.00000000000000))*(r12)*(x7969)*(x7971)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7976)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7985=((IkReal(1.00000000000000))*(r21)); +IkReal x7986=((cj4)*(cj5)); +IkReal x7987=((r20)*(sj6)); +if( IKabs(((gconst10)*(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7985)))+(((IkReal(-1.00000000000000))*(sj5)*(x7987)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst10)*(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7985)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x7986)*(x7987)))+(((cj6)*(r21)*(x7986))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst10)*(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7985)))+(((IkReal(-1.00000000000000))*(sj5)*(x7987)))+(((cj5)*(r22)))))), ((gconst10)*(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7985)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x7986)*(x7987)))+(((cj6)*(r21)*(x7986))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7988=IKsin(j3); +IkReal x7989=IKcos(j3); +IkReal x7990=((sj0)*(sj5)); +IkReal x7991=((r00)*(sj6)); +IkReal x7992=((IkReal(1.00000000000000))*(cj4)); +IkReal x7993=((cj6)*(r01)); +IkReal x7994=((cj0)*(cj5)); +IkReal x7995=((cj5)*(sj0)); +IkReal x7996=((cj6)*(r11)); +IkReal x7997=((cj6)*(sj4)); +IkReal x7998=((cj0)*(sj5)); +IkReal x7999=((cj4)*(cj5)); +IkReal x8000=((cj6)*(r21)); +IkReal x8001=((r20)*(sj6)); +IkReal x8002=((r10)*(sj6)); +IkReal x8003=((IkReal(1.00000000000000))*(cj0)); +IkReal x8004=((cj0)*(sj4)*(sj6)); +IkReal x8005=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj2)*(x7988)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8001)))+(((sj5)*(x8000)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x7999)*(x8001)))+(((IkReal(-1.00000000000000))*(cj2)*(x7989)))+(((x7999)*(x8000)))+(((r20)*(x7997)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7998)*(x8002)))+(((IkReal(-1.00000000000000))*(sj2)*(x7988)))+(((IkReal(-1.00000000000000))*(r02)*(x7995)))+(((IkReal(-1.00000000000000))*(x7996)*(x7998)))+(((x7990)*(x7993)))+(((x7990)*(x7991)))+(((r12)*(x7994)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7991)*(x7998)))+(((IkReal(-1.00000000000000))*(x7990)*(x8002)))+(x7989)+(((IkReal(-1.00000000000000))*(x7990)*(x7996)))+(((IkReal(-1.00000000000000))*(x7993)*(x7998)))+(((r12)*(x7995)))+(((r02)*(x7994)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x7992)*(x7994)*(x7996)))+(((sj2)*(x7989)))+(((IkReal(-1.00000000000000))*(r10)*(x7997)*(x8003)))+(((IkReal(-1.00000000000000))*(x7992)*(x7994)*(x8002)))+(((r11)*(x8004)))+(((IkReal(-1.00000000000000))*(r01)*(x8005)))+(((cj4)*(r02)*(x7990)))+(((IkReal(-1.00000000000000))*(r12)*(x7992)*(x7998)))+(((cj4)*(x7991)*(x7995)))+(((r00)*(sj0)*(x7997)))+(((cj4)*(x7993)*(x7995)))); +evalcond[5]=((((r11)*(x8005)))+(((IkReal(-1.00000000000000))*(x7992)*(x7995)*(x7996)))+(((IkReal(-1.00000000000000))*(x7991)*(x7992)*(x7994)))+(x7988)+(((IkReal(-1.00000000000000))*(r00)*(x7997)*(x8003)))+(((IkReal(-1.00000000000000))*(x7992)*(x7995)*(x8002)))+(((IkReal(-1.00000000000000))*(x7992)*(x7993)*(x7994)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7997)))+(((r01)*(x8004)))+(((IkReal(-1.00000000000000))*(r12)*(x7990)*(x7992)))+(((IkReal(-1.00000000000000))*(r02)*(x7992)*(x7998)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x8006=((IkReal(1.00000000000000))*(cj0)); +IkReal x8007=((cj4)*(sj6)); +IkReal x8008=((sj0)*(sj4)); +IkReal x8009=((cj5)*(sj6)); +IkReal x8010=((sj4)*(sj5)); +IkReal x8011=((r12)*(sj5)); +IkReal x8012=((IkReal(0.374290000000000))*(cj5)); +IkReal x8013=((r02)*(sj0)); +IkReal x8014=((IkReal(1.00000000000000))*(sj0)); +IkReal x8015=((cj0)*(r10)); +IkReal x8016=((cj4)*(cj6)); +IkReal x8017=((r00)*(sj0)); +IkReal x8018=((cj6)*(r21)); +IkReal x8019=((IkReal(0.374290000000000))*(sj5)); +IkReal x8020=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8021=((cj0)*(r02)); +IkReal x8022=((cj5)*(sj4)); +IkReal x8023=((cj6)*(r01)); +IkReal x8024=((cj0)*(r00)); +IkReal x8025=((cj6)*(r11)); +IkReal x8026=((r01)*(sj0)); +IkReal x8027=((r10)*(sj0)); +IkReal x8028=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x8029=((sj6)*(x8019)); +IkReal x8030=((cj0)*(cj6)*(x8019)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x8016)))+(((r21)*(x8007)))+(((x8018)*(x8022)))+(((IkReal(-1.00000000000000))*(cj1)))+(((r20)*(sj4)*(x8009)))+(((r22)*(x8010)))); +evalcond[2]=((((x8018)*(x8019)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x8012)))+(((IkReal(-0.0100000000000000))*(r20)*(x8009)))+(((IkReal(-1.00000000000000))*(r22)*(x8020)))+(((r20)*(x8029)))+(((IkReal(-0.0100000000000000))*(cj5)*(x8018)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x8006)*(x8007)))+(((x8015)*(x8016)))+(((IkReal(-1.00000000000000))*(r00)*(x8014)*(x8016)))+(((IkReal(-1.00000000000000))*(r12)*(x8006)*(x8010)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x8006)*(x8009)))+(((r02)*(sj5)*(x8008)))+(((x8007)*(x8026)))+(((IkReal(-1.00000000000000))*(x8006)*(x8022)*(x8025)))+(((r00)*(x8008)*(x8009)))+(((cj5)*(x8008)*(x8023)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8008)*(x8011)))+(((IkReal(-1.00000000000000))*(r01)*(x8006)*(x8007)))+(((IkReal(-1.00000000000000))*(cj5)*(x8008)*(x8025)))+(sj1)+(((IkReal(-1.00000000000000))*(x8006)*(x8022)*(x8023)))+(((x8016)*(x8024)))+(((IkReal(-1.00000000000000))*(r11)*(x8007)*(x8014)))+(((x8016)*(x8027)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x8006)*(x8009)))+(((IkReal(-1.00000000000000))*(r10)*(x8008)*(x8009)))+(((IkReal(-1.00000000000000))*(r02)*(x8006)*(x8010)))); +evalcond[5]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x8025)))+(((x8017)*(x8029)))+(((IkReal(0.0100000000000000))*(cj0)*(x8011)))+(((IkReal(0.0100000000000000))*(x8009)*(x8015)))+(((IkReal(-1.00000000000000))*(x8015)*(x8029)))+(((IkReal(-1.00000000000000))*(x8013)*(x8020)))+(((IkReal(-0.0100000000000000))*(x8009)*(x8017)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x8023)))+(((IkReal(-1.00000000000000))*(py)*(x8006)))+(((sj0)*(x8019)*(x8023)))+(((IkReal(-1.00000000000000))*(cj0)*(x8019)*(x8025)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x8012)*(x8013)))+(((cj0)*(r12)*(x8012)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((x8012)*(x8021)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x8025)))+(((IkReal(-1.00000000000000))*(px)*(x8006)))+(((r12)*(sj0)*(x8012)))+(((IkReal(-1.00000000000000))*(sj0)*(x8019)*(x8025)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x8023)))+(((IkReal(0.0100000000000000))*(x8009)*(x8027)))+(((IkReal(-1.00000000000000))*(py)*(x8014)))+(((IkReal(0.0100000000000000))*(x8009)*(x8024)))+(((IkReal(0.0100000000000000))*(sj0)*(x8011)))+(((IkReal(-1.00000000000000))*(x8027)*(x8029)))+(((IkReal(-1.00000000000000))*(cj0)*(x8019)*(x8023)))+(((IkReal(-1.00000000000000))*(x8024)*(x8029)))+(((IkReal(0.364420000000000))*(cj1)))+(((x8020)*(x8021)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst11; +gconst11=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x8031=((IkReal(1.00000000000000))*(cj0)); +IkReal x8032=((cj4)*(sj6)); +IkReal x8033=((sj0)*(sj6)); +IkReal x8034=((cj5)*(sj4)); +IkReal x8035=((IkReal(0.374290000000000))*(sj5)); +IkReal x8036=((sj4)*(sj5)); +IkReal x8037=((cj0)*(cj6)); +IkReal x8038=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8039=((cj4)*(sj5)); +IkReal x8040=((cj5)*(sj0)); +IkReal x8041=((IkReal(0.374290000000000))*(r02)); +IkReal x8042=((r20)*(sj6)); +IkReal x8043=((cj6)*(r21)); +IkReal x8044=((IkReal(1.00000000000000))*(sj0)); +IkReal x8045=((cj0)*(sj6)); +IkReal x8046=((cj4)*(cj6)); +IkReal x8047=((IkReal(0.374290000000000))*(r12)); +IkReal x8048=((cj0)*(cj5)); +IkReal x8049=((cj6)*(sj5)); +IkReal x8050=((cj6)*(r01)); +IkReal x8051=((r00)*(sj6)); +IkReal x8052=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8053=((cj6)*(r11)); +IkReal x8054=((IkReal(1.00000000000000))*(r10)); +IkReal x8055=((r02)*(sj0)); +IkReal x8056=((cj6)*(sj4)); +IkReal x8057=((r12)*(x8044)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x8032)))+(((x8034)*(x8043)))+(((IkReal(-1.00000000000000))*(r20)*(x8046)))+(((r22)*(x8036)))+(((x8034)*(x8042)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x8035)*(x8042)))+(pz)+(((IkReal(-1.00000000000000))*(x8038)*(x8043)))+(((IkReal(-1.00000000000000))*(r22)*(x8052)))+(((x8035)*(x8043)))+(((IkReal(-1.00000000000000))*(x8038)*(x8042)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(x8031)*(x8049)))+(((IkReal(-1.00000000000000))*(sj5)*(x8033)*(x8054)))+(((r12)*(x8040)))+(((IkReal(-1.00000000000000))*(r11)*(x8044)*(x8049)))+(((IkReal(-1.00000000000000))*(sj5)*(x8031)*(x8051)))+(((r02)*(x8048)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r00)*(x8044)*(x8046)))+(((r01)*(sj0)*(x8032)))+(((IkReal(-1.00000000000000))*(x8031)*(x8034)*(x8053)))+(((sj0)*(x8034)*(x8050)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x8031)*(x8034)))+(((cj4)*(r10)*(x8037)))+(((r00)*(x8033)*(x8034)))+(((IkReal(-1.00000000000000))*(r11)*(x8031)*(x8032)))+(((IkReal(-1.00000000000000))*(r12)*(x8031)*(x8036)))+(((x8036)*(x8055)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x8036)*(x8057)))+(((IkReal(-1.00000000000000))*(x8031)*(x8034)*(x8051)))+(((cj4)*(r00)*(x8037)))+(((IkReal(-1.00000000000000))*(r02)*(x8031)*(x8036)))+(((IkReal(-1.00000000000000))*(x8033)*(x8034)*(x8054)))+(((r10)*(sj0)*(x8046)))+(((IkReal(-1.00000000000000))*(r01)*(x8031)*(x8032)))+(((IkReal(-1.00000000000000))*(x8031)*(x8034)*(x8050)))+(((IkReal(-1.00000000000000))*(x8034)*(x8044)*(x8053)))+(((IkReal(-1.00000000000000))*(r11)*(x8032)*(x8044)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x8035)*(x8037)))+(((cj0)*(r12)*(x8052)))+(((IkReal(-1.00000000000000))*(sj0)*(x8038)*(x8050)))+(((r00)*(x8033)*(x8035)))+(((IkReal(-1.00000000000000))*(r00)*(x8033)*(x8038)))+(((IkReal(-1.00000000000000))*(r10)*(x8035)*(x8045)))+(((IkReal(-1.00000000000000))*(x8052)*(x8055)))+(((IkReal(-1.00000000000000))*(x8040)*(x8041)))+(((IkReal(-1.00000000000000))*(py)*(x8031)))+(((sj0)*(x8035)*(x8050)))+(((px)*(sj0)))+(((x8047)*(x8048)))+(((r11)*(x8037)*(x8038)))+(((r10)*(x8038)*(x8045)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x8040)*(x8046)))+(((IkReal(-1.00000000000000))*(r10)*(x8044)*(x8056)))+(((IkReal(-1.00000000000000))*(x8032)*(x8040)*(x8054)))+(((r01)*(sj4)*(x8045)))+(((r11)*(sj4)*(x8033)))+(((IkReal(-1.00000000000000))*(r00)*(x8031)*(x8056)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8031)*(x8032)))+(((IkReal(-1.00000000000000))*(r02)*(x8031)*(x8039)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x8031)*(x8046)))+(((IkReal(-1.00000000000000))*(x8039)*(x8057)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r12)*(sj0)*(x8052)))+(((r00)*(x8038)*(x8045)))+(((r01)*(x8037)*(x8038)))+(((IkReal(-1.00000000000000))*(px)*(x8031)))+(((IkReal(-1.00000000000000))*(r01)*(x8035)*(x8037)))+(((x8040)*(x8047)))+(((IkReal(-1.00000000000000))*(sj0)*(x8035)*(x8053)))+(((cj0)*(r02)*(x8052)))+(((IkReal(-1.00000000000000))*(r10)*(x8033)*(x8035)))+(((IkReal(-1.00000000000000))*(py)*(x8044)))+(((sj0)*(x8038)*(x8053)))+(((IkReal(-1.00000000000000))*(r00)*(x8035)*(x8045)))+(((x8041)*(x8048)))+(((r10)*(x8033)*(x8038)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8058=((r20)*(sj6)); +IkReal x8059=((cj4)*(cj5)); +IkReal x8060=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8059)*(x8060)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8058)*(x8059))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x8058)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8060))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8059)*(x8060)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8058)*(x8059)))))+IKsqr(((((sj5)*(x8058)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8060)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8059)*(x8060)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8058)*(x8059)))), ((((sj5)*(x8058)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8060))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x8061=IKcos(j3); +IkReal x8062=((sj0)*(sj5)); +IkReal x8063=((r00)*(sj6)); +IkReal x8064=((cj6)*(r01)); +IkReal x8065=((cj5)*(sj0)); +IkReal x8066=((cj0)*(cj5)); +IkReal x8067=((cj6)*(sj4)); +IkReal x8068=((sj4)*(sj6)); +IkReal x8069=((cj0)*(r11)); +IkReal x8070=((cj4)*(cj6)); +IkReal x8071=((cj4)*(sj6)); +IkReal x8072=((IkReal(1.00000000000000))*(cj0)); +IkReal x8073=((cj4)*(sj5)); +IkReal x8074=((sj5)*(sj6)); +IkReal x8075=((cj6)*(sj5)); +IkReal x8076=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r21)*(x8075)))+(((r20)*(x8074)))+(((IkReal(-1.00000000000000))*(x8061)))); +evalcond[1]=((((cj5)*(r21)*(x8070)))+(((r20)*(x8067)))+(((IkReal(-1.00000000000000))*(x8076)))+(((cj5)*(r20)*(x8071)))+(((IkReal(-1.00000000000000))*(r21)*(x8068)))+(((r22)*(x8073)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x8065)))+(((IkReal(-1.00000000000000))*(x8069)*(x8075)))+(((x8062)*(x8064)))+(((IkReal(-1.00000000000000))*(x8076)))+(((r12)*(x8066)))+(((IkReal(-1.00000000000000))*(r10)*(x8072)*(x8074)))+(((x8062)*(x8063)))); +evalcond[3]=((((x8068)*(x8069)))+(((IkReal(-1.00000000000000))*(r11)*(x8066)*(x8070)))+(((IkReal(-1.00000000000000))*(r12)*(x8072)*(x8073)))+(((cj4)*(x8063)*(x8065)))+(((cj4)*(x8064)*(x8065)))+(x8061)+(((cj4)*(r02)*(x8062)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x8068)))+(((IkReal(-1.00000000000000))*(r10)*(x8066)*(x8071)))+(((r00)*(sj0)*(x8067)))+(((IkReal(-1.00000000000000))*(r10)*(x8067)*(x8072)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x8077=((IkReal(1.00000000000000))*(cj0)); +IkReal x8078=((cj4)*(sj6)); +IkReal x8079=((sj0)*(sj6)); +IkReal x8080=((cj5)*(sj4)); +IkReal x8081=((IkReal(0.374290000000000))*(sj5)); +IkReal x8082=((sj4)*(sj5)); +IkReal x8083=((cj0)*(cj6)); +IkReal x8084=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8085=((cj4)*(sj5)); +IkReal x8086=((cj5)*(sj0)); +IkReal x8087=((IkReal(0.374290000000000))*(r02)); +IkReal x8088=((r20)*(sj6)); +IkReal x8089=((cj6)*(r21)); +IkReal x8090=((IkReal(1.00000000000000))*(sj0)); +IkReal x8091=((cj0)*(sj6)); +IkReal x8092=((cj4)*(cj6)); +IkReal x8093=((IkReal(0.374290000000000))*(r12)); +IkReal x8094=((cj0)*(cj5)); +IkReal x8095=((cj6)*(sj5)); +IkReal x8096=((cj6)*(r01)); +IkReal x8097=((r00)*(sj6)); +IkReal x8098=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8099=((cj6)*(r11)); +IkReal x8100=((IkReal(1.00000000000000))*(r10)); +IkReal x8101=((r02)*(sj0)); +IkReal x8102=((cj6)*(sj4)); +IkReal x8103=((r12)*(x8090)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x8080)*(x8089)))+(((r21)*(x8078)))+(((x8080)*(x8088)))+(((r22)*(x8082)))+(((IkReal(-1.00000000000000))*(r20)*(x8092)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x8084)*(x8089)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x8081)*(x8088)))+(pz)+(((IkReal(-1.00000000000000))*(x8084)*(x8088)))+(((IkReal(-1.00000000000000))*(r22)*(x8098)))+(((x8081)*(x8089)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x8077)*(x8097)))+(((IkReal(-1.00000000000000))*(r11)*(x8090)*(x8095)))+(((r02)*(x8094)))+(((IkReal(-1.00000000000000))*(sj5)*(x8079)*(x8100)))+(((r12)*(x8086)))+(((IkReal(-1.00000000000000))*(r01)*(x8077)*(x8095)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x8077)*(x8082)))+(((r00)*(x8079)*(x8080)))+(((IkReal(-1.00000000000000))*(r11)*(x8077)*(x8078)))+(((IkReal(-1.00000000000000))*(x8077)*(x8080)*(x8099)))+(((IkReal(-1.00000000000000))*(r00)*(x8090)*(x8092)))+(((x8082)*(x8101)))+(((cj4)*(r10)*(x8083)))+(((r01)*(sj0)*(x8078)))+(((sj0)*(x8080)*(x8096)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x8077)*(x8080)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((r10)*(sj0)*(x8092)))+(((IkReal(-1.00000000000000))*(x8077)*(x8080)*(x8097)))+(((IkReal(-1.00000000000000))*(r02)*(x8077)*(x8082)))+(((IkReal(-1.00000000000000))*(x8077)*(x8080)*(x8096)))+(((IkReal(-1.00000000000000))*(x8079)*(x8080)*(x8100)))+(((IkReal(-1.00000000000000))*(r11)*(x8078)*(x8090)))+(((IkReal(-1.00000000000000))*(x8082)*(x8103)))+(((IkReal(-1.00000000000000))*(r01)*(x8077)*(x8078)))+(((IkReal(-1.00000000000000))*(x8080)*(x8090)*(x8099)))+(((cj4)*(r00)*(x8083)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x8079)*(x8084)))+(((IkReal(-1.00000000000000))*(sj0)*(x8084)*(x8096)))+(((cj0)*(r12)*(x8098)))+(((IkReal(-1.00000000000000))*(r10)*(x8081)*(x8091)))+(((sj0)*(x8081)*(x8096)))+(((r10)*(x8084)*(x8091)))+(((r00)*(x8079)*(x8081)))+(((IkReal(-1.00000000000000))*(x8086)*(x8087)))+(((r11)*(x8083)*(x8084)))+(((IkReal(-1.00000000000000))*(py)*(x8077)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x8081)*(x8083)))+(((x8093)*(x8094)))+(((IkReal(-1.00000000000000))*(x8098)*(x8101)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8077)*(x8078)))+(((r01)*(sj4)*(x8091)))+(((IkReal(-1.00000000000000))*(r10)*(x8090)*(x8102)))+(((IkReal(-1.00000000000000))*(r00)*(x8077)*(x8102)))+(((r11)*(sj4)*(x8079)))+(((IkReal(-1.00000000000000))*(r11)*(x8086)*(x8092)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x8077)*(x8092)))+(((IkReal(-1.00000000000000))*(r02)*(x8077)*(x8085)))+(((IkReal(-1.00000000000000))*(x8085)*(x8103)))+(((IkReal(-1.00000000000000))*(x8078)*(x8086)*(x8100)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj0)*(r02)*(x8098)))+(((IkReal(-1.00000000000000))*(r10)*(x8079)*(x8081)))+(((IkReal(-1.00000000000000))*(py)*(x8090)))+(((r12)*(sj0)*(x8098)))+(((r00)*(x8084)*(x8091)))+(((x8086)*(x8093)))+(((IkReal(-1.00000000000000))*(r00)*(x8081)*(x8091)))+(((IkReal(-1.00000000000000))*(px)*(x8077)))+(((r10)*(x8079)*(x8084)))+(((sj0)*(x8084)*(x8099)))+(((IkReal(-1.00000000000000))*(sj0)*(x8081)*(x8099)))+(((IkReal(-1.00000000000000))*(r01)*(x8081)*(x8083)))+(((r01)*(x8083)*(x8084)))+(((x8087)*(x8094)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8104=((IkReal(1.00000000000000))*(sj5)); +IkReal x8105=((cj6)*(r21)); +IkReal x8106=((r20)*(sj6)); +IkReal x8107=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x8105)*(x8107)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8104)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8106)*(x8107)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x8104)*(x8105)))+(((IkReal(-1.00000000000000))*(x8104)*(x8106)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x8105)*(x8107)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8104)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8106)*(x8107)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x8104)*(x8105)))+(((IkReal(-1.00000000000000))*(x8104)*(x8106)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x8105)*(x8107)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8104)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8106)*(x8107)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x8104)*(x8105)))+(((IkReal(-1.00000000000000))*(x8104)*(x8106)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x8108=IKsin(j3); +IkReal x8109=IKcos(j3); +IkReal x8110=((sj0)*(sj5)); +IkReal x8111=((r00)*(sj6)); +IkReal x8112=((cj6)*(r01)); +IkReal x8113=((cj5)*(sj0)); +IkReal x8114=((cj0)*(cj5)); +IkReal x8115=((cj6)*(sj4)); +IkReal x8116=((sj4)*(sj6)); +IkReal x8117=((cj0)*(r11)); +IkReal x8118=((cj4)*(cj6)); +IkReal x8119=((cj4)*(sj6)); +IkReal x8120=((IkReal(1.00000000000000))*(cj0)); +IkReal x8121=((cj4)*(sj5)); +IkReal x8122=((sj5)*(sj6)); +IkReal x8123=((cj6)*(sj5)); +evalcond[0]=((x8109)+(((r21)*(x8123)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x8122)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x8116)))+(((cj5)*(r20)*(x8119)))+(x8108)+(((r20)*(x8115)))+(((r22)*(x8121)))+(((cj5)*(r21)*(x8118)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8108)))+(((r12)*(x8114)))+(((IkReal(-1.00000000000000))*(r10)*(x8120)*(x8122)))+(((x8110)*(x8111)))+(((x8110)*(x8112)))+(((IkReal(-1.00000000000000))*(r02)*(x8113)))+(((IkReal(-1.00000000000000))*(x8117)*(x8123)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x8114)*(x8118)))+(((cj4)*(x8111)*(x8113)))+(((IkReal(-1.00000000000000))*(r10)*(x8115)*(x8120)))+(x8109)+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x8116)))+(((x8116)*(x8117)))+(((cj4)*(x8112)*(x8113)))+(((IkReal(-1.00000000000000))*(r10)*(x8114)*(x8119)))+(((cj4)*(r02)*(x8110)))+(((r00)*(sj0)*(x8115)))+(((IkReal(-1.00000000000000))*(r12)*(x8120)*(x8121)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8124=((cj0)*(cj5)); +IkReal x8125=((IkReal(1.00000000000000))*(cj0)); +IkReal x8126=((cj6)*(r11)); +IkReal x8127=((r10)*(sj6)); +IkReal x8128=((cj5)*(sj0)); +IkReal x8129=((r00)*(sj5)*(sj6)); +IkReal x8130=((cj6)*(r01)*(sj5)); +IkReal x8131=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((r12)*(x8124)))+(((IkReal(-1.00000000000000))*(r02)*(x8128)))+(((sj0)*(x8129)))+(((sj0)*(x8130)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8127)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8126))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x8125)*(x8130)))+(((IkReal(-1.00000000000000))*(x8125)*(x8129)))+(((r12)*(x8128)))+(((IkReal(-1.00000000000000))*(x8127)*(x8131)))+(((IkReal(-1.00000000000000))*(x8126)*(x8131)))+(((r02)*(x8124))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r12)*(x8124)))+(((IkReal(-1.00000000000000))*(r02)*(x8128)))+(((sj0)*(x8129)))+(((sj0)*(x8130)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8127)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8126)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x8125)*(x8130)))+(((IkReal(-1.00000000000000))*(x8125)*(x8129)))+(((r12)*(x8128)))+(((IkReal(-1.00000000000000))*(x8127)*(x8131)))+(((IkReal(-1.00000000000000))*(x8126)*(x8131)))+(((r02)*(x8124)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r12)*(x8124)))+(((IkReal(-1.00000000000000))*(r02)*(x8128)))+(((sj0)*(x8129)))+(((sj0)*(x8130)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8127)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8126)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x8125)*(x8130)))+(((IkReal(-1.00000000000000))*(x8125)*(x8129)))+(((r12)*(x8128)))+(((IkReal(-1.00000000000000))*(x8127)*(x8131)))+(((IkReal(-1.00000000000000))*(x8126)*(x8131)))+(((r02)*(x8124))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8132=IKsin(j3); +IkReal x8133=IKcos(j3); +IkReal x8134=((sj0)*(sj5)); +IkReal x8135=((r00)*(sj6)); +IkReal x8136=((cj6)*(r01)); +IkReal x8137=((cj4)*(cj5)); +IkReal x8138=((IkReal(1.00000000000000))*(cj0)); +IkReal x8139=((cj5)*(r12)); +IkReal x8140=((IkReal(1.00000000000000))*(sj0)); +IkReal x8141=((cj6)*(r11)); +IkReal x8142=((cj5)*(r02)); +IkReal x8143=((IkReal(1.00000000000000))*(cj1)); +IkReal x8144=((cj6)*(sj4)); +IkReal x8145=((cj6)*(r21)); +IkReal x8146=((r20)*(sj6)); +IkReal x8147=((r10)*(sj6)); +IkReal x8148=((sj4)*(sj6)); +IkReal x8149=((cj4)*(r02)); +IkReal x8150=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x8151=((IkReal(1.00000000000000))*(x8132)); +IkReal x8152=((cj0)*(x8148)); +evalcond[0]=((((sj5)*(x8146)))+(((IkReal(-1.00000000000000))*(sj1)*(x8133)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8145)))); +evalcond[1]=((((r20)*(x8144)))+(((IkReal(-1.00000000000000))*(r21)*(x8148)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x8151)))+(((x8137)*(x8146)))+(((x8137)*(x8145)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x8138)*(x8147)))+(((IkReal(-1.00000000000000))*(x8151)))+(((IkReal(-1.00000000000000))*(x8140)*(x8142)))+(((x8134)*(x8136)))+(((IkReal(-1.00000000000000))*(sj5)*(x8138)*(x8141)))+(((cj0)*(x8139)))+(((x8134)*(x8135)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8134)*(x8147)))+(((IkReal(-1.00000000000000))*(sj5)*(x8135)*(x8138)))+(((IkReal(-1.00000000000000))*(sj5)*(x8136)*(x8138)))+(((cj0)*(x8142)))+(((IkReal(-1.00000000000000))*(x8134)*(x8141)))+(((sj0)*(x8139)))+(((IkReal(-1.00000000000000))*(x8133)*(x8143)))); +evalcond[4]=((((x8134)*(x8149)))+(x8133)+(((IkReal(-1.00000000000000))*(r10)*(x8138)*(x8144)))+(((r11)*(x8152)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x8138)))+(((r00)*(sj0)*(x8144)))+(((IkReal(-1.00000000000000))*(x8137)*(x8138)*(x8141)))+(((sj0)*(x8135)*(x8137)))+(((sj0)*(x8136)*(x8137)))+(((IkReal(-1.00000000000000))*(x8137)*(x8138)*(x8147)))+(((IkReal(-1.00000000000000))*(r01)*(x8140)*(x8148)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x8138)*(x8144)))+(((IkReal(-1.00000000000000))*(x8137)*(x8140)*(x8141)))+(((IkReal(-1.00000000000000))*(sj5)*(x8138)*(x8149)))+(((IkReal(-1.00000000000000))*(r10)*(x8140)*(x8144)))+(((IkReal(-1.00000000000000))*(x8137)*(x8140)*(x8147)))+(((r11)*(sj0)*(x8148)))+(((IkReal(-1.00000000000000))*(x8134)*(x8150)))+(((r01)*(x8152)))+(((IkReal(-1.00000000000000))*(x8136)*(x8137)*(x8138)))+(((IkReal(-1.00000000000000))*(x8135)*(x8137)*(x8138)))+(((IkReal(-1.00000000000000))*(x8132)*(x8143)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8153=((sj5)*(sj6)); +IkReal x8154=((cj6)*(sj5)); +IkReal x8155=((IkReal(1.00000000000000))*(cj0)); +IkReal x8156=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8156)))+(((r01)*(sj0)*(x8154)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x8153)*(x8155)))+(((r00)*(sj0)*(x8153)))+(((IkReal(-1.00000000000000))*(r11)*(x8154)*(x8155))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8153)))+(((r21)*(x8154)))+(((IkReal(-1.00000000000000))*(r22)*(x8156))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8156)))+(((r01)*(sj0)*(x8154)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x8153)*(x8155)))+(((r00)*(sj0)*(x8153)))+(((IkReal(-1.00000000000000))*(r11)*(x8154)*(x8155)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8153)))+(((r21)*(x8154)))+(((IkReal(-1.00000000000000))*(r22)*(x8156)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8156)))+(((r01)*(sj0)*(x8154)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x8153)*(x8155)))+(((r00)*(sj0)*(x8153)))+(((IkReal(-1.00000000000000))*(r11)*(x8154)*(x8155)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8153)))+(((r21)*(x8154)))+(((IkReal(-1.00000000000000))*(r22)*(x8156))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8157=IKsin(j3); +IkReal x8158=IKcos(j3); +IkReal x8159=((sj0)*(sj5)); +IkReal x8160=((r00)*(sj6)); +IkReal x8161=((cj6)*(r01)); +IkReal x8162=((cj4)*(cj5)); +IkReal x8163=((IkReal(1.00000000000000))*(cj0)); +IkReal x8164=((cj5)*(r12)); +IkReal x8165=((IkReal(1.00000000000000))*(sj0)); +IkReal x8166=((cj6)*(r11)); +IkReal x8167=((cj5)*(r02)); +IkReal x8168=((IkReal(1.00000000000000))*(cj1)); +IkReal x8169=((cj6)*(sj4)); +IkReal x8170=((cj6)*(r21)); +IkReal x8171=((r20)*(sj6)); +IkReal x8172=((r10)*(sj6)); +IkReal x8173=((sj4)*(sj6)); +IkReal x8174=((cj4)*(r02)); +IkReal x8175=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x8176=((IkReal(1.00000000000000))*(x8157)); +IkReal x8177=((cj0)*(x8173)); +evalcond[0]=((((sj5)*(x8171)))+(((IkReal(-1.00000000000000))*(sj1)*(x8158)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8170)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x8176)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x8169)))+(((x8162)*(x8171)))+(((x8162)*(x8170)))+(((IkReal(-1.00000000000000))*(r21)*(x8173)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8176)))+(((x8159)*(x8160)))+(((IkReal(-1.00000000000000))*(sj5)*(x8163)*(x8172)))+(((IkReal(-1.00000000000000))*(sj5)*(x8163)*(x8166)))+(((cj0)*(x8164)))+(((x8159)*(x8161)))+(((IkReal(-1.00000000000000))*(x8165)*(x8167)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8158)*(x8168)))+(((IkReal(-1.00000000000000))*(sj5)*(x8161)*(x8163)))+(((sj0)*(x8164)))+(((IkReal(-1.00000000000000))*(x8159)*(x8172)))+(((IkReal(-1.00000000000000))*(x8159)*(x8166)))+(((cj0)*(x8167)))+(((IkReal(-1.00000000000000))*(sj5)*(x8160)*(x8163)))); +evalcond[4]=((x8158)+(((IkReal(-1.00000000000000))*(x8162)*(x8163)*(x8166)))+(((x8159)*(x8174)))+(((sj0)*(x8161)*(x8162)))+(((r11)*(x8177)))+(((IkReal(-1.00000000000000))*(r01)*(x8165)*(x8173)))+(((IkReal(-1.00000000000000))*(x8162)*(x8163)*(x8172)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x8163)))+(((r00)*(sj0)*(x8169)))+(((sj0)*(x8160)*(x8162)))+(((IkReal(-1.00000000000000))*(r10)*(x8163)*(x8169)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8162)*(x8165)*(x8172)))+(((IkReal(-1.00000000000000))*(r10)*(x8165)*(x8169)))+(((IkReal(-1.00000000000000))*(x8157)*(x8168)))+(((r11)*(sj0)*(x8173)))+(((IkReal(-1.00000000000000))*(x8161)*(x8162)*(x8163)))+(((IkReal(-1.00000000000000))*(sj5)*(x8163)*(x8174)))+(((IkReal(-1.00000000000000))*(x8162)*(x8165)*(x8166)))+(((IkReal(-1.00000000000000))*(x8160)*(x8162)*(x8163)))+(((r01)*(x8177)))+(((IkReal(-1.00000000000000))*(x8159)*(x8175)))+(((IkReal(-1.00000000000000))*(r00)*(x8163)*(x8169)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8178=((r20)*(sj6)); +IkReal x8179=((cj4)*(cj5)); +IkReal x8180=((cj6)*(r21)); +if( IKabs(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8178)*(x8179)))+(((x8179)*(x8180))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst11)*(((((sj5)*(x8180)))+(((sj5)*(x8178)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8178)*(x8179)))+(((x8179)*(x8180)))))), ((gconst11)*(((((sj5)*(x8180)))+(((sj5)*(x8178)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8181=IKsin(j3); +IkReal x8182=IKcos(j3); +IkReal x8183=((sj0)*(sj5)); +IkReal x8184=((r00)*(sj6)); +IkReal x8185=((cj6)*(r01)); +IkReal x8186=((cj4)*(cj5)); +IkReal x8187=((IkReal(1.00000000000000))*(cj0)); +IkReal x8188=((cj5)*(r12)); +IkReal x8189=((IkReal(1.00000000000000))*(sj0)); +IkReal x8190=((cj6)*(r11)); +IkReal x8191=((cj5)*(r02)); +IkReal x8192=((IkReal(1.00000000000000))*(cj1)); +IkReal x8193=((cj6)*(sj4)); +IkReal x8194=((cj6)*(r21)); +IkReal x8195=((r20)*(sj6)); +IkReal x8196=((r10)*(sj6)); +IkReal x8197=((sj4)*(sj6)); +IkReal x8198=((cj4)*(r02)); +IkReal x8199=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x8200=((IkReal(1.00000000000000))*(x8181)); +IkReal x8201=((cj0)*(x8197)); +evalcond[0]=((((sj5)*(x8194)))+(((sj5)*(x8195)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x8182)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x8197)))+(((IkReal(-1.00000000000000))*(sj1)*(x8200)))+(((cj4)*(r22)*(sj5)))+(((x8186)*(x8195)))+(((r20)*(x8193)))+(((x8186)*(x8194)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8200)))+(((cj0)*(x8188)))+(((x8183)*(x8185)))+(((IkReal(-1.00000000000000))*(x8189)*(x8191)))+(((x8183)*(x8184)))+(((IkReal(-1.00000000000000))*(sj5)*(x8187)*(x8196)))+(((IkReal(-1.00000000000000))*(sj5)*(x8187)*(x8190)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x8185)*(x8187)))+(((IkReal(-1.00000000000000))*(x8183)*(x8190)))+(((IkReal(-1.00000000000000))*(x8183)*(x8196)))+(((IkReal(-1.00000000000000))*(sj5)*(x8184)*(x8187)))+(((IkReal(-1.00000000000000))*(x8182)*(x8192)))+(((sj0)*(x8188)))+(((cj0)*(x8191)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8186)*(x8187)*(x8190)))+(((IkReal(-1.00000000000000))*(r01)*(x8189)*(x8197)))+(((IkReal(-1.00000000000000))*(x8186)*(x8187)*(x8196)))+(x8182)+(((sj0)*(x8185)*(x8186)))+(((IkReal(-1.00000000000000))*(r10)*(x8187)*(x8193)))+(((r11)*(x8201)))+(((sj0)*(x8184)*(x8186)))+(((x8183)*(x8198)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x8187)))+(((r00)*(sj0)*(x8193)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x8189)*(x8193)))+(((IkReal(-1.00000000000000))*(x8185)*(x8186)*(x8187)))+(((IkReal(-1.00000000000000))*(x8186)*(x8189)*(x8196)))+(((IkReal(-1.00000000000000))*(x8183)*(x8199)))+(((r01)*(x8201)))+(((IkReal(-1.00000000000000))*(sj5)*(x8187)*(x8198)))+(((IkReal(-1.00000000000000))*(x8181)*(x8192)))+(((IkReal(-1.00000000000000))*(x8184)*(x8186)*(x8187)))+(((r11)*(sj0)*(x8197)))+(((IkReal(-1.00000000000000))*(x8186)*(x8189)*(x8190)))+(((IkReal(-1.00000000000000))*(r00)*(x8187)*(x8193)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x8202=((IkReal(1.00000000000000))*(cj0)); +IkReal x8203=((cj4)*(sj6)); +IkReal x8204=((sj0)*(sj4)); +IkReal x8205=((cj5)*(sj6)); +IkReal x8206=((sj4)*(sj5)); +IkReal x8207=((r12)*(sj5)); +IkReal x8208=((IkReal(0.374290000000000))*(cj5)); +IkReal x8209=((r02)*(sj0)); +IkReal x8210=((IkReal(1.00000000000000))*(sj0)); +IkReal x8211=((cj0)*(r10)); +IkReal x8212=((cj4)*(cj6)); +IkReal x8213=((r00)*(sj0)); +IkReal x8214=((cj6)*(r21)); +IkReal x8215=((IkReal(0.374290000000000))*(sj5)); +IkReal x8216=((cj0)*(r00)); +IkReal x8217=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8218=((cj0)*(r02)); +IkReal x8219=((cj5)*(sj4)); +IkReal x8220=((cj6)*(r01)); +IkReal x8221=((cj6)*(r11)); +IkReal x8222=((r01)*(sj0)); +IkReal x8223=((r10)*(sj0)); +IkReal x8224=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x8225=((sj6)*(x8215)); +IkReal x8226=((cj0)*(cj6)*(x8215)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x8203)))+(((r22)*(x8206)))+(((x8214)*(x8219)))+(cj1)+(((IkReal(-1.00000000000000))*(r20)*(x8212)))+(((r20)*(sj4)*(x8205)))); +evalcond[2]=((((r20)*(x8225)))+(((IkReal(-0.0100000000000000))*(cj5)*(x8214)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x8217)))+(((IkReal(-1.00000000000000))*(r22)*(x8208)))+(pz)+(((x8214)*(x8215)))+(((IkReal(-0.0100000000000000))*(r20)*(x8205)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8202)*(x8219)*(x8221)))+(((IkReal(-1.00000000000000))*(r11)*(x8202)*(x8203)))+(((x8211)*(x8212)))+(((r02)*(sj5)*(x8204)))+(((IkReal(-1.00000000000000))*(r12)*(x8202)*(x8206)))+(((r00)*(x8204)*(x8205)))+(((cj5)*(x8204)*(x8220)))+(((IkReal(-1.00000000000000))*(r00)*(x8210)*(x8212)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x8202)*(x8205)))+(((x8203)*(x8222)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj5)*(x8204)*(x8221)))+(((IkReal(-1.00000000000000))*(r02)*(x8202)*(x8206)))+(((IkReal(-1.00000000000000))*(r01)*(x8202)*(x8203)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x8202)*(x8205)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r11)*(x8203)*(x8210)))+(((IkReal(-1.00000000000000))*(x8202)*(x8219)*(x8220)))+(((IkReal(-1.00000000000000))*(r10)*(x8204)*(x8205)))+(((x8212)*(x8223)))+(((IkReal(-1.00000000000000))*(x8204)*(x8207)))+(((x8212)*(x8216)))); +evalcond[5]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x8202)))+(((IkReal(-1.00000000000000))*(x8211)*(x8225)))+(((IkReal(-0.0100000000000000))*(x8205)*(x8213)))+(((IkReal(-1.00000000000000))*(x8208)*(x8209)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x8221)))+(((IkReal(-1.00000000000000))*(cj0)*(x8215)*(x8221)))+(((IkReal(0.0100000000000000))*(x8205)*(x8211)))+(((IkReal(-1.00000000000000))*(x8209)*(x8217)))+(((sj0)*(x8215)*(x8220)))+(((x8213)*(x8225)))+(((cj0)*(r12)*(x8208)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x8220)))+(((IkReal(0.0100000000000000))*(cj0)*(x8207)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((x8208)*(x8218)))+(((IkReal(0.0100000000000000))*(sj0)*(x8207)))+(((r12)*(sj0)*(x8208)))+(((IkReal(-1.00000000000000))*(x8223)*(x8225)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x8221)))+(((IkReal(-1.00000000000000))*(cj0)*(x8215)*(x8220)))+(((IkReal(-1.00000000000000))*(sj0)*(x8215)*(x8221)))+(((IkReal(-1.00000000000000))*(x8216)*(x8225)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x8220)))+(((IkReal(0.0100000000000000))*(x8205)*(x8223)))+(((IkReal(-1.00000000000000))*(px)*(x8202)))+(((x8217)*(x8218)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(0.0100000000000000))*(x8205)*(x8216)))+(((IkReal(-1.00000000000000))*(py)*(x8210)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst12; +gconst12=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x8227=((IkReal(1.00000000000000))*(cj0)); +IkReal x8228=((cj4)*(sj6)); +IkReal x8229=((sj0)*(sj6)); +IkReal x8230=((cj5)*(sj4)); +IkReal x8231=((IkReal(0.374290000000000))*(sj5)); +IkReal x8232=((sj4)*(sj5)); +IkReal x8233=((cj0)*(cj6)); +IkReal x8234=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8235=((cj4)*(sj5)); +IkReal x8236=((cj5)*(sj0)); +IkReal x8237=((IkReal(0.374290000000000))*(r02)); +IkReal x8238=((r20)*(sj6)); +IkReal x8239=((cj6)*(r21)); +IkReal x8240=((IkReal(1.00000000000000))*(sj0)); +IkReal x8241=((cj0)*(sj6)); +IkReal x8242=((cj4)*(cj6)); +IkReal x8243=((IkReal(0.374290000000000))*(r12)); +IkReal x8244=((cj0)*(cj5)); +IkReal x8245=((cj6)*(sj5)); +IkReal x8246=((cj6)*(r01)); +IkReal x8247=((r00)*(sj6)); +IkReal x8248=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8249=((cj6)*(r11)); +IkReal x8250=((IkReal(1.00000000000000))*(r10)); +IkReal x8251=((r02)*(sj0)); +IkReal x8252=((cj6)*(sj4)); +IkReal x8253=((r12)*(x8240)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x8242)))+(((x8230)*(x8239)))+(((x8230)*(x8238)))+(((r21)*(x8228)))+(((r22)*(x8232)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(x8234)*(x8238)))+(((IkReal(-1.00000000000000))*(x8234)*(x8239)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x8231)*(x8239)))+(((x8231)*(x8238)))+(((IkReal(-1.00000000000000))*(r22)*(x8248)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x8240)*(x8245)))+(((IkReal(-1.00000000000000))*(r01)*(x8227)*(x8245)))+(((IkReal(-1.00000000000000))*(sj5)*(x8229)*(x8250)))+(((IkReal(-1.00000000000000))*(sj5)*(x8227)*(x8247)))+(((r02)*(x8244)))+(((r12)*(x8236)))); +evalcond[4]=((((sj0)*(x8230)*(x8246)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x8227)*(x8230)))+(((IkReal(-1.00000000000000))*(r00)*(x8240)*(x8242)))+(((r00)*(x8229)*(x8230)))+(((IkReal(-1.00000000000000))*(r11)*(x8227)*(x8228)))+(((x8232)*(x8251)))+(((IkReal(-1.00000000000000))*(r12)*(x8227)*(x8232)))+(((IkReal(-1.00000000000000))*(x8227)*(x8230)*(x8249)))+(((r01)*(sj0)*(x8228)))+(((cj4)*(r10)*(x8233)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((cj4)*(r00)*(x8233)))+(((IkReal(-1.00000000000000))*(r11)*(x8228)*(x8240)))+(((IkReal(-1.00000000000000))*(r01)*(x8227)*(x8228)))+(((IkReal(-1.00000000000000))*(r02)*(x8227)*(x8232)))+(((r10)*(sj0)*(x8242)))+(((IkReal(-1.00000000000000))*(x8230)*(x8240)*(x8249)))+(((IkReal(-1.00000000000000))*(x8227)*(x8230)*(x8247)))+(((IkReal(-1.00000000000000))*(x8229)*(x8230)*(x8250)))+(((IkReal(-1.00000000000000))*(x8227)*(x8230)*(x8246)))+(((IkReal(-1.00000000000000))*(x8232)*(x8253)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r10)*(x8234)*(x8241)))+(((IkReal(-1.00000000000000))*(py)*(x8227)))+(((IkReal(-1.00000000000000))*(r00)*(x8229)*(x8234)))+(((IkReal(-1.00000000000000))*(x8248)*(x8251)))+(((r11)*(x8233)*(x8234)))+(((r00)*(x8229)*(x8231)))+(((IkReal(-1.00000000000000))*(r10)*(x8231)*(x8241)))+(((IkReal(-1.00000000000000))*(r11)*(x8231)*(x8233)))+(((sj0)*(x8231)*(x8246)))+(((IkReal(-1.00000000000000))*(sj0)*(x8234)*(x8246)))+(((x8243)*(x8244)))+(((cj0)*(r12)*(x8248)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x8236)*(x8237)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r02)*(x8227)*(x8235)))+(((IkReal(-1.00000000000000))*(x8228)*(x8236)*(x8250)))+(((IkReal(-1.00000000000000))*(r10)*(x8240)*(x8252)))+(((r01)*(sj4)*(x8241)))+(((IkReal(-1.00000000000000))*(r11)*(x8236)*(x8242)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x8227)*(x8242)))+(((IkReal(-1.00000000000000))*(x8235)*(x8253)))+(((IkReal(-1.00000000000000))*(r00)*(x8227)*(x8252)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8227)*(x8228)))+(((r11)*(sj4)*(x8229)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj0)*(r02)*(x8248)))+(((IkReal(-1.00000000000000))*(px)*(x8227)))+(((x8237)*(x8244)))+(((sj0)*(x8234)*(x8249)))+(((r12)*(sj0)*(x8248)))+(((IkReal(-1.00000000000000))*(r01)*(x8231)*(x8233)))+(((IkReal(-1.00000000000000))*(r10)*(x8229)*(x8231)))+(((IkReal(-1.00000000000000))*(sj0)*(x8231)*(x8249)))+(((IkReal(-1.00000000000000))*(r00)*(x8231)*(x8241)))+(((r01)*(x8233)*(x8234)))+(((x8236)*(x8243)))+(((r10)*(x8229)*(x8234)))+(((IkReal(-1.00000000000000))*(py)*(x8240)))+(((r00)*(x8234)*(x8241)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8254=((r20)*(sj6)); +IkReal x8255=((cj4)*(cj5)); +IkReal x8256=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8254)*(x8255)))+(((x8255)*(x8256))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x8256)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8254))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8254)*(x8255)))+(((x8255)*(x8256)))))+IKsqr(((((sj5)*(x8256)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8254)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8254)*(x8255)))+(((x8255)*(x8256)))), ((((sj5)*(x8256)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8254))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x8257=IKsin(j3); +IkReal x8258=((sj0)*(sj5)); +IkReal x8259=((r00)*(sj6)); +IkReal x8260=((cj6)*(r01)); +IkReal x8261=((cj5)*(sj0)); +IkReal x8262=((cj0)*(cj5)); +IkReal x8263=((cj6)*(sj4)); +IkReal x8264=((sj4)*(sj6)); +IkReal x8265=((cj0)*(r11)); +IkReal x8266=((cj4)*(cj6)); +IkReal x8267=((cj4)*(sj6)); +IkReal x8268=((IkReal(1.00000000000000))*(cj0)); +IkReal x8269=((cj4)*(sj5)); +IkReal x8270=((sj5)*(sj6)); +IkReal x8271=((cj6)*(sj5)); +IkReal x8272=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x8272)))+(((r20)*(x8270)))+(((r21)*(x8271)))); +evalcond[1]=((((cj5)*(r20)*(x8267)))+(((r22)*(x8269)))+(((IkReal(-1.00000000000000))*(r21)*(x8264)))+(((cj5)*(r21)*(x8266)))+(((r20)*(x8263)))+(((IkReal(-1.00000000000000))*(x8257)))); +evalcond[2]=((((r12)*(x8262)))+(((IkReal(-1.00000000000000))*(x8265)*(x8271)))+(((x8258)*(x8260)))+(((IkReal(-1.00000000000000))*(r10)*(x8268)*(x8270)))+(((x8258)*(x8259)))+(x8257)+(((IkReal(-1.00000000000000))*(r02)*(x8261)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x8262)*(x8267)))+(((cj4)*(x8259)*(x8261)))+(((r00)*(sj0)*(x8263)))+(((x8264)*(x8265)))+(((IkReal(-1.00000000000000))*(x8272)))+(((IkReal(-1.00000000000000))*(r10)*(x8263)*(x8268)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x8264)))+(((IkReal(-1.00000000000000))*(r12)*(x8268)*(x8269)))+(((cj4)*(r02)*(x8258)))+(((cj4)*(x8260)*(x8261)))+(((IkReal(-1.00000000000000))*(r11)*(x8262)*(x8266)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x8273=((IkReal(1.00000000000000))*(cj0)); +IkReal x8274=((cj4)*(sj6)); +IkReal x8275=((sj0)*(sj6)); +IkReal x8276=((cj5)*(sj4)); +IkReal x8277=((IkReal(0.374290000000000))*(sj5)); +IkReal x8278=((sj4)*(sj5)); +IkReal x8279=((cj0)*(cj6)); +IkReal x8280=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8281=((cj4)*(sj5)); +IkReal x8282=((cj5)*(sj0)); +IkReal x8283=((IkReal(0.374290000000000))*(r02)); +IkReal x8284=((r20)*(sj6)); +IkReal x8285=((cj6)*(r21)); +IkReal x8286=((IkReal(1.00000000000000))*(sj0)); +IkReal x8287=((cj0)*(sj6)); +IkReal x8288=((cj4)*(cj6)); +IkReal x8289=((IkReal(0.374290000000000))*(r12)); +IkReal x8290=((cj0)*(cj5)); +IkReal x8291=((cj6)*(sj5)); +IkReal x8292=((cj6)*(r01)); +IkReal x8293=((r00)*(sj6)); +IkReal x8294=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8295=((cj6)*(r11)); +IkReal x8296=((IkReal(1.00000000000000))*(r10)); +IkReal x8297=((r02)*(sj0)); +IkReal x8298=((cj6)*(sj4)); +IkReal x8299=((r12)*(x8286)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x8276)*(x8285)))+(((r22)*(x8278)))+(((x8276)*(x8284)))+(((IkReal(-1.00000000000000))*(r20)*(x8288)))+(((r21)*(x8274)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(r22)*(x8294)))+(((IkReal(-1.00000000000000))*(x8280)*(x8284)))+(((IkReal(-1.00000000000000))*(x8280)*(x8285)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x8277)*(x8284)))+(((x8277)*(x8285)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x8275)*(x8296)))+(((r12)*(x8282)))+(((r02)*(x8290)))+(((IkReal(-1.00000000000000))*(r11)*(x8286)*(x8291)))+(((IkReal(-1.00000000000000))*(r01)*(x8273)*(x8291)))+(((IkReal(-1.00000000000000))*(sj5)*(x8273)*(x8293)))); +evalcond[4]=((((x8278)*(x8297)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x8273)*(x8276)))+(((r00)*(x8275)*(x8276)))+(((IkReal(-1.00000000000000))*(r12)*(x8273)*(x8278)))+(((IkReal(-1.00000000000000))*(r11)*(x8273)*(x8274)))+(((r01)*(sj0)*(x8274)))+(((IkReal(-1.00000000000000))*(x8273)*(x8276)*(x8295)))+(((IkReal(-1.00000000000000))*(r00)*(x8286)*(x8288)))+(((cj4)*(r10)*(x8279)))+(((sj0)*(x8276)*(x8292)))); +evalcond[5]=((IkReal(1.00000000000000))+(((r10)*(sj0)*(x8288)))+(((cj4)*(r00)*(x8279)))+(((IkReal(-1.00000000000000))*(r01)*(x8273)*(x8274)))+(((IkReal(-1.00000000000000))*(r11)*(x8274)*(x8286)))+(((IkReal(-1.00000000000000))*(x8273)*(x8276)*(x8292)))+(((IkReal(-1.00000000000000))*(x8276)*(x8286)*(x8295)))+(((IkReal(-1.00000000000000))*(r02)*(x8273)*(x8278)))+(((IkReal(-1.00000000000000))*(x8278)*(x8299)))+(((IkReal(-1.00000000000000))*(x8275)*(x8276)*(x8296)))+(((IkReal(-1.00000000000000))*(x8273)*(x8276)*(x8293)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((x8289)*(x8290)))+(((r11)*(x8279)*(x8280)))+(((IkReal(-1.00000000000000))*(r11)*(x8277)*(x8279)))+(((cj0)*(r12)*(x8294)))+(((IkReal(-1.00000000000000))*(r00)*(x8275)*(x8280)))+(((IkReal(-1.00000000000000))*(r10)*(x8277)*(x8287)))+(((IkReal(-1.00000000000000))*(sj0)*(x8280)*(x8292)))+(((IkReal(-1.00000000000000))*(x8282)*(x8283)))+(((IkReal(-1.00000000000000))*(py)*(x8273)))+(((sj0)*(x8277)*(x8292)))+(((px)*(sj0)))+(((r10)*(x8280)*(x8287)))+(((r00)*(x8275)*(x8277)))+(((IkReal(-1.00000000000000))*(x8294)*(x8297)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r10)*(x8286)*(x8298)))+(((IkReal(-1.00000000000000))*(x8281)*(x8299)))+(((IkReal(-1.00000000000000))*(r00)*(x8273)*(x8298)))+(((IkReal(-1.00000000000000))*(r02)*(x8273)*(x8281)))+(((IkReal(-1.00000000000000))*(x8274)*(x8282)*(x8296)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x8273)*(x8288)))+(((r11)*(sj4)*(x8275)))+(((r01)*(sj4)*(x8287)))+(((IkReal(-1.00000000000000))*(r11)*(x8282)*(x8288)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8273)*(x8274)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x8273)))+(((IkReal(-1.00000000000000))*(py)*(x8286)))+(((r12)*(sj0)*(x8294)))+(((x8283)*(x8290)))+(((r10)*(x8275)*(x8280)))+(((r01)*(x8279)*(x8280)))+(((IkReal(-1.00000000000000))*(r00)*(x8277)*(x8287)))+(((IkReal(-1.00000000000000))*(sj0)*(x8277)*(x8295)))+(((cj0)*(r02)*(x8294)))+(((sj0)*(x8280)*(x8295)))+(((IkReal(-1.00000000000000))*(r10)*(x8275)*(x8277)))+(((IkReal(-1.00000000000000))*(r01)*(x8277)*(x8279)))+(((x8282)*(x8289)))+(((r00)*(x8280)*(x8287)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8300=((IkReal(1.00000000000000))*(sj5)); +IkReal x8301=((cj6)*(r21)); +IkReal x8302=((r20)*(sj6)); +IkReal x8303=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x8302)*(x8303)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8300)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8301)*(x8303)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x8300)*(x8301)))+(((IkReal(-1.00000000000000))*(x8300)*(x8302)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x8302)*(x8303)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8300)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8301)*(x8303)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x8300)*(x8301)))+(((IkReal(-1.00000000000000))*(x8300)*(x8302)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x8302)*(x8303)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8300)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8301)*(x8303)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x8300)*(x8301)))+(((IkReal(-1.00000000000000))*(x8300)*(x8302)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x8304=IKsin(j3); +IkReal x8305=IKcos(j3); +IkReal x8306=((sj0)*(sj5)); +IkReal x8307=((r00)*(sj6)); +IkReal x8308=((cj6)*(r01)); +IkReal x8309=((cj0)*(cj5)); +IkReal x8310=((IkReal(1.00000000000000))*(cj5)); +IkReal x8311=((cj4)*(cj5)); +IkReal x8312=((cj6)*(sj4)); +IkReal x8313=((sj4)*(sj6)); +IkReal x8314=((cj0)*(r11)); +IkReal x8315=((IkReal(1.00000000000000))*(cj4)); +IkReal x8316=((cj6)*(r21)); +IkReal x8317=((r20)*(sj6)); +IkReal x8318=((cj0)*(sj5)); +IkReal x8319=((r10)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r22)*(x8310)))+(x8305)+(((sj5)*(x8316)))+(((sj5)*(x8317)))); +evalcond[1]=((((x8311)*(x8317)))+(((x8311)*(x8316)))+(((r20)*(x8312)))+(((cj4)*(r22)*(sj5)))+(x8304)+(((IkReal(-1.00000000000000))*(r21)*(x8313)))); +evalcond[2]=((((r12)*(x8309)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8310)))+(((x8306)*(x8308)))+(((x8306)*(x8307)))+(((IkReal(-1.00000000000000))*(x8318)*(x8319)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x8314)))+(x8304)); +evalcond[3]=((((sj0)*(x8308)*(x8311)))+(((x8313)*(x8314)))+(((IkReal(-1.00000000000000))*(x8309)*(x8315)*(x8319)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x8313)))+(((sj0)*(x8307)*(x8311)))+(((IkReal(-1.00000000000000))*(x8305)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x8312)))+(((IkReal(-1.00000000000000))*(r12)*(x8315)*(x8318)))+(((cj4)*(r02)*(x8306)))+(((r00)*(sj0)*(x8312)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x8309)*(x8315)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8320=((cj5)*(r02)); +IkReal x8321=((cj0)*(sj5)); +IkReal x8322=((r10)*(sj6)); +IkReal x8323=((IkReal(1.00000000000000))*(cj6)); +IkReal x8324=((sj0)*(sj5)); +IkReal x8325=((cj5)*(r12)); +IkReal x8326=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x8325)))+(((x8321)*(x8322)))+(((sj0)*(x8320)))+(((IkReal(-1.00000000000000))*(x8324)*(x8326)))+(((IkReal(-1.00000000000000))*(r01)*(x8323)*(x8324)))+(((cj6)*(r11)*(x8321))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x8325)))+(((IkReal(-1.00000000000000))*(x8322)*(x8324)))+(((IkReal(-1.00000000000000))*(r11)*(x8323)*(x8324)))+(((IkReal(-1.00000000000000))*(r01)*(x8321)*(x8323)))+(((IkReal(-1.00000000000000))*(x8321)*(x8326)))+(((cj0)*(x8320))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x8325)))+(((x8321)*(x8322)))+(((sj0)*(x8320)))+(((IkReal(-1.00000000000000))*(x8324)*(x8326)))+(((IkReal(-1.00000000000000))*(r01)*(x8323)*(x8324)))+(((cj6)*(r11)*(x8321)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x8325)))+(((IkReal(-1.00000000000000))*(x8322)*(x8324)))+(((IkReal(-1.00000000000000))*(r11)*(x8323)*(x8324)))+(((IkReal(-1.00000000000000))*(r01)*(x8321)*(x8323)))+(((IkReal(-1.00000000000000))*(x8321)*(x8326)))+(((cj0)*(x8320)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x8325)))+(((x8321)*(x8322)))+(((sj0)*(x8320)))+(((IkReal(-1.00000000000000))*(x8324)*(x8326)))+(((IkReal(-1.00000000000000))*(r01)*(x8323)*(x8324)))+(((cj6)*(r11)*(x8321)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x8325)))+(((IkReal(-1.00000000000000))*(x8322)*(x8324)))+(((IkReal(-1.00000000000000))*(r11)*(x8323)*(x8324)))+(((IkReal(-1.00000000000000))*(r01)*(x8321)*(x8323)))+(((IkReal(-1.00000000000000))*(x8321)*(x8326)))+(((cj0)*(x8320))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8327=IKsin(j3); +IkReal x8328=IKcos(j3); +IkReal x8329=((sj0)*(sj5)); +IkReal x8330=((r00)*(sj6)); +IkReal x8331=((IkReal(1.00000000000000))*(cj4)); +IkReal x8332=((cj6)*(r01)); +IkReal x8333=((cj0)*(cj5)); +IkReal x8334=((cj5)*(sj0)); +IkReal x8335=((cj6)*(r11)); +IkReal x8336=((cj0)*(sj5)); +IkReal x8337=((IkReal(1.00000000000000))*(cj1)); +IkReal x8338=((cj6)*(sj4)); +IkReal x8339=((IkReal(1.00000000000000))*(sj1)); +IkReal x8340=((cj4)*(cj5)); +IkReal x8341=((cj6)*(r21)); +IkReal x8342=((r20)*(sj6)); +IkReal x8343=((r10)*(sj6)); +IkReal x8344=((IkReal(1.00000000000000))*(cj0)); +IkReal x8345=((cj0)*(sj4)*(sj6)); +IkReal x8346=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x8342)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x8328)*(x8339)))+(((sj5)*(x8341)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8340)*(x8342)))+(((r20)*(x8338)))+(((x8340)*(x8341)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x8327)*(x8339)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8336)*(x8343)))+(((x8329)*(x8330)))+(((IkReal(-1.00000000000000))*(x8335)*(x8336)))+(x8327)+(((r12)*(x8333)))+(((x8329)*(x8332)))+(((IkReal(-1.00000000000000))*(r02)*(x8334)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8332)*(x8336)))+(((IkReal(-1.00000000000000))*(x8329)*(x8343)))+(((IkReal(-1.00000000000000))*(x8328)*(x8337)))+(((IkReal(-1.00000000000000))*(x8329)*(x8335)))+(((r02)*(x8333)))+(((IkReal(-1.00000000000000))*(x8330)*(x8336)))+(((r12)*(x8334)))); +evalcond[4]=((((cj4)*(r02)*(x8329)))+(((cj4)*(x8332)*(x8334)))+(((IkReal(-1.00000000000000))*(r12)*(x8331)*(x8336)))+(((IkReal(-1.00000000000000))*(r01)*(x8346)))+(((r00)*(sj0)*(x8338)))+(((cj4)*(x8330)*(x8334)))+(((IkReal(-1.00000000000000))*(x8328)))+(((r11)*(x8345)))+(((IkReal(-1.00000000000000))*(r10)*(x8338)*(x8344)))+(((IkReal(-1.00000000000000))*(x8331)*(x8333)*(x8343)))+(((IkReal(-1.00000000000000))*(x8331)*(x8333)*(x8335)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x8329)*(x8331)))+(((IkReal(-1.00000000000000))*(x8331)*(x8334)*(x8343)))+(((IkReal(-1.00000000000000))*(x8331)*(x8332)*(x8333)))+(((IkReal(-1.00000000000000))*(x8330)*(x8331)*(x8333)))+(((IkReal(-1.00000000000000))*(x8327)*(x8337)))+(((r01)*(x8345)))+(((IkReal(-1.00000000000000))*(x8331)*(x8334)*(x8335)))+(((IkReal(-1.00000000000000))*(r02)*(x8331)*(x8336)))+(((r11)*(x8346)))+(((IkReal(-1.00000000000000))*(r00)*(x8338)*(x8344)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8338)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8347=((sj5)*(sj6)); +IkReal x8348=((IkReal(1.00000000000000))*(sj0)); +IkReal x8349=((cj6)*(sj5)); +IkReal x8350=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r10)*(x8347)))+(((IkReal(-1.00000000000000))*(r01)*(x8348)*(x8349)))+(((IkReal(-1.00000000000000))*(r00)*(x8347)*(x8348)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x8349)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x8350))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8347)))+(((IkReal(-1.00000000000000))*(r22)*(x8350)))+(((r21)*(x8349))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r10)*(x8347)))+(((IkReal(-1.00000000000000))*(r01)*(x8348)*(x8349)))+(((IkReal(-1.00000000000000))*(r00)*(x8347)*(x8348)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x8349)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x8350)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8347)))+(((IkReal(-1.00000000000000))*(r22)*(x8350)))+(((r21)*(x8349)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r10)*(x8347)))+(((IkReal(-1.00000000000000))*(r01)*(x8348)*(x8349)))+(((IkReal(-1.00000000000000))*(r00)*(x8347)*(x8348)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x8349)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x8350)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8347)))+(((IkReal(-1.00000000000000))*(r22)*(x8350)))+(((r21)*(x8349))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8351=IKsin(j3); +IkReal x8352=IKcos(j3); +IkReal x8353=((sj0)*(sj5)); +IkReal x8354=((r00)*(sj6)); +IkReal x8355=((IkReal(1.00000000000000))*(cj4)); +IkReal x8356=((cj6)*(r01)); +IkReal x8357=((cj0)*(cj5)); +IkReal x8358=((cj5)*(sj0)); +IkReal x8359=((cj6)*(r11)); +IkReal x8360=((cj0)*(sj5)); +IkReal x8361=((IkReal(1.00000000000000))*(cj1)); +IkReal x8362=((cj6)*(sj4)); +IkReal x8363=((IkReal(1.00000000000000))*(sj1)); +IkReal x8364=((cj4)*(cj5)); +IkReal x8365=((cj6)*(r21)); +IkReal x8366=((r20)*(sj6)); +IkReal x8367=((r10)*(sj6)); +IkReal x8368=((IkReal(1.00000000000000))*(cj0)); +IkReal x8369=((cj0)*(sj4)*(sj6)); +IkReal x8370=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x8366)))+(((sj5)*(x8365)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x8352)*(x8363)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8364)*(x8365)))+(((r20)*(x8362)))+(((IkReal(-1.00000000000000))*(x8351)*(x8363)))+(((cj4)*(r22)*(sj5)))+(((x8364)*(x8366)))); +evalcond[2]=((((x8353)*(x8356)))+(((IkReal(-1.00000000000000))*(x8360)*(x8367)))+(x8351)+(((IkReal(-1.00000000000000))*(r02)*(x8358)))+(((x8353)*(x8354)))+(((r12)*(x8357)))+(((IkReal(-1.00000000000000))*(x8359)*(x8360)))); +evalcond[3]=((((r12)*(x8358)))+(((IkReal(-1.00000000000000))*(x8353)*(x8359)))+(((IkReal(-1.00000000000000))*(x8353)*(x8367)))+(((IkReal(-1.00000000000000))*(x8356)*(x8360)))+(((IkReal(-1.00000000000000))*(x8352)*(x8361)))+(((IkReal(-1.00000000000000))*(x8354)*(x8360)))+(((r02)*(x8357)))); +evalcond[4]=((((cj4)*(x8356)*(x8358)))+(((r11)*(x8369)))+(((IkReal(-1.00000000000000))*(r01)*(x8370)))+(((IkReal(-1.00000000000000))*(x8355)*(x8357)*(x8367)))+(((r00)*(sj0)*(x8362)))+(((IkReal(-1.00000000000000))*(x8355)*(x8357)*(x8359)))+(((cj4)*(x8354)*(x8358)))+(((IkReal(-1.00000000000000))*(x8352)))+(((IkReal(-1.00000000000000))*(r12)*(x8355)*(x8360)))+(((IkReal(-1.00000000000000))*(r10)*(x8362)*(x8368)))+(((cj4)*(r02)*(x8353)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8354)*(x8355)*(x8357)))+(((IkReal(-1.00000000000000))*(r12)*(x8353)*(x8355)))+(((IkReal(-1.00000000000000))*(x8351)*(x8361)))+(((IkReal(-1.00000000000000))*(x8355)*(x8358)*(x8359)))+(((IkReal(-1.00000000000000))*(r02)*(x8355)*(x8360)))+(((r11)*(x8370)))+(((IkReal(-1.00000000000000))*(x8355)*(x8358)*(x8367)))+(((IkReal(-1.00000000000000))*(r00)*(x8362)*(x8368)))+(((IkReal(-1.00000000000000))*(x8355)*(x8356)*(x8357)))+(((r01)*(x8369)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8362)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8371=((r20)*(sj6)); +IkReal x8372=((cj4)*(cj5)); +IkReal x8373=((cj6)*(r21)); +if( IKabs(((gconst12)*(((((x8371)*(x8372)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8372)*(x8373))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst12)*(((((sj5)*(x8371)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8373))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst12)*(((((x8371)*(x8372)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8372)*(x8373)))))), ((gconst12)*(((((sj5)*(x8371)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8373))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8374=IKsin(j3); +IkReal x8375=IKcos(j3); +IkReal x8376=((sj0)*(sj5)); +IkReal x8377=((r00)*(sj6)); +IkReal x8378=((IkReal(1.00000000000000))*(cj4)); +IkReal x8379=((cj6)*(r01)); +IkReal x8380=((cj0)*(cj5)); +IkReal x8381=((cj5)*(sj0)); +IkReal x8382=((cj6)*(r11)); +IkReal x8383=((cj0)*(sj5)); +IkReal x8384=((IkReal(1.00000000000000))*(cj1)); +IkReal x8385=((cj6)*(sj4)); +IkReal x8386=((IkReal(1.00000000000000))*(sj1)); +IkReal x8387=((cj4)*(cj5)); +IkReal x8388=((cj6)*(r21)); +IkReal x8389=((r20)*(sj6)); +IkReal x8390=((r10)*(sj6)); +IkReal x8391=((IkReal(1.00000000000000))*(cj0)); +IkReal x8392=((cj0)*(sj4)*(sj6)); +IkReal x8393=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8389)))+(((IkReal(-1.00000000000000))*(x8375)*(x8386)))+(((sj5)*(x8388)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8374)*(x8386)))+(((x8387)*(x8389)))+(((x8387)*(x8388)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x8385)))); +evalcond[2]=((((r12)*(x8380)))+(((IkReal(-1.00000000000000))*(r02)*(x8381)))+(x8374)+(((x8376)*(x8377)))+(((IkReal(-1.00000000000000))*(x8382)*(x8383)))+(((x8376)*(x8379)))+(((IkReal(-1.00000000000000))*(x8383)*(x8390)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8376)*(x8390)))+(((r02)*(x8380)))+(((r12)*(x8381)))+(((IkReal(-1.00000000000000))*(x8377)*(x8383)))+(((IkReal(-1.00000000000000))*(x8375)*(x8384)))+(((IkReal(-1.00000000000000))*(x8376)*(x8382)))+(((IkReal(-1.00000000000000))*(x8379)*(x8383)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8375)))+(((IkReal(-1.00000000000000))*(r12)*(x8378)*(x8383)))+(((IkReal(-1.00000000000000))*(r10)*(x8385)*(x8391)))+(((cj4)*(r02)*(x8376)))+(((r00)*(sj0)*(x8385)))+(((IkReal(-1.00000000000000))*(x8378)*(x8380)*(x8382)))+(((r11)*(x8392)))+(((IkReal(-1.00000000000000))*(x8378)*(x8380)*(x8390)))+(((IkReal(-1.00000000000000))*(r01)*(x8393)))+(((cj4)*(x8377)*(x8381)))+(((cj4)*(x8379)*(x8381)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8378)*(x8379)*(x8380)))+(((IkReal(-1.00000000000000))*(r12)*(x8376)*(x8378)))+(((IkReal(-1.00000000000000))*(x8377)*(x8378)*(x8380)))+(((IkReal(-1.00000000000000))*(x8378)*(x8381)*(x8390)))+(((r11)*(x8393)))+(((IkReal(-1.00000000000000))*(r02)*(x8378)*(x8383)))+(((IkReal(-1.00000000000000))*(x8378)*(x8381)*(x8382)))+(((IkReal(-1.00000000000000))*(r00)*(x8385)*(x8391)))+(((r01)*(x8392)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8385)))+(((IkReal(-1.00000000000000))*(x8374)*(x8384)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8394=((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30); +IkReal x8395=((sj5)*(sj6)); +IkReal x8396=((r00)*(sj0)); +IkReal x8397=((cj1)*(cj2)); +IkReal x8398=((cj0)*(r10)); +IkReal x8399=((cj6)*(sj5)); +IkReal x8400=((r01)*(sj0)); +IkReal x8401=((IkReal(1.00000000000000))*(cj0)); +IkReal x8402=((cj5)*(r12)); +IkReal x8403=((IkReal(1.00000000000000))*(cj5)); +IkReal x8404=((r02)*(sj0)); +if( IKabs(((x8394)*(((((IkReal(-1.00000000000000))*(x8395)*(x8398)))+(((x8399)*(x8400)))+(((IkReal(-1.00000000000000))*(r11)*(x8399)*(x8401)))+(((cj0)*(x8402)))+(((x8395)*(x8396)))+(((IkReal(-1.00000000000000))*(x8403)*(x8404))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((x8394)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(sj2)*(x8399)))+(((IkReal(-1.00000000000000))*(x8397)*(x8401)*(x8402)))+(((r20)*(sj2)*(x8395)))+(((cj0)*(r11)*(x8397)*(x8399)))+(((IkReal(-1.00000000000000))*(x8395)*(x8396)*(x8397)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x8403)))+(((IkReal(-1.00000000000000))*(x8397)*(x8399)*(x8400)))+(((x8395)*(x8397)*(x8398)))+(((cj5)*(x8397)*(x8404))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((x8394)*(((((IkReal(-1.00000000000000))*(x8395)*(x8398)))+(((x8399)*(x8400)))+(((IkReal(-1.00000000000000))*(r11)*(x8399)*(x8401)))+(((cj0)*(x8402)))+(((x8395)*(x8396)))+(((IkReal(-1.00000000000000))*(x8403)*(x8404)))))))+IKsqr(((x8394)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(sj2)*(x8399)))+(((IkReal(-1.00000000000000))*(x8397)*(x8401)*(x8402)))+(((r20)*(sj2)*(x8395)))+(((cj0)*(r11)*(x8397)*(x8399)))+(((IkReal(-1.00000000000000))*(x8395)*(x8396)*(x8397)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x8403)))+(((IkReal(-1.00000000000000))*(x8397)*(x8399)*(x8400)))+(((x8395)*(x8397)*(x8398)))+(((cj5)*(x8397)*(x8404)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((x8394)*(((((IkReal(-1.00000000000000))*(x8395)*(x8398)))+(((x8399)*(x8400)))+(((IkReal(-1.00000000000000))*(r11)*(x8399)*(x8401)))+(((cj0)*(x8402)))+(((x8395)*(x8396)))+(((IkReal(-1.00000000000000))*(x8403)*(x8404)))))), ((x8394)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(sj2)*(x8399)))+(((IkReal(-1.00000000000000))*(x8397)*(x8401)*(x8402)))+(((r20)*(sj2)*(x8395)))+(((cj0)*(r11)*(x8397)*(x8399)))+(((IkReal(-1.00000000000000))*(x8395)*(x8396)*(x8397)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x8403)))+(((IkReal(-1.00000000000000))*(x8397)*(x8399)*(x8400)))+(((x8395)*(x8397)*(x8398)))+(((cj5)*(x8397)*(x8404))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8405=IKcos(j3); +IkReal x8406=IKsin(j3); +IkReal x8407=((sj0)*(sj5)); +IkReal x8408=((r00)*(sj6)); +IkReal x8409=((IkReal(1.00000000000000))*(cj4)); +IkReal x8410=((cj6)*(r01)); +IkReal x8411=((cj0)*(cj5)); +IkReal x8412=((cj5)*(sj0)); +IkReal x8413=((cj6)*(r11)); +IkReal x8414=((cj6)*(sj4)); +IkReal x8415=((IkReal(1.00000000000000))*(cj1)); +IkReal x8416=((cj4)*(cj5)); +IkReal x8417=((cj6)*(r21)); +IkReal x8418=((r20)*(sj6)); +IkReal x8419=((r10)*(sj6)); +IkReal x8420=((cj0)*(sj5)); +IkReal x8421=((IkReal(1.00000000000000))*(cj0)); +IkReal x8422=((IkReal(1.00000000000000))*(x8420)); +IkReal x8423=((IkReal(1.00000000000000))*(x8406)); +IkReal x8424=((cj0)*(sj4)*(sj6)); +IkReal x8425=((cj2)*(x8406)); +IkReal x8426=((sj0)*(sj4)*(sj6)); +IkReal x8427=((IkReal(1.00000000000000))*(sj1)*(x8405)); +evalcond[0]=((((sj5)*(x8418)))+(((IkReal(-1.00000000000000))*(x8415)*(x8425)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x8427)))+(((sj5)*(x8417)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8416)*(x8418)))+(((r20)*(x8414)))+(((IkReal(-1.00000000000000))*(sj1)*(x8423)))+(((x8416)*(x8417)))+(((cj4)*(r22)*(sj5)))+(((cj1)*(cj2)*(x8405)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8413)*(x8422)))+(((IkReal(-1.00000000000000))*(x8419)*(x8422)))+(((x8407)*(x8410)))+(((x8407)*(x8408)))+(((IkReal(-1.00000000000000))*(sj2)*(x8423)))+(((IkReal(-1.00000000000000))*(r02)*(x8412)))+(((r12)*(x8411)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8410)*(x8422)))+(((sj1)*(x8425)))+(((IkReal(-1.00000000000000))*(x8405)*(x8415)))+(((IkReal(-1.00000000000000))*(x8408)*(x8422)))+(((r12)*(x8412)))+(((IkReal(-1.00000000000000))*(x8407)*(x8413)))+(((IkReal(-1.00000000000000))*(x8407)*(x8419)))+(((r02)*(x8411)))); +evalcond[4]=((((cj4)*(x8408)*(x8412)))+(((IkReal(-1.00000000000000))*(r12)*(x8409)*(x8420)))+(((IkReal(-1.00000000000000))*(x8409)*(x8411)*(x8413)))+(((r00)*(sj0)*(x8414)))+(((IkReal(-1.00000000000000))*(r10)*(x8414)*(x8421)))+(((cj4)*(x8410)*(x8412)))+(((r11)*(x8424)))+(((cj4)*(r02)*(x8407)))+(((sj2)*(x8405)))+(((IkReal(-1.00000000000000))*(r01)*(x8426)))+(((IkReal(-1.00000000000000))*(x8409)*(x8411)*(x8419)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x8407)*(x8409)))+(((IkReal(-1.00000000000000))*(r00)*(x8414)*(x8421)))+(((IkReal(-1.00000000000000))*(x8409)*(x8412)*(x8413)))+(((IkReal(-1.00000000000000))*(r02)*(x8409)*(x8420)))+(((r11)*(x8426)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8414)))+(((IkReal(-1.00000000000000))*(cj2)*(x8427)))+(((IkReal(-1.00000000000000))*(x8408)*(x8409)*(x8411)))+(((IkReal(-1.00000000000000))*(x8409)*(x8412)*(x8419)))+(((IkReal(-1.00000000000000))*(x8409)*(x8410)*(x8411)))+(((r01)*(x8424)))+(((IkReal(-1.00000000000000))*(x8406)*(x8415)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8428=(cj1)*(cj1); +IkReal x8429=(sj1)*(sj1); +IkReal x8430=((r00)*(sj6)); +IkReal x8431=((cj6)*(r01)); +IkReal x8432=((IkReal(1.00000000000000))*(cj1)); +IkReal x8433=((cj5)*(r22)); +IkReal x8434=((sj5)*(sj6)); +IkReal x8435=((r10)*(sj0)); +IkReal x8436=((cj1)*(cj5)); +IkReal x8437=((cj0)*(r02)); +IkReal x8438=((r12)*(sj0)); +IkReal x8439=((IkReal(1.00000000000000))*(sj1)); +IkReal x8440=((cj6)*(sj5)); +IkReal x8441=((cj0)*(sj5)); +IkReal x8442=((r11)*(sj0)); +IkReal x8443=((sj1)*(x8441)); +if( IKabs(((((IKabs(((((cj2)*(x8428)))+(((cj2)*(x8429))))) != 0)?((IkReal)1/(((((cj2)*(x8428)))+(((cj2)*(x8429)))))):(IkReal)1.0e30))*(((((x8431)*(x8443)))+(((IkReal(-1.00000000000000))*(x8432)*(x8433)))+(((IkReal(-1.00000000000000))*(cj5)*(x8438)*(x8439)))+(((cj1)*(r20)*(x8434)))+(((x8430)*(x8443)))+(((sj1)*(x8440)*(x8442)))+(((cj1)*(r21)*(x8440)))+(((IkReal(-1.00000000000000))*(cj5)*(x8437)*(x8439)))+(((sj1)*(x8434)*(x8435))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x8428)+(x8429))) != 0)?((IkReal)1/(((x8428)+(x8429)))):(IkReal)1.0e30))*(((((r20)*(sj1)*(x8434)))+(((IkReal(-1.00000000000000))*(x8431)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8430)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8432)*(x8434)*(x8435)))+(((x8436)*(x8438)))+(((IkReal(-1.00000000000000))*(x8433)*(x8439)))+(((IkReal(-1.00000000000000))*(x8432)*(x8440)*(x8442)))+(((r21)*(sj1)*(x8440)))+(((x8436)*(x8437))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x8428)))+(((cj2)*(x8429))))) != 0)?((IkReal)1/(((((cj2)*(x8428)))+(((cj2)*(x8429)))))):(IkReal)1.0e30))*(((((x8431)*(x8443)))+(((IkReal(-1.00000000000000))*(x8432)*(x8433)))+(((IkReal(-1.00000000000000))*(cj5)*(x8438)*(x8439)))+(((cj1)*(r20)*(x8434)))+(((x8430)*(x8443)))+(((sj1)*(x8440)*(x8442)))+(((cj1)*(r21)*(x8440)))+(((IkReal(-1.00000000000000))*(cj5)*(x8437)*(x8439)))+(((sj1)*(x8434)*(x8435)))))))+IKsqr(((((IKabs(((x8428)+(x8429))) != 0)?((IkReal)1/(((x8428)+(x8429)))):(IkReal)1.0e30))*(((((r20)*(sj1)*(x8434)))+(((IkReal(-1.00000000000000))*(x8431)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8430)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8432)*(x8434)*(x8435)))+(((x8436)*(x8438)))+(((IkReal(-1.00000000000000))*(x8433)*(x8439)))+(((IkReal(-1.00000000000000))*(x8432)*(x8440)*(x8442)))+(((r21)*(sj1)*(x8440)))+(((x8436)*(x8437)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x8428)))+(((cj2)*(x8429))))) != 0)?((IkReal)1/(((((cj2)*(x8428)))+(((cj2)*(x8429)))))):(IkReal)1.0e30))*(((((x8431)*(x8443)))+(((IkReal(-1.00000000000000))*(x8432)*(x8433)))+(((IkReal(-1.00000000000000))*(cj5)*(x8438)*(x8439)))+(((cj1)*(r20)*(x8434)))+(((x8430)*(x8443)))+(((sj1)*(x8440)*(x8442)))+(((cj1)*(r21)*(x8440)))+(((IkReal(-1.00000000000000))*(cj5)*(x8437)*(x8439)))+(((sj1)*(x8434)*(x8435)))))), ((((IKabs(((x8428)+(x8429))) != 0)?((IkReal)1/(((x8428)+(x8429)))):(IkReal)1.0e30))*(((((r20)*(sj1)*(x8434)))+(((IkReal(-1.00000000000000))*(x8431)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8430)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8432)*(x8434)*(x8435)))+(((x8436)*(x8438)))+(((IkReal(-1.00000000000000))*(x8433)*(x8439)))+(((IkReal(-1.00000000000000))*(x8432)*(x8440)*(x8442)))+(((r21)*(sj1)*(x8440)))+(((x8436)*(x8437))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8444=IKcos(j3); +IkReal x8445=IKsin(j3); +IkReal x8446=((sj0)*(sj5)); +IkReal x8447=((r00)*(sj6)); +IkReal x8448=((IkReal(1.00000000000000))*(cj4)); +IkReal x8449=((cj6)*(r01)); +IkReal x8450=((cj0)*(cj5)); +IkReal x8451=((cj5)*(sj0)); +IkReal x8452=((cj6)*(r11)); +IkReal x8453=((cj6)*(sj4)); +IkReal x8454=((IkReal(1.00000000000000))*(cj1)); +IkReal x8455=((cj4)*(cj5)); +IkReal x8456=((cj6)*(r21)); +IkReal x8457=((r20)*(sj6)); +IkReal x8458=((r10)*(sj6)); +IkReal x8459=((cj0)*(sj5)); +IkReal x8460=((IkReal(1.00000000000000))*(cj0)); +IkReal x8461=((IkReal(1.00000000000000))*(x8459)); +IkReal x8462=((IkReal(1.00000000000000))*(x8445)); +IkReal x8463=((cj0)*(sj4)*(sj6)); +IkReal x8464=((cj2)*(x8445)); +IkReal x8465=((sj0)*(sj4)*(sj6)); +IkReal x8466=((IkReal(1.00000000000000))*(sj1)*(x8444)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x8466)))+(((sj5)*(x8456)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8457)))+(((IkReal(-1.00000000000000))*(x8454)*(x8464)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8455)*(x8457)))+(((IkReal(-1.00000000000000))*(sj1)*(x8462)))+(((cj4)*(r22)*(sj5)))+(((x8455)*(x8456)))+(((r20)*(x8453)))+(((cj1)*(cj2)*(x8444)))); +evalcond[2]=((((x8446)*(x8449)))+(((IkReal(-1.00000000000000))*(sj2)*(x8462)))+(((IkReal(-1.00000000000000))*(x8458)*(x8461)))+(((IkReal(-1.00000000000000))*(r02)*(x8451)))+(((IkReal(-1.00000000000000))*(x8452)*(x8461)))+(((x8446)*(x8447)))+(((r12)*(x8450)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8446)*(x8458)))+(((r12)*(x8451)))+(((IkReal(-1.00000000000000))*(x8449)*(x8461)))+(((r02)*(x8450)))+(((IkReal(-1.00000000000000))*(x8444)*(x8454)))+(((IkReal(-1.00000000000000))*(x8447)*(x8461)))+(((IkReal(-1.00000000000000))*(x8446)*(x8452)))+(((sj1)*(x8464)))); +evalcond[4]=((((r11)*(x8463)))+(((IkReal(-1.00000000000000))*(x8448)*(x8450)*(x8452)))+(((IkReal(-1.00000000000000))*(r12)*(x8448)*(x8459)))+(((IkReal(-1.00000000000000))*(r01)*(x8465)))+(((IkReal(-1.00000000000000))*(r10)*(x8453)*(x8460)))+(((IkReal(-1.00000000000000))*(x8448)*(x8450)*(x8458)))+(((cj4)*(x8447)*(x8451)))+(((cj4)*(x8449)*(x8451)))+(((sj2)*(x8444)))+(((r00)*(sj0)*(x8453)))+(((cj4)*(r02)*(x8446)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8448)*(x8451)*(x8452)))+(((IkReal(-1.00000000000000))*(x8447)*(x8448)*(x8450)))+(((IkReal(-1.00000000000000))*(x8445)*(x8454)))+(((IkReal(-1.00000000000000))*(cj2)*(x8466)))+(((r01)*(x8463)))+(((IkReal(-1.00000000000000))*(r02)*(x8448)*(x8459)))+(((IkReal(-1.00000000000000))*(x8448)*(x8449)*(x8450)))+(((IkReal(-1.00000000000000))*(r12)*(x8446)*(x8448)))+(((r11)*(x8465)))+(((IkReal(-1.00000000000000))*(x8448)*(x8451)*(x8458)))+(((IkReal(-1.00000000000000))*(r00)*(x8453)*(x8460)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8453)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8467=((sj1)*(sj6)); +IkReal x8468=((r20)*(sj5)); +IkReal x8469=((IkReal(1.00000000000000))*(r21)); +IkReal x8470=((cj5)*(cj6)); +IkReal x8471=((r22)*(sj5)); +IkReal x8472=((cj4)*(sj1)); +IkReal x8473=((cj1)*(cj2)); +IkReal x8474=((cj5)*(r20)); +IkReal x8475=((cj4)*(x8473)); +IkReal x8476=((IkReal(1.00000000000000))*(cj5)*(r22)); +IkReal x8477=((cj6)*(r20)*(sj4)); +IkReal x8478=((cj6)*(r21)*(sj5)); +if( IKabs(((gconst4)*(((((sj1)*(x8477)))+(((cj4)*(x8467)*(x8474)))+(((x8471)*(x8472)))+(((sj6)*(x8468)*(x8473)))+(((x8473)*(x8478)))+(((IkReal(-1.00000000000000))*(x8473)*(x8476)))+(((IkReal(-1.00000000000000))*(sj4)*(x8467)*(x8469)))+(((r21)*(x8470)*(x8472))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst4)*(((((IkReal(-1.00000000000000))*(sj1)*(x8476)))+(((x8467)*(x8468)))+(((r21)*(sj4)*(sj6)*(x8473)))+(((IkReal(-1.00000000000000))*(x8473)*(x8477)))+(((IkReal(-1.00000000000000))*(x8471)*(x8475)))+(((sj1)*(x8478)))+(((IkReal(-1.00000000000000))*(sj6)*(x8474)*(x8475)))+(((IkReal(-1.00000000000000))*(x8469)*(x8470)*(x8475))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst4)*(((((sj1)*(x8477)))+(((cj4)*(x8467)*(x8474)))+(((x8471)*(x8472)))+(((sj6)*(x8468)*(x8473)))+(((x8473)*(x8478)))+(((IkReal(-1.00000000000000))*(x8473)*(x8476)))+(((IkReal(-1.00000000000000))*(sj4)*(x8467)*(x8469)))+(((r21)*(x8470)*(x8472)))))), ((gconst4)*(((((IkReal(-1.00000000000000))*(sj1)*(x8476)))+(((x8467)*(x8468)))+(((r21)*(sj4)*(sj6)*(x8473)))+(((IkReal(-1.00000000000000))*(x8473)*(x8477)))+(((IkReal(-1.00000000000000))*(x8471)*(x8475)))+(((sj1)*(x8478)))+(((IkReal(-1.00000000000000))*(sj6)*(x8474)*(x8475)))+(((IkReal(-1.00000000000000))*(x8469)*(x8470)*(x8475))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8479=IKcos(j3); +IkReal x8480=IKsin(j3); +IkReal x8481=((sj0)*(sj5)); +IkReal x8482=((r00)*(sj6)); +IkReal x8483=((IkReal(1.00000000000000))*(cj4)); +IkReal x8484=((cj6)*(r01)); +IkReal x8485=((cj0)*(cj5)); +IkReal x8486=((cj5)*(sj0)); +IkReal x8487=((cj6)*(r11)); +IkReal x8488=((cj6)*(sj4)); +IkReal x8489=((IkReal(1.00000000000000))*(cj1)); +IkReal x8490=((cj4)*(cj5)); +IkReal x8491=((cj6)*(r21)); +IkReal x8492=((r20)*(sj6)); +IkReal x8493=((r10)*(sj6)); +IkReal x8494=((cj0)*(sj5)); +IkReal x8495=((IkReal(1.00000000000000))*(cj0)); +IkReal x8496=((IkReal(1.00000000000000))*(x8494)); +IkReal x8497=((IkReal(1.00000000000000))*(x8480)); +IkReal x8498=((cj0)*(sj4)*(sj6)); +IkReal x8499=((cj2)*(x8480)); +IkReal x8500=((sj0)*(sj4)*(sj6)); +IkReal x8501=((IkReal(1.00000000000000))*(sj1)*(x8479)); +evalcond[0]=((((sj5)*(x8491)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x8489)*(x8499)))+(((sj5)*(x8492)))+(((IkReal(-1.00000000000000))*(x8501)))); +evalcond[1]=((((cj1)*(cj2)*(x8479)))+(((x8490)*(x8492)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x8488)))+(((x8490)*(x8491)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x8497)))); +evalcond[2]=((((x8481)*(x8482)))+(((x8481)*(x8484)))+(((IkReal(-1.00000000000000))*(r02)*(x8486)))+(((IkReal(-1.00000000000000))*(x8493)*(x8496)))+(((IkReal(-1.00000000000000))*(sj2)*(x8497)))+(((IkReal(-1.00000000000000))*(x8487)*(x8496)))+(((r12)*(x8485)))); +evalcond[3]=((((sj1)*(x8499)))+(((IkReal(-1.00000000000000))*(x8481)*(x8487)))+(((r02)*(x8485)))+(((IkReal(-1.00000000000000))*(x8484)*(x8496)))+(((IkReal(-1.00000000000000))*(x8481)*(x8493)))+(((IkReal(-1.00000000000000))*(x8482)*(x8496)))+(((IkReal(-1.00000000000000))*(x8479)*(x8489)))+(((r12)*(x8486)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8483)*(x8485)*(x8487)))+(((sj2)*(x8479)))+(((IkReal(-1.00000000000000))*(r12)*(x8483)*(x8494)))+(((IkReal(-1.00000000000000))*(x8483)*(x8485)*(x8493)))+(((IkReal(-1.00000000000000))*(r01)*(x8500)))+(((cj4)*(x8482)*(x8486)))+(((r11)*(x8498)))+(((r00)*(sj0)*(x8488)))+(((IkReal(-1.00000000000000))*(r10)*(x8488)*(x8495)))+(((cj4)*(x8484)*(x8486)))+(((cj4)*(r02)*(x8481)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8483)*(x8484)*(x8485)))+(((IkReal(-1.00000000000000))*(r12)*(x8481)*(x8483)))+(((r01)*(x8498)))+(((IkReal(-1.00000000000000))*(x8480)*(x8489)))+(((r11)*(x8500)))+(((IkReal(-1.00000000000000))*(x8483)*(x8486)*(x8487)))+(((IkReal(-1.00000000000000))*(cj2)*(x8501)))+(((IkReal(-1.00000000000000))*(r02)*(x8483)*(x8494)))+(((IkReal(-1.00000000000000))*(x8482)*(x8483)*(x8485)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8488)))+(((IkReal(-1.00000000000000))*(x8483)*(x8486)*(x8493)))+(((IkReal(-1.00000000000000))*(r00)*(x8488)*(x8495)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x8502=((cj6)*(sj5)); +IkReal x8503=((r01)*(sj0)); +IkReal x8504=((cj5)*(cj6)); +IkReal x8505=((sj5)*(sj6)); +IkReal x8506=((cj0)*(r10)); +IkReal x8507=((IkReal(5.42449275362319))*(sj0)); +IkReal x8508=((IkReal(0.144927536231884))*(cj0)); +IkReal x8509=((IkReal(5.42449275362319))*(cj0)); +IkReal x8510=((IkReal(0.144927536231884))*(cj5)*(sj6)); +if( IKabs(((((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x8506)*(x8510)))+(((IkReal(-1.00000000000000))*(r00)*(x8505)*(x8507)))+(((IkReal(-5.42449275362319))*(x8502)*(x8503)))+(((IkReal(0.144927536231884))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r11)*(x8504)*(x8508)))+(((IkReal(-1.00000000000000))*(r12)*(sj5)*(x8508)))+(((cj5)*(r02)*(x8507)))+(((r00)*(sj0)*(x8510)))+(((IkReal(-1.00000000000000))*(cj5)*(r12)*(x8509)))+(((r11)*(x8502)*(x8509)))+(((IkReal(5.42449275362319))*(x8505)*(x8506)))+(((IkReal(0.144927536231884))*(x8503)*(x8504))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((IkReal(0.0144927536231884))*(((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(374.290000000000))*(cj5)*(r22)))+(((IkReal(10.0000000000000))*(cj5)*(r20)*(sj6)))+(((IkReal(-374.290000000000))*(r20)*(x8505)))+(((IkReal(10.0000000000000))*(r22)*(sj5)))+(((IkReal(10.0000000000000))*(r21)*(x8504)))+(((IkReal(-1000.00000000000))*(pz)))+(((IkReal(-364.420000000000))*(sj1)))+(((IkReal(-374.290000000000))*(r21)*(x8502))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x8506)*(x8510)))+(((IkReal(-1.00000000000000))*(r00)*(x8505)*(x8507)))+(((IkReal(-5.42449275362319))*(x8502)*(x8503)))+(((IkReal(0.144927536231884))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r11)*(x8504)*(x8508)))+(((IkReal(-1.00000000000000))*(r12)*(sj5)*(x8508)))+(((cj5)*(r02)*(x8507)))+(((r00)*(sj0)*(x8510)))+(((IkReal(-1.00000000000000))*(cj5)*(r12)*(x8509)))+(((r11)*(x8502)*(x8509)))+(((IkReal(5.42449275362319))*(x8505)*(x8506)))+(((IkReal(0.144927536231884))*(x8503)*(x8504)))))+IKsqr(((IkReal(0.0144927536231884))*(((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(374.290000000000))*(cj5)*(r22)))+(((IkReal(10.0000000000000))*(cj5)*(r20)*(sj6)))+(((IkReal(-374.290000000000))*(r20)*(x8505)))+(((IkReal(10.0000000000000))*(r22)*(sj5)))+(((IkReal(10.0000000000000))*(r21)*(x8504)))+(((IkReal(-1000.00000000000))*(pz)))+(((IkReal(-364.420000000000))*(sj1)))+(((IkReal(-374.290000000000))*(r21)*(x8502)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x8506)*(x8510)))+(((IkReal(-1.00000000000000))*(r00)*(x8505)*(x8507)))+(((IkReal(-5.42449275362319))*(x8502)*(x8503)))+(((IkReal(0.144927536231884))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r11)*(x8504)*(x8508)))+(((IkReal(-1.00000000000000))*(r12)*(sj5)*(x8508)))+(((cj5)*(r02)*(x8507)))+(((r00)*(sj0)*(x8510)))+(((IkReal(-1.00000000000000))*(cj5)*(r12)*(x8509)))+(((r11)*(x8502)*(x8509)))+(((IkReal(5.42449275362319))*(x8505)*(x8506)))+(((IkReal(0.144927536231884))*(x8503)*(x8504)))), ((IkReal(0.0144927536231884))*(((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(374.290000000000))*(cj5)*(r22)))+(((IkReal(10.0000000000000))*(cj5)*(r20)*(sj6)))+(((IkReal(-374.290000000000))*(r20)*(x8505)))+(((IkReal(10.0000000000000))*(r22)*(sj5)))+(((IkReal(10.0000000000000))*(r21)*(x8504)))+(((IkReal(-1000.00000000000))*(pz)))+(((IkReal(-364.420000000000))*(sj1)))+(((IkReal(-374.290000000000))*(r21)*(x8502))))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[3]; +IkReal x8511=IKcos(j2); +IkReal x8512=((IkReal(0.374290000000000))*(sj5)); +IkReal x8513=((cj0)*(sj6)); +IkReal x8514=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8515=((cj0)*(r02)); +IkReal x8516=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8517=((IkReal(1.00000000000000))*(py)); +IkReal x8518=((r01)*(sj0)); +IkReal x8519=((r20)*(sj6)); +IkReal x8520=((r11)*(sj0)); +IkReal x8521=((IkReal(0.374290000000000))*(cj5)); +IkReal x8522=((cj0)*(r12)); +IkReal x8523=((sj0)*(x8521)); +IkReal x8524=((cj6)*(x8516)); +IkReal x8525=((IkReal(0.0690000000000000))*(x8511)); +IkReal x8526=((r10)*(sj0)*(sj6)); +IkReal x8527=((r00)*(sj0)*(sj6)); +IkReal x8528=((cj0)*(cj6)*(x8512)); +evalcond[0]=((((cj1)*(x8525)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x8521)))+(((IkReal(-1.00000000000000))*(x8516)*(x8519)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x8514)))+(((cj6)*(r21)*(x8512)))+(((x8512)*(x8519)))+(((IkReal(-1.00000000000000))*(r21)*(x8524)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r10)*(x8512)*(x8513)))+(((IkReal(-1.00000000000000))*(r11)*(x8528)))+(((IkReal(-1.00000000000000))*(x8516)*(x8527)))+(((IkReal(-1.00000000000000))*(r02)*(x8523)))+(((x8512)*(x8527)))+(((x8521)*(x8522)))+(((r10)*(x8513)*(x8516)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8514)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((IkReal(-1.00000000000000))*(x8518)*(x8524)))+(((IkReal(-1.00000000000000))*(cj0)*(x8517)))+(((px)*(sj0)))+(((cj6)*(x8512)*(x8518)))+(((cj0)*(r11)*(x8524)))+(((x8514)*(x8522)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((x8516)*(x8526)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((r12)*(x8523)))+(((IkReal(-1.00000000000000))*(x8512)*(x8526)))+(((IkReal(-1.00000000000000))*(sj0)*(x8517)))+(((IkReal(-1.00000000000000))*(cj6)*(x8512)*(x8520)))+(((IkReal(-1.00000000000000))*(r01)*(x8528)))+(((r00)*(x8513)*(x8516)))+(((x8515)*(x8521)))+(((IkReal(-1.00000000000000))*(sj1)*(x8525)))+(((IkReal(-1.00000000000000))*(r00)*(x8512)*(x8513)))+(((x8514)*(x8515)))+(((cj0)*(r01)*(x8524)))+(((IkReal(0.364420000000000))*(cj1)))+(((r12)*(sj0)*(x8514)))+(((x8520)*(x8524)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst0; +IkReal x8529=(cj6)*(cj6); +IkReal x8530=(sj6)*(sj6); +IkReal x8531=((IkReal(1.00000000000000))*(r01)); +IkReal x8532=((sj0)*(sj5)); +IkReal x8533=((cj6)*(r22)); +IkReal x8534=((r21)*(sj6)); +IkReal x8535=((r00)*(r21)); +IkReal x8536=((cj0)*(sj5)); +IkReal x8537=((cj6)*(r20)); +IkReal x8538=((r22)*(sj6)); +IkReal x8539=((cj0)*(cj5)); +IkReal x8540=((IkReal(1.00000000000000))*(r10)); +IkReal x8541=((cj5)*(sj0)); +IkReal x8542=((r20)*(x8530)); +IkReal x8543=((x8529)*(x8541)); +gconst0=IKsign(((((r00)*(x8532)*(x8533)))+(((x8535)*(x8543)))+(((IkReal(-1.00000000000000))*(x8531)*(x8532)*(x8538)))+(((IkReal(-1.00000000000000))*(r02)*(x8532)*(x8537)))+(((IkReal(-1.00000000000000))*(r21)*(x8530)*(x8539)*(x8540)))+(((r12)*(x8536)*(x8537)))+(((IkReal(-1.00000000000000))*(x8531)*(x8541)*(x8542)))+(((IkReal(-1.00000000000000))*(r20)*(x8531)*(x8543)))+(((r11)*(x8536)*(x8538)))+(((x8530)*(x8535)*(x8541)))+(((IkReal(-1.00000000000000))*(x8533)*(x8536)*(x8540)))+(((r11)*(x8539)*(x8542)))+(((r11)*(r20)*(x8529)*(x8539)))+(((IkReal(-1.00000000000000))*(r21)*(x8529)*(x8539)*(x8540)))+(((r02)*(x8532)*(x8534)))+(((IkReal(-1.00000000000000))*(r12)*(x8534)*(x8536))))); +IkReal x8544=(cj6)*(cj6); +IkReal x8545=(sj6)*(sj6); +IkReal x8546=((IkReal(1.00000000000000))*(r01)); +IkReal x8547=((sj0)*(sj5)); +IkReal x8548=((cj6)*(r22)); +IkReal x8549=((r21)*(sj6)); +IkReal x8550=((r00)*(r21)); +IkReal x8551=((cj0)*(sj5)); +IkReal x8552=((cj6)*(r20)); +IkReal x8553=((r22)*(sj6)); +IkReal x8554=((cj0)*(cj5)); +IkReal x8555=((IkReal(1.00000000000000))*(r10)); +IkReal x8556=((cj5)*(sj0)); +IkReal x8557=((r20)*(x8545)); +IkReal x8558=((x8544)*(x8556)); +dummyeval[0]=((((x8545)*(x8550)*(x8556)))+(((IkReal(-1.00000000000000))*(r21)*(x8544)*(x8554)*(x8555)))+(((r11)*(x8551)*(x8553)))+(((r11)*(r20)*(x8544)*(x8554)))+(((r02)*(x8547)*(x8549)))+(((IkReal(-1.00000000000000))*(x8546)*(x8547)*(x8553)))+(((r11)*(x8554)*(x8557)))+(((IkReal(-1.00000000000000))*(r20)*(x8546)*(x8558)))+(((IkReal(-1.00000000000000))*(r12)*(x8549)*(x8551)))+(((IkReal(-1.00000000000000))*(x8548)*(x8551)*(x8555)))+(((IkReal(-1.00000000000000))*(r02)*(x8547)*(x8552)))+(((r12)*(x8551)*(x8552)))+(((r00)*(x8547)*(x8548)))+(((x8550)*(x8558)))+(((IkReal(-1.00000000000000))*(x8546)*(x8556)*(x8557)))+(((IkReal(-1.00000000000000))*(r21)*(x8545)*(x8554)*(x8555)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst1; +IkReal x8559=(cj6)*(cj6); +IkReal x8560=(sj6)*(sj6); +IkReal x8561=((sj5)*(sj6)); +IkReal x8562=((IkReal(1.00000000000000))*(cj0)); +IkReal x8563=((cj6)*(sj5)); +IkReal x8564=((r20)*(sj0)); +IkReal x8565=((cj0)*(r20)); +IkReal x8566=((r00)*(r21)); +IkReal x8567=((r22)*(sj0)); +IkReal x8568=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x8569=((cj5)*(x8560)); +IkReal x8570=((cj5)*(x8559)); +gconst1=IKsign(((((r12)*(x8563)*(x8564)))+(((r11)*(x8564)*(x8570)))+(((IkReal(-1.00000000000000))*(r10)*(x8568)*(x8570)))+(((IkReal(-1.00000000000000))*(r10)*(x8568)*(x8569)))+(((IkReal(-1.00000000000000))*(r10)*(x8563)*(x8567)))+(((IkReal(-1.00000000000000))*(x8562)*(x8566)*(x8569)))+(((r01)*(x8565)*(x8569)))+(((r02)*(x8563)*(x8565)))+(((cj0)*(r01)*(r22)*(x8561)))+(((r01)*(x8565)*(x8570)))+(((IkReal(-1.00000000000000))*(x8562)*(x8566)*(x8570)))+(((r11)*(x8564)*(x8569)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x8562)*(x8563)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x8561)*(x8562)))+(((r11)*(x8561)*(x8567)))+(((IkReal(-1.00000000000000))*(r12)*(x8561)*(x8568))))); +IkReal x8571=(cj6)*(cj6); +IkReal x8572=(sj6)*(sj6); +IkReal x8573=((sj5)*(sj6)); +IkReal x8574=((IkReal(1.00000000000000))*(cj0)); +IkReal x8575=((cj6)*(sj5)); +IkReal x8576=((r20)*(sj0)); +IkReal x8577=((cj0)*(r20)); +IkReal x8578=((r00)*(r21)); +IkReal x8579=((r22)*(sj0)); +IkReal x8580=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x8581=((cj5)*(x8572)); +IkReal x8582=((cj5)*(x8571)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r12)*(x8573)*(x8580)))+(((cj0)*(r01)*(r22)*(x8573)))+(((r12)*(x8575)*(x8576)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x8574)*(x8575)))+(((r01)*(x8577)*(x8581)))+(((IkReal(-1.00000000000000))*(r10)*(x8575)*(x8579)))+(((IkReal(-1.00000000000000))*(x8574)*(x8578)*(x8582)))+(((r11)*(x8576)*(x8582)))+(((r11)*(x8576)*(x8581)))+(((r11)*(x8573)*(x8579)))+(((r01)*(x8577)*(x8582)))+(((IkReal(-1.00000000000000))*(r10)*(x8580)*(x8581)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x8573)*(x8574)))+(((IkReal(-1.00000000000000))*(x8574)*(x8578)*(x8581)))+(((r02)*(x8575)*(x8577)))+(((IkReal(-1.00000000000000))*(r10)*(x8580)*(x8582)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x8583=(cj1)*(cj1); +IkReal x8584=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x8584)))+(((cj2)*(x8583)))); +dummyeval[1]=((x8583)+(x8584)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[4]; +IkReal x8585=((IkReal(0.374290000000000))*(sj5)); +IkReal x8586=((cj0)*(sj6)); +IkReal x8587=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8588=((cj0)*(r02)); +IkReal x8589=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8590=((IkReal(1.00000000000000))*(py)); +IkReal x8591=((r01)*(sj0)); +IkReal x8592=((r20)*(sj6)); +IkReal x8593=((r11)*(sj0)); +IkReal x8594=((IkReal(0.374290000000000))*(cj5)); +IkReal x8595=((cj0)*(r12)); +IkReal x8596=((sj0)*(x8594)); +IkReal x8597=((cj6)*(x8589)); +IkReal x8598=((r10)*(sj0)*(sj6)); +IkReal x8599=((r00)*(sj0)*(sj6)); +IkReal x8600=((cj0)*(cj6)*(x8585)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x8594)))+(((IkReal(-1.00000000000000))*(r22)*(x8587)))+(((cj6)*(r21)*(x8585)))+(pz)+(((IkReal(-1.00000000000000))*(x8589)*(x8592)))+(((IkReal(-1.00000000000000))*(r21)*(x8597)))+(((x8585)*(x8592)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x8591)*(x8597)))+(((IkReal(-1.00000000000000))*(r10)*(x8585)*(x8586)))+(((IkReal(-1.00000000000000))*(cj0)*(x8590)))+(((IkReal(-1.00000000000000))*(x8589)*(x8599)))+(((cj0)*(r11)*(x8597)))+(((x8587)*(x8595)))+(((x8585)*(x8599)))+(((IkReal(-1.00000000000000))*(r02)*(x8596)))+(((r10)*(x8586)*(x8589)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8587)))+(((px)*(sj0)))+(((cj6)*(x8585)*(x8591)))+(((x8594)*(x8595)))+(((IkReal(-1.00000000000000))*(r11)*(x8600)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x8588)*(x8594)))+(((IkReal(-1.00000000000000))*(cj6)*(x8585)*(x8593)))+(((r00)*(x8586)*(x8589)))+(((x8587)*(x8588)))+(((IkReal(-1.00000000000000))*(r01)*(x8600)))+(((r12)*(sj0)*(x8587)))+(((IkReal(-1.00000000000000))*(r00)*(x8585)*(x8586)))+(((x8589)*(x8598)))+(((r12)*(x8596)))+(((cj0)*(r01)*(x8597)))+(((IkReal(-1.00000000000000))*(x8585)*(x8598)))+(((IkReal(-1.00000000000000))*(sj0)*(x8590)))+(((x8593)*(x8597)))+(((IkReal(0.364420000000000))*(cj1)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst13; +IkReal x8601=(cj6)*(cj6); +IkReal x8602=(sj6)*(sj6); +IkReal x8603=((IkReal(1.00000000000000))*(r21)); +IkReal x8604=((cj6)*(r20)); +IkReal x8605=((r22)*(sj5)); +IkReal x8606=((r01)*(sj0)); +IkReal x8607=((r00)*(sj0)); +IkReal x8608=((cj0)*(r10)); +IkReal x8609=((r02)*(sj0)*(sj5)); +IkReal x8610=((cj5)*(x8601)); +IkReal x8611=((cj0)*(r12)*(sj5)); +IkReal x8612=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8613=((cj5)*(x8602)); +IkReal x8614=((r20)*(x8613)); +gconst13=IKsign(((((IkReal(-1.00000000000000))*(x8612)*(x8614)))+(((r20)*(x8606)*(x8610)))+(((IkReal(-1.00000000000000))*(x8603)*(x8607)*(x8610)))+(((x8604)*(x8609)))+(((IkReal(-1.00000000000000))*(sj6)*(x8603)*(x8609)))+(((IkReal(-1.00000000000000))*(cj6)*(x8605)*(x8607)))+(((IkReal(-1.00000000000000))*(r20)*(x8610)*(x8612)))+(((IkReal(-1.00000000000000))*(x8603)*(x8607)*(x8613)))+(((IkReal(-1.00000000000000))*(x8604)*(x8611)))+(((x8606)*(x8614)))+(((r21)*(x8608)*(x8610)))+(((sj6)*(x8605)*(x8606)))+(((IkReal(-1.00000000000000))*(sj6)*(x8605)*(x8612)))+(((r21)*(sj6)*(x8611)))+(((cj6)*(x8605)*(x8608)))+(((r21)*(x8608)*(x8613))))); +IkReal x8615=(cj6)*(cj6); +IkReal x8616=(sj6)*(sj6); +IkReal x8617=((IkReal(1.00000000000000))*(r21)); +IkReal x8618=((cj6)*(r20)); +IkReal x8619=((r22)*(sj5)); +IkReal x8620=((r01)*(sj0)); +IkReal x8621=((r00)*(sj0)); +IkReal x8622=((cj0)*(r10)); +IkReal x8623=((r02)*(sj0)*(sj5)); +IkReal x8624=((cj5)*(x8615)); +IkReal x8625=((cj0)*(r12)*(sj5)); +IkReal x8626=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8627=((cj5)*(x8616)); +IkReal x8628=((r20)*(x8627)); +dummyeval[0]=((((r21)*(sj6)*(x8625)))+(((r20)*(x8620)*(x8624)))+(((IkReal(-1.00000000000000))*(x8626)*(x8628)))+(((IkReal(-1.00000000000000))*(r20)*(x8624)*(x8626)))+(((r21)*(x8622)*(x8624)))+(((IkReal(-1.00000000000000))*(x8618)*(x8625)))+(((IkReal(-1.00000000000000))*(sj6)*(x8617)*(x8623)))+(((IkReal(-1.00000000000000))*(x8617)*(x8621)*(x8624)))+(((x8620)*(x8628)))+(((cj6)*(x8619)*(x8622)))+(((x8618)*(x8623)))+(((r21)*(x8622)*(x8627)))+(((IkReal(-1.00000000000000))*(sj6)*(x8619)*(x8626)))+(((IkReal(-1.00000000000000))*(x8617)*(x8621)*(x8627)))+(((IkReal(-1.00000000000000))*(cj6)*(x8619)*(x8621)))+(((sj6)*(x8619)*(x8620)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst14; +IkReal x8629=(cj6)*(cj6); +IkReal x8630=(sj6)*(sj6); +IkReal x8631=((sj5)*(sj6)); +IkReal x8632=((IkReal(1.00000000000000))*(cj0)); +IkReal x8633=((cj6)*(sj5)); +IkReal x8634=((r20)*(sj0)); +IkReal x8635=((cj0)*(r20)); +IkReal x8636=((r00)*(r21)); +IkReal x8637=((r22)*(sj0)); +IkReal x8638=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x8639=((cj5)*(x8630)); +IkReal x8640=((cj5)*(x8629)); +gconst14=IKsign(((((IkReal(-1.00000000000000))*(r10)*(x8638)*(x8639)))+(((IkReal(-1.00000000000000))*(r10)*(x8638)*(x8640)))+(((r01)*(x8635)*(x8640)))+(((r11)*(x8634)*(x8639)))+(((r02)*(x8633)*(x8635)))+(((r12)*(x8633)*(x8634)))+(((r11)*(x8634)*(x8640)))+(((IkReal(-1.00000000000000))*(r10)*(x8633)*(x8637)))+(((cj0)*(r01)*(r22)*(x8631)))+(((r01)*(x8635)*(x8639)))+(((IkReal(-1.00000000000000))*(r12)*(x8631)*(x8638)))+(((r11)*(x8631)*(x8637)))+(((IkReal(-1.00000000000000))*(x8632)*(x8636)*(x8639)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x8631)*(x8632)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x8632)*(x8633)))+(((IkReal(-1.00000000000000))*(x8632)*(x8636)*(x8640))))); +IkReal x8641=(cj6)*(cj6); +IkReal x8642=(sj6)*(sj6); +IkReal x8643=((sj5)*(sj6)); +IkReal x8644=((IkReal(1.00000000000000))*(cj0)); +IkReal x8645=((cj6)*(sj5)); +IkReal x8646=((r20)*(sj0)); +IkReal x8647=((cj0)*(r20)); +IkReal x8648=((r00)*(r21)); +IkReal x8649=((r22)*(sj0)); +IkReal x8650=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x8651=((cj5)*(x8642)); +IkReal x8652=((cj5)*(x8641)); +dummyeval[0]=((((cj0)*(r01)*(r22)*(x8643)))+(((r01)*(x8647)*(x8652)))+(((r11)*(x8646)*(x8652)))+(((IkReal(-1.00000000000000))*(r10)*(x8650)*(x8652)))+(((IkReal(-1.00000000000000))*(r10)*(x8645)*(x8649)))+(((r02)*(x8645)*(x8647)))+(((r11)*(x8643)*(x8649)))+(((IkReal(-1.00000000000000))*(r12)*(x8643)*(x8650)))+(((IkReal(-1.00000000000000))*(r10)*(x8650)*(x8651)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x8643)*(x8644)))+(((r01)*(x8647)*(x8651)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x8644)*(x8645)))+(((IkReal(-1.00000000000000))*(x8644)*(x8648)*(x8651)))+(((r12)*(x8645)*(x8646)))+(((r11)*(x8646)*(x8651)))+(((IkReal(-1.00000000000000))*(x8644)*(x8648)*(x8652)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x8653=((cj5)*(r22)); +IkReal x8654=((IkReal(0.374290000000000))*(sj5)); +IkReal x8655=((cj0)*(sj6)); +IkReal x8656=((cj6)*(r21)); +IkReal x8657=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8658=((cj0)*(r02)); +IkReal x8659=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8660=((IkReal(1.00000000000000))*(py)); +IkReal x8661=((r01)*(sj0)); +IkReal x8662=((r20)*(sj6)); +IkReal x8663=((r11)*(sj0)); +IkReal x8664=((IkReal(0.374290000000000))*(cj5)); +IkReal x8665=((cj0)*(r12)); +IkReal x8666=((sj0)*(x8664)); +IkReal x8667=((cj6)*(x8659)); +IkReal x8668=((r10)*(sj0)*(sj6)); +IkReal x8669=((r00)*(sj0)*(sj6)); +IkReal x8670=((cj0)*(cj6)*(x8654)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x8656)))+(((sj5)*(x8662)))+(((IkReal(-1.00000000000000))*(x8653)))); +evalcond[2]=((((x8654)*(x8656)))+(((IkReal(-0.374290000000000))*(x8653)))+(((IkReal(-1.00000000000000))*(x8659)*(x8662)))+(((IkReal(-1.00000000000000))*(x8656)*(x8659)))+(((x8654)*(x8662)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x8657)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x8659)*(x8669)))+(((IkReal(-1.00000000000000))*(r11)*(x8670)))+(((cj6)*(x8654)*(x8661)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8657)))+(((x8657)*(x8665)))+(((IkReal(-1.00000000000000))*(r10)*(x8654)*(x8655)))+(((IkReal(-1.00000000000000))*(x8661)*(x8667)))+(((x8654)*(x8669)))+(((IkReal(-1.00000000000000))*(cj0)*(x8660)))+(((r10)*(x8655)*(x8659)))+(((IkReal(-1.00000000000000))*(r02)*(x8666)))+(((px)*(sj0)))+(((x8664)*(x8665)))+(((cj0)*(r11)*(x8667)))); +evalcond[4]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((r00)*(x8655)*(x8659)))+(((r12)*(sj0)*(x8657)))+(((IkReal(-1.00000000000000))*(r00)*(x8654)*(x8655)))+(((IkReal(-1.00000000000000))*(x8654)*(x8668)))+(((x8657)*(x8658)))+(((IkReal(-1.00000000000000))*(r01)*(x8670)))+(((x8659)*(x8668)))+(((r12)*(x8666)))+(((x8658)*(x8664)))+(((x8663)*(x8667)))+(((cj0)*(r01)*(x8667)))+(((IkReal(-1.00000000000000))*(sj0)*(x8660)))+(((IkReal(-1.00000000000000))*(cj6)*(x8654)*(x8663)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8671=((cj0)*(cj5)); +IkReal x8672=((IkReal(1.00000000000000))*(cj0)); +IkReal x8673=((cj6)*(r11)); +IkReal x8674=((r10)*(sj6)); +IkReal x8675=((cj5)*(sj0)); +IkReal x8676=((r00)*(sj5)*(sj6)); +IkReal x8677=((cj6)*(r01)*(sj5)); +IkReal x8678=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x8677)))+(((r12)*(x8671)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8673)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8674)))+(((sj0)*(x8676)))+(((IkReal(-1.00000000000000))*(r02)*(x8675))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x8672)*(x8677)))+(((r02)*(x8671)))+(((IkReal(-1.00000000000000))*(x8672)*(x8676)))+(((IkReal(-1.00000000000000))*(x8674)*(x8678)))+(((IkReal(-1.00000000000000))*(x8673)*(x8678)))+(((r12)*(x8675))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x8677)))+(((r12)*(x8671)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8673)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8674)))+(((sj0)*(x8676)))+(((IkReal(-1.00000000000000))*(r02)*(x8675)))))+IKsqr(((((IkReal(-1.00000000000000))*(x8672)*(x8677)))+(((r02)*(x8671)))+(((IkReal(-1.00000000000000))*(x8672)*(x8676)))+(((IkReal(-1.00000000000000))*(x8674)*(x8678)))+(((IkReal(-1.00000000000000))*(x8673)*(x8678)))+(((r12)*(x8675)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x8677)))+(((r12)*(x8671)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8673)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8674)))+(((sj0)*(x8676)))+(((IkReal(-1.00000000000000))*(r02)*(x8675)))), ((((IkReal(-1.00000000000000))*(x8672)*(x8677)))+(((r02)*(x8671)))+(((IkReal(-1.00000000000000))*(x8672)*(x8676)))+(((IkReal(-1.00000000000000))*(x8674)*(x8678)))+(((IkReal(-1.00000000000000))*(x8673)*(x8678)))+(((r12)*(x8675))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x8679=((cj0)*(cj5)); +IkReal x8680=((IkReal(1.00000000000000))*(cj0)); +IkReal x8681=((cj6)*(r11)); +IkReal x8682=((r10)*(sj6)); +IkReal x8683=((cj5)*(sj0)); +IkReal x8684=((r00)*(sj5)*(sj6)); +IkReal x8685=((cj6)*(r01)*(sj5)); +IkReal x8686=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x8683)))+(((IkReal(-1.00000000000000))*(sj5)*(x8680)*(x8682)))+(((sj0)*(x8684)))+(((r12)*(x8679)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((IkReal(-1.00000000000000))*(sj5)*(x8680)*(x8681)))+(((sj0)*(x8685)))); +evalcond[1]=((((r02)*(x8679)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(x8680)*(x8684)))+(((IkReal(-1.00000000000000))*(x8682)*(x8686)))+(((IkReal(-1.00000000000000))*(x8680)*(x8685)))+(((IkReal(-1.00000000000000))*(x8681)*(x8686)))+(((r12)*(x8683)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst20; +IkReal x8687=(cj5)*(cj5); +IkReal x8688=(r20)*(r20); +IkReal x8689=(sj6)*(sj6); +IkReal x8690=(cj6)*(cj6); +IkReal x8691=(r21)*(r21); +IkReal x8692=((cj6)*(r21)); +IkReal x8693=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8694=((cj5)*(r22)*(sj5)); +gconst20=IKsign(((((x8687)*(x8690)*(x8691)))+(((IkReal(-1.00000000000000))*(x8692)*(x8693)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x8687)*(x8688)*(x8689)))+(((x8689)*(x8691)))+(((x8687)*(x8692)*(x8693)))+(((x8688)*(x8690)))+(((x8693)*(x8694)))+(((IkReal(2.00000000000000))*(x8692)*(x8694))))); +IkReal x8695=(cj5)*(cj5); +IkReal x8696=(r20)*(r20); +IkReal x8697=(sj6)*(sj6); +IkReal x8698=(cj6)*(cj6); +IkReal x8699=(r21)*(r21); +IkReal x8700=((cj6)*(r21)); +IkReal x8701=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8702=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((IkReal(2.00000000000000))*(x8700)*(x8702)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x8695)*(x8700)*(x8701)))+(((x8696)*(x8698)))+(((x8697)*(x8699)))+(((x8695)*(x8698)*(x8699)))+(((IkReal(-1.00000000000000))*(x8700)*(x8701)))+(((x8701)*(x8702)))+(((x8695)*(x8696)*(x8697)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst21; +IkReal x8703=(cj6)*(cj6); +IkReal x8704=(sj6)*(sj6); +IkReal x8705=((IkReal(1.00000000000000))*(r21)); +IkReal x8706=((cj6)*(r20)); +IkReal x8707=((r22)*(sj5)); +IkReal x8708=((r01)*(sj0)); +IkReal x8709=((r00)*(sj0)); +IkReal x8710=((cj0)*(r10)); +IkReal x8711=((r02)*(sj0)*(sj5)); +IkReal x8712=((cj5)*(x8703)); +IkReal x8713=((cj0)*(r12)*(sj5)); +IkReal x8714=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8715=((cj5)*(x8704)); +IkReal x8716=((r20)*(x8715)); +gconst21=IKsign(((((r21)*(x8710)*(x8715)))+(((sj6)*(x8707)*(x8708)))+(((cj6)*(x8707)*(x8710)))+(((IkReal(-1.00000000000000))*(r20)*(x8712)*(x8714)))+(((IkReal(-1.00000000000000))*(cj6)*(x8707)*(x8709)))+(((x8706)*(x8711)))+(((x8708)*(x8716)))+(((IkReal(-1.00000000000000))*(x8706)*(x8713)))+(((r20)*(x8708)*(x8712)))+(((IkReal(-1.00000000000000))*(sj6)*(x8707)*(x8714)))+(((IkReal(-1.00000000000000))*(x8705)*(x8709)*(x8712)))+(((r21)*(sj6)*(x8713)))+(((IkReal(-1.00000000000000))*(x8705)*(x8709)*(x8715)))+(((IkReal(-1.00000000000000))*(sj6)*(x8705)*(x8711)))+(((r21)*(x8710)*(x8712)))+(((IkReal(-1.00000000000000))*(x8714)*(x8716))))); +IkReal x8717=(cj6)*(cj6); +IkReal x8718=(sj6)*(sj6); +IkReal x8719=((IkReal(1.00000000000000))*(r21)); +IkReal x8720=((cj6)*(r20)); +IkReal x8721=((r22)*(sj5)); +IkReal x8722=((r01)*(sj0)); +IkReal x8723=((r00)*(sj0)); +IkReal x8724=((cj0)*(r10)); +IkReal x8725=((r02)*(sj0)*(sj5)); +IkReal x8726=((cj5)*(x8717)); +IkReal x8727=((cj0)*(r12)*(sj5)); +IkReal x8728=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8729=((cj5)*(x8718)); +IkReal x8730=((r20)*(x8729)); +dummyeval[0]=((((x8722)*(x8730)))+(((r21)*(sj6)*(x8727)))+(((IkReal(-1.00000000000000))*(x8728)*(x8730)))+(((r21)*(x8724)*(x8729)))+(((sj6)*(x8721)*(x8722)))+(((x8720)*(x8725)))+(((r21)*(x8724)*(x8726)))+(((IkReal(-1.00000000000000))*(cj6)*(x8721)*(x8723)))+(((IkReal(-1.00000000000000))*(x8719)*(x8723)*(x8726)))+(((IkReal(-1.00000000000000))*(r20)*(x8726)*(x8728)))+(((r20)*(x8722)*(x8726)))+(((IkReal(-1.00000000000000))*(x8720)*(x8727)))+(((cj6)*(x8721)*(x8724)))+(((IkReal(-1.00000000000000))*(x8719)*(x8723)*(x8729)))+(((IkReal(-1.00000000000000))*(sj6)*(x8721)*(x8728)))+(((IkReal(-1.00000000000000))*(sj6)*(x8719)*(x8725)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x8731=((sj0)*(sj6)); +IkReal x8732=((cj0)*(cj6)); +IkReal x8733=((IkReal(1.00000000000000))*(cj5)); +IkReal x8734=((cj6)*(sj0)); +IkReal x8735=((cj0)*(sj6)); +if( IKabs(((gconst21)*(((((r01)*(x8731)))+(((IkReal(-1.00000000000000))*(r11)*(x8735)))+(((r10)*(x8732)))+(((IkReal(-1.00000000000000))*(r00)*(x8734))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst21)*(((((IkReal(-1.00000000000000))*(r00)*(x8731)*(x8733)))+(((IkReal(-1.00000000000000))*(r01)*(x8733)*(x8734)))+(((cj0)*(r12)*(sj5)))+(((cj5)*(r11)*(x8732)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(r10)*(x8735))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst21)*(((((r01)*(x8731)))+(((IkReal(-1.00000000000000))*(r11)*(x8735)))+(((r10)*(x8732)))+(((IkReal(-1.00000000000000))*(r00)*(x8734)))))), ((gconst21)*(((((IkReal(-1.00000000000000))*(r00)*(x8731)*(x8733)))+(((IkReal(-1.00000000000000))*(r01)*(x8733)*(x8734)))+(((cj0)*(r12)*(sj5)))+(((cj5)*(r11)*(x8732)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(r10)*(x8735))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x8736=IKsin(j4); +IkReal x8737=IKcos(j4); +IkReal x8738=((r22)*(sj5)); +IkReal x8739=((IkReal(1.00000000000000))*(cj6)); +IkReal x8740=((IkReal(1.00000000000000))*(cj0)); +IkReal x8741=((cj5)*(r11)); +IkReal x8742=((cj5)*(cj6)); +IkReal x8743=((r11)*(sj6)); +IkReal x8744=((IkReal(1.00000000000000))*(sj6)); +IkReal x8745=((cj6)*(r00)); +IkReal x8746=((r12)*(sj5)); +IkReal x8747=((r02)*(sj5)); +IkReal x8748=((cj6)*(r10)); +IkReal x8749=((cj5)*(sj6)); +IkReal x8750=((cj5)*(r01)); +IkReal x8751=((sj0)*(x8736)); +IkReal x8752=((r00)*(x8749)); +IkReal x8753=((cj0)*(x8736)); +IkReal x8754=((sj0)*(x8737)); +IkReal x8755=((r20)*(x8737)); +IkReal x8756=((cj0)*(x8737)); +IkReal x8757=((r21)*(x8736)); +IkReal x8758=((r21)*(x8737)); +IkReal x8759=((r20)*(x8736)); +IkReal x8760=((x8737)*(x8746)); +IkReal x8761=((r01)*(sj6)*(x8737)); +IkReal x8762=((cj5)*(r10)*(x8744)); +evalcond[0]=((IkReal(-1.00000000000000))+(((x8736)*(x8738)))+(((IkReal(-1.00000000000000))*(x8739)*(x8755)))+(((x8749)*(x8759)))+(((x8742)*(x8757)))+(((sj6)*(x8758)))); +evalcond[1]=((((x8749)*(x8755)))+(((x8742)*(x8758)))+(((IkReal(-1.00000000000000))*(x8744)*(x8757)))+(((cj6)*(x8759)))+(((x8737)*(x8738)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8739)*(x8741)*(x8753)))+(((IkReal(-1.00000000000000))*(x8737)*(x8740)*(x8743)))+(((x8748)*(x8756)))+(((IkReal(-1.00000000000000))*(r10)*(x8736)*(x8740)*(x8749)))+(((IkReal(-1.00000000000000))*(x8736)*(x8740)*(x8746)))+(((x8747)*(x8751)))+(((r01)*(x8742)*(x8751)))+(((x8751)*(x8752)))+(((r01)*(sj6)*(x8754)))+(((IkReal(-1.00000000000000))*(r00)*(x8739)*(x8754)))); +evalcond[3]=((((x8747)*(x8754)))+(((r01)*(x8742)*(x8754)))+(((IkReal(-1.00000000000000))*(r10)*(x8739)*(x8753)))+(((IkReal(-1.00000000000000))*(x8740)*(x8760)))+(((x8752)*(x8754)))+(((IkReal(-1.00000000000000))*(r10)*(x8737)*(x8740)*(x8749)))+(cj3)+(((x8743)*(x8753)))+(((IkReal(-1.00000000000000))*(x8739)*(x8741)*(x8756)))+(((x8745)*(x8751)))+(((IkReal(-1.00000000000000))*(r01)*(x8744)*(x8751)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8743)*(x8754)))+(((IkReal(-1.00000000000000))*(x8739)*(x8750)*(x8753)))+(((IkReal(-1.00000000000000))*(x8736)*(x8740)*(x8752)))+(((IkReal(-1.00000000000000))*(x8736)*(x8740)*(x8747)))+(((x8748)*(x8754)))+(((IkReal(-1.00000000000000))*(x8746)*(x8751)))+(((IkReal(-1.00000000000000))*(x8739)*(x8741)*(x8751)))+(((x8745)*(x8756)))+(((IkReal(-1.00000000000000))*(x8751)*(x8762)))+(((IkReal(-1.00000000000000))*(x8740)*(x8761)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8737)*(x8740)*(x8747)))+(((r01)*(sj6)*(x8753)))+(((IkReal(-1.00000000000000))*(x8746)*(x8754)))+(((x8743)*(x8751)))+(((IkReal(-1.00000000000000))*(x8739)*(x8750)*(x8756)))+(((IkReal(-1.00000000000000))*(r00)*(x8739)*(x8753)))+(((IkReal(-1.00000000000000))*(x8737)*(x8740)*(x8752)))+(((IkReal(-1.00000000000000))*(x8739)*(x8741)*(x8754)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r10)*(x8739)*(x8751)))+(((IkReal(-1.00000000000000))*(x8754)*(x8762)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst20)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst20)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst20)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst20)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x8763=IKsin(j4); +IkReal x8764=IKcos(j4); +IkReal x8765=((r22)*(sj5)); +IkReal x8766=((IkReal(1.00000000000000))*(cj6)); +IkReal x8767=((IkReal(1.00000000000000))*(cj0)); +IkReal x8768=((cj5)*(r11)); +IkReal x8769=((cj5)*(cj6)); +IkReal x8770=((r11)*(sj6)); +IkReal x8771=((IkReal(1.00000000000000))*(sj6)); +IkReal x8772=((cj6)*(r00)); +IkReal x8773=((r12)*(sj5)); +IkReal x8774=((r02)*(sj5)); +IkReal x8775=((cj6)*(r10)); +IkReal x8776=((cj5)*(sj6)); +IkReal x8777=((cj5)*(r01)); +IkReal x8778=((sj0)*(x8763)); +IkReal x8779=((r00)*(x8776)); +IkReal x8780=((cj0)*(x8763)); +IkReal x8781=((sj0)*(x8764)); +IkReal x8782=((r20)*(x8764)); +IkReal x8783=((cj0)*(x8764)); +IkReal x8784=((r21)*(x8763)); +IkReal x8785=((r21)*(x8764)); +IkReal x8786=((r20)*(x8763)); +IkReal x8787=((x8764)*(x8773)); +IkReal x8788=((r01)*(sj6)*(x8764)); +IkReal x8789=((cj5)*(r10)*(x8771)); +evalcond[0]=((IkReal(-1.00000000000000))+(((x8763)*(x8765)))+(((x8769)*(x8784)))+(((IkReal(-1.00000000000000))*(x8766)*(x8782)))+(((sj6)*(x8785)))+(((x8776)*(x8786)))); +evalcond[1]=((((x8769)*(x8785)))+(((IkReal(-1.00000000000000))*(x8771)*(x8784)))+(((cj6)*(x8786)))+(((x8764)*(x8765)))+(((x8776)*(x8782)))); +evalcond[2]=((((r01)*(sj6)*(x8781)))+(((IkReal(-1.00000000000000))*(r00)*(x8766)*(x8781)))+(((r01)*(x8769)*(x8778)))+(((IkReal(-1.00000000000000))*(r10)*(x8763)*(x8767)*(x8776)))+(((IkReal(-1.00000000000000))*(x8764)*(x8767)*(x8770)))+(((x8774)*(x8778)))+(((IkReal(-1.00000000000000))*(x8766)*(x8768)*(x8780)))+(((IkReal(-1.00000000000000))*(x8763)*(x8767)*(x8773)))+(((x8775)*(x8783)))+(((x8778)*(x8779)))); +evalcond[3]=((((r01)*(x8769)*(x8781)))+(((x8770)*(x8780)))+(((x8779)*(x8781)))+(((IkReal(-1.00000000000000))*(r10)*(x8764)*(x8767)*(x8776)))+(((IkReal(-1.00000000000000))*(x8766)*(x8768)*(x8783)))+(((IkReal(-1.00000000000000))*(r01)*(x8771)*(x8778)))+(((IkReal(-1.00000000000000))*(r10)*(x8766)*(x8780)))+(cj3)+(((IkReal(-1.00000000000000))*(x8767)*(x8787)))+(((x8772)*(x8778)))+(((x8774)*(x8781)))); +evalcond[4]=((((x8775)*(x8781)))+(((IkReal(-1.00000000000000))*(x8763)*(x8767)*(x8774)))+(((x8772)*(x8783)))+(((IkReal(-1.00000000000000))*(x8773)*(x8778)))+(((IkReal(-1.00000000000000))*(x8763)*(x8767)*(x8779)))+(((IkReal(-1.00000000000000))*(x8767)*(x8788)))+(((IkReal(-1.00000000000000))*(x8766)*(x8768)*(x8778)))+(((IkReal(-1.00000000000000))*(x8778)*(x8789)))+(((IkReal(-1.00000000000000))*(x8770)*(x8781)))+(((IkReal(-1.00000000000000))*(x8766)*(x8777)*(x8780)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8764)*(x8767)*(x8779)))+(((IkReal(-1.00000000000000))*(r00)*(x8766)*(x8780)))+(((IkReal(-1.00000000000000))*(x8764)*(x8767)*(x8774)))+(((IkReal(-1.00000000000000))*(r10)*(x8766)*(x8778)))+(((IkReal(-1.00000000000000))*(x8766)*(x8768)*(x8781)))+(((r01)*(sj6)*(x8780)))+(((IkReal(-1.00000000000000))*(x8766)*(x8777)*(x8783)))+(((IkReal(-1.00000000000000))*(x8773)*(x8781)))+(((IkReal(-1.00000000000000))*(sj3)))+(((x8770)*(x8778)))+(((IkReal(-1.00000000000000))*(x8781)*(x8789)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x8790=((cj5)*(r22)); +IkReal x8791=((IkReal(0.374290000000000))*(sj5)); +IkReal x8792=((cj0)*(sj6)); +IkReal x8793=((cj6)*(r21)); +IkReal x8794=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8795=((cj0)*(r02)); +IkReal x8796=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8797=((IkReal(1.00000000000000))*(py)); +IkReal x8798=((r01)*(sj0)); +IkReal x8799=((r20)*(sj6)); +IkReal x8800=((r11)*(sj0)); +IkReal x8801=((IkReal(0.374290000000000))*(cj5)); +IkReal x8802=((cj0)*(r12)); +IkReal x8803=((sj0)*(x8801)); +IkReal x8804=((cj6)*(x8796)); +IkReal x8805=((r10)*(sj0)*(sj6)); +IkReal x8806=((r00)*(sj0)*(sj6)); +IkReal x8807=((cj0)*(cj6)*(x8791)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x8793)))+(((sj5)*(x8799)))+(((IkReal(-1.00000000000000))*(x8790)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8793)*(x8796)))+(((x8791)*(x8799)))+(((x8791)*(x8793)))+(((IkReal(-1.00000000000000))*(x8796)*(x8799)))+(((IkReal(-0.374290000000000))*(x8790)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x8794)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((x8794)*(x8802)))+(((cj6)*(x8791)*(x8798)))+(((IkReal(-1.00000000000000))*(x8796)*(x8806)))+(((x8791)*(x8806)))+(((cj0)*(r11)*(x8804)))+(((IkReal(-1.00000000000000))*(r10)*(x8791)*(x8792)))+(((IkReal(-1.00000000000000))*(r11)*(x8807)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8794)))+(((IkReal(-1.00000000000000))*(r02)*(x8803)))+(((px)*(sj0)))+(((x8801)*(x8802)))+(((IkReal(-1.00000000000000))*(x8798)*(x8804)))+(((IkReal(-1.00000000000000))*(cj0)*(x8797)))+(((r10)*(x8792)*(x8796)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x8800)*(x8804)))+(((x8796)*(x8805)))+(((r00)*(x8792)*(x8796)))+(((r12)*(sj0)*(x8794)))+(((IkReal(-1.00000000000000))*(x8791)*(x8805)))+(((x8794)*(x8795)))+(((IkReal(-1.00000000000000))*(cj6)*(x8791)*(x8800)))+(((IkReal(-1.00000000000000))*(r00)*(x8791)*(x8792)))+(((r12)*(x8803)))+(((cj0)*(r01)*(x8804)))+(((IkReal(-1.00000000000000))*(r01)*(x8807)))+(((x8795)*(x8801)))+(((IkReal(-1.00000000000000))*(sj0)*(x8797)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8808=((sj0)*(sj5)); +IkReal x8809=((r00)*(sj6)); +IkReal x8810=((IkReal(1.00000000000000))*(cj5)); +IkReal x8811=((cj6)*(r11)); +IkReal x8812=((cj6)*(r01)); +IkReal x8813=((r10)*(sj6)); +IkReal x8814=((cj0)*(sj5)); +if( IKabs(((((x8808)*(x8812)))+(((IkReal(-1.00000000000000))*(x8813)*(x8814)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8810)))+(((x8808)*(x8809)))+(((IkReal(-1.00000000000000))*(x8811)*(x8814))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x8808)*(x8811)))+(((x8808)*(x8813)))+(((x8809)*(x8814)))+(((x8812)*(x8814)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x8810)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x8810))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x8808)*(x8812)))+(((IkReal(-1.00000000000000))*(x8813)*(x8814)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8810)))+(((x8808)*(x8809)))+(((IkReal(-1.00000000000000))*(x8811)*(x8814)))))+IKsqr(((((x8808)*(x8811)))+(((x8808)*(x8813)))+(((x8809)*(x8814)))+(((x8812)*(x8814)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x8810)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x8810)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x8808)*(x8812)))+(((IkReal(-1.00000000000000))*(x8813)*(x8814)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8810)))+(((x8808)*(x8809)))+(((IkReal(-1.00000000000000))*(x8811)*(x8814)))), ((((x8808)*(x8811)))+(((x8808)*(x8813)))+(((x8809)*(x8814)))+(((x8812)*(x8814)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x8810)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x8810))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x8815=((cj0)*(cj5)); +IkReal x8816=((IkReal(1.00000000000000))*(cj0)); +IkReal x8817=((cj6)*(r11)); +IkReal x8818=((r10)*(sj6)); +IkReal x8819=((cj5)*(sj0)); +IkReal x8820=((r00)*(sj5)*(sj6)); +IkReal x8821=((cj6)*(r01)*(sj5)); +IkReal x8822=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((sj0)*(x8821)))+(((r12)*(x8815)))+(((IkReal(-1.00000000000000))*(r02)*(x8819)))+(((sj0)*(x8820)))+(((IkReal(-1.00000000000000))*(sj5)*(x8816)*(x8817)))+(((IkReal(-1.00000000000000))*(sj5)*(x8816)*(x8818)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x8817)*(x8822)))+(((r12)*(x8819)))+(((IkReal(-1.00000000000000))*(x8816)*(x8820)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x8818)*(x8822)))+(((r02)*(x8815)))+(((IkReal(-1.00000000000000))*(x8816)*(x8821)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst24; +IkReal x8823=(r21)*(r21); +IkReal x8824=(cj5)*(cj5); +IkReal x8825=(sj6)*(sj6); +IkReal x8826=(cj6)*(cj6); +IkReal x8827=(r20)*(r20); +IkReal x8828=((cj6)*(r21)); +IkReal x8829=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8830=((cj5)*(r22)*(sj5)); +IkReal x8831=((IkReal(1.00000000000000))*(x8825)); +IkReal x8832=((IkReal(1.00000000000000))*(x8826)); +gconst24=IKsign(((((IkReal(-1.00000000000000))*(x8823)*(x8824)*(x8832)))+(((IkReal(-2.00000000000000))*(x8828)*(x8830)))+(((IkReal(-1.00000000000000))*(x8823)*(x8831)))+(((IkReal(-1.00000000000000))*(x8824)*(x8828)*(x8829)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x8829)*(x8830)))+(((IkReal(-1.00000000000000))*(x8824)*(x8827)*(x8831)))+(((x8828)*(x8829)))+(((IkReal(-1.00000000000000))*(x8827)*(x8832))))); +IkReal x8833=(r21)*(r21); +IkReal x8834=(cj5)*(cj5); +IkReal x8835=(sj6)*(sj6); +IkReal x8836=(cj6)*(cj6); +IkReal x8837=(r20)*(r20); +IkReal x8838=((cj6)*(r21)); +IkReal x8839=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8840=((cj5)*(r22)*(sj5)); +IkReal x8841=((IkReal(1.00000000000000))*(x8835)); +IkReal x8842=((IkReal(1.00000000000000))*(x8836)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x8833)*(x8834)*(x8842)))+(((IkReal(-1.00000000000000))*(x8834)*(x8837)*(x8841)))+(((x8838)*(x8839)))+(((IkReal(-2.00000000000000))*(x8838)*(x8840)))+(((IkReal(-1.00000000000000))*(x8833)*(x8841)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x8837)*(x8842)))+(((IkReal(-1.00000000000000))*(x8834)*(x8838)*(x8839)))+(((IkReal(-1.00000000000000))*(x8839)*(x8840)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst25; +IkReal x8843=(cj6)*(cj6); +IkReal x8844=(sj6)*(sj6); +IkReal x8845=((IkReal(1.00000000000000))*(r01)); +IkReal x8846=((sj0)*(sj5)); +IkReal x8847=((cj6)*(r22)); +IkReal x8848=((r21)*(sj6)); +IkReal x8849=((r00)*(r21)); +IkReal x8850=((cj0)*(sj5)); +IkReal x8851=((cj6)*(r20)); +IkReal x8852=((r22)*(sj6)); +IkReal x8853=((cj0)*(cj5)); +IkReal x8854=((IkReal(1.00000000000000))*(r10)); +IkReal x8855=((cj5)*(sj0)); +IkReal x8856=((r20)*(x8844)); +IkReal x8857=((x8843)*(x8855)); +gconst25=IKsign(((((IkReal(-1.00000000000000))*(x8845)*(x8855)*(x8856)))+(((IkReal(-1.00000000000000))*(r12)*(x8848)*(x8850)))+(((r02)*(x8846)*(x8848)))+(((IkReal(-1.00000000000000))*(r21)*(x8843)*(x8853)*(x8854)))+(((r11)*(x8853)*(x8856)))+(((x8849)*(x8857)))+(((IkReal(-1.00000000000000))*(r02)*(x8846)*(x8851)))+(((r11)*(r20)*(x8843)*(x8853)))+(((x8844)*(x8849)*(x8855)))+(((r12)*(x8850)*(x8851)))+(((IkReal(-1.00000000000000))*(r20)*(x8845)*(x8857)))+(((IkReal(-1.00000000000000))*(x8845)*(x8846)*(x8852)))+(((r00)*(x8846)*(x8847)))+(((IkReal(-1.00000000000000))*(r21)*(x8844)*(x8853)*(x8854)))+(((r11)*(x8850)*(x8852)))+(((IkReal(-1.00000000000000))*(x8847)*(x8850)*(x8854))))); +IkReal x8858=(cj6)*(cj6); +IkReal x8859=(sj6)*(sj6); +IkReal x8860=((IkReal(1.00000000000000))*(r01)); +IkReal x8861=((sj0)*(sj5)); +IkReal x8862=((cj6)*(r22)); +IkReal x8863=((r21)*(sj6)); +IkReal x8864=((r00)*(r21)); +IkReal x8865=((cj0)*(sj5)); +IkReal x8866=((cj6)*(r20)); +IkReal x8867=((r22)*(sj6)); +IkReal x8868=((cj0)*(cj5)); +IkReal x8869=((IkReal(1.00000000000000))*(r10)); +IkReal x8870=((cj5)*(sj0)); +IkReal x8871=((r20)*(x8859)); +IkReal x8872=((x8858)*(x8870)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x8860)*(x8870)*(x8871)))+(((IkReal(-1.00000000000000))*(r21)*(x8858)*(x8868)*(x8869)))+(((IkReal(-1.00000000000000))*(x8860)*(x8861)*(x8867)))+(((IkReal(-1.00000000000000))*(x8862)*(x8865)*(x8869)))+(((x8864)*(x8872)))+(((r02)*(x8861)*(x8863)))+(((IkReal(-1.00000000000000))*(r21)*(x8859)*(x8868)*(x8869)))+(((IkReal(-1.00000000000000))*(r02)*(x8861)*(x8866)))+(((r11)*(x8865)*(x8867)))+(((r12)*(x8865)*(x8866)))+(((r00)*(x8861)*(x8862)))+(((r11)*(x8868)*(x8871)))+(((x8859)*(x8864)*(x8870)))+(((r11)*(r20)*(x8858)*(x8868)))+(((IkReal(-1.00000000000000))*(r20)*(x8860)*(x8872)))+(((IkReal(-1.00000000000000))*(r12)*(x8863)*(x8865)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x8873=((r01)*(sj0)); +IkReal x8874=((IkReal(1.00000000000000))*(cj5)); +IkReal x8875=((cj0)*(r10)); +IkReal x8876=((r00)*(sj0)); +IkReal x8877=((cj0)*(r11)); +if( IKabs(((gconst25)*(((((cj6)*(x8875)))+(((sj6)*(x8873)))+(((IkReal(-1.00000000000000))*(sj6)*(x8877)))+(((IkReal(-1.00000000000000))*(cj6)*(x8876))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst25)*(((((IkReal(-1.00000000000000))*(sj6)*(x8874)*(x8876)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x8877)))+(((IkReal(-1.00000000000000))*(cj6)*(x8873)*(x8874)))+(((cj5)*(sj6)*(x8875))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst25)*(((((cj6)*(x8875)))+(((sj6)*(x8873)))+(((IkReal(-1.00000000000000))*(sj6)*(x8877)))+(((IkReal(-1.00000000000000))*(cj6)*(x8876)))))), ((gconst25)*(((((IkReal(-1.00000000000000))*(sj6)*(x8874)*(x8876)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x8877)))+(((IkReal(-1.00000000000000))*(cj6)*(x8873)*(x8874)))+(((cj5)*(sj6)*(x8875))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x8878=IKsin(j4); +IkReal x8879=IKcos(j4); +IkReal x8880=((r22)*(sj5)); +IkReal x8881=((IkReal(1.00000000000000))*(cj6)); +IkReal x8882=((IkReal(1.00000000000000))*(cj0)); +IkReal x8883=((cj5)*(r11)); +IkReal x8884=((cj5)*(cj6)); +IkReal x8885=((r11)*(sj6)); +IkReal x8886=((IkReal(1.00000000000000))*(sj6)); +IkReal x8887=((cj6)*(r00)); +IkReal x8888=((r12)*(sj5)); +IkReal x8889=((r02)*(sj5)); +IkReal x8890=((cj6)*(r10)); +IkReal x8891=((cj5)*(sj6)); +IkReal x8892=((cj5)*(r01)); +IkReal x8893=((sj0)*(x8878)); +IkReal x8894=((r00)*(x8891)); +IkReal x8895=((cj0)*(x8878)); +IkReal x8896=((sj0)*(x8879)); +IkReal x8897=((r20)*(x8879)); +IkReal x8898=((cj0)*(x8879)); +IkReal x8899=((r21)*(x8878)); +IkReal x8900=((r21)*(x8879)); +IkReal x8901=((r20)*(x8878)); +IkReal x8902=((x8879)*(x8888)); +IkReal x8903=((r01)*(sj6)*(x8879)); +IkReal x8904=((cj5)*(r10)*(x8886)); +evalcond[0]=((IkReal(1.00000000000000))+(((x8884)*(x8899)))+(((sj6)*(x8900)))+(((x8878)*(x8880)))+(((x8891)*(x8901)))+(((IkReal(-1.00000000000000))*(x8881)*(x8897)))); +evalcond[1]=((((x8879)*(x8880)))+(((x8891)*(x8897)))+(((cj6)*(x8901)))+(((IkReal(-1.00000000000000))*(x8886)*(x8899)))+(((x8884)*(x8900)))); +evalcond[2]=((((r01)*(x8884)*(x8893)))+(((r01)*(sj6)*(x8896)))+(((IkReal(-1.00000000000000))*(x8879)*(x8882)*(x8885)))+(((x8890)*(x8898)))+(((x8889)*(x8893)))+(((IkReal(-1.00000000000000))*(r10)*(x8878)*(x8882)*(x8891)))+(((IkReal(-1.00000000000000))*(x8878)*(x8882)*(x8888)))+(((IkReal(-1.00000000000000))*(x8881)*(x8883)*(x8895)))+(((x8893)*(x8894)))+(((IkReal(-1.00000000000000))*(r00)*(x8881)*(x8896)))); +evalcond[3]=((((r01)*(x8884)*(x8896)))+(((IkReal(-1.00000000000000))*(r10)*(x8881)*(x8895)))+(((IkReal(-1.00000000000000))*(x8881)*(x8883)*(x8898)))+(((IkReal(-1.00000000000000))*(x8882)*(x8902)))+(((IkReal(-1.00000000000000))*(r01)*(x8886)*(x8893)))+(cj3)+(((x8885)*(x8895)))+(((x8887)*(x8893)))+(((IkReal(-1.00000000000000))*(r10)*(x8879)*(x8882)*(x8891)))+(((x8889)*(x8896)))+(((x8894)*(x8896)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8881)*(x8892)*(x8895)))+(((IkReal(-1.00000000000000))*(x8878)*(x8882)*(x8894)))+(((IkReal(-1.00000000000000))*(x8878)*(x8882)*(x8889)))+(((x8890)*(x8896)))+(((IkReal(-1.00000000000000))*(x8888)*(x8893)))+(((IkReal(-1.00000000000000))*(x8893)*(x8904)))+(((IkReal(-1.00000000000000))*(x8881)*(x8883)*(x8893)))+(((IkReal(-1.00000000000000))*(x8885)*(x8896)))+(((x8887)*(x8898)))+(((IkReal(-1.00000000000000))*(x8882)*(x8903)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x8881)*(x8895)))+(sj3)+(((IkReal(-1.00000000000000))*(x8879)*(x8882)*(x8889)))+(((IkReal(-1.00000000000000))*(x8881)*(x8883)*(x8896)))+(((IkReal(-1.00000000000000))*(x8888)*(x8896)))+(((IkReal(-1.00000000000000))*(x8896)*(x8904)))+(((IkReal(-1.00000000000000))*(x8879)*(x8882)*(x8894)))+(((IkReal(-1.00000000000000))*(r10)*(x8881)*(x8893)))+(((r01)*(sj6)*(x8895)))+(((IkReal(-1.00000000000000))*(x8881)*(x8892)*(x8898)))+(((x8885)*(x8893)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst24)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst24)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst24)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst24)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x8905=IKsin(j4); +IkReal x8906=IKcos(j4); +IkReal x8907=((r22)*(sj5)); +IkReal x8908=((IkReal(1.00000000000000))*(cj6)); +IkReal x8909=((IkReal(1.00000000000000))*(cj0)); +IkReal x8910=((cj5)*(r11)); +IkReal x8911=((cj5)*(cj6)); +IkReal x8912=((r11)*(sj6)); +IkReal x8913=((IkReal(1.00000000000000))*(sj6)); +IkReal x8914=((cj6)*(r00)); +IkReal x8915=((r12)*(sj5)); +IkReal x8916=((r02)*(sj5)); +IkReal x8917=((cj6)*(r10)); +IkReal x8918=((cj5)*(sj6)); +IkReal x8919=((cj5)*(r01)); +IkReal x8920=((sj0)*(x8905)); +IkReal x8921=((r00)*(x8918)); +IkReal x8922=((cj0)*(x8905)); +IkReal x8923=((sj0)*(x8906)); +IkReal x8924=((r20)*(x8906)); +IkReal x8925=((cj0)*(x8906)); +IkReal x8926=((r21)*(x8905)); +IkReal x8927=((r21)*(x8906)); +IkReal x8928=((r20)*(x8905)); +IkReal x8929=((x8906)*(x8915)); +IkReal x8930=((r01)*(sj6)*(x8906)); +IkReal x8931=((cj5)*(r10)*(x8913)); +evalcond[0]=((IkReal(1.00000000000000))+(((x8905)*(x8907)))+(((IkReal(-1.00000000000000))*(x8908)*(x8924)))+(((x8918)*(x8928)))+(((sj6)*(x8927)))+(((x8911)*(x8926)))); +evalcond[1]=((((x8906)*(x8907)))+(((cj6)*(x8928)))+(((x8918)*(x8924)))+(((x8911)*(x8927)))+(((IkReal(-1.00000000000000))*(x8913)*(x8926)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x8905)*(x8909)*(x8918)))+(((IkReal(-1.00000000000000))*(x8908)*(x8910)*(x8922)))+(((x8920)*(x8921)))+(((r01)*(x8911)*(x8920)))+(((IkReal(-1.00000000000000))*(x8905)*(x8909)*(x8915)))+(((x8917)*(x8925)))+(((IkReal(-1.00000000000000))*(x8906)*(x8909)*(x8912)))+(((IkReal(-1.00000000000000))*(r00)*(x8908)*(x8923)))+(((r01)*(sj6)*(x8923)))+(((x8916)*(x8920)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x8906)*(x8909)*(x8918)))+(((x8914)*(x8920)))+(((IkReal(-1.00000000000000))*(x8909)*(x8929)))+(((r01)*(x8911)*(x8923)))+(((IkReal(-1.00000000000000))*(r10)*(x8908)*(x8922)))+(((x8921)*(x8923)))+(((IkReal(-1.00000000000000))*(x8908)*(x8910)*(x8925)))+(((x8916)*(x8923)))+(cj3)+(((IkReal(-1.00000000000000))*(r01)*(x8913)*(x8920)))+(((x8912)*(x8922)))); +evalcond[4]=((((x8917)*(x8923)))+(((IkReal(-1.00000000000000))*(x8908)*(x8910)*(x8920)))+(((x8914)*(x8925)))+(((IkReal(-1.00000000000000))*(x8920)*(x8931)))+(((IkReal(-1.00000000000000))*(x8909)*(x8930)))+(((IkReal(-1.00000000000000))*(x8905)*(x8909)*(x8916)))+(((IkReal(-1.00000000000000))*(x8915)*(x8920)))+(((IkReal(-1.00000000000000))*(x8908)*(x8919)*(x8922)))+(((IkReal(-1.00000000000000))*(x8912)*(x8923)))+(((IkReal(-1.00000000000000))*(x8905)*(x8909)*(x8921)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x8908)*(x8920)))+(((IkReal(-1.00000000000000))*(x8906)*(x8909)*(x8921)))+(sj3)+(((IkReal(-1.00000000000000))*(r00)*(x8908)*(x8922)))+(((IkReal(-1.00000000000000))*(x8923)*(x8931)))+(((IkReal(-1.00000000000000))*(x8908)*(x8910)*(x8923)))+(((r01)*(sj6)*(x8922)))+(((IkReal(-1.00000000000000))*(x8906)*(x8909)*(x8916)))+(((IkReal(-1.00000000000000))*(x8908)*(x8919)*(x8925)))+(((IkReal(-1.00000000000000))*(x8915)*(x8923)))+(((x8912)*(x8920)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8932=((sj5)*(sj6)); +IkReal x8933=((cj6)*(sj5)); +IkReal x8934=((IkReal(1.00000000000000))*(cj0)); +IkReal x8935=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r11)*(x8933)*(x8934)))+(((r01)*(sj0)*(x8933)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x8932)))+(((IkReal(-1.00000000000000))*(r10)*(x8932)*(x8934)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8935))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x8933)))+(((IkReal(-1.00000000000000))*(r22)*(x8935)))+(((r20)*(x8932))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r11)*(x8933)*(x8934)))+(((r01)*(sj0)*(x8933)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x8932)))+(((IkReal(-1.00000000000000))*(r10)*(x8932)*(x8934)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8935)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x8933)))+(((IkReal(-1.00000000000000))*(r22)*(x8935)))+(((r20)*(x8932)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r11)*(x8933)*(x8934)))+(((r01)*(sj0)*(x8933)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x8932)))+(((IkReal(-1.00000000000000))*(r10)*(x8932)*(x8934)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8935)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x8933)))+(((IkReal(-1.00000000000000))*(r22)*(x8935)))+(((r20)*(x8932))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x8936=IKcos(j3); +IkReal x8937=((sj5)*(sj6)); +IkReal x8938=((cj0)*(cj5)); +IkReal x8939=((IkReal(1.00000000000000))*(cj0)); +IkReal x8940=((IkReal(1.00000000000000))*(sj0)); +IkReal x8941=((IkReal(1.00000000000000))*(x8936)); +IkReal x8942=((cj6)*(r01)*(sj5)); +IkReal x8943=((cj6)*(r11)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x8941)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x8937)))); +evalcond[1]=((((r00)*(sj0)*(x8937)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x8940)))+(((IkReal(-1.00000000000000))*(r10)*(x8937)*(x8939)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((IkReal(-1.00000000000000))*(x8939)*(x8943)))+(((sj0)*(x8942)))+(((r12)*(x8938)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x8937)*(x8940)))+(((IkReal(-1.00000000000000))*(cj1)*(x8941)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x8937)*(x8939)))+(((IkReal(-1.00000000000000))*(x8940)*(x8943)))+(((IkReal(-1.00000000000000))*(x8939)*(x8942)))+(((r02)*(x8938)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst15; +IkReal x8944=(r21)*(r21); +IkReal x8945=(cj5)*(cj5); +IkReal x8946=(sj6)*(sj6); +IkReal x8947=(cj6)*(cj6); +IkReal x8948=(r20)*(r20); +IkReal x8949=((cj6)*(r21)); +IkReal x8950=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8951=((cj5)*(r22)*(sj5)); +IkReal x8952=((IkReal(1.00000000000000))*(x8946)); +IkReal x8953=((IkReal(1.00000000000000))*(x8947)); +gconst15=IKsign(((((IkReal(-1.00000000000000))*(x8945)*(x8948)*(x8952)))+(((IkReal(-1.00000000000000))*(x8944)*(x8952)))+(((x8949)*(x8950)))+(((IkReal(-1.00000000000000))*(x8944)*(x8945)*(x8953)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x8948)*(x8953)))+(((IkReal(-1.00000000000000))*(x8945)*(x8949)*(x8950)))+(((IkReal(-2.00000000000000))*(x8949)*(x8951)))+(((IkReal(-1.00000000000000))*(x8950)*(x8951))))); +IkReal x8954=(r21)*(r21); +IkReal x8955=(cj5)*(cj5); +IkReal x8956=(sj6)*(sj6); +IkReal x8957=(cj6)*(cj6); +IkReal x8958=(r20)*(r20); +IkReal x8959=((cj6)*(r21)); +IkReal x8960=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8961=((cj5)*(r22)*(sj5)); +IkReal x8962=((IkReal(1.00000000000000))*(x8956)); +IkReal x8963=((IkReal(1.00000000000000))*(x8957)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x8955)*(x8958)*(x8962)))+(((IkReal(-1.00000000000000))*(x8958)*(x8963)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x8960)*(x8961)))+(((IkReal(-1.00000000000000))*(x8954)*(x8962)))+(((IkReal(-1.00000000000000))*(x8955)*(x8959)*(x8960)))+(((IkReal(-2.00000000000000))*(x8959)*(x8961)))+(((x8959)*(x8960)))+(((IkReal(-1.00000000000000))*(x8954)*(x8955)*(x8963)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst16; +IkReal x8964=(cj6)*(cj6); +IkReal x8965=(sj6)*(sj6); +IkReal x8966=((IkReal(1.00000000000000))*(r21)); +IkReal x8967=((cj6)*(r20)); +IkReal x8968=((r22)*(sj5)); +IkReal x8969=((r01)*(sj0)); +IkReal x8970=((r00)*(sj0)); +IkReal x8971=((cj0)*(r10)); +IkReal x8972=((r02)*(sj0)*(sj5)); +IkReal x8973=((cj5)*(x8964)); +IkReal x8974=((cj0)*(r12)*(sj5)); +IkReal x8975=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8976=((cj5)*(x8965)); +IkReal x8977=((r20)*(x8976)); +gconst16=IKsign(((((IkReal(-1.00000000000000))*(sj6)*(x8966)*(x8972)))+(((sj6)*(x8968)*(x8969)))+(((r20)*(x8969)*(x8973)))+(((IkReal(-1.00000000000000))*(x8966)*(x8970)*(x8976)))+(((IkReal(-1.00000000000000))*(r20)*(x8973)*(x8975)))+(((r21)*(sj6)*(x8974)))+(((r21)*(x8971)*(x8976)))+(((IkReal(-1.00000000000000))*(cj6)*(x8968)*(x8970)))+(((IkReal(-1.00000000000000))*(x8975)*(x8977)))+(((IkReal(-1.00000000000000))*(x8966)*(x8970)*(x8973)))+(((cj6)*(x8968)*(x8971)))+(((x8969)*(x8977)))+(((IkReal(-1.00000000000000))*(sj6)*(x8968)*(x8975)))+(((IkReal(-1.00000000000000))*(x8967)*(x8974)))+(((r21)*(x8971)*(x8973)))+(((x8967)*(x8972))))); +IkReal x8978=(cj6)*(cj6); +IkReal x8979=(sj6)*(sj6); +IkReal x8980=((IkReal(1.00000000000000))*(r21)); +IkReal x8981=((cj6)*(r20)); +IkReal x8982=((r22)*(sj5)); +IkReal x8983=((r01)*(sj0)); +IkReal x8984=((r00)*(sj0)); +IkReal x8985=((cj0)*(r10)); +IkReal x8986=((r02)*(sj0)*(sj5)); +IkReal x8987=((cj5)*(x8978)); +IkReal x8988=((cj0)*(r12)*(sj5)); +IkReal x8989=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8990=((cj5)*(x8979)); +IkReal x8991=((r20)*(x8990)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x8989)*(x8991)))+(((r21)*(x8985)*(x8987)))+(((IkReal(-1.00000000000000))*(sj6)*(x8980)*(x8986)))+(((x8983)*(x8991)))+(((r21)*(x8985)*(x8990)))+(((IkReal(-1.00000000000000))*(x8981)*(x8988)))+(((cj6)*(x8982)*(x8985)))+(((r20)*(x8983)*(x8987)))+(((sj6)*(x8982)*(x8983)))+(((IkReal(-1.00000000000000))*(x8980)*(x8984)*(x8987)))+(((IkReal(-1.00000000000000))*(sj6)*(x8982)*(x8989)))+(((IkReal(-1.00000000000000))*(x8980)*(x8984)*(x8990)))+(((IkReal(-1.00000000000000))*(r20)*(x8987)*(x8989)))+(((r21)*(sj6)*(x8988)))+(((x8981)*(x8986)))+(((IkReal(-1.00000000000000))*(cj6)*(x8982)*(x8984)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x8992=((cj1)*(sj6)); +IkReal x8993=((r01)*(sj0)); +IkReal x8994=((cj0)*(r11)); +IkReal x8995=((cj1)*(cj6)); +IkReal x8996=((cj0)*(r10)); +IkReal x8997=((IkReal(1.00000000000000))*(sj0)); +IkReal x8998=((cj1)*(sj5)); +if( IKabs(((gconst16)*(((((IkReal(-1.00000000000000))*(x8992)*(x8994)))+(((IkReal(-1.00000000000000))*(r00)*(x8995)*(x8997)))+(((x8992)*(x8993)))+(((x8995)*(x8996))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst16)*(((((cj0)*(r12)*(x8998)))+(((IkReal(-1.00000000000000))*(r02)*(x8997)*(x8998)))+(((IkReal(-1.00000000000000))*(cj5)*(x8993)*(x8995)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8992)*(x8997)))+(((cj5)*(x8992)*(x8996)))+(((cj5)*(x8994)*(x8995))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst16)*(((((IkReal(-1.00000000000000))*(x8992)*(x8994)))+(((IkReal(-1.00000000000000))*(r00)*(x8995)*(x8997)))+(((x8992)*(x8993)))+(((x8995)*(x8996)))))), ((gconst16)*(((((cj0)*(r12)*(x8998)))+(((IkReal(-1.00000000000000))*(r02)*(x8997)*(x8998)))+(((IkReal(-1.00000000000000))*(cj5)*(x8993)*(x8995)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8992)*(x8997)))+(((cj5)*(x8992)*(x8996)))+(((cj5)*(x8994)*(x8995))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x8999=IKsin(j4); +IkReal x9000=IKcos(j4); +IkReal x9001=((r22)*(sj5)); +IkReal x9002=((IkReal(1.00000000000000))*(cj6)); +IkReal x9003=((IkReal(1.00000000000000))*(cj0)); +IkReal x9004=((cj5)*(r11)); +IkReal x9005=((cj5)*(cj6)); +IkReal x9006=((IkReal(1.00000000000000))*(sj3)); +IkReal x9007=((r11)*(sj6)); +IkReal x9008=((IkReal(1.00000000000000))*(sj6)); +IkReal x9009=((cj6)*(r00)); +IkReal x9010=((r12)*(sj5)); +IkReal x9011=((r02)*(sj5)); +IkReal x9012=((cj6)*(r10)); +IkReal x9013=((cj5)*(sj6)); +IkReal x9014=((cj5)*(r01)); +IkReal x9015=((sj0)*(x8999)); +IkReal x9016=((r00)*(x9013)); +IkReal x9017=((cj0)*(x8999)); +IkReal x9018=((sj0)*(x9000)); +IkReal x9019=((r20)*(x9000)); +IkReal x9020=((cj0)*(x9000)); +IkReal x9021=((r21)*(x8999)); +IkReal x9022=((r21)*(x9000)); +IkReal x9023=((r20)*(x8999)); +IkReal x9024=((x9000)*(x9010)); +IkReal x9025=((r01)*(sj6)*(x9000)); +IkReal x9026=((cj5)*(r10)*(x9008)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x9002)*(x9019)))+(((IkReal(-1.00000000000000))*(cj1)))+(((x9005)*(x9021)))+(((x8999)*(x9001)))+(((x9013)*(x9023)))+(((sj6)*(x9022)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x9006)))+(((x9000)*(x9001)))+(((x9005)*(x9022)))+(((IkReal(-1.00000000000000))*(x9008)*(x9021)))+(((x9013)*(x9019)))+(((cj6)*(x9023)))); +evalcond[2]=((((x9012)*(x9020)))+(((IkReal(-1.00000000000000))*(r10)*(x8999)*(x9003)*(x9013)))+(((x9011)*(x9015)))+(((IkReal(-1.00000000000000))*(r00)*(x9002)*(x9018)))+(((IkReal(-1.00000000000000))*(x9002)*(x9004)*(x9017)))+(((IkReal(-1.00000000000000))*(x8999)*(x9003)*(x9010)))+(((r01)*(sj6)*(x9018)))+(((r01)*(x9005)*(x9015)))+(((IkReal(-1.00000000000000))*(x9000)*(x9003)*(x9007)))+(((x9015)*(x9016)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9003)*(x9024)))+(((IkReal(-1.00000000000000))*(r10)*(x9002)*(x9017)))+(((x9011)*(x9018)))+(((x9007)*(x9017)))+(cj3)+(((r01)*(x9005)*(x9018)))+(((IkReal(-1.00000000000000))*(x9002)*(x9004)*(x9020)))+(((IkReal(-1.00000000000000))*(r01)*(x9008)*(x9015)))+(((x9009)*(x9015)))+(((x9016)*(x9018)))+(((IkReal(-1.00000000000000))*(r10)*(x9000)*(x9003)*(x9013)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8999)*(x9003)*(x9011)))+(((IkReal(-1.00000000000000))*(x9010)*(x9015)))+(((x9012)*(x9018)))+(((x9009)*(x9020)))+(sj1)+(((IkReal(-1.00000000000000))*(x9015)*(x9026)))+(((IkReal(-1.00000000000000))*(x9007)*(x9018)))+(((IkReal(-1.00000000000000))*(x9002)*(x9014)*(x9017)))+(((IkReal(-1.00000000000000))*(x8999)*(x9003)*(x9016)))+(((IkReal(-1.00000000000000))*(x9002)*(x9004)*(x9015)))+(((IkReal(-1.00000000000000))*(x9003)*(x9025)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x9002)*(x9017)))+(((IkReal(-1.00000000000000))*(x9002)*(x9014)*(x9020)))+(((IkReal(-1.00000000000000))*(x9000)*(x9003)*(x9011)))+(((IkReal(-1.00000000000000))*(x9010)*(x9018)))+(((IkReal(-1.00000000000000))*(r10)*(x9002)*(x9015)))+(((IkReal(-1.00000000000000))*(x9002)*(x9004)*(x9018)))+(((IkReal(-1.00000000000000))*(x9000)*(x9003)*(x9016)))+(((IkReal(-1.00000000000000))*(cj1)*(x9006)))+(((x9007)*(x9015)))+(((r01)*(sj6)*(x9017)))+(((IkReal(-1.00000000000000))*(x9018)*(x9026)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x9027=((IkReal(1.00000000000000))*(cj1)); +IkReal x9028=((sj1)*(sj3)); +IkReal x9029=((r21)*(sj6)); +IkReal x9030=((r22)*(sj5)); +IkReal x9031=((cj6)*(r20)); +IkReal x9032=((cj5)*(r20)*(sj6)); +IkReal x9033=((cj5)*(cj6)*(r21)); +if( IKabs(((gconst15)*(((((IkReal(-1.00000000000000))*(x9027)*(x9032)))+(((x9028)*(x9029)))+(((IkReal(-1.00000000000000))*(x9027)*(x9030)))+(((IkReal(-1.00000000000000))*(x9028)*(x9031)))+(((IkReal(-1.00000000000000))*(x9027)*(x9033))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst15)*(((((IkReal(-1.00000000000000))*(x9028)*(x9030)))+(((IkReal(-1.00000000000000))*(x9028)*(x9032)))+(((IkReal(-1.00000000000000))*(x9027)*(x9029)))+(((cj1)*(x9031)))+(((IkReal(-1.00000000000000))*(x9028)*(x9033))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst15)*(((((IkReal(-1.00000000000000))*(x9027)*(x9032)))+(((x9028)*(x9029)))+(((IkReal(-1.00000000000000))*(x9027)*(x9030)))+(((IkReal(-1.00000000000000))*(x9028)*(x9031)))+(((IkReal(-1.00000000000000))*(x9027)*(x9033)))))), ((gconst15)*(((((IkReal(-1.00000000000000))*(x9028)*(x9030)))+(((IkReal(-1.00000000000000))*(x9028)*(x9032)))+(((IkReal(-1.00000000000000))*(x9027)*(x9029)))+(((cj1)*(x9031)))+(((IkReal(-1.00000000000000))*(x9028)*(x9033))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x9034=IKsin(j4); +IkReal x9035=IKcos(j4); +IkReal x9036=((r22)*(sj5)); +IkReal x9037=((IkReal(1.00000000000000))*(cj6)); +IkReal x9038=((IkReal(1.00000000000000))*(cj0)); +IkReal x9039=((cj5)*(r11)); +IkReal x9040=((cj5)*(cj6)); +IkReal x9041=((IkReal(1.00000000000000))*(sj3)); +IkReal x9042=((r11)*(sj6)); +IkReal x9043=((IkReal(1.00000000000000))*(sj6)); +IkReal x9044=((cj6)*(r00)); +IkReal x9045=((r12)*(sj5)); +IkReal x9046=((r02)*(sj5)); +IkReal x9047=((cj6)*(r10)); +IkReal x9048=((cj5)*(sj6)); +IkReal x9049=((cj5)*(r01)); +IkReal x9050=((sj0)*(x9034)); +IkReal x9051=((r00)*(x9048)); +IkReal x9052=((cj0)*(x9034)); +IkReal x9053=((sj0)*(x9035)); +IkReal x9054=((r20)*(x9035)); +IkReal x9055=((cj0)*(x9035)); +IkReal x9056=((r21)*(x9034)); +IkReal x9057=((r21)*(x9035)); +IkReal x9058=((r20)*(x9034)); +IkReal x9059=((x9035)*(x9045)); +IkReal x9060=((r01)*(sj6)*(x9035)); +IkReal x9061=((cj5)*(r10)*(x9043)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x9037)*(x9054)))+(((sj6)*(x9057)))+(((x9048)*(x9058)))+(((IkReal(-1.00000000000000))*(cj1)))+(((x9040)*(x9056)))+(((x9034)*(x9036)))); +evalcond[1]=((((x9035)*(x9036)))+(((IkReal(-1.00000000000000))*(sj1)*(x9041)))+(((IkReal(-1.00000000000000))*(x9043)*(x9056)))+(((x9048)*(x9054)))+(((x9040)*(x9057)))+(((cj6)*(x9058)))); +evalcond[2]=((((r01)*(x9040)*(x9050)))+(((IkReal(-1.00000000000000))*(x9037)*(x9039)*(x9052)))+(((x9046)*(x9050)))+(((r01)*(sj6)*(x9053)))+(((x9050)*(x9051)))+(((IkReal(-1.00000000000000))*(x9034)*(x9038)*(x9045)))+(((IkReal(-1.00000000000000))*(x9035)*(x9038)*(x9042)))+(((IkReal(-1.00000000000000))*(r10)*(x9034)*(x9038)*(x9048)))+(((IkReal(-1.00000000000000))*(r00)*(x9037)*(x9053)))+(((x9047)*(x9055)))); +evalcond[3]=((((x9051)*(x9053)))+(((IkReal(-1.00000000000000))*(x9038)*(x9059)))+(((IkReal(-1.00000000000000))*(r10)*(x9035)*(x9038)*(x9048)))+(((IkReal(-1.00000000000000))*(x9037)*(x9039)*(x9055)))+(((x9044)*(x9050)))+(((x9046)*(x9053)))+(cj3)+(((r01)*(x9040)*(x9053)))+(((IkReal(-1.00000000000000))*(r01)*(x9043)*(x9050)))+(((x9042)*(x9052)))+(((IkReal(-1.00000000000000))*(r10)*(x9037)*(x9052)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9050)*(x9061)))+(((x9044)*(x9055)))+(((x9047)*(x9053)))+(((IkReal(-1.00000000000000))*(x9034)*(x9038)*(x9051)))+(sj1)+(((IkReal(-1.00000000000000))*(x9034)*(x9038)*(x9046)))+(((IkReal(-1.00000000000000))*(x9037)*(x9049)*(x9052)))+(((IkReal(-1.00000000000000))*(x9045)*(x9050)))+(((IkReal(-1.00000000000000))*(x9042)*(x9053)))+(((IkReal(-1.00000000000000))*(x9037)*(x9039)*(x9050)))+(((IkReal(-1.00000000000000))*(x9038)*(x9060)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x9037)*(x9050)))+(((IkReal(-1.00000000000000))*(x9035)*(x9038)*(x9046)))+(((IkReal(-1.00000000000000))*(x9037)*(x9039)*(x9053)))+(((IkReal(-1.00000000000000))*(cj1)*(x9041)))+(((IkReal(-1.00000000000000))*(r00)*(x9037)*(x9052)))+(((x9042)*(x9050)))+(((IkReal(-1.00000000000000))*(x9035)*(x9038)*(x9051)))+(((IkReal(-1.00000000000000))*(x9053)*(x9061)))+(((r01)*(sj6)*(x9052)))+(((IkReal(-1.00000000000000))*(x9045)*(x9053)))+(((IkReal(-1.00000000000000))*(x9037)*(x9049)*(x9055)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x9062=((sj0)*(sj6)); +IkReal x9063=((cj0)*(cj6)); +IkReal x9064=((cj0)*(sj6)); +IkReal x9065=((IkReal(1.00000000000000))*(cj1)); +IkReal x9066=((r20)*(sj1)); +IkReal x9067=((cj6)*(sj0)); +IkReal x9068=((r21)*(sj1)); +IkReal x9069=((cj5)*(x9065)); +if( IKabs(((gconst14)*(((((IkReal(-1.00000000000000))*(r00)*(x9063)*(x9065)))+(((cj6)*(x9066)))+(((cj1)*(r11)*(x9062)))+(((IkReal(-1.00000000000000))*(sj6)*(x9068)))+(((IkReal(-1.00000000000000))*(r10)*(x9065)*(x9067)))+(((cj1)*(r01)*(x9064))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst14)*(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x9065)))+(((IkReal(-1.00000000000000))*(r11)*(x9067)*(x9069)))+(((cj5)*(sj6)*(x9066)))+(((IkReal(-1.00000000000000))*(r00)*(x9064)*(x9069)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(sj5)*(x9065)))+(((IkReal(-1.00000000000000))*(r10)*(x9062)*(x9069)))+(((cj5)*(cj6)*(x9068)))+(((r22)*(sj1)*(sj5)))+(((IkReal(-1.00000000000000))*(r01)*(x9063)*(x9069))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst14)*(((((IkReal(-1.00000000000000))*(r00)*(x9063)*(x9065)))+(((cj6)*(x9066)))+(((cj1)*(r11)*(x9062)))+(((IkReal(-1.00000000000000))*(sj6)*(x9068)))+(((IkReal(-1.00000000000000))*(r10)*(x9065)*(x9067)))+(((cj1)*(r01)*(x9064)))))), ((gconst14)*(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x9065)))+(((IkReal(-1.00000000000000))*(r11)*(x9067)*(x9069)))+(((cj5)*(sj6)*(x9066)))+(((IkReal(-1.00000000000000))*(r00)*(x9064)*(x9069)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(sj5)*(x9065)))+(((IkReal(-1.00000000000000))*(r10)*(x9062)*(x9069)))+(((cj5)*(cj6)*(x9068)))+(((r22)*(sj1)*(sj5)))+(((IkReal(-1.00000000000000))*(r01)*(x9063)*(x9069))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x9070=IKsin(j4); +IkReal x9071=IKcos(j4); +IkReal x9072=((r00)*(sj6)); +IkReal x9073=((cj6)*(r01)); +IkReal x9074=((IkReal(1.00000000000000))*(cj0)); +IkReal x9075=((IkReal(1.00000000000000))*(sj0)); +IkReal x9076=((r10)*(sj6)); +IkReal x9077=((sj5)*(x9070)); +IkReal x9078=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x9079=((cj5)*(x9070)); +IkReal x9080=((cj6)*(x9071)); +IkReal x9081=((sj0)*(x9079)); +IkReal x9082=((r01)*(sj6)*(x9071)); +IkReal x9083=((r11)*(sj6)*(x9071)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r20)*(x9080)))+(((r20)*(sj6)*(x9079)))+(((r21)*(sj6)*(x9071)))+(((cj6)*(r21)*(x9079)))+(((IkReal(-1.00000000000000))*(cj1)))+(((r22)*(x9077)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x9074)*(x9079)))+(((IkReal(-1.00000000000000))*(r12)*(x9074)*(x9077)))+(((r02)*(sj0)*(x9077)))+(((IkReal(-1.00000000000000))*(x9074)*(x9076)*(x9079)))+(((sj0)*(x9082)))+(((IkReal(-1.00000000000000))*(x9074)*(x9083)))+(((x9073)*(x9081)))+(((IkReal(-1.00000000000000))*(r00)*(x9075)*(x9080)))+(((x9072)*(x9081)))+(((cj0)*(r10)*(x9080)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9074)*(x9082)))+(((r10)*(sj0)*(x9080)))+(((IkReal(-1.00000000000000))*(x9072)*(x9074)*(x9079)))+(((IkReal(-1.00000000000000))*(x9073)*(x9074)*(x9079)))+(((IkReal(-1.00000000000000))*(r12)*(x9075)*(x9077)))+(sj1)+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x9075)*(x9079)))+(((IkReal(-1.00000000000000))*(x9075)*(x9076)*(x9079)))+(((IkReal(-1.00000000000000))*(r02)*(x9074)*(x9077)))+(((cj0)*(r00)*(x9080)))+(((IkReal(-1.00000000000000))*(x9075)*(x9083)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst17; +gconst17=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x9084=((IkReal(1.00000000000000))*(cj0)); +IkReal x9085=((cj4)*(sj6)); +IkReal x9086=((sj0)*(sj6)); +IkReal x9087=((cj5)*(sj4)); +IkReal x9088=((IkReal(0.374290000000000))*(sj5)); +IkReal x9089=((sj4)*(sj5)); +IkReal x9090=((cj0)*(cj6)); +IkReal x9091=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9092=((cj4)*(sj5)); +IkReal x9093=((cj5)*(sj0)); +IkReal x9094=((IkReal(0.374290000000000))*(r02)); +IkReal x9095=((r20)*(sj6)); +IkReal x9096=((cj6)*(r21)); +IkReal x9097=((IkReal(1.00000000000000))*(sj0)); +IkReal x9098=((cj0)*(sj6)); +IkReal x9099=((cj4)*(cj6)); +IkReal x9100=((IkReal(0.374290000000000))*(r12)); +IkReal x9101=((cj0)*(cj5)); +IkReal x9102=((cj6)*(sj5)); +IkReal x9103=((cj6)*(r01)); +IkReal x9104=((r00)*(sj6)); +IkReal x9105=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9106=((cj6)*(r11)); +IkReal x9107=((IkReal(1.00000000000000))*(r10)); +IkReal x9108=((r02)*(sj0)); +IkReal x9109=((cj6)*(sj4)); +IkReal x9110=((r12)*(x9097)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x9087)*(x9096)))+(((r21)*(x9085)))+(((IkReal(-1.00000000000000))*(r20)*(x9099)))+(((r22)*(x9089)))+(((x9087)*(x9095)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(x9091)*(x9096)))+(((IkReal(-1.00000000000000))*(r22)*(x9105)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x9088)*(x9095)))+(((IkReal(-1.00000000000000))*(x9091)*(x9095)))+(pz)+(((x9088)*(x9096)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x9086)*(x9107)))+(((r12)*(x9093)))+(((r02)*(x9101)))+(((IkReal(-1.00000000000000))*(r01)*(x9084)*(x9102)))+(((IkReal(-1.00000000000000))*(sj5)*(x9084)*(x9104)))+(((IkReal(-1.00000000000000))*(r11)*(x9097)*(x9102)))); +evalcond[4]=((((sj0)*(x9087)*(x9103)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x9084)*(x9087)))+(((IkReal(-1.00000000000000))*(r11)*(x9084)*(x9085)))+(((x9089)*(x9108)))+(((r01)*(sj0)*(x9085)))+(((IkReal(-1.00000000000000))*(x9084)*(x9087)*(x9106)))+(((r00)*(x9086)*(x9087)))+(((IkReal(-1.00000000000000))*(r12)*(x9084)*(x9089)))+(((IkReal(-1.00000000000000))*(r00)*(x9097)*(x9099)))+(((cj4)*(r10)*(x9090)))); +evalcond[5]=((IkReal(1.00000000000000))+(((r10)*(sj0)*(x9099)))+(((IkReal(-1.00000000000000))*(x9084)*(x9087)*(x9103)))+(((IkReal(-1.00000000000000))*(x9087)*(x9097)*(x9106)))+(((IkReal(-1.00000000000000))*(x9089)*(x9110)))+(((IkReal(-1.00000000000000))*(r01)*(x9084)*(x9085)))+(((IkReal(-1.00000000000000))*(x9084)*(x9087)*(x9104)))+(((IkReal(-1.00000000000000))*(x9086)*(x9087)*(x9107)))+(((IkReal(-1.00000000000000))*(r02)*(x9084)*(x9089)))+(((IkReal(-1.00000000000000))*(r11)*(x9085)*(x9097)))+(((cj4)*(r00)*(x9090)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r10)*(x9091)*(x9098)))+(((x9100)*(x9101)))+(((IkReal(-1.00000000000000))*(py)*(x9084)))+(((IkReal(-1.00000000000000))*(x9093)*(x9094)))+(((cj0)*(r12)*(x9105)))+(((sj0)*(x9088)*(x9103)))+(((r00)*(x9086)*(x9088)))+(((IkReal(-1.00000000000000))*(x9105)*(x9108)))+(((IkReal(-1.00000000000000))*(r00)*(x9086)*(x9091)))+(((IkReal(-1.00000000000000))*(r10)*(x9088)*(x9098)))+(((r11)*(x9090)*(x9091)))+(((IkReal(-1.00000000000000))*(r11)*(x9088)*(x9090)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x9091)*(x9103)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x9085)*(x9093)*(x9107)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9084)*(x9085)))+(((IkReal(-1.00000000000000))*(r11)*(x9093)*(x9099)))+(((IkReal(-1.00000000000000))*(r00)*(x9084)*(x9109)))+(((IkReal(-1.00000000000000))*(r10)*(x9097)*(x9109)))+(((r01)*(sj4)*(x9098)))+(((r11)*(sj4)*(x9086)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x9084)*(x9099)))+(((IkReal(-1.00000000000000))*(x9092)*(x9110)))+(((IkReal(-1.00000000000000))*(r02)*(x9084)*(x9092)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x9088)*(x9098)))+(((IkReal(-1.00000000000000))*(sj0)*(x9088)*(x9106)))+(((IkReal(-1.00000000000000))*(px)*(x9084)))+(((r10)*(x9086)*(x9091)))+(((cj0)*(r02)*(x9105)))+(((IkReal(-1.00000000000000))*(r10)*(x9086)*(x9088)))+(((r00)*(x9091)*(x9098)))+(((x9093)*(x9100)))+(((r12)*(sj0)*(x9105)))+(((r01)*(x9090)*(x9091)))+(((IkReal(-1.00000000000000))*(r01)*(x9088)*(x9090)))+(((x9094)*(x9101)))+(((sj0)*(x9091)*(x9106)))+(((IkReal(-1.00000000000000))*(py)*(x9097)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9111=((r20)*(sj6)); +IkReal x9112=((cj4)*(cj5)); +IkReal x9113=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x9112)*(x9113)))+(((x9111)*(x9112))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9113)))+(((sj5)*(x9111))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x9112)*(x9113)))+(((x9111)*(x9112)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9113)))+(((sj5)*(x9111)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x9112)*(x9113)))+(((x9111)*(x9112)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9113)))+(((sj5)*(x9111))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9114=IKcos(j3); +IkReal x9115=((sj0)*(sj5)); +IkReal x9116=((r00)*(sj6)); +IkReal x9117=((cj6)*(r01)); +IkReal x9118=((cj5)*(sj0)); +IkReal x9119=((cj0)*(cj5)); +IkReal x9120=((cj6)*(sj4)); +IkReal x9121=((sj4)*(sj6)); +IkReal x9122=((cj0)*(r11)); +IkReal x9123=((cj4)*(cj6)); +IkReal x9124=((cj4)*(sj6)); +IkReal x9125=((IkReal(1.00000000000000))*(cj0)); +IkReal x9126=((cj4)*(sj5)); +IkReal x9127=((sj5)*(sj6)); +IkReal x9128=((cj6)*(sj5)); +IkReal x9129=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r21)*(x9128)))+(((r20)*(x9127)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x9114)))); +evalcond[1]=((((cj5)*(r20)*(x9124)))+(((cj5)*(r21)*(x9123)))+(((IkReal(-1.00000000000000))*(x9129)))+(((r22)*(x9126)))+(((IkReal(-1.00000000000000))*(r21)*(x9121)))+(((r20)*(x9120)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9122)*(x9128)))+(((IkReal(-1.00000000000000))*(x9129)))+(((r12)*(x9119)))+(((IkReal(-1.00000000000000))*(r02)*(x9118)))+(((x9115)*(x9116)))+(((x9115)*(x9117)))+(((IkReal(-1.00000000000000))*(r10)*(x9125)*(x9127)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x9120)*(x9125)))+(((IkReal(-1.00000000000000))*(r11)*(x9119)*(x9123)))+(((cj4)*(r02)*(x9115)))+(((r00)*(sj0)*(x9120)))+(((cj4)*(x9117)*(x9118)))+(x9114)+(((cj4)*(x9116)*(x9118)))+(((x9121)*(x9122)))+(((IkReal(-1.00000000000000))*(r12)*(x9125)*(x9126)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x9121)))+(((IkReal(-1.00000000000000))*(r10)*(x9119)*(x9124)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9130=((IkReal(1.00000000000000))*(cj0)); +IkReal x9131=((cj4)*(sj6)); +IkReal x9132=((sj0)*(sj6)); +IkReal x9133=((cj5)*(sj4)); +IkReal x9134=((IkReal(0.374290000000000))*(sj5)); +IkReal x9135=((sj4)*(sj5)); +IkReal x9136=((cj0)*(cj6)); +IkReal x9137=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9138=((cj4)*(sj5)); +IkReal x9139=((cj5)*(sj0)); +IkReal x9140=((IkReal(0.374290000000000))*(r02)); +IkReal x9141=((r20)*(sj6)); +IkReal x9142=((cj6)*(r21)); +IkReal x9143=((IkReal(1.00000000000000))*(sj0)); +IkReal x9144=((cj0)*(sj6)); +IkReal x9145=((cj4)*(cj6)); +IkReal x9146=((IkReal(0.374290000000000))*(r12)); +IkReal x9147=((cj0)*(cj5)); +IkReal x9148=((cj6)*(sj5)); +IkReal x9149=((cj6)*(r01)); +IkReal x9150=((r00)*(sj6)); +IkReal x9151=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9152=((cj6)*(r11)); +IkReal x9153=((IkReal(1.00000000000000))*(r10)); +IkReal x9154=((r02)*(sj0)); +IkReal x9155=((cj6)*(sj4)); +IkReal x9156=((r12)*(x9143)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x9133)*(x9142)))+(((x9133)*(x9141)))+(((r22)*(x9135)))+(((r21)*(x9131)))+(((IkReal(-1.00000000000000))*(r20)*(x9145)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((x9134)*(x9142)))+(((x9134)*(x9141)))+(((IkReal(-1.00000000000000))*(r22)*(x9151)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x9137)*(x9141)))+(((IkReal(-1.00000000000000))*(x9137)*(x9142)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x9132)*(x9153)))+(((r12)*(x9139)))+(((r02)*(x9147)))+(((IkReal(-1.00000000000000))*(sj5)*(x9130)*(x9150)))+(((IkReal(-1.00000000000000))*(r01)*(x9130)*(x9148)))+(((IkReal(-1.00000000000000))*(r11)*(x9143)*(x9148)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(sj6)*(x9130)*(x9133)))+(((x9135)*(x9154)))+(((sj0)*(x9133)*(x9149)))+(((IkReal(-1.00000000000000))*(r12)*(x9130)*(x9135)))+(((IkReal(-1.00000000000000))*(r11)*(x9130)*(x9131)))+(((cj4)*(r10)*(x9136)))+(((r01)*(sj0)*(x9131)))+(((IkReal(-1.00000000000000))*(x9130)*(x9133)*(x9152)))+(((r00)*(x9132)*(x9133)))+(((IkReal(-1.00000000000000))*(r00)*(x9143)*(x9145)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x9130)*(x9133)*(x9150)))+(((cj4)*(r00)*(x9136)))+(((IkReal(-1.00000000000000))*(r01)*(x9130)*(x9131)))+(((IkReal(-1.00000000000000))*(x9133)*(x9143)*(x9152)))+(((IkReal(-1.00000000000000))*(r11)*(x9131)*(x9143)))+(((IkReal(-1.00000000000000))*(x9130)*(x9133)*(x9149)))+(((IkReal(-1.00000000000000))*(x9132)*(x9133)*(x9153)))+(((IkReal(-1.00000000000000))*(x9135)*(x9156)))+(((IkReal(-1.00000000000000))*(r02)*(x9130)*(x9135)))+(((r10)*(sj0)*(x9145)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((x9146)*(x9147)))+(((cj0)*(r12)*(x9151)))+(((IkReal(-1.00000000000000))*(r11)*(x9134)*(x9136)))+(((sj0)*(x9134)*(x9149)))+(((IkReal(-1.00000000000000))*(sj0)*(x9137)*(x9149)))+(((r00)*(x9132)*(x9134)))+(((IkReal(-1.00000000000000))*(x9151)*(x9154)))+(((IkReal(-1.00000000000000))*(r00)*(x9132)*(x9137)))+(((IkReal(-1.00000000000000))*(x9139)*(x9140)))+(((IkReal(-1.00000000000000))*(r10)*(x9134)*(x9144)))+(((IkReal(-1.00000000000000))*(py)*(x9130)))+(((r11)*(x9136)*(x9137)))+(((px)*(sj0)))+(((r10)*(x9137)*(x9144)))); +evalcond[7]=((((r01)*(sj4)*(x9144)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x9130)*(x9145)))+(((IkReal(-1.00000000000000))*(r11)*(x9139)*(x9145)))+(((IkReal(-1.00000000000000))*(r10)*(x9143)*(x9155)))+(((IkReal(-1.00000000000000))*(r00)*(x9130)*(x9155)))+(((IkReal(-1.00000000000000))*(r02)*(x9130)*(x9138)))+(((IkReal(-1.00000000000000))*(x9131)*(x9139)*(x9153)))+(((r11)*(sj4)*(x9132)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9130)*(x9131)))+(((IkReal(-1.00000000000000))*(x9138)*(x9156)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r10)*(x9132)*(x9137)))+(((IkReal(-1.00000000000000))*(px)*(x9130)))+(((r00)*(x9137)*(x9144)))+(((x9139)*(x9146)))+(((r01)*(x9136)*(x9137)))+(((IkReal(-1.00000000000000))*(r10)*(x9132)*(x9134)))+(((IkReal(-1.00000000000000))*(r00)*(x9134)*(x9144)))+(((sj0)*(x9137)*(x9152)))+(((x9140)*(x9147)))+(((IkReal(-1.00000000000000))*(sj0)*(x9134)*(x9152)))+(((IkReal(-1.00000000000000))*(py)*(x9143)))+(((cj0)*(r02)*(x9151)))+(((r12)*(sj0)*(x9151)))+(((IkReal(-1.00000000000000))*(r01)*(x9134)*(x9136)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9157=((IkReal(1.00000000000000))*(sj5)); +IkReal x9158=((cj6)*(r21)); +IkReal x9159=((r20)*(sj6)); +IkReal x9160=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x9158)*(x9160)))+(((IkReal(-1.00000000000000))*(x9159)*(x9160)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9157)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x9157)*(x9159)))+(((IkReal(-1.00000000000000))*(x9157)*(x9158)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x9158)*(x9160)))+(((IkReal(-1.00000000000000))*(x9159)*(x9160)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9157)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x9157)*(x9159)))+(((IkReal(-1.00000000000000))*(x9157)*(x9158)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x9158)*(x9160)))+(((IkReal(-1.00000000000000))*(x9159)*(x9160)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9157)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x9157)*(x9159)))+(((IkReal(-1.00000000000000))*(x9157)*(x9158)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9161=IKsin(j3); +IkReal x9162=IKcos(j3); +IkReal x9163=((sj0)*(sj5)); +IkReal x9164=((r00)*(sj6)); +IkReal x9165=((cj6)*(r01)); +IkReal x9166=((cj5)*(sj0)); +IkReal x9167=((cj0)*(cj5)); +IkReal x9168=((cj6)*(sj4)); +IkReal x9169=((sj4)*(sj6)); +IkReal x9170=((cj0)*(r11)); +IkReal x9171=((cj4)*(cj6)); +IkReal x9172=((cj4)*(sj6)); +IkReal x9173=((IkReal(1.00000000000000))*(cj0)); +IkReal x9174=((cj4)*(sj5)); +IkReal x9175=((sj5)*(sj6)); +IkReal x9176=((cj6)*(sj5)); +evalcond[0]=((((r20)*(x9175)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r21)*(x9176)))+(x9162)); +evalcond[1]=((((cj5)*(r21)*(x9171)))+(((r22)*(x9174)))+(((r20)*(x9168)))+(x9161)+(((cj5)*(r20)*(x9172)))+(((IkReal(-1.00000000000000))*(r21)*(x9169)))); +evalcond[2]=((((x9163)*(x9164)))+(((x9163)*(x9165)))+(((IkReal(-1.00000000000000))*(r10)*(x9173)*(x9175)))+(((r12)*(x9167)))+(((IkReal(-1.00000000000000))*(x9161)))+(((IkReal(-1.00000000000000))*(r02)*(x9166)))+(((IkReal(-1.00000000000000))*(x9170)*(x9176)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(sj0)*(x9169)))+(((IkReal(-1.00000000000000))*(r11)*(x9167)*(x9171)))+(((IkReal(-1.00000000000000))*(r10)*(x9168)*(x9173)))+(((x9169)*(x9170)))+(((cj4)*(x9164)*(x9166)))+(((cj4)*(r02)*(x9163)))+(((r00)*(sj0)*(x9168)))+(((IkReal(-1.00000000000000))*(r12)*(x9173)*(x9174)))+(((IkReal(-1.00000000000000))*(r10)*(x9167)*(x9172)))+(((cj4)*(x9165)*(x9166)))+(x9162)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9177=((IkReal(1.00000000000000))*(cj0)); +IkReal x9178=((cj4)*(sj6)); +IkReal x9179=((sj0)*(sj4)); +IkReal x9180=((cj5)*(sj6)); +IkReal x9181=((sj4)*(sj5)); +IkReal x9182=((r12)*(sj5)); +IkReal x9183=((IkReal(0.374290000000000))*(cj5)); +IkReal x9184=((r02)*(sj0)); +IkReal x9185=((r20)*(sj4)); +IkReal x9186=((IkReal(1.00000000000000))*(sj0)); +IkReal x9187=((IkReal(1.00000000000000))*(cj5)); +IkReal x9188=((cj0)*(r10)); +IkReal x9189=((cj4)*(cj6)); +IkReal x9190=((r00)*(sj0)); +IkReal x9191=((cj6)*(r21)); +IkReal x9192=((IkReal(0.374290000000000))*(sj5)); +IkReal x9193=((cj0)*(r00)); +IkReal x9194=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9195=((cj0)*(r02)); +IkReal x9196=((cj5)*(sj4)); +IkReal x9197=((cj6)*(r01)); +IkReal x9198=((cj6)*(r11)); +IkReal x9199=((r01)*(sj0)); +IkReal x9200=((r10)*(sj0)); +IkReal x9201=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x9202=((sj6)*(x9192)); +IkReal x9203=((cj0)*(cj6)*(x9192)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x9187)))+(((r20)*(sj5)*(sj6)))+(((sj5)*(x9191)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x9181)))+(((r21)*(x9178)))+(((IkReal(-1.00000000000000))*(r20)*(x9189)))+(((x9180)*(x9185)))+(((x9191)*(x9196)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x9183)))+(((IkReal(-0.0100000000000000))*(cj5)*(x9191)))+(((IkReal(-1.00000000000000))*(r22)*(x9194)))+(((IkReal(-0.0100000000000000))*(r20)*(x9180)))+(pz)+(((x9191)*(x9192)))+(((r20)*(x9202)))); +evalcond[4]=((((cj5)*(r21)*(x9189)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x9178)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x9185)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r11)*(x9177)*(x9178)))+(((IkReal(-1.00000000000000))*(r12)*(x9177)*(x9181)))+(((r02)*(sj5)*(x9179)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x9177)*(x9180)))+(((cj5)*(x9179)*(x9197)))+(((x9178)*(x9199)))+(((r00)*(x9179)*(x9180)))+(((x9188)*(x9189)))+(((IkReal(-1.00000000000000))*(x9177)*(x9196)*(x9198)))+(((IkReal(-1.00000000000000))*(r00)*(x9186)*(x9189)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x9179)*(x9182)))+(((IkReal(-1.00000000000000))*(r01)*(x9177)*(x9178)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x9177)*(x9180)))+(((IkReal(-1.00000000000000))*(r10)*(x9179)*(x9180)))+(((IkReal(-1.00000000000000))*(r02)*(x9177)*(x9181)))+(((IkReal(-1.00000000000000))*(x9177)*(x9196)*(x9197)))+(((IkReal(-1.00000000000000))*(x9179)*(x9187)*(x9198)))+(((x9189)*(x9200)))+(((x9189)*(x9193)))+(((IkReal(-1.00000000000000))*(r11)*(x9178)*(x9186)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(x9182)))+(((cj0)*(r12)*(x9183)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9198)))+(((IkReal(-1.00000000000000))*(x9183)*(x9184)))+(((IkReal(-1.00000000000000))*(x9188)*(x9202)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x9197)))+(((IkReal(-1.00000000000000))*(py)*(x9177)))+(((IkReal(-1.00000000000000))*(cj0)*(x9192)*(x9198)))+(((x9190)*(x9202)))+(((IkReal(0.0100000000000000))*(x9180)*(x9188)))+(((sj0)*(x9192)*(x9197)))+(((IkReal(-0.0100000000000000))*(x9180)*(x9190)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x9184)*(x9194)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(x9193)*(x9202)))+(((IkReal(0.0100000000000000))*(x9180)*(x9193)))+(((r12)*(sj0)*(x9183)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x9198)))+(((IkReal(-1.00000000000000))*(cj0)*(x9192)*(x9197)))+(((x9194)*(x9195)))+(((IkReal(-1.00000000000000))*(sj0)*(x9192)*(x9198)))+(((IkReal(-1.00000000000000))*(px)*(x9177)))+(((IkReal(0.0100000000000000))*(sj0)*(x9182)))+(((IkReal(-1.00000000000000))*(x9200)*(x9202)))+(((IkReal(0.0100000000000000))*(x9180)*(x9200)))+(((x9183)*(x9195)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9197)))+(((IkReal(-1.00000000000000))*(py)*(x9186)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9204=((cj0)*(cj5)); +IkReal x9205=((IkReal(1.00000000000000))*(cj0)); +IkReal x9206=((cj6)*(r11)); +IkReal x9207=((r10)*(sj6)); +IkReal x9208=((cj5)*(sj0)); +IkReal x9209=((r00)*(sj5)*(sj6)); +IkReal x9210=((cj6)*(r01)*(sj5)); +IkReal x9211=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((r12)*(x9204)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9206)))+(((IkReal(-1.00000000000000))*(r02)*(x9208)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9207)))+(((sj0)*(x9209)))+(((sj0)*(x9210))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r02)*(x9204)))+(((IkReal(-1.00000000000000))*(x9205)*(x9209)))+(((IkReal(-1.00000000000000))*(x9207)*(x9211)))+(((IkReal(-1.00000000000000))*(x9205)*(x9210)))+(((r12)*(x9208)))+(((IkReal(-1.00000000000000))*(x9206)*(x9211))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r12)*(x9204)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9206)))+(((IkReal(-1.00000000000000))*(r02)*(x9208)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9207)))+(((sj0)*(x9209)))+(((sj0)*(x9210)))))+IKsqr(((((r02)*(x9204)))+(((IkReal(-1.00000000000000))*(x9205)*(x9209)))+(((IkReal(-1.00000000000000))*(x9207)*(x9211)))+(((IkReal(-1.00000000000000))*(x9205)*(x9210)))+(((r12)*(x9208)))+(((IkReal(-1.00000000000000))*(x9206)*(x9211)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r12)*(x9204)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9206)))+(((IkReal(-1.00000000000000))*(r02)*(x9208)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9207)))+(((sj0)*(x9209)))+(((sj0)*(x9210)))), ((((r02)*(x9204)))+(((IkReal(-1.00000000000000))*(x9205)*(x9209)))+(((IkReal(-1.00000000000000))*(x9207)*(x9211)))+(((IkReal(-1.00000000000000))*(x9205)*(x9210)))+(((r12)*(x9208)))+(((IkReal(-1.00000000000000))*(x9206)*(x9211))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9212=IKcos(j3); +IkReal x9213=((sj0)*(sj5)); +IkReal x9214=((r00)*(sj6)); +IkReal x9215=((cj6)*(sj0)); +IkReal x9216=((IkReal(1.00000000000000))*(cj4)); +IkReal x9217=((r00)*(sj4)); +IkReal x9218=((cj0)*(cj5)); +IkReal x9219=((cj5)*(sj0)); +IkReal x9220=((cj6)*(r11)); +IkReal x9221=((r10)*(sj6)); +IkReal x9222=((cj0)*(sj5)); +IkReal x9223=((r10)*(sj4)); +IkReal x9224=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x9225=((cj4)*(cj5)*(r01)); +IkReal x9226=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x9227=((cj0)*(sj4)*(sj6)); +IkReal x9228=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x9219)))+(((IkReal(-1.00000000000000))*(x9221)*(x9222)))+(((x9213)*(x9214)))+(((IkReal(-1.00000000000000))*(x9220)*(x9222)))+(((cj6)*(r01)*(x9213)))+(((r12)*(x9218)))+(((IkReal(-1.00000000000000))*(x9224)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9222)))+(((IkReal(-1.00000000000000))*(x9213)*(x9221)))+(((IkReal(-1.00000000000000))*(x9213)*(x9220)))+(((r12)*(x9219)))+(((IkReal(-1.00000000000000))*(x9214)*(x9222)))+(((IkReal(-1.00000000000000))*(x9212)))+(((r02)*(x9218)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x9216)*(x9222)))+(x9212)+(((cj4)*(r02)*(x9213)))+(((IkReal(-1.00000000000000))*(x9223)*(x9226)))+(((x9215)*(x9217)))+(((x9215)*(x9225)))+(((IkReal(-1.00000000000000))*(x9216)*(x9218)*(x9221)))+(((r11)*(x9227)))+(((IkReal(-1.00000000000000))*(r01)*(x9228)))+(((cj4)*(x9214)*(x9219)))+(((IkReal(-1.00000000000000))*(x9216)*(x9218)*(x9220)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9216)*(x9219)*(x9221)))+(((r01)*(x9227)))+(((r11)*(x9228)))+(((IkReal(-1.00000000000000))*(r02)*(x9216)*(x9222)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x9215)*(x9216)))+(((IkReal(-1.00000000000000))*(x9217)*(x9226)))+(((IkReal(-1.00000000000000))*(x9214)*(x9216)*(x9218)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9216)*(x9218)))+(((IkReal(-1.00000000000000))*(r12)*(x9213)*(x9216)))+(((IkReal(-1.00000000000000))*(x9224)))+(((IkReal(-1.00000000000000))*(x9215)*(x9223)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9229=((IkReal(1.00000000000000))*(cj0)); +IkReal x9230=((cj4)*(sj6)); +IkReal x9231=((sj0)*(sj4)); +IkReal x9232=((cj5)*(sj6)); +IkReal x9233=((sj4)*(sj5)); +IkReal x9234=((r12)*(sj5)); +IkReal x9235=((IkReal(0.374290000000000))*(cj5)); +IkReal x9236=((r02)*(sj0)); +IkReal x9237=((r20)*(sj4)); +IkReal x9238=((IkReal(1.00000000000000))*(sj0)); +IkReal x9239=((IkReal(1.00000000000000))*(cj5)); +IkReal x9240=((cj0)*(r10)); +IkReal x9241=((cj4)*(cj6)); +IkReal x9242=((r00)*(sj0)); +IkReal x9243=((cj6)*(r21)); +IkReal x9244=((IkReal(0.374290000000000))*(sj5)); +IkReal x9245=((cj0)*(r00)); +IkReal x9246=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9247=((cj0)*(r02)); +IkReal x9248=((cj5)*(sj4)); +IkReal x9249=((cj6)*(r01)); +IkReal x9250=((cj6)*(r11)); +IkReal x9251=((r01)*(sj0)); +IkReal x9252=((r10)*(sj0)); +IkReal x9253=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x9254=((sj6)*(x9244)); +IkReal x9255=((cj0)*(cj6)*(x9244)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x9243)))+(((IkReal(-1.00000000000000))*(r22)*(x9239)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((r21)*(x9230)))+(((IkReal(-1.00000000000000))*(r20)*(x9241)))+(((x9232)*(x9237)))+(((r22)*(x9233)))+(((x9243)*(x9248)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x9246)))+(((IkReal(-1.00000000000000))*(r22)*(x9235)))+(((IkReal(-0.0100000000000000))*(cj5)*(x9243)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x9232)))+(((r20)*(x9254)))+(((x9243)*(x9244)))); +evalcond[4]=((((cj6)*(x9237)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x9230)))+(((cj5)*(r21)*(x9241)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x9229)*(x9233)))+(((x9230)*(x9251)))+(((cj5)*(x9231)*(x9249)))+(((x9240)*(x9241)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x9229)*(x9232)))+(((IkReal(-1.00000000000000))*(x9229)*(x9248)*(x9250)))+(((r02)*(sj5)*(x9231)))+(((IkReal(-1.00000000000000))*(r00)*(x9238)*(x9241)))+(((r00)*(x9231)*(x9232)))+(((IkReal(-1.00000000000000))*(r11)*(x9229)*(x9230)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r00)*(sj4)*(x9229)*(x9232)))+(((IkReal(-1.00000000000000))*(x9231)*(x9234)))+(((IkReal(-1.00000000000000))*(r10)*(x9231)*(x9232)))+(((x9241)*(x9252)))+(((x9241)*(x9245)))+(((IkReal(-1.00000000000000))*(x9231)*(x9239)*(x9250)))+(((IkReal(-1.00000000000000))*(r01)*(x9229)*(x9230)))+(((IkReal(-1.00000000000000))*(r02)*(x9229)*(x9233)))+(((IkReal(-1.00000000000000))*(r11)*(x9230)*(x9238)))+(((IkReal(-1.00000000000000))*(x9229)*(x9248)*(x9249)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(x9234)))+(((sj0)*(x9244)*(x9249)))+(((cj0)*(r12)*(x9235)))+(((IkReal(-1.00000000000000))*(x9236)*(x9246)))+(((IkReal(-1.00000000000000))*(x9235)*(x9236)))+(((IkReal(0.0100000000000000))*(x9232)*(x9240)))+(((x9242)*(x9254)))+(((IkReal(-0.0100000000000000))*(x9232)*(x9242)))+(((IkReal(-1.00000000000000))*(py)*(x9229)))+(((IkReal(-1.00000000000000))*(cj0)*(x9244)*(x9250)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9250)))+(((IkReal(-1.00000000000000))*(x9240)*(x9254)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x9249)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x9244)*(x9249)))+(((IkReal(0.0100000000000000))*(x9232)*(x9245)))+(((x9235)*(x9247)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x9250)))+(((IkReal(-1.00000000000000))*(px)*(x9229)))+(((IkReal(-1.00000000000000))*(py)*(x9238)))+(((IkReal(-1.00000000000000))*(x9245)*(x9254)))+(((IkReal(-1.00000000000000))*(sj0)*(x9244)*(x9250)))+(((x9246)*(x9247)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9249)))+(((r12)*(sj0)*(x9235)))+(((IkReal(0.0100000000000000))*(x9232)*(x9252)))+(((IkReal(-1.00000000000000))*(x9252)*(x9254)))+(((IkReal(0.0100000000000000))*(sj0)*(x9234)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9256=((sj0)*(sj5)); +IkReal x9257=((r00)*(sj6)); +IkReal x9258=((IkReal(1.00000000000000))*(cj5)); +IkReal x9259=((cj6)*(r11)); +IkReal x9260=((cj6)*(r01)); +IkReal x9261=((r10)*(sj6)); +IkReal x9262=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x9259)*(x9262)))+(((IkReal(-1.00000000000000))*(x9261)*(x9262)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9258)))+(((x9256)*(x9257)))+(((x9256)*(x9260))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9258)))+(((x9256)*(x9259)))+(((x9257)*(x9262)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9258)))+(((x9256)*(x9261)))+(((x9260)*(x9262))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x9259)*(x9262)))+(((IkReal(-1.00000000000000))*(x9261)*(x9262)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9258)))+(((x9256)*(x9257)))+(((x9256)*(x9260)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9258)))+(((x9256)*(x9259)))+(((x9257)*(x9262)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9258)))+(((x9256)*(x9261)))+(((x9260)*(x9262)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x9259)*(x9262)))+(((IkReal(-1.00000000000000))*(x9261)*(x9262)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9258)))+(((x9256)*(x9257)))+(((x9256)*(x9260)))), ((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9258)))+(((x9256)*(x9259)))+(((x9257)*(x9262)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9258)))+(((x9256)*(x9261)))+(((x9260)*(x9262))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9263=IKcos(j3); +IkReal x9264=IKsin(j3); +IkReal x9265=((sj0)*(sj5)); +IkReal x9266=((r00)*(sj6)); +IkReal x9267=((cj6)*(sj0)); +IkReal x9268=((IkReal(1.00000000000000))*(cj4)); +IkReal x9269=((r00)*(sj4)); +IkReal x9270=((cj0)*(cj5)); +IkReal x9271=((cj5)*(sj0)); +IkReal x9272=((cj6)*(r11)); +IkReal x9273=((r10)*(sj6)); +IkReal x9274=((cj0)*(sj5)); +IkReal x9275=((r10)*(sj4)); +IkReal x9276=((cj4)*(cj5)*(r01)); +IkReal x9277=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x9278=((cj0)*(sj4)*(sj6)); +IkReal x9279=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x9273)*(x9274)))+(((cj6)*(r01)*(x9265)))+(((IkReal(-1.00000000000000))*(r02)*(x9271)))+(((IkReal(-1.00000000000000))*(x9264)))+(((IkReal(-1.00000000000000))*(x9272)*(x9274)))+(((x9265)*(x9266)))+(((r12)*(x9270)))); +evalcond[1]=((((r02)*(x9270)))+(((IkReal(-1.00000000000000))*(x9265)*(x9272)))+(x9263)+(((r12)*(x9271)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9274)))+(((IkReal(-1.00000000000000))*(x9266)*(x9274)))+(((IkReal(-1.00000000000000))*(x9265)*(x9273)))); +evalcond[2]=((((cj4)*(r02)*(x9265)))+(((x9267)*(x9269)))+(x9263)+(((r11)*(x9278)))+(((IkReal(-1.00000000000000))*(x9268)*(x9270)*(x9273)))+(((x9267)*(x9276)))+(((IkReal(-1.00000000000000))*(x9268)*(x9270)*(x9272)))+(((IkReal(-1.00000000000000))*(x9275)*(x9277)))+(((cj4)*(x9266)*(x9271)))+(((IkReal(-1.00000000000000))*(r12)*(x9268)*(x9274)))+(((IkReal(-1.00000000000000))*(r01)*(x9279)))); +evalcond[3]=((((r11)*(x9279)))+(((IkReal(-1.00000000000000))*(x9267)*(x9275)))+(x9264)+(((IkReal(-1.00000000000000))*(x9268)*(x9271)*(x9273)))+(((r01)*(x9278)))+(((IkReal(-1.00000000000000))*(x9266)*(x9268)*(x9270)))+(((IkReal(-1.00000000000000))*(x9269)*(x9277)))+(((IkReal(-1.00000000000000))*(r12)*(x9265)*(x9268)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x9267)*(x9268)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9268)*(x9270)))+(((IkReal(-1.00000000000000))*(r02)*(x9268)*(x9274)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9280=((cj0)*(cj5)); +IkReal x9281=((IkReal(1.00000000000000))*(cj0)); +IkReal x9282=((cj6)*(r11)); +IkReal x9283=((r10)*(sj6)); +IkReal x9284=((cj5)*(sj0)); +IkReal x9285=((r00)*(sj5)*(sj6)); +IkReal x9286=((cj6)*(r01)*(sj5)); +IkReal x9287=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x9286)))+(((r12)*(x9280)))+(((IkReal(-1.00000000000000))*(r02)*(x9284)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9283)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9282)))+(((sj0)*(x9285))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x9280)))+(((IkReal(-1.00000000000000))*(x9283)*(x9287)))+(((r12)*(x9284)))+(((IkReal(-1.00000000000000))*(x9281)*(x9286)))+(((IkReal(-1.00000000000000))*(x9281)*(x9285)))+(((IkReal(-1.00000000000000))*(x9282)*(x9287))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x9286)))+(((r12)*(x9280)))+(((IkReal(-1.00000000000000))*(r02)*(x9284)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9283)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9282)))+(((sj0)*(x9285)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x9280)))+(((IkReal(-1.00000000000000))*(x9283)*(x9287)))+(((r12)*(x9284)))+(((IkReal(-1.00000000000000))*(x9281)*(x9286)))+(((IkReal(-1.00000000000000))*(x9281)*(x9285)))+(((IkReal(-1.00000000000000))*(x9282)*(x9287)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x9286)))+(((r12)*(x9280)))+(((IkReal(-1.00000000000000))*(r02)*(x9284)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9283)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9282)))+(((sj0)*(x9285)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x9280)))+(((IkReal(-1.00000000000000))*(x9283)*(x9287)))+(((r12)*(x9284)))+(((IkReal(-1.00000000000000))*(x9281)*(x9286)))+(((IkReal(-1.00000000000000))*(x9281)*(x9285)))+(((IkReal(-1.00000000000000))*(x9282)*(x9287))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9288=IKsin(j3); +IkReal x9289=IKcos(j3); +IkReal x9290=((sj0)*(sj5)); +IkReal x9291=((r00)*(sj6)); +IkReal x9292=((cj6)*(r01)); +IkReal x9293=((cj4)*(cj5)); +IkReal x9294=((IkReal(1.00000000000000))*(cj0)); +IkReal x9295=((cj5)*(r12)); +IkReal x9296=((IkReal(1.00000000000000))*(sj0)); +IkReal x9297=((cj6)*(r11)); +IkReal x9298=((cj5)*(r02)); +IkReal x9299=((IkReal(1.00000000000000))*(cj1)); +IkReal x9300=((cj6)*(sj4)); +IkReal x9301=((cj6)*(r21)); +IkReal x9302=((r20)*(sj6)); +IkReal x9303=((r10)*(sj6)); +IkReal x9304=((sj4)*(sj6)); +IkReal x9305=((cj4)*(r02)); +IkReal x9306=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9307=((IkReal(1.00000000000000))*(x9288)); +IkReal x9308=((cj0)*(x9304)); +evalcond[0]=((((sj5)*(x9301)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x9289)))+(((sj5)*(x9302)))); +evalcond[1]=((((x9293)*(x9301)))+(((IkReal(-1.00000000000000))*(sj1)*(x9307)))+(((r20)*(x9300)))+(((x9293)*(x9302)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x9304)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x9294)*(x9297)))+(((IkReal(-1.00000000000000))*(x9296)*(x9298)))+(((cj0)*(x9295)))+(((x9290)*(x9291)))+(((IkReal(-1.00000000000000))*(sj5)*(x9294)*(x9303)))+(((x9290)*(x9292)))+(((IkReal(-1.00000000000000))*(x9307)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9289)*(x9299)))+(((cj0)*(x9298)))+(((sj0)*(x9295)))+(((IkReal(-1.00000000000000))*(sj5)*(x9292)*(x9294)))+(((IkReal(-1.00000000000000))*(x9290)*(x9303)))+(((IkReal(-1.00000000000000))*(x9290)*(x9297)))+(((IkReal(-1.00000000000000))*(sj5)*(x9291)*(x9294)))); +evalcond[4]=((((sj0)*(x9291)*(x9293)))+(((IkReal(-1.00000000000000))*(x9293)*(x9294)*(x9297)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9294)))+(((r00)*(sj0)*(x9300)))+(((sj0)*(x9292)*(x9293)))+(((IkReal(-1.00000000000000))*(r10)*(x9294)*(x9300)))+(((x9290)*(x9305)))+(((r11)*(x9308)))+(((IkReal(-1.00000000000000))*(x9293)*(x9294)*(x9303)))+(x9289)+(((IkReal(-1.00000000000000))*(r01)*(x9296)*(x9304)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9291)*(x9293)*(x9294)))+(((r11)*(sj0)*(x9304)))+(((IkReal(-1.00000000000000))*(x9288)*(x9299)))+(((IkReal(-1.00000000000000))*(x9293)*(x9296)*(x9303)))+(((IkReal(-1.00000000000000))*(x9293)*(x9296)*(x9297)))+(((IkReal(-1.00000000000000))*(x9290)*(x9306)))+(((IkReal(-1.00000000000000))*(sj5)*(x9294)*(x9305)))+(((IkReal(-1.00000000000000))*(x9292)*(x9293)*(x9294)))+(((IkReal(-1.00000000000000))*(r00)*(x9294)*(x9300)))+(((IkReal(-1.00000000000000))*(r10)*(x9296)*(x9300)))+(((r01)*(x9308)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9309=((sj5)*(sj6)); +IkReal x9310=((cj6)*(sj5)); +IkReal x9311=((IkReal(1.00000000000000))*(cj0)); +IkReal x9312=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r01)*(sj0)*(x9310)))+(((IkReal(-1.00000000000000))*(r11)*(x9310)*(x9311)))+(((r00)*(sj0)*(x9309)))+(((IkReal(-1.00000000000000))*(r10)*(x9309)*(x9311)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9312))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x9310)))+(((IkReal(-1.00000000000000))*(r22)*(x9312)))+(((r20)*(x9309))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r01)*(sj0)*(x9310)))+(((IkReal(-1.00000000000000))*(r11)*(x9310)*(x9311)))+(((r00)*(sj0)*(x9309)))+(((IkReal(-1.00000000000000))*(r10)*(x9309)*(x9311)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9312)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x9310)))+(((IkReal(-1.00000000000000))*(r22)*(x9312)))+(((r20)*(x9309)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r01)*(sj0)*(x9310)))+(((IkReal(-1.00000000000000))*(r11)*(x9310)*(x9311)))+(((r00)*(sj0)*(x9309)))+(((IkReal(-1.00000000000000))*(r10)*(x9309)*(x9311)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9312)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x9310)))+(((IkReal(-1.00000000000000))*(r22)*(x9312)))+(((r20)*(x9309))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9313=IKsin(j3); +IkReal x9314=IKcos(j3); +IkReal x9315=((sj0)*(sj5)); +IkReal x9316=((r00)*(sj6)); +IkReal x9317=((cj6)*(r01)); +IkReal x9318=((cj4)*(cj5)); +IkReal x9319=((IkReal(1.00000000000000))*(cj0)); +IkReal x9320=((cj5)*(r12)); +IkReal x9321=((IkReal(1.00000000000000))*(sj0)); +IkReal x9322=((cj6)*(r11)); +IkReal x9323=((cj5)*(r02)); +IkReal x9324=((IkReal(1.00000000000000))*(cj1)); +IkReal x9325=((cj6)*(sj4)); +IkReal x9326=((cj6)*(r21)); +IkReal x9327=((r20)*(sj6)); +IkReal x9328=((r10)*(sj6)); +IkReal x9329=((sj4)*(sj6)); +IkReal x9330=((cj4)*(r02)); +IkReal x9331=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9332=((IkReal(1.00000000000000))*(x9313)); +IkReal x9333=((cj0)*(x9329)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x9314)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9326)))+(((sj5)*(x9327)))); +evalcond[1]=((((x9318)*(x9327)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x9329)))+(((r20)*(x9325)))+(((x9318)*(x9326)))+(((IkReal(-1.00000000000000))*(sj1)*(x9332)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9332)))+(((x9315)*(x9317)))+(((IkReal(-1.00000000000000))*(sj5)*(x9319)*(x9322)))+(((x9315)*(x9316)))+(((IkReal(-1.00000000000000))*(sj5)*(x9319)*(x9328)))+(((IkReal(-1.00000000000000))*(x9321)*(x9323)))+(((cj0)*(x9320)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9314)*(x9324)))+(((IkReal(-1.00000000000000))*(sj5)*(x9316)*(x9319)))+(((IkReal(-1.00000000000000))*(x9315)*(x9322)))+(((IkReal(-1.00000000000000))*(x9315)*(x9328)))+(((sj0)*(x9320)))+(((IkReal(-1.00000000000000))*(sj5)*(x9317)*(x9319)))+(((cj0)*(x9323)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x9321)*(x9329)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9319)))+(((r11)*(x9333)))+(((sj0)*(x9316)*(x9318)))+(((IkReal(-1.00000000000000))*(x9318)*(x9319)*(x9322)))+(((IkReal(-1.00000000000000))*(x9318)*(x9319)*(x9328)))+(((IkReal(-1.00000000000000))*(r10)*(x9319)*(x9325)))+(((sj0)*(x9317)*(x9318)))+(((r00)*(sj0)*(x9325)))+(((x9315)*(x9330)))+(x9314)); +evalcond[5]=((((r11)*(sj0)*(x9329)))+(((IkReal(-1.00000000000000))*(x9318)*(x9321)*(x9322)))+(((IkReal(-1.00000000000000))*(r10)*(x9321)*(x9325)))+(((IkReal(-1.00000000000000))*(x9317)*(x9318)*(x9319)))+(((IkReal(-1.00000000000000))*(sj5)*(x9319)*(x9330)))+(((IkReal(-1.00000000000000))*(x9315)*(x9331)))+(((IkReal(-1.00000000000000))*(r00)*(x9319)*(x9325)))+(((IkReal(-1.00000000000000))*(x9313)*(x9324)))+(((IkReal(-1.00000000000000))*(x9316)*(x9318)*(x9319)))+(((r01)*(x9333)))+(((IkReal(-1.00000000000000))*(x9318)*(x9321)*(x9328)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9334=((r20)*(sj6)); +IkReal x9335=((cj4)*(cj5)); +IkReal x9336=((cj6)*(r21)); +if( IKabs(((gconst17)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x9334)*(x9335)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x9335)*(x9336))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst17)*(((((sj5)*(x9336)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9334))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst17)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x9334)*(x9335)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x9335)*(x9336)))))), ((gconst17)*(((((sj5)*(x9336)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9334))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9337=IKsin(j3); +IkReal x9338=IKcos(j3); +IkReal x9339=((sj0)*(sj5)); +IkReal x9340=((r00)*(sj6)); +IkReal x9341=((cj6)*(r01)); +IkReal x9342=((cj4)*(cj5)); +IkReal x9343=((IkReal(1.00000000000000))*(cj0)); +IkReal x9344=((cj5)*(r12)); +IkReal x9345=((IkReal(1.00000000000000))*(sj0)); +IkReal x9346=((cj6)*(r11)); +IkReal x9347=((cj5)*(r02)); +IkReal x9348=((IkReal(1.00000000000000))*(cj1)); +IkReal x9349=((cj6)*(sj4)); +IkReal x9350=((cj6)*(r21)); +IkReal x9351=((r20)*(sj6)); +IkReal x9352=((r10)*(sj6)); +IkReal x9353=((sj4)*(sj6)); +IkReal x9354=((cj4)*(r02)); +IkReal x9355=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9356=((IkReal(1.00000000000000))*(x9337)); +IkReal x9357=((cj0)*(x9353)); +evalcond[0]=((((sj5)*(x9350)))+(((sj5)*(x9351)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x9338)))); +evalcond[1]=((((x9342)*(x9350)))+(((r20)*(x9349)))+(((cj4)*(r22)*(sj5)))+(((x9342)*(x9351)))+(((IkReal(-1.00000000000000))*(sj1)*(x9356)))+(((IkReal(-1.00000000000000))*(r21)*(x9353)))); +evalcond[2]=((((x9339)*(x9341)))+(((IkReal(-1.00000000000000))*(x9345)*(x9347)))+(((IkReal(-1.00000000000000))*(sj5)*(x9343)*(x9352)))+(((IkReal(-1.00000000000000))*(sj5)*(x9343)*(x9346)))+(((IkReal(-1.00000000000000))*(x9356)))+(((cj0)*(x9344)))+(((x9339)*(x9340)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9339)*(x9352)))+(((sj0)*(x9344)))+(((IkReal(-1.00000000000000))*(x9339)*(x9346)))+(((IkReal(-1.00000000000000))*(sj5)*(x9340)*(x9343)))+(((cj0)*(x9347)))+(((IkReal(-1.00000000000000))*(sj5)*(x9341)*(x9343)))+(((IkReal(-1.00000000000000))*(x9338)*(x9348)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9343)))+(x9338)+(((IkReal(-1.00000000000000))*(x9342)*(x9343)*(x9346)))+(((sj0)*(x9341)*(x9342)))+(((IkReal(-1.00000000000000))*(r01)*(x9345)*(x9353)))+(((r00)*(sj0)*(x9349)))+(((IkReal(-1.00000000000000))*(x9342)*(x9343)*(x9352)))+(((sj0)*(x9340)*(x9342)))+(((x9339)*(x9354)))+(((r11)*(x9357)))+(((IkReal(-1.00000000000000))*(r10)*(x9343)*(x9349)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9342)*(x9345)*(x9352)))+(((IkReal(-1.00000000000000))*(x9341)*(x9342)*(x9343)))+(((IkReal(-1.00000000000000))*(r00)*(x9343)*(x9349)))+(((IkReal(-1.00000000000000))*(x9342)*(x9345)*(x9346)))+(((IkReal(-1.00000000000000))*(x9337)*(x9348)))+(((r11)*(sj0)*(x9353)))+(((r01)*(x9357)))+(((IkReal(-1.00000000000000))*(r10)*(x9345)*(x9349)))+(((IkReal(-1.00000000000000))*(x9339)*(x9355)))+(((IkReal(-1.00000000000000))*(x9340)*(x9342)*(x9343)))+(((IkReal(-1.00000000000000))*(sj5)*(x9343)*(x9354)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x9358=((cj1)*(sj6)); +IkReal x9359=((r01)*(sj0)); +IkReal x9360=((cj0)*(r11)); +IkReal x9361=((cj1)*(cj6)); +IkReal x9362=((cj0)*(r10)); +IkReal x9363=((IkReal(1.00000000000000))*(sj0)); +IkReal x9364=((cj1)*(sj5)); +if( IKabs(((gconst13)*(((((IkReal(-1.00000000000000))*(r00)*(x9361)*(x9363)))+(((x9361)*(x9362)))+(((x9358)*(x9359)))+(((IkReal(-1.00000000000000))*(x9358)*(x9360))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst13)*(((((IkReal(-1.00000000000000))*(cj5)*(x9359)*(x9361)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9358)*(x9363)))+(((cj5)*(x9358)*(x9362)))+(((cj5)*(x9360)*(x9361)))+(((cj0)*(r12)*(x9364)))+(((IkReal(-1.00000000000000))*(r02)*(x9363)*(x9364))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst13)*(((((IkReal(-1.00000000000000))*(r00)*(x9361)*(x9363)))+(((x9361)*(x9362)))+(((x9358)*(x9359)))+(((IkReal(-1.00000000000000))*(x9358)*(x9360)))))), ((gconst13)*(((((IkReal(-1.00000000000000))*(cj5)*(x9359)*(x9361)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9358)*(x9363)))+(((cj5)*(x9358)*(x9362)))+(((cj5)*(x9360)*(x9361)))+(((cj0)*(r12)*(x9364)))+(((IkReal(-1.00000000000000))*(r02)*(x9363)*(x9364))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x9365=IKsin(j4); +IkReal x9366=IKcos(j4); +IkReal x9367=((r00)*(sj6)); +IkReal x9368=((cj6)*(r01)); +IkReal x9369=((IkReal(1.00000000000000))*(cj0)); +IkReal x9370=((IkReal(1.00000000000000))*(sj0)); +IkReal x9371=((r10)*(sj6)); +IkReal x9372=((sj5)*(x9365)); +IkReal x9373=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x9374=((cj5)*(x9365)); +IkReal x9375=((cj6)*(x9366)); +IkReal x9376=((sj0)*(x9374)); +IkReal x9377=((r01)*(sj6)*(x9366)); +IkReal x9378=((r11)*(sj6)*(x9366)); +evalcond[0]=((((r20)*(sj6)*(x9374)))+(((IkReal(-1.00000000000000))*(r20)*(x9375)))+(((IkReal(-1.00000000000000))*(cj1)))+(((cj6)*(r21)*(x9374)))+(((r21)*(sj6)*(x9366)))+(((r22)*(x9372)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9369)*(x9371)*(x9374)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x9369)*(x9374)))+(((IkReal(-1.00000000000000))*(x9369)*(x9378)))+(((x9367)*(x9376)))+(((cj0)*(r10)*(x9375)))+(((IkReal(-1.00000000000000))*(r00)*(x9370)*(x9375)))+(((r02)*(sj0)*(x9372)))+(((sj0)*(x9377)))+(((IkReal(-1.00000000000000))*(r12)*(x9369)*(x9372)))+(((x9368)*(x9376)))); +evalcond[2]=((((r10)*(sj0)*(x9375)))+(sj1)+(((IkReal(-1.00000000000000))*(x9369)*(x9377)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x9370)*(x9374)))+(((IkReal(-1.00000000000000))*(x9370)*(x9371)*(x9374)))+(((IkReal(-1.00000000000000))*(r12)*(x9370)*(x9372)))+(((IkReal(-1.00000000000000))*(r02)*(x9369)*(x9372)))+(((IkReal(-1.00000000000000))*(x9367)*(x9369)*(x9374)))+(((cj0)*(r00)*(x9375)))+(((IkReal(-1.00000000000000))*(x9368)*(x9369)*(x9374)))+(((IkReal(-1.00000000000000))*(x9370)*(x9378)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst17; +gconst17=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x9379=((IkReal(1.00000000000000))*(cj0)); +IkReal x9380=((cj4)*(sj6)); +IkReal x9381=((sj0)*(sj6)); +IkReal x9382=((cj5)*(sj4)); +IkReal x9383=((IkReal(0.374290000000000))*(sj5)); +IkReal x9384=((sj4)*(sj5)); +IkReal x9385=((cj0)*(cj6)); +IkReal x9386=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9387=((cj4)*(sj5)); +IkReal x9388=((cj5)*(sj0)); +IkReal x9389=((IkReal(0.374290000000000))*(r02)); +IkReal x9390=((r20)*(sj6)); +IkReal x9391=((cj6)*(r21)); +IkReal x9392=((IkReal(1.00000000000000))*(sj0)); +IkReal x9393=((cj0)*(sj6)); +IkReal x9394=((cj4)*(cj6)); +IkReal x9395=((IkReal(0.374290000000000))*(r12)); +IkReal x9396=((cj0)*(cj5)); +IkReal x9397=((cj6)*(sj5)); +IkReal x9398=((cj6)*(r01)); +IkReal x9399=((r00)*(sj6)); +IkReal x9400=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9401=((cj6)*(r11)); +IkReal x9402=((IkReal(1.00000000000000))*(r10)); +IkReal x9403=((r02)*(sj0)); +IkReal x9404=((cj6)*(sj4)); +IkReal x9405=((r12)*(x9392)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x9394)))+(((x9382)*(x9390)))+(((r22)*(x9384)))+(((x9382)*(x9391)))+(((r21)*(x9380)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x9383)*(x9391)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x9400)))+(((IkReal(-1.00000000000000))*(x9386)*(x9391)))+(pz)+(((x9383)*(x9390)))+(((IkReal(-1.00000000000000))*(x9386)*(x9390)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x9392)*(x9397)))+(((IkReal(-1.00000000000000))*(sj5)*(x9381)*(x9402)))+(((IkReal(-1.00000000000000))*(sj5)*(x9379)*(x9399)))+(((r12)*(x9388)))+(((IkReal(-1.00000000000000))*(r01)*(x9379)*(x9397)))+(((r02)*(x9396)))); +evalcond[4]=((((r01)*(sj0)*(x9380)))+(((x9384)*(x9403)))+(((cj4)*(r10)*(x9385)))+(((r00)*(x9381)*(x9382)))+(((IkReal(-1.00000000000000))*(x9379)*(x9382)*(x9401)))+(((sj0)*(x9382)*(x9398)))+(((IkReal(-1.00000000000000))*(r00)*(x9392)*(x9394)))+(((IkReal(-1.00000000000000))*(r11)*(x9379)*(x9380)))+(((IkReal(-1.00000000000000))*(r12)*(x9379)*(x9384)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x9379)*(x9382)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x9379)*(x9382)*(x9399)))+(((IkReal(-1.00000000000000))*(x9381)*(x9382)*(x9402)))+(((IkReal(-1.00000000000000))*(r11)*(x9380)*(x9392)))+(((r10)*(sj0)*(x9394)))+(((IkReal(-1.00000000000000))*(r02)*(x9379)*(x9384)))+(((cj4)*(r00)*(x9385)))+(((IkReal(-1.00000000000000))*(x9382)*(x9392)*(x9401)))+(((IkReal(-1.00000000000000))*(x9384)*(x9405)))+(((IkReal(-1.00000000000000))*(r01)*(x9379)*(x9380)))+(((IkReal(-1.00000000000000))*(x9379)*(x9382)*(x9398)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x9386)*(x9398)))+(((IkReal(-1.00000000000000))*(r10)*(x9383)*(x9393)))+(((IkReal(-1.00000000000000))*(r11)*(x9383)*(x9385)))+(((cj0)*(r12)*(x9400)))+(((sj0)*(x9383)*(x9398)))+(((r10)*(x9386)*(x9393)))+(((r00)*(x9381)*(x9383)))+(((IkReal(-1.00000000000000))*(x9400)*(x9403)))+(((IkReal(-1.00000000000000))*(py)*(x9379)))+(((IkReal(-1.00000000000000))*(r00)*(x9381)*(x9386)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x9388)*(x9389)))+(((x9395)*(x9396)))+(((r11)*(x9385)*(x9386)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x9379)*(x9404)))+(((IkReal(-1.00000000000000))*(r10)*(x9392)*(x9404)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x9379)*(x9394)))+(((IkReal(-1.00000000000000))*(x9387)*(x9405)))+(((IkReal(-1.00000000000000))*(r02)*(x9379)*(x9387)))+(((r01)*(sj4)*(x9393)))+(((IkReal(-1.00000000000000))*(r11)*(x9388)*(x9394)))+(((IkReal(-1.00000000000000))*(x9380)*(x9388)*(x9402)))+(((r11)*(sj4)*(x9381)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9379)*(x9380)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((x9389)*(x9396)))+(((IkReal(-1.00000000000000))*(r00)*(x9383)*(x9393)))+(((r12)*(sj0)*(x9400)))+(((IkReal(-1.00000000000000))*(r10)*(x9381)*(x9383)))+(((r10)*(x9381)*(x9386)))+(((IkReal(-1.00000000000000))*(r01)*(x9383)*(x9385)))+(((IkReal(-1.00000000000000))*(sj0)*(x9383)*(x9401)))+(((r00)*(x9386)*(x9393)))+(((sj0)*(x9386)*(x9401)))+(((r01)*(x9385)*(x9386)))+(((IkReal(-1.00000000000000))*(px)*(x9379)))+(((x9388)*(x9395)))+(((cj0)*(r02)*(x9400)))+(((IkReal(-1.00000000000000))*(py)*(x9392)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9406=((r20)*(sj6)); +IkReal x9407=((cj4)*(cj5)); +IkReal x9408=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x9406)*(x9407)))+(((cj4)*(r22)*(sj5)))+(((x9407)*(x9408))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9406)))+(((sj5)*(x9408))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x9406)*(x9407)))+(((cj4)*(r22)*(sj5)))+(((x9407)*(x9408)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9406)))+(((sj5)*(x9408)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x9406)*(x9407)))+(((cj4)*(r22)*(sj5)))+(((x9407)*(x9408)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9406)))+(((sj5)*(x9408))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9409=IKcos(j3); +IkReal x9410=((sj0)*(sj5)); +IkReal x9411=((r00)*(sj6)); +IkReal x9412=((cj6)*(r01)); +IkReal x9413=((cj5)*(sj0)); +IkReal x9414=((cj0)*(cj5)); +IkReal x9415=((cj6)*(sj4)); +IkReal x9416=((sj4)*(sj6)); +IkReal x9417=((cj0)*(r11)); +IkReal x9418=((cj4)*(cj6)); +IkReal x9419=((cj4)*(sj6)); +IkReal x9420=((IkReal(1.00000000000000))*(cj0)); +IkReal x9421=((cj4)*(sj5)); +IkReal x9422=((sj5)*(sj6)); +IkReal x9423=((cj6)*(sj5)); +IkReal x9424=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r20)*(x9422)))+(((r21)*(x9423)))+(((IkReal(-1.00000000000000))*(x9409)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((cj5)*(r20)*(x9419)))+(((r22)*(x9421)))+(((IkReal(-1.00000000000000))*(r21)*(x9416)))+(((IkReal(-1.00000000000000))*(x9424)))+(((cj5)*(r21)*(x9418)))+(((r20)*(x9415)))); +evalcond[2]=((((r12)*(x9414)))+(((x9410)*(x9411)))+(((IkReal(-1.00000000000000))*(x9417)*(x9423)))+(((IkReal(-1.00000000000000))*(r10)*(x9420)*(x9422)))+(((IkReal(-1.00000000000000))*(x9424)))+(((x9410)*(x9412)))+(((IkReal(-1.00000000000000))*(r02)*(x9413)))); +evalcond[3]=((x9409)+(((cj4)*(x9412)*(x9413)))+(((IkReal(-1.00000000000000))*(r11)*(x9414)*(x9418)))+(((cj4)*(r02)*(x9410)))+(((x9416)*(x9417)))+(((IkReal(-1.00000000000000))*(r10)*(x9415)*(x9420)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x9416)))+(((cj4)*(x9411)*(x9413)))+(((r00)*(sj0)*(x9415)))+(((IkReal(-1.00000000000000))*(r12)*(x9420)*(x9421)))+(((IkReal(-1.00000000000000))*(r10)*(x9414)*(x9419)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9425=((IkReal(1.00000000000000))*(cj0)); +IkReal x9426=((cj4)*(sj6)); +IkReal x9427=((sj0)*(sj6)); +IkReal x9428=((cj5)*(sj4)); +IkReal x9429=((IkReal(0.374290000000000))*(sj5)); +IkReal x9430=((sj4)*(sj5)); +IkReal x9431=((cj0)*(cj6)); +IkReal x9432=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9433=((cj4)*(sj5)); +IkReal x9434=((cj5)*(sj0)); +IkReal x9435=((IkReal(0.374290000000000))*(r02)); +IkReal x9436=((r20)*(sj6)); +IkReal x9437=((cj6)*(r21)); +IkReal x9438=((IkReal(1.00000000000000))*(sj0)); +IkReal x9439=((cj0)*(sj6)); +IkReal x9440=((cj4)*(cj6)); +IkReal x9441=((IkReal(0.374290000000000))*(r12)); +IkReal x9442=((cj0)*(cj5)); +IkReal x9443=((cj6)*(sj5)); +IkReal x9444=((cj6)*(r01)); +IkReal x9445=((r00)*(sj6)); +IkReal x9446=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9447=((cj6)*(r11)); +IkReal x9448=((IkReal(1.00000000000000))*(r10)); +IkReal x9449=((r02)*(sj0)); +IkReal x9450=((cj6)*(sj4)); +IkReal x9451=((r12)*(x9438)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x9428)*(x9437)))+(((IkReal(-1.00000000000000))*(r20)*(x9440)))+(((x9428)*(x9436)))+(((r21)*(x9426)))+(((r22)*(x9430)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((x9429)*(x9437)))+(((IkReal(-1.00000000000000))*(r22)*(x9446)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x9432)*(x9437)))+(pz)+(((IkReal(-1.00000000000000))*(x9432)*(x9436)))+(((x9429)*(x9436)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x9438)*(x9443)))+(((r12)*(x9434)))+(((IkReal(-1.00000000000000))*(r01)*(x9425)*(x9443)))+(((r02)*(x9442)))+(((IkReal(-1.00000000000000))*(sj5)*(x9427)*(x9448)))+(((IkReal(-1.00000000000000))*(sj5)*(x9425)*(x9445)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9425)*(x9428)*(x9447)))+(((r00)*(x9427)*(x9428)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x9425)*(x9428)))+(((x9430)*(x9449)))+(((IkReal(-1.00000000000000))*(r12)*(x9425)*(x9430)))+(((sj0)*(x9428)*(x9444)))+(((IkReal(-1.00000000000000))*(r11)*(x9425)*(x9426)))+(((IkReal(-1.00000000000000))*(r00)*(x9438)*(x9440)))+(((r01)*(sj0)*(x9426)))+(((cj4)*(r10)*(x9431)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((cj4)*(r00)*(x9431)))+(((IkReal(-1.00000000000000))*(r11)*(x9426)*(x9438)))+(((IkReal(-1.00000000000000))*(x9425)*(x9428)*(x9445)))+(((IkReal(-1.00000000000000))*(x9427)*(x9428)*(x9448)))+(((IkReal(-1.00000000000000))*(r01)*(x9425)*(x9426)))+(((r10)*(sj0)*(x9440)))+(((IkReal(-1.00000000000000))*(x9428)*(x9438)*(x9447)))+(((IkReal(-1.00000000000000))*(r02)*(x9425)*(x9430)))+(((IkReal(-1.00000000000000))*(x9430)*(x9451)))+(((IkReal(-1.00000000000000))*(x9425)*(x9428)*(x9444)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((cj0)*(r12)*(x9446)))+(((IkReal(-1.00000000000000))*(r00)*(x9427)*(x9432)))+(((r10)*(x9432)*(x9439)))+(((x9441)*(x9442)))+(((IkReal(-1.00000000000000))*(sj0)*(x9432)*(x9444)))+(((IkReal(-1.00000000000000))*(r10)*(x9429)*(x9439)))+(((IkReal(-1.00000000000000))*(x9434)*(x9435)))+(((r00)*(x9427)*(x9429)))+(((IkReal(-1.00000000000000))*(r11)*(x9429)*(x9431)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x9446)*(x9449)))+(((sj0)*(x9429)*(x9444)))+(((IkReal(-1.00000000000000))*(py)*(x9425)))+(((r11)*(x9431)*(x9432)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x9434)*(x9440)))+(((IkReal(-1.00000000000000))*(r00)*(x9425)*(x9450)))+(((r11)*(sj4)*(x9427)))+(((IkReal(-1.00000000000000))*(x9426)*(x9434)*(x9448)))+(((IkReal(-1.00000000000000))*(r10)*(x9438)*(x9450)))+(((IkReal(-1.00000000000000))*(x9433)*(x9451)))+(((IkReal(-1.00000000000000))*(r02)*(x9425)*(x9433)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9425)*(x9426)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x9425)*(x9440)))+(((r01)*(sj4)*(x9439)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x9429)*(x9439)))+(((r00)*(x9432)*(x9439)))+(((r12)*(sj0)*(x9446)))+(((IkReal(-1.00000000000000))*(r01)*(x9429)*(x9431)))+(((IkReal(-1.00000000000000))*(r10)*(x9427)*(x9429)))+(((x9435)*(x9442)))+(((cj0)*(r02)*(x9446)))+(((r10)*(x9427)*(x9432)))+(((IkReal(-1.00000000000000))*(px)*(x9425)))+(((r01)*(x9431)*(x9432)))+(((x9434)*(x9441)))+(((IkReal(-1.00000000000000))*(sj0)*(x9429)*(x9447)))+(((IkReal(-1.00000000000000))*(py)*(x9438)))+(((sj0)*(x9432)*(x9447)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9452=((IkReal(1.00000000000000))*(sj5)); +IkReal x9453=((cj6)*(r21)); +IkReal x9454=((r20)*(sj6)); +IkReal x9455=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x9454)*(x9455)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9452)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x9453)*(x9455)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x9452)*(x9453)))+(((IkReal(-1.00000000000000))*(x9452)*(x9454)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x9454)*(x9455)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9452)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x9453)*(x9455)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x9452)*(x9453)))+(((IkReal(-1.00000000000000))*(x9452)*(x9454)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x9454)*(x9455)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9452)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x9453)*(x9455)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x9452)*(x9453)))+(((IkReal(-1.00000000000000))*(x9452)*(x9454)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9456=IKsin(j3); +IkReal x9457=IKcos(j3); +IkReal x9458=((sj0)*(sj5)); +IkReal x9459=((r00)*(sj6)); +IkReal x9460=((cj6)*(r01)); +IkReal x9461=((cj5)*(sj0)); +IkReal x9462=((cj0)*(cj5)); +IkReal x9463=((cj6)*(sj4)); +IkReal x9464=((sj4)*(sj6)); +IkReal x9465=((cj0)*(r11)); +IkReal x9466=((cj4)*(cj6)); +IkReal x9467=((cj4)*(sj6)); +IkReal x9468=((IkReal(1.00000000000000))*(cj0)); +IkReal x9469=((cj4)*(sj5)); +IkReal x9470=((sj5)*(sj6)); +IkReal x9471=((cj6)*(sj5)); +evalcond[0]=((((r20)*(x9470)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r21)*(x9471)))+(x9457)); +evalcond[1]=((((r22)*(x9469)))+(((cj5)*(r21)*(x9466)))+(x9456)+(((cj5)*(r20)*(x9467)))+(((r20)*(x9463)))+(((IkReal(-1.00000000000000))*(r21)*(x9464)))); +evalcond[2]=((((x9458)*(x9459)))+(((x9458)*(x9460)))+(((IkReal(-1.00000000000000))*(x9465)*(x9471)))+(((r12)*(x9462)))+(((IkReal(-1.00000000000000))*(x9456)))+(((IkReal(-1.00000000000000))*(r10)*(x9468)*(x9470)))+(((IkReal(-1.00000000000000))*(r02)*(x9461)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x9462)*(x9466)))+(((cj4)*(r02)*(x9458)))+(((x9464)*(x9465)))+(((cj4)*(x9460)*(x9461)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x9464)))+(((IkReal(-1.00000000000000))*(r10)*(x9463)*(x9468)))+(((IkReal(-1.00000000000000))*(r10)*(x9462)*(x9467)))+(((IkReal(-1.00000000000000))*(r12)*(x9468)*(x9469)))+(((r00)*(sj0)*(x9463)))+(x9457)+(((cj4)*(x9459)*(x9461)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9472=((IkReal(1.00000000000000))*(cj0)); +IkReal x9473=((cj4)*(sj6)); +IkReal x9474=((sj0)*(sj4)); +IkReal x9475=((cj5)*(sj6)); +IkReal x9476=((sj4)*(sj5)); +IkReal x9477=((r12)*(sj5)); +IkReal x9478=((IkReal(0.374290000000000))*(cj5)); +IkReal x9479=((r02)*(sj0)); +IkReal x9480=((r20)*(sj4)); +IkReal x9481=((IkReal(1.00000000000000))*(sj0)); +IkReal x9482=((IkReal(1.00000000000000))*(cj5)); +IkReal x9483=((cj0)*(r10)); +IkReal x9484=((cj4)*(cj6)); +IkReal x9485=((r00)*(sj0)); +IkReal x9486=((cj6)*(r21)); +IkReal x9487=((IkReal(0.374290000000000))*(sj5)); +IkReal x9488=((cj0)*(r00)); +IkReal x9489=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9490=((cj0)*(r02)); +IkReal x9491=((cj5)*(sj4)); +IkReal x9492=((cj6)*(r01)); +IkReal x9493=((cj6)*(r11)); +IkReal x9494=((r01)*(sj0)); +IkReal x9495=((r10)*(sj0)); +IkReal x9496=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x9497=((sj6)*(x9487)); +IkReal x9498=((cj0)*(cj6)*(x9487)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x9486)))+(((r20)*(sj5)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(x9482)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x9484)))+(((r22)*(x9476)))+(((r21)*(x9473)))+(((x9486)*(x9491)))+(((x9475)*(x9480)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x9489)))+(((IkReal(-0.0100000000000000))*(cj5)*(x9486)))+(((r20)*(x9497)))+(((IkReal(-1.00000000000000))*(r22)*(x9478)))+(((x9486)*(x9487)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x9475)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x9480)))+(((cj5)*(r20)*(x9473)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x9484)))); +evalcond[5]=((((x9483)*(x9484)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x9472)*(x9475)))+(((r02)*(sj5)*(x9474)))+(((IkReal(-1.00000000000000))*(r00)*(x9481)*(x9484)))+(((r00)*(x9474)*(x9475)))+(((IkReal(-1.00000000000000))*(r11)*(x9472)*(x9473)))+(((x9473)*(x9494)))+(((cj5)*(x9474)*(x9492)))+(((IkReal(-1.00000000000000))*(x9472)*(x9491)*(x9493)))+(((IkReal(-1.00000000000000))*(r12)*(x9472)*(x9476)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x9472)*(x9491)*(x9492)))+(((IkReal(-1.00000000000000))*(x9474)*(x9482)*(x9493)))+(((x9484)*(x9495)))+(((IkReal(-1.00000000000000))*(r01)*(x9472)*(x9473)))+(((IkReal(-1.00000000000000))*(r11)*(x9473)*(x9481)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x9472)*(x9475)))+(((IkReal(-1.00000000000000))*(r02)*(x9472)*(x9476)))+(((IkReal(-1.00000000000000))*(r10)*(x9474)*(x9475)))+(((IkReal(-1.00000000000000))*(x9474)*(x9477)))+(((x9484)*(x9488)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9493)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x9492)))+(((IkReal(0.0100000000000000))*(x9475)*(x9483)))+(((IkReal(-1.00000000000000))*(x9478)*(x9479)))+(((IkReal(-1.00000000000000))*(cj0)*(x9487)*(x9493)))+(((IkReal(-1.00000000000000))*(py)*(x9472)))+(((IkReal(-1.00000000000000))*(x9479)*(x9489)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(x9475)*(x9485)))+(((IkReal(-1.00000000000000))*(x9483)*(x9497)))+(((x9485)*(x9497)))+(((IkReal(0.0100000000000000))*(cj0)*(x9477)))+(((sj0)*(x9487)*(x9492)))+(((cj0)*(r12)*(x9478)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(py)*(x9481)))+(((IkReal(-1.00000000000000))*(sj0)*(x9487)*(x9493)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x9493)))+(((IkReal(-1.00000000000000))*(x9488)*(x9497)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9492)))+(((IkReal(0.0100000000000000))*(sj0)*(x9477)))+(((IkReal(0.0100000000000000))*(x9475)*(x9495)))+(((IkReal(0.0100000000000000))*(x9475)*(x9488)))+(((x9489)*(x9490)))+(((r12)*(sj0)*(x9478)))+(((IkReal(-1.00000000000000))*(x9495)*(x9497)))+(((IkReal(-1.00000000000000))*(px)*(x9472)))+(((x9478)*(x9490)))+(((IkReal(-1.00000000000000))*(cj0)*(x9487)*(x9492)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9499=((cj0)*(cj5)); +IkReal x9500=((IkReal(1.00000000000000))*(cj0)); +IkReal x9501=((cj6)*(r11)); +IkReal x9502=((r10)*(sj6)); +IkReal x9503=((cj5)*(sj0)); +IkReal x9504=((r00)*(sj5)*(sj6)); +IkReal x9505=((cj6)*(r01)*(sj5)); +IkReal x9506=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(x9503)))+(((r12)*(x9499)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9501)))+(((sj0)*(x9504)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9502)))+(((sj0)*(x9505))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r02)*(x9499)))+(((r12)*(x9503)))+(((IkReal(-1.00000000000000))*(x9500)*(x9505)))+(((IkReal(-1.00000000000000))*(x9500)*(x9504)))+(((IkReal(-1.00000000000000))*(x9501)*(x9506)))+(((IkReal(-1.00000000000000))*(x9502)*(x9506))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(x9503)))+(((r12)*(x9499)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9501)))+(((sj0)*(x9504)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9502)))+(((sj0)*(x9505)))))+IKsqr(((((r02)*(x9499)))+(((r12)*(x9503)))+(((IkReal(-1.00000000000000))*(x9500)*(x9505)))+(((IkReal(-1.00000000000000))*(x9500)*(x9504)))+(((IkReal(-1.00000000000000))*(x9501)*(x9506)))+(((IkReal(-1.00000000000000))*(x9502)*(x9506)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(x9503)))+(((r12)*(x9499)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9501)))+(((sj0)*(x9504)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9502)))+(((sj0)*(x9505)))), ((((r02)*(x9499)))+(((r12)*(x9503)))+(((IkReal(-1.00000000000000))*(x9500)*(x9505)))+(((IkReal(-1.00000000000000))*(x9500)*(x9504)))+(((IkReal(-1.00000000000000))*(x9501)*(x9506)))+(((IkReal(-1.00000000000000))*(x9502)*(x9506))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9507=IKcos(j3); +IkReal x9508=((sj0)*(sj5)); +IkReal x9509=((r00)*(sj6)); +IkReal x9510=((cj6)*(sj0)); +IkReal x9511=((IkReal(1.00000000000000))*(cj4)); +IkReal x9512=((r00)*(sj4)); +IkReal x9513=((cj0)*(cj5)); +IkReal x9514=((cj5)*(sj0)); +IkReal x9515=((cj6)*(r11)); +IkReal x9516=((r10)*(sj6)); +IkReal x9517=((cj0)*(sj5)); +IkReal x9518=((r10)*(sj4)); +IkReal x9519=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x9520=((cj4)*(cj5)*(r01)); +IkReal x9521=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x9522=((cj0)*(sj4)*(sj6)); +IkReal x9523=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x9515)*(x9517)))+(((IkReal(-1.00000000000000))*(x9516)*(x9517)))+(((cj6)*(r01)*(x9508)))+(((IkReal(-1.00000000000000))*(r02)*(x9514)))+(((r12)*(x9513)))+(((x9508)*(x9509)))+(((IkReal(-1.00000000000000))*(x9519)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9508)*(x9515)))+(((IkReal(-1.00000000000000))*(x9507)))+(((r02)*(x9513)))+(((IkReal(-1.00000000000000))*(x9509)*(x9517)))+(((r12)*(x9514)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9517)))+(((IkReal(-1.00000000000000))*(x9508)*(x9516)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9511)*(x9513)*(x9515)))+(((cj4)*(r02)*(x9508)))+(((r11)*(x9522)))+(((IkReal(-1.00000000000000))*(x9518)*(x9521)))+(((x9510)*(x9520)))+(((cj4)*(x9509)*(x9514)))+(((IkReal(-1.00000000000000))*(r01)*(x9523)))+(((IkReal(-1.00000000000000))*(r12)*(x9511)*(x9517)))+(((IkReal(-1.00000000000000))*(x9511)*(x9513)*(x9516)))+(x9507)+(((x9510)*(x9512)))); +evalcond[3]=((((r01)*(x9522)))+(((IkReal(-1.00000000000000))*(x9510)*(x9518)))+(((IkReal(-1.00000000000000))*(x9509)*(x9511)*(x9513)))+(((IkReal(-1.00000000000000))*(x9512)*(x9521)))+(((IkReal(-1.00000000000000))*(r02)*(x9511)*(x9517)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9511)*(x9513)))+(((r11)*(x9523)))+(((IkReal(-1.00000000000000))*(x9511)*(x9514)*(x9516)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x9510)*(x9511)))+(((IkReal(-1.00000000000000))*(x9519)))+(((IkReal(-1.00000000000000))*(r12)*(x9508)*(x9511)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9524=((IkReal(1.00000000000000))*(cj0)); +IkReal x9525=((cj4)*(sj6)); +IkReal x9526=((sj0)*(sj4)); +IkReal x9527=((cj5)*(sj6)); +IkReal x9528=((sj4)*(sj5)); +IkReal x9529=((r12)*(sj5)); +IkReal x9530=((IkReal(0.374290000000000))*(cj5)); +IkReal x9531=((r02)*(sj0)); +IkReal x9532=((r20)*(sj4)); +IkReal x9533=((IkReal(1.00000000000000))*(sj0)); +IkReal x9534=((IkReal(1.00000000000000))*(cj5)); +IkReal x9535=((cj0)*(r10)); +IkReal x9536=((cj4)*(cj6)); +IkReal x9537=((r00)*(sj0)); +IkReal x9538=((cj6)*(r21)); +IkReal x9539=((IkReal(0.374290000000000))*(sj5)); +IkReal x9540=((cj0)*(r00)); +IkReal x9541=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9542=((cj0)*(r02)); +IkReal x9543=((cj5)*(sj4)); +IkReal x9544=((cj6)*(r01)); +IkReal x9545=((cj6)*(r11)); +IkReal x9546=((r01)*(sj0)); +IkReal x9547=((r10)*(sj0)); +IkReal x9548=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x9549=((sj6)*(x9539)); +IkReal x9550=((cj0)*(cj6)*(x9539)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x9538)))+(((IkReal(-1.00000000000000))*(r22)*(x9534)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((r22)*(x9528)))+(((r21)*(x9525)))+(((x9527)*(x9532)))+(((x9538)*(x9543)))+(((IkReal(-1.00000000000000))*(r20)*(x9536)))); +evalcond[3]=((((r20)*(x9549)))+(((IkReal(-0.0100000000000000))*(cj5)*(x9538)))+(((IkReal(-0.0100000000000000))*(r20)*(x9527)))+(((x9538)*(x9539)))+(((IkReal(-1.00000000000000))*(r22)*(x9541)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x9530)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x9536)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x9525)))+(((cj6)*(x9532)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x9533)*(x9536)))+(((x9525)*(x9546)))+(((x9535)*(x9536)))+(((IkReal(-1.00000000000000))*(r11)*(x9524)*(x9525)))+(((r00)*(x9526)*(x9527)))+(((cj5)*(x9526)*(x9544)))+(((r02)*(sj5)*(x9526)))+(((IkReal(-1.00000000000000))*(r12)*(x9524)*(x9528)))+(((IkReal(-1.00000000000000))*(x9524)*(x9543)*(x9545)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x9524)*(x9527)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x9526)*(x9534)*(x9545)))+(((IkReal(-1.00000000000000))*(x9524)*(x9543)*(x9544)))+(((IkReal(-1.00000000000000))*(x9526)*(x9529)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x9524)*(x9527)))+(((IkReal(-1.00000000000000))*(r11)*(x9525)*(x9533)))+(((IkReal(-1.00000000000000))*(r01)*(x9524)*(x9525)))+(((x9536)*(x9540)))+(((x9536)*(x9547)))+(((IkReal(-1.00000000000000))*(r10)*(x9526)*(x9527)))+(((IkReal(-1.00000000000000))*(r02)*(x9524)*(x9528)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x9535)*(x9549)))+(((sj0)*(x9539)*(x9544)))+(((IkReal(-0.0100000000000000))*(x9527)*(x9537)))+(((x9537)*(x9549)))+(((IkReal(-1.00000000000000))*(cj0)*(x9539)*(x9545)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9545)))+(((IkReal(-1.00000000000000))*(x9531)*(x9541)))+(((IkReal(0.0100000000000000))*(cj0)*(x9529)))+(((IkReal(-1.00000000000000))*(x9530)*(x9531)))+(((IkReal(0.0100000000000000))*(x9527)*(x9535)))+(((cj0)*(r12)*(x9530)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x9544)))+(((IkReal(-1.00000000000000))*(py)*(x9524)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x9539)*(x9544)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x9545)))+(((x9541)*(x9542)))+(((IkReal(0.0100000000000000))*(x9527)*(x9540)))+(((IkReal(-1.00000000000000))*(px)*(x9524)))+(((IkReal(0.0100000000000000))*(sj0)*(x9529)))+(((IkReal(-1.00000000000000))*(x9540)*(x9549)))+(((r12)*(sj0)*(x9530)))+(((IkReal(-1.00000000000000))*(x9547)*(x9549)))+(((IkReal(-1.00000000000000))*(py)*(x9533)))+(((x9530)*(x9542)))+(((IkReal(0.0100000000000000))*(x9527)*(x9547)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9544)))+(((IkReal(-1.00000000000000))*(sj0)*(x9539)*(x9545)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9551=((sj0)*(sj5)); +IkReal x9552=((r00)*(sj6)); +IkReal x9553=((IkReal(1.00000000000000))*(cj5)); +IkReal x9554=((cj6)*(r11)); +IkReal x9555=((cj6)*(r01)); +IkReal x9556=((r10)*(sj6)); +IkReal x9557=((cj0)*(sj5)); +if( IKabs(((((x9551)*(x9555)))+(((IkReal(-1.00000000000000))*(x9556)*(x9557)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9553)))+(((x9551)*(x9552)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x9554)*(x9557))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x9552)*(x9557)))+(((x9555)*(x9557)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9553)))+(((x9551)*(x9554)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9553)))+(((x9551)*(x9556))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x9551)*(x9555)))+(((IkReal(-1.00000000000000))*(x9556)*(x9557)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9553)))+(((x9551)*(x9552)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x9554)*(x9557)))))+IKsqr(((((x9552)*(x9557)))+(((x9555)*(x9557)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9553)))+(((x9551)*(x9554)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9553)))+(((x9551)*(x9556)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x9551)*(x9555)))+(((IkReal(-1.00000000000000))*(x9556)*(x9557)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9553)))+(((x9551)*(x9552)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x9554)*(x9557)))), ((((x9552)*(x9557)))+(((x9555)*(x9557)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9553)))+(((x9551)*(x9554)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9553)))+(((x9551)*(x9556))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9558=IKcos(j3); +IkReal x9559=IKsin(j3); +IkReal x9560=((sj0)*(sj5)); +IkReal x9561=((r00)*(sj6)); +IkReal x9562=((cj6)*(sj0)); +IkReal x9563=((IkReal(1.00000000000000))*(cj4)); +IkReal x9564=((r00)*(sj4)); +IkReal x9565=((cj0)*(cj5)); +IkReal x9566=((cj5)*(sj0)); +IkReal x9567=((cj6)*(r11)); +IkReal x9568=((r10)*(sj6)); +IkReal x9569=((cj0)*(sj5)); +IkReal x9570=((r10)*(sj4)); +IkReal x9571=((cj4)*(cj5)*(r01)); +IkReal x9572=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x9573=((cj0)*(sj4)*(sj6)); +IkReal x9574=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((r12)*(x9565)))+(((IkReal(-1.00000000000000))*(x9559)))+(((IkReal(-1.00000000000000))*(x9568)*(x9569)))+(((x9560)*(x9561)))+(((IkReal(-1.00000000000000))*(r02)*(x9566)))+(((IkReal(-1.00000000000000))*(x9567)*(x9569)))+(((cj6)*(r01)*(x9560)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9560)*(x9567)))+(((r12)*(x9566)))+(((r02)*(x9565)))+(((IkReal(-1.00000000000000))*(x9561)*(x9569)))+(x9558)+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9569)))+(((IkReal(-1.00000000000000))*(x9560)*(x9568)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x9574)))+(((IkReal(-1.00000000000000))*(x9570)*(x9572)))+(((IkReal(-1.00000000000000))*(x9563)*(x9565)*(x9568)))+(x9558)+(((cj4)*(x9561)*(x9566)))+(((x9562)*(x9571)))+(((r11)*(x9573)))+(((cj4)*(r02)*(x9560)))+(((IkReal(-1.00000000000000))*(x9563)*(x9565)*(x9567)))+(((x9562)*(x9564)))+(((IkReal(-1.00000000000000))*(r12)*(x9563)*(x9569)))); +evalcond[3]=((((r01)*(x9573)))+(((IkReal(-1.00000000000000))*(x9564)*(x9572)))+(((IkReal(-1.00000000000000))*(x9563)*(x9566)*(x9568)))+(((r11)*(x9574)))+(((IkReal(-1.00000000000000))*(r02)*(x9563)*(x9569)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x9562)*(x9563)))+(x9559)+(((IkReal(-1.00000000000000))*(x9562)*(x9570)))+(((IkReal(-1.00000000000000))*(r12)*(x9560)*(x9563)))+(((IkReal(-1.00000000000000))*(x9561)*(x9563)*(x9565)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9563)*(x9565)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9575=((cj0)*(cj5)); +IkReal x9576=((IkReal(1.00000000000000))*(cj0)); +IkReal x9577=((cj6)*(r11)); +IkReal x9578=((r10)*(sj6)); +IkReal x9579=((cj5)*(sj0)); +IkReal x9580=((r00)*(sj5)*(sj6)); +IkReal x9581=((cj6)*(r01)*(sj5)); +IkReal x9582=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(x9579)))+(((sj0)*(x9581)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9577)))+(((r12)*(x9575)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9578)))+(((sj0)*(x9580))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x9576)*(x9580)))+(((IkReal(-1.00000000000000))*(x9576)*(x9581)))+(((IkReal(-1.00000000000000))*(x9577)*(x9582)))+(((r02)*(x9575)))+(((IkReal(-1.00000000000000))*(x9578)*(x9582)))+(((r12)*(x9579))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(x9579)))+(((sj0)*(x9581)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9577)))+(((r12)*(x9575)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9578)))+(((sj0)*(x9580)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x9576)*(x9580)))+(((IkReal(-1.00000000000000))*(x9576)*(x9581)))+(((IkReal(-1.00000000000000))*(x9577)*(x9582)))+(((r02)*(x9575)))+(((IkReal(-1.00000000000000))*(x9578)*(x9582)))+(((r12)*(x9579)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(x9579)))+(((sj0)*(x9581)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9577)))+(((r12)*(x9575)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9578)))+(((sj0)*(x9580)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x9576)*(x9580)))+(((IkReal(-1.00000000000000))*(x9576)*(x9581)))+(((IkReal(-1.00000000000000))*(x9577)*(x9582)))+(((r02)*(x9575)))+(((IkReal(-1.00000000000000))*(x9578)*(x9582)))+(((r12)*(x9579))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9583=IKsin(j3); +IkReal x9584=IKcos(j3); +IkReal x9585=((sj0)*(sj5)); +IkReal x9586=((r00)*(sj6)); +IkReal x9587=((cj6)*(r01)); +IkReal x9588=((cj4)*(cj5)); +IkReal x9589=((IkReal(1.00000000000000))*(cj0)); +IkReal x9590=((cj5)*(r12)); +IkReal x9591=((IkReal(1.00000000000000))*(sj0)); +IkReal x9592=((cj6)*(r11)); +IkReal x9593=((cj5)*(r02)); +IkReal x9594=((IkReal(1.00000000000000))*(cj1)); +IkReal x9595=((cj6)*(sj4)); +IkReal x9596=((cj6)*(r21)); +IkReal x9597=((r20)*(sj6)); +IkReal x9598=((r10)*(sj6)); +IkReal x9599=((sj4)*(sj6)); +IkReal x9600=((cj4)*(r02)); +IkReal x9601=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9602=((IkReal(1.00000000000000))*(x9583)); +IkReal x9603=((cj0)*(x9599)); +evalcond[0]=((((sj5)*(x9596)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x9584)))+(((sj5)*(x9597)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x9599)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x9595)))+(((IkReal(-1.00000000000000))*(sj1)*(x9602)))+(((x9588)*(x9597)))+(((x9588)*(x9596)))); +evalcond[2]=((((x9585)*(x9586)))+(((IkReal(-1.00000000000000))*(x9602)))+(((IkReal(-1.00000000000000))*(sj5)*(x9589)*(x9592)))+(((IkReal(-1.00000000000000))*(sj5)*(x9589)*(x9598)))+(((cj0)*(x9590)))+(((IkReal(-1.00000000000000))*(x9591)*(x9593)))+(((x9585)*(x9587)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9585)*(x9592)))+(((IkReal(-1.00000000000000))*(x9584)*(x9594)))+(((IkReal(-1.00000000000000))*(sj5)*(x9587)*(x9589)))+(((IkReal(-1.00000000000000))*(sj5)*(x9586)*(x9589)))+(((IkReal(-1.00000000000000))*(x9585)*(x9598)))+(((sj0)*(x9590)))+(((cj0)*(x9593)))); +evalcond[4]=((((r00)*(sj0)*(x9595)))+(((IkReal(-1.00000000000000))*(x9588)*(x9589)*(x9592)))+(((IkReal(-1.00000000000000))*(r01)*(x9591)*(x9599)))+(((r11)*(x9603)))+(x9584)+(((IkReal(-1.00000000000000))*(x9588)*(x9589)*(x9598)))+(((sj0)*(x9586)*(x9588)))+(((IkReal(-1.00000000000000))*(r10)*(x9589)*(x9595)))+(((sj0)*(x9587)*(x9588)))+(((x9585)*(x9600)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9589)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9585)*(x9601)))+(((IkReal(-1.00000000000000))*(x9587)*(x9588)*(x9589)))+(((IkReal(-1.00000000000000))*(r00)*(x9589)*(x9595)))+(((IkReal(-1.00000000000000))*(x9583)*(x9594)))+(((r11)*(sj0)*(x9599)))+(((r01)*(x9603)))+(((IkReal(-1.00000000000000))*(r10)*(x9591)*(x9595)))+(((IkReal(-1.00000000000000))*(x9586)*(x9588)*(x9589)))+(((IkReal(-1.00000000000000))*(x9588)*(x9591)*(x9592)))+(((IkReal(-1.00000000000000))*(sj5)*(x9589)*(x9600)))+(((IkReal(-1.00000000000000))*(x9588)*(x9591)*(x9598)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9604=((sj5)*(sj6)); +IkReal x9605=((cj6)*(sj5)); +IkReal x9606=((IkReal(1.00000000000000))*(cj0)); +IkReal x9607=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r01)*(sj0)*(x9605)))+(((r00)*(sj0)*(x9604)))+(((IkReal(-1.00000000000000))*(r10)*(x9604)*(x9606)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9607)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x9605)*(x9606))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x9607)))+(((r21)*(x9605)))+(((r20)*(x9604))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r01)*(sj0)*(x9605)))+(((r00)*(sj0)*(x9604)))+(((IkReal(-1.00000000000000))*(r10)*(x9604)*(x9606)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9607)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x9605)*(x9606)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x9607)))+(((r21)*(x9605)))+(((r20)*(x9604)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r01)*(sj0)*(x9605)))+(((r00)*(sj0)*(x9604)))+(((IkReal(-1.00000000000000))*(r10)*(x9604)*(x9606)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9607)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x9605)*(x9606)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x9607)))+(((r21)*(x9605)))+(((r20)*(x9604))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9608=IKsin(j3); +IkReal x9609=IKcos(j3); +IkReal x9610=((sj0)*(sj5)); +IkReal x9611=((r00)*(sj6)); +IkReal x9612=((cj6)*(r01)); +IkReal x9613=((cj4)*(cj5)); +IkReal x9614=((IkReal(1.00000000000000))*(cj0)); +IkReal x9615=((cj5)*(r12)); +IkReal x9616=((IkReal(1.00000000000000))*(sj0)); +IkReal x9617=((cj6)*(r11)); +IkReal x9618=((cj5)*(r02)); +IkReal x9619=((IkReal(1.00000000000000))*(cj1)); +IkReal x9620=((cj6)*(sj4)); +IkReal x9621=((cj6)*(r21)); +IkReal x9622=((r20)*(sj6)); +IkReal x9623=((r10)*(sj6)); +IkReal x9624=((sj4)*(sj6)); +IkReal x9625=((cj4)*(r02)); +IkReal x9626=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9627=((IkReal(1.00000000000000))*(x9608)); +IkReal x9628=((cj0)*(x9624)); +evalcond[0]=((((sj5)*(x9621)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9622)))+(((IkReal(-1.00000000000000))*(sj1)*(x9609)))); +evalcond[1]=((((x9613)*(x9621)))+(((r20)*(x9620)))+(((cj4)*(r22)*(sj5)))+(((x9613)*(x9622)))+(((IkReal(-1.00000000000000))*(sj1)*(x9627)))+(((IkReal(-1.00000000000000))*(r21)*(x9624)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9616)*(x9618)))+(((x9610)*(x9611)))+(((IkReal(-1.00000000000000))*(sj5)*(x9614)*(x9617)))+(((cj0)*(x9615)))+(((IkReal(-1.00000000000000))*(sj5)*(x9614)*(x9623)))+(((x9610)*(x9612)))+(((IkReal(-1.00000000000000))*(x9627)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9609)*(x9619)))+(((cj0)*(x9618)))+(((IkReal(-1.00000000000000))*(sj5)*(x9611)*(x9614)))+(((IkReal(-1.00000000000000))*(sj5)*(x9612)*(x9614)))+(((IkReal(-1.00000000000000))*(x9610)*(x9623)))+(((sj0)*(x9615)))+(((IkReal(-1.00000000000000))*(x9610)*(x9617)))); +evalcond[4]=((((x9610)*(x9625)))+(((sj0)*(x9611)*(x9613)))+(((r11)*(x9628)))+(((r00)*(sj0)*(x9620)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9614)))+(((IkReal(-1.00000000000000))*(r01)*(x9616)*(x9624)))+(((IkReal(-1.00000000000000))*(x9613)*(x9614)*(x9617)))+(((IkReal(-1.00000000000000))*(r10)*(x9614)*(x9620)))+(((IkReal(-1.00000000000000))*(x9613)*(x9614)*(x9623)))+(((sj0)*(x9612)*(x9613)))+(x9609)); +evalcond[5]=((((r11)*(sj0)*(x9624)))+(((IkReal(-1.00000000000000))*(r00)*(x9614)*(x9620)))+(((IkReal(-1.00000000000000))*(x9613)*(x9616)*(x9617)))+(((IkReal(-1.00000000000000))*(x9611)*(x9613)*(x9614)))+(((IkReal(-1.00000000000000))*(x9610)*(x9626)))+(((IkReal(-1.00000000000000))*(r10)*(x9616)*(x9620)))+(((IkReal(-1.00000000000000))*(x9613)*(x9616)*(x9623)))+(((r01)*(x9628)))+(((IkReal(-1.00000000000000))*(sj5)*(x9614)*(x9625)))+(((IkReal(-1.00000000000000))*(x9612)*(x9613)*(x9614)))+(((IkReal(-1.00000000000000))*(x9608)*(x9619)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9629=((r20)*(sj6)); +IkReal x9630=((cj4)*(cj5)); +IkReal x9631=((cj6)*(r21)); +if( IKabs(((gconst17)*(((((x9629)*(x9630)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x9630)*(x9631)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst17)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9629)))+(((sj5)*(x9631))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst17)*(((((x9629)*(x9630)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x9630)*(x9631)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))), ((gconst17)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9629)))+(((sj5)*(x9631))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9632=IKsin(j3); +IkReal x9633=IKcos(j3); +IkReal x9634=((sj0)*(sj5)); +IkReal x9635=((r00)*(sj6)); +IkReal x9636=((cj6)*(r01)); +IkReal x9637=((cj4)*(cj5)); +IkReal x9638=((IkReal(1.00000000000000))*(cj0)); +IkReal x9639=((cj5)*(r12)); +IkReal x9640=((IkReal(1.00000000000000))*(sj0)); +IkReal x9641=((cj6)*(r11)); +IkReal x9642=((cj5)*(r02)); +IkReal x9643=((IkReal(1.00000000000000))*(cj1)); +IkReal x9644=((cj6)*(sj4)); +IkReal x9645=((cj6)*(r21)); +IkReal x9646=((r20)*(sj6)); +IkReal x9647=((r10)*(sj6)); +IkReal x9648=((sj4)*(sj6)); +IkReal x9649=((cj4)*(r02)); +IkReal x9650=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9651=((IkReal(1.00000000000000))*(x9632)); +IkReal x9652=((cj0)*(x9648)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x9633)))+(((sj5)*(x9646)))+(((sj5)*(x9645)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((r20)*(x9644)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x9648)))+(((x9637)*(x9645)))+(((IkReal(-1.00000000000000))*(sj1)*(x9651)))+(((x9637)*(x9646)))); +evalcond[2]=((((x9634)*(x9636)))+(((IkReal(-1.00000000000000))*(x9640)*(x9642)))+(((IkReal(-1.00000000000000))*(x9651)))+(((x9634)*(x9635)))+(((IkReal(-1.00000000000000))*(sj5)*(x9638)*(x9641)))+(((cj0)*(x9639)))+(((IkReal(-1.00000000000000))*(sj5)*(x9638)*(x9647)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x9636)*(x9638)))+(((sj0)*(x9639)))+(((IkReal(-1.00000000000000))*(sj5)*(x9635)*(x9638)))+(((IkReal(-1.00000000000000))*(x9634)*(x9647)))+(((IkReal(-1.00000000000000))*(x9633)*(x9643)))+(((IkReal(-1.00000000000000))*(x9634)*(x9641)))+(((cj0)*(x9642)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9637)*(x9638)*(x9641)))+(((IkReal(-1.00000000000000))*(x9637)*(x9638)*(x9647)))+(((IkReal(-1.00000000000000))*(r10)*(x9638)*(x9644)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9638)))+(x9633)+(((sj0)*(x9636)*(x9637)))+(((x9634)*(x9649)))+(((r00)*(sj0)*(x9644)))+(((sj0)*(x9635)*(x9637)))+(((r11)*(x9652)))+(((IkReal(-1.00000000000000))*(r01)*(x9640)*(x9648)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x9638)*(x9649)))+(((IkReal(-1.00000000000000))*(x9636)*(x9637)*(x9638)))+(((r01)*(x9652)))+(((IkReal(-1.00000000000000))*(x9637)*(x9640)*(x9641)))+(((IkReal(-1.00000000000000))*(x9634)*(x9650)))+(((IkReal(-1.00000000000000))*(x9637)*(x9640)*(x9647)))+(((IkReal(-1.00000000000000))*(x9635)*(x9637)*(x9638)))+(((IkReal(-1.00000000000000))*(x9632)*(x9643)))+(((IkReal(-1.00000000000000))*(r10)*(x9640)*(x9644)))+(((IkReal(-1.00000000000000))*(r00)*(x9638)*(x9644)))+(((r11)*(sj0)*(x9648)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +IkReal x9653=((IkReal(0.374290000000000))*(sj5)); +IkReal x9654=((cj0)*(sj6)); +IkReal x9655=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9656=((cj0)*(r02)); +IkReal x9657=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9658=((IkReal(1.00000000000000))*(py)); +IkReal x9659=((r01)*(sj0)); +IkReal x9660=((r20)*(sj6)); +IkReal x9661=((r11)*(sj0)); +IkReal x9662=((IkReal(0.374290000000000))*(cj5)); +IkReal x9663=((cj0)*(r12)); +IkReal x9664=((sj0)*(x9662)); +IkReal x9665=((cj6)*(x9657)); +IkReal x9666=((r10)*(sj0)*(sj6)); +IkReal x9667=((r00)*(sj0)*(sj6)); +IkReal x9668=((cj0)*(cj6)*(x9653)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9657)*(x9660)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x9655)))+(((IkReal(-1.00000000000000))*(r22)*(x9662)))+(pz)+(((IkReal(-1.00000000000000))*(r21)*(x9665)))+(((x9653)*(x9660)))+(((cj6)*(r21)*(x9653)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((r10)*(x9654)*(x9657)))+(((cj0)*(r11)*(x9665)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9655)))+(((IkReal(-1.00000000000000))*(cj0)*(x9658)))+(((IkReal(-1.00000000000000))*(x9657)*(x9667)))+(((IkReal(-1.00000000000000))*(r02)*(x9664)))+(((x9662)*(x9663)))+(((cj6)*(x9653)*(x9659)))+(((x9653)*(x9667)))+(((x9655)*(x9663)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x9668)))+(((IkReal(-1.00000000000000))*(x9659)*(x9665)))+(((IkReal(-1.00000000000000))*(r10)*(x9653)*(x9654)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x9653)*(x9654)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x9655)*(x9656)))+(((IkReal(-1.00000000000000))*(x9653)*(x9666)))+(((x9656)*(x9662)))+(((cj0)*(r01)*(x9665)))+(((IkReal(-1.00000000000000))*(cj6)*(x9653)*(x9661)))+(((IkReal(-1.00000000000000))*(sj0)*(x9658)))+(((x9661)*(x9665)))+(((r12)*(sj0)*(x9655)))+(((x9657)*(x9666)))+(((IkReal(-1.00000000000000))*(r01)*(x9668)))+(((IkReal(0.364420000000000))*(cj1)))+(((r00)*(x9654)*(x9657)))+(((r12)*(x9664)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst26; +IkReal x9669=(cj6)*(cj6); +IkReal x9670=(sj6)*(sj6); +IkReal x9671=((IkReal(1.00000000000000))*(r01)); +IkReal x9672=((sj0)*(sj5)); +IkReal x9673=((cj6)*(r22)); +IkReal x9674=((r21)*(sj6)); +IkReal x9675=((r00)*(r21)); +IkReal x9676=((cj0)*(sj5)); +IkReal x9677=((cj6)*(r20)); +IkReal x9678=((r22)*(sj6)); +IkReal x9679=((cj0)*(cj5)); +IkReal x9680=((IkReal(1.00000000000000))*(r10)); +IkReal x9681=((cj5)*(sj0)); +IkReal x9682=((r20)*(x9670)); +IkReal x9683=((x9669)*(x9681)); +gconst26=IKsign(((((x9675)*(x9683)))+(((IkReal(-1.00000000000000))*(r02)*(x9672)*(x9677)))+(((IkReal(-1.00000000000000))*(r21)*(x9670)*(x9679)*(x9680)))+(((r02)*(x9672)*(x9674)))+(((IkReal(-1.00000000000000))*(x9671)*(x9672)*(x9678)))+(((r00)*(x9672)*(x9673)))+(((x9670)*(x9675)*(x9681)))+(((r11)*(r20)*(x9669)*(x9679)))+(((IkReal(-1.00000000000000))*(r12)*(x9674)*(x9676)))+(((IkReal(-1.00000000000000))*(r20)*(x9671)*(x9683)))+(((IkReal(-1.00000000000000))*(x9671)*(x9681)*(x9682)))+(((r12)*(x9676)*(x9677)))+(((r11)*(x9679)*(x9682)))+(((IkReal(-1.00000000000000))*(r21)*(x9669)*(x9679)*(x9680)))+(((r11)*(x9676)*(x9678)))+(((IkReal(-1.00000000000000))*(x9673)*(x9676)*(x9680))))); +IkReal x9684=(cj6)*(cj6); +IkReal x9685=(sj6)*(sj6); +IkReal x9686=((IkReal(1.00000000000000))*(r01)); +IkReal x9687=((sj0)*(sj5)); +IkReal x9688=((cj6)*(r22)); +IkReal x9689=((r21)*(sj6)); +IkReal x9690=((r00)*(r21)); +IkReal x9691=((cj0)*(sj5)); +IkReal x9692=((cj6)*(r20)); +IkReal x9693=((r22)*(sj6)); +IkReal x9694=((cj0)*(cj5)); +IkReal x9695=((IkReal(1.00000000000000))*(r10)); +IkReal x9696=((cj5)*(sj0)); +IkReal x9697=((r20)*(x9685)); +IkReal x9698=((x9684)*(x9696)); +dummyeval[0]=((((r00)*(x9687)*(x9688)))+(((IkReal(-1.00000000000000))*(x9686)*(x9687)*(x9693)))+(((r11)*(x9694)*(x9697)))+(((IkReal(-1.00000000000000))*(r12)*(x9689)*(x9691)))+(((IkReal(-1.00000000000000))*(r20)*(x9686)*(x9698)))+(((IkReal(-1.00000000000000))*(x9686)*(x9696)*(x9697)))+(((r11)*(r20)*(x9684)*(x9694)))+(((IkReal(-1.00000000000000))*(r21)*(x9684)*(x9694)*(x9695)))+(((IkReal(-1.00000000000000))*(x9688)*(x9691)*(x9695)))+(((IkReal(-1.00000000000000))*(r21)*(x9685)*(x9694)*(x9695)))+(((x9690)*(x9698)))+(((r02)*(x9687)*(x9689)))+(((r11)*(x9691)*(x9693)))+(((r12)*(x9691)*(x9692)))+(((x9685)*(x9690)*(x9696)))+(((IkReal(-1.00000000000000))*(r02)*(x9687)*(x9692)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst27; +IkReal x9699=(cj6)*(cj6); +IkReal x9700=(sj6)*(sj6); +IkReal x9701=((sj5)*(sj6)); +IkReal x9702=((IkReal(1.00000000000000))*(cj0)); +IkReal x9703=((cj6)*(sj5)); +IkReal x9704=((r20)*(sj0)); +IkReal x9705=((cj0)*(r20)); +IkReal x9706=((r00)*(r21)); +IkReal x9707=((r22)*(sj0)); +IkReal x9708=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x9709=((cj5)*(x9700)); +IkReal x9710=((cj5)*(x9699)); +gconst27=IKsign(((((IkReal(-1.00000000000000))*(r10)*(x9708)*(x9710)))+(((IkReal(-1.00000000000000))*(x9702)*(x9706)*(x9709)))+(((r02)*(x9703)*(x9705)))+(((IkReal(-1.00000000000000))*(r12)*(x9701)*(x9708)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x9701)*(x9702)))+(((r01)*(x9705)*(x9709)))+(((r11)*(x9701)*(x9707)))+(((r12)*(x9703)*(x9704)))+(((r11)*(x9704)*(x9710)))+(((IkReal(-1.00000000000000))*(r10)*(x9703)*(x9707)))+(((IkReal(-1.00000000000000))*(x9702)*(x9706)*(x9710)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x9702)*(x9703)))+(((r01)*(x9705)*(x9710)))+(((r11)*(x9704)*(x9709)))+(((IkReal(-1.00000000000000))*(r10)*(x9708)*(x9709)))+(((cj0)*(r01)*(r22)*(x9701))))); +IkReal x9711=(cj6)*(cj6); +IkReal x9712=(sj6)*(sj6); +IkReal x9713=((sj5)*(sj6)); +IkReal x9714=((IkReal(1.00000000000000))*(cj0)); +IkReal x9715=((cj6)*(sj5)); +IkReal x9716=((r20)*(sj0)); +IkReal x9717=((cj0)*(r20)); +IkReal x9718=((r00)*(r21)); +IkReal x9719=((r22)*(sj0)); +IkReal x9720=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x9721=((cj5)*(x9712)); +IkReal x9722=((cj5)*(x9711)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r00)*(r22)*(x9714)*(x9715)))+(((r02)*(x9715)*(x9717)))+(((IkReal(-1.00000000000000))*(r12)*(x9713)*(x9720)))+(((IkReal(-1.00000000000000))*(r10)*(x9715)*(x9719)))+(((r11)*(x9716)*(x9721)))+(((r11)*(x9716)*(x9722)))+(((r01)*(x9717)*(x9722)))+(((cj0)*(r01)*(r22)*(x9713)))+(((r11)*(x9713)*(x9719)))+(((r12)*(x9715)*(x9716)))+(((r01)*(x9717)*(x9721)))+(((IkReal(-1.00000000000000))*(x9714)*(x9718)*(x9721)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x9713)*(x9714)))+(((IkReal(-1.00000000000000))*(r10)*(x9720)*(x9722)))+(((IkReal(-1.00000000000000))*(x9714)*(x9718)*(x9722)))+(((IkReal(-1.00000000000000))*(r10)*(x9720)*(x9721)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x9723=((cj5)*(r22)); +IkReal x9724=((IkReal(0.374290000000000))*(sj5)); +IkReal x9725=((cj0)*(sj6)); +IkReal x9726=((cj6)*(r21)); +IkReal x9727=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9728=((cj0)*(r02)); +IkReal x9729=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9730=((IkReal(1.00000000000000))*(py)); +IkReal x9731=((r01)*(sj0)); +IkReal x9732=((r20)*(sj6)); +IkReal x9733=((r11)*(sj0)); +IkReal x9734=((IkReal(0.374290000000000))*(cj5)); +IkReal x9735=((cj0)*(r12)); +IkReal x9736=((sj0)*(x9734)); +IkReal x9737=((cj6)*(x9729)); +IkReal x9738=((r10)*(sj0)*(sj6)); +IkReal x9739=((r00)*(sj0)*(sj6)); +IkReal x9740=((cj0)*(cj6)*(x9724)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x9732)))+(((sj5)*(x9726)))+(((IkReal(-1.00000000000000))*(x9723)))); +evalcond[2]=((((x9724)*(x9732)))+(((IkReal(-1.00000000000000))*(x9726)*(x9729)))+(((IkReal(-0.374290000000000))*(x9723)))+(((IkReal(-1.00000000000000))*(r22)*(x9727)))+(pz)+(((IkReal(-1.00000000000000))*(x9729)*(x9732)))+(((x9724)*(x9726)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((cj0)*(r11)*(x9737)))+(((IkReal(-1.00000000000000))*(x9729)*(x9739)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9727)))+(((x9734)*(x9735)))+(((x9724)*(x9739)))+(((x9727)*(x9735)))+(((IkReal(-1.00000000000000))*(r11)*(x9740)))+(((IkReal(-1.00000000000000))*(r02)*(x9736)))+(((IkReal(-1.00000000000000))*(r10)*(x9724)*(x9725)))+(((r10)*(x9725)*(x9729)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x9731)*(x9737)))+(((IkReal(-1.00000000000000))*(cj0)*(x9730)))+(((cj6)*(x9724)*(x9731)))); +evalcond[4]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x9727)*(x9728)))+(((IkReal(-1.00000000000000))*(x9724)*(x9738)))+(((IkReal(-1.00000000000000))*(cj6)*(x9724)*(x9733)))+(((x9729)*(x9738)))+(((IkReal(-1.00000000000000))*(r01)*(x9740)))+(((r12)*(x9736)))+(((x9728)*(x9734)))+(((r12)*(sj0)*(x9727)))+(((IkReal(-1.00000000000000))*(r00)*(x9724)*(x9725)))+(((cj0)*(r01)*(x9737)))+(((x9733)*(x9737)))+(((IkReal(-1.00000000000000))*(sj0)*(x9730)))+(((r00)*(x9725)*(x9729)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9741=((cj5)*(r02)); +IkReal x9742=((cj0)*(sj5)); +IkReal x9743=((r10)*(sj6)); +IkReal x9744=((IkReal(1.00000000000000))*(cj6)); +IkReal x9745=((sj0)*(sj5)); +IkReal x9746=((cj5)*(r12)); +IkReal x9747=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(x9745)*(x9747)))+(((IkReal(-1.00000000000000))*(cj0)*(x9746)))+(((cj6)*(r11)*(x9742)))+(((x9742)*(x9743)))+(((IkReal(-1.00000000000000))*(r01)*(x9744)*(x9745)))+(((sj0)*(x9741))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x9742)*(x9747)))+(((cj0)*(x9741)))+(((sj0)*(x9746)))+(((IkReal(-1.00000000000000))*(r11)*(x9744)*(x9745)))+(((IkReal(-1.00000000000000))*(x9743)*(x9745)))+(((IkReal(-1.00000000000000))*(r01)*(x9742)*(x9744))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x9745)*(x9747)))+(((IkReal(-1.00000000000000))*(cj0)*(x9746)))+(((cj6)*(r11)*(x9742)))+(((x9742)*(x9743)))+(((IkReal(-1.00000000000000))*(r01)*(x9744)*(x9745)))+(((sj0)*(x9741)))))+IKsqr(((((IkReal(-1.00000000000000))*(x9742)*(x9747)))+(((cj0)*(x9741)))+(((sj0)*(x9746)))+(((IkReal(-1.00000000000000))*(r11)*(x9744)*(x9745)))+(((IkReal(-1.00000000000000))*(x9743)*(x9745)))+(((IkReal(-1.00000000000000))*(r01)*(x9742)*(x9744)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x9745)*(x9747)))+(((IkReal(-1.00000000000000))*(cj0)*(x9746)))+(((cj6)*(r11)*(x9742)))+(((x9742)*(x9743)))+(((IkReal(-1.00000000000000))*(r01)*(x9744)*(x9745)))+(((sj0)*(x9741)))), ((((IkReal(-1.00000000000000))*(x9742)*(x9747)))+(((cj0)*(x9741)))+(((sj0)*(x9746)))+(((IkReal(-1.00000000000000))*(r11)*(x9744)*(x9745)))+(((IkReal(-1.00000000000000))*(x9743)*(x9745)))+(((IkReal(-1.00000000000000))*(r01)*(x9742)*(x9744))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x9748=((cj0)*(cj5)); +IkReal x9749=((IkReal(1.00000000000000))*(cj0)); +IkReal x9750=((cj6)*(r11)); +IkReal x9751=((r10)*(sj6)); +IkReal x9752=((cj5)*(sj0)); +IkReal x9753=((r00)*(sj5)*(sj6)); +IkReal x9754=((cj6)*(r01)*(sj5)); +IkReal x9755=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x9752)))+(((sj0)*(x9753)))+(((sj0)*(x9754)))+(((IkReal(-1.00000000000000))*(sj5)*(x9749)*(x9751)))+(((IkReal(-1.00000000000000))*(sj5)*(x9749)*(x9750)))+(IKsin(j3))+(((r12)*(x9748)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9751)*(x9755)))+(((IkReal(-1.00000000000000))*(x9750)*(x9755)))+(((r12)*(x9752)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(x9749)*(x9753)))+(((r02)*(x9748)))+(((IkReal(-1.00000000000000))*(x9749)*(x9754)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst33; +IkReal x9756=(r21)*(r21); +IkReal x9757=(cj5)*(cj5); +IkReal x9758=(sj6)*(sj6); +IkReal x9759=(cj6)*(cj6); +IkReal x9760=(r20)*(r20); +IkReal x9761=((cj6)*(r21)); +IkReal x9762=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x9763=((cj5)*(r22)*(sj5)); +IkReal x9764=((IkReal(1.00000000000000))*(x9758)); +IkReal x9765=((IkReal(1.00000000000000))*(x9759)); +gconst33=IKsign(((((IkReal(-2.00000000000000))*(x9761)*(x9763)))+(((IkReal(-1.00000000000000))*(x9757)*(x9760)*(x9764)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((x9761)*(x9762)))+(((IkReal(-1.00000000000000))*(x9760)*(x9765)))+(((IkReal(-1.00000000000000))*(x9756)*(x9757)*(x9765)))+(((IkReal(-1.00000000000000))*(x9757)*(x9761)*(x9762)))+(((IkReal(-1.00000000000000))*(x9756)*(x9764)))+(((IkReal(-1.00000000000000))*(x9762)*(x9763))))); +IkReal x9766=(r21)*(r21); +IkReal x9767=(cj5)*(cj5); +IkReal x9768=(sj6)*(sj6); +IkReal x9769=(cj6)*(cj6); +IkReal x9770=(r20)*(r20); +IkReal x9771=((cj6)*(r21)); +IkReal x9772=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x9773=((cj5)*(r22)*(sj5)); +IkReal x9774=((IkReal(1.00000000000000))*(x9768)); +IkReal x9775=((IkReal(1.00000000000000))*(x9769)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x9772)*(x9773)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x9766)*(x9767)*(x9775)))+(((IkReal(-1.00000000000000))*(x9770)*(x9775)))+(((IkReal(-1.00000000000000))*(x9766)*(x9774)))+(((IkReal(-1.00000000000000))*(x9767)*(x9770)*(x9774)))+(((IkReal(-2.00000000000000))*(x9771)*(x9773)))+(((IkReal(-1.00000000000000))*(x9767)*(x9771)*(x9772)))+(((x9771)*(x9772)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst34; +IkReal x9776=(cj6)*(cj6); +IkReal x9777=(sj6)*(sj6); +IkReal x9778=((IkReal(1.00000000000000))*(r01)); +IkReal x9779=((sj0)*(sj5)); +IkReal x9780=((cj6)*(r22)); +IkReal x9781=((r21)*(sj6)); +IkReal x9782=((r00)*(r21)); +IkReal x9783=((cj0)*(sj5)); +IkReal x9784=((cj6)*(r20)); +IkReal x9785=((r22)*(sj6)); +IkReal x9786=((cj0)*(cj5)); +IkReal x9787=((IkReal(1.00000000000000))*(r10)); +IkReal x9788=((cj5)*(sj0)); +IkReal x9789=((r20)*(x9777)); +IkReal x9790=((x9776)*(x9788)); +gconst34=IKsign(((((r00)*(x9779)*(x9780)))+(((r11)*(r20)*(x9776)*(x9786)))+(((r12)*(x9783)*(x9784)))+(((IkReal(-1.00000000000000))*(r21)*(x9777)*(x9786)*(x9787)))+(((IkReal(-1.00000000000000))*(x9780)*(x9783)*(x9787)))+(((IkReal(-1.00000000000000))*(x9778)*(x9788)*(x9789)))+(((r02)*(x9779)*(x9781)))+(((IkReal(-1.00000000000000))*(r20)*(x9778)*(x9790)))+(((r11)*(x9786)*(x9789)))+(((IkReal(-1.00000000000000))*(r12)*(x9781)*(x9783)))+(((IkReal(-1.00000000000000))*(x9778)*(x9779)*(x9785)))+(((x9777)*(x9782)*(x9788)))+(((r11)*(x9783)*(x9785)))+(((IkReal(-1.00000000000000))*(r21)*(x9776)*(x9786)*(x9787)))+(((x9782)*(x9790)))+(((IkReal(-1.00000000000000))*(r02)*(x9779)*(x9784))))); +IkReal x9791=(cj6)*(cj6); +IkReal x9792=(sj6)*(sj6); +IkReal x9793=((IkReal(1.00000000000000))*(r01)); +IkReal x9794=((sj0)*(sj5)); +IkReal x9795=((cj6)*(r22)); +IkReal x9796=((r21)*(sj6)); +IkReal x9797=((r00)*(r21)); +IkReal x9798=((cj0)*(sj5)); +IkReal x9799=((cj6)*(r20)); +IkReal x9800=((r22)*(sj6)); +IkReal x9801=((cj0)*(cj5)); +IkReal x9802=((IkReal(1.00000000000000))*(r10)); +IkReal x9803=((cj5)*(sj0)); +IkReal x9804=((r20)*(x9792)); +IkReal x9805=((x9791)*(x9803)); +dummyeval[0]=((((r12)*(x9798)*(x9799)))+(((r00)*(x9794)*(x9795)))+(((r11)*(x9801)*(x9804)))+(((IkReal(-1.00000000000000))*(r21)*(x9791)*(x9801)*(x9802)))+(((IkReal(-1.00000000000000))*(r20)*(x9793)*(x9805)))+(((r11)*(x9798)*(x9800)))+(((IkReal(-1.00000000000000))*(x9793)*(x9794)*(x9800)))+(((x9797)*(x9805)))+(((IkReal(-1.00000000000000))*(r12)*(x9796)*(x9798)))+(((r11)*(r20)*(x9791)*(x9801)))+(((IkReal(-1.00000000000000))*(r21)*(x9792)*(x9801)*(x9802)))+(((IkReal(-1.00000000000000))*(x9795)*(x9798)*(x9802)))+(((x9792)*(x9797)*(x9803)))+(((r02)*(x9794)*(x9796)))+(((IkReal(-1.00000000000000))*(x9793)*(x9803)*(x9804)))+(((IkReal(-1.00000000000000))*(r02)*(x9794)*(x9799)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x9806=((sj0)*(sj6)); +IkReal x9807=((cj0)*(r10)); +IkReal x9808=((IkReal(1.00000000000000))*(cj5)); +IkReal x9809=((cj6)*(sj0)); +IkReal x9810=((cj0)*(r11)); +if( IKabs(((gconst34)*(((((cj6)*(x9807)))+(((IkReal(-1.00000000000000))*(sj6)*(x9810)))+(((IkReal(-1.00000000000000))*(r00)*(x9809)))+(((r01)*(x9806))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst34)*(((((IkReal(-1.00000000000000))*(r00)*(x9806)*(x9808)))+(((cj5)*(sj6)*(x9807)))+(((IkReal(-1.00000000000000))*(r01)*(x9808)*(x9809)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x9810))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst34)*(((((cj6)*(x9807)))+(((IkReal(-1.00000000000000))*(sj6)*(x9810)))+(((IkReal(-1.00000000000000))*(r00)*(x9809)))+(((r01)*(x9806)))))), ((gconst34)*(((((IkReal(-1.00000000000000))*(r00)*(x9806)*(x9808)))+(((cj5)*(sj6)*(x9807)))+(((IkReal(-1.00000000000000))*(r01)*(x9808)*(x9809)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x9810))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x9811=IKsin(j4); +IkReal x9812=IKcos(j4); +IkReal x9813=((r22)*(sj5)); +IkReal x9814=((IkReal(1.00000000000000))*(cj6)); +IkReal x9815=((IkReal(1.00000000000000))*(cj0)); +IkReal x9816=((cj5)*(r11)); +IkReal x9817=((cj5)*(cj6)); +IkReal x9818=((r11)*(sj6)); +IkReal x9819=((IkReal(1.00000000000000))*(sj6)); +IkReal x9820=((cj6)*(r00)); +IkReal x9821=((r12)*(sj5)); +IkReal x9822=((r02)*(sj5)); +IkReal x9823=((cj6)*(r10)); +IkReal x9824=((cj5)*(sj6)); +IkReal x9825=((cj5)*(r01)); +IkReal x9826=((sj0)*(x9811)); +IkReal x9827=((r00)*(x9824)); +IkReal x9828=((cj0)*(x9811)); +IkReal x9829=((sj0)*(x9812)); +IkReal x9830=((r20)*(x9812)); +IkReal x9831=((cj0)*(x9812)); +IkReal x9832=((r21)*(x9811)); +IkReal x9833=((r21)*(x9812)); +IkReal x9834=((r20)*(x9811)); +IkReal x9835=((x9812)*(x9821)); +IkReal x9836=((r01)*(sj6)*(x9812)); +IkReal x9837=((cj5)*(r10)*(x9819)); +evalcond[0]=((IkReal(1.00000000000000))+(((sj6)*(x9833)))+(((x9811)*(x9813)))+(((x9824)*(x9834)))+(((IkReal(-1.00000000000000))*(x9814)*(x9830)))+(((x9817)*(x9832)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9819)*(x9832)))+(((cj6)*(x9834)))+(((x9817)*(x9833)))+(((x9812)*(x9813)))+(((x9824)*(x9830)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x9811)*(x9815)*(x9824)))+(((IkReal(-1.00000000000000))*(r00)*(x9814)*(x9829)))+(((x9826)*(x9827)))+(((IkReal(-1.00000000000000))*(x9814)*(x9816)*(x9828)))+(((r01)*(sj6)*(x9829)))+(((r01)*(x9817)*(x9826)))+(((x9822)*(x9826)))+(((IkReal(-1.00000000000000))*(x9812)*(x9815)*(x9818)))+(((IkReal(-1.00000000000000))*(x9811)*(x9815)*(x9821)))+(((x9823)*(x9831)))); +evalcond[3]=((((x9820)*(x9826)))+(((IkReal(-1.00000000000000))*(r01)*(x9819)*(x9826)))+(((r01)*(x9817)*(x9829)))+(((IkReal(-1.00000000000000))*(r10)*(x9812)*(x9815)*(x9824)))+(((x9822)*(x9829)))+(((IkReal(-1.00000000000000))*(x9814)*(x9816)*(x9831)))+(((IkReal(-1.00000000000000))*(r10)*(x9814)*(x9828)))+(((x9827)*(x9829)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x9818)*(x9828)))+(((IkReal(-1.00000000000000))*(x9815)*(x9835)))); +evalcond[4]=((((x9820)*(x9831)))+(((IkReal(-1.00000000000000))*(x9814)*(x9816)*(x9826)))+(((IkReal(-1.00000000000000))*(x9811)*(x9815)*(x9822)))+(((IkReal(-1.00000000000000))*(x9818)*(x9829)))+(((IkReal(-1.00000000000000))*(x9821)*(x9826)))+(((x9823)*(x9829)))+(((IkReal(-1.00000000000000))*(x9814)*(x9825)*(x9828)))+(((IkReal(-1.00000000000000))*(x9815)*(x9836)))+(((IkReal(-1.00000000000000))*(x9826)*(x9837)))+(((IkReal(-1.00000000000000))*(x9811)*(x9815)*(x9827)))); +evalcond[5]=((((r01)*(sj6)*(x9828)))+(((IkReal(-1.00000000000000))*(r10)*(x9814)*(x9826)))+(((IkReal(-1.00000000000000))*(x9812)*(x9815)*(x9822)))+(((IkReal(-1.00000000000000))*(x9812)*(x9815)*(x9827)))+(((IkReal(-1.00000000000000))*(x9814)*(x9816)*(x9829)))+(((IkReal(-1.00000000000000))*(x9821)*(x9829)))+(((x9818)*(x9826)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(x9829)*(x9837)))+(((IkReal(-1.00000000000000))*(x9814)*(x9825)*(x9831)))+(((IkReal(-1.00000000000000))*(r00)*(x9814)*(x9828)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst33)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst33)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst33)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst33)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x9838=IKsin(j4); +IkReal x9839=IKcos(j4); +IkReal x9840=((r22)*(sj5)); +IkReal x9841=((IkReal(1.00000000000000))*(cj6)); +IkReal x9842=((IkReal(1.00000000000000))*(cj0)); +IkReal x9843=((cj5)*(r11)); +IkReal x9844=((cj5)*(cj6)); +IkReal x9845=((r11)*(sj6)); +IkReal x9846=((IkReal(1.00000000000000))*(sj6)); +IkReal x9847=((cj6)*(r00)); +IkReal x9848=((r12)*(sj5)); +IkReal x9849=((r02)*(sj5)); +IkReal x9850=((cj6)*(r10)); +IkReal x9851=((cj5)*(sj6)); +IkReal x9852=((cj5)*(r01)); +IkReal x9853=((sj0)*(x9838)); +IkReal x9854=((r00)*(x9851)); +IkReal x9855=((cj0)*(x9838)); +IkReal x9856=((sj0)*(x9839)); +IkReal x9857=((r20)*(x9839)); +IkReal x9858=((cj0)*(x9839)); +IkReal x9859=((r21)*(x9838)); +IkReal x9860=((r21)*(x9839)); +IkReal x9861=((r20)*(x9838)); +IkReal x9862=((x9839)*(x9848)); +IkReal x9863=((r01)*(sj6)*(x9839)); +IkReal x9864=((cj5)*(r10)*(x9846)); +evalcond[0]=((IkReal(1.00000000000000))+(((sj6)*(x9860)))+(((x9838)*(x9840)))+(((IkReal(-1.00000000000000))*(x9841)*(x9857)))+(((x9844)*(x9859)))+(((x9851)*(x9861)))); +evalcond[1]=((((x9844)*(x9860)))+(((cj6)*(x9861)))+(((x9839)*(x9840)))+(((IkReal(-1.00000000000000))*(x9846)*(x9859)))+(((x9851)*(x9857)))); +evalcond[2]=((((x9850)*(x9858)))+(((r01)*(x9844)*(x9853)))+(((r01)*(sj6)*(x9856)))+(((IkReal(-1.00000000000000))*(x9838)*(x9842)*(x9848)))+(((x9849)*(x9853)))+(((IkReal(-1.00000000000000))*(r00)*(x9841)*(x9856)))+(((IkReal(-1.00000000000000))*(r10)*(x9838)*(x9842)*(x9851)))+(((IkReal(-1.00000000000000))*(x9839)*(x9842)*(x9845)))+(((IkReal(-1.00000000000000))*(x9841)*(x9843)*(x9855)))+(((x9853)*(x9854)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9841)*(x9843)*(x9858)))+(((x9845)*(x9855)))+(((IkReal(-1.00000000000000))*(r01)*(x9846)*(x9853)))+(((IkReal(-1.00000000000000))*(x9842)*(x9862)))+(((x9849)*(x9856)))+(((IkReal(-1.00000000000000))*(r10)*(x9839)*(x9842)*(x9851)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x9847)*(x9853)))+(((r01)*(x9844)*(x9856)))+(((x9854)*(x9856)))+(((IkReal(-1.00000000000000))*(r10)*(x9841)*(x9855)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9838)*(x9842)*(x9854)))+(((x9850)*(x9856)))+(((IkReal(-1.00000000000000))*(x9841)*(x9852)*(x9855)))+(((IkReal(-1.00000000000000))*(x9845)*(x9856)))+(((IkReal(-1.00000000000000))*(x9842)*(x9863)))+(((IkReal(-1.00000000000000))*(x9848)*(x9853)))+(((x9847)*(x9858)))+(((IkReal(-1.00000000000000))*(x9841)*(x9843)*(x9853)))+(((IkReal(-1.00000000000000))*(x9838)*(x9842)*(x9849)))+(((IkReal(-1.00000000000000))*(x9853)*(x9864)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9839)*(x9842)*(x9849)))+(((IkReal(-1.00000000000000))*(x9856)*(x9864)))+(((IkReal(-1.00000000000000))*(x9841)*(x9843)*(x9856)))+(((IkReal(-1.00000000000000))*(x9848)*(x9856)))+(((IkReal(-1.00000000000000))*(x9841)*(x9852)*(x9858)))+(((IkReal(-1.00000000000000))*(x9839)*(x9842)*(x9854)))+(((IkReal(-1.00000000000000))*(sj3)))+(((r01)*(sj6)*(x9855)))+(((IkReal(-1.00000000000000))*(r10)*(x9841)*(x9853)))+(((IkReal(-1.00000000000000))*(r00)*(x9841)*(x9855)))+(((x9845)*(x9853)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x9865=((cj5)*(r22)); +IkReal x9866=((IkReal(0.374290000000000))*(sj5)); +IkReal x9867=((cj0)*(sj6)); +IkReal x9868=((cj6)*(r21)); +IkReal x9869=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9870=((cj0)*(r02)); +IkReal x9871=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9872=((IkReal(1.00000000000000))*(py)); +IkReal x9873=((r01)*(sj0)); +IkReal x9874=((r20)*(sj6)); +IkReal x9875=((r11)*(sj0)); +IkReal x9876=((IkReal(0.374290000000000))*(cj5)); +IkReal x9877=((cj0)*(r12)); +IkReal x9878=((sj0)*(x9876)); +IkReal x9879=((cj6)*(x9871)); +IkReal x9880=((r10)*(sj0)*(sj6)); +IkReal x9881=((r00)*(sj0)*(sj6)); +IkReal x9882=((cj0)*(cj6)*(x9866)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9865)))+(((sj5)*(x9868)))+(((sj5)*(x9874)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9868)*(x9871)))+(((IkReal(-0.374290000000000))*(x9865)))+(((IkReal(-1.00000000000000))*(r22)*(x9869)))+(((x9866)*(x9868)))+(((x9866)*(x9874)))+(((IkReal(-1.00000000000000))*(x9871)*(x9874)))+(pz)); +evalcond[3]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x9873)*(x9879)))+(((r10)*(x9867)*(x9871)))+(((cj6)*(x9866)*(x9873)))+(((IkReal(-1.00000000000000))*(x9871)*(x9881)))+(((IkReal(-1.00000000000000))*(r10)*(x9866)*(x9867)))+(((IkReal(-1.00000000000000))*(cj0)*(x9872)))+(((IkReal(-1.00000000000000))*(r02)*(x9878)))+(((x9866)*(x9881)))+(((cj0)*(r11)*(x9879)))+(((x9876)*(x9877)))+(((x9869)*(x9877)))+(((IkReal(-1.00000000000000))*(r11)*(x9882)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9869)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((r00)*(x9867)*(x9871)))+(((x9875)*(x9879)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x9870)*(x9876)))+(((IkReal(-1.00000000000000))*(r01)*(x9882)))+(((IkReal(-1.00000000000000))*(x9866)*(x9880)))+(((r12)*(sj0)*(x9869)))+(((x9869)*(x9870)))+(((cj0)*(r01)*(x9879)))+(((IkReal(-1.00000000000000))*(sj0)*(x9872)))+(((IkReal(-1.00000000000000))*(r00)*(x9866)*(x9867)))+(((x9871)*(x9880)))+(((r12)*(x9878)))+(((IkReal(-1.00000000000000))*(cj6)*(x9866)*(x9875)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9883=((IkReal(1.00000000000000))*(cj5)); +IkReal x9884=((r10)*(sj5)*(sj6)); +IkReal x9885=((cj6)*(sj0)*(sj5)); +IkReal x9886=((r00)*(sj5)*(sj6)); +IkReal x9887=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x9883)))+(((cj0)*(x9884)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x9885)))+(((IkReal(-1.00000000000000))*(sj0)*(x9886)))+(((r11)*(x9887))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r11)*(x9885)))+(((r01)*(x9887)))+(((sj0)*(x9884)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9883)))+(((cj0)*(x9886)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9883))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x9883)))+(((cj0)*(x9884)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x9885)))+(((IkReal(-1.00000000000000))*(sj0)*(x9886)))+(((r11)*(x9887)))))+IKsqr(((((r11)*(x9885)))+(((r01)*(x9887)))+(((sj0)*(x9884)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9883)))+(((cj0)*(x9886)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9883)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x9883)))+(((cj0)*(x9884)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x9885)))+(((IkReal(-1.00000000000000))*(sj0)*(x9886)))+(((r11)*(x9887)))), ((((r11)*(x9885)))+(((r01)*(x9887)))+(((sj0)*(x9884)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9883)))+(((cj0)*(x9886)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9883))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x9888=((cj0)*(cj5)); +IkReal x9889=((IkReal(1.00000000000000))*(cj0)); +IkReal x9890=((cj6)*(r11)); +IkReal x9891=((r10)*(sj6)); +IkReal x9892=((cj5)*(sj0)); +IkReal x9893=((r00)*(sj5)*(sj6)); +IkReal x9894=((cj6)*(r01)*(sj5)); +IkReal x9895=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((sj0)*(x9893)))+(((IkReal(-1.00000000000000))*(sj5)*(x9889)*(x9891)))+(((r12)*(x9888)))+(((sj0)*(x9894)))+(((IkReal(-1.00000000000000))*(sj5)*(x9889)*(x9890)))+(IKsin(j3))+(((IkReal(-1.00000000000000))*(r02)*(x9892)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9890)*(x9895)))+(((IkReal(-1.00000000000000))*(x9891)*(x9895)))+(((IkReal(-1.00000000000000))*(x9889)*(x9893)))+(((r02)*(x9888)))+(((r12)*(x9892)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x9889)*(x9894)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst37; +IkReal x9896=(cj5)*(cj5); +IkReal x9897=(r20)*(r20); +IkReal x9898=(sj6)*(sj6); +IkReal x9899=(cj6)*(cj6); +IkReal x9900=(r21)*(r21); +IkReal x9901=((cj6)*(r21)); +IkReal x9902=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x9903=((cj5)*(r22)*(sj5)); +gconst37=IKsign(((((x9896)*(x9899)*(x9900)))+(((x9896)*(x9897)*(x9898)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x9902)*(x9903)))+(((x9898)*(x9900)))+(((IkReal(-1.00000000000000))*(x9901)*(x9902)))+(((IkReal(2.00000000000000))*(x9901)*(x9903)))+(((x9897)*(x9899)))+(((x9896)*(x9901)*(x9902))))); +IkReal x9904=(cj5)*(cj5); +IkReal x9905=(r20)*(r20); +IkReal x9906=(sj6)*(sj6); +IkReal x9907=(cj6)*(cj6); +IkReal x9908=(r21)*(r21); +IkReal x9909=((cj6)*(r21)); +IkReal x9910=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x9911=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x9906)*(x9908)))+(((x9904)*(x9905)*(x9906)))+(((IkReal(-1.00000000000000))*(x9909)*(x9910)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x9910)*(x9911)))+(((IkReal(2.00000000000000))*(x9909)*(x9911)))+(((x9905)*(x9907)))+(((x9904)*(x9907)*(x9908)))+(((x9904)*(x9909)*(x9910)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst38; +IkReal x9912=(cj6)*(cj6); +IkReal x9913=(sj6)*(sj6); +IkReal x9914=((IkReal(1.00000000000000))*(r21)); +IkReal x9915=((cj6)*(r20)); +IkReal x9916=((r22)*(sj5)); +IkReal x9917=((r01)*(sj0)); +IkReal x9918=((r00)*(sj0)); +IkReal x9919=((cj0)*(r10)); +IkReal x9920=((r02)*(sj0)*(sj5)); +IkReal x9921=((cj5)*(x9912)); +IkReal x9922=((cj0)*(r12)*(sj5)); +IkReal x9923=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x9924=((cj5)*(x9913)); +IkReal x9925=((r20)*(x9924)); +gconst38=IKsign(((((IkReal(-1.00000000000000))*(x9923)*(x9925)))+(((IkReal(-1.00000000000000))*(x9915)*(x9922)))+(((IkReal(-1.00000000000000))*(sj6)*(x9916)*(x9923)))+(((r21)*(x9919)*(x9921)))+(((cj6)*(x9916)*(x9919)))+(((IkReal(-1.00000000000000))*(x9914)*(x9918)*(x9924)))+(((IkReal(-1.00000000000000))*(r20)*(x9921)*(x9923)))+(((x9915)*(x9920)))+(((IkReal(-1.00000000000000))*(sj6)*(x9914)*(x9920)))+(((r21)*(x9919)*(x9924)))+(((sj6)*(x9916)*(x9917)))+(((r20)*(x9917)*(x9921)))+(((r21)*(sj6)*(x9922)))+(((x9917)*(x9925)))+(((IkReal(-1.00000000000000))*(cj6)*(x9916)*(x9918)))+(((IkReal(-1.00000000000000))*(x9914)*(x9918)*(x9921))))); +IkReal x9926=(cj6)*(cj6); +IkReal x9927=(sj6)*(sj6); +IkReal x9928=((IkReal(1.00000000000000))*(r21)); +IkReal x9929=((cj6)*(r20)); +IkReal x9930=((r22)*(sj5)); +IkReal x9931=((r01)*(sj0)); +IkReal x9932=((r00)*(sj0)); +IkReal x9933=((cj0)*(r10)); +IkReal x9934=((r02)*(sj0)*(sj5)); +IkReal x9935=((cj5)*(x9926)); +IkReal x9936=((cj0)*(r12)*(sj5)); +IkReal x9937=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x9938=((cj5)*(x9927)); +IkReal x9939=((r20)*(x9938)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x9928)*(x9932)*(x9938)))+(((IkReal(-1.00000000000000))*(r20)*(x9935)*(x9937)))+(((IkReal(-1.00000000000000))*(x9929)*(x9936)))+(((sj6)*(x9930)*(x9931)))+(((x9929)*(x9934)))+(((IkReal(-1.00000000000000))*(cj6)*(x9930)*(x9932)))+(((IkReal(-1.00000000000000))*(x9928)*(x9932)*(x9935)))+(((r20)*(x9931)*(x9935)))+(((IkReal(-1.00000000000000))*(sj6)*(x9928)*(x9934)))+(((r21)*(x9933)*(x9938)))+(((r21)*(sj6)*(x9936)))+(((cj6)*(x9930)*(x9933)))+(((IkReal(-1.00000000000000))*(sj6)*(x9930)*(x9937)))+(((IkReal(-1.00000000000000))*(x9937)*(x9939)))+(((r21)*(x9933)*(x9935)))+(((x9931)*(x9939)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x9940=((sj0)*(sj6)); +IkReal x9941=((cj0)*(r10)); +IkReal x9942=((IkReal(1.00000000000000))*(cj5)); +IkReal x9943=((cj6)*(sj0)); +IkReal x9944=((cj0)*(r11)); +if( IKabs(((gconst38)*(((((IkReal(-1.00000000000000))*(sj6)*(x9944)))+(((IkReal(-1.00000000000000))*(r00)*(x9943)))+(((r01)*(x9940)))+(((cj6)*(x9941))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst38)*(((((IkReal(-1.00000000000000))*(r01)*(x9942)*(x9943)))+(((IkReal(-1.00000000000000))*(r00)*(x9940)*(x9942)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(sj6)*(x9941)))+(((cj5)*(cj6)*(x9944))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst38)*(((((IkReal(-1.00000000000000))*(sj6)*(x9944)))+(((IkReal(-1.00000000000000))*(r00)*(x9943)))+(((r01)*(x9940)))+(((cj6)*(x9941)))))), ((gconst38)*(((((IkReal(-1.00000000000000))*(r01)*(x9942)*(x9943)))+(((IkReal(-1.00000000000000))*(r00)*(x9940)*(x9942)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(sj6)*(x9941)))+(((cj5)*(cj6)*(x9944))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x9945=IKsin(j4); +IkReal x9946=IKcos(j4); +IkReal x9947=((r22)*(sj5)); +IkReal x9948=((IkReal(1.00000000000000))*(cj6)); +IkReal x9949=((IkReal(1.00000000000000))*(cj0)); +IkReal x9950=((cj5)*(r11)); +IkReal x9951=((cj5)*(cj6)); +IkReal x9952=((r11)*(sj6)); +IkReal x9953=((IkReal(1.00000000000000))*(sj6)); +IkReal x9954=((cj6)*(r00)); +IkReal x9955=((r12)*(sj5)); +IkReal x9956=((r02)*(sj5)); +IkReal x9957=((cj6)*(r10)); +IkReal x9958=((cj5)*(sj6)); +IkReal x9959=((cj5)*(r01)); +IkReal x9960=((sj0)*(x9945)); +IkReal x9961=((r00)*(x9958)); +IkReal x9962=((cj0)*(x9945)); +IkReal x9963=((sj0)*(x9946)); +IkReal x9964=((r20)*(x9946)); +IkReal x9965=((cj0)*(x9946)); +IkReal x9966=((r21)*(x9945)); +IkReal x9967=((r21)*(x9946)); +IkReal x9968=((r20)*(x9945)); +IkReal x9969=((x9946)*(x9955)); +IkReal x9970=((r01)*(sj6)*(x9946)); +IkReal x9971=((cj5)*(r10)*(x9953)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x9948)*(x9964)))+(((sj6)*(x9967)))+(((x9958)*(x9968)))+(((x9945)*(x9947)))+(((x9951)*(x9966)))); +evalcond[1]=((((cj6)*(x9968)))+(((IkReal(-1.00000000000000))*(x9953)*(x9966)))+(((x9958)*(x9964)))+(((x9946)*(x9947)))+(((x9951)*(x9967)))); +evalcond[2]=((((x9960)*(x9961)))+(((IkReal(-1.00000000000000))*(x9946)*(x9949)*(x9952)))+(((x9957)*(x9965)))+(((IkReal(-1.00000000000000))*(r00)*(x9948)*(x9963)))+(((IkReal(-1.00000000000000))*(r10)*(x9945)*(x9949)*(x9958)))+(((r01)*(x9951)*(x9960)))+(((IkReal(-1.00000000000000))*(x9945)*(x9949)*(x9955)))+(((r01)*(sj6)*(x9963)))+(((IkReal(-1.00000000000000))*(x9948)*(x9950)*(x9962)))+(((x9956)*(x9960)))); +evalcond[3]=((((x9961)*(x9963)))+(((IkReal(-1.00000000000000))*(r10)*(x9946)*(x9949)*(x9958)))+(((IkReal(-1.00000000000000))*(r01)*(x9953)*(x9960)))+(((x9952)*(x9962)))+(((x9956)*(x9963)))+(((IkReal(-1.00000000000000))*(x9948)*(x9950)*(x9965)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(r10)*(x9948)*(x9962)))+(((r01)*(x9951)*(x9963)))+(((x9954)*(x9960)))+(((IkReal(-1.00000000000000))*(x9949)*(x9969)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9945)*(x9949)*(x9956)))+(((IkReal(-1.00000000000000))*(x9945)*(x9949)*(x9961)))+(((IkReal(-1.00000000000000))*(x9948)*(x9959)*(x9962)))+(((IkReal(-1.00000000000000))*(x9952)*(x9963)))+(((IkReal(-1.00000000000000))*(x9949)*(x9970)))+(((x9957)*(x9963)))+(((x9954)*(x9965)))+(((IkReal(-1.00000000000000))*(x9948)*(x9950)*(x9960)))+(((IkReal(-1.00000000000000))*(x9955)*(x9960)))+(((IkReal(-1.00000000000000))*(x9960)*(x9971)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9963)*(x9971)))+(((IkReal(-1.00000000000000))*(x9955)*(x9963)))+(((IkReal(-1.00000000000000))*(x9948)*(x9950)*(x9963)))+(sj3)+(((IkReal(-1.00000000000000))*(x9946)*(x9949)*(x9956)))+(((x9952)*(x9960)))+(((IkReal(-1.00000000000000))*(x9948)*(x9959)*(x9965)))+(((r01)*(sj6)*(x9962)))+(((IkReal(-1.00000000000000))*(r00)*(x9948)*(x9962)))+(((IkReal(-1.00000000000000))*(r10)*(x9948)*(x9960)))+(((IkReal(-1.00000000000000))*(x9946)*(x9949)*(x9961)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst37)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst37)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst37)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst37)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x9972=IKsin(j4); +IkReal x9973=IKcos(j4); +IkReal x9974=((r22)*(sj5)); +IkReal x9975=((IkReal(1.00000000000000))*(cj6)); +IkReal x9976=((IkReal(1.00000000000000))*(cj0)); +IkReal x9977=((cj5)*(r11)); +IkReal x9978=((cj5)*(cj6)); +IkReal x9979=((r11)*(sj6)); +IkReal x9980=((IkReal(1.00000000000000))*(sj6)); +IkReal x9981=((cj6)*(r00)); +IkReal x9982=((r12)*(sj5)); +IkReal x9983=((r02)*(sj5)); +IkReal x9984=((cj6)*(r10)); +IkReal x9985=((cj5)*(sj6)); +IkReal x9986=((cj5)*(r01)); +IkReal x9987=((sj0)*(x9972)); +IkReal x9988=((r00)*(x9985)); +IkReal x9989=((cj0)*(x9972)); +IkReal x9990=((sj0)*(x9973)); +IkReal x9991=((r20)*(x9973)); +IkReal x9992=((cj0)*(x9973)); +IkReal x9993=((r21)*(x9972)); +IkReal x9994=((r21)*(x9973)); +IkReal x9995=((r20)*(x9972)); +IkReal x9996=((x9973)*(x9982)); +IkReal x9997=((r01)*(sj6)*(x9973)); +IkReal x9998=((cj5)*(r10)*(x9980)); +evalcond[0]=((IkReal(-1.00000000000000))+(((x9978)*(x9993)))+(((x9972)*(x9974)))+(((x9985)*(x9995)))+(((IkReal(-1.00000000000000))*(x9975)*(x9991)))+(((sj6)*(x9994)))); +evalcond[1]=((((x9978)*(x9994)))+(((x9973)*(x9974)))+(((IkReal(-1.00000000000000))*(x9980)*(x9993)))+(((x9985)*(x9991)))+(((cj6)*(x9995)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9972)*(x9976)*(x9982)))+(((IkReal(-1.00000000000000))*(x9975)*(x9977)*(x9989)))+(((r01)*(x9978)*(x9987)))+(((IkReal(-1.00000000000000))*(r00)*(x9975)*(x9990)))+(((r01)*(sj6)*(x9990)))+(((IkReal(-1.00000000000000))*(r10)*(x9972)*(x9976)*(x9985)))+(((x9987)*(x9988)))+(((IkReal(-1.00000000000000))*(x9973)*(x9976)*(x9979)))+(((x9984)*(x9992)))+(((x9983)*(x9987)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9976)*(x9996)))+(((x9979)*(x9989)))+(((x9988)*(x9990)))+(((IkReal(-1.00000000000000))*(r10)*(x9973)*(x9976)*(x9985)))+(((IkReal(-1.00000000000000))*(r01)*(x9980)*(x9987)))+(((x9983)*(x9990)))+(((IkReal(-1.00000000000000))*(x9975)*(x9977)*(x9992)))+(((x9981)*(x9987)))+(((IkReal(-1.00000000000000))*(cj3)))+(((r01)*(x9978)*(x9990)))+(((IkReal(-1.00000000000000))*(r10)*(x9975)*(x9989)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9972)*(x9976)*(x9983)))+(((IkReal(-1.00000000000000))*(x9987)*(x9998)))+(((IkReal(-1.00000000000000))*(x9982)*(x9987)))+(((IkReal(-1.00000000000000))*(x9972)*(x9976)*(x9988)))+(((IkReal(-1.00000000000000))*(x9976)*(x9997)))+(((IkReal(-1.00000000000000))*(x9979)*(x9990)))+(((IkReal(-1.00000000000000))*(x9975)*(x9986)*(x9989)))+(((IkReal(-1.00000000000000))*(x9975)*(x9977)*(x9987)))+(((x9984)*(x9990)))+(((x9981)*(x9992)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9973)*(x9976)*(x9988)))+(sj3)+(((IkReal(-1.00000000000000))*(x9975)*(x9986)*(x9992)))+(((IkReal(-1.00000000000000))*(x9990)*(x9998)))+(((IkReal(-1.00000000000000))*(r10)*(x9975)*(x9987)))+(((IkReal(-1.00000000000000))*(r00)*(x9975)*(x9989)))+(((x9979)*(x9987)))+(((IkReal(-1.00000000000000))*(x9975)*(x9977)*(x9990)))+(((IkReal(-1.00000000000000))*(x9982)*(x9990)))+(((r01)*(sj6)*(x9989)))+(((IkReal(-1.00000000000000))*(x9973)*(x9976)*(x9983)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9999=((sj5)*(sj6)); +IkReal x10000=((IkReal(1.00000000000000))*(sj0)); +IkReal x10001=((cj6)*(sj5)); +IkReal x10002=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10002)))+(((IkReal(-1.00000000000000))*(r01)*(x10000)*(x10001)))+(((cj0)*(r11)*(x10001)))+(((IkReal(-1.00000000000000))*(r00)*(x10000)*(x9999)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x9999))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x9999)))+(((IkReal(-1.00000000000000))*(r22)*(x10002)))+(((r21)*(x10001))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10002)))+(((IkReal(-1.00000000000000))*(r01)*(x10000)*(x10001)))+(((cj0)*(r11)*(x10001)))+(((IkReal(-1.00000000000000))*(r00)*(x10000)*(x9999)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x9999)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x9999)))+(((IkReal(-1.00000000000000))*(r22)*(x10002)))+(((r21)*(x10001)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10002)))+(((IkReal(-1.00000000000000))*(r01)*(x10000)*(x10001)))+(((cj0)*(r11)*(x10001)))+(((IkReal(-1.00000000000000))*(r00)*(x10000)*(x9999)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x9999)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x9999)))+(((IkReal(-1.00000000000000))*(r22)*(x10002)))+(((r21)*(x10001))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x10003=IKcos(j3); +IkReal x10004=((sj5)*(sj6)); +IkReal x10005=((cj0)*(cj5)); +IkReal x10006=((IkReal(1.00000000000000))*(cj0)); +IkReal x10007=((IkReal(1.00000000000000))*(sj0)); +IkReal x10008=((IkReal(1.00000000000000))*(x10003)); +IkReal x10009=((cj6)*(r01)*(sj5)); +IkReal x10010=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x10008)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x10004)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10006)*(x10010)))+(((sj0)*(x10009)))+(((r12)*(x10005)))+(((IkReal(-1.00000000000000))*(r10)*(x10004)*(x10006)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x10007)))+(IKsin(j3))+(((r00)*(sj0)*(x10004)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10007)*(x10010)))+(((IkReal(-1.00000000000000))*(r00)*(x10004)*(x10006)))+(((cj5)*(r12)*(sj0)))+(((r02)*(x10005)))+(((IkReal(-1.00000000000000))*(r10)*(x10004)*(x10007)))+(((IkReal(-1.00000000000000))*(cj1)*(x10008)))+(((IkReal(-1.00000000000000))*(x10006)*(x10009)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst28; +IkReal x10011=(r21)*(r21); +IkReal x10012=(cj5)*(cj5); +IkReal x10013=(sj6)*(sj6); +IkReal x10014=(cj6)*(cj6); +IkReal x10015=(r20)*(r20); +IkReal x10016=((cj6)*(r21)); +IkReal x10017=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x10018=((cj5)*(r22)*(sj5)); +IkReal x10019=((IkReal(1.00000000000000))*(x10013)); +IkReal x10020=((IkReal(1.00000000000000))*(x10014)); +gconst28=IKsign(((((IkReal(-1.00000000000000))*(x10011)*(x10012)*(x10020)))+(((IkReal(-1.00000000000000))*(x10012)*(x10016)*(x10017)))+(((IkReal(-2.00000000000000))*(x10016)*(x10018)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x10015)*(x10020)))+(((IkReal(-1.00000000000000))*(x10011)*(x10019)))+(((x10016)*(x10017)))+(((IkReal(-1.00000000000000))*(x10012)*(x10015)*(x10019)))+(((IkReal(-1.00000000000000))*(x10017)*(x10018))))); +IkReal x10021=(r21)*(r21); +IkReal x10022=(cj5)*(cj5); +IkReal x10023=(sj6)*(sj6); +IkReal x10024=(cj6)*(cj6); +IkReal x10025=(r20)*(r20); +IkReal x10026=((cj6)*(r21)); +IkReal x10027=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x10028=((cj5)*(r22)*(sj5)); +IkReal x10029=((IkReal(1.00000000000000))*(x10023)); +IkReal x10030=((IkReal(1.00000000000000))*(x10024)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x10022)*(x10025)*(x10029)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x10021)*(x10022)*(x10030)))+(((IkReal(-1.00000000000000))*(x10025)*(x10030)))+(((IkReal(-1.00000000000000))*(x10022)*(x10026)*(x10027)))+(((IkReal(-2.00000000000000))*(x10026)*(x10028)))+(((x10026)*(x10027)))+(((IkReal(-1.00000000000000))*(x10021)*(x10029)))+(((IkReal(-1.00000000000000))*(x10027)*(x10028)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst29; +IkReal x10031=(cj6)*(cj6); +IkReal x10032=(sj6)*(sj6); +IkReal x10033=((IkReal(1.00000000000000))*(r01)); +IkReal x10034=((sj0)*(sj5)); +IkReal x10035=((cj6)*(r22)); +IkReal x10036=((r21)*(sj6)); +IkReal x10037=((r00)*(r21)); +IkReal x10038=((cj0)*(sj5)); +IkReal x10039=((cj6)*(r20)); +IkReal x10040=((r22)*(sj6)); +IkReal x10041=((cj0)*(cj5)); +IkReal x10042=((IkReal(1.00000000000000))*(r10)); +IkReal x10043=((cj5)*(sj0)); +IkReal x10044=((r20)*(x10032)); +IkReal x10045=((x10031)*(x10043)); +gconst29=IKsign(((((r11)*(r20)*(x10031)*(x10041)))+(((IkReal(-1.00000000000000))*(r21)*(x10031)*(x10041)*(x10042)))+(((IkReal(-1.00000000000000))*(r20)*(x10033)*(x10045)))+(((r12)*(x10038)*(x10039)))+(((IkReal(-1.00000000000000))*(r12)*(x10036)*(x10038)))+(((IkReal(-1.00000000000000))*(x10033)*(x10034)*(x10040)))+(((IkReal(-1.00000000000000))*(r21)*(x10032)*(x10041)*(x10042)))+(((r02)*(x10034)*(x10036)))+(((IkReal(-1.00000000000000))*(x10033)*(x10043)*(x10044)))+(((r11)*(x10041)*(x10044)))+(((IkReal(-1.00000000000000))*(x10035)*(x10038)*(x10042)))+(((IkReal(-1.00000000000000))*(r02)*(x10034)*(x10039)))+(((x10037)*(x10045)))+(((r00)*(x10034)*(x10035)))+(((x10032)*(x10037)*(x10043)))+(((r11)*(x10038)*(x10040))))); +IkReal x10046=(cj6)*(cj6); +IkReal x10047=(sj6)*(sj6); +IkReal x10048=((IkReal(1.00000000000000))*(r01)); +IkReal x10049=((sj0)*(sj5)); +IkReal x10050=((cj6)*(r22)); +IkReal x10051=((r21)*(sj6)); +IkReal x10052=((r00)*(r21)); +IkReal x10053=((cj0)*(sj5)); +IkReal x10054=((cj6)*(r20)); +IkReal x10055=((r22)*(sj6)); +IkReal x10056=((cj0)*(cj5)); +IkReal x10057=((IkReal(1.00000000000000))*(r10)); +IkReal x10058=((cj5)*(sj0)); +IkReal x10059=((r20)*(x10047)); +IkReal x10060=((x10046)*(x10058)); +dummyeval[0]=((((r11)*(x10053)*(x10055)))+(((x10047)*(x10052)*(x10058)))+(((r11)*(r20)*(x10046)*(x10056)))+(((r12)*(x10053)*(x10054)))+(((IkReal(-1.00000000000000))*(r20)*(x10048)*(x10060)))+(((IkReal(-1.00000000000000))*(x10048)*(x10058)*(x10059)))+(((IkReal(-1.00000000000000))*(x10050)*(x10053)*(x10057)))+(((r00)*(x10049)*(x10050)))+(((IkReal(-1.00000000000000))*(x10048)*(x10049)*(x10055)))+(((IkReal(-1.00000000000000))*(r02)*(x10049)*(x10054)))+(((x10052)*(x10060)))+(((IkReal(-1.00000000000000))*(r21)*(x10047)*(x10056)*(x10057)))+(((IkReal(-1.00000000000000))*(r21)*(x10046)*(x10056)*(x10057)))+(((r11)*(x10056)*(x10059)))+(((IkReal(-1.00000000000000))*(r12)*(x10051)*(x10053)))+(((r02)*(x10049)*(x10051)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10061=((cj1)*(cj6)); +IkReal x10062=((IkReal(1.00000000000000))*(sj0)); +IkReal x10063=((cj0)*(r10)); +IkReal x10064=((cj1)*(sj5)); +IkReal x10065=((cj1)*(sj6)); +IkReal x10066=((cj0)*(r11)); +if( IKabs(((gconst29)*(((((IkReal(-1.00000000000000))*(r00)*(x10061)*(x10062)))+(((x10061)*(x10063)))+(((IkReal(-1.00000000000000))*(x10065)*(x10066)))+(((r01)*(sj0)*(x10065))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst29)*(((((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10061)*(x10062)))+(((IkReal(-1.00000000000000))*(r02)*(x10062)*(x10064)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10062)*(x10065)))+(((cj0)*(r12)*(x10064)))+(((cj5)*(x10063)*(x10065)))+(((cj5)*(x10061)*(x10066))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst29)*(((((IkReal(-1.00000000000000))*(r00)*(x10061)*(x10062)))+(((x10061)*(x10063)))+(((IkReal(-1.00000000000000))*(x10065)*(x10066)))+(((r01)*(sj0)*(x10065)))))), ((gconst29)*(((((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10061)*(x10062)))+(((IkReal(-1.00000000000000))*(r02)*(x10062)*(x10064)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10062)*(x10065)))+(((cj0)*(r12)*(x10064)))+(((cj5)*(x10063)*(x10065)))+(((cj5)*(x10061)*(x10066))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x10067=IKsin(j4); +IkReal x10068=IKcos(j4); +IkReal x10069=((r22)*(sj5)); +IkReal x10070=((IkReal(1.00000000000000))*(cj6)); +IkReal x10071=((IkReal(1.00000000000000))*(cj0)); +IkReal x10072=((IkReal(1.00000000000000))*(sj1)); +IkReal x10073=((cj5)*(r11)); +IkReal x10074=((cj5)*(cj6)); +IkReal x10075=((r11)*(sj6)); +IkReal x10076=((IkReal(1.00000000000000))*(sj6)); +IkReal x10077=((cj6)*(r00)); +IkReal x10078=((r12)*(sj5)); +IkReal x10079=((r02)*(sj5)); +IkReal x10080=((cj6)*(r10)); +IkReal x10081=((cj5)*(sj6)); +IkReal x10082=((cj5)*(r01)); +IkReal x10083=((sj0)*(x10067)); +IkReal x10084=((r00)*(x10081)); +IkReal x10085=((cj0)*(x10067)); +IkReal x10086=((sj0)*(x10068)); +IkReal x10087=((r20)*(x10068)); +IkReal x10088=((cj0)*(x10068)); +IkReal x10089=((r21)*(x10067)); +IkReal x10090=((r21)*(x10068)); +IkReal x10091=((r20)*(x10067)); +IkReal x10092=((x10068)*(x10078)); +IkReal x10093=((r01)*(sj6)*(x10068)); +IkReal x10094=((cj5)*(r10)*(x10076)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x10070)*(x10087)))+(((x10074)*(x10089)))+(cj1)+(((x10081)*(x10091)))+(((sj6)*(x10090)))+(((x10067)*(x10069)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj3)*(x10072)))+(((x10074)*(x10090)))+(((cj6)*(x10091)))+(((IkReal(-1.00000000000000))*(x10076)*(x10089)))+(((x10081)*(x10087)))+(((x10068)*(x10069)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10068)*(x10071)*(x10075)))+(((x10080)*(x10088)))+(((r01)*(x10074)*(x10083)))+(((r01)*(sj6)*(x10086)))+(((x10079)*(x10083)))+(((IkReal(-1.00000000000000))*(r00)*(x10070)*(x10086)))+(((IkReal(-1.00000000000000))*(r10)*(x10067)*(x10071)*(x10081)))+(((x10083)*(x10084)))+(((IkReal(-1.00000000000000))*(x10070)*(x10073)*(x10085)))+(((IkReal(-1.00000000000000))*(x10067)*(x10071)*(x10078)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x10068)*(x10071)*(x10081)))+(((IkReal(-1.00000000000000))*(r10)*(x10070)*(x10085)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x10084)*(x10086)))+(((IkReal(-1.00000000000000))*(r01)*(x10076)*(x10083)))+(((IkReal(-1.00000000000000))*(x10071)*(x10092)))+(((x10079)*(x10086)))+(((IkReal(-1.00000000000000))*(x10070)*(x10073)*(x10088)))+(((x10075)*(x10085)))+(((x10077)*(x10083)))+(((r01)*(x10074)*(x10086)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x10078)*(x10083)))+(((IkReal(-1.00000000000000))*(x10067)*(x10071)*(x10084)))+(((IkReal(-1.00000000000000))*(x10083)*(x10094)))+(((IkReal(-1.00000000000000))*(x10070)*(x10082)*(x10085)))+(((x10077)*(x10088)))+(((IkReal(-1.00000000000000))*(x10067)*(x10071)*(x10079)))+(((IkReal(-1.00000000000000))*(x10070)*(x10073)*(x10083)))+(((IkReal(-1.00000000000000))*(x10075)*(x10086)))+(((IkReal(-1.00000000000000))*(x10071)*(x10093)))+(((x10080)*(x10086)))+(((IkReal(-1.00000000000000))*(x10072)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10070)*(x10082)*(x10088)))+(((IkReal(-1.00000000000000))*(x10068)*(x10071)*(x10079)))+(((IkReal(-1.00000000000000))*(x10078)*(x10086)))+(((IkReal(-1.00000000000000))*(x10070)*(x10073)*(x10086)))+(((IkReal(-1.00000000000000))*(r00)*(x10070)*(x10085)))+(((IkReal(-1.00000000000000))*(x10086)*(x10094)))+(((IkReal(-1.00000000000000))*(r10)*(x10070)*(x10083)))+(((IkReal(-1.00000000000000))*(cj1)*(sj3)))+(((r01)*(sj6)*(x10085)))+(((IkReal(-1.00000000000000))*(x10068)*(x10071)*(x10084)))+(((x10075)*(x10083)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10095=((cj1)*(r20)); +IkReal x10096=((cj5)*(sj6)); +IkReal x10097=((sj1)*(sj3)); +IkReal x10098=((r21)*(sj6)); +IkReal x10099=((r22)*(sj5)); +IkReal x10100=((IkReal(1.00000000000000))*(cj6)); +IkReal x10101=((cj5)*(r21)); +if( IKabs(((gconst28)*(((((x10097)*(x10098)))+(((cj1)*(cj6)*(x10101)))+(((x10095)*(x10096)))+(((IkReal(-1.00000000000000))*(r20)*(x10097)*(x10100)))+(((cj1)*(x10099))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst28)*(((((cj1)*(x10098)))+(((IkReal(-1.00000000000000))*(r20)*(x10096)*(x10097)))+(((IkReal(-1.00000000000000))*(x10097)*(x10100)*(x10101)))+(((IkReal(-1.00000000000000))*(x10097)*(x10099)))+(((IkReal(-1.00000000000000))*(x10095)*(x10100))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst28)*(((((x10097)*(x10098)))+(((cj1)*(cj6)*(x10101)))+(((x10095)*(x10096)))+(((IkReal(-1.00000000000000))*(r20)*(x10097)*(x10100)))+(((cj1)*(x10099)))))), ((gconst28)*(((((cj1)*(x10098)))+(((IkReal(-1.00000000000000))*(r20)*(x10096)*(x10097)))+(((IkReal(-1.00000000000000))*(x10097)*(x10100)*(x10101)))+(((IkReal(-1.00000000000000))*(x10097)*(x10099)))+(((IkReal(-1.00000000000000))*(x10095)*(x10100))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x10102=IKsin(j4); +IkReal x10103=IKcos(j4); +IkReal x10104=((r22)*(sj5)); +IkReal x10105=((IkReal(1.00000000000000))*(cj6)); +IkReal x10106=((IkReal(1.00000000000000))*(cj0)); +IkReal x10107=((IkReal(1.00000000000000))*(sj1)); +IkReal x10108=((cj5)*(r11)); +IkReal x10109=((cj5)*(cj6)); +IkReal x10110=((r11)*(sj6)); +IkReal x10111=((IkReal(1.00000000000000))*(sj6)); +IkReal x10112=((cj6)*(r00)); +IkReal x10113=((r12)*(sj5)); +IkReal x10114=((r02)*(sj5)); +IkReal x10115=((cj6)*(r10)); +IkReal x10116=((cj5)*(sj6)); +IkReal x10117=((cj5)*(r01)); +IkReal x10118=((sj0)*(x10102)); +IkReal x10119=((r00)*(x10116)); +IkReal x10120=((cj0)*(x10102)); +IkReal x10121=((sj0)*(x10103)); +IkReal x10122=((r20)*(x10103)); +IkReal x10123=((cj0)*(x10103)); +IkReal x10124=((r21)*(x10102)); +IkReal x10125=((r21)*(x10103)); +IkReal x10126=((r20)*(x10102)); +IkReal x10127=((x10103)*(x10113)); +IkReal x10128=((r01)*(sj6)*(x10103)); +IkReal x10129=((cj5)*(r10)*(x10111)); +evalcond[0]=((((x10102)*(x10104)))+(((x10116)*(x10126)))+(((sj6)*(x10125)))+(((x10109)*(x10124)))+(cj1)+(((IkReal(-1.00000000000000))*(x10105)*(x10122)))); +evalcond[1]=((((x10116)*(x10122)))+(((IkReal(-1.00000000000000))*(sj3)*(x10107)))+(((x10109)*(x10125)))+(((cj6)*(x10126)))+(((x10103)*(x10104)))+(((IkReal(-1.00000000000000))*(x10111)*(x10124)))); +evalcond[2]=((((r01)*(sj6)*(x10121)))+(((x10114)*(x10118)))+(((IkReal(-1.00000000000000))*(x10105)*(x10108)*(x10120)))+(((IkReal(-1.00000000000000))*(x10103)*(x10106)*(x10110)))+(((r01)*(x10109)*(x10118)))+(((x10115)*(x10123)))+(((IkReal(-1.00000000000000))*(r10)*(x10102)*(x10106)*(x10116)))+(((x10118)*(x10119)))+(((IkReal(-1.00000000000000))*(r00)*(x10105)*(x10121)))+(((IkReal(-1.00000000000000))*(x10102)*(x10106)*(x10113)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10105)*(x10108)*(x10123)))+(((x10110)*(x10120)))+(((IkReal(-1.00000000000000))*(r10)*(x10103)*(x10106)*(x10116)))+(((x10112)*(x10118)))+(((IkReal(-1.00000000000000))*(r01)*(x10111)*(x10118)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x10119)*(x10121)))+(((x10114)*(x10121)))+(((r01)*(x10109)*(x10121)))+(((IkReal(-1.00000000000000))*(x10106)*(x10127)))+(((IkReal(-1.00000000000000))*(r10)*(x10105)*(x10120)))); +evalcond[4]=((((x10112)*(x10123)))+(((IkReal(-1.00000000000000))*(x10113)*(x10118)))+(((IkReal(-1.00000000000000))*(x10106)*(x10128)))+(((IkReal(-1.00000000000000))*(x10102)*(x10106)*(x10119)))+(((x10115)*(x10121)))+(((IkReal(-1.00000000000000))*(x10105)*(x10117)*(x10120)))+(((IkReal(-1.00000000000000))*(x10107)))+(((IkReal(-1.00000000000000))*(x10118)*(x10129)))+(((IkReal(-1.00000000000000))*(x10110)*(x10121)))+(((IkReal(-1.00000000000000))*(x10105)*(x10108)*(x10118)))+(((IkReal(-1.00000000000000))*(x10102)*(x10106)*(x10114)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10103)*(x10106)*(x10119)))+(((IkReal(-1.00000000000000))*(r10)*(x10105)*(x10118)))+(((IkReal(-1.00000000000000))*(x10121)*(x10129)))+(((IkReal(-1.00000000000000))*(r00)*(x10105)*(x10120)))+(((IkReal(-1.00000000000000))*(x10105)*(x10108)*(x10121)))+(((r01)*(sj6)*(x10120)))+(((IkReal(-1.00000000000000))*(cj1)*(sj3)))+(((IkReal(-1.00000000000000))*(x10113)*(x10121)))+(((IkReal(-1.00000000000000))*(x10103)*(x10106)*(x10114)))+(((IkReal(-1.00000000000000))*(x10105)*(x10117)*(x10123)))+(((x10110)*(x10118)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10130=((IkReal(1.00000000000000))*(sj1)); +IkReal x10131=((cj0)*(cj1)); +IkReal x10132=((cj1)*(sj0)); +IkReal x10133=((cj5)*(sj6)); +IkReal x10134=((cj5)*(cj6)); +IkReal x10135=((sj6)*(x10131)); +IkReal x10136=((cj6)*(x10132)); +if( IKabs(((gconst27)*(((((cj6)*(r00)*(x10131)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(x10130)))+(((IkReal(-1.00000000000000))*(r01)*(x10135)))+(((IkReal(-1.00000000000000))*(r11)*(sj6)*(x10132)))+(((r10)*(x10136)))+(((r21)*(sj1)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst27)*(((((IkReal(-1.00000000000000))*(r20)*(x10130)*(x10133)))+(((r10)*(x10132)*(x10133)))+(((r00)*(x10131)*(x10133)))+(((r12)*(sj5)*(x10132)))+(((r02)*(sj5)*(x10131)))+(((r01)*(x10131)*(x10134)))+(((IkReal(-1.00000000000000))*(r21)*(x10130)*(x10134)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x10130)))+(((r11)*(x10132)*(x10134))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst27)*(((((cj6)*(r00)*(x10131)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(x10130)))+(((IkReal(-1.00000000000000))*(r01)*(x10135)))+(((IkReal(-1.00000000000000))*(r11)*(sj6)*(x10132)))+(((r10)*(x10136)))+(((r21)*(sj1)*(sj6)))))), ((gconst27)*(((((IkReal(-1.00000000000000))*(r20)*(x10130)*(x10133)))+(((r10)*(x10132)*(x10133)))+(((r00)*(x10131)*(x10133)))+(((r12)*(sj5)*(x10132)))+(((r02)*(sj5)*(x10131)))+(((r01)*(x10131)*(x10134)))+(((IkReal(-1.00000000000000))*(r21)*(x10130)*(x10134)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x10130)))+(((r11)*(x10132)*(x10134))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x10137=IKsin(j4); +IkReal x10138=IKcos(j4); +IkReal x10139=((r00)*(sj6)); +IkReal x10140=((cj6)*(r01)); +IkReal x10141=((IkReal(1.00000000000000))*(cj0)); +IkReal x10142=((IkReal(1.00000000000000))*(sj0)); +IkReal x10143=((r10)*(sj6)); +IkReal x10144=((sj5)*(x10137)); +IkReal x10145=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x10146=((cj5)*(x10137)); +IkReal x10147=((cj6)*(x10138)); +IkReal x10148=((sj0)*(x10146)); +IkReal x10149=((r01)*(sj6)*(x10138)); +IkReal x10150=((r11)*(sj6)*(x10138)); +evalcond[0]=((((r21)*(sj6)*(x10138)))+(((cj6)*(r21)*(x10146)))+(cj1)+(((r22)*(x10144)))+(((r20)*(sj6)*(x10146)))+(((IkReal(-1.00000000000000))*(r20)*(x10147)))); +evalcond[1]=((((x10139)*(x10148)))+(((IkReal(-1.00000000000000))*(x10141)*(x10150)))+(((cj0)*(r10)*(x10147)))+(((IkReal(-1.00000000000000))*(r00)*(x10142)*(x10147)))+(((IkReal(-1.00000000000000))*(x10141)*(x10143)*(x10146)))+(((r02)*(sj0)*(x10144)))+(((x10140)*(x10148)))+(((IkReal(-1.00000000000000))*(r12)*(x10141)*(x10144)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10141)*(x10146)))+(((sj0)*(x10149)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x10141)*(x10144)))+(((IkReal(-1.00000000000000))*(x10140)*(x10141)*(x10146)))+(((IkReal(-1.00000000000000))*(x10139)*(x10141)*(x10146)))+(((IkReal(-1.00000000000000))*(r12)*(x10142)*(x10144)))+(((IkReal(-1.00000000000000))*(x10141)*(x10149)))+(((cj0)*(r00)*(x10147)))+(((r10)*(sj0)*(x10147)))+(((IkReal(-1.00000000000000))*(x10142)*(x10143)*(x10146)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10142)*(x10146)))+(((IkReal(-1.00000000000000))*(x10142)*(x10150)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst30; +gconst30=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x10151=((IkReal(1.00000000000000))*(cj0)); +IkReal x10152=((cj4)*(sj6)); +IkReal x10153=((sj0)*(sj6)); +IkReal x10154=((cj5)*(sj4)); +IkReal x10155=((IkReal(0.374290000000000))*(sj5)); +IkReal x10156=((sj4)*(sj5)); +IkReal x10157=((cj0)*(cj6)); +IkReal x10158=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10159=((cj4)*(sj5)); +IkReal x10160=((cj5)*(sj0)); +IkReal x10161=((IkReal(0.374290000000000))*(r02)); +IkReal x10162=((r20)*(sj6)); +IkReal x10163=((cj6)*(r21)); +IkReal x10164=((IkReal(1.00000000000000))*(sj0)); +IkReal x10165=((cj0)*(sj6)); +IkReal x10166=((cj4)*(cj6)); +IkReal x10167=((IkReal(0.374290000000000))*(r12)); +IkReal x10168=((cj0)*(cj5)); +IkReal x10169=((cj6)*(sj5)); +IkReal x10170=((cj6)*(r01)); +IkReal x10171=((r00)*(sj6)); +IkReal x10172=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10173=((cj6)*(r11)); +IkReal x10174=((IkReal(1.00000000000000))*(r10)); +IkReal x10175=((r02)*(sj0)); +IkReal x10176=((cj6)*(sj4)); +IkReal x10177=((r12)*(x10164)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x10166)))+(((r22)*(x10156)))+(((r21)*(x10152)))+(((x10154)*(x10163)))+(((x10154)*(x10162)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x10155)*(x10163)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x10155)*(x10162)))+(((IkReal(-1.00000000000000))*(x10158)*(x10162)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x10172)))+(((IkReal(-1.00000000000000))*(x10158)*(x10163)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x10153)*(x10174)))+(((IkReal(-1.00000000000000))*(sj5)*(x10151)*(x10171)))+(((IkReal(-1.00000000000000))*(r11)*(x10164)*(x10169)))+(((r02)*(x10168)))+(((IkReal(-1.00000000000000))*(r01)*(x10151)*(x10169)))+(((r12)*(x10160)))); +evalcond[4]=((((r00)*(x10153)*(x10154)))+(((IkReal(-1.00000000000000))*(r11)*(x10151)*(x10152)))+(((r01)*(sj0)*(x10152)))+(((IkReal(-1.00000000000000))*(r00)*(x10164)*(x10166)))+(((IkReal(-1.00000000000000))*(r12)*(x10151)*(x10156)))+(((x10156)*(x10175)))+(((cj4)*(r10)*(x10157)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x10151)*(x10154)))+(((sj0)*(x10154)*(x10170)))+(((IkReal(-1.00000000000000))*(x10151)*(x10154)*(x10173)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x10151)*(x10154)*(x10170)))+(((r10)*(sj0)*(x10166)))+(((IkReal(-1.00000000000000))*(r02)*(x10151)*(x10156)))+(((IkReal(-1.00000000000000))*(r11)*(x10152)*(x10164)))+(((IkReal(-1.00000000000000))*(x10151)*(x10154)*(x10171)))+(((cj4)*(r00)*(x10157)))+(((IkReal(-1.00000000000000))*(r01)*(x10151)*(x10152)))+(((IkReal(-1.00000000000000))*(x10153)*(x10154)*(x10174)))+(((IkReal(-1.00000000000000))*(x10154)*(x10164)*(x10173)))+(((IkReal(-1.00000000000000))*(x10156)*(x10177)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r10)*(x10158)*(x10165)))+(((IkReal(-1.00000000000000))*(x10160)*(x10161)))+(((cj0)*(r12)*(x10172)))+(((IkReal(-1.00000000000000))*(x10172)*(x10175)))+(((IkReal(-1.00000000000000))*(r10)*(x10155)*(x10165)))+(((r11)*(x10157)*(x10158)))+(((IkReal(-1.00000000000000))*(r00)*(x10153)*(x10158)))+(((IkReal(-1.00000000000000))*(sj0)*(x10158)*(x10170)))+(((IkReal(-1.00000000000000))*(py)*(x10151)))+(((px)*(sj0)))+(((x10167)*(x10168)))+(((r00)*(x10153)*(x10155)))+(((sj0)*(x10155)*(x10170)))+(((IkReal(-1.00000000000000))*(r11)*(x10155)*(x10157)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10151)*(x10166)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10151)*(x10152)))+(((IkReal(-1.00000000000000))*(r00)*(x10151)*(x10176)))+(((IkReal(-1.00000000000000))*(r11)*(x10160)*(x10166)))+(((r01)*(sj4)*(x10165)))+(((r11)*(sj4)*(x10153)))+(((IkReal(-1.00000000000000))*(x10159)*(x10177)))+(((IkReal(-1.00000000000000))*(r02)*(x10151)*(x10159)))+(((IkReal(-1.00000000000000))*(r10)*(x10164)*(x10176)))+(((IkReal(-1.00000000000000))*(x10152)*(x10160)*(x10174)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r00)*(x10158)*(x10165)))+(((x10160)*(x10167)))+(((cj0)*(r02)*(x10172)))+(((IkReal(-1.00000000000000))*(r01)*(x10155)*(x10157)))+(((IkReal(-1.00000000000000))*(px)*(x10151)))+(((r12)*(sj0)*(x10172)))+(((IkReal(-1.00000000000000))*(py)*(x10164)))+(((IkReal(-1.00000000000000))*(r10)*(x10153)*(x10155)))+(((r10)*(x10153)*(x10158)))+(((r01)*(x10157)*(x10158)))+(((sj0)*(x10158)*(x10173)))+(((IkReal(-1.00000000000000))*(r00)*(x10155)*(x10165)))+(((x10161)*(x10168)))+(((IkReal(-1.00000000000000))*(sj0)*(x10155)*(x10173)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10178=((r20)*(sj6)); +IkReal x10179=((cj4)*(cj5)); +IkReal x10180=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10178)*(x10179)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10179)*(x10180))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x10178)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10180))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10178)*(x10179)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10179)*(x10180)))))+IKsqr(((((sj5)*(x10178)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10180)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10178)*(x10179)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10179)*(x10180)))), ((((sj5)*(x10178)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10180))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10181=IKsin(j3); +IkReal x10182=((sj0)*(sj5)); +IkReal x10183=((r00)*(sj6)); +IkReal x10184=((cj6)*(r01)); +IkReal x10185=((cj5)*(sj0)); +IkReal x10186=((cj0)*(cj5)); +IkReal x10187=((cj6)*(sj4)); +IkReal x10188=((sj4)*(sj6)); +IkReal x10189=((cj0)*(r11)); +IkReal x10190=((cj4)*(cj6)); +IkReal x10191=((cj4)*(sj6)); +IkReal x10192=((IkReal(1.00000000000000))*(cj0)); +IkReal x10193=((cj4)*(sj5)); +IkReal x10194=((sj5)*(sj6)); +IkReal x10195=((cj6)*(sj5)); +IkReal x10196=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((r20)*(x10194)))+(((IkReal(-1.00000000000000))*(x10196)))+(((r21)*(x10195)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x10188)))+(((cj5)*(r20)*(x10191)))+(((cj5)*(r21)*(x10190)))+(((r22)*(x10193)))+(((r20)*(x10187)))+(((IkReal(-1.00000000000000))*(x10181)))); +evalcond[2]=((((x10182)*(x10184)))+(((x10182)*(x10183)))+(((IkReal(-1.00000000000000))*(x10189)*(x10195)))+(x10181)+(((IkReal(-1.00000000000000))*(r02)*(x10185)))+(((IkReal(-1.00000000000000))*(r10)*(x10192)*(x10194)))+(((r12)*(x10186)))); +evalcond[3]=((((cj4)*(x10183)*(x10185)))+(((cj4)*(x10184)*(x10185)))+(((IkReal(-1.00000000000000))*(x10196)))+(((r00)*(sj0)*(x10187)))+(((IkReal(-1.00000000000000))*(r10)*(x10187)*(x10192)))+(((IkReal(-1.00000000000000))*(r11)*(x10186)*(x10190)))+(((x10188)*(x10189)))+(((cj4)*(r02)*(x10182)))+(((IkReal(-1.00000000000000))*(r12)*(x10192)*(x10193)))+(((IkReal(-1.00000000000000))*(r10)*(x10186)*(x10191)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x10188)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10197=((IkReal(1.00000000000000))*(cj0)); +IkReal x10198=((cj4)*(sj6)); +IkReal x10199=((sj0)*(sj6)); +IkReal x10200=((cj5)*(sj4)); +IkReal x10201=((IkReal(0.374290000000000))*(sj5)); +IkReal x10202=((sj4)*(sj5)); +IkReal x10203=((cj0)*(cj6)); +IkReal x10204=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10205=((cj4)*(sj5)); +IkReal x10206=((cj5)*(sj0)); +IkReal x10207=((IkReal(0.374290000000000))*(r02)); +IkReal x10208=((r20)*(sj6)); +IkReal x10209=((cj6)*(r21)); +IkReal x10210=((IkReal(1.00000000000000))*(sj0)); +IkReal x10211=((cj0)*(sj6)); +IkReal x10212=((cj4)*(cj6)); +IkReal x10213=((IkReal(0.374290000000000))*(r12)); +IkReal x10214=((cj0)*(cj5)); +IkReal x10215=((cj6)*(sj5)); +IkReal x10216=((cj6)*(r01)); +IkReal x10217=((r00)*(sj6)); +IkReal x10218=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10219=((cj6)*(r11)); +IkReal x10220=((IkReal(1.00000000000000))*(r10)); +IkReal x10221=((r02)*(sj0)); +IkReal x10222=((cj6)*(sj4)); +IkReal x10223=((r12)*(x10210)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x10200)*(x10209)))+(((r22)*(x10202)))+(((r21)*(x10198)))+(((IkReal(-1.00000000000000))*(r20)*(x10212)))+(((x10200)*(x10208)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x10204)*(x10209)))+(((x10201)*(x10209)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x10204)*(x10208)))+(((x10201)*(x10208)))+(((IkReal(-1.00000000000000))*(r22)*(x10218)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x10210)*(x10215)))+(((r02)*(x10214)))+(((r12)*(x10206)))+(((IkReal(-1.00000000000000))*(r01)*(x10197)*(x10215)))+(((IkReal(-1.00000000000000))*(sj5)*(x10199)*(x10220)))+(((IkReal(-1.00000000000000))*(sj5)*(x10197)*(x10217)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r00)*(x10210)*(x10212)))+(((r00)*(x10199)*(x10200)))+(((sj0)*(x10200)*(x10216)))+(((cj4)*(r10)*(x10203)))+(((x10202)*(x10221)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x10197)*(x10200)))+(((IkReal(-1.00000000000000))*(r12)*(x10197)*(x10202)))+(((IkReal(-1.00000000000000))*(r11)*(x10197)*(x10198)))+(((IkReal(-1.00000000000000))*(x10197)*(x10200)*(x10219)))+(((r01)*(sj0)*(x10198)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x10197)*(x10200)*(x10216)))+(((IkReal(-1.00000000000000))*(x10200)*(x10210)*(x10219)))+(((cj4)*(r00)*(x10203)))+(((IkReal(-1.00000000000000))*(x10202)*(x10223)))+(((IkReal(-1.00000000000000))*(r11)*(x10198)*(x10210)))+(((IkReal(-1.00000000000000))*(r01)*(x10197)*(x10198)))+(((IkReal(-1.00000000000000))*(x10199)*(x10200)*(x10220)))+(((r10)*(sj0)*(x10212)))+(((IkReal(-1.00000000000000))*(x10197)*(x10200)*(x10217)))+(((IkReal(-1.00000000000000))*(r02)*(x10197)*(x10202)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r11)*(x10203)*(x10204)))+(((r00)*(x10199)*(x10201)))+(((IkReal(-1.00000000000000))*(x10218)*(x10221)))+(((x10213)*(x10214)))+(((IkReal(-1.00000000000000))*(r10)*(x10201)*(x10211)))+(((IkReal(-1.00000000000000))*(r00)*(x10199)*(x10204)))+(((IkReal(-1.00000000000000))*(r11)*(x10201)*(x10203)))+(((cj0)*(r12)*(x10218)))+(((sj0)*(x10201)*(x10216)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x10197)))+(((IkReal(-1.00000000000000))*(x10206)*(x10207)))+(((IkReal(-1.00000000000000))*(sj0)*(x10204)*(x10216)))+(((r10)*(x10204)*(x10211)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x10205)*(x10223)))+(((IkReal(-1.00000000000000))*(r10)*(x10210)*(x10222)))+(((IkReal(-1.00000000000000))*(x10198)*(x10206)*(x10220)))+(((IkReal(-1.00000000000000))*(r00)*(x10197)*(x10222)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10197)*(x10198)))+(((r11)*(sj4)*(x10199)))+(((IkReal(-1.00000000000000))*(r11)*(x10206)*(x10212)))+(((r01)*(sj4)*(x10211)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10197)*(x10212)))+(((IkReal(-1.00000000000000))*(r02)*(x10197)*(x10205)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x10197)))+(((IkReal(-1.00000000000000))*(sj0)*(x10201)*(x10219)))+(((r01)*(x10203)*(x10204)))+(((sj0)*(x10204)*(x10219)))+(((IkReal(-1.00000000000000))*(r01)*(x10201)*(x10203)))+(((r10)*(x10199)*(x10204)))+(((x10206)*(x10213)))+(((x10207)*(x10214)))+(((IkReal(-1.00000000000000))*(r00)*(x10201)*(x10211)))+(((IkReal(-1.00000000000000))*(py)*(x10210)))+(((cj0)*(r02)*(x10218)))+(((IkReal(-1.00000000000000))*(r10)*(x10199)*(x10201)))+(((r12)*(sj0)*(x10218)))+(((r00)*(x10204)*(x10211)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10224=((IkReal(1.00000000000000))*(sj5)); +IkReal x10225=((cj6)*(r21)); +IkReal x10226=((r20)*(sj6)); +IkReal x10227=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x10225)*(x10227)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10224)))+(((IkReal(-1.00000000000000))*(x10226)*(x10227)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10224)*(x10226)))+(((IkReal(-1.00000000000000))*(x10224)*(x10225))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x10225)*(x10227)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10224)))+(((IkReal(-1.00000000000000))*(x10226)*(x10227)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10224)*(x10226)))+(((IkReal(-1.00000000000000))*(x10224)*(x10225)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x10225)*(x10227)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10224)))+(((IkReal(-1.00000000000000))*(x10226)*(x10227)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10224)*(x10226)))+(((IkReal(-1.00000000000000))*(x10224)*(x10225))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10228=IKsin(j3); +IkReal x10229=IKcos(j3); +IkReal x10230=((sj0)*(sj5)); +IkReal x10231=((r00)*(sj6)); +IkReal x10232=((cj6)*(r01)); +IkReal x10233=((cj0)*(cj5)); +IkReal x10234=((IkReal(1.00000000000000))*(cj5)); +IkReal x10235=((cj4)*(cj5)); +IkReal x10236=((cj6)*(sj4)); +IkReal x10237=((sj4)*(sj6)); +IkReal x10238=((cj0)*(r11)); +IkReal x10239=((IkReal(1.00000000000000))*(cj4)); +IkReal x10240=((cj6)*(r21)); +IkReal x10241=((r20)*(sj6)); +IkReal x10242=((cj0)*(sj5)); +IkReal x10243=((r10)*(sj6)); +evalcond[0]=((((sj5)*(x10240)))+(((sj5)*(x10241)))+(((IkReal(-1.00000000000000))*(r22)*(x10234)))+(x10229)); +evalcond[1]=((((x10235)*(x10240)))+(x10228)+(((IkReal(-1.00000000000000))*(r21)*(x10237)))+(((cj4)*(r22)*(sj5)))+(((x10235)*(x10241)))+(((r20)*(x10236)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x10234)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x10238)))+(((IkReal(-1.00000000000000))*(x10242)*(x10243)))+(x10228)+(((r12)*(x10233)))+(((x10230)*(x10232)))+(((x10230)*(x10231)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10233)*(x10239)))+(((r00)*(sj0)*(x10236)))+(((IkReal(-1.00000000000000))*(x10229)))+(((x10237)*(x10238)))+(((cj4)*(r02)*(x10230)))+(((IkReal(-1.00000000000000))*(r12)*(x10239)*(x10242)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x10237)))+(((sj0)*(x10232)*(x10235)))+(((sj0)*(x10231)*(x10235)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x10236)))+(((IkReal(-1.00000000000000))*(x10233)*(x10239)*(x10243)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10244=((IkReal(1.00000000000000))*(cj0)); +IkReal x10245=((cj4)*(sj6)); +IkReal x10246=((sj0)*(sj4)); +IkReal x10247=((cj5)*(sj6)); +IkReal x10248=((sj4)*(sj5)); +IkReal x10249=((r12)*(sj5)); +IkReal x10250=((IkReal(0.374290000000000))*(cj5)); +IkReal x10251=((r02)*(sj0)); +IkReal x10252=((r20)*(sj4)); +IkReal x10253=((IkReal(1.00000000000000))*(sj0)); +IkReal x10254=((IkReal(1.00000000000000))*(cj5)); +IkReal x10255=((cj0)*(r10)); +IkReal x10256=((cj4)*(cj6)); +IkReal x10257=((r00)*(sj0)); +IkReal x10258=((cj6)*(r21)); +IkReal x10259=((IkReal(0.374290000000000))*(sj5)); +IkReal x10260=((cj0)*(r00)); +IkReal x10261=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10262=((cj0)*(r02)); +IkReal x10263=((cj5)*(sj4)); +IkReal x10264=((cj6)*(r01)); +IkReal x10265=((cj6)*(r11)); +IkReal x10266=((r01)*(sj0)); +IkReal x10267=((r10)*(sj0)); +IkReal x10268=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x10269=((sj6)*(x10259)); +IkReal x10270=((cj0)*(cj6)*(x10259)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x10254)))+(((sj5)*(x10258)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x10256)))+(((x10247)*(x10252)))+(((x10258)*(x10263)))+(((r22)*(x10248)))+(((r21)*(x10245)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x10250)))+(((r20)*(x10269)))+(((x10258)*(x10259)))+(((IkReal(-0.0100000000000000))*(r20)*(x10247)))+(pz)+(((IkReal(-0.0100000000000000))*(cj5)*(x10258)))+(((IkReal(-1.00000000000000))*(r22)*(x10261)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x10245)))+(((cj5)*(r21)*(x10256)))+(((cj6)*(x10252)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10244)*(x10263)*(x10265)))+(((IkReal(-1.00000000000000))*(r11)*(x10244)*(x10245)))+(((cj5)*(x10246)*(x10264)))+(((r02)*(sj5)*(x10246)))+(((x10245)*(x10266)))+(((IkReal(-1.00000000000000))*(r12)*(x10244)*(x10248)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x10244)*(x10247)))+(((IkReal(-1.00000000000000))*(r00)*(x10253)*(x10256)))+(((r00)*(x10246)*(x10247)))+(((x10255)*(x10256)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x10244)*(x10263)*(x10264)))+(((IkReal(-1.00000000000000))*(r02)*(x10244)*(x10248)))+(((IkReal(-1.00000000000000))*(r10)*(x10246)*(x10247)))+(((IkReal(-1.00000000000000))*(x10246)*(x10249)))+(((IkReal(-1.00000000000000))*(x10246)*(x10254)*(x10265)))+(((IkReal(-1.00000000000000))*(r11)*(x10245)*(x10253)))+(((x10256)*(x10260)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x10244)*(x10247)))+(((IkReal(-1.00000000000000))*(r01)*(x10244)*(x10245)))+(((x10256)*(x10267)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((sj0)*(x10259)*(x10264)))+(((cj0)*(r12)*(x10250)))+(((IkReal(-0.0100000000000000))*(x10247)*(x10257)))+(((IkReal(-1.00000000000000))*(x10251)*(x10261)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10265)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x10264)))+(((IkReal(0.0100000000000000))*(x10247)*(x10255)))+(((IkReal(-1.00000000000000))*(x10255)*(x10269)))+(((IkReal(-1.00000000000000))*(py)*(x10244)))+(((IkReal(-1.00000000000000))*(cj0)*(x10259)*(x10265)))+(((px)*(sj0)))+(((x10257)*(x10269)))+(((IkReal(-1.00000000000000))*(x10250)*(x10251)))+(((IkReal(0.0100000000000000))*(cj0)*(x10249)))); +evalcond[8]=((IkReal(0.433420000000000))+(((r12)*(sj0)*(x10250)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x10265)))+(((IkReal(-1.00000000000000))*(py)*(x10253)))+(((IkReal(-1.00000000000000))*(cj0)*(x10259)*(x10264)))+(((IkReal(-1.00000000000000))*(px)*(x10244)))+(((IkReal(-1.00000000000000))*(x10260)*(x10269)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10264)))+(((x10261)*(x10262)))+(((IkReal(-1.00000000000000))*(sj0)*(x10259)*(x10265)))+(((IkReal(0.0100000000000000))*(sj0)*(x10249)))+(((IkReal(0.0100000000000000))*(x10247)*(x10267)))+(((x10250)*(x10262)))+(((IkReal(-1.00000000000000))*(x10267)*(x10269)))+(((IkReal(0.0100000000000000))*(x10247)*(x10260)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10271=((cj5)*(r02)); +IkReal x10272=((cj0)*(sj5)); +IkReal x10273=((r10)*(sj6)); +IkReal x10274=((IkReal(1.00000000000000))*(cj6)); +IkReal x10275=((sj0)*(sj5)); +IkReal x10276=((cj5)*(r12)); +IkReal x10277=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(r01)*(x10274)*(x10275)))+(((cj6)*(r11)*(x10272)))+(((x10272)*(x10273)))+(((IkReal(-1.00000000000000))*(x10275)*(x10277)))+(((IkReal(-1.00000000000000))*(cj0)*(x10276)))+(((sj0)*(x10271))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x10272)*(x10277)))+(((IkReal(-1.00000000000000))*(r11)*(x10274)*(x10275)))+(((IkReal(-1.00000000000000))*(r01)*(x10272)*(x10274)))+(((IkReal(-1.00000000000000))*(x10273)*(x10275)))+(((cj0)*(x10271)))+(((sj0)*(x10276))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x10274)*(x10275)))+(((cj6)*(r11)*(x10272)))+(((x10272)*(x10273)))+(((IkReal(-1.00000000000000))*(x10275)*(x10277)))+(((IkReal(-1.00000000000000))*(cj0)*(x10276)))+(((sj0)*(x10271)))))+IKsqr(((((IkReal(-1.00000000000000))*(x10272)*(x10277)))+(((IkReal(-1.00000000000000))*(r11)*(x10274)*(x10275)))+(((IkReal(-1.00000000000000))*(r01)*(x10272)*(x10274)))+(((IkReal(-1.00000000000000))*(x10273)*(x10275)))+(((cj0)*(x10271)))+(((sj0)*(x10276)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r01)*(x10274)*(x10275)))+(((cj6)*(r11)*(x10272)))+(((x10272)*(x10273)))+(((IkReal(-1.00000000000000))*(x10275)*(x10277)))+(((IkReal(-1.00000000000000))*(cj0)*(x10276)))+(((sj0)*(x10271)))), ((((IkReal(-1.00000000000000))*(x10272)*(x10277)))+(((IkReal(-1.00000000000000))*(r11)*(x10274)*(x10275)))+(((IkReal(-1.00000000000000))*(r01)*(x10272)*(x10274)))+(((IkReal(-1.00000000000000))*(x10273)*(x10275)))+(((cj0)*(x10271)))+(((sj0)*(x10276))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10278=IKsin(j3); +IkReal x10279=((sj0)*(sj5)); +IkReal x10280=((r00)*(sj6)); +IkReal x10281=((IkReal(1.00000000000000))*(cj4)); +IkReal x10282=((cj6)*(sj0)); +IkReal x10283=((r00)*(sj4)); +IkReal x10284=((cj0)*(cj5)); +IkReal x10285=((cj6)*(r01)); +IkReal x10286=((cj5)*(sj0)); +IkReal x10287=((cj0)*(sj5)); +IkReal x10288=((cj6)*(r11)); +IkReal x10289=((r10)*(sj6)); +IkReal x10290=((r10)*(sj4)); +IkReal x10291=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x10292=((cj0)*(sj4)*(sj6)); +IkReal x10293=((sj0)*(sj4)*(sj6)); +IkReal x10294=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((x10278)+(((r12)*(x10284)))+(((x10279)*(x10280)))+(((x10279)*(x10285)))+(((IkReal(-1.00000000000000))*(x10287)*(x10288)))+(((IkReal(-1.00000000000000))*(r02)*(x10286)))+(((IkReal(-1.00000000000000))*(x10287)*(x10289)))); +evalcond[1]=((((r12)*(x10286)))+(((IkReal(-1.00000000000000))*(x10279)*(x10289)))+(((r02)*(x10284)))+(((IkReal(-1.00000000000000))*(x10291)))+(((IkReal(-1.00000000000000))*(x10285)*(x10287)))+(((IkReal(-1.00000000000000))*(x10280)*(x10287)))+(((IkReal(-1.00000000000000))*(x10279)*(x10288)))); +evalcond[2]=((((cj4)*(r02)*(x10279)))+(((IkReal(-1.00000000000000))*(x10290)*(x10294)))+(((IkReal(-1.00000000000000))*(x10291)))+(((IkReal(-1.00000000000000))*(r12)*(x10281)*(x10287)))+(((IkReal(-1.00000000000000))*(x10281)*(x10284)*(x10288)))+(((IkReal(-1.00000000000000))*(r01)*(x10293)))+(((r11)*(x10292)))+(((cj4)*(cj5)*(r01)*(x10282)))+(((IkReal(-1.00000000000000))*(x10281)*(x10284)*(x10289)))+(((x10282)*(x10283)))+(((cj4)*(x10280)*(x10286)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10281)*(x10284)*(x10285)))+(((IkReal(-1.00000000000000))*(r12)*(x10279)*(x10281)))+(((IkReal(-1.00000000000000))*(x10281)*(x10286)*(x10289)))+(((r01)*(x10292)))+(((IkReal(-1.00000000000000))*(x10283)*(x10294)))+(((IkReal(-1.00000000000000))*(r02)*(x10281)*(x10287)))+(((IkReal(-1.00000000000000))*(x10282)*(x10290)))+(((IkReal(-1.00000000000000))*(x10280)*(x10281)*(x10284)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x10281)*(x10282)))+(((r11)*(x10293)))+(((IkReal(-1.00000000000000))*(x10278)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10295=((IkReal(1.00000000000000))*(cj0)); +IkReal x10296=((cj4)*(sj6)); +IkReal x10297=((sj0)*(sj4)); +IkReal x10298=((cj5)*(sj6)); +IkReal x10299=((sj4)*(sj5)); +IkReal x10300=((r12)*(sj5)); +IkReal x10301=((IkReal(0.374290000000000))*(cj5)); +IkReal x10302=((r02)*(sj0)); +IkReal x10303=((r20)*(sj4)); +IkReal x10304=((IkReal(1.00000000000000))*(sj0)); +IkReal x10305=((IkReal(1.00000000000000))*(cj5)); +IkReal x10306=((cj0)*(r10)); +IkReal x10307=((cj4)*(cj6)); +IkReal x10308=((r00)*(sj0)); +IkReal x10309=((cj6)*(r21)); +IkReal x10310=((IkReal(0.374290000000000))*(sj5)); +IkReal x10311=((cj0)*(r00)); +IkReal x10312=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10313=((cj0)*(r02)); +IkReal x10314=((cj5)*(sj4)); +IkReal x10315=((cj6)*(r01)); +IkReal x10316=((cj6)*(r11)); +IkReal x10317=((r01)*(sj0)); +IkReal x10318=((r10)*(sj0)); +IkReal x10319=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x10320=((sj6)*(x10310)); +IkReal x10321=((cj0)*(cj6)*(x10310)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x10305)))+(((sj5)*(x10309)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r21)*(x10296)))+(((x10298)*(x10303)))+(((x10309)*(x10314)))+(((IkReal(-1.00000000000000))*(r20)*(x10307)))+(((r22)*(x10299)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x10312)))+(((r20)*(x10320)))+(((IkReal(-0.0100000000000000))*(cj5)*(x10309)))+(((IkReal(-0.0100000000000000))*(r20)*(x10298)))+(((x10309)*(x10310)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x10301)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x10307)))+(((cj5)*(r20)*(x10296)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x10303)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r11)*(x10295)*(x10296)))+(((cj5)*(x10297)*(x10315)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x10295)*(x10298)))+(((x10296)*(x10317)))+(((r02)*(sj5)*(x10297)))+(((IkReal(-1.00000000000000))*(r12)*(x10295)*(x10299)))+(((r00)*(x10297)*(x10298)))+(((x10306)*(x10307)))+(((IkReal(-1.00000000000000))*(r00)*(x10304)*(x10307)))+(((IkReal(-1.00000000000000))*(x10295)*(x10314)*(x10316)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x10297)*(x10305)*(x10316)))+(((IkReal(-1.00000000000000))*(x10295)*(x10314)*(x10315)))+(((IkReal(-1.00000000000000))*(r02)*(x10295)*(x10299)))+(((x10307)*(x10311)))+(((IkReal(-1.00000000000000))*(r11)*(x10296)*(x10304)))+(((IkReal(-1.00000000000000))*(r01)*(x10295)*(x10296)))+(((x10307)*(x10318)))+(((IkReal(-1.00000000000000))*(x10297)*(x10300)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x10295)*(x10298)))+(((IkReal(-1.00000000000000))*(r10)*(x10297)*(x10298)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(0.0100000000000000))*(x10298)*(x10306)))+(((IkReal(-1.00000000000000))*(cj0)*(x10310)*(x10316)))+(((IkReal(-1.00000000000000))*(x10306)*(x10320)))+(((cj0)*(r12)*(x10301)))+(((IkReal(-1.00000000000000))*(x10301)*(x10302)))+(((IkReal(-1.00000000000000))*(x10302)*(x10312)))+(((x10308)*(x10320)))+(((IkReal(-0.0100000000000000))*(x10298)*(x10308)))+(((IkReal(-1.00000000000000))*(py)*(x10295)))+(((sj0)*(x10310)*(x10315)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x10315)))+(((IkReal(0.0100000000000000))*(cj0)*(x10300)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10316)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(px)*(x10295)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10315)))+(((IkReal(0.0100000000000000))*(x10298)*(x10311)))+(((IkReal(0.0100000000000000))*(sj0)*(x10300)))+(((IkReal(0.0100000000000000))*(x10298)*(x10318)))+(((IkReal(-1.00000000000000))*(py)*(x10304)))+(((IkReal(-1.00000000000000))*(x10318)*(x10320)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x10316)))+(((r12)*(sj0)*(x10301)))+(((IkReal(-1.00000000000000))*(x10311)*(x10320)))+(((IkReal(-1.00000000000000))*(cj0)*(x10310)*(x10315)))+(((x10312)*(x10313)))+(((IkReal(-1.00000000000000))*(sj0)*(x10310)*(x10316)))+(((x10301)*(x10313)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10322=((IkReal(1.00000000000000))*(cj5)); +IkReal x10323=((r10)*(sj5)*(sj6)); +IkReal x10324=((cj6)*(sj0)*(sj5)); +IkReal x10325=((r00)*(sj5)*(sj6)); +IkReal x10326=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10322)))+(((r11)*(x10326)))+(((cj0)*(x10323)))+(((IkReal(-1.00000000000000))*(sj0)*(x10325)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x10324))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj0)*(x10323)))+(((cj0)*(x10325)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10322)))+(((r11)*(x10324)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10322)))+(((r01)*(x10326))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10322)))+(((r11)*(x10326)))+(((cj0)*(x10323)))+(((IkReal(-1.00000000000000))*(sj0)*(x10325)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x10324)))))+IKsqr(((((sj0)*(x10323)))+(((cj0)*(x10325)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10322)))+(((r11)*(x10324)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10322)))+(((r01)*(x10326)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10322)))+(((r11)*(x10326)))+(((cj0)*(x10323)))+(((IkReal(-1.00000000000000))*(sj0)*(x10325)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x10324)))), ((((sj0)*(x10323)))+(((cj0)*(x10325)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10322)))+(((r11)*(x10324)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10322)))+(((r01)*(x10326))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10327=IKcos(j3); +IkReal x10328=IKsin(j3); +IkReal x10329=((sj0)*(sj5)); +IkReal x10330=((r00)*(sj6)); +IkReal x10331=((IkReal(1.00000000000000))*(cj4)); +IkReal x10332=((cj6)*(sj0)); +IkReal x10333=((r00)*(sj4)); +IkReal x10334=((cj0)*(cj5)); +IkReal x10335=((cj6)*(r01)); +IkReal x10336=((cj5)*(sj0)); +IkReal x10337=((cj0)*(sj5)); +IkReal x10338=((cj6)*(r11)); +IkReal x10339=((r10)*(sj6)); +IkReal x10340=((r10)*(sj4)); +IkReal x10341=((cj0)*(sj4)*(sj6)); +IkReal x10342=((sj0)*(sj4)*(sj6)); +IkReal x10343=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((x10328)+(((x10329)*(x10330)))+(((IkReal(-1.00000000000000))*(r02)*(x10336)))+(((IkReal(-1.00000000000000))*(x10337)*(x10339)))+(((r12)*(x10334)))+(((IkReal(-1.00000000000000))*(x10337)*(x10338)))+(((x10329)*(x10335)))); +evalcond[1]=((((r12)*(x10336)))+(x10327)+(((IkReal(-1.00000000000000))*(x10330)*(x10337)))+(((IkReal(-1.00000000000000))*(x10329)*(x10338)))+(((IkReal(-1.00000000000000))*(x10335)*(x10337)))+(((r02)*(x10334)))+(((IkReal(-1.00000000000000))*(x10329)*(x10339)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10331)*(x10334)*(x10339)))+(((IkReal(-1.00000000000000))*(x10340)*(x10343)))+(((IkReal(-1.00000000000000))*(x10331)*(x10334)*(x10338)))+(((x10332)*(x10333)))+(((IkReal(-1.00000000000000))*(r12)*(x10331)*(x10337)))+(((IkReal(-1.00000000000000))*(r01)*(x10342)))+(((cj4)*(r02)*(x10329)))+(((cj4)*(x10330)*(x10336)))+(((IkReal(-1.00000000000000))*(x10327)))+(((cj4)*(cj5)*(r01)*(x10332)))+(((r11)*(x10341)))); +evalcond[3]=((((r11)*(x10342)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x10331)*(x10332)))+(x10328)+(((IkReal(-1.00000000000000))*(x10330)*(x10331)*(x10334)))+(((IkReal(-1.00000000000000))*(r12)*(x10329)*(x10331)))+(((IkReal(-1.00000000000000))*(r02)*(x10331)*(x10337)))+(((r01)*(x10341)))+(((IkReal(-1.00000000000000))*(x10331)*(x10334)*(x10335)))+(((IkReal(-1.00000000000000))*(x10331)*(x10336)*(x10339)))+(((IkReal(-1.00000000000000))*(x10333)*(x10343)))+(((IkReal(-1.00000000000000))*(x10332)*(x10340)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10344=((cj5)*(r02)); +IkReal x10345=((cj0)*(sj5)); +IkReal x10346=((r10)*(sj6)); +IkReal x10347=((IkReal(1.00000000000000))*(cj6)); +IkReal x10348=((sj0)*(sj5)); +IkReal x10349=((cj5)*(r12)); +IkReal x10350=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x10349)))+(((IkReal(-1.00000000000000))*(x10348)*(x10350)))+(((x10345)*(x10346)))+(((cj6)*(r11)*(x10345)))+(((sj0)*(x10344)))+(((IkReal(-1.00000000000000))*(r01)*(x10347)*(x10348))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x10349)))+(((IkReal(-1.00000000000000))*(r11)*(x10347)*(x10348)))+(((cj0)*(x10344)))+(((IkReal(-1.00000000000000))*(x10345)*(x10350)))+(((IkReal(-1.00000000000000))*(r01)*(x10345)*(x10347)))+(((IkReal(-1.00000000000000))*(x10346)*(x10348))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x10349)))+(((IkReal(-1.00000000000000))*(x10348)*(x10350)))+(((x10345)*(x10346)))+(((cj6)*(r11)*(x10345)))+(((sj0)*(x10344)))+(((IkReal(-1.00000000000000))*(r01)*(x10347)*(x10348)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x10349)))+(((IkReal(-1.00000000000000))*(r11)*(x10347)*(x10348)))+(((cj0)*(x10344)))+(((IkReal(-1.00000000000000))*(x10345)*(x10350)))+(((IkReal(-1.00000000000000))*(r01)*(x10345)*(x10347)))+(((IkReal(-1.00000000000000))*(x10346)*(x10348)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x10349)))+(((IkReal(-1.00000000000000))*(x10348)*(x10350)))+(((x10345)*(x10346)))+(((cj6)*(r11)*(x10345)))+(((sj0)*(x10344)))+(((IkReal(-1.00000000000000))*(r01)*(x10347)*(x10348)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x10349)))+(((IkReal(-1.00000000000000))*(r11)*(x10347)*(x10348)))+(((cj0)*(x10344)))+(((IkReal(-1.00000000000000))*(x10345)*(x10350)))+(((IkReal(-1.00000000000000))*(r01)*(x10345)*(x10347)))+(((IkReal(-1.00000000000000))*(x10346)*(x10348))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10351=IKsin(j3); +IkReal x10352=IKcos(j3); +IkReal x10353=((sj0)*(sj5)); +IkReal x10354=((r00)*(sj6)); +IkReal x10355=((IkReal(1.00000000000000))*(cj4)); +IkReal x10356=((cj6)*(r01)); +IkReal x10357=((cj0)*(cj5)); +IkReal x10358=((cj5)*(sj0)); +IkReal x10359=((cj6)*(r11)); +IkReal x10360=((cj0)*(sj5)); +IkReal x10361=((IkReal(1.00000000000000))*(cj1)); +IkReal x10362=((cj6)*(sj4)); +IkReal x10363=((IkReal(1.00000000000000))*(sj1)); +IkReal x10364=((cj4)*(cj5)); +IkReal x10365=((cj6)*(r21)); +IkReal x10366=((r20)*(sj6)); +IkReal x10367=((r10)*(sj6)); +IkReal x10368=((IkReal(1.00000000000000))*(cj0)); +IkReal x10369=((cj0)*(sj4)*(sj6)); +IkReal x10370=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x10365)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10366)))+(((IkReal(-1.00000000000000))*(x10352)*(x10363)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x10351)*(x10363)))+(((x10364)*(x10365)))+(((x10364)*(x10366)))+(((r20)*(x10362)))); +evalcond[2]=((((r12)*(x10357)))+(((x10353)*(x10356)))+(((IkReal(-1.00000000000000))*(x10359)*(x10360)))+(x10351)+(((x10353)*(x10354)))+(((IkReal(-1.00000000000000))*(x10360)*(x10367)))+(((IkReal(-1.00000000000000))*(r02)*(x10358)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10352)*(x10361)))+(((r12)*(x10358)))+(((IkReal(-1.00000000000000))*(x10353)*(x10359)))+(((IkReal(-1.00000000000000))*(x10354)*(x10360)))+(((r02)*(x10357)))+(((IkReal(-1.00000000000000))*(x10353)*(x10367)))+(((IkReal(-1.00000000000000))*(x10356)*(x10360)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x10355)*(x10357)*(x10367)))+(((IkReal(-1.00000000000000))*(x10355)*(x10357)*(x10359)))+(((r11)*(x10369)))+(((cj4)*(r02)*(x10353)))+(((cj4)*(x10354)*(x10358)))+(((cj4)*(x10356)*(x10358)))+(((r00)*(sj0)*(x10362)))+(((IkReal(-1.00000000000000))*(r10)*(x10362)*(x10368)))+(((IkReal(-1.00000000000000))*(r01)*(x10370)))+(((IkReal(-1.00000000000000))*(r12)*(x10355)*(x10360)))+(((IkReal(-1.00000000000000))*(x10352)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10354)*(x10355)*(x10357)))+(((IkReal(-1.00000000000000))*(r02)*(x10355)*(x10360)))+(((IkReal(-1.00000000000000))*(x10351)*(x10361)))+(((IkReal(-1.00000000000000))*(r12)*(x10353)*(x10355)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10362)))+(((IkReal(-1.00000000000000))*(x10355)*(x10356)*(x10357)))+(((IkReal(-1.00000000000000))*(x10355)*(x10358)*(x10367)))+(((r01)*(x10369)))+(((IkReal(-1.00000000000000))*(r00)*(x10362)*(x10368)))+(((r11)*(x10370)))+(((IkReal(-1.00000000000000))*(x10355)*(x10358)*(x10359)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10371=((sj5)*(sj6)); +IkReal x10372=((IkReal(1.00000000000000))*(sj0)); +IkReal x10373=((cj6)*(sj5)); +IkReal x10374=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r11)*(x10373)))+(((IkReal(-1.00000000000000))*(r01)*(x10372)*(x10373)))+(((cj0)*(r10)*(x10371)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x10371)*(x10372)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10374))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10374)))+(((r20)*(x10371)))+(((r21)*(x10373))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r11)*(x10373)))+(((IkReal(-1.00000000000000))*(r01)*(x10372)*(x10373)))+(((cj0)*(r10)*(x10371)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x10371)*(x10372)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10374)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10374)))+(((r20)*(x10371)))+(((r21)*(x10373)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r11)*(x10373)))+(((IkReal(-1.00000000000000))*(r01)*(x10372)*(x10373)))+(((cj0)*(r10)*(x10371)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x10371)*(x10372)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10374)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10374)))+(((r20)*(x10371)))+(((r21)*(x10373))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10375=IKsin(j3); +IkReal x10376=IKcos(j3); +IkReal x10377=((sj0)*(sj5)); +IkReal x10378=((r00)*(sj6)); +IkReal x10379=((IkReal(1.00000000000000))*(cj4)); +IkReal x10380=((cj6)*(r01)); +IkReal x10381=((cj0)*(cj5)); +IkReal x10382=((cj5)*(sj0)); +IkReal x10383=((cj6)*(r11)); +IkReal x10384=((cj0)*(sj5)); +IkReal x10385=((IkReal(1.00000000000000))*(cj1)); +IkReal x10386=((cj6)*(sj4)); +IkReal x10387=((IkReal(1.00000000000000))*(sj1)); +IkReal x10388=((cj4)*(cj5)); +IkReal x10389=((cj6)*(r21)); +IkReal x10390=((r20)*(sj6)); +IkReal x10391=((r10)*(sj6)); +IkReal x10392=((IkReal(1.00000000000000))*(cj0)); +IkReal x10393=((cj0)*(sj4)*(sj6)); +IkReal x10394=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x10390)))+(((IkReal(-1.00000000000000))*(x10376)*(x10387)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10389)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10388)*(x10390)))+(((r20)*(x10386)))+(((cj4)*(r22)*(sj5)))+(((x10388)*(x10389)))+(((IkReal(-1.00000000000000))*(x10375)*(x10387)))); +evalcond[2]=((((x10377)*(x10378)))+(((IkReal(-1.00000000000000))*(x10384)*(x10391)))+(((IkReal(-1.00000000000000))*(x10383)*(x10384)))+(((IkReal(-1.00000000000000))*(r02)*(x10382)))+(x10375)+(((r12)*(x10381)))+(((x10377)*(x10380)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10377)*(x10391)))+(((IkReal(-1.00000000000000))*(x10378)*(x10384)))+(((IkReal(-1.00000000000000))*(x10376)*(x10385)))+(((IkReal(-1.00000000000000))*(x10377)*(x10383)))+(((r12)*(x10382)))+(((IkReal(-1.00000000000000))*(x10380)*(x10384)))+(((r02)*(x10381)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x10379)*(x10381)*(x10391)))+(((cj4)*(x10380)*(x10382)))+(((r00)*(sj0)*(x10386)))+(((cj4)*(x10378)*(x10382)))+(((cj4)*(r02)*(x10377)))+(((IkReal(-1.00000000000000))*(r12)*(x10379)*(x10384)))+(((IkReal(-1.00000000000000))*(r10)*(x10386)*(x10392)))+(((IkReal(-1.00000000000000))*(x10379)*(x10381)*(x10383)))+(((IkReal(-1.00000000000000))*(r01)*(x10394)))+(((r11)*(x10393)))+(((IkReal(-1.00000000000000))*(x10376)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10379)*(x10380)*(x10381)))+(((IkReal(-1.00000000000000))*(x10379)*(x10382)*(x10383)))+(((IkReal(-1.00000000000000))*(x10378)*(x10379)*(x10381)))+(((IkReal(-1.00000000000000))*(x10375)*(x10385)))+(((IkReal(-1.00000000000000))*(r12)*(x10377)*(x10379)))+(((r01)*(x10393)))+(((r11)*(x10394)))+(((IkReal(-1.00000000000000))*(r02)*(x10379)*(x10384)))+(((IkReal(-1.00000000000000))*(x10379)*(x10382)*(x10391)))+(((IkReal(-1.00000000000000))*(r00)*(x10386)*(x10392)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10386)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10395=((r20)*(sj6)); +IkReal x10396=((cj4)*(cj5)); +IkReal x10397=((cj6)*(r21)); +if( IKabs(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10395)*(x10396)))+(((x10396)*(x10397))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst30)*(((((sj5)*(x10395)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10397))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10395)*(x10396)))+(((x10396)*(x10397)))))), ((gconst30)*(((((sj5)*(x10395)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10397))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10398=IKsin(j3); +IkReal x10399=IKcos(j3); +IkReal x10400=((sj0)*(sj5)); +IkReal x10401=((r00)*(sj6)); +IkReal x10402=((IkReal(1.00000000000000))*(cj4)); +IkReal x10403=((cj6)*(r01)); +IkReal x10404=((cj0)*(cj5)); +IkReal x10405=((cj5)*(sj0)); +IkReal x10406=((cj6)*(r11)); +IkReal x10407=((cj0)*(sj5)); +IkReal x10408=((IkReal(1.00000000000000))*(cj1)); +IkReal x10409=((cj6)*(sj4)); +IkReal x10410=((IkReal(1.00000000000000))*(sj1)); +IkReal x10411=((cj4)*(cj5)); +IkReal x10412=((cj6)*(r21)); +IkReal x10413=((r20)*(sj6)); +IkReal x10414=((r10)*(sj6)); +IkReal x10415=((IkReal(1.00000000000000))*(cj0)); +IkReal x10416=((cj0)*(sj4)*(sj6)); +IkReal x10417=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x10412)))+(((sj5)*(x10413)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10399)*(x10410)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10398)*(x10410)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x10409)))+(((x10411)*(x10412)))+(((cj4)*(r22)*(sj5)))+(((x10411)*(x10413)))); +evalcond[2]=((((x10400)*(x10403)))+(((IkReal(-1.00000000000000))*(x10407)*(x10414)))+(((r12)*(x10404)))+(((IkReal(-1.00000000000000))*(r02)*(x10405)))+(((x10400)*(x10401)))+(((IkReal(-1.00000000000000))*(x10406)*(x10407)))+(x10398)); +evalcond[3]=((((r12)*(x10405)))+(((r02)*(x10404)))+(((IkReal(-1.00000000000000))*(x10400)*(x10406)))+(((IkReal(-1.00000000000000))*(x10403)*(x10407)))+(((IkReal(-1.00000000000000))*(x10399)*(x10408)))+(((IkReal(-1.00000000000000))*(x10401)*(x10407)))+(((IkReal(-1.00000000000000))*(x10400)*(x10414)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x10409)*(x10415)))+(((r00)*(sj0)*(x10409)))+(((IkReal(-1.00000000000000))*(x10402)*(x10404)*(x10406)))+(((r11)*(x10416)))+(((IkReal(-1.00000000000000))*(x10399)))+(((cj4)*(x10403)*(x10405)))+(((IkReal(-1.00000000000000))*(r01)*(x10417)))+(((IkReal(-1.00000000000000))*(r12)*(x10402)*(x10407)))+(((cj4)*(x10401)*(x10405)))+(((cj4)*(r02)*(x10400)))+(((IkReal(-1.00000000000000))*(x10402)*(x10404)*(x10414)))); +evalcond[5]=((((r11)*(x10417)))+(((IkReal(-1.00000000000000))*(x10401)*(x10402)*(x10404)))+(((IkReal(-1.00000000000000))*(x10402)*(x10405)*(x10414)))+(((IkReal(-1.00000000000000))*(x10402)*(x10405)*(x10406)))+(((IkReal(-1.00000000000000))*(x10402)*(x10403)*(x10404)))+(((r01)*(x10416)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10409)))+(((IkReal(-1.00000000000000))*(x10398)*(x10408)))+(((IkReal(-1.00000000000000))*(r00)*(x10409)*(x10415)))+(((IkReal(-1.00000000000000))*(r02)*(x10402)*(x10407)))+(((IkReal(-1.00000000000000))*(r12)*(x10400)*(x10402)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10418=((cj1)*(sj6)); +IkReal x10419=((r01)*(sj0)); +IkReal x10420=((cj0)*(r11)); +IkReal x10421=((cj1)*(cj6)); +IkReal x10422=((cj0)*(r10)); +IkReal x10423=((IkReal(1.00000000000000))*(sj0)); +IkReal x10424=((cj1)*(sj5)); +if( IKabs(((gconst26)*(((((IkReal(-1.00000000000000))*(r00)*(x10421)*(x10423)))+(((IkReal(-1.00000000000000))*(x10418)*(x10420)))+(((x10421)*(x10422)))+(((x10418)*(x10419))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst26)*(((((IkReal(-1.00000000000000))*(cj5)*(x10419)*(x10421)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10418)*(x10423)))+(((IkReal(-1.00000000000000))*(r02)*(x10423)*(x10424)))+(((cj5)*(x10418)*(x10422)))+(((cj5)*(x10420)*(x10421)))+(((cj0)*(r12)*(x10424))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst26)*(((((IkReal(-1.00000000000000))*(r00)*(x10421)*(x10423)))+(((IkReal(-1.00000000000000))*(x10418)*(x10420)))+(((x10421)*(x10422)))+(((x10418)*(x10419)))))), ((gconst26)*(((((IkReal(-1.00000000000000))*(cj5)*(x10419)*(x10421)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10418)*(x10423)))+(((IkReal(-1.00000000000000))*(r02)*(x10423)*(x10424)))+(((cj5)*(x10418)*(x10422)))+(((cj5)*(x10420)*(x10421)))+(((cj0)*(r12)*(x10424))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x10425=IKsin(j4); +IkReal x10426=IKcos(j4); +IkReal x10427=((r00)*(sj6)); +IkReal x10428=((cj6)*(r01)); +IkReal x10429=((IkReal(1.00000000000000))*(cj0)); +IkReal x10430=((IkReal(1.00000000000000))*(sj0)); +IkReal x10431=((r10)*(sj6)); +IkReal x10432=((sj5)*(x10425)); +IkReal x10433=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x10434=((cj5)*(x10425)); +IkReal x10435=((cj6)*(x10426)); +IkReal x10436=((sj0)*(x10434)); +IkReal x10437=((r01)*(sj6)*(x10426)); +IkReal x10438=((r11)*(sj6)*(x10426)); +evalcond[0]=((((r22)*(x10432)))+(((r20)*(sj6)*(x10434)))+(((cj6)*(r21)*(x10434)))+(cj1)+(((IkReal(-1.00000000000000))*(r20)*(x10435)))+(((r21)*(sj6)*(x10426)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r12)*(x10429)*(x10432)))+(((sj0)*(x10437)))+(((IkReal(-1.00000000000000))*(x10429)*(x10431)*(x10434)))+(((cj0)*(r10)*(x10435)))+(((r02)*(sj0)*(x10432)))+(((IkReal(-1.00000000000000))*(r00)*(x10430)*(x10435)))+(((x10427)*(x10436)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10429)*(x10434)))+(((x10428)*(x10436)))+(((IkReal(-1.00000000000000))*(x10429)*(x10438)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10430)*(x10434)))+(((IkReal(-1.00000000000000))*(x10430)*(x10438)))+(((IkReal(-1.00000000000000))*(x10429)*(x10437)))+(((IkReal(-1.00000000000000))*(sj1)))+(((r10)*(sj0)*(x10435)))+(((IkReal(-1.00000000000000))*(r12)*(x10430)*(x10432)))+(((cj0)*(r00)*(x10435)))+(((IkReal(-1.00000000000000))*(x10428)*(x10429)*(x10434)))+(((IkReal(-1.00000000000000))*(r02)*(x10429)*(x10432)))+(((IkReal(-1.00000000000000))*(x10427)*(x10429)*(x10434)))+(((IkReal(-1.00000000000000))*(x10430)*(x10431)*(x10434)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst30; +gconst30=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x10439=((IkReal(1.00000000000000))*(cj0)); +IkReal x10440=((cj4)*(sj6)); +IkReal x10441=((sj0)*(sj6)); +IkReal x10442=((cj5)*(sj4)); +IkReal x10443=((IkReal(0.374290000000000))*(sj5)); +IkReal x10444=((sj4)*(sj5)); +IkReal x10445=((cj0)*(cj6)); +IkReal x10446=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10447=((cj4)*(sj5)); +IkReal x10448=((cj5)*(sj0)); +IkReal x10449=((IkReal(0.374290000000000))*(r02)); +IkReal x10450=((r20)*(sj6)); +IkReal x10451=((cj6)*(r21)); +IkReal x10452=((IkReal(1.00000000000000))*(sj0)); +IkReal x10453=((cj0)*(sj6)); +IkReal x10454=((cj4)*(cj6)); +IkReal x10455=((IkReal(0.374290000000000))*(r12)); +IkReal x10456=((cj0)*(cj5)); +IkReal x10457=((cj6)*(sj5)); +IkReal x10458=((cj6)*(r01)); +IkReal x10459=((r00)*(sj6)); +IkReal x10460=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10461=((cj6)*(r11)); +IkReal x10462=((IkReal(1.00000000000000))*(r10)); +IkReal x10463=((r02)*(sj0)); +IkReal x10464=((cj6)*(sj4)); +IkReal x10465=((r12)*(x10452)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x10454)))+(((r22)*(x10444)))+(((x10442)*(x10451)))+(((x10442)*(x10450)))+(((r21)*(x10440)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(x10446)*(x10451)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x10460)))+(((x10443)*(x10450)))+(pz)+(((IkReal(-1.00000000000000))*(x10446)*(x10450)))+(((x10443)*(x10451)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x10441)*(x10462)))+(((IkReal(-1.00000000000000))*(sj5)*(x10439)*(x10459)))+(((IkReal(-1.00000000000000))*(r01)*(x10439)*(x10457)))+(((r12)*(x10448)))+(((IkReal(-1.00000000000000))*(r11)*(x10452)*(x10457)))+(((r02)*(x10456)))); +evalcond[4]=((((cj4)*(r10)*(x10445)))+(((IkReal(-1.00000000000000))*(r00)*(x10452)*(x10454)))+(((x10444)*(x10463)))+(((r01)*(sj0)*(x10440)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x10439)*(x10442)))+(((sj0)*(x10442)*(x10458)))+(((IkReal(-1.00000000000000))*(r12)*(x10439)*(x10444)))+(((r00)*(x10441)*(x10442)))+(((IkReal(-1.00000000000000))*(x10439)*(x10442)*(x10461)))+(((IkReal(-1.00000000000000))*(r11)*(x10439)*(x10440)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x10444)*(x10465)))+(((r10)*(sj0)*(x10454)))+(((IkReal(-1.00000000000000))*(x10439)*(x10442)*(x10458)))+(((IkReal(-1.00000000000000))*(r01)*(x10439)*(x10440)))+(((cj4)*(r00)*(x10445)))+(((IkReal(-1.00000000000000))*(x10442)*(x10452)*(x10461)))+(((IkReal(-1.00000000000000))*(r11)*(x10440)*(x10452)))+(((IkReal(-1.00000000000000))*(x10439)*(x10442)*(x10459)))+(((IkReal(-1.00000000000000))*(x10441)*(x10442)*(x10462)))+(((IkReal(-1.00000000000000))*(r02)*(x10439)*(x10444)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x10441)*(x10446)))+(((r10)*(x10446)*(x10453)))+(((IkReal(-1.00000000000000))*(r11)*(x10443)*(x10445)))+(((IkReal(-1.00000000000000))*(sj0)*(x10446)*(x10458)))+(((IkReal(-1.00000000000000))*(x10460)*(x10463)))+(((cj0)*(r12)*(x10460)))+(((sj0)*(x10443)*(x10458)))+(((IkReal(-1.00000000000000))*(py)*(x10439)))+(((r11)*(x10445)*(x10446)))+(((px)*(sj0)))+(((x10455)*(x10456)))+(((IkReal(-1.00000000000000))*(x10448)*(x10449)))+(((IkReal(-1.00000000000000))*(r10)*(x10443)*(x10453)))+(((r00)*(x10441)*(x10443)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r02)*(x10439)*(x10447)))+(((IkReal(-1.00000000000000))*(r10)*(x10452)*(x10464)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10439)*(x10454)))+(((IkReal(-1.00000000000000))*(r11)*(x10448)*(x10454)))+(((r01)*(sj4)*(x10453)))+(((IkReal(-1.00000000000000))*(r00)*(x10439)*(x10464)))+(((IkReal(-1.00000000000000))*(x10447)*(x10465)))+(((IkReal(-1.00000000000000))*(x10440)*(x10448)*(x10462)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10439)*(x10440)))+(((r11)*(sj4)*(x10441)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x10439)))+(((IkReal(-1.00000000000000))*(py)*(x10452)))+(((r01)*(x10445)*(x10446)))+(((IkReal(-1.00000000000000))*(r00)*(x10443)*(x10453)))+(((sj0)*(x10446)*(x10461)))+(((IkReal(-1.00000000000000))*(r01)*(x10443)*(x10445)))+(((x10449)*(x10456)))+(((r00)*(x10446)*(x10453)))+(((cj0)*(r02)*(x10460)))+(((IkReal(-1.00000000000000))*(sj0)*(x10443)*(x10461)))+(((x10448)*(x10455)))+(((r12)*(sj0)*(x10460)))+(((r10)*(x10441)*(x10446)))+(((IkReal(-1.00000000000000))*(r10)*(x10441)*(x10443)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10466=((r20)*(sj6)); +IkReal x10467=((cj4)*(cj5)); +IkReal x10468=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10467)*(x10468)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10466)*(x10467))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x10466)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10468))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10467)*(x10468)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10466)*(x10467)))))+IKsqr(((((sj5)*(x10466)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10468)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10467)*(x10468)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10466)*(x10467)))), ((((sj5)*(x10466)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10468))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10469=IKsin(j3); +IkReal x10470=((sj0)*(sj5)); +IkReal x10471=((r00)*(sj6)); +IkReal x10472=((cj6)*(r01)); +IkReal x10473=((cj5)*(sj0)); +IkReal x10474=((cj0)*(cj5)); +IkReal x10475=((cj6)*(sj4)); +IkReal x10476=((sj4)*(sj6)); +IkReal x10477=((cj0)*(r11)); +IkReal x10478=((cj4)*(cj6)); +IkReal x10479=((cj4)*(sj6)); +IkReal x10480=((IkReal(1.00000000000000))*(cj0)); +IkReal x10481=((cj4)*(sj5)); +IkReal x10482=((sj5)*(sj6)); +IkReal x10483=((cj6)*(sj5)); +IkReal x10484=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((r21)*(x10483)))+(((r20)*(x10482)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10484)))); +evalcond[1]=((((cj5)*(r20)*(x10479)))+(((IkReal(-1.00000000000000))*(x10469)))+(((IkReal(-1.00000000000000))*(r21)*(x10476)))+(((r22)*(x10481)))+(((cj5)*(r21)*(x10478)))+(((r20)*(x10475)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x10473)))+(((IkReal(-1.00000000000000))*(r10)*(x10480)*(x10482)))+(((r12)*(x10474)))+(((IkReal(-1.00000000000000))*(x10477)*(x10483)))+(((x10470)*(x10471)))+(((x10470)*(x10472)))+(x10469)); +evalcond[3]=((((r00)*(sj0)*(x10475)))+(((IkReal(-1.00000000000000))*(r12)*(x10480)*(x10481)))+(((cj4)*(x10471)*(x10473)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x10476)))+(((IkReal(-1.00000000000000))*(r10)*(x10474)*(x10479)))+(((cj4)*(r02)*(x10470)))+(((x10476)*(x10477)))+(((cj4)*(x10472)*(x10473)))+(((IkReal(-1.00000000000000))*(r10)*(x10475)*(x10480)))+(((IkReal(-1.00000000000000))*(x10484)))+(((IkReal(-1.00000000000000))*(r11)*(x10474)*(x10478)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10485=((IkReal(1.00000000000000))*(cj0)); +IkReal x10486=((cj4)*(sj6)); +IkReal x10487=((sj0)*(sj6)); +IkReal x10488=((cj5)*(sj4)); +IkReal x10489=((IkReal(0.374290000000000))*(sj5)); +IkReal x10490=((sj4)*(sj5)); +IkReal x10491=((cj0)*(cj6)); +IkReal x10492=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10493=((cj4)*(sj5)); +IkReal x10494=((cj5)*(sj0)); +IkReal x10495=((IkReal(0.374290000000000))*(r02)); +IkReal x10496=((r20)*(sj6)); +IkReal x10497=((cj6)*(r21)); +IkReal x10498=((IkReal(1.00000000000000))*(sj0)); +IkReal x10499=((cj0)*(sj6)); +IkReal x10500=((cj4)*(cj6)); +IkReal x10501=((IkReal(0.374290000000000))*(r12)); +IkReal x10502=((cj0)*(cj5)); +IkReal x10503=((cj6)*(sj5)); +IkReal x10504=((cj6)*(r01)); +IkReal x10505=((r00)*(sj6)); +IkReal x10506=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10507=((cj6)*(r11)); +IkReal x10508=((IkReal(1.00000000000000))*(r10)); +IkReal x10509=((r02)*(sj0)); +IkReal x10510=((cj6)*(sj4)); +IkReal x10511=((r12)*(x10498)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x10488)*(x10497)))+(((x10488)*(x10496)))+(((IkReal(-1.00000000000000))*(r20)*(x10500)))+(((r22)*(x10490)))+(((r21)*(x10486)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x10489)*(x10497)))+(((IkReal(-1.00000000000000))*(x10492)*(x10496)))+(((IkReal(-1.00000000000000))*(x10492)*(x10497)))+(((x10489)*(x10496)))+(((IkReal(-1.00000000000000))*(r22)*(x10506)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x10485)*(x10505)))+(((r02)*(x10502)))+(((IkReal(-1.00000000000000))*(sj5)*(x10487)*(x10508)))+(((r12)*(x10494)))+(((IkReal(-1.00000000000000))*(r11)*(x10498)*(x10503)))+(((IkReal(-1.00000000000000))*(r01)*(x10485)*(x10503)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x10485)*(x10490)))+(((IkReal(-1.00000000000000))*(r00)*(x10498)*(x10500)))+(((r01)*(sj0)*(x10486)))+(((IkReal(-1.00000000000000))*(r11)*(x10485)*(x10486)))+(((x10490)*(x10509)))+(((r00)*(x10487)*(x10488)))+(((cj4)*(r10)*(x10491)))+(((sj0)*(x10488)*(x10504)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x10485)*(x10488)))+(((IkReal(-1.00000000000000))*(x10485)*(x10488)*(x10507)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x10486)*(x10498)))+(((IkReal(-1.00000000000000))*(x10485)*(x10488)*(x10504)))+(((IkReal(-1.00000000000000))*(x10485)*(x10488)*(x10505)))+(((IkReal(-1.00000000000000))*(x10490)*(x10511)))+(((IkReal(-1.00000000000000))*(x10488)*(x10498)*(x10507)))+(((IkReal(-1.00000000000000))*(r01)*(x10485)*(x10486)))+(((IkReal(-1.00000000000000))*(r02)*(x10485)*(x10490)))+(((cj4)*(r00)*(x10491)))+(((IkReal(-1.00000000000000))*(x10487)*(x10488)*(x10508)))+(((r10)*(sj0)*(x10500)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r00)*(x10487)*(x10489)))+(((IkReal(-1.00000000000000))*(sj0)*(x10492)*(x10504)))+(((IkReal(-1.00000000000000))*(r00)*(x10487)*(x10492)))+(((r10)*(x10492)*(x10499)))+(((IkReal(-1.00000000000000))*(r10)*(x10489)*(x10499)))+(((IkReal(-1.00000000000000))*(x10494)*(x10495)))+(((IkReal(-1.00000000000000))*(py)*(x10485)))+(((r11)*(x10491)*(x10492)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x10506)*(x10509)))+(((IkReal(-1.00000000000000))*(r11)*(x10489)*(x10491)))+(((x10501)*(x10502)))+(((cj0)*(r12)*(x10506)))+(((sj0)*(x10489)*(x10504)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x10493)*(x10511)))+(((r11)*(sj4)*(x10487)))+(((IkReal(-1.00000000000000))*(r00)*(x10485)*(x10510)))+(((IkReal(-1.00000000000000))*(r10)*(x10498)*(x10510)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10485)*(x10486)))+(((IkReal(-1.00000000000000))*(r11)*(x10494)*(x10500)))+(((IkReal(-1.00000000000000))*(r02)*(x10485)*(x10493)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10485)*(x10500)))+(((IkReal(-1.00000000000000))*(x10486)*(x10494)*(x10508)))+(((r01)*(sj4)*(x10499)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x10487)*(x10489)))+(((r10)*(x10487)*(x10492)))+(((IkReal(-1.00000000000000))*(sj0)*(x10489)*(x10507)))+(((IkReal(-1.00000000000000))*(r01)*(x10489)*(x10491)))+(((sj0)*(x10492)*(x10507)))+(((x10494)*(x10501)))+(((IkReal(-1.00000000000000))*(py)*(x10498)))+(((r12)*(sj0)*(x10506)))+(((IkReal(-1.00000000000000))*(r00)*(x10489)*(x10499)))+(((IkReal(-1.00000000000000))*(px)*(x10485)))+(((r01)*(x10491)*(x10492)))+(((cj0)*(r02)*(x10506)))+(((r00)*(x10492)*(x10499)))+(((x10495)*(x10502)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10512=((IkReal(1.00000000000000))*(sj5)); +IkReal x10513=((cj6)*(r21)); +IkReal x10514=((r20)*(sj6)); +IkReal x10515=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10512)))+(((IkReal(-1.00000000000000))*(x10514)*(x10515)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x10513)*(x10515)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x10512)*(x10513)))+(((IkReal(-1.00000000000000))*(x10512)*(x10514)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10512)))+(((IkReal(-1.00000000000000))*(x10514)*(x10515)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x10513)*(x10515)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x10512)*(x10513)))+(((IkReal(-1.00000000000000))*(x10512)*(x10514)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10512)))+(((IkReal(-1.00000000000000))*(x10514)*(x10515)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x10513)*(x10515)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x10512)*(x10513)))+(((IkReal(-1.00000000000000))*(x10512)*(x10514)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10516=IKsin(j3); +IkReal x10517=IKcos(j3); +IkReal x10518=((sj0)*(sj5)); +IkReal x10519=((r00)*(sj6)); +IkReal x10520=((cj6)*(r01)); +IkReal x10521=((cj0)*(cj5)); +IkReal x10522=((IkReal(1.00000000000000))*(cj5)); +IkReal x10523=((cj4)*(cj5)); +IkReal x10524=((cj6)*(sj4)); +IkReal x10525=((sj4)*(sj6)); +IkReal x10526=((cj0)*(r11)); +IkReal x10527=((IkReal(1.00000000000000))*(cj4)); +IkReal x10528=((cj6)*(r21)); +IkReal x10529=((r20)*(sj6)); +IkReal x10530=((cj0)*(sj5)); +IkReal x10531=((r10)*(sj6)); +evalcond[0]=((((sj5)*(x10528)))+(x10517)+(((sj5)*(x10529)))+(((IkReal(-1.00000000000000))*(r22)*(x10522)))); +evalcond[1]=((((r20)*(x10524)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x10525)))+(x10516)+(((x10523)*(x10529)))+(((x10523)*(x10528)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x10526)))+(((r12)*(x10521)))+(((x10518)*(x10519)))+(((IkReal(-1.00000000000000))*(x10530)*(x10531)))+(x10516)+(((x10518)*(x10520)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x10522)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r10)*(x10524)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10521)*(x10527)))+(((cj4)*(r02)*(x10518)))+(((IkReal(-1.00000000000000))*(r12)*(x10527)*(x10530)))+(((x10525)*(x10526)))+(((sj0)*(x10519)*(x10523)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x10525)))+(((IkReal(-1.00000000000000))*(x10517)))+(((IkReal(-1.00000000000000))*(x10521)*(x10527)*(x10531)))+(((sj0)*(x10520)*(x10523)))+(((r00)*(sj0)*(x10524)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10532=((IkReal(1.00000000000000))*(cj0)); +IkReal x10533=((cj4)*(sj6)); +IkReal x10534=((sj0)*(sj4)); +IkReal x10535=((cj5)*(sj6)); +IkReal x10536=((sj4)*(sj5)); +IkReal x10537=((r12)*(sj5)); +IkReal x10538=((IkReal(0.374290000000000))*(cj5)); +IkReal x10539=((r02)*(sj0)); +IkReal x10540=((r20)*(sj4)); +IkReal x10541=((IkReal(1.00000000000000))*(sj0)); +IkReal x10542=((IkReal(1.00000000000000))*(cj5)); +IkReal x10543=((cj0)*(r10)); +IkReal x10544=((cj4)*(cj6)); +IkReal x10545=((r00)*(sj0)); +IkReal x10546=((cj6)*(r21)); +IkReal x10547=((IkReal(0.374290000000000))*(sj5)); +IkReal x10548=((cj0)*(r00)); +IkReal x10549=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10550=((cj0)*(r02)); +IkReal x10551=((cj5)*(sj4)); +IkReal x10552=((cj6)*(r01)); +IkReal x10553=((cj6)*(r11)); +IkReal x10554=((r01)*(sj0)); +IkReal x10555=((r10)*(sj0)); +IkReal x10556=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x10557=((sj6)*(x10547)); +IkReal x10558=((cj0)*(cj6)*(x10547)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x10546)))+(((IkReal(-1.00000000000000))*(r22)*(x10542)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((r21)*(x10533)))+(((IkReal(-1.00000000000000))*(r20)*(x10544)))+(((x10535)*(x10540)))+(((x10546)*(x10551)))+(((r22)*(x10536)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x10538)))+(((x10546)*(x10547)))+(((IkReal(-0.0100000000000000))*(cj5)*(x10546)))+(((r20)*(x10557)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x10549)))+(((IkReal(-0.0100000000000000))*(r20)*(x10535)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x10533)))+(((cj6)*(x10540)))+(((cj5)*(r21)*(x10544)))); +evalcond[5]=((((r02)*(sj5)*(x10534)))+(((cj5)*(x10534)*(x10552)))+(((x10543)*(x10544)))+(((x10533)*(x10554)))+(((IkReal(-1.00000000000000))*(x10532)*(x10551)*(x10553)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x10532)*(x10535)))+(((IkReal(-1.00000000000000))*(r11)*(x10532)*(x10533)))+(((r00)*(x10534)*(x10535)))+(((IkReal(-1.00000000000000))*(r12)*(x10532)*(x10536)))+(((IkReal(-1.00000000000000))*(r00)*(x10541)*(x10544)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r02)*(x10532)*(x10536)))+(((IkReal(-1.00000000000000))*(r10)*(x10534)*(x10535)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x10532)*(x10535)))+(((IkReal(-1.00000000000000))*(x10532)*(x10551)*(x10552)))+(((IkReal(-1.00000000000000))*(r11)*(x10533)*(x10541)))+(((IkReal(-1.00000000000000))*(x10534)*(x10537)))+(((IkReal(-1.00000000000000))*(r01)*(x10532)*(x10533)))+(((x10544)*(x10555)))+(((x10544)*(x10548)))+(((IkReal(-1.00000000000000))*(x10534)*(x10542)*(x10553)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10553)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x10552)))+(((IkReal(-1.00000000000000))*(x10543)*(x10557)))+(((IkReal(0.0100000000000000))*(x10535)*(x10543)))+(((IkReal(-1.00000000000000))*(py)*(x10532)))+(((IkReal(-0.0100000000000000))*(x10535)*(x10545)))+(((IkReal(-1.00000000000000))*(cj0)*(x10547)*(x10553)))+(((cj0)*(r12)*(x10538)))+(((x10545)*(x10557)))+(((IkReal(-1.00000000000000))*(x10538)*(x10539)))+(((IkReal(0.0100000000000000))*(cj0)*(x10537)))+(((sj0)*(x10547)*(x10552)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x10539)*(x10549)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(x10548)*(x10557)))+(((IkReal(-1.00000000000000))*(px)*(x10532)))+(((IkReal(0.0100000000000000))*(sj0)*(x10537)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10552)))+(((IkReal(-1.00000000000000))*(py)*(x10541)))+(((r12)*(sj0)*(x10538)))+(((IkReal(0.0100000000000000))*(x10535)*(x10548)))+(((IkReal(-1.00000000000000))*(x10555)*(x10557)))+(((IkReal(0.0100000000000000))*(x10535)*(x10555)))+(((x10549)*(x10550)))+(((x10538)*(x10550)))+(((IkReal(-1.00000000000000))*(sj0)*(x10547)*(x10553)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x10553)))+(((IkReal(-1.00000000000000))*(cj0)*(x10547)*(x10552)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10559=((cj5)*(r02)); +IkReal x10560=((cj0)*(sj5)); +IkReal x10561=((r10)*(sj6)); +IkReal x10562=((IkReal(1.00000000000000))*(cj6)); +IkReal x10563=((sj0)*(sj5)); +IkReal x10564=((cj5)*(r12)); +IkReal x10565=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((x10560)*(x10561)))+(((IkReal(-1.00000000000000))*(r01)*(x10562)*(x10563)))+(((IkReal(-1.00000000000000))*(cj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10563)*(x10565)))+(((cj6)*(r11)*(x10560)))+(((sj0)*(x10559))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x10561)*(x10563)))+(((cj0)*(x10559)))+(((IkReal(-1.00000000000000))*(r01)*(x10560)*(x10562)))+(((sj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10560)*(x10565)))+(((IkReal(-1.00000000000000))*(r11)*(x10562)*(x10563))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x10560)*(x10561)))+(((IkReal(-1.00000000000000))*(r01)*(x10562)*(x10563)))+(((IkReal(-1.00000000000000))*(cj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10563)*(x10565)))+(((cj6)*(r11)*(x10560)))+(((sj0)*(x10559)))))+IKsqr(((((IkReal(-1.00000000000000))*(x10561)*(x10563)))+(((cj0)*(x10559)))+(((IkReal(-1.00000000000000))*(r01)*(x10560)*(x10562)))+(((sj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10560)*(x10565)))+(((IkReal(-1.00000000000000))*(r11)*(x10562)*(x10563)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x10560)*(x10561)))+(((IkReal(-1.00000000000000))*(r01)*(x10562)*(x10563)))+(((IkReal(-1.00000000000000))*(cj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10563)*(x10565)))+(((cj6)*(r11)*(x10560)))+(((sj0)*(x10559)))), ((((IkReal(-1.00000000000000))*(x10561)*(x10563)))+(((cj0)*(x10559)))+(((IkReal(-1.00000000000000))*(r01)*(x10560)*(x10562)))+(((sj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10560)*(x10565)))+(((IkReal(-1.00000000000000))*(r11)*(x10562)*(x10563))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10566=IKsin(j3); +IkReal x10567=((sj0)*(sj5)); +IkReal x10568=((r00)*(sj6)); +IkReal x10569=((IkReal(1.00000000000000))*(cj4)); +IkReal x10570=((cj6)*(sj0)); +IkReal x10571=((r00)*(sj4)); +IkReal x10572=((cj0)*(cj5)); +IkReal x10573=((cj6)*(r01)); +IkReal x10574=((cj5)*(sj0)); +IkReal x10575=((cj0)*(sj5)); +IkReal x10576=((cj6)*(r11)); +IkReal x10577=((r10)*(sj6)); +IkReal x10578=((r10)*(sj4)); +IkReal x10579=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x10580=((cj0)*(sj4)*(sj6)); +IkReal x10581=((sj0)*(sj4)*(sj6)); +IkReal x10582=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x10574)))+(((r12)*(x10572)))+(((x10567)*(x10573)))+(x10566)+(((x10567)*(x10568)))+(((IkReal(-1.00000000000000))*(x10575)*(x10576)))+(((IkReal(-1.00000000000000))*(x10575)*(x10577)))); +evalcond[1]=((((r12)*(x10574)))+(((IkReal(-1.00000000000000))*(x10568)*(x10575)))+(((IkReal(-1.00000000000000))*(x10567)*(x10576)))+(((IkReal(-1.00000000000000))*(x10579)))+(((IkReal(-1.00000000000000))*(x10573)*(x10575)))+(((IkReal(-1.00000000000000))*(x10567)*(x10577)))+(((r02)*(x10572)))); +evalcond[2]=((((x10570)*(x10571)))+(((IkReal(-1.00000000000000))*(x10578)*(x10582)))+(((IkReal(-1.00000000000000))*(x10579)))+(((IkReal(-1.00000000000000))*(r12)*(x10569)*(x10575)))+(((IkReal(-1.00000000000000))*(x10569)*(x10572)*(x10576)))+(((cj4)*(cj5)*(r01)*(x10570)))+(((IkReal(-1.00000000000000))*(r01)*(x10581)))+(((r11)*(x10580)))+(((IkReal(-1.00000000000000))*(x10569)*(x10572)*(x10577)))+(((cj4)*(x10568)*(x10574)))+(((cj4)*(r02)*(x10567)))); +evalcond[3]=((((r01)*(x10580)))+(((IkReal(-1.00000000000000))*(r12)*(x10567)*(x10569)))+(((IkReal(-1.00000000000000))*(x10569)*(x10572)*(x10573)))+(((IkReal(-1.00000000000000))*(x10569)*(x10574)*(x10577)))+(((IkReal(-1.00000000000000))*(x10566)))+(((IkReal(-1.00000000000000))*(x10568)*(x10569)*(x10572)))+(((r11)*(x10581)))+(((IkReal(-1.00000000000000))*(r02)*(x10569)*(x10575)))+(((IkReal(-1.00000000000000))*(x10570)*(x10578)))+(((IkReal(-1.00000000000000))*(x10571)*(x10582)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x10569)*(x10570)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10583=((IkReal(1.00000000000000))*(cj0)); +IkReal x10584=((cj4)*(sj6)); +IkReal x10585=((sj0)*(sj4)); +IkReal x10586=((cj5)*(sj6)); +IkReal x10587=((sj4)*(sj5)); +IkReal x10588=((r12)*(sj5)); +IkReal x10589=((IkReal(0.374290000000000))*(cj5)); +IkReal x10590=((r02)*(sj0)); +IkReal x10591=((r20)*(sj4)); +IkReal x10592=((IkReal(1.00000000000000))*(sj0)); +IkReal x10593=((IkReal(1.00000000000000))*(cj5)); +IkReal x10594=((cj0)*(r10)); +IkReal x10595=((cj4)*(cj6)); +IkReal x10596=((r00)*(sj0)); +IkReal x10597=((cj6)*(r21)); +IkReal x10598=((IkReal(0.374290000000000))*(sj5)); +IkReal x10599=((cj0)*(r00)); +IkReal x10600=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10601=((cj0)*(r02)); +IkReal x10602=((cj5)*(sj4)); +IkReal x10603=((cj6)*(r01)); +IkReal x10604=((cj6)*(r11)); +IkReal x10605=((r01)*(sj0)); +IkReal x10606=((r10)*(sj0)); +IkReal x10607=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x10608=((sj6)*(x10598)); +IkReal x10609=((cj0)*(cj6)*(x10598)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x10593)))+(((sj5)*(x10597)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x10586)*(x10591)))+(((r21)*(x10584)))+(((r22)*(x10587)))+(((IkReal(-1.00000000000000))*(r20)*(x10595)))+(((x10597)*(x10602)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x10597)))+(((r20)*(x10608)))+(((IkReal(-1.00000000000000))*(r22)*(x10589)))+(((IkReal(-1.00000000000000))*(r22)*(x10600)))+(((IkReal(-0.0100000000000000))*(r20)*(x10586)))+(pz)+(((x10597)*(x10598)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x10595)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x10584)))+(((cj6)*(x10591)))); +evalcond[5]=((((x10584)*(x10605)))+(((IkReal(-1.00000000000000))*(r00)*(x10592)*(x10595)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x10583)*(x10586)))+(((x10594)*(x10595)))+(((r00)*(x10585)*(x10586)))+(((IkReal(-1.00000000000000))*(r11)*(x10583)*(x10584)))+(((r02)*(sj5)*(x10585)))+(((IkReal(-1.00000000000000))*(r12)*(x10583)*(x10587)))+(((cj5)*(x10585)*(x10603)))+(((IkReal(-1.00000000000000))*(x10583)*(x10602)*(x10604)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r11)*(x10584)*(x10592)))+(((IkReal(-1.00000000000000))*(x10583)*(x10602)*(x10603)))+(((IkReal(-1.00000000000000))*(x10585)*(x10588)))+(((IkReal(-1.00000000000000))*(r02)*(x10583)*(x10587)))+(((x10595)*(x10606)))+(((IkReal(-1.00000000000000))*(x10585)*(x10593)*(x10604)))+(((IkReal(-1.00000000000000))*(r01)*(x10583)*(x10584)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x10583)*(x10586)))+(((x10595)*(x10599)))+(((IkReal(-1.00000000000000))*(r10)*(x10585)*(x10586)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((x10596)*(x10608)))+(((sj0)*(x10598)*(x10603)))+(((IkReal(0.0100000000000000))*(x10586)*(x10594)))+(((IkReal(-1.00000000000000))*(x10590)*(x10600)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10604)))+(((IkReal(0.0100000000000000))*(cj0)*(x10588)))+(((IkReal(-0.0100000000000000))*(x10586)*(x10596)))+(((IkReal(-1.00000000000000))*(py)*(x10583)))+(((IkReal(-1.00000000000000))*(x10594)*(x10608)))+(((IkReal(-1.00000000000000))*(cj0)*(x10598)*(x10604)))+(((cj0)*(r12)*(x10589)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x10589)*(x10590)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x10603)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(x10586)*(x10606)))+(((IkReal(-1.00000000000000))*(x10606)*(x10608)))+(((IkReal(-1.00000000000000))*(cj0)*(x10598)*(x10603)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10603)))+(((IkReal(-1.00000000000000))*(x10599)*(x10608)))+(((x10589)*(x10601)))+(((IkReal(0.0100000000000000))*(sj0)*(x10588)))+(((IkReal(-1.00000000000000))*(px)*(x10583)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x10604)))+(((r12)*(sj0)*(x10589)))+(((IkReal(-1.00000000000000))*(py)*(x10592)))+(((IkReal(-1.00000000000000))*(sj0)*(x10598)*(x10604)))+(((x10600)*(x10601)))+(((IkReal(0.0100000000000000))*(x10586)*(x10599)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10610=((IkReal(1.00000000000000))*(cj5)); +IkReal x10611=((r10)*(sj5)*(sj6)); +IkReal x10612=((cj6)*(sj0)*(sj5)); +IkReal x10613=((r00)*(sj5)*(sj6)); +IkReal x10614=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10610)))+(((cj0)*(x10611)))+(((IkReal(-1.00000000000000))*(r01)*(x10612)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x10614)))+(((IkReal(-1.00000000000000))*(sj0)*(x10613))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10610)))+(((cj0)*(x10613)))+(((sj0)*(x10611)))+(((r11)*(x10612)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10610)))+(((r01)*(x10614))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10610)))+(((cj0)*(x10611)))+(((IkReal(-1.00000000000000))*(r01)*(x10612)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x10614)))+(((IkReal(-1.00000000000000))*(sj0)*(x10613)))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10610)))+(((cj0)*(x10613)))+(((sj0)*(x10611)))+(((r11)*(x10612)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10610)))+(((r01)*(x10614)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10610)))+(((cj0)*(x10611)))+(((IkReal(-1.00000000000000))*(r01)*(x10612)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x10614)))+(((IkReal(-1.00000000000000))*(sj0)*(x10613)))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10610)))+(((cj0)*(x10613)))+(((sj0)*(x10611)))+(((r11)*(x10612)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10610)))+(((r01)*(x10614))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10615=IKcos(j3); +IkReal x10616=IKsin(j3); +IkReal x10617=((sj0)*(sj5)); +IkReal x10618=((r00)*(sj6)); +IkReal x10619=((IkReal(1.00000000000000))*(cj4)); +IkReal x10620=((cj6)*(sj0)); +IkReal x10621=((r00)*(sj4)); +IkReal x10622=((cj0)*(cj5)); +IkReal x10623=((cj6)*(r01)); +IkReal x10624=((cj5)*(sj0)); +IkReal x10625=((cj0)*(sj5)); +IkReal x10626=((cj6)*(r11)); +IkReal x10627=((r10)*(sj6)); +IkReal x10628=((r10)*(sj4)); +IkReal x10629=((cj0)*(sj4)*(sj6)); +IkReal x10630=((sj0)*(sj4)*(sj6)); +IkReal x10631=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x10625)*(x10627)))+(((x10617)*(x10618)))+(((IkReal(-1.00000000000000))*(r02)*(x10624)))+(((IkReal(-1.00000000000000))*(x10625)*(x10626)))+(x10616)+(((x10617)*(x10623)))+(((r12)*(x10622)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10618)*(x10625)))+(((IkReal(-1.00000000000000))*(x10623)*(x10625)))+(((r02)*(x10622)))+(((IkReal(-1.00000000000000))*(x10617)*(x10627)))+(((r12)*(x10624)))+(x10615)+(((IkReal(-1.00000000000000))*(x10617)*(x10626)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10628)*(x10631)))+(((IkReal(-1.00000000000000))*(r12)*(x10619)*(x10625)))+(((r11)*(x10629)))+(((cj4)*(cj5)*(r01)*(x10620)))+(((cj4)*(x10618)*(x10624)))+(((IkReal(-1.00000000000000))*(x10615)))+(((IkReal(-1.00000000000000))*(x10619)*(x10622)*(x10626)))+(((cj4)*(r02)*(x10617)))+(((IkReal(-1.00000000000000))*(x10619)*(x10622)*(x10627)))+(((IkReal(-1.00000000000000))*(r01)*(x10630)))+(((x10620)*(x10621)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x10619)*(x10620)))+(((IkReal(-1.00000000000000))*(x10620)*(x10628)))+(((r11)*(x10630)))+(((IkReal(-1.00000000000000))*(x10619)*(x10624)*(x10627)))+(x10616)+(((r01)*(x10629)))+(((IkReal(-1.00000000000000))*(x10621)*(x10631)))+(((IkReal(-1.00000000000000))*(x10619)*(x10622)*(x10623)))+(((IkReal(-1.00000000000000))*(r02)*(x10619)*(x10625)))+(((IkReal(-1.00000000000000))*(x10618)*(x10619)*(x10622)))+(((IkReal(-1.00000000000000))*(r12)*(x10617)*(x10619)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10632=((cj5)*(r02)); +IkReal x10633=((cj0)*(sj5)); +IkReal x10634=((r10)*(sj6)); +IkReal x10635=((IkReal(1.00000000000000))*(cj6)); +IkReal x10636=((sj0)*(sj5)); +IkReal x10637=((cj5)*(r12)); +IkReal x10638=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x10637)))+(((IkReal(-1.00000000000000))*(x10636)*(x10638)))+(((IkReal(-1.00000000000000))*(r01)*(x10635)*(x10636)))+(((sj0)*(x10632)))+(((x10633)*(x10634)))+(((cj6)*(r11)*(x10633))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x10633)*(x10635)))+(((sj0)*(x10637)))+(((IkReal(-1.00000000000000))*(r11)*(x10635)*(x10636)))+(((IkReal(-1.00000000000000))*(x10633)*(x10638)))+(((IkReal(-1.00000000000000))*(x10634)*(x10636)))+(((cj0)*(x10632))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x10637)))+(((IkReal(-1.00000000000000))*(x10636)*(x10638)))+(((IkReal(-1.00000000000000))*(r01)*(x10635)*(x10636)))+(((sj0)*(x10632)))+(((x10633)*(x10634)))+(((cj6)*(r11)*(x10633)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x10633)*(x10635)))+(((sj0)*(x10637)))+(((IkReal(-1.00000000000000))*(r11)*(x10635)*(x10636)))+(((IkReal(-1.00000000000000))*(x10633)*(x10638)))+(((IkReal(-1.00000000000000))*(x10634)*(x10636)))+(((cj0)*(x10632)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x10637)))+(((IkReal(-1.00000000000000))*(x10636)*(x10638)))+(((IkReal(-1.00000000000000))*(r01)*(x10635)*(x10636)))+(((sj0)*(x10632)))+(((x10633)*(x10634)))+(((cj6)*(r11)*(x10633)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x10633)*(x10635)))+(((sj0)*(x10637)))+(((IkReal(-1.00000000000000))*(r11)*(x10635)*(x10636)))+(((IkReal(-1.00000000000000))*(x10633)*(x10638)))+(((IkReal(-1.00000000000000))*(x10634)*(x10636)))+(((cj0)*(x10632))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10639=IKsin(j3); +IkReal x10640=IKcos(j3); +IkReal x10641=((sj0)*(sj5)); +IkReal x10642=((r00)*(sj6)); +IkReal x10643=((IkReal(1.00000000000000))*(cj4)); +IkReal x10644=((cj6)*(r01)); +IkReal x10645=((cj0)*(cj5)); +IkReal x10646=((cj5)*(sj0)); +IkReal x10647=((cj6)*(r11)); +IkReal x10648=((cj0)*(sj5)); +IkReal x10649=((IkReal(1.00000000000000))*(cj1)); +IkReal x10650=((cj6)*(sj4)); +IkReal x10651=((IkReal(1.00000000000000))*(sj1)); +IkReal x10652=((cj4)*(cj5)); +IkReal x10653=((cj6)*(r21)); +IkReal x10654=((r20)*(sj6)); +IkReal x10655=((r10)*(sj6)); +IkReal x10656=((IkReal(1.00000000000000))*(cj0)); +IkReal x10657=((cj0)*(sj4)*(sj6)); +IkReal x10658=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x10654)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10653)))+(((IkReal(-1.00000000000000))*(x10640)*(x10651)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10639)*(x10651)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x10652)*(x10654)))+(((r20)*(x10650)))+(((x10652)*(x10653)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10648)*(x10655)))+(((IkReal(-1.00000000000000))*(x10647)*(x10648)))+(x10639)+(((x10641)*(x10644)))+(((x10641)*(x10642)))+(((r12)*(x10645)))+(((IkReal(-1.00000000000000))*(r02)*(x10646)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10641)*(x10655)))+(((IkReal(-1.00000000000000))*(x10641)*(x10647)))+(((r12)*(x10646)))+(((IkReal(-1.00000000000000))*(x10642)*(x10648)))+(((IkReal(-1.00000000000000))*(x10640)*(x10649)))+(((r02)*(x10645)))+(((IkReal(-1.00000000000000))*(x10644)*(x10648)))); +evalcond[4]=((((cj4)*(x10644)*(x10646)))+(((r11)*(x10657)))+(((IkReal(-1.00000000000000))*(r10)*(x10650)*(x10656)))+(((IkReal(-1.00000000000000))*(r01)*(x10658)))+(((IkReal(-1.00000000000000))*(x10640)))+(((IkReal(-1.00000000000000))*(x10643)*(x10645)*(x10647)))+(((cj4)*(x10642)*(x10646)))+(((cj4)*(r02)*(x10641)))+(((IkReal(-1.00000000000000))*(x10643)*(x10645)*(x10655)))+(((r00)*(sj0)*(x10650)))+(((IkReal(-1.00000000000000))*(r12)*(x10643)*(x10648)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10639)*(x10649)))+(((IkReal(-1.00000000000000))*(x10643)*(x10646)*(x10655)))+(((IkReal(-1.00000000000000))*(x10643)*(x10646)*(x10647)))+(((IkReal(-1.00000000000000))*(r02)*(x10643)*(x10648)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10650)))+(((IkReal(-1.00000000000000))*(r12)*(x10641)*(x10643)))+(((r11)*(x10658)))+(((IkReal(-1.00000000000000))*(r00)*(x10650)*(x10656)))+(((r01)*(x10657)))+(((IkReal(-1.00000000000000))*(x10643)*(x10644)*(x10645)))+(((IkReal(-1.00000000000000))*(x10642)*(x10643)*(x10645)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10659=((sj5)*(sj6)); +IkReal x10660=((IkReal(1.00000000000000))*(sj0)); +IkReal x10661=((cj6)*(sj5)); +IkReal x10662=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r10)*(x10659)))+(((IkReal(-1.00000000000000))*(r01)*(x10660)*(x10661)))+(((cj0)*(r11)*(x10661)))+(((IkReal(-1.00000000000000))*(r00)*(x10659)*(x10660)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10662))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10662)))+(((r20)*(x10659)))+(((r21)*(x10661))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r10)*(x10659)))+(((IkReal(-1.00000000000000))*(r01)*(x10660)*(x10661)))+(((cj0)*(r11)*(x10661)))+(((IkReal(-1.00000000000000))*(r00)*(x10659)*(x10660)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10662)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10662)))+(((r20)*(x10659)))+(((r21)*(x10661)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r10)*(x10659)))+(((IkReal(-1.00000000000000))*(r01)*(x10660)*(x10661)))+(((cj0)*(r11)*(x10661)))+(((IkReal(-1.00000000000000))*(r00)*(x10659)*(x10660)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10662)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10662)))+(((r20)*(x10659)))+(((r21)*(x10661))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10663=IKsin(j3); +IkReal x10664=IKcos(j3); +IkReal x10665=((sj0)*(sj5)); +IkReal x10666=((r00)*(sj6)); +IkReal x10667=((IkReal(1.00000000000000))*(cj4)); +IkReal x10668=((cj6)*(r01)); +IkReal x10669=((cj0)*(cj5)); +IkReal x10670=((cj5)*(sj0)); +IkReal x10671=((cj6)*(r11)); +IkReal x10672=((cj0)*(sj5)); +IkReal x10673=((IkReal(1.00000000000000))*(cj1)); +IkReal x10674=((cj6)*(sj4)); +IkReal x10675=((IkReal(1.00000000000000))*(sj1)); +IkReal x10676=((cj4)*(cj5)); +IkReal x10677=((cj6)*(r21)); +IkReal x10678=((r20)*(sj6)); +IkReal x10679=((r10)*(sj6)); +IkReal x10680=((IkReal(1.00000000000000))*(cj0)); +IkReal x10681=((cj0)*(sj4)*(sj6)); +IkReal x10682=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x10678)))+(((IkReal(-1.00000000000000))*(x10664)*(x10675)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10677)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10663)*(x10675)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x10676)*(x10677)))+(((r20)*(x10674)))+(((x10676)*(x10678)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10671)*(x10672)))+(((x10665)*(x10668)))+(((r12)*(x10669)))+(((IkReal(-1.00000000000000))*(x10672)*(x10679)))+(((IkReal(-1.00000000000000))*(r02)*(x10670)))+(x10663)+(((x10665)*(x10666)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10664)*(x10673)))+(((IkReal(-1.00000000000000))*(x10666)*(x10672)))+(((r12)*(x10670)))+(((IkReal(-1.00000000000000))*(x10668)*(x10672)))+(((IkReal(-1.00000000000000))*(x10665)*(x10679)))+(((r02)*(x10669)))+(((IkReal(-1.00000000000000))*(x10665)*(x10671)))); +evalcond[4]=((((cj4)*(x10666)*(x10670)))+(((IkReal(-1.00000000000000))*(x10667)*(x10669)*(x10671)))+(((IkReal(-1.00000000000000))*(r12)*(x10667)*(x10672)))+(((IkReal(-1.00000000000000))*(r10)*(x10674)*(x10680)))+(((cj4)*(r02)*(x10665)))+(((r11)*(x10681)))+(((IkReal(-1.00000000000000))*(x10664)))+(((IkReal(-1.00000000000000))*(r01)*(x10682)))+(((IkReal(-1.00000000000000))*(x10667)*(x10669)*(x10679)))+(((cj4)*(x10668)*(x10670)))+(((r00)*(sj0)*(x10674)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x10674)*(x10680)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10674)))+(((r01)*(x10681)))+(((IkReal(-1.00000000000000))*(x10667)*(x10670)*(x10671)))+(((IkReal(-1.00000000000000))*(r02)*(x10667)*(x10672)))+(((IkReal(-1.00000000000000))*(r12)*(x10665)*(x10667)))+(((IkReal(-1.00000000000000))*(x10666)*(x10667)*(x10669)))+(((IkReal(-1.00000000000000))*(x10667)*(x10670)*(x10679)))+(((IkReal(-1.00000000000000))*(x10667)*(x10668)*(x10669)))+(((IkReal(-1.00000000000000))*(x10663)*(x10673)))+(((r11)*(x10682)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10683=((r20)*(sj6)); +IkReal x10684=((cj4)*(cj5)); +IkReal x10685=((cj6)*(r21)); +if( IKabs(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10683)*(x10684)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10684)*(x10685))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst30)*(((((sj5)*(x10685)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10683))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10683)*(x10684)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10684)*(x10685)))))), ((gconst30)*(((((sj5)*(x10685)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10683))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10686=IKsin(j3); +IkReal x10687=IKcos(j3); +IkReal x10688=((sj0)*(sj5)); +IkReal x10689=((r00)*(sj6)); +IkReal x10690=((IkReal(1.00000000000000))*(cj4)); +IkReal x10691=((cj6)*(r01)); +IkReal x10692=((cj0)*(cj5)); +IkReal x10693=((cj5)*(sj0)); +IkReal x10694=((cj6)*(r11)); +IkReal x10695=((cj0)*(sj5)); +IkReal x10696=((IkReal(1.00000000000000))*(cj1)); +IkReal x10697=((cj6)*(sj4)); +IkReal x10698=((IkReal(1.00000000000000))*(sj1)); +IkReal x10699=((cj4)*(cj5)); +IkReal x10700=((cj6)*(r21)); +IkReal x10701=((r20)*(sj6)); +IkReal x10702=((r10)*(sj6)); +IkReal x10703=((IkReal(1.00000000000000))*(cj0)); +IkReal x10704=((cj0)*(sj4)*(sj6)); +IkReal x10705=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x10687)*(x10698)))+(((sj5)*(x10700)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10701)))); +evalcond[1]=((((x10699)*(x10700)))+(((r20)*(x10697)))+(((x10699)*(x10701)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x10686)*(x10698)))+(((cj4)*(r22)*(sj5)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10695)*(x10702)))+(((IkReal(-1.00000000000000))*(x10694)*(x10695)))+(((IkReal(-1.00000000000000))*(r02)*(x10693)))+(x10686)+(((x10688)*(x10691)))+(((x10688)*(x10689)))+(((r12)*(x10692)))); +evalcond[3]=((((r12)*(x10693)))+(((IkReal(-1.00000000000000))*(x10689)*(x10695)))+(((IkReal(-1.00000000000000))*(x10687)*(x10696)))+(((IkReal(-1.00000000000000))*(x10688)*(x10694)))+(((IkReal(-1.00000000000000))*(x10691)*(x10695)))+(((IkReal(-1.00000000000000))*(x10688)*(x10702)))+(((r02)*(x10692)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x10705)))+(((r00)*(sj0)*(x10697)))+(((r11)*(x10704)))+(((cj4)*(x10691)*(x10693)))+(((IkReal(-1.00000000000000))*(x10690)*(x10692)*(x10702)))+(((cj4)*(x10689)*(x10693)))+(((cj4)*(r02)*(x10688)))+(((IkReal(-1.00000000000000))*(x10687)))+(((IkReal(-1.00000000000000))*(r10)*(x10697)*(x10703)))+(((IkReal(-1.00000000000000))*(r12)*(x10690)*(x10695)))+(((IkReal(-1.00000000000000))*(x10690)*(x10692)*(x10694)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10690)*(x10691)*(x10692)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10697)))+(((r01)*(x10704)))+(((IkReal(-1.00000000000000))*(x10689)*(x10690)*(x10692)))+(((IkReal(-1.00000000000000))*(r02)*(x10690)*(x10695)))+(((IkReal(-1.00000000000000))*(x10690)*(x10693)*(x10694)))+(((r11)*(x10705)))+(((IkReal(-1.00000000000000))*(x10686)*(x10696)))+(((IkReal(-1.00000000000000))*(r12)*(x10688)*(x10690)))+(((IkReal(-1.00000000000000))*(x10690)*(x10693)*(x10702)))+(((IkReal(-1.00000000000000))*(r00)*(x10697)*(x10703)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10706=(cj1)*(cj1); +IkReal x10707=(sj1)*(sj1); +IkReal x10708=((r00)*(sj6)); +IkReal x10709=((cj6)*(r01)); +IkReal x10710=((IkReal(1.00000000000000))*(cj1)); +IkReal x10711=((cj5)*(r22)); +IkReal x10712=((sj5)*(sj6)); +IkReal x10713=((r10)*(sj0)); +IkReal x10714=((cj1)*(cj5)); +IkReal x10715=((cj0)*(r02)); +IkReal x10716=((r12)*(sj0)); +IkReal x10717=((IkReal(1.00000000000000))*(sj1)); +IkReal x10718=((cj6)*(sj5)); +IkReal x10719=((cj0)*(sj5)); +IkReal x10720=((r11)*(sj0)); +IkReal x10721=((sj1)*(x10719)); +if( IKabs(((((IKabs(((((cj2)*(x10706)))+(((cj2)*(x10707))))) != 0)?((IkReal)1/(((((cj2)*(x10706)))+(((cj2)*(x10707)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10710)*(x10711)))+(((cj1)*(r20)*(x10712)))+(((sj1)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(cj5)*(x10716)*(x10717)))+(((cj1)*(r21)*(x10718)))+(((sj1)*(x10718)*(x10720)))+(((x10709)*(x10721)))+(((IkReal(-1.00000000000000))*(cj5)*(x10715)*(x10717)))+(((x10708)*(x10721))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x10707)+(x10706))) != 0)?((IkReal)1/(((x10707)+(x10706)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10709)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10708)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10710)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(x10710)*(x10718)*(x10720)))+(((IkReal(-1.00000000000000))*(x10711)*(x10717)))+(((r21)*(sj1)*(x10718)))+(((x10714)*(x10716)))+(((x10714)*(x10715)))+(((r20)*(sj1)*(x10712))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x10706)))+(((cj2)*(x10707))))) != 0)?((IkReal)1/(((((cj2)*(x10706)))+(((cj2)*(x10707)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10710)*(x10711)))+(((cj1)*(r20)*(x10712)))+(((sj1)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(cj5)*(x10716)*(x10717)))+(((cj1)*(r21)*(x10718)))+(((sj1)*(x10718)*(x10720)))+(((x10709)*(x10721)))+(((IkReal(-1.00000000000000))*(cj5)*(x10715)*(x10717)))+(((x10708)*(x10721)))))))+IKsqr(((((IKabs(((x10707)+(x10706))) != 0)?((IkReal)1/(((x10707)+(x10706)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10709)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10708)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10710)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(x10710)*(x10718)*(x10720)))+(((IkReal(-1.00000000000000))*(x10711)*(x10717)))+(((r21)*(sj1)*(x10718)))+(((x10714)*(x10716)))+(((x10714)*(x10715)))+(((r20)*(sj1)*(x10712)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x10706)))+(((cj2)*(x10707))))) != 0)?((IkReal)1/(((((cj2)*(x10706)))+(((cj2)*(x10707)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10710)*(x10711)))+(((cj1)*(r20)*(x10712)))+(((sj1)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(cj5)*(x10716)*(x10717)))+(((cj1)*(r21)*(x10718)))+(((sj1)*(x10718)*(x10720)))+(((x10709)*(x10721)))+(((IkReal(-1.00000000000000))*(cj5)*(x10715)*(x10717)))+(((x10708)*(x10721)))))), ((((IKabs(((x10707)+(x10706))) != 0)?((IkReal)1/(((x10707)+(x10706)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10709)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10708)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10710)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(x10710)*(x10718)*(x10720)))+(((IkReal(-1.00000000000000))*(x10711)*(x10717)))+(((r21)*(sj1)*(x10718)))+(((x10714)*(x10716)))+(((x10714)*(x10715)))+(((r20)*(sj1)*(x10712))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x10722=IKsin(j3); +IkReal x10723=IKcos(j3); +IkReal x10724=((sj5)*(sj6)); +IkReal x10725=((cj0)*(cj5)); +IkReal x10726=((IkReal(1.00000000000000))*(cj0)); +IkReal x10727=((IkReal(1.00000000000000))*(sj0)); +IkReal x10728=((IkReal(1.00000000000000))*(x10723)); +IkReal x10729=((IkReal(1.00000000000000))*(x10722)); +IkReal x10730=((cj6)*(r01)*(sj5)); +IkReal x10731=((cj6)*(r11)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x10728)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj1)*(cj2)*(x10729)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x10724)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj2)*(x10729)))+(((sj0)*(x10730)))+(((IkReal(-1.00000000000000))*(x10726)*(x10731)))+(((r00)*(sj0)*(x10724)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x10727)))+(((r12)*(x10725)))+(((IkReal(-1.00000000000000))*(r10)*(x10724)*(x10726)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10727)*(x10731)))+(((IkReal(-1.00000000000000))*(x10726)*(x10730)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x10724)*(x10726)))+(((IkReal(-1.00000000000000))*(r10)*(x10724)*(x10727)))+(((cj2)*(sj1)*(x10722)))+(((r02)*(x10725)))+(((IkReal(-1.00000000000000))*(cj1)*(x10728)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst2; +IkReal x10732=(r21)*(r21); +IkReal x10733=(cj5)*(cj5); +IkReal x10734=(sj6)*(sj6); +IkReal x10735=(cj6)*(cj6); +IkReal x10736=(r20)*(r20); +IkReal x10737=((cj6)*(r21)); +IkReal x10738=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x10739=((cj5)*(r22)*(sj5)); +IkReal x10740=((IkReal(1.00000000000000))*(x10734)); +IkReal x10741=((IkReal(1.00000000000000))*(x10735)); +gconst2=IKsign(((((IkReal(-1.00000000000000))*(x10736)*(x10741)))+(((IkReal(-1.00000000000000))*(x10733)*(x10736)*(x10740)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x10733)*(x10737)*(x10738)))+(((x10737)*(x10738)))+(((IkReal(-2.00000000000000))*(x10737)*(x10739)))+(((IkReal(-1.00000000000000))*(x10732)*(x10740)))+(((IkReal(-1.00000000000000))*(x10732)*(x10733)*(x10741)))+(((IkReal(-1.00000000000000))*(x10738)*(x10739))))); +IkReal x10742=(r21)*(r21); +IkReal x10743=(cj5)*(cj5); +IkReal x10744=(sj6)*(sj6); +IkReal x10745=(cj6)*(cj6); +IkReal x10746=(r20)*(r20); +IkReal x10747=((cj6)*(r21)); +IkReal x10748=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x10749=((cj5)*(r22)*(sj5)); +IkReal x10750=((IkReal(1.00000000000000))*(x10744)); +IkReal x10751=((IkReal(1.00000000000000))*(x10745)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x10742)*(x10743)*(x10751)))+(((IkReal(-1.00000000000000))*(x10743)*(x10746)*(x10750)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x10743)*(x10747)*(x10748)))+(((IkReal(-1.00000000000000))*(x10746)*(x10751)))+(((IkReal(-1.00000000000000))*(x10748)*(x10749)))+(((x10747)*(x10748)))+(((IkReal(-1.00000000000000))*(x10742)*(x10750)))+(((IkReal(-2.00000000000000))*(x10747)*(x10749)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst3; +IkReal x10752=(cj6)*(cj6); +IkReal x10753=(sj6)*(sj6); +IkReal x10754=((IkReal(1.00000000000000))*(r21)); +IkReal x10755=((cj6)*(r20)); +IkReal x10756=((r22)*(sj5)); +IkReal x10757=((r01)*(sj0)); +IkReal x10758=((r00)*(sj0)); +IkReal x10759=((cj0)*(r10)); +IkReal x10760=((r02)*(sj0)*(sj5)); +IkReal x10761=((cj5)*(x10752)); +IkReal x10762=((cj0)*(r12)*(sj5)); +IkReal x10763=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x10764=((cj5)*(x10753)); +IkReal x10765=((r20)*(x10764)); +gconst3=IKsign(((((x10757)*(x10765)))+(((IkReal(-1.00000000000000))*(x10754)*(x10758)*(x10764)))+(((IkReal(-1.00000000000000))*(x10763)*(x10765)))+(((IkReal(-1.00000000000000))*(sj6)*(x10756)*(x10763)))+(((IkReal(-1.00000000000000))*(r20)*(x10761)*(x10763)))+(((sj6)*(x10756)*(x10757)))+(((IkReal(-1.00000000000000))*(x10755)*(x10762)))+(((r20)*(x10757)*(x10761)))+(((r21)*(sj6)*(x10762)))+(((IkReal(-1.00000000000000))*(x10754)*(x10758)*(x10761)))+(((IkReal(-1.00000000000000))*(cj6)*(x10756)*(x10758)))+(((cj6)*(x10756)*(x10759)))+(((x10755)*(x10760)))+(((IkReal(-1.00000000000000))*(sj6)*(x10754)*(x10760)))+(((r21)*(x10759)*(x10761)))+(((r21)*(x10759)*(x10764))))); +IkReal x10766=(cj6)*(cj6); +IkReal x10767=(sj6)*(sj6); +IkReal x10768=((IkReal(1.00000000000000))*(r21)); +IkReal x10769=((cj6)*(r20)); +IkReal x10770=((r22)*(sj5)); +IkReal x10771=((r01)*(sj0)); +IkReal x10772=((r00)*(sj0)); +IkReal x10773=((cj0)*(r10)); +IkReal x10774=((r02)*(sj0)*(sj5)); +IkReal x10775=((cj5)*(x10766)); +IkReal x10776=((cj0)*(r12)*(sj5)); +IkReal x10777=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x10778=((cj5)*(x10767)); +IkReal x10779=((r20)*(x10778)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(sj6)*(x10770)*(x10777)))+(((IkReal(-1.00000000000000))*(x10777)*(x10779)))+(((r21)*(sj6)*(x10776)))+(((r21)*(x10773)*(x10778)))+(((IkReal(-1.00000000000000))*(cj6)*(x10770)*(x10772)))+(((r20)*(x10771)*(x10775)))+(((IkReal(-1.00000000000000))*(x10768)*(x10772)*(x10778)))+(((cj6)*(x10770)*(x10773)))+(((sj6)*(x10770)*(x10771)))+(((IkReal(-1.00000000000000))*(sj6)*(x10768)*(x10774)))+(((IkReal(-1.00000000000000))*(x10769)*(x10776)))+(((r21)*(x10773)*(x10775)))+(((IkReal(-1.00000000000000))*(x10768)*(x10772)*(x10775)))+(((x10771)*(x10779)))+(((x10769)*(x10774)))+(((IkReal(-1.00000000000000))*(r20)*(x10775)*(x10777)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10780=((cj5)*(sj6)); +IkReal x10781=((cj2)*(r21)); +IkReal x10782=((cj5)*(cj6)); +IkReal x10783=((IkReal(1.00000000000000))*(cj2)*(r20)); +IkReal x10784=((cj0)*(cj1)*(sj2)); +IkReal x10785=((IkReal(1.00000000000000))*(cj1)*(sj0)*(sj2)); +IkReal x10786=((r10)*(x10784)); +if( IKabs(((gconst3)*(((((IkReal(-1.00000000000000))*(cj6)*(r00)*(x10785)))+(((cj6)*(x10786)))+(((cj1)*(r01)*(sj0)*(sj2)*(sj6)))+(((sj6)*(x10781)))+(((IkReal(-1.00000000000000))*(cj6)*(x10783)))+(((IkReal(-1.00000000000000))*(r11)*(sj6)*(x10784))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst3)*(((((r11)*(x10782)*(x10784)))+(((r12)*(sj5)*(x10784)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x10785)))+(((x10780)*(x10786)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x10781)*(x10782)))+(((IkReal(-1.00000000000000))*(r00)*(x10780)*(x10785)))+(((IkReal(-1.00000000000000))*(r01)*(x10782)*(x10785)))+(((IkReal(-1.00000000000000))*(x10780)*(x10783))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst3)*(((((IkReal(-1.00000000000000))*(cj6)*(r00)*(x10785)))+(((cj6)*(x10786)))+(((cj1)*(r01)*(sj0)*(sj2)*(sj6)))+(((sj6)*(x10781)))+(((IkReal(-1.00000000000000))*(cj6)*(x10783)))+(((IkReal(-1.00000000000000))*(r11)*(sj6)*(x10784)))))), ((gconst3)*(((((r11)*(x10782)*(x10784)))+(((r12)*(sj5)*(x10784)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x10785)))+(((x10780)*(x10786)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x10781)*(x10782)))+(((IkReal(-1.00000000000000))*(r00)*(x10780)*(x10785)))+(((IkReal(-1.00000000000000))*(r01)*(x10782)*(x10785)))+(((IkReal(-1.00000000000000))*(x10780)*(x10783))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x10787=IKsin(j4); +IkReal x10788=IKcos(j4); +IkReal x10789=((r00)*(sj6)); +IkReal x10790=((IkReal(1.00000000000000))*(r12)); +IkReal x10791=((IkReal(1.00000000000000))*(cj6)); +IkReal x10792=((cj6)*(r01)); +IkReal x10793=((IkReal(1.00000000000000))*(cj1)); +IkReal x10794=((cj2)*(cj3)); +IkReal x10795=((IkReal(1.00000000000000))*(sj1)); +IkReal x10796=((r11)*(sj6)); +IkReal x10797=((r01)*(sj6)); +IkReal x10798=((IkReal(1.00000000000000))*(cj5)); +IkReal x10799=((r10)*(sj6)); +IkReal x10800=((cj5)*(r11)); +IkReal x10801=((cj6)*(r00)); +IkReal x10802=((r21)*(sj6)); +IkReal x10803=((r02)*(sj5)); +IkReal x10804=((cj6)*(r10)); +IkReal x10805=((cj5)*(sj6)); +IkReal x10806=((cj5)*(r01)); +IkReal x10807=((sj5)*(x10787)); +IkReal x10808=((cj0)*(x10788)); +IkReal x10809=((cj0)*(x10787)); +IkReal x10810=((sj0)*(x10788)); +IkReal x10811=((sj0)*(x10787)); +IkReal x10812=((r20)*(x10788)); +IkReal x10813=((cj5)*(cj6)*(r21)); +IkReal x10814=((r20)*(x10787)); +IkReal x10815=((cj5)*(x10811)); +evalcond[0]=((((x10787)*(x10813)))+(((x10788)*(x10802)))+(((IkReal(-1.00000000000000))*(sj2)*(x10793)))+(((r22)*(x10807)))+(((x10805)*(x10814)))+(((IkReal(-1.00000000000000))*(x10791)*(x10812)))); +evalcond[1]=((((x10788)*(x10813)))+(((cj1)*(x10794)))+(((r22)*(sj5)*(x10788)))+(((x10805)*(x10812)))+(((IkReal(-1.00000000000000))*(sj3)*(x10795)))+(((cj6)*(x10814)))+(((IkReal(-1.00000000000000))*(x10787)*(x10802)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10791)*(x10800)*(x10809)))+(((IkReal(-1.00000000000000))*(x10798)*(x10799)*(x10809)))+(((x10803)*(x10811)))+(((IkReal(-1.00000000000000))*(x10796)*(x10808)))+(((x10804)*(x10808)))+(((IkReal(-1.00000000000000))*(cj0)*(x10790)*(x10807)))+(((x10797)*(x10810)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x10791)*(x10810)))+(((x10792)*(x10815)))+(((x10789)*(x10815)))); +evalcond[3]=((((cj5)*(x10789)*(x10810)))+(((IkReal(-1.00000000000000))*(sj5)*(x10790)*(x10808)))+(((x10801)*(x10811)))+(((IkReal(-1.00000000000000))*(x10797)*(x10811)))+(((cj5)*(x10792)*(x10810)))+(((x10796)*(x10809)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(r10)*(x10791)*(x10809)))+(((IkReal(-1.00000000000000))*(x10798)*(x10799)*(x10808)))+(((x10803)*(x10810)))+(((IkReal(-1.00000000000000))*(x10791)*(x10800)*(x10808)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(sj0)*(x10790)*(x10807)))+(((IkReal(-1.00000000000000))*(x10797)*(x10808)))+(((IkReal(-1.00000000000000))*(x10791)*(x10800)*(x10811)))+(((IkReal(-1.00000000000000))*(x10798)*(x10799)*(x10811)))+(((IkReal(-1.00000000000000))*(x10796)*(x10810)))+(((sj1)*(sj2)))+(((x10801)*(x10808)))+(((IkReal(-1.00000000000000))*(x10803)*(x10809)))+(((IkReal(-1.00000000000000))*(x10789)*(x10798)*(x10809)))+(((IkReal(-1.00000000000000))*(x10791)*(x10806)*(x10809)))+(((x10804)*(x10810)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10791)*(x10800)*(x10810)))+(((IkReal(-1.00000000000000))*(x10789)*(x10798)*(x10808)))+(((x10797)*(x10809)))+(((IkReal(-1.00000000000000))*(sj3)*(x10793)))+(((x10796)*(x10811)))+(((IkReal(-1.00000000000000))*(x10803)*(x10808)))+(((IkReal(-1.00000000000000))*(r00)*(x10791)*(x10809)))+(((IkReal(-1.00000000000000))*(x10791)*(x10806)*(x10808)))+(((IkReal(-1.00000000000000))*(sj5)*(x10790)*(x10810)))+(((IkReal(-1.00000000000000))*(r10)*(x10791)*(x10811)))+(((IkReal(-1.00000000000000))*(x10794)*(x10795)))+(((IkReal(-1.00000000000000))*(x10798)*(x10799)*(x10810)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10816=((cj1)*(sj2)); +IkReal x10817=((cj6)*(r20)); +IkReal x10818=((sj1)*(sj3)); +IkReal x10819=((r21)*(sj6)); +IkReal x10820=((IkReal(1.00000000000000))*(cj5)); +IkReal x10821=((cj6)*(r21)); +IkReal x10822=((r20)*(sj6)); +IkReal x10823=((IkReal(1.00000000000000))*(r22)*(sj5)); +IkReal x10824=((cj1)*(cj2)*(cj3)); +if( IKabs(((gconst2)*(((((x10818)*(x10819)))+(((IkReal(-1.00000000000000))*(x10816)*(x10820)*(x10822)))+(((IkReal(-1.00000000000000))*(x10816)*(x10820)*(x10821)))+(((IkReal(-1.00000000000000))*(x10819)*(x10824)))+(((x10817)*(x10824)))+(((IkReal(-1.00000000000000))*(x10816)*(x10823)))+(((IkReal(-1.00000000000000))*(x10817)*(x10818))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst2)*(((((IkReal(-1.00000000000000))*(x10818)*(x10820)*(x10822)))+(((cj5)*(x10821)*(x10824)))+(((IkReal(-1.00000000000000))*(x10816)*(x10819)))+(((r22)*(sj5)*(x10824)))+(((IkReal(-1.00000000000000))*(x10818)*(x10823)))+(((cj5)*(x10822)*(x10824)))+(((IkReal(-1.00000000000000))*(x10818)*(x10820)*(x10821)))+(((x10816)*(x10817))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst2)*(((((x10818)*(x10819)))+(((IkReal(-1.00000000000000))*(x10816)*(x10820)*(x10822)))+(((IkReal(-1.00000000000000))*(x10816)*(x10820)*(x10821)))+(((IkReal(-1.00000000000000))*(x10819)*(x10824)))+(((x10817)*(x10824)))+(((IkReal(-1.00000000000000))*(x10816)*(x10823)))+(((IkReal(-1.00000000000000))*(x10817)*(x10818)))))), ((gconst2)*(((((IkReal(-1.00000000000000))*(x10818)*(x10820)*(x10822)))+(((cj5)*(x10821)*(x10824)))+(((IkReal(-1.00000000000000))*(x10816)*(x10819)))+(((r22)*(sj5)*(x10824)))+(((IkReal(-1.00000000000000))*(x10818)*(x10823)))+(((cj5)*(x10822)*(x10824)))+(((IkReal(-1.00000000000000))*(x10818)*(x10820)*(x10821)))+(((x10816)*(x10817))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x10825=IKsin(j4); +IkReal x10826=IKcos(j4); +IkReal x10827=((r00)*(sj6)); +IkReal x10828=((IkReal(1.00000000000000))*(r12)); +IkReal x10829=((IkReal(1.00000000000000))*(cj6)); +IkReal x10830=((cj6)*(r01)); +IkReal x10831=((IkReal(1.00000000000000))*(cj1)); +IkReal x10832=((cj2)*(cj3)); +IkReal x10833=((IkReal(1.00000000000000))*(sj1)); +IkReal x10834=((r11)*(sj6)); +IkReal x10835=((r01)*(sj6)); +IkReal x10836=((IkReal(1.00000000000000))*(cj5)); +IkReal x10837=((r10)*(sj6)); +IkReal x10838=((cj5)*(r11)); +IkReal x10839=((cj6)*(r00)); +IkReal x10840=((r21)*(sj6)); +IkReal x10841=((r02)*(sj5)); +IkReal x10842=((cj6)*(r10)); +IkReal x10843=((cj5)*(sj6)); +IkReal x10844=((cj5)*(r01)); +IkReal x10845=((sj5)*(x10825)); +IkReal x10846=((cj0)*(x10826)); +IkReal x10847=((cj0)*(x10825)); +IkReal x10848=((sj0)*(x10826)); +IkReal x10849=((sj0)*(x10825)); +IkReal x10850=((r20)*(x10826)); +IkReal x10851=((cj5)*(cj6)*(r21)); +IkReal x10852=((r20)*(x10825)); +IkReal x10853=((cj5)*(x10849)); +evalcond[0]=((((x10825)*(x10851)))+(((x10843)*(x10852)))+(((IkReal(-1.00000000000000))*(x10829)*(x10850)))+(((r22)*(x10845)))+(((x10826)*(x10840)))+(((IkReal(-1.00000000000000))*(sj2)*(x10831)))); +evalcond[1]=((((x10843)*(x10850)))+(((cj6)*(x10852)))+(((x10826)*(x10851)))+(((IkReal(-1.00000000000000))*(x10825)*(x10840)))+(((r22)*(sj5)*(x10826)))+(((cj1)*(x10832)))+(((IkReal(-1.00000000000000))*(sj3)*(x10833)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10834)*(x10846)))+(((x10842)*(x10846)))+(((x10835)*(x10848)))+(((x10841)*(x10849)))+(((IkReal(-1.00000000000000))*(x10829)*(x10838)*(x10847)))+(((x10830)*(x10853)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x10829)*(x10848)))+(((IkReal(-1.00000000000000))*(x10836)*(x10837)*(x10847)))+(((x10827)*(x10853)))+(((IkReal(-1.00000000000000))*(cj0)*(x10828)*(x10845)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x10829)*(x10847)))+(((IkReal(-1.00000000000000))*(x10829)*(x10838)*(x10846)))+(((x10839)*(x10849)))+(((cj5)*(x10830)*(x10848)))+(((IkReal(-1.00000000000000))*(x10836)*(x10837)*(x10846)))+(((x10834)*(x10847)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(x10835)*(x10849)))+(((x10841)*(x10848)))+(((cj5)*(x10827)*(x10848)))+(((IkReal(-1.00000000000000))*(sj5)*(x10828)*(x10846)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x10836)*(x10837)*(x10849)))+(((IkReal(-1.00000000000000))*(x10834)*(x10848)))+(((IkReal(-1.00000000000000))*(x10835)*(x10846)))+(((IkReal(-1.00000000000000))*(x10841)*(x10847)))+(((IkReal(-1.00000000000000))*(sj0)*(x10828)*(x10845)))+(((IkReal(-1.00000000000000))*(x10829)*(x10844)*(x10847)))+(((x10842)*(x10848)))+(((IkReal(-1.00000000000000))*(x10827)*(x10836)*(x10847)))+(((IkReal(-1.00000000000000))*(x10829)*(x10838)*(x10849)))+(((sj1)*(sj2)))+(((x10839)*(x10846)))); +evalcond[5]=((((x10834)*(x10849)))+(((IkReal(-1.00000000000000))*(x10829)*(x10838)*(x10848)))+(((IkReal(-1.00000000000000))*(x10836)*(x10837)*(x10848)))+(((IkReal(-1.00000000000000))*(r00)*(x10829)*(x10847)))+(((IkReal(-1.00000000000000))*(x10829)*(x10844)*(x10846)))+(((IkReal(-1.00000000000000))*(sj3)*(x10831)))+(((IkReal(-1.00000000000000))*(r10)*(x10829)*(x10849)))+(((IkReal(-1.00000000000000))*(x10832)*(x10833)))+(((IkReal(-1.00000000000000))*(x10827)*(x10836)*(x10846)))+(((IkReal(-1.00000000000000))*(sj5)*(x10828)*(x10848)))+(((IkReal(-1.00000000000000))*(x10841)*(x10846)))+(((x10835)*(x10847)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10854=((cj0)*(r00)); +IkReal x10855=((r10)*(sj0)); +IkReal x10856=((cj0)*(r01)); +IkReal x10857=((IkReal(1.00000000000000))*(cj5)); +IkReal x10858=((r11)*(sj0)); +IkReal x10859=((sj2)*(sj5)); +IkReal x10860=((IkReal(1.00000000000000))*(cj1)); +IkReal x10861=((r20)*(sj1)*(sj2)); +IkReal x10862=((cj1)*(sj2)*(sj6)); +IkReal x10863=((r21)*(sj1)*(sj2)); +IkReal x10864=((cj6)*(sj2)*(x10860)); +if( IKabs(((gconst1)*(((((IkReal(-1.00000000000000))*(sj6)*(x10863)))+(((x10858)*(x10862)))+(((IkReal(-1.00000000000000))*(x10854)*(x10864)))+(((x10856)*(x10862)))+(((cj6)*(x10861)))+(((IkReal(-1.00000000000000))*(x10855)*(x10864))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst1)*(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10859)*(x10860)))+(((IkReal(-1.00000000000000))*(x10854)*(x10857)*(x10862)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x10857)*(x10858)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x10856)*(x10857)))+(((cj5)*(sj6)*(x10861)))+(((r22)*(sj1)*(x10859)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10859)*(x10860)))+(((IkReal(-1.00000000000000))*(x10855)*(x10857)*(x10862)))+(((cj5)*(cj6)*(x10863))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst1)*(((((IkReal(-1.00000000000000))*(sj6)*(x10863)))+(((x10858)*(x10862)))+(((IkReal(-1.00000000000000))*(x10854)*(x10864)))+(((x10856)*(x10862)))+(((cj6)*(x10861)))+(((IkReal(-1.00000000000000))*(x10855)*(x10864)))))), ((gconst1)*(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10859)*(x10860)))+(((IkReal(-1.00000000000000))*(x10854)*(x10857)*(x10862)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x10857)*(x10858)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x10856)*(x10857)))+(((cj5)*(sj6)*(x10861)))+(((r22)*(sj1)*(x10859)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10859)*(x10860)))+(((IkReal(-1.00000000000000))*(x10855)*(x10857)*(x10862)))+(((cj5)*(cj6)*(x10863))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x10865=IKsin(j4); +IkReal x10866=IKcos(j4); +IkReal x10867=((r00)*(sj6)); +IkReal x10868=((cj6)*(r01)); +IkReal x10869=((IkReal(1.00000000000000))*(cj0)); +IkReal x10870=((IkReal(1.00000000000000))*(sj0)); +IkReal x10871=((r10)*(sj6)); +IkReal x10872=((sj5)*(x10865)); +IkReal x10873=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x10874=((cj5)*(x10865)); +IkReal x10875=((cj6)*(x10866)); +IkReal x10876=((sj0)*(x10874)); +IkReal x10877=((r01)*(sj6)*(x10866)); +IkReal x10878=((r11)*(sj6)*(x10866)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r20)*(x10875)))+(((cj6)*(r21)*(x10874)))+(((IkReal(-1.00000000000000))*(cj1)*(sj2)))+(((r21)*(sj6)*(x10866)))+(((r20)*(sj6)*(x10874)))+(((r22)*(x10872)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10869)*(x10878)))+(((cj0)*(r10)*(x10875)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10869)*(x10874)))+(((sj0)*(x10877)))+(((IkReal(-1.00000000000000))*(r12)*(x10869)*(x10872)))+(((x10868)*(x10876)))+(((IkReal(-1.00000000000000))*(x10869)*(x10871)*(x10874)))+(cj2)+(((r02)*(sj0)*(x10872)))+(((x10867)*(x10876)))+(((IkReal(-1.00000000000000))*(r00)*(x10870)*(x10875)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10869)*(x10877)))+(((cj0)*(r00)*(x10875)))+(((IkReal(-1.00000000000000))*(r02)*(x10869)*(x10872)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10870)*(x10874)))+(((IkReal(-1.00000000000000))*(x10870)*(x10878)))+(((sj1)*(sj2)))+(((IkReal(-1.00000000000000))*(x10867)*(x10869)*(x10874)))+(((IkReal(-1.00000000000000))*(x10868)*(x10869)*(x10874)))+(((IkReal(-1.00000000000000))*(r12)*(x10870)*(x10872)))+(((IkReal(-1.00000000000000))*(x10870)*(x10871)*(x10874)))+(((r10)*(sj0)*(x10875)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst4; +gconst4=IKsign((((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2)))))); +dummyeval[0]=(((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2))))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x10879=(cj1)*(cj1); +IkReal x10880=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x10880)))+(((cj2)*(x10879)))); +dummyeval[1]=((x10879)+(x10880)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +dummyeval[0]=sj2; +dummyeval[1]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x10881=((cj5)*(sj4)); +IkReal x10882=((IkReal(1.00000000000000))*(sj6)); +IkReal x10883=((r10)*(sj0)); +IkReal x10884=((sj4)*(sj5)); +IkReal x10885=((cj4)*(cj5)); +IkReal x10886=((IkReal(1.00000000000000))*(r02)); +IkReal x10887=((IkReal(0.374290000000000))*(cj0)); +IkReal x10888=((cj5)*(r12)); +IkReal x10889=((cj6)*(sj5)); +IkReal x10890=((cj0)*(r11)); +IkReal x10891=((cj5)*(sj0)); +IkReal x10892=((r20)*(sj6)); +IkReal x10893=((IkReal(1.00000000000000))*(sj0)); +IkReal x10894=((IkReal(1.00000000000000))*(cj6)); +IkReal x10895=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10896=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10897=((sj5)*(sj6)); +IkReal x10898=((cj0)*(r10)); +IkReal x10899=((cj4)*(cj6)); +IkReal x10900=((cj0)*(r01)); +IkReal x10901=((cj0)*(r00)); +IkReal x10902=((cj6)*(r21)); +IkReal x10903=((IkReal(0.374290000000000))*(sj0)); +IkReal x10904=((IkReal(0.374290000000000))*(sj5)); +IkReal x10905=((cj6)*(r11)); +IkReal x10906=((sj0)*(sj4)); +IkReal x10907=((cj4)*(sj5)); +IkReal x10908=((cj4)*(sj6)); +IkReal x10909=((IkReal(1.00000000000000))*(cj0)); +IkReal x10910=((r02)*(sj0)); +IkReal x10911=((r00)*(sj0)*(sj6)); +IkReal x10912=((cj6)*(r01)*(sj0)); +IkReal x10913=((r00)*(x10899)); +IkReal x10914=((r12)*(x10909)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x10908)))+(((x10881)*(x10902)))+(((r22)*(x10884)))+(((x10881)*(x10892)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x10894)))); +evalcond[2]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(0.374290000000000))*(r21)*(x10889)))+(((IkReal(-1.00000000000000))*(r22)*(x10896)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x10892)*(x10904)))+(((IkReal(-1.00000000000000))*(x10892)*(x10895)))+(pz)+(((IkReal(-1.00000000000000))*(x10895)*(x10902)))+(((IkReal(0.0690000000000000))*(cj1)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10886)*(x10891)))+(((r00)*(sj0)*(x10897)))+(((r01)*(sj0)*(x10889)))+(((IkReal(-1.00000000000000))*(x10889)*(x10890)))+(((IkReal(-1.00000000000000))*(sj5)*(x10882)*(x10898)))+(((cj0)*(x10888)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x10881)*(x10890)*(x10894)))+(((x10898)*(x10899)))+(((IkReal(-1.00000000000000))*(x10884)*(x10914)))+(((x10881)*(x10911)))+(((r01)*(sj0)*(x10908)))+(((IkReal(-1.00000000000000))*(x10893)*(x10913)))+(((IkReal(-1.00000000000000))*(x10881)*(x10882)*(x10898)))+(((IkReal(-1.00000000000000))*(cj4)*(x10882)*(x10890)))+(((x10884)*(x10910)))+(((x10881)*(x10912)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10882)*(x10885)*(x10898)))+(((IkReal(-1.00000000000000))*(x10885)*(x10890)*(x10894)))+(((sj4)*(sj6)*(x10890)))+(((IkReal(-1.00000000000000))*(sj4)*(x10894)*(x10898)))+(((IkReal(-1.00000000000000))*(r01)*(x10882)*(x10906)))+(((x10907)*(x10910)))+(((x10885)*(x10912)))+(((x10885)*(x10911)))+(((cj6)*(r00)*(x10906)))+(((IkReal(-1.00000000000000))*(x10907)*(x10914)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r12)*(x10884)*(x10893)))+(((IkReal(-1.00000000000000))*(x10881)*(x10893)*(x10905)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x10882)))+(((IkReal(-1.00000000000000))*(x10881)*(x10882)*(x10883)))+(((IkReal(-1.00000000000000))*(cj0)*(x10884)*(x10886)))+(((IkReal(-1.00000000000000))*(x10881)*(x10894)*(x10900)))+(((IkReal(-1.00000000000000))*(x10881)*(x10882)*(x10901)))+(((x10899)*(x10901)))+(((x10883)*(x10899)))+(((IkReal(-1.00000000000000))*(cj4)*(x10882)*(x10900)))); +evalcond[7]=((((IkReal(-0.374290000000000))*(r02)*(x10891)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x10891)))+(((IkReal(-1.00000000000000))*(x10896)*(x10910)))+(((IkReal(-1.00000000000000))*(r11)*(x10887)*(x10889)))+(((sj6)*(x10895)*(x10898)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x10891)))+(((IkReal(-1.00000000000000))*(py)*(x10909)))+(((r00)*(x10897)*(x10903)))+(((cj6)*(x10890)*(x10895)))+(((IkReal(-1.00000000000000))*(r10)*(x10887)*(x10897)))+(((x10887)*(x10888)))+(((r01)*(x10889)*(x10903)))+(((px)*(sj0)))+(((cj0)*(r12)*(x10896)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj0)*(r02)*(x10896)))+(((IkReal(-0.0690000000000000))*(sj1)))+(((x10888)*(x10903)))+(((r12)*(sj0)*(x10896)))+(((IkReal(-1.00000000000000))*(py)*(x10893)))+(((IkReal(-0.374290000000000))*(x10883)*(x10897)))+(((IkReal(-1.00000000000000))*(r01)*(x10887)*(x10889)))+(((sj6)*(x10883)*(x10895)))+(((cj6)*(x10895)*(x10900)))+(((cj5)*(r02)*(x10887)))+(((IkReal(-1.00000000000000))*(px)*(x10909)))+(((IkReal(-1.00000000000000))*(r11)*(x10889)*(x10903)))+(((IkReal(0.0100000000000000))*(x10891)*(x10905)))+(((IkReal(-1.00000000000000))*(r00)*(x10887)*(x10897)))+(((sj6)*(x10895)*(x10901)))+(((IkReal(0.364420000000000))*(cj1)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst5; +gconst5=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst6; +gconst6=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10915=((sj5)*(sj6)); +IkReal x10916=((IkReal(1.00000000000000))*(sj0)); +IkReal x10917=((cj5)*(r12)); +IkReal x10918=((cj0)*(r00)); +IkReal x10919=((cj0)*(cj1)); +IkReal x10920=((cj6)*(sj5)); +IkReal x10921=((cj5)*(r02)); +IkReal x10922=((IkReal(1.00000000000000))*(cj1)); +IkReal x10923=((sj0)*(sj1)); +IkReal x10924=((cj0)*(sj1)); +IkReal x10925=((cj5)*(r22)); +if( IKabs(((gconst6)*(((((r10)*(x10915)*(x10923)))+(((IkReal(-1.00000000000000))*(sj1)*(x10916)*(x10917)))+(((sj1)*(x10915)*(x10918)))+(((cj1)*(r21)*(x10920)))+(((r11)*(x10920)*(x10923)))+(((cj1)*(r20)*(x10915)))+(((IkReal(-1.00000000000000))*(x10921)*(x10924)))+(((IkReal(-1.00000000000000))*(x10922)*(x10925)))+(((r01)*(x10920)*(x10924))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst6)*(((((r21)*(sj1)*(x10920)))+(((x10919)*(x10921)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x10916)*(x10920)))+(((r20)*(sj1)*(x10915)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x10915)*(x10916)))+(((cj1)*(sj0)*(x10917)))+(((IkReal(-1.00000000000000))*(r01)*(x10919)*(x10920)))+(((IkReal(-1.00000000000000))*(sj1)*(x10925)))+(((IkReal(-1.00000000000000))*(x10915)*(x10918)*(x10922))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst6)*(((((r10)*(x10915)*(x10923)))+(((IkReal(-1.00000000000000))*(sj1)*(x10916)*(x10917)))+(((sj1)*(x10915)*(x10918)))+(((cj1)*(r21)*(x10920)))+(((r11)*(x10920)*(x10923)))+(((cj1)*(r20)*(x10915)))+(((IkReal(-1.00000000000000))*(x10921)*(x10924)))+(((IkReal(-1.00000000000000))*(x10922)*(x10925)))+(((r01)*(x10920)*(x10924)))))), ((gconst6)*(((((r21)*(sj1)*(x10920)))+(((x10919)*(x10921)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x10916)*(x10920)))+(((r20)*(sj1)*(x10915)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x10915)*(x10916)))+(((cj1)*(sj0)*(x10917)))+(((IkReal(-1.00000000000000))*(r01)*(x10919)*(x10920)))+(((IkReal(-1.00000000000000))*(sj1)*(x10925)))+(((IkReal(-1.00000000000000))*(x10915)*(x10918)*(x10922))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10926=IKcos(j3); +IkReal x10927=IKsin(j3); +IkReal x10928=((IkReal(1.00000000000000))*(cj4)); +IkReal x10929=((sj0)*(sj5)); +IkReal x10930=((cj0)*(cj5)); +IkReal x10931=((cj6)*(r01)); +IkReal x10932=((r00)*(sj6)); +IkReal x10933=((cj6)*(r11)); +IkReal x10934=((cj5)*(sj0)); +IkReal x10935=((cj6)*(sj4)); +IkReal x10936=((sj4)*(sj6)); +IkReal x10937=((cj4)*(cj5)); +IkReal x10938=((cj6)*(r21)); +IkReal x10939=((r20)*(sj6)); +IkReal x10940=((r10)*(sj6)); +IkReal x10941=((cj1)*(x10926)); +IkReal x10942=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x10943=((IkReal(1.00000000000000))*(x10927)); +IkReal x10944=((IkReal(1.00000000000000))*(sj1)*(x10926)); +IkReal x10945=((cj1)*(x10943)); +IkReal x10946=((x10945)+(x10944)); +evalcond[0]=((((sj5)*(x10939)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10946)))+(((sj5)*(x10938)))); +evalcond[1]=((x10941)+(((x10937)*(x10939)))+(((r20)*(x10935)))+(((IkReal(-1.00000000000000))*(sj1)*(x10943)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x10936)))+(((x10937)*(x10938)))); +evalcond[2]=((((r02)*(x10930)))+(((IkReal(-1.00000000000000))*(x10929)*(x10933)))+(((sj1)*(x10927)))+(((IkReal(-1.00000000000000))*(x10931)*(x10942)))+(((IkReal(-1.00000000000000))*(x10932)*(x10942)))+(((IkReal(-1.00000000000000))*(x10929)*(x10940)))+(((IkReal(-1.00000000000000))*(x10941)))+(((r12)*(x10934)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10928)*(x10930)*(x10931)))+(((IkReal(-1.00000000000000))*(x10928)*(x10934)*(x10940)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x10928)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10935)))+(((cj0)*(r01)*(x10936)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x10935)))+(((IkReal(-1.00000000000000))*(x10946)))+(((IkReal(-1.00000000000000))*(x10928)*(x10930)*(x10932)))+(((IkReal(-1.00000000000000))*(x10928)*(x10933)*(x10934)))+(((r11)*(sj0)*(x10936)))+(((IkReal(-1.00000000000000))*(r12)*(x10928)*(x10929)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10947=((sj1)*(sj5)); +IkReal x10948=((r20)*(sj6)); +IkReal x10949=((cj4)*(r22)); +IkReal x10950=((IkReal(1.00000000000000))*(cj1)); +IkReal x10951=((cj5)*(sj1)); +IkReal x10952=((cj6)*(r21)); +IkReal x10953=((cj1)*(sj5)); +IkReal x10954=((cj4)*(cj5)); +IkReal x10955=((cj6)*(r20)*(sj4)); +IkReal x10956=((r21)*(sj4)*(sj6)); +if( IKabs(((gconst5)*(((((x10952)*(x10953)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x10950)))+(((cj4)*(x10951)*(x10952)))+(((x10948)*(x10953)))+(((x10947)*(x10949)))+(((sj1)*(x10955)))+(((cj4)*(x10948)*(x10951)))+(((IkReal(-1.00000000000000))*(sj1)*(x10956))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst5)*(((((IkReal(-1.00000000000000))*(x10950)*(x10952)*(x10954)))+(((x10947)*(x10948)))+(((x10947)*(x10952)))+(((IkReal(-1.00000000000000))*(x10950)*(x10955)))+(((IkReal(-1.00000000000000))*(x10948)*(x10950)*(x10954)))+(((IkReal(-1.00000000000000))*(sj5)*(x10949)*(x10950)))+(((cj1)*(x10956)))+(((IkReal(-1.00000000000000))*(r22)*(x10951))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst5)*(((((x10952)*(x10953)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x10950)))+(((cj4)*(x10951)*(x10952)))+(((x10948)*(x10953)))+(((x10947)*(x10949)))+(((sj1)*(x10955)))+(((cj4)*(x10948)*(x10951)))+(((IkReal(-1.00000000000000))*(sj1)*(x10956)))))), ((gconst5)*(((((IkReal(-1.00000000000000))*(x10950)*(x10952)*(x10954)))+(((x10947)*(x10948)))+(((x10947)*(x10952)))+(((IkReal(-1.00000000000000))*(x10950)*(x10955)))+(((IkReal(-1.00000000000000))*(x10948)*(x10950)*(x10954)))+(((IkReal(-1.00000000000000))*(sj5)*(x10949)*(x10950)))+(((cj1)*(x10956)))+(((IkReal(-1.00000000000000))*(r22)*(x10951))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10957=IKcos(j3); +IkReal x10958=IKsin(j3); +IkReal x10959=((IkReal(1.00000000000000))*(cj4)); +IkReal x10960=((sj0)*(sj5)); +IkReal x10961=((cj0)*(cj5)); +IkReal x10962=((cj6)*(r01)); +IkReal x10963=((r00)*(sj6)); +IkReal x10964=((cj6)*(r11)); +IkReal x10965=((cj5)*(sj0)); +IkReal x10966=((cj6)*(sj4)); +IkReal x10967=((sj4)*(sj6)); +IkReal x10968=((cj4)*(cj5)); +IkReal x10969=((cj6)*(r21)); +IkReal x10970=((r20)*(sj6)); +IkReal x10971=((r10)*(sj6)); +IkReal x10972=((cj1)*(x10957)); +IkReal x10973=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x10974=((IkReal(1.00000000000000))*(x10958)); +IkReal x10975=((IkReal(1.00000000000000))*(sj1)*(x10957)); +IkReal x10976=((cj1)*(x10974)); +IkReal x10977=((x10976)+(x10975)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x10977)))+(((sj5)*(x10969)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10970)))); +evalcond[1]=((((r20)*(x10966)))+(((x10968)*(x10969)))+(((IkReal(-1.00000000000000))*(sj1)*(x10974)))+(((x10968)*(x10970)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x10967)))+(x10972)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10972)))+(((r12)*(x10965)))+(((IkReal(-1.00000000000000))*(x10963)*(x10973)))+(((IkReal(-1.00000000000000))*(x10962)*(x10973)))+(((r02)*(x10961)))+(((IkReal(-1.00000000000000))*(x10960)*(x10964)))+(((sj1)*(x10958)))+(((IkReal(-1.00000000000000))*(x10960)*(x10971)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10977)))+(((IkReal(-1.00000000000000))*(x10959)*(x10961)*(x10963)))+(((IkReal(-1.00000000000000))*(x10959)*(x10964)*(x10965)))+(((IkReal(-1.00000000000000))*(x10959)*(x10961)*(x10962)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x10966)))+(((r11)*(sj0)*(x10967)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10966)))+(((IkReal(-1.00000000000000))*(r12)*(x10959)*(x10960)))+(((IkReal(-1.00000000000000))*(x10959)*(x10965)*(x10971)))+(((cj0)*(r01)*(x10967)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x10959)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x10978=((cj5)*(sj4)); +IkReal x10979=((IkReal(1.00000000000000))*(sj6)); +IkReal x10980=((r10)*(sj0)); +IkReal x10981=((sj4)*(sj5)); +IkReal x10982=((cj4)*(cj5)); +IkReal x10983=((IkReal(1.00000000000000))*(r02)); +IkReal x10984=((IkReal(0.374290000000000))*(cj0)); +IkReal x10985=((cj5)*(r12)); +IkReal x10986=((cj6)*(sj5)); +IkReal x10987=((cj0)*(r11)); +IkReal x10988=((cj5)*(sj0)); +IkReal x10989=((r20)*(sj6)); +IkReal x10990=((IkReal(1.00000000000000))*(sj0)); +IkReal x10991=((IkReal(1.00000000000000))*(cj6)); +IkReal x10992=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10993=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10994=((sj5)*(sj6)); +IkReal x10995=((cj0)*(r10)); +IkReal x10996=((cj4)*(cj6)); +IkReal x10997=((cj0)*(r01)); +IkReal x10998=((cj0)*(r00)); +IkReal x10999=((cj6)*(r21)); +IkReal x11000=((IkReal(0.374290000000000))*(sj0)); +IkReal x11001=((IkReal(0.374290000000000))*(sj5)); +IkReal x11002=((cj6)*(r11)); +IkReal x11003=((sj0)*(sj4)); +IkReal x11004=((cj4)*(sj5)); +IkReal x11005=((cj4)*(sj6)); +IkReal x11006=((IkReal(1.00000000000000))*(cj0)); +IkReal x11007=((r02)*(sj0)); +IkReal x11008=((r00)*(sj0)*(sj6)); +IkReal x11009=((cj6)*(r01)*(sj0)); +IkReal x11010=((r00)*(x10996)); +IkReal x11011=((r12)*(x11006)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj4)*(r20)*(x10991)))+(((x10978)*(x10989)))+(((r21)*(x11005)))+(((r22)*(x10981)))+(((x10978)*(x10999)))); +evalcond[2]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.0690000000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(r22)*(x10993)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(0.374290000000000))*(r21)*(x10986)))+(((IkReal(-1.00000000000000))*(x10992)*(x10999)))+(((x10989)*(x11001)))+(((IkReal(-1.00000000000000))*(x10989)*(x10992)))); +evalcond[3]=((((cj0)*(x10985)))+(((r01)*(sj0)*(x10986)))+(((r00)*(sj0)*(x10994)))+(((IkReal(-1.00000000000000))*(sj5)*(x10979)*(x10995)))+(((IkReal(-1.00000000000000))*(x10986)*(x10987)))+(((IkReal(-1.00000000000000))*(x10983)*(x10988)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(cj4)*(x10979)*(x10987)))+(((x10981)*(x11007)))+(((IkReal(-1.00000000000000))*(x10981)*(x11011)))+(((x10995)*(x10996)))+(((IkReal(-1.00000000000000))*(x10990)*(x11010)))+(((x10978)*(x11008)))+(((r01)*(sj0)*(x11005)))+(((x10978)*(x11009)))+(((IkReal(-1.00000000000000))*(x10978)*(x10987)*(x10991)))+(((IkReal(-1.00000000000000))*(x10978)*(x10979)*(x10995)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11004)*(x11011)))+(((x10982)*(x11008)))+(((IkReal(-1.00000000000000))*(r01)*(x10979)*(x11003)))+(((IkReal(-1.00000000000000))*(x10982)*(x10987)*(x10991)))+(((IkReal(-1.00000000000000))*(sj4)*(x10991)*(x10995)))+(((sj4)*(sj6)*(x10987)))+(((x10982)*(x11009)))+(((x11004)*(x11007)))+(((cj6)*(r00)*(x11003)))+(((IkReal(-1.00000000000000))*(x10979)*(x10982)*(x10995)))); +evalcond[6]=((((x10996)*(x10998)))+(((IkReal(-1.00000000000000))*(x10978)*(x10991)*(x10997)))+(((IkReal(-1.00000000000000))*(x10978)*(x10979)*(x10980)))+(((IkReal(-1.00000000000000))*(cj0)*(x10981)*(x10983)))+(((IkReal(-1.00000000000000))*(x10978)*(x10990)*(x11002)))+(((IkReal(-1.00000000000000))*(cj4)*(x10979)*(x10997)))+(((x10980)*(x10996)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x10979)))+(((IkReal(-1.00000000000000))*(r12)*(x10981)*(x10990)))+(((IkReal(-1.00000000000000))*(x10978)*(x10979)*(x10998)))); +evalcond[7]=((((IkReal(-0.374290000000000))*(r02)*(x10988)))+(((r00)*(x10994)*(x11000)))+(((IkReal(-1.00000000000000))*(x10993)*(x11007)))+(((cj6)*(x10987)*(x10992)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x10988)))+(((r01)*(x10986)*(x11000)))+(((IkReal(-1.00000000000000))*(r11)*(x10984)*(x10986)))+(((x10984)*(x10985)))+(((sj6)*(x10992)*(x10995)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x10988)))+(((cj0)*(r12)*(x10993)))+(((IkReal(-1.00000000000000))*(r10)*(x10984)*(x10994)))+(((IkReal(-1.00000000000000))*(py)*(x11006)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x10984)*(x10986)))+(((IkReal(-1.00000000000000))*(px)*(x11006)))+(((IkReal(0.0100000000000000))*(x10988)*(x11002)))+(((IkReal(-1.00000000000000))*(r00)*(x10984)*(x10994)))+(((IkReal(0.0690000000000000))*(sj1)))+(((cj0)*(r02)*(x10993)))+(((cj6)*(x10992)*(x10997)))+(((IkReal(-1.00000000000000))*(py)*(x10990)))+(((sj6)*(x10980)*(x10992)))+(((r12)*(sj0)*(x10993)))+(((cj5)*(r02)*(x10984)))+(((IkReal(-0.374290000000000))*(x10980)*(x10994)))+(((x10985)*(x11000)))+(((sj6)*(x10992)*(x10998)))+(((IkReal(-1.00000000000000))*(r11)*(x10986)*(x11000)))+(((IkReal(0.364420000000000))*(cj1)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst7; +gconst7=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst8; +gconst8=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11012=((IkReal(1.00000000000000))*(sj0)); +IkReal x11013=((cj6)*(r21)); +IkReal x11014=((cj0)*(r00)); +IkReal x11015=((cj5)*(sj1)); +IkReal x11016=((r12)*(sj0)); +IkReal x11017=((cj1)*(cj5)); +IkReal x11018=((cj0)*(r02)); +IkReal x11019=((sj1)*(sj5)); +IkReal x11020=((cj6)*(r11)); +IkReal x11021=((cj1)*(sj5)); +IkReal x11022=((sj6)*(x11019)); +IkReal x11023=((IkReal(1.00000000000000))*(x11021)); +IkReal x11024=((cj0)*(cj6)*(r01)); +if( IKabs(((gconst8)*(((((IkReal(-1.00000000000000))*(r20)*(sj6)*(x11023)))+(((IkReal(-1.00000000000000))*(x11019)*(x11024)))+(((x11015)*(x11018)))+(((IkReal(-1.00000000000000))*(x11014)*(x11022)))+(((IkReal(-1.00000000000000))*(x11013)*(x11023)))+(((IkReal(-1.00000000000000))*(r10)*(x11012)*(x11022)))+(((IkReal(-1.00000000000000))*(x11012)*(x11019)*(x11020)))+(((r22)*(x11017)))+(((x11015)*(x11016))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst8)*(((((IkReal(-1.00000000000000))*(x11012)*(x11020)*(x11021)))+(((x11016)*(x11017)))+(((r20)*(x11022)))+(((IkReal(-1.00000000000000))*(sj6)*(x11014)*(x11023)))+(((x11013)*(x11019)))+(((x11017)*(x11018)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11012)*(x11021)))+(((IkReal(-1.00000000000000))*(r22)*(x11015)))+(((IkReal(-1.00000000000000))*(x11023)*(x11024))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst8)*(((((IkReal(-1.00000000000000))*(r20)*(sj6)*(x11023)))+(((IkReal(-1.00000000000000))*(x11019)*(x11024)))+(((x11015)*(x11018)))+(((IkReal(-1.00000000000000))*(x11014)*(x11022)))+(((IkReal(-1.00000000000000))*(x11013)*(x11023)))+(((IkReal(-1.00000000000000))*(r10)*(x11012)*(x11022)))+(((IkReal(-1.00000000000000))*(x11012)*(x11019)*(x11020)))+(((r22)*(x11017)))+(((x11015)*(x11016)))))), ((gconst8)*(((((IkReal(-1.00000000000000))*(x11012)*(x11020)*(x11021)))+(((x11016)*(x11017)))+(((r20)*(x11022)))+(((IkReal(-1.00000000000000))*(sj6)*(x11014)*(x11023)))+(((x11013)*(x11019)))+(((x11017)*(x11018)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11012)*(x11021)))+(((IkReal(-1.00000000000000))*(r22)*(x11015)))+(((IkReal(-1.00000000000000))*(x11023)*(x11024))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11025=IKsin(j3); +IkReal x11026=IKcos(j3); +IkReal x11027=((IkReal(1.00000000000000))*(cj4)); +IkReal x11028=((sj0)*(sj5)); +IkReal x11029=((cj0)*(cj5)); +IkReal x11030=((cj6)*(r01)); +IkReal x11031=((r00)*(sj6)); +IkReal x11032=((cj6)*(r11)); +IkReal x11033=((cj5)*(sj0)); +IkReal x11034=((cj6)*(sj4)); +IkReal x11035=((sj4)*(sj6)); +IkReal x11036=((cj4)*(cj5)); +IkReal x11037=((cj6)*(r21)); +IkReal x11038=((r20)*(sj6)); +IkReal x11039=((r10)*(sj6)); +IkReal x11040=((cj1)*(x11025)); +IkReal x11041=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x11042=((IkReal(1.00000000000000))*(x11026)); +IkReal x11043=((IkReal(1.00000000000000))*(sj1)*(x11025)); +IkReal x11044=((cj1)*(x11042)); +IkReal x11045=((x11044)+(x11043)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x11042)))+(((sj5)*(x11037)))+(((sj5)*(x11038)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x11040)); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x11035)))+(((r20)*(x11034)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x11045)))+(((x11036)*(x11037)))+(((x11036)*(x11038)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x11028)*(x11039)))+(((r02)*(x11029)))+(((IkReal(-1.00000000000000))*(x11028)*(x11032)))+(((r12)*(x11033)))+(((IkReal(-1.00000000000000))*(x11045)))+(((IkReal(-1.00000000000000))*(x11031)*(x11041)))+(((IkReal(-1.00000000000000))*(x11030)*(x11041)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x11027)*(x11028)))+(((sj1)*(x11026)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11034)))+(((IkReal(-1.00000000000000))*(x11027)*(x11029)*(x11030)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11034)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11027)))+(((IkReal(-1.00000000000000))*(x11027)*(x11032)*(x11033)))+(((IkReal(-1.00000000000000))*(x11040)))+(((IkReal(-1.00000000000000))*(x11027)*(x11033)*(x11039)))+(((IkReal(-1.00000000000000))*(x11027)*(x11029)*(x11031)))+(((r11)*(sj0)*(x11035)))+(((cj0)*(r01)*(x11035)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11046=((sj1)*(sj6)); +IkReal x11047=((r20)*(sj5)); +IkReal x11048=((IkReal(1.00000000000000))*(r21)); +IkReal x11049=((cj1)*(cj6)); +IkReal x11050=((r20)*(sj4)); +IkReal x11051=((cj6)*(sj1)); +IkReal x11052=((cj4)*(cj5)); +IkReal x11053=((cj1)*(sj6)); +IkReal x11054=((cj5)*(r22)); +IkReal x11055=((cj4)*(r22)*(sj5)); +if( IKabs(((gconst7)*(((((r20)*(x11046)*(x11052)))+(((sj1)*(x11055)))+(((r21)*(x11051)*(x11052)))+(((IkReal(-1.00000000000000))*(sj4)*(x11046)*(x11048)))+(((IkReal(-1.00000000000000))*(sj5)*(x11048)*(x11049)))+(((cj1)*(x11054)))+(((x11050)*(x11051)))+(((IkReal(-1.00000000000000))*(x11047)*(x11053))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst7)*(((((r21)*(x11049)*(x11052)))+(((x11049)*(x11050)))+(((x11046)*(x11047)))+(((cj1)*(x11055)))+(((r21)*(sj5)*(x11051)))+(((IkReal(-1.00000000000000))*(sj1)*(x11054)))+(((IkReal(-1.00000000000000))*(sj4)*(x11048)*(x11053)))+(((r20)*(x11052)*(x11053))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst7)*(((((r20)*(x11046)*(x11052)))+(((sj1)*(x11055)))+(((r21)*(x11051)*(x11052)))+(((IkReal(-1.00000000000000))*(sj4)*(x11046)*(x11048)))+(((IkReal(-1.00000000000000))*(sj5)*(x11048)*(x11049)))+(((cj1)*(x11054)))+(((x11050)*(x11051)))+(((IkReal(-1.00000000000000))*(x11047)*(x11053)))))), ((gconst7)*(((((r21)*(x11049)*(x11052)))+(((x11049)*(x11050)))+(((x11046)*(x11047)))+(((cj1)*(x11055)))+(((r21)*(sj5)*(x11051)))+(((IkReal(-1.00000000000000))*(sj1)*(x11054)))+(((IkReal(-1.00000000000000))*(sj4)*(x11048)*(x11053)))+(((r20)*(x11052)*(x11053))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11056=IKsin(j3); +IkReal x11057=IKcos(j3); +IkReal x11058=((IkReal(1.00000000000000))*(cj4)); +IkReal x11059=((sj0)*(sj5)); +IkReal x11060=((cj0)*(cj5)); +IkReal x11061=((cj6)*(r01)); +IkReal x11062=((r00)*(sj6)); +IkReal x11063=((cj6)*(r11)); +IkReal x11064=((cj5)*(sj0)); +IkReal x11065=((cj6)*(sj4)); +IkReal x11066=((sj4)*(sj6)); +IkReal x11067=((cj4)*(cj5)); +IkReal x11068=((cj6)*(r21)); +IkReal x11069=((r20)*(sj6)); +IkReal x11070=((r10)*(sj6)); +IkReal x11071=((cj1)*(x11056)); +IkReal x11072=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x11073=((IkReal(1.00000000000000))*(x11057)); +IkReal x11074=((IkReal(1.00000000000000))*(sj1)*(x11056)); +IkReal x11075=((cj1)*(x11073)); +IkReal x11076=((x11074)+(x11075)); +evalcond[0]=((x11071)+(((sj5)*(x11068)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11069)))+(((IkReal(-1.00000000000000))*(sj1)*(x11073)))); +evalcond[1]=((((x11067)*(x11069)))+(((IkReal(-1.00000000000000))*(x11076)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x11065)))+(((x11067)*(x11068)))+(((IkReal(-1.00000000000000))*(r21)*(x11066)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x11061)*(x11072)))+(((IkReal(-1.00000000000000))*(x11062)*(x11072)))+(((IkReal(-1.00000000000000))*(x11059)*(x11063)))+(((IkReal(-1.00000000000000))*(x11076)))+(((r02)*(x11060)))+(((IkReal(-1.00000000000000))*(x11059)*(x11070)))+(((r12)*(x11064)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11058)*(x11063)*(x11064)))+(((IkReal(-1.00000000000000))*(x11058)*(x11064)*(x11070)))+(((cj0)*(r01)*(x11066)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11065)))+(((r11)*(sj0)*(x11066)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11058)))+(((IkReal(-1.00000000000000))*(x11058)*(x11060)*(x11062)))+(((IkReal(-1.00000000000000))*(x11058)*(x11060)*(x11061)))+(((IkReal(-1.00000000000000))*(r12)*(x11058)*(x11059)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11065)))+(((sj1)*(x11057)))+(((IkReal(-1.00000000000000))*(x11071)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x11077=((IkReal(1.00000000000000))*(cj0)); +IkReal x11078=((cj4)*(sj6)); +IkReal x11079=((sj0)*(sj4)); +IkReal x11080=((cj5)*(sj6)); +IkReal x11081=((sj4)*(sj5)); +IkReal x11082=((r12)*(sj5)); +IkReal x11083=((IkReal(0.374290000000000))*(cj5)); +IkReal x11084=((r02)*(sj0)); +IkReal x11085=((cj6)*(r21)); +IkReal x11086=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11087=((IkReal(1.00000000000000))*(sj0)); +IkReal x11088=((cj0)*(r10)); +IkReal x11089=((cj4)*(cj6)); +IkReal x11090=((r00)*(sj0)); +IkReal x11091=((IkReal(0.374290000000000))*(sj5)); +IkReal x11092=((cj0)*(r00)); +IkReal x11093=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11094=((cj0)*(r02)); +IkReal x11095=((cj5)*(sj4)); +IkReal x11096=((cj6)*(r01)); +IkReal x11097=((cj6)*(r11)); +IkReal x11098=((r10)*(sj0)); +IkReal x11099=((sj6)*(x11091)); +IkReal x11100=((cj0)*(cj6)*(x11091)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj2)))+(((r21)*(x11078)))+(((r22)*(x11081)))+(((r20)*(sj4)*(x11080)))+(((x11085)*(x11095)))+(((IkReal(-1.00000000000000))*(r20)*(x11089)))); +evalcond[2]=((((r20)*(x11099)))+(((IkReal(-1.00000000000000))*(r22)*(x11083)))+(((IkReal(-0.0100000000000000))*(r20)*(x11080)))+(pz)+(((IkReal(0.0690000000000000))*(cj2)))+(((x11085)*(x11091)))+(((IkReal(-1.00000000000000))*(r22)*(x11093)))+(((IkReal(-1.00000000000000))*(x11085)*(x11086)))); +evalcond[3]=((((cj5)*(x11079)*(x11096)))+(((IkReal(-1.00000000000000))*(r12)*(x11077)*(x11081)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11077)*(x11080)))+(((r02)*(sj5)*(x11079)))+(((IkReal(-1.00000000000000))*(r11)*(x11077)*(x11078)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x11087)*(x11089)))+(((r01)*(sj0)*(x11078)))+(((r00)*(x11079)*(x11080)))+(((IkReal(-1.00000000000000))*(x11077)*(x11095)*(x11097)))+(((x11088)*(x11089)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11077)*(x11095)*(x11096)))+(((IkReal(-1.00000000000000))*(r11)*(x11078)*(x11087)))+(((IkReal(-1.00000000000000))*(r10)*(x11079)*(x11080)))+(((IkReal(-1.00000000000000))*(r02)*(x11077)*(x11081)))+(((x11089)*(x11098)))+(((x11089)*(x11092)))+(((IkReal(-1.00000000000000))*(x11079)*(x11082)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11077)*(x11080)))+(((IkReal(-1.00000000000000))*(r01)*(x11077)*(x11078)))+(((IkReal(-1.00000000000000))*(cj5)*(x11079)*(x11097)))); +evalcond[5]=((((cj0)*(x11086)*(x11097)))+(((IkReal(-1.00000000000000))*(x11083)*(x11084)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(0.0100000000000000))*(cj0)*(x11082)))+(((IkReal(-1.00000000000000))*(sj0)*(x11086)*(x11096)))+(((cj0)*(r12)*(x11083)))+(((IkReal(-1.00000000000000))*(x11084)*(x11093)))+(((IkReal(-1.00000000000000))*(x11088)*(x11099)))+(((IkReal(-1.00000000000000))*(cj0)*(x11091)*(x11097)))+(((IkReal(0.0100000000000000))*(x11080)*(x11088)))+(((x11090)*(x11099)))+(((IkReal(-0.0100000000000000))*(x11080)*(x11090)))+(((px)*(sj0)))+(((sj0)*(x11091)*(x11096)))+(((IkReal(-1.00000000000000))*(py)*(x11077)))); +evalcond[6]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(py)*(x11087)))+(((IkReal(-1.00000000000000))*(x11092)*(x11099)))+(((sj0)*(x11086)*(x11097)))+(((r12)*(sj0)*(x11083)))+(((x11083)*(x11094)))+(((x11093)*(x11094)))+(((IkReal(-1.00000000000000))*(px)*(x11077)))+(((IkReal(-1.00000000000000))*(sj0)*(x11091)*(x11097)))+(((IkReal(0.0100000000000000))*(x11080)*(x11098)))+(((IkReal(0.0100000000000000))*(sj0)*(x11082)))+(((cj0)*(x11086)*(x11096)))+(((IkReal(-1.00000000000000))*(cj0)*(x11091)*(x11096)))+(((IkReal(-1.00000000000000))*(x11098)*(x11099)))+(((IkReal(0.0100000000000000))*(x11080)*(x11092)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst9; +gconst9=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x11101=((cj5)*(sj4)); +IkReal x11102=((IkReal(1.00000000000000))*(sj6)); +IkReal x11103=((r10)*(sj0)); +IkReal x11104=((sj4)*(sj5)); +IkReal x11105=((cj5)*(cj6)); +IkReal x11106=((r01)*(sj0)); +IkReal x11107=((IkReal(1.00000000000000))*(r02)); +IkReal x11108=((IkReal(0.374290000000000))*(cj0)); +IkReal x11109=((cj5)*(r12)); +IkReal x11110=((cj6)*(sj5)); +IkReal x11111=((cj0)*(r11)); +IkReal x11112=((cj5)*(sj0)); +IkReal x11113=((r20)*(sj6)); +IkReal x11114=((IkReal(1.00000000000000))*(sj0)); +IkReal x11115=((cj4)*(cj5)); +IkReal x11116=((IkReal(1.00000000000000))*(cj6)); +IkReal x11117=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11118=((sj5)*(sj6)); +IkReal x11119=((cj0)*(r10)); +IkReal x11120=((cj4)*(cj6)); +IkReal x11121=((cj0)*(r01)); +IkReal x11122=((IkReal(1.00000000000000))*(cj4)); +IkReal x11123=((cj0)*(r00)); +IkReal x11124=((IkReal(0.374290000000000))*(sj0)); +IkReal x11125=((cj0)*(r12)); +IkReal x11126=((IkReal(0.374290000000000))*(sj5)); +IkReal x11127=((cj4)*(sj6)); +IkReal x11128=((IkReal(1.00000000000000))*(cj0)); +IkReal x11129=((r02)*(sj0)); +IkReal x11130=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11131=((r11)*(sj0)); +IkReal x11132=((r00)*(sj0)*(sj6)); +IkReal x11133=((r00)*(x11120)); +IkReal x11134=((sj6)*(x11130)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x11127)))+(((r22)*(x11104)))+(((x11101)*(x11113)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x11116)))+(((cj6)*(r21)*(x11101)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x11113)*(x11130)))+(((x11113)*(x11126)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(0.374290000000000))*(r21)*(x11110)))+(pz)+(((IkReal(-0.0100000000000000))*(r21)*(x11105)))+(((IkReal(-1.00000000000000))*(r22)*(x11117)))); +evalcond[3]=((((x11106)*(x11110)))+(((IkReal(-1.00000000000000))*(sj5)*(x11102)*(x11119)))+(((cj0)*(x11109)))+(((r00)*(sj0)*(x11118)))+(((IkReal(-1.00000000000000))*(x11107)*(x11112)))+(((IkReal(-1.00000000000000))*(x11110)*(x11111)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x11101)*(x11111)*(x11116)))+(((IkReal(-1.00000000000000))*(x11101)*(x11102)*(x11119)))+(((x11119)*(x11120)))+(((IkReal(-1.00000000000000))*(cj4)*(x11102)*(x11111)))+(((IkReal(-1.00000000000000))*(x11114)*(x11133)))+(((x11101)*(x11132)))+(((x11104)*(x11129)))+(((cj6)*(x11101)*(x11106)))+(((x11106)*(x11127)))+(((IkReal(-1.00000000000000))*(x11104)*(x11125)))); +evalcond[5]=((((cj4)*(x11105)*(x11106)))+(((cj4)*(sj5)*(x11129)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(x11116)*(x11119)))+(((IkReal(-1.00000000000000))*(sj5)*(x11122)*(x11125)))+(((IkReal(-1.00000000000000))*(x11105)*(x11111)*(x11122)))+(((sj4)*(sj6)*(x11111)))+(((r00)*(x11112)*(x11127)))+(((IkReal(-1.00000000000000))*(sj4)*(x11102)*(x11106)))+(((IkReal(-1.00000000000000))*(x11102)*(x11115)*(x11119)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x11102)*(x11121)))+(((IkReal(-1.00000000000000))*(x11101)*(x11116)*(x11121)))+(((IkReal(-1.00000000000000))*(cj0)*(x11104)*(x11107)))+(((IkReal(-1.00000000000000))*(x11101)*(x11102)*(x11103)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x11101)*(x11114)))+(((IkReal(-1.00000000000000))*(r12)*(x11104)*(x11114)))+(((IkReal(-1.00000000000000))*(cj4)*(x11102)*(x11131)))+(((x11103)*(x11120)))+(((x11120)*(x11123)))+(((IkReal(-1.00000000000000))*(x11101)*(x11102)*(x11123)))); +evalcond[7]=((((x11117)*(x11125)))+(((IkReal(-1.00000000000000))*(x11117)*(x11129)))+(((IkReal(0.0100000000000000))*(x11105)*(x11111)))+(((x11119)*(x11134)))+(((IkReal(-1.00000000000000))*(r10)*(x11108)*(x11118)))+(((x11108)*(x11109)))+(((IkReal(-1.00000000000000))*(r11)*(x11108)*(x11110)))+(((IkReal(-0.0100000000000000))*(x11105)*(x11106)))+(((r00)*(x11118)*(x11124)))+(((IkReal(0.374290000000000))*(x11106)*(x11110)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x11112)))+(((IkReal(-1.00000000000000))*(py)*(x11128)))+(((IkReal(-0.374290000000000))*(r02)*(x11112)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(x11105)*(x11121)))+(((r12)*(sj0)*(x11117)))+(((IkReal(-1.00000000000000))*(r00)*(x11108)*(x11118)))+(((IkReal(-1.00000000000000))*(r11)*(x11110)*(x11124)))+(((IkReal(-1.00000000000000))*(px)*(x11128)))+(((x11123)*(x11134)))+(((x11103)*(x11134)))+(((IkReal(-1.00000000000000))*(r01)*(x11108)*(x11110)))+(((cj5)*(r02)*(x11108)))+(((IkReal(0.0100000000000000))*(x11105)*(x11131)))+(((x11109)*(x11124)))+(((cj0)*(r02)*(x11117)))+(((IkReal(-0.374290000000000))*(x11103)*(x11118)))+(((IkReal(-1.00000000000000))*(py)*(x11114)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11135=((IkReal(1.00000000000000))*(cj4)); +IkReal x11136=((cj6)*(r21)); +IkReal x11137=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11136)))+(((sj5)*(x11137))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11135)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11136)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11137)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11136)))+(((sj5)*(x11137)))))+IKsqr(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11135)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11136)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11137)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11136)))+(((sj5)*(x11137)))), ((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11135)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11136)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11137)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11138=IKcos(j3); +IkReal x11139=((IkReal(1.00000000000000))*(cj4)); +IkReal x11140=((sj0)*(sj5)); +IkReal x11141=((cj0)*(cj5)); +IkReal x11142=((cj6)*(r01)); +IkReal x11143=((r00)*(sj6)); +IkReal x11144=((cj6)*(r11)); +IkReal x11145=((cj5)*(sj0)); +IkReal x11146=((cj6)*(sj4)); +IkReal x11147=((sj4)*(sj6)); +IkReal x11148=((cj4)*(cj5)); +IkReal x11149=((cj6)*(r21)); +IkReal x11150=((r20)*(sj6)); +IkReal x11151=((r10)*(sj6)); +IkReal x11152=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x11153=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x11152)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11149)))+(((sj5)*(x11150)))); +evalcond[1]=((((x11148)*(x11149)))+(((x11148)*(x11150)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x11146)))+(((IkReal(-1.00000000000000))*(r21)*(x11147)))+(x11138)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x11138)))+(((r02)*(x11141)))+(((IkReal(-1.00000000000000))*(x11140)*(x11144)))+(((IkReal(-1.00000000000000))*(x11142)*(x11153)))+(((r12)*(x11145)))+(((IkReal(-1.00000000000000))*(x11143)*(x11153)))+(((IkReal(-1.00000000000000))*(x11140)*(x11151)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11139)*(x11141)*(x11142)))+(((IkReal(-1.00000000000000))*(x11139)*(x11141)*(x11143)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11146)))+(((IkReal(-1.00000000000000))*(x11152)))+(((r11)*(sj0)*(x11147)))+(((cj0)*(r01)*(x11147)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11139)))+(((IkReal(-1.00000000000000))*(x11139)*(x11145)*(x11151)))+(((IkReal(-1.00000000000000))*(r12)*(x11139)*(x11140)))+(((IkReal(-1.00000000000000))*(x11139)*(x11144)*(x11145)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11146)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11154=((cj5)*(sj4)); +IkReal x11155=((IkReal(1.00000000000000))*(sj6)); +IkReal x11156=((r10)*(sj0)); +IkReal x11157=((sj4)*(sj5)); +IkReal x11158=((cj5)*(cj6)); +IkReal x11159=((r01)*(sj0)); +IkReal x11160=((IkReal(1.00000000000000))*(r02)); +IkReal x11161=((IkReal(0.374290000000000))*(cj0)); +IkReal x11162=((cj5)*(r12)); +IkReal x11163=((cj6)*(sj5)); +IkReal x11164=((cj0)*(r11)); +IkReal x11165=((cj5)*(sj0)); +IkReal x11166=((r20)*(sj6)); +IkReal x11167=((IkReal(1.00000000000000))*(sj0)); +IkReal x11168=((cj4)*(cj5)); +IkReal x11169=((IkReal(1.00000000000000))*(cj6)); +IkReal x11170=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11171=((sj5)*(sj6)); +IkReal x11172=((cj0)*(r10)); +IkReal x11173=((cj4)*(cj6)); +IkReal x11174=((cj0)*(r01)); +IkReal x11175=((IkReal(1.00000000000000))*(cj4)); +IkReal x11176=((cj0)*(r00)); +IkReal x11177=((IkReal(0.374290000000000))*(sj0)); +IkReal x11178=((cj0)*(r12)); +IkReal x11179=((IkReal(0.374290000000000))*(sj5)); +IkReal x11180=((cj4)*(sj6)); +IkReal x11181=((IkReal(1.00000000000000))*(cj0)); +IkReal x11182=((r02)*(sj0)); +IkReal x11183=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11184=((r11)*(sj0)); +IkReal x11185=((r00)*(sj0)*(sj6)); +IkReal x11186=((r00)*(x11173)); +IkReal x11187=((sj6)*(x11183)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((x11154)*(x11166)))+(((r22)*(x11157)))+(((cj6)*(r21)*(x11154)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x11169)))+(((r21)*(x11180)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((x11166)*(x11179)))+(((IkReal(-0.0100000000000000))*(r21)*(x11158)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(0.374290000000000))*(r21)*(x11163)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x11170)))+(((IkReal(-1.00000000000000))*(x11166)*(x11183)))); +evalcond[3]=((((cj0)*(x11162)))+(((IkReal(-1.00000000000000))*(sj5)*(x11155)*(x11172)))+(((r00)*(sj0)*(x11171)))+(((IkReal(-1.00000000000000))*(x11163)*(x11164)))+(((IkReal(-1.00000000000000))*(x11160)*(x11165)))+(((x11159)*(x11163)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((cj6)*(x11154)*(x11159)))+(((IkReal(-1.00000000000000))*(x11154)*(x11155)*(x11172)))+(((IkReal(-1.00000000000000))*(cj4)*(x11155)*(x11164)))+(((x11172)*(x11173)))+(((x11159)*(x11180)))+(((x11154)*(x11185)))+(((x11157)*(x11182)))+(((IkReal(-1.00000000000000))*(x11167)*(x11186)))+(((IkReal(-1.00000000000000))*(x11157)*(x11178)))+(((IkReal(-1.00000000000000))*(x11154)*(x11164)*(x11169)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11158)*(x11164)*(x11175)))+(((cj4)*(sj5)*(x11182)))+(((IkReal(-1.00000000000000))*(sj5)*(x11175)*(x11178)))+(((sj4)*(sj6)*(x11164)))+(((cj4)*(x11158)*(x11159)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x11155)*(x11168)*(x11172)))+(((r00)*(x11165)*(x11180)))+(((IkReal(-1.00000000000000))*(sj4)*(x11155)*(x11159)))+(((IkReal(-1.00000000000000))*(sj4)*(x11169)*(x11172)))); +evalcond[6]=((((x11173)*(x11176)))+(((IkReal(-1.00000000000000))*(x11154)*(x11155)*(x11156)))+(((IkReal(-1.00000000000000))*(cj4)*(x11155)*(x11174)))+(((IkReal(-1.00000000000000))*(cj4)*(x11155)*(x11184)))+(((x11156)*(x11173)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x11154)*(x11167)))+(((IkReal(-1.00000000000000))*(cj0)*(x11157)*(x11160)))+(((IkReal(-1.00000000000000))*(x11154)*(x11155)*(x11176)))+(((IkReal(-1.00000000000000))*(r12)*(x11157)*(x11167)))+(((IkReal(-1.00000000000000))*(x11154)*(x11169)*(x11174)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x11170)*(x11182)))+(((x11172)*(x11187)))+(((x11161)*(x11162)))+(((x11170)*(x11178)))+(((IkReal(-0.0100000000000000))*(x11158)*(x11159)))+(((IkReal(-0.374290000000000))*(r02)*(x11165)))+(((IkReal(0.0100000000000000))*(x11158)*(x11164)))+(((IkReal(-1.00000000000000))*(r11)*(x11161)*(x11163)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x11165)))+(((IkReal(0.374290000000000))*(x11159)*(x11163)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x11181)))+(((r00)*(x11171)*(x11177)))+(((IkReal(-1.00000000000000))*(r10)*(x11161)*(x11171)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(r00)*(x11161)*(x11171)))+(((cj0)*(r02)*(x11170)))+(((IkReal(0.0100000000000000))*(x11158)*(x11174)))+(((IkReal(-1.00000000000000))*(px)*(x11181)))+(((cj5)*(r02)*(x11161)))+(((IkReal(-1.00000000000000))*(r01)*(x11161)*(x11163)))+(((IkReal(-1.00000000000000))*(py)*(x11167)))+(((r12)*(sj0)*(x11170)))+(((x11176)*(x11187)))+(((x11162)*(x11177)))+(((x11156)*(x11187)))+(((IkReal(-1.00000000000000))*(r11)*(x11163)*(x11177)))+(((IkReal(-0.374290000000000))*(x11156)*(x11171)))+(((IkReal(0.0100000000000000))*(x11158)*(x11184)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11188=((IkReal(1.00000000000000))*(r21)); +IkReal x11189=((cj4)*(cj5)); +IkReal x11190=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11188)))+(((IkReal(-1.00000000000000))*(sj5)*(x11190)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r21)*(x11189)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11188)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x11189)*(x11190))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11188)))+(((IkReal(-1.00000000000000))*(sj5)*(x11190)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r21)*(x11189)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11188)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x11189)*(x11190)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11188)))+(((IkReal(-1.00000000000000))*(sj5)*(x11190)))+(((cj5)*(r22)))), ((((cj6)*(r21)*(x11189)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11188)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x11189)*(x11190))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11191=IKsin(j3); +IkReal x11192=((IkReal(1.00000000000000))*(cj4)); +IkReal x11193=((sj0)*(sj5)); +IkReal x11194=((cj0)*(cj5)); +IkReal x11195=((cj6)*(r01)); +IkReal x11196=((r00)*(sj6)); +IkReal x11197=((cj6)*(r11)); +IkReal x11198=((cj5)*(sj0)); +IkReal x11199=((cj6)*(sj4)); +IkReal x11200=((sj4)*(sj6)); +IkReal x11201=((cj4)*(cj5)); +IkReal x11202=((cj6)*(r21)); +IkReal x11203=((r20)*(sj6)); +IkReal x11204=((r10)*(sj6)); +IkReal x11205=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x11206=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((x11191)+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11202)))+(((sj5)*(x11203)))); +evalcond[1]=((((r20)*(x11199)))+(((x11201)*(x11202)))+(((IkReal(-1.00000000000000))*(x11205)))+(((cj4)*(r22)*(sj5)))+(((x11201)*(x11203)))+(((IkReal(-1.00000000000000))*(r21)*(x11200)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x11196)*(x11206)))+(((IkReal(-1.00000000000000))*(x11205)))+(((IkReal(-1.00000000000000))*(x11195)*(x11206)))+(((IkReal(-1.00000000000000))*(x11193)*(x11204)))+(((IkReal(-1.00000000000000))*(x11193)*(x11197)))+(((r02)*(x11194)))+(((r12)*(x11198)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11199)))+(((cj0)*(r01)*(x11200)))+(((IkReal(-1.00000000000000))*(x11192)*(x11197)*(x11198)))+(((IkReal(-1.00000000000000))*(x11192)*(x11194)*(x11196)))+(((r11)*(sj0)*(x11200)))+(((IkReal(-1.00000000000000))*(x11191)))+(((IkReal(-1.00000000000000))*(r12)*(x11192)*(x11193)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11199)))+(((IkReal(-1.00000000000000))*(x11192)*(x11194)*(x11195)))+(((IkReal(-1.00000000000000))*(x11192)*(x11198)*(x11204)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11192)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11207=((IkReal(1.00000000000000))*(cj0)); +IkReal x11208=((cj4)*(sj6)); +IkReal x11209=((sj0)*(sj4)); +IkReal x11210=((cj5)*(sj6)); +IkReal x11211=((sj4)*(sj5)); +IkReal x11212=((r12)*(sj5)); +IkReal x11213=((IkReal(0.374290000000000))*(cj5)); +IkReal x11214=((r02)*(sj0)); +IkReal x11215=((r20)*(sj4)); +IkReal x11216=((IkReal(1.00000000000000))*(sj0)); +IkReal x11217=((IkReal(1.00000000000000))*(cj5)); +IkReal x11218=((cj0)*(r10)); +IkReal x11219=((cj4)*(cj6)); +IkReal x11220=((r00)*(sj0)); +IkReal x11221=((cj6)*(r21)); +IkReal x11222=((IkReal(0.374290000000000))*(sj5)); +IkReal x11223=((cj0)*(r00)); +IkReal x11224=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11225=((cj0)*(r02)); +IkReal x11226=((cj5)*(sj4)); +IkReal x11227=((cj6)*(r01)); +IkReal x11228=((cj6)*(r11)); +IkReal x11229=((r01)*(sj0)); +IkReal x11230=((r10)*(sj0)); +IkReal x11231=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11232=((sj6)*(x11222)); +IkReal x11233=((cj0)*(cj6)*(x11222)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x11221)))+(((IkReal(-1.00000000000000))*(r22)*(x11217)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x11211)))+(((x11221)*(x11226)))+(((x11210)*(x11215)))+(((IkReal(-1.00000000000000))*(r20)*(x11219)))+(((r21)*(x11208)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x11210)))+(((IkReal(-1.00000000000000))*(r22)*(x11213)))+(((x11221)*(x11222)))+(((r20)*(x11232)))+(((IkReal(-1.00000000000000))*(r22)*(x11224)))+(pz)+(((IkReal(-0.0100000000000000))*(cj5)*(x11221)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x11208)))+(((cj5)*(r21)*(x11219)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x11215)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x11207)*(x11211)))+(((IkReal(-1.00000000000000))*(x11207)*(x11226)*(x11228)))+(((r00)*(x11209)*(x11210)))+(((cj5)*(x11209)*(x11227)))+(((IkReal(-1.00000000000000))*(r11)*(x11207)*(x11208)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11207)*(x11210)))+(((x11218)*(x11219)))+(((IkReal(-1.00000000000000))*(r00)*(x11216)*(x11219)))+(((x11208)*(x11229)))+(((r02)*(sj5)*(x11209)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11207)*(x11210)))+(((IkReal(-1.00000000000000))*(r02)*(x11207)*(x11211)))+(((x11219)*(x11223)))+(((IkReal(-1.00000000000000))*(x11209)*(x11212)))+(((IkReal(-1.00000000000000))*(r10)*(x11209)*(x11210)))+(((IkReal(-1.00000000000000))*(x11207)*(x11226)*(x11227)))+(((x11219)*(x11230)))+(((IkReal(-1.00000000000000))*(x11209)*(x11217)*(x11228)))+(((IkReal(-1.00000000000000))*(r01)*(x11207)*(x11208)))+(((IkReal(-1.00000000000000))*(r11)*(x11208)*(x11216)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((cj0)*(r12)*(x11213)))+(((IkReal(-1.00000000000000))*(py)*(x11207)))+(((IkReal(0.0100000000000000))*(x11210)*(x11218)))+(((IkReal(-1.00000000000000))*(x11214)*(x11224)))+(((x11220)*(x11232)))+(((IkReal(-1.00000000000000))*(cj0)*(x11222)*(x11228)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11228)))+(((IkReal(0.0100000000000000))*(cj0)*(x11212)))+(((IkReal(-1.00000000000000))*(x11218)*(x11232)))+(((sj0)*(x11222)*(x11227)))+(((IkReal(-1.00000000000000))*(x11213)*(x11214)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11227)))+(((IkReal(-0.0100000000000000))*(x11210)*(x11220)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11228)))+(((IkReal(-1.00000000000000))*(x11223)*(x11232)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11227)))+(((IkReal(0.0100000000000000))*(x11210)*(x11223)))+(((IkReal(-1.00000000000000))*(cj0)*(x11222)*(x11227)))+(((x11213)*(x11225)))+(((IkReal(0.0100000000000000))*(x11210)*(x11230)))+(((IkReal(0.0100000000000000))*(sj0)*(x11212)))+(((IkReal(-1.00000000000000))*(py)*(x11216)))+(((IkReal(-1.00000000000000))*(sj0)*(x11222)*(x11228)))+(((x11224)*(x11225)))+(((r12)*(sj0)*(x11213)))+(((IkReal(-1.00000000000000))*(x11230)*(x11232)))+(((IkReal(-1.00000000000000))*(px)*(x11207)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11234=((cj0)*(cj5)); +IkReal x11235=((IkReal(1.00000000000000))*(cj0)); +IkReal x11236=((cj6)*(r11)); +IkReal x11237=((r10)*(sj6)); +IkReal x11238=((cj5)*(sj0)); +IkReal x11239=((r00)*(sj5)*(sj6)); +IkReal x11240=((cj6)*(r01)*(sj5)); +IkReal x11241=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x11240)))+(((IkReal(-1.00000000000000))*(r02)*(x11238)))+(((sj0)*(x11239)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11237)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11236)))+(((r12)*(x11234))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x11237)*(x11241)))+(((IkReal(-1.00000000000000))*(x11236)*(x11241)))+(((r02)*(x11234)))+(((IkReal(-1.00000000000000))*(x11235)*(x11240)))+(((r12)*(x11238)))+(((IkReal(-1.00000000000000))*(x11235)*(x11239))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x11240)))+(((IkReal(-1.00000000000000))*(r02)*(x11238)))+(((sj0)*(x11239)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11237)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11236)))+(((r12)*(x11234)))))+IKsqr(((((IkReal(-1.00000000000000))*(x11237)*(x11241)))+(((IkReal(-1.00000000000000))*(x11236)*(x11241)))+(((r02)*(x11234)))+(((IkReal(-1.00000000000000))*(x11235)*(x11240)))+(((r12)*(x11238)))+(((IkReal(-1.00000000000000))*(x11235)*(x11239)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x11240)))+(((IkReal(-1.00000000000000))*(r02)*(x11238)))+(((sj0)*(x11239)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11237)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11236)))+(((r12)*(x11234)))), ((((IkReal(-1.00000000000000))*(x11237)*(x11241)))+(((IkReal(-1.00000000000000))*(x11236)*(x11241)))+(((r02)*(x11234)))+(((IkReal(-1.00000000000000))*(x11235)*(x11240)))+(((r12)*(x11238)))+(((IkReal(-1.00000000000000))*(x11235)*(x11239))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11242=IKcos(j3); +IkReal x11243=((sj0)*(sj5)); +IkReal x11244=((r00)*(sj6)); +IkReal x11245=((cj6)*(sj0)); +IkReal x11246=((IkReal(1.00000000000000))*(cj4)); +IkReal x11247=((r00)*(sj4)); +IkReal x11248=((cj0)*(cj5)); +IkReal x11249=((cj5)*(sj0)); +IkReal x11250=((cj6)*(r11)); +IkReal x11251=((r10)*(sj6)); +IkReal x11252=((cj0)*(sj5)); +IkReal x11253=((r10)*(sj4)); +IkReal x11254=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x11255=((cj4)*(cj5)*(r01)); +IkReal x11256=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x11257=((cj0)*(sj4)*(sj6)); +IkReal x11258=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj6)*(r01)*(x11243)))+(((x11243)*(x11244)))+(((IkReal(-1.00000000000000))*(r02)*(x11249)))+(((IkReal(-1.00000000000000))*(x11254)))+(((IkReal(-1.00000000000000))*(x11250)*(x11252)))+(((IkReal(-1.00000000000000))*(x11251)*(x11252)))+(((r12)*(x11248)))); +evalcond[1]=((((r12)*(x11249)))+(((r02)*(x11248)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x11252)))+(((IkReal(-1.00000000000000))*(x11242)))+(((IkReal(-1.00000000000000))*(x11243)*(x11250)))+(((IkReal(-1.00000000000000))*(x11243)*(x11251)))+(((IkReal(-1.00000000000000))*(x11244)*(x11252)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x11258)))+(((r11)*(x11257)))+(((cj4)*(r02)*(x11243)))+(((IkReal(-1.00000000000000))*(x11246)*(x11248)*(x11251)))+(((IkReal(-1.00000000000000))*(r12)*(x11246)*(x11252)))+(((IkReal(-1.00000000000000))*(x11253)*(x11256)))+(x11242)+(((IkReal(-1.00000000000000))*(x11246)*(x11248)*(x11250)))+(((cj4)*(x11244)*(x11249)))+(((x11245)*(x11255)))+(((x11245)*(x11247)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11245)*(x11253)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x11245)*(x11246)))+(((IkReal(-1.00000000000000))*(x11244)*(x11246)*(x11248)))+(((r01)*(x11257)))+(((IkReal(-1.00000000000000))*(x11254)))+(((IkReal(-1.00000000000000))*(x11246)*(x11249)*(x11251)))+(((r11)*(x11258)))+(((IkReal(-1.00000000000000))*(x11247)*(x11256)))+(((IkReal(-1.00000000000000))*(r12)*(x11243)*(x11246)))+(((IkReal(-1.00000000000000))*(r02)*(x11246)*(x11252)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x11246)*(x11248)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11259=((IkReal(1.00000000000000))*(cj0)); +IkReal x11260=((cj4)*(sj6)); +IkReal x11261=((sj0)*(sj4)); +IkReal x11262=((cj5)*(sj6)); +IkReal x11263=((sj4)*(sj5)); +IkReal x11264=((r12)*(sj5)); +IkReal x11265=((IkReal(0.374290000000000))*(cj5)); +IkReal x11266=((r02)*(sj0)); +IkReal x11267=((r20)*(sj4)); +IkReal x11268=((IkReal(1.00000000000000))*(sj0)); +IkReal x11269=((IkReal(1.00000000000000))*(cj5)); +IkReal x11270=((cj0)*(r10)); +IkReal x11271=((cj4)*(cj6)); +IkReal x11272=((r00)*(sj0)); +IkReal x11273=((cj6)*(r21)); +IkReal x11274=((IkReal(0.374290000000000))*(sj5)); +IkReal x11275=((cj0)*(r00)); +IkReal x11276=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11277=((cj0)*(r02)); +IkReal x11278=((cj5)*(sj4)); +IkReal x11279=((cj6)*(r01)); +IkReal x11280=((cj6)*(r11)); +IkReal x11281=((r01)*(sj0)); +IkReal x11282=((r10)*(sj0)); +IkReal x11283=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11284=((sj6)*(x11274)); +IkReal x11285=((cj0)*(cj6)*(x11274)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r20)*(sj5)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(x11269)))+(((sj5)*(x11273)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x11273)*(x11278)))+(((r21)*(x11260)))+(((IkReal(-1.00000000000000))*(r20)*(x11271)))+(((r22)*(x11263)))+(((x11262)*(x11267)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x11262)))+(((x11273)*(x11274)))+(((IkReal(-0.0100000000000000))*(cj5)*(x11273)))+(((IkReal(-1.00000000000000))*(r22)*(x11265)))+(((IkReal(-1.00000000000000))*(r22)*(x11276)))+(pz)+(((r20)*(x11284)))); +evalcond[4]=((((cj6)*(x11267)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x11271)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x11260)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x11259)*(x11263)))+(((cj5)*(x11261)*(x11279)))+(((x11270)*(x11271)))+(((IkReal(-1.00000000000000))*(r11)*(x11259)*(x11260)))+(((r02)*(sj5)*(x11261)))+(((r00)*(x11261)*(x11262)))+(((IkReal(-1.00000000000000))*(r00)*(x11268)*(x11271)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11259)*(x11262)))+(((IkReal(-1.00000000000000))*(x11259)*(x11278)*(x11280)))+(((x11260)*(x11281)))); +evalcond[6]=((((x11271)*(x11275)))+(((IkReal(-1.00000000000000))*(r02)*(x11259)*(x11263)))+(((IkReal(-1.00000000000000))*(x11261)*(x11269)*(x11280)))+(((IkReal(-1.00000000000000))*(x11261)*(x11264)))+(((IkReal(-1.00000000000000))*(r11)*(x11260)*(x11268)))+(((IkReal(-1.00000000000000))*(r01)*(x11259)*(x11260)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11259)*(x11262)))+(((IkReal(-1.00000000000000))*(r10)*(x11261)*(x11262)))+(((x11271)*(x11282)))+(((IkReal(-1.00000000000000))*(x11259)*(x11278)*(x11279)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(0.0100000000000000))*(x11262)*(x11270)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11279)))+(((IkReal(-1.00000000000000))*(x11265)*(x11266)))+(((IkReal(-0.0100000000000000))*(x11262)*(x11272)))+(((cj0)*(r12)*(x11265)))+(((IkReal(-1.00000000000000))*(cj0)*(x11274)*(x11280)))+(((IkReal(0.0100000000000000))*(cj0)*(x11264)))+(((IkReal(-1.00000000000000))*(x11270)*(x11284)))+(((IkReal(-1.00000000000000))*(x11266)*(x11276)))+(((sj0)*(x11274)*(x11279)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11280)))+(((px)*(sj0)))+(((x11272)*(x11284)))+(((IkReal(-1.00000000000000))*(py)*(x11259)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x11276)*(x11277)))+(((IkReal(-1.00000000000000))*(cj0)*(x11274)*(x11279)))+(((IkReal(-1.00000000000000))*(py)*(x11268)))+(((IkReal(-1.00000000000000))*(sj0)*(x11274)*(x11280)))+(((IkReal(-1.00000000000000))*(x11275)*(x11284)))+(((IkReal(0.0100000000000000))*(x11262)*(x11282)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11280)))+(((IkReal(-1.00000000000000))*(px)*(x11259)))+(((IkReal(0.0100000000000000))*(sj0)*(x11264)))+(((IkReal(0.0100000000000000))*(x11262)*(x11275)))+(((IkReal(-1.00000000000000))*(x11282)*(x11284)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11279)))+(((x11265)*(x11277)))+(((r12)*(sj0)*(x11265)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11286=((cj5)*(r02)); +IkReal x11287=((cj0)*(sj5)); +IkReal x11288=((r10)*(sj6)); +IkReal x11289=((IkReal(1.00000000000000))*(cj6)); +IkReal x11290=((sj0)*(sj5)); +IkReal x11291=((cj5)*(r12)); +IkReal x11292=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((x11287)*(x11288)))+(((IkReal(-1.00000000000000))*(r01)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(cj0)*(x11291)))+(((cj6)*(r11)*(x11287)))+(((sj0)*(x11286)))+(((IkReal(-1.00000000000000))*(x11290)*(x11292))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj0)*(x11291)))+(((IkReal(-1.00000000000000))*(r11)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(x11287)*(x11292)))+(((IkReal(-1.00000000000000))*(r01)*(x11287)*(x11289)))+(((IkReal(-1.00000000000000))*(x11288)*(x11290)))+(((cj0)*(x11286))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x11287)*(x11288)))+(((IkReal(-1.00000000000000))*(r01)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(cj0)*(x11291)))+(((cj6)*(r11)*(x11287)))+(((sj0)*(x11286)))+(((IkReal(-1.00000000000000))*(x11290)*(x11292)))))+IKsqr(((((sj0)*(x11291)))+(((IkReal(-1.00000000000000))*(r11)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(x11287)*(x11292)))+(((IkReal(-1.00000000000000))*(r01)*(x11287)*(x11289)))+(((IkReal(-1.00000000000000))*(x11288)*(x11290)))+(((cj0)*(x11286)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x11287)*(x11288)))+(((IkReal(-1.00000000000000))*(r01)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(cj0)*(x11291)))+(((cj6)*(r11)*(x11287)))+(((sj0)*(x11286)))+(((IkReal(-1.00000000000000))*(x11290)*(x11292)))), ((((sj0)*(x11291)))+(((IkReal(-1.00000000000000))*(r11)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(x11287)*(x11292)))+(((IkReal(-1.00000000000000))*(r01)*(x11287)*(x11289)))+(((IkReal(-1.00000000000000))*(x11288)*(x11290)))+(((cj0)*(x11286))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11293=IKsin(j3); +IkReal x11294=((sj0)*(sj5)); +IkReal x11295=((r00)*(sj6)); +IkReal x11296=((IkReal(1.00000000000000))*(cj4)); +IkReal x11297=((cj6)*(sj0)); +IkReal x11298=((r00)*(sj4)); +IkReal x11299=((cj0)*(cj5)); +IkReal x11300=((cj6)*(r01)); +IkReal x11301=((cj5)*(sj0)); +IkReal x11302=((cj0)*(sj5)); +IkReal x11303=((cj6)*(r11)); +IkReal x11304=((r10)*(sj6)); +IkReal x11305=((r10)*(sj4)); +IkReal x11306=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x11307=((cj0)*(sj4)*(sj6)); +IkReal x11308=((sj0)*(sj4)*(sj6)); +IkReal x11309=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((x11294)*(x11300)))+(((IkReal(-1.00000000000000))*(x11302)*(x11303)))+(((r12)*(x11299)))+(((IkReal(-1.00000000000000))*(x11302)*(x11304)))+(((x11294)*(x11295)))+(x11293)+(((IkReal(-1.00000000000000))*(r02)*(x11301)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x11294)*(x11304)))+(((IkReal(-1.00000000000000))*(x11300)*(x11302)))+(((IkReal(-1.00000000000000))*(x11295)*(x11302)))+(((IkReal(-1.00000000000000))*(x11294)*(x11303)))+(((r02)*(x11299)))+(((r12)*(x11301)))+(((IkReal(-1.00000000000000))*(x11306)))); +evalcond[2]=((((cj4)*(r02)*(x11294)))+(((cj4)*(x11295)*(x11301)))+(((IkReal(-1.00000000000000))*(x11296)*(x11299)*(x11303)))+(((cj4)*(cj5)*(r01)*(x11297)))+(((IkReal(-1.00000000000000))*(x11305)*(x11309)))+(((IkReal(-1.00000000000000))*(x11296)*(x11299)*(x11304)))+(((IkReal(-1.00000000000000))*(r12)*(x11296)*(x11302)))+(((IkReal(-1.00000000000000))*(r01)*(x11308)))+(((r11)*(x11307)))+(((IkReal(-1.00000000000000))*(x11306)))+(((x11297)*(x11298)))); +evalcond[3]=((((r11)*(x11308)))+(((IkReal(-1.00000000000000))*(x11297)*(x11305)))+(((r01)*(x11307)))+(((IkReal(-1.00000000000000))*(x11298)*(x11309)))+(((IkReal(-1.00000000000000))*(x11293)))+(((IkReal(-1.00000000000000))*(x11296)*(x11299)*(x11300)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x11296)*(x11297)))+(((IkReal(-1.00000000000000))*(x11296)*(x11301)*(x11304)))+(((IkReal(-1.00000000000000))*(x11295)*(x11296)*(x11299)))+(((IkReal(-1.00000000000000))*(r02)*(x11296)*(x11302)))+(((IkReal(-1.00000000000000))*(r12)*(x11294)*(x11296)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11310=((cj0)*(cj5)); +IkReal x11311=((IkReal(1.00000000000000))*(cj0)); +IkReal x11312=((cj6)*(r11)); +IkReal x11313=((r10)*(sj6)); +IkReal x11314=((cj5)*(sj0)); +IkReal x11315=((r00)*(sj5)*(sj6)); +IkReal x11316=((cj6)*(r01)*(sj5)); +IkReal x11317=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x11310)))+(((IkReal(-1.00000000000000))*(r02)*(x11314)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11312)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11313)))+(((sj0)*(x11315)))+(((sj0)*(x11316))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x11312)*(x11317)))+(((r02)*(x11310)))+(((IkReal(-1.00000000000000))*(x11313)*(x11317)))+(((IkReal(-1.00000000000000))*(x11311)*(x11315)))+(((IkReal(-1.00000000000000))*(x11311)*(x11316)))+(((r12)*(x11314))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x11310)))+(((IkReal(-1.00000000000000))*(r02)*(x11314)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11312)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11313)))+(((sj0)*(x11315)))+(((sj0)*(x11316)))))))+IKsqr(((((IkReal(-1.00000000000000))*(x11312)*(x11317)))+(((r02)*(x11310)))+(((IkReal(-1.00000000000000))*(x11313)*(x11317)))+(((IkReal(-1.00000000000000))*(x11311)*(x11315)))+(((IkReal(-1.00000000000000))*(x11311)*(x11316)))+(((r12)*(x11314)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x11310)))+(((IkReal(-1.00000000000000))*(r02)*(x11314)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11312)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11313)))+(((sj0)*(x11315)))+(((sj0)*(x11316)))))), ((((IkReal(-1.00000000000000))*(x11312)*(x11317)))+(((r02)*(x11310)))+(((IkReal(-1.00000000000000))*(x11313)*(x11317)))+(((IkReal(-1.00000000000000))*(x11311)*(x11315)))+(((IkReal(-1.00000000000000))*(x11311)*(x11316)))+(((r12)*(x11314))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11318=IKsin(j3); +IkReal x11319=IKcos(j3); +IkReal x11320=((sj0)*(sj5)); +IkReal x11321=((r00)*(sj6)); +IkReal x11322=((IkReal(1.00000000000000))*(cj4)); +IkReal x11323=((cj6)*(r01)); +IkReal x11324=((cj0)*(cj5)); +IkReal x11325=((cj5)*(sj0)); +IkReal x11326=((cj6)*(r11)); +IkReal x11327=((cj0)*(sj5)); +IkReal x11328=((cj6)*(sj4)); +IkReal x11329=((cj4)*(cj5)); +IkReal x11330=((cj6)*(r21)); +IkReal x11331=((r20)*(sj6)); +IkReal x11332=((r10)*(sj6)); +IkReal x11333=((IkReal(1.00000000000000))*(cj0)); +IkReal x11334=((IkReal(1.00000000000000))*(x11318)); +IkReal x11335=((cj0)*(sj4)*(sj6)); +IkReal x11336=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj2)*(x11334)))+(((sj5)*(x11331)))+(((sj5)*(x11330)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x11328)))+(((x11329)*(x11331)))+(((cj2)*(x11319)))+(((x11329)*(x11330)))); +evalcond[2]=((((x11320)*(x11323)))+(((x11320)*(x11321)))+(((r12)*(x11324)))+(((IkReal(-1.00000000000000))*(sj2)*(x11334)))+(((IkReal(-1.00000000000000))*(r02)*(x11325)))+(((IkReal(-1.00000000000000))*(x11326)*(x11327)))+(((IkReal(-1.00000000000000))*(x11327)*(x11332)))); +evalcond[3]=((((r12)*(x11325)))+(((IkReal(-1.00000000000000))*(x11320)*(x11326)))+(((IkReal(-1.00000000000000))*(x11320)*(x11332)))+(((IkReal(-1.00000000000000))*(x11321)*(x11327)))+(((IkReal(-1.00000000000000))*(x11323)*(x11327)))+(((r02)*(x11324)))+(((IkReal(-1.00000000000000))*(x11319)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x11328)*(x11333)))+(((IkReal(-1.00000000000000))*(r01)*(x11336)))+(((r11)*(x11335)))+(((cj4)*(r02)*(x11320)))+(((r00)*(sj0)*(x11328)))+(((IkReal(-1.00000000000000))*(x11322)*(x11324)*(x11332)))+(((IkReal(-1.00000000000000))*(r12)*(x11322)*(x11327)))+(((sj2)*(x11319)))+(((cj4)*(x11321)*(x11325)))+(((IkReal(-1.00000000000000))*(x11322)*(x11324)*(x11326)))+(((cj4)*(x11323)*(x11325)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11322)*(x11325)*(x11332)))+(((IkReal(-1.00000000000000))*(r02)*(x11322)*(x11327)))+(((IkReal(-1.00000000000000))*(x11322)*(x11323)*(x11324)))+(((r11)*(x11336)))+(((IkReal(-1.00000000000000))*(x11322)*(x11325)*(x11326)))+(((IkReal(-1.00000000000000))*(r12)*(x11320)*(x11322)))+(((r01)*(x11335)))+(((IkReal(-1.00000000000000))*(x11334)))+(((IkReal(-1.00000000000000))*(r00)*(x11328)*(x11333)))+(((IkReal(-1.00000000000000))*(x11321)*(x11322)*(x11324)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11328)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11337=((sj5)*(sj6)); +IkReal x11338=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x11337)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11337)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x11338)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11337)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x11338))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x11337)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11337)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x11338)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11337)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x11338)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x11337)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11337)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x11338)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11337)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x11338))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11339=IKsin(j3); +IkReal x11340=IKcos(j3); +IkReal x11341=((sj0)*(sj5)); +IkReal x11342=((r00)*(sj6)); +IkReal x11343=((IkReal(1.00000000000000))*(cj4)); +IkReal x11344=((cj6)*(r01)); +IkReal x11345=((cj0)*(cj5)); +IkReal x11346=((cj5)*(sj0)); +IkReal x11347=((cj6)*(r11)); +IkReal x11348=((cj0)*(sj5)); +IkReal x11349=((cj6)*(sj4)); +IkReal x11350=((cj4)*(cj5)); +IkReal x11351=((cj6)*(r21)); +IkReal x11352=((r20)*(sj6)); +IkReal x11353=((r10)*(sj6)); +IkReal x11354=((IkReal(1.00000000000000))*(cj0)); +IkReal x11355=((IkReal(1.00000000000000))*(x11339)); +IkReal x11356=((cj0)*(sj4)*(sj6)); +IkReal x11357=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x11355)))+(((sj5)*(x11351)))+(((sj5)*(x11352)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11350)*(x11352)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x11349)))+(((x11350)*(x11351)))+(((cj2)*(x11340)))); +evalcond[2]=((((x11341)*(x11342)))+(((r12)*(x11345)))+(((IkReal(-1.00000000000000))*(x11347)*(x11348)))+(((IkReal(-1.00000000000000))*(r02)*(x11346)))+(((IkReal(-1.00000000000000))*(sj2)*(x11355)))+(((x11341)*(x11344)))+(((IkReal(-1.00000000000000))*(x11348)*(x11353)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11342)*(x11348)))+(((IkReal(-1.00000000000000))*(x11340)))+(((IkReal(-1.00000000000000))*(x11341)*(x11353)))+(((IkReal(-1.00000000000000))*(x11344)*(x11348)))+(((IkReal(-1.00000000000000))*(x11341)*(x11347)))+(((r12)*(x11346)))+(((r02)*(x11345)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x11349)*(x11354)))+(((IkReal(-1.00000000000000))*(x11343)*(x11345)*(x11347)))+(((cj4)*(x11344)*(x11346)))+(((cj4)*(r02)*(x11341)))+(((sj2)*(x11340)))+(((IkReal(-1.00000000000000))*(x11343)*(x11345)*(x11353)))+(((IkReal(-1.00000000000000))*(r01)*(x11357)))+(((r00)*(sj0)*(x11349)))+(((r11)*(x11356)))+(((cj4)*(x11342)*(x11346)))+(((IkReal(-1.00000000000000))*(r12)*(x11343)*(x11348)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11343)*(x11346)*(x11347)))+(((IkReal(-1.00000000000000))*(x11355)))+(((r01)*(x11356)))+(((IkReal(-1.00000000000000))*(x11343)*(x11344)*(x11345)))+(((IkReal(-1.00000000000000))*(r12)*(x11341)*(x11343)))+(((IkReal(-1.00000000000000))*(r02)*(x11343)*(x11348)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11349)))+(((IkReal(-1.00000000000000))*(x11343)*(x11346)*(x11353)))+(((IkReal(-1.00000000000000))*(x11342)*(x11343)*(x11345)))+(((r11)*(x11357)))+(((IkReal(-1.00000000000000))*(r00)*(x11349)*(x11354)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11358=((IkReal(1.00000000000000))*(cj4)); +IkReal x11359=((cj6)*(r21)); +IkReal x11360=((r20)*(sj6)); +if( IKabs(((gconst9)*(((((sj5)*(x11360)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11359))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x11358)*(x11360)))+(((IkReal(-1.00000000000000))*(cj5)*(x11358)*(x11359)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11358)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst9)*(((((sj5)*(x11360)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11359)))))), ((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x11358)*(x11360)))+(((IkReal(-1.00000000000000))*(cj5)*(x11358)*(x11359)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11358)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11361=IKsin(j3); +IkReal x11362=IKcos(j3); +IkReal x11363=((sj0)*(sj5)); +IkReal x11364=((r00)*(sj6)); +IkReal x11365=((IkReal(1.00000000000000))*(cj4)); +IkReal x11366=((cj6)*(r01)); +IkReal x11367=((cj0)*(cj5)); +IkReal x11368=((cj5)*(sj0)); +IkReal x11369=((cj6)*(r11)); +IkReal x11370=((cj0)*(sj5)); +IkReal x11371=((cj6)*(sj4)); +IkReal x11372=((cj4)*(cj5)); +IkReal x11373=((cj6)*(r21)); +IkReal x11374=((r20)*(sj6)); +IkReal x11375=((r10)*(sj6)); +IkReal x11376=((IkReal(1.00000000000000))*(cj0)); +IkReal x11377=((IkReal(1.00000000000000))*(x11361)); +IkReal x11378=((cj0)*(sj4)*(sj6)); +IkReal x11379=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x11377)))+(((sj5)*(x11374)))+(((sj5)*(x11373)))); +evalcond[1]=((((x11372)*(x11374)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x11362)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x11371)))+(((x11372)*(x11373)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x11377)))+(((r12)*(x11367)))+(((IkReal(-1.00000000000000))*(x11370)*(x11375)))+(((x11363)*(x11366)))+(((x11363)*(x11364)))+(((IkReal(-1.00000000000000))*(x11369)*(x11370)))+(((IkReal(-1.00000000000000))*(r02)*(x11368)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11363)*(x11369)))+(((IkReal(-1.00000000000000))*(x11362)))+(((IkReal(-1.00000000000000))*(x11366)*(x11370)))+(((r02)*(x11367)))+(((r12)*(x11368)))+(((IkReal(-1.00000000000000))*(x11363)*(x11375)))+(((IkReal(-1.00000000000000))*(x11364)*(x11370)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11365)*(x11367)*(x11369)))+(((r11)*(x11378)))+(((IkReal(-1.00000000000000))*(x11365)*(x11367)*(x11375)))+(((IkReal(-1.00000000000000))*(r01)*(x11379)))+(((cj4)*(x11364)*(x11368)))+(((cj4)*(r02)*(x11363)))+(((r00)*(sj0)*(x11371)))+(((sj2)*(x11362)))+(((IkReal(-1.00000000000000))*(r12)*(x11365)*(x11370)))+(((cj4)*(x11366)*(x11368)))+(((IkReal(-1.00000000000000))*(r10)*(x11371)*(x11376)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11365)*(x11368)*(x11369)))+(((IkReal(-1.00000000000000))*(r02)*(x11365)*(x11370)))+(((IkReal(-1.00000000000000))*(r12)*(x11363)*(x11365)))+(((r11)*(x11379)))+(((IkReal(-1.00000000000000))*(x11365)*(x11368)*(x11375)))+(((IkReal(-1.00000000000000))*(x11364)*(x11365)*(x11367)))+(((IkReal(-1.00000000000000))*(x11377)))+(((r01)*(x11378)))+(((IkReal(-1.00000000000000))*(x11365)*(x11366)*(x11367)))+(((IkReal(-1.00000000000000))*(r00)*(x11371)*(x11376)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11371)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x11380=((IkReal(1.00000000000000))*(cj0)); +IkReal x11381=((cj4)*(sj6)); +IkReal x11382=((sj0)*(sj4)); +IkReal x11383=((cj5)*(sj6)); +IkReal x11384=((sj4)*(sj5)); +IkReal x11385=((r12)*(sj5)); +IkReal x11386=((IkReal(0.374290000000000))*(cj5)); +IkReal x11387=((r02)*(sj0)); +IkReal x11388=((IkReal(1.00000000000000))*(sj0)); +IkReal x11389=((cj0)*(r10)); +IkReal x11390=((cj4)*(cj6)); +IkReal x11391=((r00)*(sj0)); +IkReal x11392=((cj6)*(r21)); +IkReal x11393=((IkReal(0.374290000000000))*(sj5)); +IkReal x11394=((cj0)*(r00)); +IkReal x11395=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11396=((cj0)*(r02)); +IkReal x11397=((cj5)*(sj4)); +IkReal x11398=((cj6)*(r01)); +IkReal x11399=((cj6)*(r11)); +IkReal x11400=((r01)*(sj0)); +IkReal x11401=((r10)*(sj0)); +IkReal x11402=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11403=((sj6)*(x11393)); +IkReal x11404=((cj0)*(cj6)*(x11393)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((x11392)*(x11397)))+(((r22)*(x11384)))+(sj2)+(((r21)*(x11381)))+(((r20)*(sj4)*(x11383)))+(((IkReal(-1.00000000000000))*(r20)*(x11390)))); +evalcond[2]=((((x11392)*(x11393)))+(((IkReal(-0.0100000000000000))*(cj5)*(x11392)))+(((IkReal(-0.0690000000000000))*(cj2)))+(((IkReal(-1.00000000000000))*(r22)*(x11386)))+(((IkReal(-0.0100000000000000))*(r20)*(x11383)))+(pz)+(((r20)*(x11403)))+(((IkReal(-1.00000000000000))*(r22)*(x11395)))); +evalcond[3]=((((r00)*(x11382)*(x11383)))+(((IkReal(-1.00000000000000))*(x11380)*(x11397)*(x11399)))+(((x11389)*(x11390)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11380)*(x11383)))+(((IkReal(-1.00000000000000))*(r12)*(x11380)*(x11384)))+(((IkReal(-1.00000000000000))*(r11)*(x11380)*(x11381)))+(((x11381)*(x11400)))+(((r02)*(sj5)*(x11382)))+(((cj5)*(x11382)*(x11398)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x11388)*(x11390)))); +evalcond[4]=((((x11390)*(x11394)))+(((x11390)*(x11401)))+(((IkReal(-1.00000000000000))*(r10)*(x11382)*(x11383)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11380)*(x11383)))+(((IkReal(-1.00000000000000))*(r02)*(x11380)*(x11384)))+(((IkReal(-1.00000000000000))*(x11382)*(x11385)))+(((IkReal(-1.00000000000000))*(cj5)*(x11382)*(x11399)))+(((IkReal(-1.00000000000000))*(r11)*(x11381)*(x11388)))+(((IkReal(-1.00000000000000))*(x11380)*(x11397)*(x11398)))+(((IkReal(-1.00000000000000))*(r01)*(x11380)*(x11381)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11389)*(x11403)))+(((IkReal(0.0100000000000000))*(x11383)*(x11389)))+(((IkReal(-1.00000000000000))*(py)*(x11380)))+(((IkReal(-0.0100000000000000))*(x11383)*(x11391)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11399)))+(((cj0)*(r12)*(x11386)))+(((IkReal(0.0100000000000000))*(cj0)*(x11385)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(cj0)*(x11393)*(x11399)))+(((x11391)*(x11403)))+(((sj0)*(x11393)*(x11398)))+(((IkReal(-1.00000000000000))*(x11387)*(x11395)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x11386)*(x11387)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11398)))); +evalcond[6]=((IkReal(-0.295420000000000))+(((r12)*(sj0)*(x11386)))+(((IkReal(-1.00000000000000))*(x11401)*(x11403)))+(((IkReal(0.0100000000000000))*(x11383)*(x11394)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11398)))+(((IkReal(0.0100000000000000))*(x11383)*(x11401)))+(((IkReal(-1.00000000000000))*(px)*(x11380)))+(((x11395)*(x11396)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11399)))+(((IkReal(-1.00000000000000))*(x11394)*(x11403)))+(((x11386)*(x11396)))+(((IkReal(-1.00000000000000))*(cj0)*(x11393)*(x11398)))+(((IkReal(-1.00000000000000))*(py)*(x11388)))+(((IkReal(0.0100000000000000))*(sj0)*(x11385)))+(((IkReal(-1.00000000000000))*(sj0)*(x11393)*(x11399)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst10; +gconst10=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x11405=((cj5)*(sj4)); +IkReal x11406=((IkReal(1.00000000000000))*(sj6)); +IkReal x11407=((r10)*(sj0)); +IkReal x11408=((sj4)*(sj5)); +IkReal x11409=((cj5)*(cj6)); +IkReal x11410=((r01)*(sj0)); +IkReal x11411=((IkReal(1.00000000000000))*(r02)); +IkReal x11412=((IkReal(0.374290000000000))*(cj0)); +IkReal x11413=((cj5)*(r12)); +IkReal x11414=((cj6)*(sj5)); +IkReal x11415=((cj0)*(r11)); +IkReal x11416=((cj5)*(sj0)); +IkReal x11417=((r20)*(sj6)); +IkReal x11418=((IkReal(1.00000000000000))*(sj0)); +IkReal x11419=((cj4)*(cj5)); +IkReal x11420=((IkReal(1.00000000000000))*(cj6)); +IkReal x11421=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11422=((sj5)*(sj6)); +IkReal x11423=((cj0)*(r10)); +IkReal x11424=((cj4)*(cj6)); +IkReal x11425=((cj0)*(r01)); +IkReal x11426=((IkReal(1.00000000000000))*(cj4)); +IkReal x11427=((cj0)*(r00)); +IkReal x11428=((IkReal(0.374290000000000))*(sj0)); +IkReal x11429=((cj0)*(r12)); +IkReal x11430=((IkReal(0.374290000000000))*(sj5)); +IkReal x11431=((cj4)*(sj6)); +IkReal x11432=((IkReal(1.00000000000000))*(cj0)); +IkReal x11433=((r02)*(sj0)); +IkReal x11434=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11435=((r11)*(sj0)); +IkReal x11436=((r00)*(sj0)*(sj6)); +IkReal x11437=((r00)*(x11424)); +IkReal x11438=((sj6)*(x11434)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((cj6)*(r21)*(x11405)))+(((r22)*(x11408)))+(((r21)*(x11431)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x11420)))+(((x11405)*(x11417)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x11414)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x11417)*(x11430)))+(((IkReal(-1.00000000000000))*(r22)*(x11421)))+(((IkReal(-0.0100000000000000))*(r21)*(x11409)))+(pz)+(((IkReal(-1.00000000000000))*(x11417)*(x11434)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x11406)*(x11423)))+(((IkReal(-1.00000000000000))*(x11411)*(x11416)))+(((IkReal(-1.00000000000000))*(x11414)*(x11415)))+(((r00)*(sj0)*(x11422)))+(((x11410)*(x11414)))+(((cj0)*(x11413)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x11418)*(x11437)))+(((IkReal(-1.00000000000000))*(x11405)*(x11415)*(x11420)))+(((x11405)*(x11436)))+(((IkReal(-1.00000000000000))*(x11408)*(x11429)))+(((IkReal(-1.00000000000000))*(x11405)*(x11406)*(x11423)))+(((IkReal(-1.00000000000000))*(cj4)*(x11406)*(x11415)))+(((x11408)*(x11433)))+(((x11423)*(x11424)))+(((x11410)*(x11431)))+(((cj6)*(x11405)*(x11410)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11406)*(x11419)*(x11423)))+(((cj4)*(sj5)*(x11433)))+(((IkReal(-1.00000000000000))*(sj4)*(x11420)*(x11423)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(x11409)*(x11410)))+(((IkReal(-1.00000000000000))*(sj4)*(x11406)*(x11410)))+(((r00)*(x11416)*(x11431)))+(((IkReal(-1.00000000000000))*(x11409)*(x11415)*(x11426)))+(((sj4)*(sj6)*(x11415)))+(((IkReal(-1.00000000000000))*(sj5)*(x11426)*(x11429)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x11406)*(x11435)))+(((x11424)*(x11427)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x11405)*(x11418)))+(((IkReal(-1.00000000000000))*(r12)*(x11408)*(x11418)))+(((x11407)*(x11424)))+(((IkReal(-1.00000000000000))*(cj0)*(x11408)*(x11411)))+(((IkReal(-1.00000000000000))*(x11405)*(x11406)*(x11427)))+(((IkReal(-1.00000000000000))*(x11405)*(x11406)*(x11407)))+(((IkReal(-1.00000000000000))*(cj4)*(x11406)*(x11425)))+(((IkReal(-1.00000000000000))*(x11405)*(x11420)*(x11425)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x11412)*(x11414)))+(((x11423)*(x11438)))+(((IkReal(0.374290000000000))*(x11410)*(x11414)))+(((IkReal(-1.00000000000000))*(r10)*(x11412)*(x11422)))+(((IkReal(-0.0100000000000000))*(x11409)*(x11410)))+(((r00)*(x11422)*(x11428)))+(((IkReal(-1.00000000000000))*(x11421)*(x11433)))+(((IkReal(-0.374290000000000))*(r02)*(x11416)))+(((IkReal(0.0100000000000000))*(x11409)*(x11415)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x11416)))+(((px)*(sj0)))+(((x11412)*(x11413)))+(((x11421)*(x11429)))+(((IkReal(-1.00000000000000))*(py)*(x11432)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x11427)*(x11438)))+(((IkReal(-1.00000000000000))*(r11)*(x11414)*(x11428)))+(((IkReal(-1.00000000000000))*(py)*(x11418)))+(((cj0)*(r02)*(x11421)))+(((IkReal(0.0100000000000000))*(x11409)*(x11425)))+(((IkReal(-1.00000000000000))*(r00)*(x11412)*(x11422)))+(((r12)*(sj0)*(x11421)))+(((x11413)*(x11428)))+(((IkReal(0.0100000000000000))*(x11409)*(x11435)))+(((IkReal(-1.00000000000000))*(px)*(x11432)))+(((cj5)*(r02)*(x11412)))+(((x11407)*(x11438)))+(((IkReal(-0.374290000000000))*(x11407)*(x11422)))+(((IkReal(-1.00000000000000))*(r01)*(x11412)*(x11414)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11439=((IkReal(1.00000000000000))*(r21)); +IkReal x11440=((cj4)*(cj5)); +IkReal x11441=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11439)))+(((IkReal(-1.00000000000000))*(sj5)*(x11441)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r21)*(x11440)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11439)))+(((x11440)*(x11441))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11439)))+(((IkReal(-1.00000000000000))*(sj5)*(x11441)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r21)*(x11440)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11439)))+(((x11440)*(x11441)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11439)))+(((IkReal(-1.00000000000000))*(sj5)*(x11441)))+(((cj5)*(r22)))), ((((cj6)*(r21)*(x11440)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11439)))+(((x11440)*(x11441))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11442=IKcos(j3); +IkReal x11443=IKsin(j3); +IkReal x11444=((IkReal(1.00000000000000))*(cj4)); +IkReal x11445=((sj0)*(sj5)); +IkReal x11446=((cj0)*(cj5)); +IkReal x11447=((cj6)*(r01)); +IkReal x11448=((r00)*(sj6)); +IkReal x11449=((cj6)*(r11)); +IkReal x11450=((cj5)*(sj0)); +IkReal x11451=((cj6)*(sj4)); +IkReal x11452=((sj4)*(sj6)); +IkReal x11453=((cj4)*(cj5)); +IkReal x11454=((cj6)*(r21)); +IkReal x11455=((r20)*(sj6)); +IkReal x11456=((r10)*(sj6)); +IkReal x11457=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x11454)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11455)))+(x11443)); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x11452)))+(((IkReal(-1.00000000000000))*(x11442)))+(((cj4)*(r22)*(sj5)))+(((x11453)*(x11454)))+(((r20)*(x11451)))+(((x11453)*(x11455)))); +evalcond[2]=((((r02)*(x11446)))+(((IkReal(-1.00000000000000))*(x11447)*(x11457)))+(((IkReal(-1.00000000000000))*(x11445)*(x11449)))+(((IkReal(-1.00000000000000))*(x11448)*(x11457)))+(((r12)*(x11450)))+(x11442)+(((IkReal(-1.00000000000000))*(x11445)*(x11456)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11444)*(x11446)*(x11447)))+(((cj0)*(r01)*(x11452)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11451)))+(((IkReal(-1.00000000000000))*(x11444)*(x11446)*(x11448)))+(((IkReal(-1.00000000000000))*(x11444)*(x11449)*(x11450)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11451)))+(((IkReal(-1.00000000000000))*(x11444)*(x11450)*(x11456)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11444)))+(((IkReal(-1.00000000000000))*(r12)*(x11444)*(x11445)))+(((r11)*(sj0)*(x11452)))+(x11443)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11458=((cj5)*(sj4)); +IkReal x11459=((IkReal(1.00000000000000))*(sj6)); +IkReal x11460=((r10)*(sj0)); +IkReal x11461=((sj4)*(sj5)); +IkReal x11462=((cj5)*(cj6)); +IkReal x11463=((r01)*(sj0)); +IkReal x11464=((IkReal(1.00000000000000))*(r02)); +IkReal x11465=((IkReal(0.374290000000000))*(cj0)); +IkReal x11466=((cj5)*(r12)); +IkReal x11467=((cj6)*(sj5)); +IkReal x11468=((cj0)*(r11)); +IkReal x11469=((cj5)*(sj0)); +IkReal x11470=((r20)*(sj6)); +IkReal x11471=((IkReal(1.00000000000000))*(sj0)); +IkReal x11472=((cj4)*(cj5)); +IkReal x11473=((IkReal(1.00000000000000))*(cj6)); +IkReal x11474=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11475=((sj5)*(sj6)); +IkReal x11476=((cj0)*(r10)); +IkReal x11477=((cj4)*(cj6)); +IkReal x11478=((cj0)*(r01)); +IkReal x11479=((IkReal(1.00000000000000))*(cj4)); +IkReal x11480=((cj0)*(r00)); +IkReal x11481=((IkReal(0.374290000000000))*(sj0)); +IkReal x11482=((cj0)*(r12)); +IkReal x11483=((IkReal(0.374290000000000))*(sj5)); +IkReal x11484=((cj4)*(sj6)); +IkReal x11485=((IkReal(1.00000000000000))*(cj0)); +IkReal x11486=((r02)*(sj0)); +IkReal x11487=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11488=((r11)*(sj0)); +IkReal x11489=((r00)*(sj0)*(sj6)); +IkReal x11490=((r00)*(x11477)); +IkReal x11491=((sj6)*(x11487)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((cj6)*(r21)*(x11458)))+(((r21)*(x11484)))+(((x11458)*(x11470)))+(((r22)*(x11461)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x11473)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x11467)))+(((x11470)*(x11483)))+(((IkReal(-1.00000000000000))*(r22)*(x11474)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x11470)*(x11487)))+(((IkReal(-0.0100000000000000))*(r21)*(x11462)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11464)*(x11469)))+(((IkReal(-1.00000000000000))*(x11467)*(x11468)))+(((x11463)*(x11467)))+(((IkReal(-1.00000000000000))*(sj5)*(x11459)*(x11476)))+(((cj0)*(x11466)))+(((r00)*(sj0)*(x11475)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x11461)*(x11486)))+(((IkReal(-1.00000000000000))*(x11461)*(x11482)))+(((x11463)*(x11484)))+(((cj6)*(x11458)*(x11463)))+(((IkReal(-1.00000000000000))*(cj4)*(x11459)*(x11468)))+(((IkReal(-1.00000000000000))*(x11458)*(x11459)*(x11476)))+(((IkReal(-1.00000000000000))*(x11471)*(x11490)))+(((x11458)*(x11489)))+(((x11476)*(x11477)))+(((IkReal(-1.00000000000000))*(x11458)*(x11468)*(x11473)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x11459)*(x11463)))+(((r00)*(x11469)*(x11484)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x11462)*(x11468)*(x11479)))+(((cj4)*(sj5)*(x11486)))+(((IkReal(-1.00000000000000))*(sj5)*(x11479)*(x11482)))+(((sj4)*(sj6)*(x11468)))+(((IkReal(-1.00000000000000))*(x11459)*(x11472)*(x11476)))+(((cj4)*(x11462)*(x11463)))+(((IkReal(-1.00000000000000))*(sj4)*(x11473)*(x11476)))); +evalcond[6]=((((x11477)*(x11480)))+(((IkReal(-1.00000000000000))*(x11458)*(x11473)*(x11478)))+(((x11460)*(x11477)))+(((IkReal(-1.00000000000000))*(x11458)*(x11459)*(x11460)))+(((IkReal(-1.00000000000000))*(x11458)*(x11459)*(x11480)))+(((IkReal(-1.00000000000000))*(cj0)*(x11461)*(x11464)))+(((IkReal(-1.00000000000000))*(r12)*(x11461)*(x11471)))+(((IkReal(-1.00000000000000))*(cj4)*(x11459)*(x11488)))+(((IkReal(-1.00000000000000))*(cj4)*(x11459)*(x11478)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x11458)*(x11471)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x11474)*(x11486)))+(((x11474)*(x11482)))+(((IkReal(-1.00000000000000))*(py)*(x11485)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x11469)))+(((IkReal(-1.00000000000000))*(r11)*(x11465)*(x11467)))+(((IkReal(-0.374290000000000))*(r02)*(x11469)))+(((IkReal(-1.00000000000000))*(r10)*(x11465)*(x11475)))+(((IkReal(0.374290000000000))*(x11463)*(x11467)))+(((IkReal(0.0100000000000000))*(x11462)*(x11468)))+(((x11465)*(x11466)))+(((px)*(sj0)))+(((x11476)*(x11491)))+(((r00)*(x11475)*(x11481)))+(((IkReal(-0.0100000000000000))*(x11462)*(x11463)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(r01)*(x11465)*(x11467)))+(((cj0)*(r02)*(x11474)))+(((cj5)*(r02)*(x11465)))+(((IkReal(-1.00000000000000))*(px)*(x11485)))+(((x11460)*(x11491)))+(((IkReal(0.0100000000000000))*(x11462)*(x11478)))+(((r12)*(sj0)*(x11474)))+(((IkReal(-1.00000000000000))*(py)*(x11471)))+(((IkReal(-1.00000000000000))*(r00)*(x11465)*(x11475)))+(((x11466)*(x11481)))+(((IkReal(-1.00000000000000))*(r11)*(x11467)*(x11481)))+(((IkReal(0.0100000000000000))*(x11462)*(x11488)))+(((IkReal(-0.374290000000000))*(x11460)*(x11475)))+(((x11480)*(x11491)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11492=((IkReal(1.00000000000000))*(cj4)); +IkReal x11493=((cj6)*(r21)); +IkReal x11494=((r20)*(sj6)); +if( IKabs(((((sj5)*(x11493)))+(((sj5)*(x11494)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11493)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11492)))+(((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x11493)))+(((sj5)*(x11494)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11493)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11492)))+(((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x11493)))+(((sj5)*(x11494)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11493)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11492)))+(((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11495=IKcos(j3); +IkReal x11496=IKsin(j3); +IkReal x11497=((IkReal(1.00000000000000))*(cj4)); +IkReal x11498=((sj0)*(sj5)); +IkReal x11499=((cj0)*(cj5)); +IkReal x11500=((cj6)*(r01)); +IkReal x11501=((r00)*(sj6)); +IkReal x11502=((cj6)*(r11)); +IkReal x11503=((cj5)*(sj0)); +IkReal x11504=((cj6)*(sj4)); +IkReal x11505=((sj4)*(sj6)); +IkReal x11506=((cj4)*(cj5)); +IkReal x11507=((cj6)*(r21)); +IkReal x11508=((r20)*(sj6)); +IkReal x11509=((r10)*(sj6)); +IkReal x11510=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x11507)))+(((IkReal(-1.00000000000000))*(x11496)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11508)))); +evalcond[1]=((((cj4)*(r22)*(sj5)))+(((x11506)*(x11507)))+(((IkReal(-1.00000000000000))*(r21)*(x11505)))+(x11495)+(((r20)*(x11504)))+(((x11506)*(x11508)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x11498)*(x11509)))+(((r12)*(x11503)))+(((IkReal(-1.00000000000000))*(x11500)*(x11510)))+(((IkReal(-1.00000000000000))*(x11501)*(x11510)))+(((IkReal(-1.00000000000000))*(x11498)*(x11502)))+(((r02)*(x11499)))+(x11495)); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11497)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11504)))+(((r11)*(sj0)*(x11505)))+(((IkReal(-1.00000000000000))*(x11497)*(x11499)*(x11500)))+(((IkReal(-1.00000000000000))*(r12)*(x11497)*(x11498)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11504)))+(((IkReal(-1.00000000000000))*(x11497)*(x11502)*(x11503)))+(((cj0)*(r01)*(x11505)))+(((IkReal(-1.00000000000000))*(x11497)*(x11499)*(x11501)))+(x11496)+(((IkReal(-1.00000000000000))*(x11497)*(x11503)*(x11509)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11511=((IkReal(1.00000000000000))*(cj0)); +IkReal x11512=((cj4)*(sj6)); +IkReal x11513=((sj0)*(sj4)); +IkReal x11514=((cj5)*(sj6)); +IkReal x11515=((sj4)*(sj5)); +IkReal x11516=((r12)*(sj5)); +IkReal x11517=((IkReal(0.374290000000000))*(cj5)); +IkReal x11518=((r02)*(sj0)); +IkReal x11519=((r20)*(sj4)); +IkReal x11520=((IkReal(1.00000000000000))*(sj0)); +IkReal x11521=((IkReal(1.00000000000000))*(cj5)); +IkReal x11522=((cj0)*(r10)); +IkReal x11523=((cj4)*(cj6)); +IkReal x11524=((r00)*(sj0)); +IkReal x11525=((cj6)*(r21)); +IkReal x11526=((IkReal(0.374290000000000))*(sj5)); +IkReal x11527=((cj0)*(r00)); +IkReal x11528=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11529=((cj0)*(r02)); +IkReal x11530=((cj5)*(sj4)); +IkReal x11531=((cj6)*(r01)); +IkReal x11532=((cj6)*(r11)); +IkReal x11533=((r01)*(sj0)); +IkReal x11534=((r10)*(sj0)); +IkReal x11535=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11536=((sj6)*(x11526)); +IkReal x11537=((cj0)*(cj6)*(x11526)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x11525)))+(((IkReal(-1.00000000000000))*(r22)*(x11521)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x11523)))+(((x11514)*(x11519)))+(((r21)*(x11512)))+(((r22)*(x11515)))+(((x11525)*(x11530)))); +evalcond[3]=((((x11525)*(x11526)))+(((r20)*(x11536)))+(((IkReal(-0.0100000000000000))*(r20)*(x11514)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x11517)))+(((IkReal(-0.0100000000000000))*(cj5)*(x11525)))+(((IkReal(-1.00000000000000))*(r22)*(x11528)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x11523)))+(((cj6)*(x11519)))+(((cj5)*(r20)*(x11512)))); +evalcond[5]=((((cj5)*(x11513)*(x11531)))+(((x11512)*(x11533)))+(((IkReal(-1.00000000000000))*(r12)*(x11511)*(x11515)))+(((r02)*(sj5)*(x11513)))+(((IkReal(-1.00000000000000))*(x11511)*(x11530)*(x11532)))+(((x11522)*(x11523)))+(((r00)*(x11513)*(x11514)))+(((IkReal(-1.00000000000000))*(r11)*(x11511)*(x11512)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11511)*(x11514)))+(((IkReal(-1.00000000000000))*(r00)*(x11520)*(x11523)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11511)*(x11514)))+(((IkReal(-1.00000000000000))*(x11513)*(x11516)))+(((IkReal(-1.00000000000000))*(r10)*(x11513)*(x11514)))+(((x11523)*(x11527)))+(((IkReal(-1.00000000000000))*(x11511)*(x11530)*(x11531)))+(((IkReal(-1.00000000000000))*(x11513)*(x11521)*(x11532)))+(((IkReal(-1.00000000000000))*(r11)*(x11512)*(x11520)))+(((x11523)*(x11534)))+(((IkReal(-1.00000000000000))*(r02)*(x11511)*(x11515)))+(((IkReal(-1.00000000000000))*(r01)*(x11511)*(x11512)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((x11524)*(x11536)))+(((IkReal(0.0100000000000000))*(cj0)*(x11516)))+(((IkReal(-1.00000000000000))*(x11522)*(x11536)))+(((IkReal(-1.00000000000000))*(py)*(x11511)))+(((sj0)*(x11526)*(x11531)))+(((IkReal(0.0100000000000000))*(x11514)*(x11522)))+(((IkReal(-1.00000000000000))*(x11518)*(x11528)))+(((px)*(sj0)))+(((cj0)*(r12)*(x11517)))+(((IkReal(-0.0100000000000000))*(x11514)*(x11524)))+(((IkReal(-1.00000000000000))*(cj0)*(x11526)*(x11532)))+(((IkReal(-1.00000000000000))*(x11517)*(x11518)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11531)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11532)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(x11534)*(x11536)))+(((IkReal(-1.00000000000000))*(x11527)*(x11536)))+(((IkReal(0.0100000000000000))*(x11514)*(x11527)))+(((x11528)*(x11529)))+(((IkReal(-1.00000000000000))*(cj0)*(x11526)*(x11531)))+(((IkReal(-1.00000000000000))*(sj0)*(x11526)*(x11532)))+(((IkReal(-1.00000000000000))*(px)*(x11511)))+(((IkReal(0.0100000000000000))*(sj0)*(x11516)))+(((x11517)*(x11529)))+(((IkReal(0.0100000000000000))*(x11514)*(x11534)))+(((IkReal(-1.00000000000000))*(py)*(x11520)))+(((r12)*(sj0)*(x11517)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11532)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11531)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11538=((sj0)*(sj5)); +IkReal x11539=((r00)*(sj6)); +IkReal x11540=((IkReal(1.00000000000000))*(cj5)); +IkReal x11541=((cj6)*(r11)); +IkReal x11542=((cj6)*(r01)); +IkReal x11543=((r10)*(sj6)); +IkReal x11544=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x11541)*(x11544)))+(((IkReal(-1.00000000000000))*(x11543)*(x11544)))+(((x11538)*(x11542)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11540)))+(((x11538)*(x11539))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x11538)*(x11541)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11540)))+(((x11538)*(x11543)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11540)))+(((x11542)*(x11544)))+(((x11539)*(x11544))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x11541)*(x11544)))+(((IkReal(-1.00000000000000))*(x11543)*(x11544)))+(((x11538)*(x11542)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11540)))+(((x11538)*(x11539)))))+IKsqr(((((x11538)*(x11541)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11540)))+(((x11538)*(x11543)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11540)))+(((x11542)*(x11544)))+(((x11539)*(x11544)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x11541)*(x11544)))+(((IkReal(-1.00000000000000))*(x11543)*(x11544)))+(((x11538)*(x11542)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11540)))+(((x11538)*(x11539)))), ((((x11538)*(x11541)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11540)))+(((x11538)*(x11543)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11540)))+(((x11542)*(x11544)))+(((x11539)*(x11544))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11545=IKcos(j3); +IkReal x11546=IKsin(j3); +IkReal x11547=((sj0)*(sj5)); +IkReal x11548=((r00)*(sj6)); +IkReal x11549=((cj6)*(sj0)); +IkReal x11550=((IkReal(1.00000000000000))*(cj4)); +IkReal x11551=((r00)*(sj4)); +IkReal x11552=((cj0)*(cj5)); +IkReal x11553=((cj5)*(sj0)); +IkReal x11554=((cj6)*(r11)); +IkReal x11555=((r10)*(sj6)); +IkReal x11556=((cj0)*(sj5)); +IkReal x11557=((r10)*(sj4)); +IkReal x11558=((cj4)*(cj5)*(r01)); +IkReal x11559=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x11560=((cj0)*(sj4)*(sj6)); +IkReal x11561=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((r12)*(x11552)))+(((cj6)*(r01)*(x11547)))+(((x11547)*(x11548)))+(((IkReal(-1.00000000000000))*(x11546)))+(((IkReal(-1.00000000000000))*(r02)*(x11553)))+(((IkReal(-1.00000000000000))*(x11555)*(x11556)))+(((IkReal(-1.00000000000000))*(x11554)*(x11556)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x11548)*(x11556)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x11556)))+(((IkReal(-1.00000000000000))*(x11547)*(x11554)))+(x11545)+(((IkReal(-1.00000000000000))*(x11547)*(x11555)))+(((r12)*(x11553)))+(((r02)*(x11552)))); +evalcond[2]=((((cj4)*(x11548)*(x11553)))+(((IkReal(-1.00000000000000))*(r12)*(x11550)*(x11556)))+(((x11549)*(x11551)))+(((IkReal(-1.00000000000000))*(x11550)*(x11552)*(x11555)))+(((r11)*(x11560)))+(x11545)+(((IkReal(-1.00000000000000))*(r01)*(x11561)))+(((IkReal(-1.00000000000000))*(x11557)*(x11559)))+(((cj4)*(r02)*(x11547)))+(((x11549)*(x11558)))+(((IkReal(-1.00000000000000))*(x11550)*(x11552)*(x11554)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r02)*(x11550)*(x11556)))+(((r11)*(x11561)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x11550)*(x11552)))+(((IkReal(-1.00000000000000))*(x11549)*(x11557)))+(x11546)+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x11549)*(x11550)))+(((IkReal(-1.00000000000000))*(x11550)*(x11553)*(x11555)))+(((r01)*(x11560)))+(((IkReal(-1.00000000000000))*(x11548)*(x11550)*(x11552)))+(((IkReal(-1.00000000000000))*(r12)*(x11547)*(x11550)))+(((IkReal(-1.00000000000000))*(x11551)*(x11559)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11562=((IkReal(1.00000000000000))*(cj0)); +IkReal x11563=((cj4)*(sj6)); +IkReal x11564=((sj0)*(sj4)); +IkReal x11565=((cj5)*(sj6)); +IkReal x11566=((sj4)*(sj5)); +IkReal x11567=((r12)*(sj5)); +IkReal x11568=((IkReal(0.374290000000000))*(cj5)); +IkReal x11569=((r02)*(sj0)); +IkReal x11570=((r20)*(sj4)); +IkReal x11571=((IkReal(1.00000000000000))*(sj0)); +IkReal x11572=((IkReal(1.00000000000000))*(cj5)); +IkReal x11573=((cj0)*(r10)); +IkReal x11574=((cj4)*(cj6)); +IkReal x11575=((r00)*(sj0)); +IkReal x11576=((cj6)*(r21)); +IkReal x11577=((IkReal(0.374290000000000))*(sj5)); +IkReal x11578=((cj0)*(r00)); +IkReal x11579=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11580=((cj0)*(r02)); +IkReal x11581=((cj5)*(sj4)); +IkReal x11582=((cj6)*(r01)); +IkReal x11583=((cj6)*(r11)); +IkReal x11584=((r01)*(sj0)); +IkReal x11585=((r10)*(sj0)); +IkReal x11586=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11587=((sj6)*(x11577)); +IkReal x11588=((cj0)*(cj6)*(x11577)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x11576)))+(((IkReal(-1.00000000000000))*(r22)*(x11572)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r21)*(x11563)))+(((IkReal(-1.00000000000000))*(r20)*(x11574)))+(((x11565)*(x11570)))+(((r22)*(x11566)))+(((x11576)*(x11581)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x11576)))+(((IkReal(-1.00000000000000))*(r22)*(x11579)))+(((IkReal(-1.00000000000000))*(r22)*(x11568)))+(((x11576)*(x11577)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x11565)))+(((r20)*(x11587)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x11563)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x11570)))+(((cj5)*(r21)*(x11574)))); +evalcond[5]=((((x11573)*(x11574)))+(((r00)*(x11564)*(x11565)))+(((IkReal(-1.00000000000000))*(r12)*(x11562)*(x11566)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11562)*(x11565)))+(((cj5)*(x11564)*(x11582)))+(((x11563)*(x11584)))+(((IkReal(-1.00000000000000))*(r11)*(x11562)*(x11563)))+(((IkReal(-1.00000000000000))*(x11562)*(x11581)*(x11583)))+(((r02)*(sj5)*(x11564)))+(((IkReal(-1.00000000000000))*(r00)*(x11571)*(x11574)))); +evalcond[6]=((((x11574)*(x11585)))+(((IkReal(-1.00000000000000))*(r11)*(x11563)*(x11571)))+(((IkReal(-1.00000000000000))*(x11564)*(x11572)*(x11583)))+(((x11574)*(x11578)))+(((IkReal(-1.00000000000000))*(r10)*(x11564)*(x11565)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11562)*(x11565)))+(((IkReal(-1.00000000000000))*(r01)*(x11562)*(x11563)))+(((IkReal(-1.00000000000000))*(x11564)*(x11567)))+(((IkReal(-1.00000000000000))*(r02)*(x11562)*(x11566)))+(((IkReal(-1.00000000000000))*(x11562)*(x11581)*(x11582)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x11573)*(x11587)))+(((sj0)*(x11577)*(x11582)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11583)))+(((IkReal(-1.00000000000000))*(x11568)*(x11569)))+(((IkReal(0.0100000000000000))*(x11565)*(x11573)))+(((IkReal(-1.00000000000000))*(cj0)*(x11577)*(x11583)))+(((IkReal(-0.0100000000000000))*(x11565)*(x11575)))+(((cj0)*(r12)*(x11568)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11582)))+(((IkReal(-1.00000000000000))*(x11569)*(x11579)))+(((IkReal(0.0100000000000000))*(cj0)*(x11567)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x11562)))+(((x11575)*(x11587)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x11568)*(x11580)))+(((IkReal(-1.00000000000000))*(cj0)*(x11577)*(x11582)))+(((IkReal(-1.00000000000000))*(px)*(x11562)))+(((IkReal(-1.00000000000000))*(sj0)*(x11577)*(x11583)))+(((IkReal(-1.00000000000000))*(x11585)*(x11587)))+(((IkReal(0.0100000000000000))*(x11565)*(x11578)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11582)))+(((r12)*(sj0)*(x11568)))+(((IkReal(-1.00000000000000))*(x11578)*(x11587)))+(((IkReal(0.0100000000000000))*(sj0)*(x11567)))+(((x11579)*(x11580)))+(((IkReal(-1.00000000000000))*(py)*(x11571)))+(((IkReal(0.0100000000000000))*(x11565)*(x11585)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11583)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11589=((IkReal(1.00000000000000))*(cj5)); +IkReal x11590=((r10)*(sj5)*(sj6)); +IkReal x11591=((cj6)*(sj0)*(sj5)); +IkReal x11592=((r00)*(sj5)*(sj6)); +IkReal x11593=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r01)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x11589)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x11593)))+(((cj0)*(x11590)))+(((IkReal(-1.00000000000000))*(sj0)*(x11592))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(x11592)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11589)))+(((sj0)*(x11590)))+(((r01)*(x11593)))+(((r11)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11589))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x11589)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x11593)))+(((cj0)*(x11590)))+(((IkReal(-1.00000000000000))*(sj0)*(x11592)))))+IKsqr(((((cj0)*(x11592)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11589)))+(((sj0)*(x11590)))+(((r01)*(x11593)))+(((r11)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11589)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r01)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x11589)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x11593)))+(((cj0)*(x11590)))+(((IkReal(-1.00000000000000))*(sj0)*(x11592)))), ((((cj0)*(x11592)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11589)))+(((sj0)*(x11590)))+(((r01)*(x11593)))+(((r11)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11589))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11594=IKcos(j3); +IkReal x11595=IKsin(j3); +IkReal x11596=((sj0)*(sj5)); +IkReal x11597=((r00)*(sj6)); +IkReal x11598=((IkReal(1.00000000000000))*(cj4)); +IkReal x11599=((cj6)*(sj0)); +IkReal x11600=((r00)*(sj4)); +IkReal x11601=((cj0)*(cj5)); +IkReal x11602=((cj6)*(r01)); +IkReal x11603=((cj5)*(sj0)); +IkReal x11604=((cj0)*(sj5)); +IkReal x11605=((cj6)*(r11)); +IkReal x11606=((r10)*(sj6)); +IkReal x11607=((r10)*(sj4)); +IkReal x11608=((cj0)*(sj4)*(sj6)); +IkReal x11609=((sj0)*(sj4)*(sj6)); +IkReal x11610=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((x11595)+(((r12)*(x11601)))+(((x11596)*(x11602)))+(((IkReal(-1.00000000000000))*(x11604)*(x11605)))+(((IkReal(-1.00000000000000))*(x11604)*(x11606)))+(((IkReal(-1.00000000000000))*(r02)*(x11603)))+(((x11596)*(x11597)))); +evalcond[1]=((x11594)+(((IkReal(-1.00000000000000))*(x11602)*(x11604)))+(((r02)*(x11601)))+(((IkReal(-1.00000000000000))*(x11597)*(x11604)))+(((IkReal(-1.00000000000000))*(x11596)*(x11605)))+(((r12)*(x11603)))+(((IkReal(-1.00000000000000))*(x11596)*(x11606)))); +evalcond[2]=((((cj4)*(x11597)*(x11603)))+(((cj4)*(cj5)*(r01)*(x11599)))+(((IkReal(-1.00000000000000))*(x11607)*(x11610)))+(((IkReal(-1.00000000000000))*(r12)*(x11598)*(x11604)))+(((x11599)*(x11600)))+(((IkReal(-1.00000000000000))*(x11594)))+(((IkReal(-1.00000000000000))*(x11598)*(x11601)*(x11606)))+(((IkReal(-1.00000000000000))*(r01)*(x11609)))+(((r11)*(x11608)))+(((IkReal(-1.00000000000000))*(x11598)*(x11601)*(x11605)))+(((cj4)*(r02)*(x11596)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x11598)*(x11599)))+(x11595)+(((IkReal(-1.00000000000000))*(x11600)*(x11610)))+(((IkReal(-1.00000000000000))*(x11598)*(x11603)*(x11606)))+(((IkReal(-1.00000000000000))*(x11597)*(x11598)*(x11601)))+(((IkReal(-1.00000000000000))*(r02)*(x11598)*(x11604)))+(((IkReal(-1.00000000000000))*(r12)*(x11596)*(x11598)))+(((r11)*(x11609)))+(((IkReal(-1.00000000000000))*(x11599)*(x11607)))+(((IkReal(-1.00000000000000))*(x11598)*(x11601)*(x11602)))+(((r01)*(x11608)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11611=((sj0)*(sj5)); +IkReal x11612=((r00)*(sj6)); +IkReal x11613=((IkReal(1.00000000000000))*(cj5)); +IkReal x11614=((cj6)*(r11)); +IkReal x11615=((cj6)*(r01)); +IkReal x11616=((cj0)*(sj5)); +IkReal x11617=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11613)))+(((IkReal(-1.00000000000000))*(x11614)*(x11616)))+(((x11611)*(x11615)))+(((cj0)*(cj5)*(r12)))+(((x11611)*(x11612)))+(((IkReal(-1.00000000000000))*(x11616)*(x11617))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x11615)*(x11616)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11613)))+(((x11611)*(x11614)))+(((x11611)*(x11617)))+(((x11612)*(x11616)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11613))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11613)))+(((IkReal(-1.00000000000000))*(x11614)*(x11616)))+(((x11611)*(x11615)))+(((cj0)*(cj5)*(r12)))+(((x11611)*(x11612)))+(((IkReal(-1.00000000000000))*(x11616)*(x11617)))))))+IKsqr(((((x11615)*(x11616)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11613)))+(((x11611)*(x11614)))+(((x11611)*(x11617)))+(((x11612)*(x11616)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11613)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11613)))+(((IkReal(-1.00000000000000))*(x11614)*(x11616)))+(((x11611)*(x11615)))+(((cj0)*(cj5)*(r12)))+(((x11611)*(x11612)))+(((IkReal(-1.00000000000000))*(x11616)*(x11617)))))), ((((x11615)*(x11616)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11613)))+(((x11611)*(x11614)))+(((x11611)*(x11617)))+(((x11612)*(x11616)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11613))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11618=IKsin(j3); +IkReal x11619=IKcos(j3); +IkReal x11620=((sj0)*(sj5)); +IkReal x11621=((r00)*(sj6)); +IkReal x11622=((IkReal(1.00000000000000))*(cj4)); +IkReal x11623=((cj6)*(r01)); +IkReal x11624=((cj0)*(cj5)); +IkReal x11625=((cj5)*(sj0)); +IkReal x11626=((cj6)*(r11)); +IkReal x11627=((cj6)*(sj4)); +IkReal x11628=((cj0)*(sj5)); +IkReal x11629=((cj4)*(cj5)); +IkReal x11630=((cj6)*(r21)); +IkReal x11631=((r20)*(sj6)); +IkReal x11632=((r10)*(sj6)); +IkReal x11633=((IkReal(1.00000000000000))*(cj0)); +IkReal x11634=((cj0)*(sj4)*(sj6)); +IkReal x11635=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x11631)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11630)))+(((cj2)*(x11618)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11629)*(x11631)))+(((x11629)*(x11630)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj2)*(x11619)))+(((r20)*(x11627)))); +evalcond[2]=((((x11620)*(x11623)))+(((IkReal(-1.00000000000000))*(r02)*(x11625)))+(((r12)*(x11624)))+(((IkReal(-1.00000000000000))*(sj2)*(x11618)))+(((x11620)*(x11621)))+(((IkReal(-1.00000000000000))*(x11628)*(x11632)))+(((IkReal(-1.00000000000000))*(x11626)*(x11628)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11623)*(x11628)))+(((IkReal(-1.00000000000000))*(x11621)*(x11628)))+(((IkReal(-1.00000000000000))*(x11620)*(x11626)))+(((r12)*(x11625)))+(((r02)*(x11624)))+(((IkReal(-1.00000000000000))*(x11620)*(x11632)))+(x11619)); +evalcond[4]=((((cj4)*(x11621)*(x11625)))+(((cj4)*(r02)*(x11620)))+(((IkReal(-1.00000000000000))*(r12)*(x11622)*(x11628)))+(((IkReal(-1.00000000000000))*(x11622)*(x11624)*(x11632)))+(((IkReal(-1.00000000000000))*(r01)*(x11635)))+(((sj2)*(x11619)))+(((cj4)*(x11623)*(x11625)))+(((IkReal(-1.00000000000000))*(r10)*(x11627)*(x11633)))+(((r11)*(x11634)))+(((r00)*(sj0)*(x11627)))+(((IkReal(-1.00000000000000))*(x11622)*(x11624)*(x11626)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11621)*(x11622)*(x11624)))+(((IkReal(-1.00000000000000))*(r00)*(x11627)*(x11633)))+(((IkReal(-1.00000000000000))*(x11622)*(x11625)*(x11632)))+(((r01)*(x11634)))+(((IkReal(-1.00000000000000))*(r12)*(x11620)*(x11622)))+(((IkReal(-1.00000000000000))*(x11622)*(x11625)*(x11626)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11627)))+(((r11)*(x11635)))+(((IkReal(-1.00000000000000))*(x11622)*(x11623)*(x11624)))+(((IkReal(-1.00000000000000))*(r02)*(x11622)*(x11628)))+(x11618)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11636=((cj6)*(sj5)); +IkReal x11637=((IkReal(1.00000000000000))*(cj5)); +IkReal x11638=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x11638)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r21)*(x11636))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(r01)*(x11636)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11637)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11637)))+(((r11)*(sj0)*(x11636)))+(((r10)*(sj0)*(x11638)))+(((cj0)*(r00)*(x11638))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x11638)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r21)*(x11636)))))))+IKsqr(((((cj0)*(r01)*(x11636)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11637)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11637)))+(((r11)*(sj0)*(x11636)))+(((r10)*(sj0)*(x11638)))+(((cj0)*(r00)*(x11638)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x11638)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r21)*(x11636)))))), ((((cj0)*(r01)*(x11636)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11637)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11637)))+(((r11)*(sj0)*(x11636)))+(((r10)*(sj0)*(x11638)))+(((cj0)*(r00)*(x11638))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11639=IKsin(j3); +IkReal x11640=IKcos(j3); +IkReal x11641=((sj0)*(sj5)); +IkReal x11642=((r00)*(sj6)); +IkReal x11643=((IkReal(1.00000000000000))*(cj4)); +IkReal x11644=((cj6)*(r01)); +IkReal x11645=((cj0)*(cj5)); +IkReal x11646=((cj5)*(sj0)); +IkReal x11647=((cj6)*(r11)); +IkReal x11648=((cj6)*(sj4)); +IkReal x11649=((cj0)*(sj5)); +IkReal x11650=((cj4)*(cj5)); +IkReal x11651=((cj6)*(r21)); +IkReal x11652=((r20)*(sj6)); +IkReal x11653=((r10)*(sj6)); +IkReal x11654=((IkReal(1.00000000000000))*(cj0)); +IkReal x11655=((cj0)*(sj4)*(sj6)); +IkReal x11656=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x11651)))+(((sj5)*(x11652)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x11639)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj2)*(x11640)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x11648)))+(((cj4)*(r22)*(sj5)))+(((x11650)*(x11651)))+(((x11650)*(x11652)))); +evalcond[2]=((((r12)*(x11645)))+(((IkReal(-1.00000000000000))*(x11647)*(x11649)))+(((IkReal(-1.00000000000000))*(x11649)*(x11653)))+(((IkReal(-1.00000000000000))*(r02)*(x11646)))+(((x11641)*(x11642)))+(((x11641)*(x11644)))+(((IkReal(-1.00000000000000))*(sj2)*(x11639)))); +evalcond[3]=((((r12)*(x11646)))+(((IkReal(-1.00000000000000))*(x11642)*(x11649)))+(((IkReal(-1.00000000000000))*(x11641)*(x11653)))+(((IkReal(-1.00000000000000))*(x11644)*(x11649)))+(((IkReal(-1.00000000000000))*(x11641)*(x11647)))+(x11640)+(((r02)*(x11645)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11643)*(x11645)*(x11647)))+(((cj4)*(x11642)*(x11646)))+(((cj4)*(x11644)*(x11646)))+(((IkReal(-1.00000000000000))*(r12)*(x11643)*(x11649)))+(((cj4)*(r02)*(x11641)))+(((IkReal(-1.00000000000000))*(r01)*(x11656)))+(((sj2)*(x11640)))+(((IkReal(-1.00000000000000))*(r10)*(x11648)*(x11654)))+(((r11)*(x11655)))+(((IkReal(-1.00000000000000))*(x11643)*(x11645)*(x11653)))+(((r00)*(sj0)*(x11648)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11643)*(x11646)*(x11653)))+(((IkReal(-1.00000000000000))*(r00)*(x11648)*(x11654)))+(((IkReal(-1.00000000000000))*(r02)*(x11643)*(x11649)))+(x11639)+(((IkReal(-1.00000000000000))*(x11642)*(x11643)*(x11645)))+(((r11)*(x11656)))+(((IkReal(-1.00000000000000))*(x11643)*(x11646)*(x11647)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11648)))+(((IkReal(-1.00000000000000))*(x11643)*(x11644)*(x11645)))+(((IkReal(-1.00000000000000))*(r12)*(x11641)*(x11643)))+(((r01)*(x11655)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11657=((IkReal(1.00000000000000))*(r21)); +IkReal x11658=((cj4)*(cj5)); +IkReal x11659=((r20)*(sj6)); +if( IKabs(((gconst10)*(((((IkReal(-1.00000000000000))*(sj5)*(x11659)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11657)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst10)*(((((cj6)*(r20)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11657)))+(((cj4)*(r22)*(sj5)))+(((x11658)*(x11659)))+(((cj6)*(r21)*(x11658))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst10)*(((((IkReal(-1.00000000000000))*(sj5)*(x11659)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11657)))+(((cj5)*(r22)))))), ((gconst10)*(((((cj6)*(r20)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11657)))+(((cj4)*(r22)*(sj5)))+(((x11658)*(x11659)))+(((cj6)*(r21)*(x11658))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11660=IKsin(j3); +IkReal x11661=IKcos(j3); +IkReal x11662=((sj0)*(sj5)); +IkReal x11663=((r00)*(sj6)); +IkReal x11664=((IkReal(1.00000000000000))*(cj4)); +IkReal x11665=((cj6)*(r01)); +IkReal x11666=((cj0)*(cj5)); +IkReal x11667=((cj5)*(sj0)); +IkReal x11668=((cj6)*(r11)); +IkReal x11669=((cj6)*(sj4)); +IkReal x11670=((cj0)*(sj5)); +IkReal x11671=((cj4)*(cj5)); +IkReal x11672=((cj6)*(r21)); +IkReal x11673=((r20)*(sj6)); +IkReal x11674=((r10)*(sj6)); +IkReal x11675=((IkReal(1.00000000000000))*(cj0)); +IkReal x11676=((cj0)*(sj4)*(sj6)); +IkReal x11677=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x11673)))+(((sj5)*(x11672)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x11660)))); +evalcond[1]=((((x11671)*(x11673)))+(((r20)*(x11669)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj2)*(x11661)))+(((x11671)*(x11672)))); +evalcond[2]=((((x11662)*(x11663)))+(((IkReal(-1.00000000000000))*(x11670)*(x11674)))+(((x11662)*(x11665)))+(((IkReal(-1.00000000000000))*(x11668)*(x11670)))+(((r12)*(x11666)))+(((IkReal(-1.00000000000000))*(r02)*(x11667)))+(((IkReal(-1.00000000000000))*(sj2)*(x11660)))); +evalcond[3]=((x11661)+(((IkReal(-1.00000000000000))*(x11663)*(x11670)))+(((r12)*(x11667)))+(((IkReal(-1.00000000000000))*(x11662)*(x11668)))+(((IkReal(-1.00000000000000))*(x11665)*(x11670)))+(((IkReal(-1.00000000000000))*(x11662)*(x11674)))+(((r02)*(x11666)))); +evalcond[4]=((((cj4)*(r02)*(x11662)))+(((r00)*(sj0)*(x11669)))+(((cj4)*(x11665)*(x11667)))+(((sj2)*(x11661)))+(((cj4)*(x11663)*(x11667)))+(((IkReal(-1.00000000000000))*(x11664)*(x11666)*(x11674)))+(((IkReal(-1.00000000000000))*(r01)*(x11677)))+(((IkReal(-1.00000000000000))*(r10)*(x11669)*(x11675)))+(((r11)*(x11676)))+(((IkReal(-1.00000000000000))*(x11664)*(x11666)*(x11668)))+(((IkReal(-1.00000000000000))*(r12)*(x11664)*(x11670)))); +evalcond[5]=((((r01)*(x11676)))+(((IkReal(-1.00000000000000))*(x11664)*(x11667)*(x11668)))+(x11660)+(((IkReal(-1.00000000000000))*(x11663)*(x11664)*(x11666)))+(((IkReal(-1.00000000000000))*(r12)*(x11662)*(x11664)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11669)))+(((r11)*(x11677)))+(((IkReal(-1.00000000000000))*(x11664)*(x11665)*(x11666)))+(((IkReal(-1.00000000000000))*(r00)*(x11669)*(x11675)))+(((IkReal(-1.00000000000000))*(x11664)*(x11667)*(x11674)))+(((IkReal(-1.00000000000000))*(r02)*(x11664)*(x11670)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x11678=((IkReal(1.00000000000000))*(cj0)); +IkReal x11679=((cj4)*(sj6)); +IkReal x11680=((sj0)*(sj4)); +IkReal x11681=((cj5)*(sj6)); +IkReal x11682=((sj4)*(sj5)); +IkReal x11683=((r12)*(sj5)); +IkReal x11684=((IkReal(0.374290000000000))*(cj5)); +IkReal x11685=((r02)*(sj0)); +IkReal x11686=((IkReal(1.00000000000000))*(sj0)); +IkReal x11687=((cj0)*(r10)); +IkReal x11688=((cj4)*(cj6)); +IkReal x11689=((r00)*(sj0)); +IkReal x11690=((cj6)*(r21)); +IkReal x11691=((IkReal(0.374290000000000))*(sj5)); +IkReal x11692=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11693=((cj0)*(r02)); +IkReal x11694=((cj5)*(sj4)); +IkReal x11695=((cj6)*(r01)); +IkReal x11696=((cj0)*(r00)); +IkReal x11697=((cj6)*(r11)); +IkReal x11698=((r01)*(sj0)); +IkReal x11699=((r10)*(sj0)); +IkReal x11700=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11701=((sj6)*(x11691)); +IkReal x11702=((cj0)*(cj6)*(x11691)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x11688)))+(((x11690)*(x11694)))+(((r20)*(sj4)*(x11681)))+(((IkReal(-1.00000000000000))*(cj1)))+(((r21)*(x11679)))+(((r22)*(x11682)))); +evalcond[2]=((((IkReal(-0.0100000000000000))*(r20)*(x11681)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x11692)))+(((IkReal(-1.00000000000000))*(r22)*(x11684)))+(((r20)*(x11701)))+(((IkReal(-0.0100000000000000))*(cj5)*(x11690)))+(((x11690)*(x11691)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11678)*(x11694)*(x11697)))+(((IkReal(-1.00000000000000))*(r11)*(x11678)*(x11679)))+(((IkReal(-1.00000000000000))*(r00)*(x11686)*(x11688)))+(((r00)*(x11680)*(x11681)))+(((r02)*(sj5)*(x11680)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11678)*(x11681)))+(((x11687)*(x11688)))+(((IkReal(-1.00000000000000))*(r12)*(x11678)*(x11682)))+(((x11679)*(x11698)))+(((cj5)*(x11680)*(x11695)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11678)*(x11694)*(x11695)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11678)*(x11681)))+(sj1)+(((x11688)*(x11696)))+(((IkReal(-1.00000000000000))*(r02)*(x11678)*(x11682)))+(((IkReal(-1.00000000000000))*(r10)*(x11680)*(x11681)))+(((IkReal(-1.00000000000000))*(r11)*(x11679)*(x11686)))+(((IkReal(-1.00000000000000))*(r01)*(x11678)*(x11679)))+(((IkReal(-1.00000000000000))*(cj5)*(x11680)*(x11697)))+(((x11688)*(x11699)))+(((IkReal(-1.00000000000000))*(x11680)*(x11683)))); +evalcond[5]=((IkReal(0.0690000000000000))+(((x11689)*(x11701)))+(((IkReal(-1.00000000000000))*(x11685)*(x11692)))+(((IkReal(-0.0100000000000000))*(x11681)*(x11689)))+(((sj0)*(x11691)*(x11695)))+(((IkReal(-1.00000000000000))*(cj0)*(x11691)*(x11697)))+(((IkReal(-1.00000000000000))*(x11684)*(x11685)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11695)))+(((IkReal(0.0100000000000000))*(x11681)*(x11687)))+(((IkReal(-1.00000000000000))*(x11687)*(x11701)))+(((IkReal(-1.00000000000000))*(py)*(x11678)))+(((IkReal(0.0100000000000000))*(cj0)*(x11683)))+(((cj0)*(r12)*(x11684)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11697)))+(((px)*(sj0)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(x11681)*(x11699)))+(((IkReal(-1.00000000000000))*(x11699)*(x11701)))+(((x11692)*(x11693)))+(((IkReal(-1.00000000000000))*(px)*(x11678)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11697)))+(((IkReal(-1.00000000000000))*(cj0)*(x11691)*(x11695)))+(((IkReal(-1.00000000000000))*(sj0)*(x11691)*(x11697)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11695)))+(((IkReal(0.0100000000000000))*(sj0)*(x11683)))+(((IkReal(-1.00000000000000))*(x11696)*(x11701)))+(((IkReal(-1.00000000000000))*(py)*(x11686)))+(((IkReal(0.0100000000000000))*(x11681)*(x11696)))+(((x11684)*(x11693)))+(((IkReal(0.364420000000000))*(cj1)))+(((r12)*(sj0)*(x11684)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst11; +gconst11=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x11703=((IkReal(1.00000000000000))*(cj0)); +IkReal x11704=((cj4)*(sj6)); +IkReal x11705=((sj0)*(sj6)); +IkReal x11706=((cj5)*(sj4)); +IkReal x11707=((IkReal(0.374290000000000))*(sj5)); +IkReal x11708=((sj4)*(sj5)); +IkReal x11709=((cj0)*(cj6)); +IkReal x11710=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11711=((cj4)*(sj5)); +IkReal x11712=((cj5)*(sj0)); +IkReal x11713=((IkReal(0.374290000000000))*(r02)); +IkReal x11714=((r20)*(sj6)); +IkReal x11715=((cj6)*(r21)); +IkReal x11716=((IkReal(1.00000000000000))*(sj0)); +IkReal x11717=((cj0)*(sj6)); +IkReal x11718=((cj4)*(cj6)); +IkReal x11719=((IkReal(0.374290000000000))*(r12)); +IkReal x11720=((cj0)*(cj5)); +IkReal x11721=((cj6)*(sj5)); +IkReal x11722=((cj6)*(r01)); +IkReal x11723=((r00)*(sj6)); +IkReal x11724=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11725=((cj6)*(r11)); +IkReal x11726=((IkReal(1.00000000000000))*(r10)); +IkReal x11727=((r02)*(sj0)); +IkReal x11728=((cj6)*(sj4)); +IkReal x11729=((r12)*(x11716)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x11706)*(x11714)))+(((r21)*(x11704)))+(((r22)*(x11708)))+(((x11706)*(x11715)))+(((IkReal(-1.00000000000000))*(r20)*(x11718)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x11707)*(x11715)))+(((IkReal(-1.00000000000000))*(x11710)*(x11714)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x11707)*(x11714)))+(((IkReal(-1.00000000000000))*(r22)*(x11724)))+(((IkReal(-1.00000000000000))*(x11710)*(x11715)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x11716)*(x11721)))+(((IkReal(-1.00000000000000))*(r01)*(x11703)*(x11721)))+(((r12)*(x11712)))+(((IkReal(-1.00000000000000))*(sj5)*(x11703)*(x11723)))+(((IkReal(-1.00000000000000))*(sj5)*(x11705)*(x11726)))+(((r02)*(x11720)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11703)*(x11706)*(x11725)))+(((IkReal(-1.00000000000000))*(r00)*(x11716)*(x11718)))+(((r01)*(sj0)*(x11704)))+(((cj4)*(r10)*(x11709)))+(((sj0)*(x11706)*(x11722)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11703)*(x11706)))+(((r00)*(x11705)*(x11706)))+(((IkReal(-1.00000000000000))*(r11)*(x11703)*(x11704)))+(((x11708)*(x11727)))+(((IkReal(-1.00000000000000))*(r12)*(x11703)*(x11708)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x11708)*(x11729)))+(((cj4)*(r00)*(x11709)))+(((IkReal(-1.00000000000000))*(x11706)*(x11716)*(x11725)))+(((IkReal(-1.00000000000000))*(x11705)*(x11706)*(x11726)))+(((IkReal(-1.00000000000000))*(r02)*(x11703)*(x11708)))+(((IkReal(-1.00000000000000))*(x11703)*(x11706)*(x11723)))+(((IkReal(-1.00000000000000))*(r11)*(x11704)*(x11716)))+(((IkReal(-1.00000000000000))*(x11703)*(x11706)*(x11722)))+(((r10)*(sj0)*(x11718)))+(((IkReal(-1.00000000000000))*(r01)*(x11703)*(x11704)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x11710)*(x11722)))+(((IkReal(-1.00000000000000))*(r00)*(x11705)*(x11710)))+(((x11719)*(x11720)))+(((IkReal(-1.00000000000000))*(r10)*(x11707)*(x11717)))+(((r11)*(x11709)*(x11710)))+(((sj0)*(x11707)*(x11722)))+(((r10)*(x11710)*(x11717)))+(((IkReal(-1.00000000000000))*(x11712)*(x11713)))+(((IkReal(-1.00000000000000))*(r11)*(x11707)*(x11709)))+(((IkReal(-1.00000000000000))*(py)*(x11703)))+(((cj0)*(r12)*(x11724)))+(((IkReal(-1.00000000000000))*(x11724)*(x11727)))+(((px)*(sj0)))+(((r00)*(x11705)*(x11707)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x11703)*(x11704)))+(((IkReal(-1.00000000000000))*(x11704)*(x11712)*(x11726)))+(((r11)*(sj4)*(x11705)))+(((IkReal(-1.00000000000000))*(r10)*(x11716)*(x11728)))+(((IkReal(-1.00000000000000))*(r00)*(x11703)*(x11728)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x11703)*(x11718)))+(((r01)*(sj4)*(x11717)))+(((IkReal(-1.00000000000000))*(r11)*(x11712)*(x11718)))+(((IkReal(-1.00000000000000))*(r02)*(x11703)*(x11711)))+(((IkReal(-1.00000000000000))*(x11711)*(x11729)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x11707)*(x11725)))+(((IkReal(-1.00000000000000))*(r00)*(x11707)*(x11717)))+(((sj0)*(x11710)*(x11725)))+(((x11712)*(x11719)))+(((IkReal(-1.00000000000000))*(px)*(x11703)))+(((r10)*(x11705)*(x11710)))+(((IkReal(-1.00000000000000))*(r01)*(x11707)*(x11709)))+(((x11713)*(x11720)))+(((IkReal(-1.00000000000000))*(py)*(x11716)))+(((r00)*(x11710)*(x11717)))+(((IkReal(-1.00000000000000))*(r10)*(x11705)*(x11707)))+(((cj0)*(r02)*(x11724)))+(((r01)*(x11709)*(x11710)))+(((r12)*(sj0)*(x11724)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11730=((r20)*(sj6)); +IkReal x11731=((cj4)*(cj5)); +IkReal x11732=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11730)*(x11731)))+(((x11731)*(x11732)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x11732)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11730))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11730)*(x11731)))+(((x11731)*(x11732)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))+IKsqr(((((sj5)*(x11732)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11730)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11730)*(x11731)))+(((x11731)*(x11732)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))), ((((sj5)*(x11732)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11730))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11733=IKcos(j3); +IkReal x11734=((sj0)*(sj5)); +IkReal x11735=((r00)*(sj6)); +IkReal x11736=((cj6)*(r01)); +IkReal x11737=((cj5)*(sj0)); +IkReal x11738=((cj0)*(cj5)); +IkReal x11739=((cj6)*(sj4)); +IkReal x11740=((sj4)*(sj6)); +IkReal x11741=((cj0)*(r11)); +IkReal x11742=((cj4)*(cj6)); +IkReal x11743=((cj4)*(sj6)); +IkReal x11744=((IkReal(1.00000000000000))*(cj0)); +IkReal x11745=((cj4)*(sj5)); +IkReal x11746=((sj5)*(sj6)); +IkReal x11747=((cj6)*(sj5)); +IkReal x11748=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r20)*(x11746)))+(((IkReal(-1.00000000000000))*(x11733)))+(((r21)*(x11747)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((cj5)*(r21)*(x11742)))+(((IkReal(-1.00000000000000))*(r21)*(x11740)))+(((cj5)*(r20)*(x11743)))+(((r22)*(x11745)))+(((IkReal(-1.00000000000000))*(x11748)))+(((r20)*(x11739)))); +evalcond[2]=((((x11734)*(x11735)))+(((x11734)*(x11736)))+(((IkReal(-1.00000000000000))*(r10)*(x11744)*(x11746)))+(((r12)*(x11738)))+(((IkReal(-1.00000000000000))*(r02)*(x11737)))+(((IkReal(-1.00000000000000))*(x11748)))+(((IkReal(-1.00000000000000))*(x11741)*(x11747)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x11738)*(x11742)))+(((cj4)*(x11736)*(x11737)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x11740)))+(((r00)*(sj0)*(x11739)))+(((IkReal(-1.00000000000000))*(r10)*(x11738)*(x11743)))+(((x11740)*(x11741)))+(((cj4)*(r02)*(x11734)))+(x11733)+(((IkReal(-1.00000000000000))*(r10)*(x11739)*(x11744)))+(((IkReal(-1.00000000000000))*(r12)*(x11744)*(x11745)))+(((cj4)*(x11735)*(x11737)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11749=((IkReal(1.00000000000000))*(cj0)); +IkReal x11750=((cj4)*(sj6)); +IkReal x11751=((sj0)*(sj6)); +IkReal x11752=((cj5)*(sj4)); +IkReal x11753=((IkReal(0.374290000000000))*(sj5)); +IkReal x11754=((sj4)*(sj5)); +IkReal x11755=((cj0)*(cj6)); +IkReal x11756=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11757=((cj4)*(sj5)); +IkReal x11758=((cj5)*(sj0)); +IkReal x11759=((IkReal(0.374290000000000))*(r02)); +IkReal x11760=((r20)*(sj6)); +IkReal x11761=((cj6)*(r21)); +IkReal x11762=((IkReal(1.00000000000000))*(sj0)); +IkReal x11763=((cj0)*(sj6)); +IkReal x11764=((cj4)*(cj6)); +IkReal x11765=((IkReal(0.374290000000000))*(r12)); +IkReal x11766=((cj0)*(cj5)); +IkReal x11767=((cj6)*(sj5)); +IkReal x11768=((cj6)*(r01)); +IkReal x11769=((r00)*(sj6)); +IkReal x11770=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11771=((cj6)*(r11)); +IkReal x11772=((IkReal(1.00000000000000))*(r10)); +IkReal x11773=((r02)*(sj0)); +IkReal x11774=((cj6)*(sj4)); +IkReal x11775=((r12)*(x11762)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x11754)))+(((x11752)*(x11760)))+(((r21)*(x11750)))+(((x11752)*(x11761)))+(((IkReal(-1.00000000000000))*(r20)*(x11764)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((x11753)*(x11761)))+(((IkReal(-1.00000000000000))*(x11756)*(x11761)))+(((x11753)*(x11760)))+(((IkReal(-1.00000000000000))*(x11756)*(x11760)))+(((IkReal(-1.00000000000000))*(r22)*(x11770)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(x11749)*(x11767)))+(((IkReal(-1.00000000000000))*(sj5)*(x11749)*(x11769)))+(((IkReal(-1.00000000000000))*(r11)*(x11762)*(x11767)))+(((r12)*(x11758)))+(((r02)*(x11766)))+(((IkReal(-1.00000000000000))*(sj5)*(x11751)*(x11772)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x11749)*(x11754)))+(((r00)*(x11751)*(x11752)))+(((IkReal(-1.00000000000000))*(r00)*(x11762)*(x11764)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11749)*(x11752)))+(((x11754)*(x11773)))+(((cj4)*(r10)*(x11755)))+(((IkReal(-1.00000000000000))*(r11)*(x11749)*(x11750)))+(((IkReal(-1.00000000000000))*(x11749)*(x11752)*(x11771)))+(((r01)*(sj0)*(x11750)))+(((sj0)*(x11752)*(x11768)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r02)*(x11749)*(x11754)))+(((IkReal(-1.00000000000000))*(x11754)*(x11775)))+(((cj4)*(r00)*(x11755)))+(((IkReal(-1.00000000000000))*(r01)*(x11749)*(x11750)))+(((IkReal(-1.00000000000000))*(x11749)*(x11752)*(x11769)))+(((r10)*(sj0)*(x11764)))+(((IkReal(-1.00000000000000))*(x11749)*(x11752)*(x11768)))+(((IkReal(-1.00000000000000))*(x11751)*(x11752)*(x11772)))+(((IkReal(-1.00000000000000))*(r11)*(x11750)*(x11762)))+(((IkReal(-1.00000000000000))*(x11752)*(x11762)*(x11771)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((sj0)*(x11753)*(x11768)))+(((r11)*(x11755)*(x11756)))+(((r10)*(x11756)*(x11763)))+(((IkReal(-1.00000000000000))*(r00)*(x11751)*(x11756)))+(((cj0)*(r12)*(x11770)))+(((IkReal(-1.00000000000000))*(sj0)*(x11756)*(x11768)))+(((x11765)*(x11766)))+(((IkReal(-1.00000000000000))*(x11770)*(x11773)))+(((IkReal(-1.00000000000000))*(r11)*(x11753)*(x11755)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(x11753)*(x11763)))+(((IkReal(-1.00000000000000))*(x11758)*(x11759)))+(((r00)*(x11751)*(x11753)))+(((IkReal(-1.00000000000000))*(py)*(x11749)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x11757)*(x11775)))+(((r11)*(sj4)*(x11751)))+(((IkReal(-1.00000000000000))*(r02)*(x11749)*(x11757)))+(((IkReal(-1.00000000000000))*(r11)*(x11758)*(x11764)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x11749)*(x11764)))+(((IkReal(-1.00000000000000))*(r10)*(x11762)*(x11774)))+(((r01)*(sj4)*(x11763)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x11749)*(x11750)))+(((IkReal(-1.00000000000000))*(r00)*(x11749)*(x11774)))+(((IkReal(-1.00000000000000))*(x11750)*(x11758)*(x11772)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj0)*(r02)*(x11770)))+(((IkReal(-1.00000000000000))*(r01)*(x11753)*(x11755)))+(((IkReal(-1.00000000000000))*(r10)*(x11751)*(x11753)))+(((r10)*(x11751)*(x11756)))+(((IkReal(-1.00000000000000))*(sj0)*(x11753)*(x11771)))+(((IkReal(-1.00000000000000))*(r00)*(x11753)*(x11763)))+(((IkReal(-1.00000000000000))*(px)*(x11749)))+(((r01)*(x11755)*(x11756)))+(((sj0)*(x11756)*(x11771)))+(((r00)*(x11756)*(x11763)))+(((x11758)*(x11765)))+(((x11759)*(x11766)))+(((r12)*(sj0)*(x11770)))+(((IkReal(-1.00000000000000))*(py)*(x11762)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11776=((IkReal(1.00000000000000))*(sj5)); +IkReal x11777=((cj6)*(r21)); +IkReal x11778=((r20)*(sj6)); +IkReal x11779=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x11777)*(x11779)))+(((IkReal(-1.00000000000000))*(x11778)*(x11779)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11776)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x11776)*(x11778)))+(((IkReal(-1.00000000000000))*(x11776)*(x11777)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x11777)*(x11779)))+(((IkReal(-1.00000000000000))*(x11778)*(x11779)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11776)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x11776)*(x11778)))+(((IkReal(-1.00000000000000))*(x11776)*(x11777)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x11777)*(x11779)))+(((IkReal(-1.00000000000000))*(x11778)*(x11779)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11776)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x11776)*(x11778)))+(((IkReal(-1.00000000000000))*(x11776)*(x11777)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11780=IKsin(j3); +IkReal x11781=IKcos(j3); +IkReal x11782=((sj0)*(sj5)); +IkReal x11783=((r00)*(sj6)); +IkReal x11784=((cj6)*(r01)); +IkReal x11785=((cj5)*(sj0)); +IkReal x11786=((cj0)*(cj5)); +IkReal x11787=((cj6)*(sj4)); +IkReal x11788=((sj4)*(sj6)); +IkReal x11789=((cj0)*(r11)); +IkReal x11790=((cj4)*(cj6)); +IkReal x11791=((cj4)*(sj6)); +IkReal x11792=((IkReal(1.00000000000000))*(cj0)); +IkReal x11793=((cj4)*(sj5)); +IkReal x11794=((sj5)*(sj6)); +IkReal x11795=((cj6)*(sj5)); +evalcond[0]=((x11781)+(((r20)*(x11794)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r21)*(x11795)))); +evalcond[1]=((x11780)+(((IkReal(-1.00000000000000))*(r21)*(x11788)))+(((cj5)*(r21)*(x11790)))+(((cj5)*(r20)*(x11791)))+(((r20)*(x11787)))+(((r22)*(x11793)))); +evalcond[2]=((((x11782)*(x11784)))+(((IkReal(-1.00000000000000))*(r02)*(x11785)))+(((IkReal(-1.00000000000000))*(x11780)))+(((x11782)*(x11783)))+(((r12)*(x11786)))+(((IkReal(-1.00000000000000))*(r10)*(x11792)*(x11794)))+(((IkReal(-1.00000000000000))*(x11789)*(x11795)))); +evalcond[3]=((x11781)+(((IkReal(-1.00000000000000))*(r10)*(x11786)*(x11791)))+(((r00)*(sj0)*(x11787)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x11788)))+(((IkReal(-1.00000000000000))*(r12)*(x11792)*(x11793)))+(((x11788)*(x11789)))+(((cj4)*(x11784)*(x11785)))+(((cj4)*(x11783)*(x11785)))+(((IkReal(-1.00000000000000))*(r10)*(x11787)*(x11792)))+(((IkReal(-1.00000000000000))*(r11)*(x11786)*(x11790)))+(((cj4)*(r02)*(x11782)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11796=((cj0)*(cj5)); +IkReal x11797=((IkReal(1.00000000000000))*(cj0)); +IkReal x11798=((cj6)*(r11)); +IkReal x11799=((r10)*(sj6)); +IkReal x11800=((cj5)*(sj0)); +IkReal x11801=((r00)*(sj5)*(sj6)); +IkReal x11802=((cj6)*(r01)*(sj5)); +IkReal x11803=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11799)))+(((r12)*(x11796)))+(((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11798)))+(((sj0)*(x11802)))+(((IkReal(-1.00000000000000))*(r02)*(x11800)))+(((sj0)*(x11801))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x11796)))+(((IkReal(-1.00000000000000))*(x11797)*(x11802)))+(((IkReal(-1.00000000000000))*(x11799)*(x11803)))+(((IkReal(-1.00000000000000))*(x11797)*(x11801)))+(((r12)*(x11800)))+(((IkReal(-1.00000000000000))*(x11798)*(x11803))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11799)))+(((r12)*(x11796)))+(((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11798)))+(((sj0)*(x11802)))+(((IkReal(-1.00000000000000))*(r02)*(x11800)))+(((sj0)*(x11801)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x11796)))+(((IkReal(-1.00000000000000))*(x11797)*(x11802)))+(((IkReal(-1.00000000000000))*(x11799)*(x11803)))+(((IkReal(-1.00000000000000))*(x11797)*(x11801)))+(((r12)*(x11800)))+(((IkReal(-1.00000000000000))*(x11798)*(x11803)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11799)))+(((r12)*(x11796)))+(((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11798)))+(((sj0)*(x11802)))+(((IkReal(-1.00000000000000))*(r02)*(x11800)))+(((sj0)*(x11801)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x11796)))+(((IkReal(-1.00000000000000))*(x11797)*(x11802)))+(((IkReal(-1.00000000000000))*(x11799)*(x11803)))+(((IkReal(-1.00000000000000))*(x11797)*(x11801)))+(((r12)*(x11800)))+(((IkReal(-1.00000000000000))*(x11798)*(x11803))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11804=IKsin(j3); +IkReal x11805=IKcos(j3); +IkReal x11806=((sj0)*(sj5)); +IkReal x11807=((r00)*(sj6)); +IkReal x11808=((cj6)*(r01)); +IkReal x11809=((cj4)*(cj5)); +IkReal x11810=((IkReal(1.00000000000000))*(cj0)); +IkReal x11811=((cj5)*(r12)); +IkReal x11812=((IkReal(1.00000000000000))*(sj0)); +IkReal x11813=((cj6)*(r11)); +IkReal x11814=((cj5)*(r02)); +IkReal x11815=((IkReal(1.00000000000000))*(cj1)); +IkReal x11816=((cj6)*(sj4)); +IkReal x11817=((cj6)*(r21)); +IkReal x11818=((r20)*(sj6)); +IkReal x11819=((r10)*(sj6)); +IkReal x11820=((sj4)*(sj6)); +IkReal x11821=((cj4)*(r02)); +IkReal x11822=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x11823=((IkReal(1.00000000000000))*(x11804)); +IkReal x11824=((cj0)*(x11820)); +evalcond[0]=((((sj5)*(x11817)))+(((sj5)*(x11818)))+(((IkReal(-1.00000000000000))*(sj1)*(x11805)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x11820)))+(((IkReal(-1.00000000000000))*(sj1)*(x11823)))+(((cj4)*(r22)*(sj5)))+(((x11809)*(x11818)))+(((x11809)*(x11817)))+(((r20)*(x11816)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x11810)*(x11813)))+(((IkReal(-1.00000000000000))*(sj5)*(x11810)*(x11819)))+(((cj0)*(x11811)))+(((x11806)*(x11808)))+(((IkReal(-1.00000000000000))*(x11823)))+(((IkReal(-1.00000000000000))*(x11812)*(x11814)))+(((x11806)*(x11807)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x11808)*(x11810)))+(((sj0)*(x11811)))+(((IkReal(-1.00000000000000))*(sj5)*(x11807)*(x11810)))+(((cj0)*(x11814)))+(((IkReal(-1.00000000000000))*(x11806)*(x11819)))+(((IkReal(-1.00000000000000))*(x11806)*(x11813)))+(((IkReal(-1.00000000000000))*(x11805)*(x11815)))); +evalcond[4]=((((r11)*(x11824)))+(((x11806)*(x11821)))+(((IkReal(-1.00000000000000))*(r01)*(x11812)*(x11820)))+(((sj0)*(x11807)*(x11809)))+(((r00)*(sj0)*(x11816)))+(((sj0)*(x11808)*(x11809)))+(((IkReal(-1.00000000000000))*(r10)*(x11810)*(x11816)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x11810)))+(((IkReal(-1.00000000000000))*(x11809)*(x11810)*(x11819)))+(x11805)+(((IkReal(-1.00000000000000))*(x11809)*(x11810)*(x11813)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x11810)*(x11821)))+(((IkReal(-1.00000000000000))*(x11808)*(x11809)*(x11810)))+(((r11)*(sj0)*(x11820)))+(((IkReal(-1.00000000000000))*(x11806)*(x11822)))+(((IkReal(-1.00000000000000))*(r00)*(x11810)*(x11816)))+(((IkReal(-1.00000000000000))*(r10)*(x11812)*(x11816)))+(((IkReal(-1.00000000000000))*(x11804)*(x11815)))+(((IkReal(-1.00000000000000))*(x11807)*(x11809)*(x11810)))+(((IkReal(-1.00000000000000))*(x11809)*(x11812)*(x11819)))+(((IkReal(-1.00000000000000))*(x11809)*(x11812)*(x11813)))+(((r01)*(x11824)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11825=((sj5)*(sj6)); +IkReal x11826=((cj6)*(sj5)); +IkReal x11827=((IkReal(1.00000000000000))*(cj0)); +IkReal x11828=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r01)*(sj0)*(x11826)))+(((r00)*(sj0)*(x11825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11828)))+(((IkReal(-1.00000000000000))*(r11)*(x11826)*(x11827)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x11825)*(x11827))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x11826)))+(((IkReal(-1.00000000000000))*(r22)*(x11828)))+(((r20)*(x11825))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r01)*(sj0)*(x11826)))+(((r00)*(sj0)*(x11825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11828)))+(((IkReal(-1.00000000000000))*(r11)*(x11826)*(x11827)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x11825)*(x11827)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x11826)))+(((IkReal(-1.00000000000000))*(r22)*(x11828)))+(((r20)*(x11825)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r01)*(sj0)*(x11826)))+(((r00)*(sj0)*(x11825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11828)))+(((IkReal(-1.00000000000000))*(r11)*(x11826)*(x11827)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x11825)*(x11827)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x11826)))+(((IkReal(-1.00000000000000))*(r22)*(x11828)))+(((r20)*(x11825))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11829=IKsin(j3); +IkReal x11830=IKcos(j3); +IkReal x11831=((sj0)*(sj5)); +IkReal x11832=((r00)*(sj6)); +IkReal x11833=((cj6)*(r01)); +IkReal x11834=((cj4)*(cj5)); +IkReal x11835=((IkReal(1.00000000000000))*(cj0)); +IkReal x11836=((cj5)*(r12)); +IkReal x11837=((IkReal(1.00000000000000))*(sj0)); +IkReal x11838=((cj6)*(r11)); +IkReal x11839=((cj5)*(r02)); +IkReal x11840=((IkReal(1.00000000000000))*(cj1)); +IkReal x11841=((cj6)*(sj4)); +IkReal x11842=((cj6)*(r21)); +IkReal x11843=((r20)*(sj6)); +IkReal x11844=((r10)*(sj6)); +IkReal x11845=((sj4)*(sj6)); +IkReal x11846=((cj4)*(r02)); +IkReal x11847=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x11848=((IkReal(1.00000000000000))*(x11829)); +IkReal x11849=((cj0)*(x11845)); +evalcond[0]=((((sj5)*(x11842)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x11830)))+(((sj5)*(x11843)))); +evalcond[1]=((((r20)*(x11841)))+(((IkReal(-1.00000000000000))*(sj1)*(x11848)))+(((x11834)*(x11843)))+(((cj4)*(r22)*(sj5)))+(((x11834)*(x11842)))+(((IkReal(-1.00000000000000))*(r21)*(x11845)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x11835)*(x11844)))+(((IkReal(-1.00000000000000))*(sj5)*(x11835)*(x11838)))+(((x11831)*(x11833)))+(((IkReal(-1.00000000000000))*(x11837)*(x11839)))+(((x11831)*(x11832)))+(((IkReal(-1.00000000000000))*(x11848)))+(((cj0)*(x11836)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11830)*(x11840)))+(((IkReal(-1.00000000000000))*(sj5)*(x11833)*(x11835)))+(((cj0)*(x11839)))+(((IkReal(-1.00000000000000))*(x11831)*(x11838)))+(((IkReal(-1.00000000000000))*(sj5)*(x11832)*(x11835)))+(((sj0)*(x11836)))+(((IkReal(-1.00000000000000))*(x11831)*(x11844)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x11835)))+(((IkReal(-1.00000000000000))*(r10)*(x11835)*(x11841)))+(((sj0)*(x11833)*(x11834)))+(((x11831)*(x11846)))+(((IkReal(-1.00000000000000))*(r01)*(x11837)*(x11845)))+(((r11)*(x11849)))+(((IkReal(-1.00000000000000))*(x11834)*(x11835)*(x11838)))+(((IkReal(-1.00000000000000))*(x11834)*(x11835)*(x11844)))+(x11830)+(((sj0)*(x11832)*(x11834)))+(((r00)*(sj0)*(x11841)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11834)*(x11837)*(x11844)))+(((IkReal(-1.00000000000000))*(x11832)*(x11834)*(x11835)))+(((IkReal(-1.00000000000000))*(x11834)*(x11837)*(x11838)))+(((r01)*(x11849)))+(((IkReal(-1.00000000000000))*(x11831)*(x11847)))+(((IkReal(-1.00000000000000))*(r10)*(x11837)*(x11841)))+(((IkReal(-1.00000000000000))*(x11833)*(x11834)*(x11835)))+(((IkReal(-1.00000000000000))*(r00)*(x11835)*(x11841)))+(((r11)*(sj0)*(x11845)))+(((IkReal(-1.00000000000000))*(sj5)*(x11835)*(x11846)))+(((IkReal(-1.00000000000000))*(x11829)*(x11840)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11850=((r20)*(sj6)); +IkReal x11851=((cj4)*(cj5)); +IkReal x11852=((cj6)*(r21)); +if( IKabs(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11851)*(x11852)))+(((x11850)*(x11851)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst11)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11850)))+(((sj5)*(x11852))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11851)*(x11852)))+(((x11850)*(x11851)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))), ((gconst11)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11850)))+(((sj5)*(x11852))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11853=IKsin(j3); +IkReal x11854=IKcos(j3); +IkReal x11855=((sj0)*(sj5)); +IkReal x11856=((r00)*(sj6)); +IkReal x11857=((cj6)*(r01)); +IkReal x11858=((cj4)*(cj5)); +IkReal x11859=((IkReal(1.00000000000000))*(cj0)); +IkReal x11860=((cj5)*(r12)); +IkReal x11861=((IkReal(1.00000000000000))*(sj0)); +IkReal x11862=((cj6)*(r11)); +IkReal x11863=((cj5)*(r02)); +IkReal x11864=((IkReal(1.00000000000000))*(cj1)); +IkReal x11865=((cj6)*(sj4)); +IkReal x11866=((cj6)*(r21)); +IkReal x11867=((r20)*(sj6)); +IkReal x11868=((r10)*(sj6)); +IkReal x11869=((sj4)*(sj6)); +IkReal x11870=((cj4)*(r02)); +IkReal x11871=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x11872=((IkReal(1.00000000000000))*(x11853)); +IkReal x11873=((cj0)*(x11869)); +evalcond[0]=((((sj5)*(x11866)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11867)))+(((IkReal(-1.00000000000000))*(sj1)*(x11854)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x11869)))+(((cj4)*(r22)*(sj5)))+(((x11858)*(x11866)))+(((x11858)*(x11867)))+(((r20)*(x11865)))+(((IkReal(-1.00000000000000))*(sj1)*(x11872)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x11859)*(x11862)))+(((IkReal(-1.00000000000000))*(sj5)*(x11859)*(x11868)))+(((cj0)*(x11860)))+(((IkReal(-1.00000000000000))*(x11872)))+(((x11855)*(x11857)))+(((IkReal(-1.00000000000000))*(x11861)*(x11863)))+(((x11855)*(x11856)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x11857)*(x11859)))+(((IkReal(-1.00000000000000))*(x11854)*(x11864)))+(((IkReal(-1.00000000000000))*(x11855)*(x11862)))+(((IkReal(-1.00000000000000))*(sj5)*(x11856)*(x11859)))+(((IkReal(-1.00000000000000))*(x11855)*(x11868)))+(((sj0)*(x11860)))+(((cj0)*(x11863)))); +evalcond[4]=((((r00)*(sj0)*(x11865)))+(((IkReal(-1.00000000000000))*(x11858)*(x11859)*(x11868)))+(((sj0)*(x11857)*(x11858)))+(((IkReal(-1.00000000000000))*(x11858)*(x11859)*(x11862)))+(((r11)*(x11873)))+(((x11855)*(x11870)))+(((IkReal(-1.00000000000000))*(r01)*(x11861)*(x11869)))+(((IkReal(-1.00000000000000))*(r10)*(x11859)*(x11865)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x11859)))+(x11854)+(((sj0)*(x11856)*(x11858)))); +evalcond[5]=((((r01)*(x11873)))+(((IkReal(-1.00000000000000))*(x11858)*(x11861)*(x11862)))+(((IkReal(-1.00000000000000))*(x11855)*(x11871)))+(((IkReal(-1.00000000000000))*(x11856)*(x11858)*(x11859)))+(((IkReal(-1.00000000000000))*(x11857)*(x11858)*(x11859)))+(((r11)*(sj0)*(x11869)))+(((IkReal(-1.00000000000000))*(x11858)*(x11861)*(x11868)))+(((IkReal(-1.00000000000000))*(r00)*(x11859)*(x11865)))+(((IkReal(-1.00000000000000))*(r10)*(x11861)*(x11865)))+(((IkReal(-1.00000000000000))*(sj5)*(x11859)*(x11870)))+(((IkReal(-1.00000000000000))*(x11853)*(x11864)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x11874=((IkReal(1.00000000000000))*(cj0)); +IkReal x11875=((cj4)*(sj6)); +IkReal x11876=((sj0)*(sj4)); +IkReal x11877=((cj5)*(sj6)); +IkReal x11878=((sj4)*(sj5)); +IkReal x11879=((r12)*(sj5)); +IkReal x11880=((IkReal(0.374290000000000))*(cj5)); +IkReal x11881=((r02)*(sj0)); +IkReal x11882=((IkReal(1.00000000000000))*(sj0)); +IkReal x11883=((cj0)*(r10)); +IkReal x11884=((cj4)*(cj6)); +IkReal x11885=((r00)*(sj0)); +IkReal x11886=((cj6)*(r21)); +IkReal x11887=((IkReal(0.374290000000000))*(sj5)); +IkReal x11888=((cj0)*(r00)); +IkReal x11889=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11890=((cj0)*(r02)); +IkReal x11891=((cj5)*(sj4)); +IkReal x11892=((cj6)*(r01)); +IkReal x11893=((cj6)*(r11)); +IkReal x11894=((r01)*(sj0)); +IkReal x11895=((r10)*(sj0)); +IkReal x11896=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11897=((sj6)*(x11887)); +IkReal x11898=((cj0)*(cj6)*(x11887)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x11878)))+(((r21)*(x11875)))+(((x11886)*(x11891)))+(cj1)+(((IkReal(-1.00000000000000))*(r20)*(x11884)))+(((r20)*(sj4)*(x11877)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x11880)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.0100000000000000))*(r20)*(x11877)))+(((IkReal(-0.0100000000000000))*(cj5)*(x11886)))+(((r20)*(x11897)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x11889)))+(((x11886)*(x11887)))); +evalcond[3]=((((r02)*(sj5)*(x11876)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11874)*(x11877)))+(((IkReal(-1.00000000000000))*(r11)*(x11874)*(x11875)))+(((IkReal(-1.00000000000000))*(r00)*(x11882)*(x11884)))+(((x11883)*(x11884)))+(((IkReal(-1.00000000000000))*(r12)*(x11874)*(x11878)))+(((r00)*(x11876)*(x11877)))+(((IkReal(-1.00000000000000))*(x11874)*(x11891)*(x11893)))+(((x11875)*(x11894)))+(((cj5)*(x11876)*(x11892)))); +evalcond[4]=((((x11884)*(x11895)))+(((IkReal(-1.00000000000000))*(x11876)*(x11879)))+(((IkReal(-1.00000000000000))*(cj5)*(x11876)*(x11893)))+(((IkReal(-1.00000000000000))*(x11874)*(x11891)*(x11892)))+(((IkReal(-1.00000000000000))*(r01)*(x11874)*(x11875)))+(((x11884)*(x11888)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r10)*(x11876)*(x11877)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11874)*(x11877)))+(((IkReal(-1.00000000000000))*(r11)*(x11875)*(x11882)))+(((IkReal(-1.00000000000000))*(r02)*(x11874)*(x11878)))); +evalcond[5]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x11874)))+(((IkReal(-1.00000000000000))*(cj0)*(x11887)*(x11893)))+(((IkReal(-0.0100000000000000))*(x11877)*(x11885)))+(((IkReal(-1.00000000000000))*(x11880)*(x11881)))+(((cj0)*(r12)*(x11880)))+(((IkReal(0.0100000000000000))*(cj0)*(x11879)))+(((IkReal(-1.00000000000000))*(x11881)*(x11889)))+(((x11885)*(x11897)))+(((IkReal(0.0100000000000000))*(x11877)*(x11883)))+(((sj0)*(x11887)*(x11892)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11893)))+(((IkReal(-1.00000000000000))*(x11883)*(x11897)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11892)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x11887)*(x11892)))+(((x11889)*(x11890)))+(((IkReal(-1.00000000000000))*(sj0)*(x11887)*(x11893)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11893)))+(((IkReal(0.0100000000000000))*(sj0)*(x11879)))+(((r12)*(sj0)*(x11880)))+(((IkReal(-1.00000000000000))*(x11895)*(x11897)))+(((IkReal(0.0100000000000000))*(x11877)*(x11895)))+(((IkReal(-1.00000000000000))*(py)*(x11882)))+(((IkReal(-1.00000000000000))*(x11888)*(x11897)))+(((x11880)*(x11890)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11892)))+(((IkReal(0.0100000000000000))*(x11877)*(x11888)))+(((IkReal(-1.00000000000000))*(px)*(x11874)))+(((IkReal(0.364420000000000))*(cj1)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst12; +gconst12=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x11899=((IkReal(1.00000000000000))*(cj0)); +IkReal x11900=((cj4)*(sj6)); +IkReal x11901=((sj0)*(sj6)); +IkReal x11902=((cj5)*(sj4)); +IkReal x11903=((IkReal(0.374290000000000))*(sj5)); +IkReal x11904=((sj4)*(sj5)); +IkReal x11905=((cj0)*(cj6)); +IkReal x11906=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11907=((cj4)*(sj5)); +IkReal x11908=((cj5)*(sj0)); +IkReal x11909=((IkReal(0.374290000000000))*(r02)); +IkReal x11910=((r20)*(sj6)); +IkReal x11911=((cj6)*(r21)); +IkReal x11912=((IkReal(1.00000000000000))*(sj0)); +IkReal x11913=((cj0)*(sj6)); +IkReal x11914=((cj4)*(cj6)); +IkReal x11915=((IkReal(0.374290000000000))*(r12)); +IkReal x11916=((cj0)*(cj5)); +IkReal x11917=((cj6)*(sj5)); +IkReal x11918=((cj6)*(r01)); +IkReal x11919=((r00)*(sj6)); +IkReal x11920=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11921=((cj6)*(r11)); +IkReal x11922=((IkReal(1.00000000000000))*(r10)); +IkReal x11923=((r02)*(sj0)); +IkReal x11924=((cj6)*(sj4)); +IkReal x11925=((r12)*(x11912)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x11914)))+(((r21)*(x11900)))+(((x11902)*(x11911)))+(((x11902)*(x11910)))+(((r22)*(x11904)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(x11906)*(x11910)))+(((x11903)*(x11911)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x11903)*(x11910)))+(pz)+(((IkReal(-1.00000000000000))*(x11906)*(x11911)))+(((IkReal(-1.00000000000000))*(r22)*(x11920)))); +evalcond[3]=((((r12)*(x11908)))+(((IkReal(-1.00000000000000))*(r11)*(x11912)*(x11917)))+(((IkReal(-1.00000000000000))*(r01)*(x11899)*(x11917)))+(((IkReal(-1.00000000000000))*(sj5)*(x11901)*(x11922)))+(((IkReal(-1.00000000000000))*(sj5)*(x11899)*(x11919)))+(((r02)*(x11916)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11899)*(x11902)*(x11921)))+(((sj0)*(x11902)*(x11918)))+(((cj4)*(r10)*(x11905)))+(((IkReal(-1.00000000000000))*(r12)*(x11899)*(x11904)))+(((r01)*(sj0)*(x11900)))+(((x11904)*(x11923)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11899)*(x11902)))+(((r00)*(x11901)*(x11902)))+(((IkReal(-1.00000000000000))*(r00)*(x11912)*(x11914)))+(((IkReal(-1.00000000000000))*(r11)*(x11899)*(x11900)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x11904)*(x11925)))+(((cj4)*(r00)*(x11905)))+(((IkReal(-1.00000000000000))*(r01)*(x11899)*(x11900)))+(((IkReal(-1.00000000000000))*(x11899)*(x11902)*(x11918)))+(((IkReal(-1.00000000000000))*(r02)*(x11899)*(x11904)))+(((IkReal(-1.00000000000000))*(x11902)*(x11912)*(x11921)))+(((IkReal(-1.00000000000000))*(x11899)*(x11902)*(x11919)))+(((IkReal(-1.00000000000000))*(x11901)*(x11902)*(x11922)))+(((r10)*(sj0)*(x11914)))+(((IkReal(-1.00000000000000))*(r11)*(x11900)*(x11912)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((sj0)*(x11903)*(x11918)))+(((IkReal(-1.00000000000000))*(x11908)*(x11909)))+(((IkReal(-1.00000000000000))*(r10)*(x11903)*(x11913)))+(((IkReal(-1.00000000000000))*(py)*(x11899)))+(((IkReal(-1.00000000000000))*(x11920)*(x11923)))+(((IkReal(-1.00000000000000))*(r11)*(x11903)*(x11905)))+(((r11)*(x11905)*(x11906)))+(((IkReal(-1.00000000000000))*(r00)*(x11901)*(x11906)))+(((IkReal(-1.00000000000000))*(sj0)*(x11906)*(x11918)))+(((cj0)*(r12)*(x11920)))+(((px)*(sj0)))+(((r10)*(x11906)*(x11913)))+(((x11915)*(x11916)))+(((r00)*(x11901)*(x11903)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x11899)*(x11900)))+(((IkReal(-1.00000000000000))*(x11900)*(x11908)*(x11922)))+(((IkReal(-1.00000000000000))*(r00)*(x11899)*(x11924)))+(((r11)*(sj4)*(x11901)))+(((r01)*(sj4)*(x11913)))+(((IkReal(-1.00000000000000))*(r11)*(x11908)*(x11914)))+(((IkReal(-1.00000000000000))*(r02)*(x11899)*(x11907)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x11899)*(x11914)))+(((IkReal(-1.00000000000000))*(x11907)*(x11925)))+(((IkReal(-1.00000000000000))*(r10)*(x11912)*(x11924)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r12)*(sj0)*(x11920)))+(((IkReal(-1.00000000000000))*(px)*(x11899)))+(((IkReal(-1.00000000000000))*(r10)*(x11901)*(x11903)))+(((IkReal(-1.00000000000000))*(r00)*(x11903)*(x11913)))+(((cj0)*(r02)*(x11920)))+(((r00)*(x11906)*(x11913)))+(((r10)*(x11901)*(x11906)))+(((IkReal(-1.00000000000000))*(py)*(x11912)))+(((IkReal(-1.00000000000000))*(r01)*(x11903)*(x11905)))+(((x11909)*(x11916)))+(((r01)*(x11905)*(x11906)))+(((IkReal(-1.00000000000000))*(sj0)*(x11903)*(x11921)))+(((sj0)*(x11906)*(x11921)))+(((x11908)*(x11915)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11926=((r20)*(sj6)); +IkReal x11927=((cj4)*(cj5)); +IkReal x11928=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11927)*(x11928)))+(((x11926)*(x11927)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x11926)))+(((sj5)*(x11928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11927)*(x11928)))+(((x11926)*(x11927)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))+IKsqr(((((sj5)*(x11926)))+(((sj5)*(x11928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11927)*(x11928)))+(((x11926)*(x11927)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))), ((((sj5)*(x11926)))+(((sj5)*(x11928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11929=IKsin(j3); +IkReal x11930=((sj0)*(sj5)); +IkReal x11931=((r00)*(sj6)); +IkReal x11932=((cj6)*(r01)); +IkReal x11933=((cj5)*(sj0)); +IkReal x11934=((cj0)*(cj5)); +IkReal x11935=((cj6)*(sj4)); +IkReal x11936=((sj4)*(sj6)); +IkReal x11937=((cj0)*(r11)); +IkReal x11938=((cj4)*(cj6)); +IkReal x11939=((cj4)*(sj6)); +IkReal x11940=((IkReal(1.00000000000000))*(cj0)); +IkReal x11941=((cj4)*(sj5)); +IkReal x11942=((sj5)*(sj6)); +IkReal x11943=((cj6)*(sj5)); +IkReal x11944=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((r21)*(x11943)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x11942)))+(((IkReal(-1.00000000000000))*(x11944)))); +evalcond[1]=((((r22)*(x11941)))+(((r20)*(x11935)))+(((IkReal(-1.00000000000000))*(r21)*(x11936)))+(((IkReal(-1.00000000000000))*(x11929)))+(((cj5)*(r20)*(x11939)))+(((cj5)*(r21)*(x11938)))); +evalcond[2]=((((r12)*(x11934)))+(((x11930)*(x11932)))+(((IkReal(-1.00000000000000))*(x11937)*(x11943)))+(((x11930)*(x11931)))+(x11929)+(((IkReal(-1.00000000000000))*(r02)*(x11933)))+(((IkReal(-1.00000000000000))*(r10)*(x11940)*(x11942)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(sj0)*(x11936)))+(((cj4)*(x11931)*(x11933)))+(((x11936)*(x11937)))+(((cj4)*(x11932)*(x11933)))+(((cj4)*(r02)*(x11930)))+(((IkReal(-1.00000000000000))*(r11)*(x11934)*(x11938)))+(((r00)*(sj0)*(x11935)))+(((IkReal(-1.00000000000000))*(r10)*(x11934)*(x11939)))+(((IkReal(-1.00000000000000))*(x11944)))+(((IkReal(-1.00000000000000))*(r10)*(x11935)*(x11940)))+(((IkReal(-1.00000000000000))*(r12)*(x11940)*(x11941)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11945=((IkReal(1.00000000000000))*(cj0)); +IkReal x11946=((cj4)*(sj6)); +IkReal x11947=((sj0)*(sj6)); +IkReal x11948=((cj5)*(sj4)); +IkReal x11949=((IkReal(0.374290000000000))*(sj5)); +IkReal x11950=((sj4)*(sj5)); +IkReal x11951=((cj0)*(cj6)); +IkReal x11952=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11953=((cj4)*(sj5)); +IkReal x11954=((cj5)*(sj0)); +IkReal x11955=((IkReal(0.374290000000000))*(r02)); +IkReal x11956=((r20)*(sj6)); +IkReal x11957=((cj6)*(r21)); +IkReal x11958=((IkReal(1.00000000000000))*(sj0)); +IkReal x11959=((cj0)*(sj6)); +IkReal x11960=((cj4)*(cj6)); +IkReal x11961=((IkReal(0.374290000000000))*(r12)); +IkReal x11962=((cj0)*(cj5)); +IkReal x11963=((cj6)*(sj5)); +IkReal x11964=((cj6)*(r01)); +IkReal x11965=((r00)*(sj6)); +IkReal x11966=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11967=((cj6)*(r11)); +IkReal x11968=((IkReal(1.00000000000000))*(r10)); +IkReal x11969=((r02)*(sj0)); +IkReal x11970=((cj6)*(sj4)); +IkReal x11971=((r12)*(x11958)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x11960)))+(((r21)*(x11946)))+(((x11948)*(x11956)))+(((r22)*(x11950)))+(((x11948)*(x11957)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((x11949)*(x11956)))+(((IkReal(-1.00000000000000))*(r22)*(x11966)))+(((IkReal(-1.00000000000000))*(x11952)*(x11956)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x11952)*(x11957)))+(((x11949)*(x11957)))); +evalcond[3]=((((r02)*(x11962)))+(((IkReal(-1.00000000000000))*(sj5)*(x11945)*(x11965)))+(((IkReal(-1.00000000000000))*(sj5)*(x11947)*(x11968)))+(((r12)*(x11954)))+(((IkReal(-1.00000000000000))*(r01)*(x11945)*(x11963)))+(((IkReal(-1.00000000000000))*(r11)*(x11958)*(x11963)))); +evalcond[4]=((((sj0)*(x11948)*(x11964)))+(((r01)*(sj0)*(x11946)))+(((x11950)*(x11969)))+(((cj4)*(r10)*(x11951)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11945)*(x11948)))+(((r00)*(x11947)*(x11948)))+(((IkReal(-1.00000000000000))*(r11)*(x11945)*(x11946)))+(((IkReal(-1.00000000000000))*(x11945)*(x11948)*(x11967)))+(((IkReal(-1.00000000000000))*(r12)*(x11945)*(x11950)))+(((IkReal(-1.00000000000000))*(r00)*(x11958)*(x11960)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x11945)*(x11946)))+(((IkReal(-1.00000000000000))*(x11945)*(x11948)*(x11965)))+(((IkReal(-1.00000000000000))*(x11947)*(x11948)*(x11968)))+(((r10)*(sj0)*(x11960)))+(((IkReal(-1.00000000000000))*(r02)*(x11945)*(x11950)))+(((IkReal(-1.00000000000000))*(x11950)*(x11971)))+(((cj4)*(r00)*(x11951)))+(((IkReal(-1.00000000000000))*(x11948)*(x11958)*(x11967)))+(((IkReal(-1.00000000000000))*(x11945)*(x11948)*(x11964)))+(((IkReal(-1.00000000000000))*(r11)*(x11946)*(x11958)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x11945)))+(((IkReal(-1.00000000000000))*(r11)*(x11949)*(x11951)))+(((sj0)*(x11949)*(x11964)))+(((x11961)*(x11962)))+(((IkReal(-1.00000000000000))*(r00)*(x11947)*(x11952)))+(((r00)*(x11947)*(x11949)))+(((IkReal(-1.00000000000000))*(x11954)*(x11955)))+(((r10)*(x11952)*(x11959)))+(((IkReal(-1.00000000000000))*(r10)*(x11949)*(x11959)))+(((px)*(sj0)))+(((cj0)*(r12)*(x11966)))+(((r11)*(x11951)*(x11952)))+(((IkReal(-1.00000000000000))*(sj0)*(x11952)*(x11964)))+(((IkReal(-1.00000000000000))*(x11966)*(x11969)))); +evalcond[7]=((((r11)*(sj4)*(x11947)))+(((IkReal(-1.00000000000000))*(x11946)*(x11954)*(x11968)))+(((r01)*(sj4)*(x11959)))+(((IkReal(-1.00000000000000))*(r10)*(x11958)*(x11970)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x11945)*(x11946)))+(((IkReal(-1.00000000000000))*(r00)*(x11945)*(x11970)))+(((IkReal(-1.00000000000000))*(r11)*(x11954)*(x11960)))+(((IkReal(-1.00000000000000))*(r02)*(x11945)*(x11953)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x11945)*(x11960)))+(((IkReal(-1.00000000000000))*(x11953)*(x11971)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((x11955)*(x11962)))+(((r01)*(x11951)*(x11952)))+(((r00)*(x11952)*(x11959)))+(((cj0)*(r02)*(x11966)))+(((IkReal(-1.00000000000000))*(sj0)*(x11949)*(x11967)))+(((r10)*(x11947)*(x11952)))+(((IkReal(-1.00000000000000))*(r01)*(x11949)*(x11951)))+(((sj0)*(x11952)*(x11967)))+(((x11954)*(x11961)))+(((IkReal(-1.00000000000000))*(r10)*(x11947)*(x11949)))+(((IkReal(-1.00000000000000))*(r00)*(x11949)*(x11959)))+(((r12)*(sj0)*(x11966)))+(((IkReal(-1.00000000000000))*(px)*(x11945)))+(((IkReal(-1.00000000000000))*(py)*(x11958)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11972=((IkReal(1.00000000000000))*(sj5)); +IkReal x11973=((cj6)*(r21)); +IkReal x11974=((r20)*(sj6)); +IkReal x11975=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11972)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x11973)*(x11975)))+(((IkReal(-1.00000000000000))*(x11974)*(x11975)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x11972)*(x11973)))+(((IkReal(-1.00000000000000))*(x11972)*(x11974)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11972)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x11973)*(x11975)))+(((IkReal(-1.00000000000000))*(x11974)*(x11975)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x11972)*(x11973)))+(((IkReal(-1.00000000000000))*(x11972)*(x11974)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11972)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x11973)*(x11975)))+(((IkReal(-1.00000000000000))*(x11974)*(x11975)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x11972)*(x11973)))+(((IkReal(-1.00000000000000))*(x11972)*(x11974)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11976=IKsin(j3); +IkReal x11977=IKcos(j3); +IkReal x11978=((sj0)*(sj5)); +IkReal x11979=((r00)*(sj6)); +IkReal x11980=((cj6)*(r01)); +IkReal x11981=((cj0)*(cj5)); +IkReal x11982=((IkReal(1.00000000000000))*(cj5)); +IkReal x11983=((cj4)*(cj5)); +IkReal x11984=((cj6)*(sj4)); +IkReal x11985=((sj4)*(sj6)); +IkReal x11986=((cj0)*(r11)); +IkReal x11987=((IkReal(1.00000000000000))*(cj4)); +IkReal x11988=((cj6)*(r21)); +IkReal x11989=((r20)*(sj6)); +IkReal x11990=((cj0)*(sj5)); +IkReal x11991=((r10)*(sj6)); +evalcond[0]=((((sj5)*(x11988)))+(((sj5)*(x11989)))+(x11977)+(((IkReal(-1.00000000000000))*(r22)*(x11982)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x11985)))+(((r20)*(x11984)))+(((x11983)*(x11989)))+(x11976)+(((cj4)*(r22)*(sj5)))+(((x11983)*(x11988)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11986)))+(((r12)*(x11981)))+(((IkReal(-1.00000000000000))*(x11990)*(x11991)))+(((x11978)*(x11979)))+(x11976)+(((x11978)*(x11980)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11982)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(sj0)*(x11985)))+(((IkReal(-1.00000000000000))*(r12)*(x11987)*(x11990)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x11984)))+(((IkReal(-1.00000000000000))*(x11981)*(x11987)*(x11991)))+(((sj0)*(x11979)*(x11983)))+(((x11985)*(x11986)))+(((cj4)*(r02)*(x11978)))+(((IkReal(-1.00000000000000))*(x11977)))+(((sj0)*(x11980)*(x11983)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x11981)*(x11987)))+(((r00)*(sj0)*(x11984)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11992=((cj5)*(r02)); +IkReal x11993=((cj0)*(sj5)); +IkReal x11994=((r10)*(sj6)); +IkReal x11995=((IkReal(1.00000000000000))*(cj6)); +IkReal x11996=((sj0)*(sj5)); +IkReal x11997=((cj5)*(r12)); +IkReal x11998=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((sj0)*(x11992)))+(((x11993)*(x11994)))+(((IkReal(-1.00000000000000))*(cj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11995)*(x11996)))+(((IkReal(-1.00000000000000))*(x11996)*(x11998)))+(((cj6)*(r11)*(x11993))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x11993)*(x11998)))+(((IkReal(-1.00000000000000))*(r11)*(x11995)*(x11996)))+(((cj0)*(x11992)))+(((sj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11993)*(x11995)))+(((IkReal(-1.00000000000000))*(x11994)*(x11996))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x11992)))+(((x11993)*(x11994)))+(((IkReal(-1.00000000000000))*(cj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11995)*(x11996)))+(((IkReal(-1.00000000000000))*(x11996)*(x11998)))+(((cj6)*(r11)*(x11993)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x11993)*(x11998)))+(((IkReal(-1.00000000000000))*(r11)*(x11995)*(x11996)))+(((cj0)*(x11992)))+(((sj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11993)*(x11995)))+(((IkReal(-1.00000000000000))*(x11994)*(x11996)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x11992)))+(((x11993)*(x11994)))+(((IkReal(-1.00000000000000))*(cj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11995)*(x11996)))+(((IkReal(-1.00000000000000))*(x11996)*(x11998)))+(((cj6)*(r11)*(x11993)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x11993)*(x11998)))+(((IkReal(-1.00000000000000))*(r11)*(x11995)*(x11996)))+(((cj0)*(x11992)))+(((sj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11993)*(x11995)))+(((IkReal(-1.00000000000000))*(x11994)*(x11996))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11999=IKsin(j3); +IkReal x12000=IKcos(j3); +IkReal x12001=((sj0)*(sj5)); +IkReal x12002=((r00)*(sj6)); +IkReal x12003=((IkReal(1.00000000000000))*(cj4)); +IkReal x12004=((cj6)*(r01)); +IkReal x12005=((cj0)*(cj5)); +IkReal x12006=((cj5)*(sj0)); +IkReal x12007=((cj6)*(r11)); +IkReal x12008=((cj0)*(sj5)); +IkReal x12009=((IkReal(1.00000000000000))*(cj1)); +IkReal x12010=((cj6)*(sj4)); +IkReal x12011=((IkReal(1.00000000000000))*(sj1)); +IkReal x12012=((cj4)*(cj5)); +IkReal x12013=((cj6)*(r21)); +IkReal x12014=((r20)*(sj6)); +IkReal x12015=((r10)*(sj6)); +IkReal x12016=((IkReal(1.00000000000000))*(cj0)); +IkReal x12017=((cj0)*(sj4)*(sj6)); +IkReal x12018=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12014)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x12000)*(x12011)))+(((sj5)*(x12013)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12012)*(x12013)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x11999)*(x12011)))+(((r20)*(x12010)))+(((x12012)*(x12014)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12008)*(x12015)))+(((IkReal(-1.00000000000000))*(x12007)*(x12008)))+(((x12001)*(x12002)))+(((r12)*(x12005)))+(((IkReal(-1.00000000000000))*(r02)*(x12006)))+(x11999)+(((x12001)*(x12004)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12001)*(x12007)))+(((IkReal(-1.00000000000000))*(x12001)*(x12015)))+(((IkReal(-1.00000000000000))*(x12004)*(x12008)))+(((r02)*(x12005)))+(((r12)*(x12006)))+(((IkReal(-1.00000000000000))*(x12000)*(x12009)))+(((IkReal(-1.00000000000000))*(x12002)*(x12008)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x12010)*(x12016)))+(((IkReal(-1.00000000000000))*(x12003)*(x12005)*(x12015)))+(((IkReal(-1.00000000000000))*(r01)*(x12018)))+(((cj4)*(x12004)*(x12006)))+(((r11)*(x12017)))+(((cj4)*(x12002)*(x12006)))+(((IkReal(-1.00000000000000))*(x12003)*(x12005)*(x12007)))+(((IkReal(-1.00000000000000))*(x12000)))+(((IkReal(-1.00000000000000))*(r12)*(x12003)*(x12008)))+(((r00)*(sj0)*(x12010)))+(((cj4)*(r02)*(x12001)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12003)*(x12006)*(x12007)))+(((IkReal(-1.00000000000000))*(x11999)*(x12009)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12010)))+(((IkReal(-1.00000000000000))*(r12)*(x12001)*(x12003)))+(((IkReal(-1.00000000000000))*(x12002)*(x12003)*(x12005)))+(((IkReal(-1.00000000000000))*(x12003)*(x12006)*(x12015)))+(((r01)*(x12017)))+(((IkReal(-1.00000000000000))*(r00)*(x12010)*(x12016)))+(((r11)*(x12018)))+(((IkReal(-1.00000000000000))*(r02)*(x12003)*(x12008)))+(((IkReal(-1.00000000000000))*(x12003)*(x12004)*(x12005)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12019=((sj5)*(sj6)); +IkReal x12020=((IkReal(1.00000000000000))*(sj0)); +IkReal x12021=((cj6)*(sj5)); +IkReal x12022=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r10)*(x12019)))+(((IkReal(-1.00000000000000))*(r00)*(x12019)*(x12020)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12022)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x12021)))+(((IkReal(-1.00000000000000))*(r01)*(x12020)*(x12021))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x12022)))+(((r21)*(x12021)))+(((r20)*(x12019))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r10)*(x12019)))+(((IkReal(-1.00000000000000))*(r00)*(x12019)*(x12020)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12022)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x12021)))+(((IkReal(-1.00000000000000))*(r01)*(x12020)*(x12021)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x12022)))+(((r21)*(x12021)))+(((r20)*(x12019)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r10)*(x12019)))+(((IkReal(-1.00000000000000))*(r00)*(x12019)*(x12020)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12022)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x12021)))+(((IkReal(-1.00000000000000))*(r01)*(x12020)*(x12021)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x12022)))+(((r21)*(x12021)))+(((r20)*(x12019))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12023=IKsin(j3); +IkReal x12024=IKcos(j3); +IkReal x12025=((sj0)*(sj5)); +IkReal x12026=((r00)*(sj6)); +IkReal x12027=((IkReal(1.00000000000000))*(cj4)); +IkReal x12028=((cj6)*(r01)); +IkReal x12029=((cj0)*(cj5)); +IkReal x12030=((cj5)*(sj0)); +IkReal x12031=((cj6)*(r11)); +IkReal x12032=((cj0)*(sj5)); +IkReal x12033=((IkReal(1.00000000000000))*(cj1)); +IkReal x12034=((cj6)*(sj4)); +IkReal x12035=((IkReal(1.00000000000000))*(sj1)); +IkReal x12036=((cj4)*(cj5)); +IkReal x12037=((cj6)*(r21)); +IkReal x12038=((r20)*(sj6)); +IkReal x12039=((r10)*(sj6)); +IkReal x12040=((IkReal(1.00000000000000))*(cj0)); +IkReal x12041=((cj0)*(sj4)*(sj6)); +IkReal x12042=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12037)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12038)))+(((IkReal(-1.00000000000000))*(x12024)*(x12035)))); +evalcond[1]=((((x12036)*(x12038)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x12023)*(x12035)))+(((cj4)*(r22)*(sj5)))+(((x12036)*(x12037)))+(((r20)*(x12034)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12032)*(x12039)))+(((x12025)*(x12028)))+(((x12025)*(x12026)))+(x12023)+(((r12)*(x12029)))+(((IkReal(-1.00000000000000))*(r02)*(x12030)))+(((IkReal(-1.00000000000000))*(x12031)*(x12032)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12028)*(x12032)))+(((IkReal(-1.00000000000000))*(x12026)*(x12032)))+(((IkReal(-1.00000000000000))*(x12025)*(x12039)))+(((r02)*(x12029)))+(((IkReal(-1.00000000000000))*(x12024)*(x12033)))+(((IkReal(-1.00000000000000))*(x12025)*(x12031)))+(((r12)*(x12030)))); +evalcond[4]=((((cj4)*(x12028)*(x12030)))+(((IkReal(-1.00000000000000))*(r12)*(x12027)*(x12032)))+(((r11)*(x12041)))+(((IkReal(-1.00000000000000))*(r01)*(x12042)))+(((IkReal(-1.00000000000000))*(r10)*(x12034)*(x12040)))+(((r00)*(sj0)*(x12034)))+(((IkReal(-1.00000000000000))*(x12024)))+(((IkReal(-1.00000000000000))*(x12027)*(x12029)*(x12031)))+(((cj4)*(x12026)*(x12030)))+(((cj4)*(r02)*(x12025)))+(((IkReal(-1.00000000000000))*(x12027)*(x12029)*(x12039)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12027)*(x12028)*(x12029)))+(((IkReal(-1.00000000000000))*(x12023)*(x12033)))+(((IkReal(-1.00000000000000))*(x12026)*(x12027)*(x12029)))+(((IkReal(-1.00000000000000))*(x12027)*(x12030)*(x12031)))+(((IkReal(-1.00000000000000))*(r02)*(x12027)*(x12032)))+(((IkReal(-1.00000000000000))*(r00)*(x12034)*(x12040)))+(((r11)*(x12042)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12034)))+(((r01)*(x12041)))+(((IkReal(-1.00000000000000))*(x12027)*(x12030)*(x12039)))+(((IkReal(-1.00000000000000))*(r12)*(x12025)*(x12027)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12043=((r20)*(sj6)); +IkReal x12044=((cj4)*(cj5)); +IkReal x12045=((cj6)*(r21)); +if( IKabs(((gconst12)*(((((x12043)*(x12044)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12044)*(x12045)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst12)*(((((sj5)*(x12043)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12045))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst12)*(((((x12043)*(x12044)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12044)*(x12045)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))), ((gconst12)*(((((sj5)*(x12043)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12045))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12046=IKsin(j3); +IkReal x12047=IKcos(j3); +IkReal x12048=((sj0)*(sj5)); +IkReal x12049=((r00)*(sj6)); +IkReal x12050=((IkReal(1.00000000000000))*(cj4)); +IkReal x12051=((cj6)*(r01)); +IkReal x12052=((cj0)*(cj5)); +IkReal x12053=((cj5)*(sj0)); +IkReal x12054=((cj6)*(r11)); +IkReal x12055=((cj0)*(sj5)); +IkReal x12056=((IkReal(1.00000000000000))*(cj1)); +IkReal x12057=((cj6)*(sj4)); +IkReal x12058=((IkReal(1.00000000000000))*(sj1)); +IkReal x12059=((cj4)*(cj5)); +IkReal x12060=((cj6)*(r21)); +IkReal x12061=((r20)*(sj6)); +IkReal x12062=((r10)*(sj6)); +IkReal x12063=((IkReal(1.00000000000000))*(cj0)); +IkReal x12064=((cj0)*(sj4)*(sj6)); +IkReal x12065=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12047)*(x12058)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12061)))+(((sj5)*(x12060)))); +evalcond[1]=((((x12059)*(x12061)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x12046)*(x12058)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12057)))+(((x12059)*(x12060)))); +evalcond[2]=((((x12048)*(x12049)))+(x12046)+(((IkReal(-1.00000000000000))*(x12054)*(x12055)))+(((IkReal(-1.00000000000000))*(x12055)*(x12062)))+(((r12)*(x12052)))+(((IkReal(-1.00000000000000))*(r02)*(x12053)))+(((x12048)*(x12051)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12047)*(x12056)))+(((r12)*(x12053)))+(((IkReal(-1.00000000000000))*(x12049)*(x12055)))+(((IkReal(-1.00000000000000))*(x12051)*(x12055)))+(((r02)*(x12052)))+(((IkReal(-1.00000000000000))*(x12048)*(x12054)))+(((IkReal(-1.00000000000000))*(x12048)*(x12062)))); +evalcond[4]=((((r11)*(x12064)))+(((cj4)*(r02)*(x12048)))+(((IkReal(-1.00000000000000))*(x12050)*(x12052)*(x12062)))+(((cj4)*(x12049)*(x12053)))+(((IkReal(-1.00000000000000))*(x12050)*(x12052)*(x12054)))+(((IkReal(-1.00000000000000))*(x12047)))+(((IkReal(-1.00000000000000))*(r01)*(x12065)))+(((IkReal(-1.00000000000000))*(r12)*(x12050)*(x12055)))+(((IkReal(-1.00000000000000))*(r10)*(x12057)*(x12063)))+(((r00)*(sj0)*(x12057)))+(((cj4)*(x12051)*(x12053)))); +evalcond[5]=((((r11)*(x12065)))+(((r01)*(x12064)))+(((IkReal(-1.00000000000000))*(r02)*(x12050)*(x12055)))+(((IkReal(-1.00000000000000))*(x12050)*(x12053)*(x12062)))+(((IkReal(-1.00000000000000))*(x12050)*(x12053)*(x12054)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12057)))+(((IkReal(-1.00000000000000))*(r00)*(x12057)*(x12063)))+(((IkReal(-1.00000000000000))*(r12)*(x12048)*(x12050)))+(((IkReal(-1.00000000000000))*(x12049)*(x12050)*(x12052)))+(((IkReal(-1.00000000000000))*(x12046)*(x12056)))+(((IkReal(-1.00000000000000))*(x12050)*(x12051)*(x12052)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12066=((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30); +IkReal x12067=((sj5)*(sj6)); +IkReal x12068=((r00)*(sj0)); +IkReal x12069=((cj1)*(cj2)); +IkReal x12070=((cj0)*(r10)); +IkReal x12071=((cj6)*(sj5)); +IkReal x12072=((r01)*(sj0)); +IkReal x12073=((IkReal(1.00000000000000))*(cj0)); +IkReal x12074=((cj5)*(r12)); +IkReal x12075=((IkReal(1.00000000000000))*(cj5)); +IkReal x12076=((r02)*(sj0)); +if( IKabs(((x12066)*(((((IkReal(-1.00000000000000))*(x12067)*(x12070)))+(((IkReal(-1.00000000000000))*(r11)*(x12071)*(x12073)))+(((x12071)*(x12072)))+(((cj0)*(x12074)))+(((IkReal(-1.00000000000000))*(x12075)*(x12076)))+(((x12067)*(x12068))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((x12066)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(sj2)*(x12075)))+(((IkReal(-1.00000000000000))*(x12069)*(x12071)*(x12072)))+(((cj5)*(x12069)*(x12076)))+(((r21)*(sj2)*(x12071)))+(((x12067)*(x12069)*(x12070)))+(((IkReal(-1.00000000000000))*(x12067)*(x12068)*(x12069)))+(((r20)*(sj2)*(x12067)))+(((IkReal(-1.00000000000000))*(x12069)*(x12073)*(x12074)))+(((cj0)*(r11)*(x12069)*(x12071))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((x12066)*(((((IkReal(-1.00000000000000))*(x12067)*(x12070)))+(((IkReal(-1.00000000000000))*(r11)*(x12071)*(x12073)))+(((x12071)*(x12072)))+(((cj0)*(x12074)))+(((IkReal(-1.00000000000000))*(x12075)*(x12076)))+(((x12067)*(x12068)))))))+IKsqr(((x12066)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(sj2)*(x12075)))+(((IkReal(-1.00000000000000))*(x12069)*(x12071)*(x12072)))+(((cj5)*(x12069)*(x12076)))+(((r21)*(sj2)*(x12071)))+(((x12067)*(x12069)*(x12070)))+(((IkReal(-1.00000000000000))*(x12067)*(x12068)*(x12069)))+(((r20)*(sj2)*(x12067)))+(((IkReal(-1.00000000000000))*(x12069)*(x12073)*(x12074)))+(((cj0)*(r11)*(x12069)*(x12071)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((x12066)*(((((IkReal(-1.00000000000000))*(x12067)*(x12070)))+(((IkReal(-1.00000000000000))*(r11)*(x12071)*(x12073)))+(((x12071)*(x12072)))+(((cj0)*(x12074)))+(((IkReal(-1.00000000000000))*(x12075)*(x12076)))+(((x12067)*(x12068)))))), ((x12066)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(sj2)*(x12075)))+(((IkReal(-1.00000000000000))*(x12069)*(x12071)*(x12072)))+(((cj5)*(x12069)*(x12076)))+(((r21)*(sj2)*(x12071)))+(((x12067)*(x12069)*(x12070)))+(((IkReal(-1.00000000000000))*(x12067)*(x12068)*(x12069)))+(((r20)*(sj2)*(x12067)))+(((IkReal(-1.00000000000000))*(x12069)*(x12073)*(x12074)))+(((cj0)*(r11)*(x12069)*(x12071))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12077=IKcos(j3); +IkReal x12078=IKsin(j3); +IkReal x12079=((sj0)*(sj5)); +IkReal x12080=((r00)*(sj6)); +IkReal x12081=((IkReal(1.00000000000000))*(cj4)); +IkReal x12082=((cj6)*(r01)); +IkReal x12083=((cj0)*(cj5)); +IkReal x12084=((cj5)*(sj0)); +IkReal x12085=((cj6)*(r11)); +IkReal x12086=((cj6)*(sj4)); +IkReal x12087=((IkReal(1.00000000000000))*(cj1)); +IkReal x12088=((cj4)*(cj5)); +IkReal x12089=((cj6)*(r21)); +IkReal x12090=((r20)*(sj6)); +IkReal x12091=((r10)*(sj6)); +IkReal x12092=((cj0)*(sj5)); +IkReal x12093=((IkReal(1.00000000000000))*(cj0)); +IkReal x12094=((IkReal(1.00000000000000))*(x12092)); +IkReal x12095=((IkReal(1.00000000000000))*(x12078)); +IkReal x12096=((cj0)*(sj4)*(sj6)); +IkReal x12097=((cj2)*(x12078)); +IkReal x12098=((sj0)*(sj4)*(sj6)); +IkReal x12099=((IkReal(1.00000000000000))*(sj1)*(x12077)); +evalcond[0]=((((sj5)*(x12090)))+(((IkReal(-1.00000000000000))*(x12087)*(x12097)))+(((IkReal(-1.00000000000000))*(x12099)))+(((sj5)*(x12089)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12086)))+(((x12088)*(x12089)))+(((IkReal(-1.00000000000000))*(sj1)*(x12095)))+(((cj1)*(cj2)*(x12077)))+(((x12088)*(x12090)))); +evalcond[2]=((((r12)*(x12083)))+(((x12079)*(x12080)))+(((IkReal(-1.00000000000000))*(x12091)*(x12094)))+(((x12079)*(x12082)))+(((IkReal(-1.00000000000000))*(r02)*(x12084)))+(((IkReal(-1.00000000000000))*(sj2)*(x12095)))+(((IkReal(-1.00000000000000))*(x12085)*(x12094)))); +evalcond[3]=((((r12)*(x12084)))+(((IkReal(-1.00000000000000))*(x12079)*(x12085)))+(((IkReal(-1.00000000000000))*(x12077)*(x12087)))+(((IkReal(-1.00000000000000))*(x12082)*(x12094)))+(((r02)*(x12083)))+(((IkReal(-1.00000000000000))*(x12079)*(x12091)))+(((IkReal(-1.00000000000000))*(x12080)*(x12094)))+(((sj1)*(x12097)))); +evalcond[4]=((((sj2)*(x12077)))+(((cj4)*(r02)*(x12079)))+(((IkReal(-1.00000000000000))*(x12081)*(x12083)*(x12085)))+(((IkReal(-1.00000000000000))*(x12081)*(x12083)*(x12091)))+(((r00)*(sj0)*(x12086)))+(((IkReal(-1.00000000000000))*(r12)*(x12081)*(x12092)))+(((cj4)*(x12082)*(x12084)))+(((cj4)*(x12080)*(x12084)))+(((r11)*(x12096)))+(((IkReal(-1.00000000000000))*(r01)*(x12098)))+(((IkReal(-1.00000000000000))*(r10)*(x12086)*(x12093)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x12081)*(x12092)))+(((IkReal(-1.00000000000000))*(cj2)*(x12099)))+(((IkReal(-1.00000000000000))*(r00)*(x12086)*(x12093)))+(((IkReal(-1.00000000000000))*(x12081)*(x12082)*(x12083)))+(((IkReal(-1.00000000000000))*(x12078)*(x12087)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12086)))+(((IkReal(-1.00000000000000))*(x12081)*(x12084)*(x12085)))+(((r11)*(x12098)))+(((IkReal(-1.00000000000000))*(r12)*(x12079)*(x12081)))+(((IkReal(-1.00000000000000))*(x12081)*(x12084)*(x12091)))+(((IkReal(-1.00000000000000))*(x12080)*(x12081)*(x12083)))+(((r01)*(x12096)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12100=(cj1)*(cj1); +IkReal x12101=(sj1)*(sj1); +IkReal x12102=((r00)*(sj6)); +IkReal x12103=((cj6)*(r01)); +IkReal x12104=((IkReal(1.00000000000000))*(cj1)); +IkReal x12105=((cj5)*(r22)); +IkReal x12106=((sj5)*(sj6)); +IkReal x12107=((r10)*(sj0)); +IkReal x12108=((cj1)*(cj5)); +IkReal x12109=((cj0)*(r02)); +IkReal x12110=((r12)*(sj0)); +IkReal x12111=((IkReal(1.00000000000000))*(sj1)); +IkReal x12112=((cj6)*(sj5)); +IkReal x12113=((cj0)*(sj5)); +IkReal x12114=((r11)*(sj0)); +IkReal x12115=((sj1)*(x12113)); +if( IKabs(((((IKabs(((((cj2)*(x12101)))+(((cj2)*(x12100))))) != 0)?((IkReal)1/(((((cj2)*(x12101)))+(((cj2)*(x12100)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x12109)*(x12111)))+(((cj1)*(r20)*(x12106)))+(((sj1)*(x12106)*(x12107)))+(((sj1)*(x12112)*(x12114)))+(((IkReal(-1.00000000000000))*(x12104)*(x12105)))+(((x12102)*(x12115)))+(((x12103)*(x12115)))+(((IkReal(-1.00000000000000))*(cj5)*(x12110)*(x12111)))+(((cj1)*(r21)*(x12112))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x12101)+(x12100))) != 0)?((IkReal)1/(((x12101)+(x12100)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x12112)))+(((IkReal(-1.00000000000000))*(x12102)*(x12104)*(x12113)))+(((IkReal(-1.00000000000000))*(x12103)*(x12104)*(x12113)))+(((x12108)*(x12109)))+(((IkReal(-1.00000000000000))*(x12105)*(x12111)))+(((IkReal(-1.00000000000000))*(x12104)*(x12112)*(x12114)))+(((x12108)*(x12110)))+(((r20)*(sj1)*(x12106)))+(((IkReal(-1.00000000000000))*(x12104)*(x12106)*(x12107))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x12101)))+(((cj2)*(x12100))))) != 0)?((IkReal)1/(((((cj2)*(x12101)))+(((cj2)*(x12100)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x12109)*(x12111)))+(((cj1)*(r20)*(x12106)))+(((sj1)*(x12106)*(x12107)))+(((sj1)*(x12112)*(x12114)))+(((IkReal(-1.00000000000000))*(x12104)*(x12105)))+(((x12102)*(x12115)))+(((x12103)*(x12115)))+(((IkReal(-1.00000000000000))*(cj5)*(x12110)*(x12111)))+(((cj1)*(r21)*(x12112)))))))+IKsqr(((((IKabs(((x12101)+(x12100))) != 0)?((IkReal)1/(((x12101)+(x12100)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x12112)))+(((IkReal(-1.00000000000000))*(x12102)*(x12104)*(x12113)))+(((IkReal(-1.00000000000000))*(x12103)*(x12104)*(x12113)))+(((x12108)*(x12109)))+(((IkReal(-1.00000000000000))*(x12105)*(x12111)))+(((IkReal(-1.00000000000000))*(x12104)*(x12112)*(x12114)))+(((x12108)*(x12110)))+(((r20)*(sj1)*(x12106)))+(((IkReal(-1.00000000000000))*(x12104)*(x12106)*(x12107)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x12101)))+(((cj2)*(x12100))))) != 0)?((IkReal)1/(((((cj2)*(x12101)))+(((cj2)*(x12100)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x12109)*(x12111)))+(((cj1)*(r20)*(x12106)))+(((sj1)*(x12106)*(x12107)))+(((sj1)*(x12112)*(x12114)))+(((IkReal(-1.00000000000000))*(x12104)*(x12105)))+(((x12102)*(x12115)))+(((x12103)*(x12115)))+(((IkReal(-1.00000000000000))*(cj5)*(x12110)*(x12111)))+(((cj1)*(r21)*(x12112)))))), ((((IKabs(((x12101)+(x12100))) != 0)?((IkReal)1/(((x12101)+(x12100)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x12112)))+(((IkReal(-1.00000000000000))*(x12102)*(x12104)*(x12113)))+(((IkReal(-1.00000000000000))*(x12103)*(x12104)*(x12113)))+(((x12108)*(x12109)))+(((IkReal(-1.00000000000000))*(x12105)*(x12111)))+(((IkReal(-1.00000000000000))*(x12104)*(x12112)*(x12114)))+(((x12108)*(x12110)))+(((r20)*(sj1)*(x12106)))+(((IkReal(-1.00000000000000))*(x12104)*(x12106)*(x12107))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12116=IKcos(j3); +IkReal x12117=IKsin(j3); +IkReal x12118=((sj0)*(sj5)); +IkReal x12119=((r00)*(sj6)); +IkReal x12120=((IkReal(1.00000000000000))*(cj4)); +IkReal x12121=((cj6)*(r01)); +IkReal x12122=((cj0)*(cj5)); +IkReal x12123=((cj5)*(sj0)); +IkReal x12124=((cj6)*(r11)); +IkReal x12125=((cj6)*(sj4)); +IkReal x12126=((IkReal(1.00000000000000))*(cj1)); +IkReal x12127=((cj4)*(cj5)); +IkReal x12128=((cj6)*(r21)); +IkReal x12129=((r20)*(sj6)); +IkReal x12130=((r10)*(sj6)); +IkReal x12131=((cj0)*(sj5)); +IkReal x12132=((IkReal(1.00000000000000))*(cj0)); +IkReal x12133=((IkReal(1.00000000000000))*(x12131)); +IkReal x12134=((IkReal(1.00000000000000))*(x12117)); +IkReal x12135=((cj0)*(sj4)*(sj6)); +IkReal x12136=((cj2)*(x12117)); +IkReal x12137=((sj0)*(sj4)*(sj6)); +IkReal x12138=((IkReal(1.00000000000000))*(sj1)*(x12116)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12126)*(x12136)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12128)))+(((IkReal(-1.00000000000000))*(x12138)))+(((sj5)*(x12129)))); +evalcond[1]=((((cj1)*(cj2)*(x12116)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12127)*(x12129)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x12134)))+(((r20)*(x12125)))+(((x12127)*(x12128)))); +evalcond[2]=((((x12118)*(x12121)))+(((IkReal(-1.00000000000000))*(x12124)*(x12133)))+(((x12118)*(x12119)))+(((IkReal(-1.00000000000000))*(x12130)*(x12133)))+(((IkReal(-1.00000000000000))*(sj2)*(x12134)))+(((r12)*(x12122)))+(((IkReal(-1.00000000000000))*(r02)*(x12123)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12119)*(x12133)))+(((r02)*(x12122)))+(((r12)*(x12123)))+(((IkReal(-1.00000000000000))*(x12118)*(x12124)))+(((IkReal(-1.00000000000000))*(x12116)*(x12126)))+(((sj1)*(x12136)))+(((IkReal(-1.00000000000000))*(x12118)*(x12130)))+(((IkReal(-1.00000000000000))*(x12121)*(x12133)))); +evalcond[4]=((((cj4)*(x12119)*(x12123)))+(((cj4)*(x12121)*(x12123)))+(((sj2)*(x12116)))+(((IkReal(-1.00000000000000))*(r01)*(x12137)))+(((IkReal(-1.00000000000000))*(x12120)*(x12122)*(x12124)))+(((cj4)*(r02)*(x12118)))+(((r00)*(sj0)*(x12125)))+(((IkReal(-1.00000000000000))*(r10)*(x12125)*(x12132)))+(((r11)*(x12135)))+(((IkReal(-1.00000000000000))*(r12)*(x12120)*(x12131)))+(((IkReal(-1.00000000000000))*(x12120)*(x12122)*(x12130)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12117)*(x12126)))+(((IkReal(-1.00000000000000))*(r02)*(x12120)*(x12131)))+(((r11)*(x12137)))+(((IkReal(-1.00000000000000))*(x12120)*(x12123)*(x12124)))+(((IkReal(-1.00000000000000))*(r00)*(x12125)*(x12132)))+(((IkReal(-1.00000000000000))*(x12119)*(x12120)*(x12122)))+(((IkReal(-1.00000000000000))*(r12)*(x12118)*(x12120)))+(((IkReal(-1.00000000000000))*(x12120)*(x12121)*(x12122)))+(((IkReal(-1.00000000000000))*(cj2)*(x12138)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12125)))+(((r01)*(x12135)))+(((IkReal(-1.00000000000000))*(x12120)*(x12123)*(x12130)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12139=((sj1)*(sj6)); +IkReal x12140=((r20)*(sj5)); +IkReal x12141=((IkReal(1.00000000000000))*(r21)); +IkReal x12142=((cj5)*(cj6)); +IkReal x12143=((r22)*(sj5)); +IkReal x12144=((cj4)*(sj1)); +IkReal x12145=((cj1)*(cj2)); +IkReal x12146=((cj5)*(r20)); +IkReal x12147=((cj4)*(x12145)); +IkReal x12148=((IkReal(1.00000000000000))*(cj5)*(r22)); +IkReal x12149=((cj6)*(r20)*(sj4)); +IkReal x12150=((cj6)*(r21)*(sj5)); +if( IKabs(((gconst4)*(((((sj6)*(x12140)*(x12145)))+(((x12143)*(x12144)))+(((x12145)*(x12150)))+(((sj1)*(x12149)))+(((cj4)*(x12139)*(x12146)))+(((r21)*(x12142)*(x12144)))+(((IkReal(-1.00000000000000))*(sj4)*(x12139)*(x12141)))+(((IkReal(-1.00000000000000))*(x12145)*(x12148))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst4)*(((((IkReal(-1.00000000000000))*(sj6)*(x12146)*(x12147)))+(((sj1)*(x12150)))+(((x12139)*(x12140)))+(((IkReal(-1.00000000000000))*(x12141)*(x12142)*(x12147)))+(((IkReal(-1.00000000000000))*(sj1)*(x12148)))+(((IkReal(-1.00000000000000))*(x12143)*(x12147)))+(((IkReal(-1.00000000000000))*(x12145)*(x12149)))+(((r21)*(sj4)*(sj6)*(x12145))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst4)*(((((sj6)*(x12140)*(x12145)))+(((x12143)*(x12144)))+(((x12145)*(x12150)))+(((sj1)*(x12149)))+(((cj4)*(x12139)*(x12146)))+(((r21)*(x12142)*(x12144)))+(((IkReal(-1.00000000000000))*(sj4)*(x12139)*(x12141)))+(((IkReal(-1.00000000000000))*(x12145)*(x12148)))))), ((gconst4)*(((((IkReal(-1.00000000000000))*(sj6)*(x12146)*(x12147)))+(((sj1)*(x12150)))+(((x12139)*(x12140)))+(((IkReal(-1.00000000000000))*(x12141)*(x12142)*(x12147)))+(((IkReal(-1.00000000000000))*(sj1)*(x12148)))+(((IkReal(-1.00000000000000))*(x12143)*(x12147)))+(((IkReal(-1.00000000000000))*(x12145)*(x12149)))+(((r21)*(sj4)*(sj6)*(x12145))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12151=IKcos(j3); +IkReal x12152=IKsin(j3); +IkReal x12153=((sj0)*(sj5)); +IkReal x12154=((r00)*(sj6)); +IkReal x12155=((IkReal(1.00000000000000))*(cj4)); +IkReal x12156=((cj6)*(r01)); +IkReal x12157=((cj0)*(cj5)); +IkReal x12158=((cj5)*(sj0)); +IkReal x12159=((cj6)*(r11)); +IkReal x12160=((cj6)*(sj4)); +IkReal x12161=((IkReal(1.00000000000000))*(cj1)); +IkReal x12162=((cj4)*(cj5)); +IkReal x12163=((cj6)*(r21)); +IkReal x12164=((r20)*(sj6)); +IkReal x12165=((r10)*(sj6)); +IkReal x12166=((cj0)*(sj5)); +IkReal x12167=((IkReal(1.00000000000000))*(cj0)); +IkReal x12168=((IkReal(1.00000000000000))*(x12166)); +IkReal x12169=((IkReal(1.00000000000000))*(x12152)); +IkReal x12170=((cj0)*(sj4)*(sj6)); +IkReal x12171=((cj2)*(x12152)); +IkReal x12172=((sj0)*(sj4)*(sj6)); +IkReal x12173=((IkReal(1.00000000000000))*(sj1)*(x12151)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12161)*(x12171)))+(((sj5)*(x12163)))+(((IkReal(-1.00000000000000))*(x12173)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12164)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12162)*(x12163)))+(((IkReal(-1.00000000000000))*(sj1)*(x12169)))+(((cj4)*(r22)*(sj5)))+(((x12162)*(x12164)))+(((r20)*(x12160)))+(((cj1)*(cj2)*(x12151)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12165)*(x12168)))+(((x12153)*(x12154)))+(((IkReal(-1.00000000000000))*(sj2)*(x12169)))+(((IkReal(-1.00000000000000))*(r02)*(x12158)))+(((x12153)*(x12156)))+(((IkReal(-1.00000000000000))*(x12159)*(x12168)))+(((r12)*(x12157)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12153)*(x12165)))+(((IkReal(-1.00000000000000))*(x12151)*(x12161)))+(((r12)*(x12158)))+(((IkReal(-1.00000000000000))*(x12156)*(x12168)))+(((IkReal(-1.00000000000000))*(x12153)*(x12159)))+(((sj1)*(x12171)))+(((IkReal(-1.00000000000000))*(x12154)*(x12168)))+(((r02)*(x12157)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x12172)))+(((sj2)*(x12151)))+(((IkReal(-1.00000000000000))*(r12)*(x12155)*(x12166)))+(((cj4)*(r02)*(x12153)))+(((r00)*(sj0)*(x12160)))+(((IkReal(-1.00000000000000))*(r10)*(x12160)*(x12167)))+(((r11)*(x12170)))+(((cj4)*(x12154)*(x12158)))+(((IkReal(-1.00000000000000))*(x12155)*(x12157)*(x12165)))+(((cj4)*(x12156)*(x12158)))+(((IkReal(-1.00000000000000))*(x12155)*(x12157)*(x12159)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12154)*(x12155)*(x12157)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12160)))+(((IkReal(-1.00000000000000))*(x12155)*(x12158)*(x12165)))+(((IkReal(-1.00000000000000))*(r12)*(x12153)*(x12155)))+(((IkReal(-1.00000000000000))*(r00)*(x12160)*(x12167)))+(((r11)*(x12172)))+(((IkReal(-1.00000000000000))*(x12155)*(x12156)*(x12157)))+(((IkReal(-1.00000000000000))*(x12152)*(x12161)))+(((IkReal(-1.00000000000000))*(r02)*(x12155)*(x12166)))+(((IkReal(-1.00000000000000))*(cj2)*(x12173)))+(((r01)*(x12170)))+(((IkReal(-1.00000000000000))*(x12155)*(x12158)*(x12159)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x12174=((cj5)*(sj0)); +IkReal x12175=((cj2)*(sj6)); +IkReal x12176=((IkReal(1.00000000000000))*(cj0)); +IkReal x12177=((cj2)*(cj6)); +IkReal x12178=((cj1)*(cj6)*(sj2)); +IkReal x12179=((r10)*(x12176)); +IkReal x12180=((cj1)*(sj2)*(sj6)); +IkReal x12181=((cj1)*(sj2)*(sj5)); +if( IKabs(((gconst0)*(((((IkReal(-1.00000000000000))*(r21)*(x12175)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x12180)))+(((IkReal(-1.00000000000000))*(x12178)*(x12179)))+(((cj0)*(r11)*(x12180)))+(((r00)*(sj0)*(x12178)))+(((r20)*(x12177))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst0)*(((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12176)*(x12178)))+(((cj2)*(r22)*(sj5)))+(((r01)*(x12174)*(x12178)))+(((IkReal(-1.00000000000000))*(cj5)*(x12179)*(x12180)))+(((IkReal(-1.00000000000000))*(r12)*(x12176)*(x12181)))+(((r02)*(sj0)*(x12181)))+(((cj5)*(r20)*(x12175)))+(((cj5)*(r21)*(x12177)))+(((r00)*(x12174)*(x12180))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst0)*(((((IkReal(-1.00000000000000))*(r21)*(x12175)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x12180)))+(((IkReal(-1.00000000000000))*(x12178)*(x12179)))+(((cj0)*(r11)*(x12180)))+(((r00)*(sj0)*(x12178)))+(((r20)*(x12177)))))), ((gconst0)*(((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12176)*(x12178)))+(((cj2)*(r22)*(sj5)))+(((r01)*(x12174)*(x12178)))+(((IkReal(-1.00000000000000))*(cj5)*(x12179)*(x12180)))+(((IkReal(-1.00000000000000))*(r12)*(x12176)*(x12181)))+(((r02)*(sj0)*(x12181)))+(((cj5)*(r20)*(x12175)))+(((cj5)*(r21)*(x12177)))+(((r00)*(x12174)*(x12180))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x12182=IKsin(j4); +IkReal x12183=IKcos(j4); +IkReal x12184=((r00)*(sj6)); +IkReal x12185=((cj6)*(r01)); +IkReal x12186=((IkReal(1.00000000000000))*(cj0)); +IkReal x12187=((IkReal(1.00000000000000))*(sj0)); +IkReal x12188=((r10)*(sj6)); +IkReal x12189=((sj5)*(x12182)); +IkReal x12190=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x12191=((cj5)*(x12182)); +IkReal x12192=((cj6)*(x12183)); +IkReal x12193=((sj0)*(x12191)); +IkReal x12194=((r01)*(sj6)*(x12183)); +IkReal x12195=((r11)*(sj6)*(x12183)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r20)*(x12192)))+(((IkReal(-1.00000000000000))*(cj1)*(sj2)))+(((r22)*(x12189)))+(((r20)*(sj6)*(x12191)))+(((r21)*(sj6)*(x12183)))+(((cj6)*(r21)*(x12191)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r12)*(x12186)*(x12189)))+(((x12184)*(x12193)))+(((IkReal(-1.00000000000000))*(x12186)*(x12188)*(x12191)))+(((x12185)*(x12193)))+(((sj0)*(x12194)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12186)*(x12191)))+(cj2)+(((IkReal(-1.00000000000000))*(x12186)*(x12195)))+(((IkReal(-1.00000000000000))*(r00)*(x12187)*(x12192)))+(((r02)*(sj0)*(x12189)))+(((cj0)*(r10)*(x12192)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x12187)*(x12189)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12187)*(x12191)))+(((IkReal(-1.00000000000000))*(x12187)*(x12195)))+(((r10)*(sj0)*(x12192)))+(((IkReal(-1.00000000000000))*(x12186)*(x12194)))+(((IkReal(-1.00000000000000))*(r02)*(x12186)*(x12189)))+(((sj1)*(sj2)))+(((cj0)*(r00)*(x12192)))+(((IkReal(-1.00000000000000))*(x12187)*(x12188)*(x12191)))+(((IkReal(-1.00000000000000))*(x12185)*(x12186)*(x12191)))+(((IkReal(-1.00000000000000))*(x12184)*(x12186)*(x12191)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst4; +gconst4=IKsign((((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2)))))); +dummyeval[0]=(((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2))))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x12196=(cj1)*(cj1); +IkReal x12197=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x12196)))+(((cj2)*(x12197)))); +dummyeval[1]=((x12196)+(x12197)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +dummyeval[0]=sj2; +dummyeval[1]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x12198=((cj5)*(sj4)); +IkReal x12199=((IkReal(1.00000000000000))*(sj6)); +IkReal x12200=((r10)*(sj0)); +IkReal x12201=((sj4)*(sj5)); +IkReal x12202=((cj4)*(cj5)); +IkReal x12203=((IkReal(1.00000000000000))*(r02)); +IkReal x12204=((IkReal(0.374290000000000))*(cj0)); +IkReal x12205=((cj5)*(r12)); +IkReal x12206=((cj6)*(sj5)); +IkReal x12207=((cj0)*(r11)); +IkReal x12208=((cj5)*(sj0)); +IkReal x12209=((r20)*(sj6)); +IkReal x12210=((IkReal(1.00000000000000))*(sj0)); +IkReal x12211=((IkReal(1.00000000000000))*(cj6)); +IkReal x12212=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12213=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12214=((sj5)*(sj6)); +IkReal x12215=((cj0)*(r10)); +IkReal x12216=((cj4)*(cj6)); +IkReal x12217=((cj0)*(r01)); +IkReal x12218=((cj0)*(r00)); +IkReal x12219=((cj6)*(r21)); +IkReal x12220=((IkReal(0.374290000000000))*(sj0)); +IkReal x12221=((IkReal(0.374290000000000))*(sj5)); +IkReal x12222=((cj6)*(r11)); +IkReal x12223=((sj0)*(sj4)); +IkReal x12224=((cj4)*(sj5)); +IkReal x12225=((cj4)*(sj6)); +IkReal x12226=((IkReal(1.00000000000000))*(cj0)); +IkReal x12227=((r02)*(sj0)); +IkReal x12228=((r00)*(sj0)*(sj6)); +IkReal x12229=((cj6)*(r01)*(sj0)); +IkReal x12230=((r00)*(x12216)); +IkReal x12231=((r12)*(x12226)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x12225)))+(((x12198)*(x12219)))+(((r22)*(x12201)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12211)))+(((x12198)*(x12209)))); +evalcond[2]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x12212)*(x12219)))+(((IkReal(-1.00000000000000))*(r22)*(x12213)))+(((IkReal(0.374290000000000))*(r21)*(x12206)))+(pz)+(((x12209)*(x12221)))+(((IkReal(0.0690000000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(x12209)*(x12212)))); +evalcond[3]=((((cj0)*(x12205)))+(((r01)*(sj0)*(x12206)))+(((IkReal(-1.00000000000000))*(sj5)*(x12199)*(x12215)))+(((IkReal(-1.00000000000000))*(x12206)*(x12207)))+(((r00)*(sj0)*(x12214)))+(((IkReal(-1.00000000000000))*(x12203)*(x12208)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(cj4)*(x12199)*(x12207)))+(((IkReal(-1.00000000000000))*(x12201)*(x12231)))+(((x12198)*(x12228)))+(((IkReal(-1.00000000000000))*(x12198)*(x12207)*(x12211)))+(((x12198)*(x12229)))+(((r01)*(sj0)*(x12225)))+(((x12215)*(x12216)))+(((IkReal(-1.00000000000000))*(x12198)*(x12199)*(x12215)))+(((x12201)*(x12227)))+(((IkReal(-1.00000000000000))*(x12210)*(x12230)))); +evalcond[5]=((((cj6)*(r00)*(x12223)))+(((x12202)*(x12228)))+(((IkReal(-1.00000000000000))*(x12199)*(x12202)*(x12215)))+(((IkReal(-1.00000000000000))*(r01)*(x12199)*(x12223)))+(((IkReal(-1.00000000000000))*(sj4)*(x12211)*(x12215)))+(((IkReal(-1.00000000000000))*(x12202)*(x12207)*(x12211)))+(((sj4)*(sj6)*(x12207)))+(((IkReal(-1.00000000000000))*(x12224)*(x12231)))+(((x12202)*(x12229)))+(((x12224)*(x12227)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x12198)*(x12199)*(x12218)))+(((x12216)*(x12218)))+(((IkReal(-1.00000000000000))*(x12198)*(x12210)*(x12222)))+(((IkReal(-1.00000000000000))*(cj4)*(x12199)*(x12217)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x12199)))+(((x12200)*(x12216)))+(((IkReal(-1.00000000000000))*(x12198)*(x12199)*(x12200)))+(((IkReal(-1.00000000000000))*(x12198)*(x12211)*(x12217)))+(((IkReal(-1.00000000000000))*(cj0)*(x12201)*(x12203)))+(((IkReal(-1.00000000000000))*(r12)*(x12201)*(x12210)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x12213)*(x12227)))+(((sj6)*(x12212)*(x12215)))+(((r00)*(x12214)*(x12220)))+(((IkReal(-1.00000000000000))*(r11)*(x12204)*(x12206)))+(((IkReal(-0.374290000000000))*(r02)*(x12208)))+(((x12204)*(x12205)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12208)))+(((cj0)*(r12)*(x12213)))+(((IkReal(-1.00000000000000))*(r10)*(x12204)*(x12214)))+(((cj6)*(x12207)*(x12212)))+(((IkReal(-1.00000000000000))*(py)*(x12226)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x12208)))+(((r01)*(x12206)*(x12220)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj5)*(r02)*(x12204)))+(((cj0)*(r02)*(x12213)))+(((IkReal(-0.0690000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r01)*(x12204)*(x12206)))+(((sj6)*(x12212)*(x12218)))+(((cj6)*(x12212)*(x12217)))+(((IkReal(-1.00000000000000))*(r00)*(x12204)*(x12214)))+(((IkReal(0.0100000000000000))*(x12208)*(x12222)))+(((x12205)*(x12220)))+(((IkReal(-1.00000000000000))*(px)*(x12226)))+(((r12)*(sj0)*(x12213)))+(((sj6)*(x12200)*(x12212)))+(((IkReal(-0.374290000000000))*(x12200)*(x12214)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(r11)*(x12206)*(x12220)))+(((IkReal(-1.00000000000000))*(py)*(x12210)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst5; +gconst5=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst6; +gconst6=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12232=((sj5)*(sj6)); +IkReal x12233=((IkReal(1.00000000000000))*(sj0)); +IkReal x12234=((cj5)*(r12)); +IkReal x12235=((cj0)*(r00)); +IkReal x12236=((cj0)*(cj1)); +IkReal x12237=((cj6)*(sj5)); +IkReal x12238=((cj5)*(r02)); +IkReal x12239=((IkReal(1.00000000000000))*(cj1)); +IkReal x12240=((sj0)*(sj1)); +IkReal x12241=((cj0)*(sj1)); +IkReal x12242=((cj5)*(r22)); +if( IKabs(((gconst6)*(((((r01)*(x12237)*(x12241)))+(((cj1)*(r20)*(x12232)))+(((r11)*(x12237)*(x12240)))+(((r10)*(x12232)*(x12240)))+(((IkReal(-1.00000000000000))*(x12239)*(x12242)))+(((IkReal(-1.00000000000000))*(x12238)*(x12241)))+(((IkReal(-1.00000000000000))*(sj1)*(x12233)*(x12234)))+(((sj1)*(x12232)*(x12235)))+(((cj1)*(r21)*(x12237))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst6)*(((((IkReal(-1.00000000000000))*(cj1)*(r10)*(x12232)*(x12233)))+(((IkReal(-1.00000000000000))*(x12232)*(x12235)*(x12239)))+(((x12236)*(x12238)))+(((IkReal(-1.00000000000000))*(r01)*(x12236)*(x12237)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x12233)*(x12237)))+(((r21)*(sj1)*(x12237)))+(((IkReal(-1.00000000000000))*(sj1)*(x12242)))+(((cj1)*(sj0)*(x12234)))+(((r20)*(sj1)*(x12232))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst6)*(((((r01)*(x12237)*(x12241)))+(((cj1)*(r20)*(x12232)))+(((r11)*(x12237)*(x12240)))+(((r10)*(x12232)*(x12240)))+(((IkReal(-1.00000000000000))*(x12239)*(x12242)))+(((IkReal(-1.00000000000000))*(x12238)*(x12241)))+(((IkReal(-1.00000000000000))*(sj1)*(x12233)*(x12234)))+(((sj1)*(x12232)*(x12235)))+(((cj1)*(r21)*(x12237)))))), ((gconst6)*(((((IkReal(-1.00000000000000))*(cj1)*(r10)*(x12232)*(x12233)))+(((IkReal(-1.00000000000000))*(x12232)*(x12235)*(x12239)))+(((x12236)*(x12238)))+(((IkReal(-1.00000000000000))*(r01)*(x12236)*(x12237)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x12233)*(x12237)))+(((r21)*(sj1)*(x12237)))+(((IkReal(-1.00000000000000))*(sj1)*(x12242)))+(((cj1)*(sj0)*(x12234)))+(((r20)*(sj1)*(x12232))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12243=IKcos(j3); +IkReal x12244=IKsin(j3); +IkReal x12245=((IkReal(1.00000000000000))*(cj4)); +IkReal x12246=((sj0)*(sj5)); +IkReal x12247=((cj0)*(cj5)); +IkReal x12248=((cj6)*(r01)); +IkReal x12249=((r00)*(sj6)); +IkReal x12250=((cj6)*(r11)); +IkReal x12251=((cj5)*(sj0)); +IkReal x12252=((cj6)*(sj4)); +IkReal x12253=((sj4)*(sj6)); +IkReal x12254=((cj4)*(cj5)); +IkReal x12255=((cj6)*(r21)); +IkReal x12256=((r20)*(sj6)); +IkReal x12257=((r10)*(sj6)); +IkReal x12258=((cj1)*(x12243)); +IkReal x12259=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x12260=((IkReal(1.00000000000000))*(x12244)); +IkReal x12261=((IkReal(1.00000000000000))*(sj1)*(x12243)); +IkReal x12262=((cj1)*(x12260)); +IkReal x12263=((x12261)+(x12262)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12263)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12255)))+(((sj5)*(x12256)))); +evalcond[1]=((x12258)+(((x12254)*(x12255)))+(((x12254)*(x12256)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x12253)))+(((IkReal(-1.00000000000000))*(sj1)*(x12260)))+(((r20)*(x12252)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12249)*(x12259)))+(((r02)*(x12247)))+(((sj1)*(x12244)))+(((IkReal(-1.00000000000000))*(x12248)*(x12259)))+(((IkReal(-1.00000000000000))*(x12258)))+(((IkReal(-1.00000000000000))*(x12246)*(x12250)))+(((r12)*(x12251)))+(((IkReal(-1.00000000000000))*(x12246)*(x12257)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x12245)*(x12246)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12252)))+(((cj0)*(r01)*(x12253)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12252)))+(((IkReal(-1.00000000000000))*(x12245)*(x12247)*(x12249)))+(((IkReal(-1.00000000000000))*(x12245)*(x12250)*(x12251)))+(((IkReal(-1.00000000000000))*(x12263)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12245)))+(((IkReal(-1.00000000000000))*(x12245)*(x12247)*(x12248)))+(((r11)*(sj0)*(x12253)))+(((IkReal(-1.00000000000000))*(x12245)*(x12251)*(x12257)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12264=((sj1)*(sj5)); +IkReal x12265=((r20)*(sj6)); +IkReal x12266=((cj4)*(r22)); +IkReal x12267=((IkReal(1.00000000000000))*(cj1)); +IkReal x12268=((cj5)*(sj1)); +IkReal x12269=((cj6)*(r21)); +IkReal x12270=((cj1)*(sj5)); +IkReal x12271=((cj4)*(cj5)); +IkReal x12272=((cj6)*(r20)*(sj4)); +IkReal x12273=((r21)*(sj4)*(sj6)); +if( IKabs(((gconst5)*(((((cj4)*(x12265)*(x12268)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x12267)))+(((sj1)*(x12272)))+(((IkReal(-1.00000000000000))*(sj1)*(x12273)))+(((x12264)*(x12266)))+(((cj4)*(x12268)*(x12269)))+(((x12269)*(x12270)))+(((x12265)*(x12270))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst5)*(((((IkReal(-1.00000000000000))*(r22)*(x12268)))+(((x12264)*(x12269)))+(((IkReal(-1.00000000000000))*(x12267)*(x12272)))+(((cj1)*(x12273)))+(((IkReal(-1.00000000000000))*(x12267)*(x12269)*(x12271)))+(((IkReal(-1.00000000000000))*(x12265)*(x12267)*(x12271)))+(((x12264)*(x12265)))+(((IkReal(-1.00000000000000))*(sj5)*(x12266)*(x12267))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst5)*(((((cj4)*(x12265)*(x12268)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x12267)))+(((sj1)*(x12272)))+(((IkReal(-1.00000000000000))*(sj1)*(x12273)))+(((x12264)*(x12266)))+(((cj4)*(x12268)*(x12269)))+(((x12269)*(x12270)))+(((x12265)*(x12270)))))), ((gconst5)*(((((IkReal(-1.00000000000000))*(r22)*(x12268)))+(((x12264)*(x12269)))+(((IkReal(-1.00000000000000))*(x12267)*(x12272)))+(((cj1)*(x12273)))+(((IkReal(-1.00000000000000))*(x12267)*(x12269)*(x12271)))+(((IkReal(-1.00000000000000))*(x12265)*(x12267)*(x12271)))+(((x12264)*(x12265)))+(((IkReal(-1.00000000000000))*(sj5)*(x12266)*(x12267))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12274=IKcos(j3); +IkReal x12275=IKsin(j3); +IkReal x12276=((IkReal(1.00000000000000))*(cj4)); +IkReal x12277=((sj0)*(sj5)); +IkReal x12278=((cj0)*(cj5)); +IkReal x12279=((cj6)*(r01)); +IkReal x12280=((r00)*(sj6)); +IkReal x12281=((cj6)*(r11)); +IkReal x12282=((cj5)*(sj0)); +IkReal x12283=((cj6)*(sj4)); +IkReal x12284=((sj4)*(sj6)); +IkReal x12285=((cj4)*(cj5)); +IkReal x12286=((cj6)*(r21)); +IkReal x12287=((r20)*(sj6)); +IkReal x12288=((r10)*(sj6)); +IkReal x12289=((cj1)*(x12274)); +IkReal x12290=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x12291=((IkReal(1.00000000000000))*(x12275)); +IkReal x12292=((IkReal(1.00000000000000))*(sj1)*(x12274)); +IkReal x12293=((cj1)*(x12291)); +IkReal x12294=((x12293)+(x12292)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12294)))+(((sj5)*(x12287)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12286)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x12284)))+(((x12285)*(x12286)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12283)))+(x12289)+(((x12285)*(x12287)))+(((IkReal(-1.00000000000000))*(sj1)*(x12291)))); +evalcond[2]=((((r12)*(x12282)))+(((IkReal(-1.00000000000000))*(x12279)*(x12290)))+(((IkReal(-1.00000000000000))*(x12289)))+(((r02)*(x12278)))+(((IkReal(-1.00000000000000))*(x12277)*(x12288)))+(((sj1)*(x12275)))+(((IkReal(-1.00000000000000))*(x12277)*(x12281)))+(((IkReal(-1.00000000000000))*(x12280)*(x12290)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12294)))+(((r11)*(sj0)*(x12284)))+(((IkReal(-1.00000000000000))*(r12)*(x12276)*(x12277)))+(((IkReal(-1.00000000000000))*(x12276)*(x12278)*(x12280)))+(((IkReal(-1.00000000000000))*(x12276)*(x12278)*(x12279)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12283)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12283)))+(((cj0)*(r01)*(x12284)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12276)))+(((IkReal(-1.00000000000000))*(x12276)*(x12282)*(x12288)))+(((IkReal(-1.00000000000000))*(x12276)*(x12281)*(x12282)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x12295=((cj5)*(sj4)); +IkReal x12296=((IkReal(1.00000000000000))*(sj6)); +IkReal x12297=((r10)*(sj0)); +IkReal x12298=((sj4)*(sj5)); +IkReal x12299=((cj4)*(cj5)); +IkReal x12300=((IkReal(1.00000000000000))*(r02)); +IkReal x12301=((IkReal(0.374290000000000))*(cj0)); +IkReal x12302=((cj5)*(r12)); +IkReal x12303=((cj6)*(sj5)); +IkReal x12304=((cj0)*(r11)); +IkReal x12305=((cj5)*(sj0)); +IkReal x12306=((r20)*(sj6)); +IkReal x12307=((IkReal(1.00000000000000))*(sj0)); +IkReal x12308=((IkReal(1.00000000000000))*(cj6)); +IkReal x12309=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12310=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12311=((sj5)*(sj6)); +IkReal x12312=((cj0)*(r10)); +IkReal x12313=((cj4)*(cj6)); +IkReal x12314=((cj0)*(r01)); +IkReal x12315=((cj0)*(r00)); +IkReal x12316=((cj6)*(r21)); +IkReal x12317=((IkReal(0.374290000000000))*(sj0)); +IkReal x12318=((IkReal(0.374290000000000))*(sj5)); +IkReal x12319=((cj6)*(r11)); +IkReal x12320=((sj0)*(sj4)); +IkReal x12321=((cj4)*(sj5)); +IkReal x12322=((cj4)*(sj6)); +IkReal x12323=((IkReal(1.00000000000000))*(cj0)); +IkReal x12324=((r02)*(sj0)); +IkReal x12325=((r00)*(sj0)*(sj6)); +IkReal x12326=((cj6)*(r01)*(sj0)); +IkReal x12327=((r00)*(x12313)); +IkReal x12328=((r12)*(x12323)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x12298)))+(((x12295)*(x12306)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12308)))+(((x12295)*(x12316)))+(((r21)*(x12322)))); +evalcond[2]=((((x12306)*(x12318)))+(((IkReal(-1.00000000000000))*(r22)*(x12310)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.0690000000000000))*(cj1)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x12306)*(x12309)))+(((IkReal(0.374290000000000))*(r21)*(x12303)))+(((IkReal(-1.00000000000000))*(x12309)*(x12316)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x12296)*(x12312)))+(((r01)*(sj0)*(x12303)))+(((IkReal(-1.00000000000000))*(x12303)*(x12304)))+(((cj0)*(x12302)))+(((r00)*(sj0)*(x12311)))+(((IkReal(-1.00000000000000))*(x12300)*(x12305)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((r01)*(sj0)*(x12322)))+(((IkReal(-1.00000000000000))*(x12295)*(x12304)*(x12308)))+(((IkReal(-1.00000000000000))*(x12298)*(x12328)))+(((IkReal(-1.00000000000000))*(x12295)*(x12296)*(x12312)))+(((IkReal(-1.00000000000000))*(cj4)*(x12296)*(x12304)))+(((x12298)*(x12324)))+(((x12312)*(x12313)))+(((x12295)*(x12326)))+(((IkReal(-1.00000000000000))*(x12307)*(x12327)))+(((x12295)*(x12325)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12296)*(x12299)*(x12312)))+(((IkReal(-1.00000000000000))*(r01)*(x12296)*(x12320)))+(((x12321)*(x12324)))+(((x12299)*(x12325)))+(((IkReal(-1.00000000000000))*(sj4)*(x12308)*(x12312)))+(((x12299)*(x12326)))+(((sj4)*(sj6)*(x12304)))+(((cj6)*(r00)*(x12320)))+(((IkReal(-1.00000000000000))*(x12321)*(x12328)))+(((IkReal(-1.00000000000000))*(x12299)*(x12304)*(x12308)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x12296)))+(((IkReal(-1.00000000000000))*(x12295)*(x12296)*(x12297)))+(((IkReal(-1.00000000000000))*(x12295)*(x12308)*(x12314)))+(((x12313)*(x12315)))+(((IkReal(-1.00000000000000))*(x12295)*(x12307)*(x12319)))+(((x12297)*(x12313)))+(((IkReal(-1.00000000000000))*(r12)*(x12298)*(x12307)))+(((IkReal(-1.00000000000000))*(x12295)*(x12296)*(x12315)))+(((IkReal(-1.00000000000000))*(cj4)*(x12296)*(x12314)))+(((IkReal(-1.00000000000000))*(cj0)*(x12298)*(x12300)))); +evalcond[7]=((((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12305)))+(((sj6)*(x12309)*(x12312)))+(((r01)*(x12303)*(x12317)))+(((cj6)*(x12304)*(x12309)))+(((x12301)*(x12302)))+(((IkReal(-1.00000000000000))*(r11)*(x12301)*(x12303)))+(((r00)*(x12311)*(x12317)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x12305)))+(((IkReal(-1.00000000000000))*(x12310)*(x12324)))+(((IkReal(-1.00000000000000))*(r10)*(x12301)*(x12311)))+(((IkReal(-1.00000000000000))*(py)*(x12323)))+(((cj0)*(r12)*(x12310)))+(((px)*(sj0)))+(((IkReal(-0.374290000000000))*(r02)*(x12305)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x12323)))+(((cj0)*(r02)*(x12310)))+(((cj5)*(r02)*(x12301)))+(((IkReal(0.0690000000000000))*(sj1)))+(((x12302)*(x12317)))+(((sj6)*(x12309)*(x12315)))+(((r12)*(sj0)*(x12310)))+(((cj6)*(x12309)*(x12314)))+(((IkReal(-1.00000000000000))*(r00)*(x12301)*(x12311)))+(((IkReal(-0.374290000000000))*(x12297)*(x12311)))+(((IkReal(-1.00000000000000))*(py)*(x12307)))+(((IkReal(0.0100000000000000))*(x12305)*(x12319)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(r11)*(x12303)*(x12317)))+(((IkReal(-1.00000000000000))*(r01)*(x12301)*(x12303)))+(((sj6)*(x12297)*(x12309)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst7; +gconst7=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst8; +gconst8=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12329=((IkReal(1.00000000000000))*(sj0)); +IkReal x12330=((cj6)*(r21)); +IkReal x12331=((cj0)*(r00)); +IkReal x12332=((cj5)*(sj1)); +IkReal x12333=((r12)*(sj0)); +IkReal x12334=((cj1)*(cj5)); +IkReal x12335=((cj0)*(r02)); +IkReal x12336=((sj1)*(sj5)); +IkReal x12337=((cj6)*(r11)); +IkReal x12338=((cj1)*(sj5)); +IkReal x12339=((sj6)*(x12336)); +IkReal x12340=((IkReal(1.00000000000000))*(x12338)); +IkReal x12341=((cj0)*(cj6)*(r01)); +if( IKabs(((gconst8)*(((((x12332)*(x12335)))+(((IkReal(-1.00000000000000))*(r10)*(x12329)*(x12339)))+(((IkReal(-1.00000000000000))*(x12331)*(x12339)))+(((IkReal(-1.00000000000000))*(x12336)*(x12341)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x12340)))+(((IkReal(-1.00000000000000))*(x12329)*(x12336)*(x12337)))+(((r22)*(x12334)))+(((IkReal(-1.00000000000000))*(x12330)*(x12340)))+(((x12332)*(x12333))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst8)*(((((x12333)*(x12334)))+(((IkReal(-1.00000000000000))*(r22)*(x12332)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x12329)*(x12338)))+(((IkReal(-1.00000000000000))*(sj6)*(x12331)*(x12340)))+(((x12330)*(x12336)))+(((r20)*(x12339)))+(((IkReal(-1.00000000000000))*(x12329)*(x12337)*(x12338)))+(((x12334)*(x12335)))+(((IkReal(-1.00000000000000))*(x12340)*(x12341))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst8)*(((((x12332)*(x12335)))+(((IkReal(-1.00000000000000))*(r10)*(x12329)*(x12339)))+(((IkReal(-1.00000000000000))*(x12331)*(x12339)))+(((IkReal(-1.00000000000000))*(x12336)*(x12341)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x12340)))+(((IkReal(-1.00000000000000))*(x12329)*(x12336)*(x12337)))+(((r22)*(x12334)))+(((IkReal(-1.00000000000000))*(x12330)*(x12340)))+(((x12332)*(x12333)))))), ((gconst8)*(((((x12333)*(x12334)))+(((IkReal(-1.00000000000000))*(r22)*(x12332)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x12329)*(x12338)))+(((IkReal(-1.00000000000000))*(sj6)*(x12331)*(x12340)))+(((x12330)*(x12336)))+(((r20)*(x12339)))+(((IkReal(-1.00000000000000))*(x12329)*(x12337)*(x12338)))+(((x12334)*(x12335)))+(((IkReal(-1.00000000000000))*(x12340)*(x12341))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12342=IKsin(j3); +IkReal x12343=IKcos(j3); +IkReal x12344=((IkReal(1.00000000000000))*(cj4)); +IkReal x12345=((sj0)*(sj5)); +IkReal x12346=((cj0)*(cj5)); +IkReal x12347=((cj6)*(r01)); +IkReal x12348=((r00)*(sj6)); +IkReal x12349=((cj6)*(r11)); +IkReal x12350=((cj5)*(sj0)); +IkReal x12351=((cj6)*(sj4)); +IkReal x12352=((sj4)*(sj6)); +IkReal x12353=((cj4)*(cj5)); +IkReal x12354=((cj6)*(r21)); +IkReal x12355=((r20)*(sj6)); +IkReal x12356=((r10)*(sj6)); +IkReal x12357=((cj1)*(x12342)); +IkReal x12358=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x12359=((IkReal(1.00000000000000))*(x12343)); +IkReal x12360=((IkReal(1.00000000000000))*(sj1)*(x12342)); +IkReal x12361=((cj1)*(x12359)); +IkReal x12362=((x12361)+(x12360)); +evalcond[0]=((((sj5)*(x12355)))+(((sj5)*(x12354)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x12359)))+(x12357)); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x12352)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x12362)))+(((x12353)*(x12354)))+(((r20)*(x12351)))+(((x12353)*(x12355)))); +evalcond[2]=((((r02)*(x12346)))+(((IkReal(-1.00000000000000))*(x12348)*(x12358)))+(((IkReal(-1.00000000000000))*(x12362)))+(((IkReal(-1.00000000000000))*(x12345)*(x12356)))+(((r12)*(x12350)))+(((IkReal(-1.00000000000000))*(x12347)*(x12358)))+(((IkReal(-1.00000000000000))*(x12345)*(x12349)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x12344)*(x12345)))+(((sj1)*(x12343)))+(((IkReal(-1.00000000000000))*(x12357)))+(((IkReal(-1.00000000000000))*(x12344)*(x12349)*(x12350)))+(((IkReal(-1.00000000000000))*(x12344)*(x12346)*(x12348)))+(((IkReal(-1.00000000000000))*(x12344)*(x12346)*(x12347)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12344)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12351)))+(((r11)*(sj0)*(x12352)))+(((cj0)*(r01)*(x12352)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12351)))+(((IkReal(-1.00000000000000))*(x12344)*(x12350)*(x12356)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12363=((sj1)*(sj6)); +IkReal x12364=((r20)*(sj5)); +IkReal x12365=((IkReal(1.00000000000000))*(r21)); +IkReal x12366=((cj1)*(cj6)); +IkReal x12367=((r20)*(sj4)); +IkReal x12368=((cj6)*(sj1)); +IkReal x12369=((cj4)*(cj5)); +IkReal x12370=((cj1)*(sj6)); +IkReal x12371=((cj5)*(r22)); +IkReal x12372=((cj4)*(r22)*(sj5)); +if( IKabs(((gconst7)*(((((cj1)*(x12371)))+(((IkReal(-1.00000000000000))*(sj5)*(x12365)*(x12366)))+(((x12367)*(x12368)))+(((r21)*(x12368)*(x12369)))+(((sj1)*(x12372)))+(((r20)*(x12363)*(x12369)))+(((IkReal(-1.00000000000000))*(x12364)*(x12370)))+(((IkReal(-1.00000000000000))*(sj4)*(x12363)*(x12365))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst7)*(((((r20)*(x12369)*(x12370)))+(((r21)*(sj5)*(x12368)))+(((x12363)*(x12364)))+(((x12366)*(x12367)))+(((IkReal(-1.00000000000000))*(sj1)*(x12371)))+(((IkReal(-1.00000000000000))*(sj4)*(x12365)*(x12370)))+(((cj1)*(x12372)))+(((r21)*(x12366)*(x12369))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst7)*(((((cj1)*(x12371)))+(((IkReal(-1.00000000000000))*(sj5)*(x12365)*(x12366)))+(((x12367)*(x12368)))+(((r21)*(x12368)*(x12369)))+(((sj1)*(x12372)))+(((r20)*(x12363)*(x12369)))+(((IkReal(-1.00000000000000))*(x12364)*(x12370)))+(((IkReal(-1.00000000000000))*(sj4)*(x12363)*(x12365)))))), ((gconst7)*(((((r20)*(x12369)*(x12370)))+(((r21)*(sj5)*(x12368)))+(((x12363)*(x12364)))+(((x12366)*(x12367)))+(((IkReal(-1.00000000000000))*(sj1)*(x12371)))+(((IkReal(-1.00000000000000))*(sj4)*(x12365)*(x12370)))+(((cj1)*(x12372)))+(((r21)*(x12366)*(x12369))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12373=IKsin(j3); +IkReal x12374=IKcos(j3); +IkReal x12375=((IkReal(1.00000000000000))*(cj4)); +IkReal x12376=((sj0)*(sj5)); +IkReal x12377=((cj0)*(cj5)); +IkReal x12378=((cj6)*(r01)); +IkReal x12379=((r00)*(sj6)); +IkReal x12380=((cj6)*(r11)); +IkReal x12381=((cj5)*(sj0)); +IkReal x12382=((cj6)*(sj4)); +IkReal x12383=((sj4)*(sj6)); +IkReal x12384=((cj4)*(cj5)); +IkReal x12385=((cj6)*(r21)); +IkReal x12386=((r20)*(sj6)); +IkReal x12387=((r10)*(sj6)); +IkReal x12388=((cj1)*(x12373)); +IkReal x12389=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x12390=((IkReal(1.00000000000000))*(x12374)); +IkReal x12391=((IkReal(1.00000000000000))*(sj1)*(x12373)); +IkReal x12392=((cj1)*(x12390)); +IkReal x12393=((x12391)+(x12392)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x12390)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x12388)+(((sj5)*(x12386)))+(((sj5)*(x12385)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x12383)))+(((x12384)*(x12386)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12382)))+(((IkReal(-1.00000000000000))*(x12393)))+(((x12384)*(x12385)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12379)*(x12389)))+(((r12)*(x12381)))+(((IkReal(-1.00000000000000))*(x12376)*(x12380)))+(((r02)*(x12377)))+(((IkReal(-1.00000000000000))*(x12378)*(x12389)))+(((IkReal(-1.00000000000000))*(x12393)))+(((IkReal(-1.00000000000000))*(x12376)*(x12387)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12375)))+(((IkReal(-1.00000000000000))*(x12375)*(x12377)*(x12378)))+(((IkReal(-1.00000000000000))*(x12388)))+(((cj0)*(r01)*(x12383)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12382)))+(((IkReal(-1.00000000000000))*(x12375)*(x12377)*(x12379)))+(((IkReal(-1.00000000000000))*(x12375)*(x12381)*(x12387)))+(((r11)*(sj0)*(x12383)))+(((sj1)*(x12374)))+(((IkReal(-1.00000000000000))*(x12375)*(x12380)*(x12381)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12382)))+(((IkReal(-1.00000000000000))*(r12)*(x12375)*(x12376)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x12394=((IkReal(1.00000000000000))*(cj0)); +IkReal x12395=((cj4)*(sj6)); +IkReal x12396=((sj0)*(sj4)); +IkReal x12397=((cj5)*(sj6)); +IkReal x12398=((sj4)*(sj5)); +IkReal x12399=((r12)*(sj5)); +IkReal x12400=((IkReal(0.374290000000000))*(cj5)); +IkReal x12401=((r02)*(sj0)); +IkReal x12402=((cj6)*(r21)); +IkReal x12403=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12404=((IkReal(1.00000000000000))*(sj0)); +IkReal x12405=((cj0)*(r10)); +IkReal x12406=((cj4)*(cj6)); +IkReal x12407=((r00)*(sj0)); +IkReal x12408=((IkReal(0.374290000000000))*(sj5)); +IkReal x12409=((cj0)*(r00)); +IkReal x12410=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12411=((cj0)*(r02)); +IkReal x12412=((cj5)*(sj4)); +IkReal x12413=((cj6)*(r01)); +IkReal x12414=((cj6)*(r11)); +IkReal x12415=((r10)*(sj0)); +IkReal x12416=((sj6)*(x12408)); +IkReal x12417=((cj0)*(cj6)*(x12408)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj2)))+(((x12402)*(x12412)))+(((r22)*(x12398)))+(((r20)*(sj4)*(x12397)))+(((r21)*(x12395)))+(((IkReal(-1.00000000000000))*(r20)*(x12406)))); +evalcond[2]=((((x12402)*(x12408)))+(((IkReal(-1.00000000000000))*(r22)*(x12410)))+(((IkReal(-1.00000000000000))*(r22)*(x12400)))+(pz)+(((IkReal(-1.00000000000000))*(x12402)*(x12403)))+(((IkReal(0.0690000000000000))*(cj2)))+(((r20)*(x12416)))+(((IkReal(-0.0100000000000000))*(r20)*(x12397)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12394)*(x12397)))+(((r02)*(sj5)*(x12396)))+(((IkReal(-1.00000000000000))*(r00)*(x12404)*(x12406)))+(cj2)+(((cj5)*(x12396)*(x12413)))+(((r01)*(sj0)*(x12395)))+(((IkReal(-1.00000000000000))*(r12)*(x12394)*(x12398)))+(((IkReal(-1.00000000000000))*(x12394)*(x12412)*(x12414)))+(((r00)*(x12396)*(x12397)))+(((x12405)*(x12406)))+(((IkReal(-1.00000000000000))*(r11)*(x12394)*(x12395)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x12394)*(x12412)*(x12413)))+(((IkReal(-1.00000000000000))*(x12396)*(x12399)))+(((IkReal(-1.00000000000000))*(r01)*(x12394)*(x12395)))+(((IkReal(-1.00000000000000))*(r02)*(x12394)*(x12398)))+(((x12406)*(x12409)))+(((IkReal(-1.00000000000000))*(r11)*(x12395)*(x12404)))+(((IkReal(-1.00000000000000))*(cj5)*(x12396)*(x12414)))+(((x12406)*(x12415)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12394)*(x12397)))+(((IkReal(-1.00000000000000))*(r10)*(x12396)*(x12397)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(py)*(x12394)))+(((IkReal(0.0100000000000000))*(x12397)*(x12405)))+(((IkReal(-0.0100000000000000))*(x12397)*(x12407)))+(((x12407)*(x12416)))+(((IkReal(-1.00000000000000))*(x12401)*(x12410)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(x12405)*(x12416)))+(((IkReal(-1.00000000000000))*(cj0)*(x12408)*(x12414)))+(((IkReal(-1.00000000000000))*(x12400)*(x12401)))+(((cj0)*(x12403)*(x12414)))+(((sj0)*(x12408)*(x12413)))+(((IkReal(0.0100000000000000))*(cj0)*(x12399)))+(((cj0)*(r12)*(x12400)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x12403)*(x12413)))); +evalcond[6]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(x12415)*(x12416)))+(((cj0)*(x12403)*(x12413)))+(((IkReal(-1.00000000000000))*(px)*(x12394)))+(((IkReal(0.0100000000000000))*(sj0)*(x12399)))+(((IkReal(-1.00000000000000))*(x12409)*(x12416)))+(((x12410)*(x12411)))+(((sj0)*(x12403)*(x12414)))+(((IkReal(0.0100000000000000))*(x12397)*(x12415)))+(((IkReal(0.0100000000000000))*(x12397)*(x12409)))+(((IkReal(-1.00000000000000))*(sj0)*(x12408)*(x12414)))+(((IkReal(-1.00000000000000))*(py)*(x12404)))+(((x12400)*(x12411)))+(((IkReal(-1.00000000000000))*(cj0)*(x12408)*(x12413)))+(((r12)*(sj0)*(x12400)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst9; +gconst9=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x12418=((cj5)*(sj4)); +IkReal x12419=((IkReal(1.00000000000000))*(sj6)); +IkReal x12420=((r10)*(sj0)); +IkReal x12421=((sj4)*(sj5)); +IkReal x12422=((cj5)*(cj6)); +IkReal x12423=((r01)*(sj0)); +IkReal x12424=((IkReal(1.00000000000000))*(r02)); +IkReal x12425=((IkReal(0.374290000000000))*(cj0)); +IkReal x12426=((cj5)*(r12)); +IkReal x12427=((cj6)*(sj5)); +IkReal x12428=((cj0)*(r11)); +IkReal x12429=((cj5)*(sj0)); +IkReal x12430=((r20)*(sj6)); +IkReal x12431=((IkReal(1.00000000000000))*(sj0)); +IkReal x12432=((cj4)*(cj5)); +IkReal x12433=((IkReal(1.00000000000000))*(cj6)); +IkReal x12434=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12435=((sj5)*(sj6)); +IkReal x12436=((cj0)*(r10)); +IkReal x12437=((cj4)*(cj6)); +IkReal x12438=((cj0)*(r01)); +IkReal x12439=((IkReal(1.00000000000000))*(cj4)); +IkReal x12440=((cj0)*(r00)); +IkReal x12441=((IkReal(0.374290000000000))*(sj0)); +IkReal x12442=((cj0)*(r12)); +IkReal x12443=((IkReal(0.374290000000000))*(sj5)); +IkReal x12444=((cj4)*(sj6)); +IkReal x12445=((IkReal(1.00000000000000))*(cj0)); +IkReal x12446=((r02)*(sj0)); +IkReal x12447=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12448=((r11)*(sj0)); +IkReal x12449=((r00)*(sj0)*(sj6)); +IkReal x12450=((r00)*(x12437)); +IkReal x12451=((sj6)*(x12447)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x12418)*(x12430)))+(((cj6)*(r21)*(x12418)))+(((r21)*(x12444)))+(((r22)*(x12421)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12433)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x12430)*(x12447)))+(((IkReal(0.374290000000000))*(r21)*(x12427)))+(((IkReal(-0.0100000000000000))*(r21)*(x12422)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x12430)*(x12443)))+(((IkReal(-1.00000000000000))*(r22)*(x12434)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12424)*(x12429)))+(((IkReal(-1.00000000000000))*(sj5)*(x12419)*(x12436)))+(((IkReal(-1.00000000000000))*(x12427)*(x12428)))+(((cj0)*(x12426)))+(((r00)*(sj0)*(x12435)))+(((x12423)*(x12427)))); +evalcond[4]=((IkReal(1.00000000000000))+(((cj6)*(x12418)*(x12423)))+(((IkReal(-1.00000000000000))*(x12421)*(x12442)))+(((x12421)*(x12446)))+(((IkReal(-1.00000000000000))*(x12418)*(x12428)*(x12433)))+(((x12436)*(x12437)))+(((IkReal(-1.00000000000000))*(cj4)*(x12419)*(x12428)))+(((IkReal(-1.00000000000000))*(x12418)*(x12419)*(x12436)))+(((IkReal(-1.00000000000000))*(x12431)*(x12450)))+(((x12418)*(x12449)))+(((x12423)*(x12444)))); +evalcond[5]=((((cj4)*(sj5)*(x12446)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(x12422)*(x12423)))+(((r00)*(x12429)*(x12444)))+(((IkReal(-1.00000000000000))*(sj4)*(x12433)*(x12436)))+(((IkReal(-1.00000000000000))*(sj4)*(x12419)*(x12423)))+(((sj4)*(sj6)*(x12428)))+(((IkReal(-1.00000000000000))*(x12419)*(x12432)*(x12436)))+(((IkReal(-1.00000000000000))*(sj5)*(x12439)*(x12442)))+(((IkReal(-1.00000000000000))*(x12422)*(x12428)*(x12439)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12418)*(x12431)))+(((IkReal(-1.00000000000000))*(x12418)*(x12419)*(x12420)))+(((IkReal(-1.00000000000000))*(x12418)*(x12419)*(x12440)))+(((IkReal(-1.00000000000000))*(r12)*(x12421)*(x12431)))+(((x12420)*(x12437)))+(((IkReal(-1.00000000000000))*(cj4)*(x12419)*(x12448)))+(((IkReal(-1.00000000000000))*(cj4)*(x12419)*(x12438)))+(((IkReal(-1.00000000000000))*(cj0)*(x12421)*(x12424)))+(((x12437)*(x12440)))+(((IkReal(-1.00000000000000))*(x12418)*(x12433)*(x12438)))); +evalcond[7]=((((x12436)*(x12451)))+(((x12425)*(x12426)))+(((IkReal(-1.00000000000000))*(py)*(x12445)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12429)))+(((IkReal(-1.00000000000000))*(r10)*(x12425)*(x12435)))+(((IkReal(-0.0100000000000000))*(x12422)*(x12423)))+(((IkReal(-0.374290000000000))*(r02)*(x12429)))+(((IkReal(-1.00000000000000))*(x12434)*(x12446)))+(((IkReal(-1.00000000000000))*(r11)*(x12425)*(x12427)))+(((r00)*(x12435)*(x12441)))+(((x12434)*(x12442)))+(((IkReal(0.0100000000000000))*(x12422)*(x12428)))+(((px)*(sj0)))+(((IkReal(0.374290000000000))*(x12423)*(x12427)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x12440)*(x12451)))+(((IkReal(-1.00000000000000))*(px)*(x12445)))+(((cj0)*(r02)*(x12434)))+(((IkReal(-1.00000000000000))*(py)*(x12431)))+(((cj5)*(r02)*(x12425)))+(((x12420)*(x12451)))+(((IkReal(-1.00000000000000))*(r11)*(x12427)*(x12441)))+(((IkReal(0.0100000000000000))*(x12422)*(x12448)))+(((r12)*(sj0)*(x12434)))+(((IkReal(-1.00000000000000))*(r01)*(x12425)*(x12427)))+(((IkReal(-0.374290000000000))*(x12420)*(x12435)))+(((x12426)*(x12441)))+(((IkReal(-1.00000000000000))*(r00)*(x12425)*(x12435)))+(((IkReal(0.0100000000000000))*(x12422)*(x12438)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12452=((IkReal(1.00000000000000))*(cj4)); +IkReal x12453=((cj6)*(r21)); +IkReal x12454=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12454)))+(((sj5)*(x12453))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12453)))+(((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12452)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12454)))+(((sj5)*(x12453)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12453)))+(((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12452)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12454)))+(((sj5)*(x12453)))), ((((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12453)))+(((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12452)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12455=IKcos(j3); +IkReal x12456=((IkReal(1.00000000000000))*(cj4)); +IkReal x12457=((sj0)*(sj5)); +IkReal x12458=((cj0)*(cj5)); +IkReal x12459=((cj6)*(r01)); +IkReal x12460=((r00)*(sj6)); +IkReal x12461=((cj6)*(r11)); +IkReal x12462=((cj5)*(sj0)); +IkReal x12463=((cj6)*(sj4)); +IkReal x12464=((sj4)*(sj6)); +IkReal x12465=((cj4)*(cj5)); +IkReal x12466=((cj6)*(r21)); +IkReal x12467=((r20)*(sj6)); +IkReal x12468=((r10)*(sj6)); +IkReal x12469=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x12470=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x12466)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12467)))+(((IkReal(-1.00000000000000))*(x12469)))); +evalcond[1]=((((x12465)*(x12467)))+(((x12465)*(x12466)))+(((IkReal(-1.00000000000000))*(r21)*(x12464)))+(((r20)*(x12463)))+(((cj4)*(r22)*(sj5)))+(x12455)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12457)*(x12468)))+(((IkReal(-1.00000000000000))*(x12459)*(x12470)))+(((IkReal(-1.00000000000000))*(x12457)*(x12461)))+(((IkReal(-1.00000000000000))*(x12460)*(x12470)))+(((r02)*(x12458)))+(((r12)*(x12462)))+(((IkReal(-1.00000000000000))*(x12455)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12456)*(x12461)*(x12462)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12463)))+(((IkReal(-1.00000000000000))*(x12456)*(x12458)*(x12460)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12463)))+(((IkReal(-1.00000000000000))*(r12)*(x12456)*(x12457)))+(((cj0)*(r01)*(x12464)))+(((IkReal(-1.00000000000000))*(x12469)))+(((IkReal(-1.00000000000000))*(x12456)*(x12462)*(x12468)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12456)))+(((r11)*(sj0)*(x12464)))+(((IkReal(-1.00000000000000))*(x12456)*(x12458)*(x12459)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12471=((cj5)*(sj4)); +IkReal x12472=((IkReal(1.00000000000000))*(sj6)); +IkReal x12473=((r10)*(sj0)); +IkReal x12474=((sj4)*(sj5)); +IkReal x12475=((cj5)*(cj6)); +IkReal x12476=((r01)*(sj0)); +IkReal x12477=((IkReal(1.00000000000000))*(r02)); +IkReal x12478=((IkReal(0.374290000000000))*(cj0)); +IkReal x12479=((cj5)*(r12)); +IkReal x12480=((cj6)*(sj5)); +IkReal x12481=((cj0)*(r11)); +IkReal x12482=((cj5)*(sj0)); +IkReal x12483=((r20)*(sj6)); +IkReal x12484=((IkReal(1.00000000000000))*(sj0)); +IkReal x12485=((cj4)*(cj5)); +IkReal x12486=((IkReal(1.00000000000000))*(cj6)); +IkReal x12487=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12488=((sj5)*(sj6)); +IkReal x12489=((cj0)*(r10)); +IkReal x12490=((cj4)*(cj6)); +IkReal x12491=((cj0)*(r01)); +IkReal x12492=((IkReal(1.00000000000000))*(cj4)); +IkReal x12493=((cj0)*(r00)); +IkReal x12494=((IkReal(0.374290000000000))*(sj0)); +IkReal x12495=((cj0)*(r12)); +IkReal x12496=((IkReal(0.374290000000000))*(sj5)); +IkReal x12497=((cj4)*(sj6)); +IkReal x12498=((IkReal(1.00000000000000))*(cj0)); +IkReal x12499=((r02)*(sj0)); +IkReal x12500=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12501=((r11)*(sj0)); +IkReal x12502=((r00)*(sj0)*(sj6)); +IkReal x12503=((r00)*(x12490)); +IkReal x12504=((sj6)*(x12500)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x12497)))+(((r22)*(x12474)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12486)))+(((x12471)*(x12483)))+(((cj6)*(r21)*(x12471)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x12487)))+(((x12483)*(x12496)))+(((IkReal(0.374290000000000))*(r21)*(x12480)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x12475)))+(pz)+(((IkReal(-1.00000000000000))*(x12483)*(x12500)))); +evalcond[3]=((((r00)*(sj0)*(x12488)))+(((cj0)*(x12479)))+(((x12476)*(x12480)))+(((IkReal(-1.00000000000000))*(sj5)*(x12472)*(x12489)))+(((IkReal(-1.00000000000000))*(x12480)*(x12481)))+(((IkReal(-1.00000000000000))*(x12477)*(x12482)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x12476)*(x12497)))+(((cj6)*(x12471)*(x12476)))+(((x12471)*(x12502)))+(((x12474)*(x12499)))+(((x12489)*(x12490)))+(((IkReal(-1.00000000000000))*(x12471)*(x12481)*(x12486)))+(((IkReal(-1.00000000000000))*(x12471)*(x12472)*(x12489)))+(((IkReal(-1.00000000000000))*(x12474)*(x12495)))+(((IkReal(-1.00000000000000))*(cj4)*(x12472)*(x12481)))+(((IkReal(-1.00000000000000))*(x12484)*(x12503)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x12486)*(x12489)))+(((cj4)*(sj5)*(x12499)))+(((cj4)*(x12475)*(x12476)))+(((IkReal(-1.00000000000000))*(sj5)*(x12492)*(x12495)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((sj4)*(sj6)*(x12481)))+(((IkReal(-1.00000000000000))*(x12475)*(x12481)*(x12492)))+(((IkReal(-1.00000000000000))*(x12472)*(x12485)*(x12489)))+(((IkReal(-1.00000000000000))*(sj4)*(x12472)*(x12476)))+(((r00)*(x12482)*(x12497)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x12472)*(x12501)))+(((IkReal(-1.00000000000000))*(cj4)*(x12472)*(x12491)))+(((IkReal(-1.00000000000000))*(x12471)*(x12486)*(x12491)))+(((IkReal(-1.00000000000000))*(cj0)*(x12474)*(x12477)))+(((IkReal(-1.00000000000000))*(x12471)*(x12472)*(x12493)))+(((IkReal(-1.00000000000000))*(r12)*(x12474)*(x12484)))+(((x12473)*(x12490)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12471)*(x12484)))+(((IkReal(-1.00000000000000))*(x12471)*(x12472)*(x12473)))+(((x12490)*(x12493)))); +evalcond[7]=((((x12489)*(x12504)))+(((x12478)*(x12479)))+(((IkReal(0.374290000000000))*(x12476)*(x12480)))+(((r00)*(x12488)*(x12494)))+(((IkReal(-0.374290000000000))*(r02)*(x12482)))+(((IkReal(-0.0100000000000000))*(x12475)*(x12476)))+(((IkReal(-1.00000000000000))*(r10)*(x12478)*(x12488)))+(((IkReal(-1.00000000000000))*(py)*(x12498)))+(((IkReal(-1.00000000000000))*(x12487)*(x12499)))+(((x12487)*(x12495)))+(((IkReal(-1.00000000000000))*(r11)*(x12478)*(x12480)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(x12475)*(x12481)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12482)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-0.374290000000000))*(x12473)*(x12488)))+(((x12473)*(x12504)))+(((IkReal(0.0100000000000000))*(x12475)*(x12501)))+(((IkReal(0.0100000000000000))*(x12475)*(x12491)))+(((IkReal(-1.00000000000000))*(r11)*(x12480)*(x12494)))+(((IkReal(-1.00000000000000))*(px)*(x12498)))+(((IkReal(-1.00000000000000))*(r00)*(x12478)*(x12488)))+(((r12)*(sj0)*(x12487)))+(((IkReal(-1.00000000000000))*(py)*(x12484)))+(((cj5)*(r02)*(x12478)))+(((x12479)*(x12494)))+(((IkReal(-1.00000000000000))*(r01)*(x12478)*(x12480)))+(((x12493)*(x12504)))+(((cj0)*(r02)*(x12487)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12505=((IkReal(1.00000000000000))*(r21)); +IkReal x12506=((cj4)*(cj5)); +IkReal x12507=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x12507)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12505)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12506)))+(((x12506)*(x12507)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12505))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x12507)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12505)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12506)))+(((x12506)*(x12507)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12505)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x12507)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12505)))+(((cj5)*(r22)))), ((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12506)))+(((x12506)*(x12507)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12505))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12508=IKsin(j3); +IkReal x12509=((IkReal(1.00000000000000))*(cj4)); +IkReal x12510=((sj0)*(sj5)); +IkReal x12511=((cj0)*(cj5)); +IkReal x12512=((cj6)*(r01)); +IkReal x12513=((r00)*(sj6)); +IkReal x12514=((cj6)*(r11)); +IkReal x12515=((cj5)*(sj0)); +IkReal x12516=((cj6)*(sj4)); +IkReal x12517=((sj4)*(sj6)); +IkReal x12518=((cj4)*(cj5)); +IkReal x12519=((cj6)*(r21)); +IkReal x12520=((r20)*(sj6)); +IkReal x12521=((r10)*(sj6)); +IkReal x12522=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x12523=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x12520)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12519)))+(x12508)); +evalcond[1]=((((r20)*(x12516)))+(((x12518)*(x12520)))+(((cj4)*(r22)*(sj5)))+(((x12518)*(x12519)))+(((IkReal(-1.00000000000000))*(x12522)))+(((IkReal(-1.00000000000000))*(r21)*(x12517)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12512)*(x12523)))+(((r12)*(x12515)))+(((IkReal(-1.00000000000000))*(x12510)*(x12514)))+(((IkReal(-1.00000000000000))*(x12513)*(x12523)))+(((IkReal(-1.00000000000000))*(x12510)*(x12521)))+(((IkReal(-1.00000000000000))*(x12522)))+(((r02)*(x12511)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12516)))+(((r11)*(sj0)*(x12517)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12509)))+(((IkReal(-1.00000000000000))*(x12509)*(x12515)*(x12521)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12516)))+(((IkReal(-1.00000000000000))*(x12509)*(x12511)*(x12512)))+(((IkReal(-1.00000000000000))*(x12508)))+(((IkReal(-1.00000000000000))*(x12509)*(x12514)*(x12515)))+(((cj0)*(r01)*(x12517)))+(((IkReal(-1.00000000000000))*(r12)*(x12509)*(x12510)))+(((IkReal(-1.00000000000000))*(x12509)*(x12511)*(x12513)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12524=((IkReal(1.00000000000000))*(cj0)); +IkReal x12525=((cj4)*(sj6)); +IkReal x12526=((sj0)*(sj4)); +IkReal x12527=((cj5)*(sj6)); +IkReal x12528=((sj4)*(sj5)); +IkReal x12529=((r12)*(sj5)); +IkReal x12530=((IkReal(0.374290000000000))*(cj5)); +IkReal x12531=((r02)*(sj0)); +IkReal x12532=((r20)*(sj4)); +IkReal x12533=((IkReal(1.00000000000000))*(sj0)); +IkReal x12534=((IkReal(1.00000000000000))*(cj5)); +IkReal x12535=((cj0)*(r10)); +IkReal x12536=((cj4)*(cj6)); +IkReal x12537=((r00)*(sj0)); +IkReal x12538=((cj6)*(r21)); +IkReal x12539=((IkReal(0.374290000000000))*(sj5)); +IkReal x12540=((cj0)*(r00)); +IkReal x12541=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12542=((cj0)*(r02)); +IkReal x12543=((cj5)*(sj4)); +IkReal x12544=((cj6)*(r01)); +IkReal x12545=((cj6)*(r11)); +IkReal x12546=((r01)*(sj0)); +IkReal x12547=((r10)*(sj0)); +IkReal x12548=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x12549=((sj6)*(x12539)); +IkReal x12550=((cj0)*(cj6)*(x12539)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x12538)))+(((IkReal(-1.00000000000000))*(r22)*(x12534)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x12528)))+(((x12527)*(x12532)))+(((r21)*(x12525)))+(((x12538)*(x12543)))+(((IkReal(-1.00000000000000))*(r20)*(x12536)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x12530)))+(((r20)*(x12549)))+(((IkReal(-1.00000000000000))*(r22)*(x12541)))+(((IkReal(-0.0100000000000000))*(cj5)*(x12538)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x12527)))+(((x12538)*(x12539)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x12532)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x12536)))+(((cj5)*(r20)*(x12525)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12524)*(x12543)*(x12545)))+(((IkReal(-1.00000000000000))*(r00)*(x12533)*(x12536)))+(((x12525)*(x12546)))+(((x12535)*(x12536)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12524)*(x12527)))+(((cj5)*(x12526)*(x12544)))+(((r00)*(x12526)*(x12527)))+(((IkReal(-1.00000000000000))*(r11)*(x12524)*(x12525)))+(((IkReal(-1.00000000000000))*(r12)*(x12524)*(x12528)))+(((r02)*(sj5)*(x12526)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r02)*(x12524)*(x12528)))+(((IkReal(-1.00000000000000))*(r11)*(x12525)*(x12533)))+(((x12536)*(x12540)))+(((IkReal(-1.00000000000000))*(r10)*(x12526)*(x12527)))+(((IkReal(-1.00000000000000))*(r01)*(x12524)*(x12525)))+(((x12536)*(x12547)))+(((IkReal(-1.00000000000000))*(x12526)*(x12529)))+(((IkReal(-1.00000000000000))*(x12524)*(x12543)*(x12544)))+(((IkReal(-1.00000000000000))*(x12526)*(x12534)*(x12545)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12524)*(x12527)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((sj0)*(x12539)*(x12544)))+(((x12537)*(x12549)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12545)))+(((cj0)*(r12)*(x12530)))+(((IkReal(-1.00000000000000))*(py)*(x12524)))+(((IkReal(0.0100000000000000))*(x12527)*(x12535)))+(((IkReal(-1.00000000000000))*(x12531)*(x12541)))+(((IkReal(-0.0100000000000000))*(x12527)*(x12537)))+(((IkReal(-1.00000000000000))*(x12530)*(x12531)))+(((IkReal(-1.00000000000000))*(x12535)*(x12549)))+(((IkReal(-1.00000000000000))*(cj0)*(x12539)*(x12545)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x12544)))+(((IkReal(0.0100000000000000))*(cj0)*(x12529)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12544)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x12545)))+(((r12)*(sj0)*(x12530)))+(((IkReal(0.0100000000000000))*(x12527)*(x12540)))+(((IkReal(-1.00000000000000))*(x12540)*(x12549)))+(((x12530)*(x12542)))+(((IkReal(-1.00000000000000))*(sj0)*(x12539)*(x12545)))+(((IkReal(-1.00000000000000))*(cj0)*(x12539)*(x12544)))+(((x12541)*(x12542)))+(((IkReal(-1.00000000000000))*(x12547)*(x12549)))+(((IkReal(0.0100000000000000))*(sj0)*(x12529)))+(((IkReal(-1.00000000000000))*(py)*(x12533)))+(((IkReal(-1.00000000000000))*(px)*(x12524)))+(((IkReal(0.0100000000000000))*(x12527)*(x12547)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12551=((cj0)*(cj5)); +IkReal x12552=((IkReal(1.00000000000000))*(cj0)); +IkReal x12553=((cj6)*(r11)); +IkReal x12554=((r10)*(sj6)); +IkReal x12555=((cj5)*(sj0)); +IkReal x12556=((r00)*(sj5)*(sj6)); +IkReal x12557=((cj6)*(r01)*(sj5)); +IkReal x12558=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x12557)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12553)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12554)))+(((sj0)*(x12556)))+(((IkReal(-1.00000000000000))*(r02)*(x12555)))+(((r12)*(x12551))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r12)*(x12555)))+(((r02)*(x12551)))+(((IkReal(-1.00000000000000))*(x12552)*(x12557)))+(((IkReal(-1.00000000000000))*(x12553)*(x12558)))+(((IkReal(-1.00000000000000))*(x12552)*(x12556)))+(((IkReal(-1.00000000000000))*(x12554)*(x12558))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x12557)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12553)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12554)))+(((sj0)*(x12556)))+(((IkReal(-1.00000000000000))*(r02)*(x12555)))+(((r12)*(x12551)))))+IKsqr(((((r12)*(x12555)))+(((r02)*(x12551)))+(((IkReal(-1.00000000000000))*(x12552)*(x12557)))+(((IkReal(-1.00000000000000))*(x12553)*(x12558)))+(((IkReal(-1.00000000000000))*(x12552)*(x12556)))+(((IkReal(-1.00000000000000))*(x12554)*(x12558)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x12557)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12553)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12554)))+(((sj0)*(x12556)))+(((IkReal(-1.00000000000000))*(r02)*(x12555)))+(((r12)*(x12551)))), ((((r12)*(x12555)))+(((r02)*(x12551)))+(((IkReal(-1.00000000000000))*(x12552)*(x12557)))+(((IkReal(-1.00000000000000))*(x12553)*(x12558)))+(((IkReal(-1.00000000000000))*(x12552)*(x12556)))+(((IkReal(-1.00000000000000))*(x12554)*(x12558))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12559=IKcos(j3); +IkReal x12560=((sj0)*(sj5)); +IkReal x12561=((r00)*(sj6)); +IkReal x12562=((cj6)*(sj0)); +IkReal x12563=((IkReal(1.00000000000000))*(cj4)); +IkReal x12564=((r00)*(sj4)); +IkReal x12565=((cj0)*(cj5)); +IkReal x12566=((cj5)*(sj0)); +IkReal x12567=((cj6)*(r11)); +IkReal x12568=((r10)*(sj6)); +IkReal x12569=((cj0)*(sj5)); +IkReal x12570=((r10)*(sj4)); +IkReal x12571=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x12572=((cj4)*(cj5)*(r01)); +IkReal x12573=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x12574=((cj0)*(sj4)*(sj6)); +IkReal x12575=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12567)*(x12569)))+(((x12560)*(x12561)))+(((cj6)*(r01)*(x12560)))+(((IkReal(-1.00000000000000))*(r02)*(x12566)))+(((IkReal(-1.00000000000000))*(x12568)*(x12569)))+(((IkReal(-1.00000000000000))*(x12571)))+(((r12)*(x12565)))); +evalcond[1]=((((r02)*(x12565)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x12569)))+(((IkReal(-1.00000000000000))*(x12561)*(x12569)))+(((r12)*(x12566)))+(((IkReal(-1.00000000000000))*(x12560)*(x12568)))+(((IkReal(-1.00000000000000))*(x12560)*(x12567)))+(((IkReal(-1.00000000000000))*(x12559)))); +evalcond[2]=((x12559)+(((IkReal(-1.00000000000000))*(x12563)*(x12565)*(x12567)))+(((x12562)*(x12564)))+(((cj4)*(x12561)*(x12566)))+(((IkReal(-1.00000000000000))*(x12563)*(x12565)*(x12568)))+(((x12562)*(x12572)))+(((IkReal(-1.00000000000000))*(x12570)*(x12573)))+(((r11)*(x12574)))+(((IkReal(-1.00000000000000))*(r01)*(x12575)))+(((cj4)*(r02)*(x12560)))+(((IkReal(-1.00000000000000))*(r12)*(x12563)*(x12569)))); +evalcond[3]=((((r01)*(x12574)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12562)*(x12563)))+(((IkReal(-1.00000000000000))*(x12561)*(x12563)*(x12565)))+(((IkReal(-1.00000000000000))*(r12)*(x12560)*(x12563)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x12563)*(x12565)))+(((IkReal(-1.00000000000000))*(x12563)*(x12566)*(x12568)))+(((IkReal(-1.00000000000000))*(x12562)*(x12570)))+(((IkReal(-1.00000000000000))*(r02)*(x12563)*(x12569)))+(((IkReal(-1.00000000000000))*(x12571)))+(((IkReal(-1.00000000000000))*(x12564)*(x12573)))+(((r11)*(x12575)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12576=((IkReal(1.00000000000000))*(cj0)); +IkReal x12577=((cj4)*(sj6)); +IkReal x12578=((sj0)*(sj4)); +IkReal x12579=((cj5)*(sj6)); +IkReal x12580=((sj4)*(sj5)); +IkReal x12581=((r12)*(sj5)); +IkReal x12582=((IkReal(0.374290000000000))*(cj5)); +IkReal x12583=((r02)*(sj0)); +IkReal x12584=((r20)*(sj4)); +IkReal x12585=((IkReal(1.00000000000000))*(sj0)); +IkReal x12586=((IkReal(1.00000000000000))*(cj5)); +IkReal x12587=((cj0)*(r10)); +IkReal x12588=((cj4)*(cj6)); +IkReal x12589=((r00)*(sj0)); +IkReal x12590=((cj6)*(r21)); +IkReal x12591=((IkReal(0.374290000000000))*(sj5)); +IkReal x12592=((cj0)*(r00)); +IkReal x12593=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12594=((cj0)*(r02)); +IkReal x12595=((cj5)*(sj4)); +IkReal x12596=((cj6)*(r01)); +IkReal x12597=((cj6)*(r11)); +IkReal x12598=((r01)*(sj0)); +IkReal x12599=((r10)*(sj0)); +IkReal x12600=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x12601=((sj6)*(x12591)); +IkReal x12602=((cj0)*(cj6)*(x12591)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x12586)))+(((sj5)*(x12590)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x12579)*(x12584)))+(((r21)*(x12577)))+(((r22)*(x12580)))+(((x12590)*(x12595)))+(((IkReal(-1.00000000000000))*(r20)*(x12588)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x12593)))+(((IkReal(-0.0100000000000000))*(cj5)*(x12590)))+(((IkReal(-0.0100000000000000))*(r20)*(x12579)))+(((x12590)*(x12591)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x12582)))+(((r20)*(x12601)))); +evalcond[4]=((((cj5)*(r20)*(x12577)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x12584)))+(((cj5)*(r21)*(x12588)))+(((cj4)*(r22)*(sj5)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12576)*(x12579)))+(((IkReal(-1.00000000000000))*(r00)*(x12585)*(x12588)))+(((r02)*(sj5)*(x12578)))+(((r00)*(x12578)*(x12579)))+(((cj5)*(x12578)*(x12596)))+(((IkReal(-1.00000000000000))*(x12576)*(x12595)*(x12597)))+(((x12587)*(x12588)))+(((IkReal(-1.00000000000000))*(r12)*(x12576)*(x12580)))+(((IkReal(-1.00000000000000))*(r11)*(x12576)*(x12577)))+(((x12577)*(x12598)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x12576)*(x12595)*(x12596)))+(((IkReal(-1.00000000000000))*(r11)*(x12577)*(x12585)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12576)*(x12579)))+(((x12588)*(x12599)))+(((IkReal(-1.00000000000000))*(r01)*(x12576)*(x12577)))+(((IkReal(-1.00000000000000))*(x12578)*(x12581)))+(((IkReal(-1.00000000000000))*(x12578)*(x12586)*(x12597)))+(((x12588)*(x12592)))+(((IkReal(-1.00000000000000))*(r10)*(x12578)*(x12579)))+(((IkReal(-1.00000000000000))*(r02)*(x12576)*(x12580)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-0.0100000000000000))*(x12579)*(x12589)))+(((x12589)*(x12601)))+(((IkReal(-1.00000000000000))*(x12582)*(x12583)))+(((IkReal(-1.00000000000000))*(cj0)*(x12591)*(x12597)))+(((IkReal(-1.00000000000000))*(x12583)*(x12593)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12597)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x12596)))+(((sj0)*(x12591)*(x12596)))+(((IkReal(-1.00000000000000))*(x12587)*(x12601)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(x12579)*(x12587)))+(((cj0)*(r12)*(x12582)))+(((IkReal(-1.00000000000000))*(py)*(x12576)))+(((IkReal(0.0100000000000000))*(cj0)*(x12581)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x12582)*(x12594)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x12597)))+(((x12593)*(x12594)))+(((IkReal(-1.00000000000000))*(sj0)*(x12591)*(x12597)))+(((IkReal(-1.00000000000000))*(px)*(x12576)))+(((r12)*(sj0)*(x12582)))+(((IkReal(-1.00000000000000))*(cj0)*(x12591)*(x12596)))+(((IkReal(-1.00000000000000))*(py)*(x12585)))+(((IkReal(0.0100000000000000))*(sj0)*(x12581)))+(((IkReal(0.0100000000000000))*(x12579)*(x12592)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12596)))+(((IkReal(-1.00000000000000))*(x12599)*(x12601)))+(((IkReal(-1.00000000000000))*(x12592)*(x12601)))+(((IkReal(0.0100000000000000))*(x12579)*(x12599)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12603=((cj5)*(r02)); +IkReal x12604=((cj0)*(sj5)); +IkReal x12605=((r10)*(sj6)); +IkReal x12606=((IkReal(1.00000000000000))*(cj6)); +IkReal x12607=((sj0)*(sj5)); +IkReal x12608=((cj5)*(r12)); +IkReal x12609=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((x12604)*(x12605)))+(((IkReal(-1.00000000000000))*(x12607)*(x12609)))+(((IkReal(-1.00000000000000))*(cj0)*(x12608)))+(((cj6)*(r11)*(x12604)))+(((sj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r01)*(x12606)*(x12607))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r11)*(x12606)*(x12607)))+(((IkReal(-1.00000000000000))*(x12604)*(x12609)))+(((sj0)*(x12608)))+(((IkReal(-1.00000000000000))*(r01)*(x12604)*(x12606)))+(((IkReal(-1.00000000000000))*(x12605)*(x12607))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x12604)*(x12605)))+(((IkReal(-1.00000000000000))*(x12607)*(x12609)))+(((IkReal(-1.00000000000000))*(cj0)*(x12608)))+(((cj6)*(r11)*(x12604)))+(((sj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r01)*(x12606)*(x12607)))))+IKsqr(((((cj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r11)*(x12606)*(x12607)))+(((IkReal(-1.00000000000000))*(x12604)*(x12609)))+(((sj0)*(x12608)))+(((IkReal(-1.00000000000000))*(r01)*(x12604)*(x12606)))+(((IkReal(-1.00000000000000))*(x12605)*(x12607)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x12604)*(x12605)))+(((IkReal(-1.00000000000000))*(x12607)*(x12609)))+(((IkReal(-1.00000000000000))*(cj0)*(x12608)))+(((cj6)*(r11)*(x12604)))+(((sj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r01)*(x12606)*(x12607)))), ((((cj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r11)*(x12606)*(x12607)))+(((IkReal(-1.00000000000000))*(x12604)*(x12609)))+(((sj0)*(x12608)))+(((IkReal(-1.00000000000000))*(r01)*(x12604)*(x12606)))+(((IkReal(-1.00000000000000))*(x12605)*(x12607))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12610=IKsin(j3); +IkReal x12611=((sj0)*(sj5)); +IkReal x12612=((r00)*(sj6)); +IkReal x12613=((IkReal(1.00000000000000))*(cj4)); +IkReal x12614=((cj6)*(sj0)); +IkReal x12615=((r00)*(sj4)); +IkReal x12616=((cj0)*(cj5)); +IkReal x12617=((cj6)*(r01)); +IkReal x12618=((cj5)*(sj0)); +IkReal x12619=((cj0)*(sj5)); +IkReal x12620=((cj6)*(r11)); +IkReal x12621=((r10)*(sj6)); +IkReal x12622=((r10)*(sj4)); +IkReal x12623=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x12624=((cj0)*(sj4)*(sj6)); +IkReal x12625=((sj0)*(sj4)*(sj6)); +IkReal x12626=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12619)*(x12621)))+(((IkReal(-1.00000000000000))*(r02)*(x12618)))+(((x12611)*(x12612)))+(((IkReal(-1.00000000000000))*(x12619)*(x12620)))+(((x12611)*(x12617)))+(((r12)*(x12616)))+(x12610)); +evalcond[1]=((((IkReal(-1.00000000000000))*(x12617)*(x12619)))+(((r12)*(x12618)))+(((IkReal(-1.00000000000000))*(x12612)*(x12619)))+(((IkReal(-1.00000000000000))*(x12623)))+(((r02)*(x12616)))+(((IkReal(-1.00000000000000))*(x12611)*(x12620)))+(((IkReal(-1.00000000000000))*(x12611)*(x12621)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x12613)*(x12619)))+(((IkReal(-1.00000000000000))*(x12622)*(x12626)))+(((IkReal(-1.00000000000000))*(x12623)))+(((x12614)*(x12615)))+(((r11)*(x12624)))+(((cj4)*(cj5)*(r01)*(x12614)))+(((cj4)*(x12612)*(x12618)))+(((IkReal(-1.00000000000000))*(r01)*(x12625)))+(((cj4)*(r02)*(x12611)))+(((IkReal(-1.00000000000000))*(x12613)*(x12616)*(x12620)))+(((IkReal(-1.00000000000000))*(x12613)*(x12616)*(x12621)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12615)*(x12626)))+(((IkReal(-1.00000000000000))*(x12614)*(x12622)))+(((IkReal(-1.00000000000000))*(x12613)*(x12618)*(x12621)))+(((IkReal(-1.00000000000000))*(x12610)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12613)*(x12614)))+(((IkReal(-1.00000000000000))*(x12613)*(x12616)*(x12617)))+(((IkReal(-1.00000000000000))*(x12612)*(x12613)*(x12616)))+(((r11)*(x12625)))+(((IkReal(-1.00000000000000))*(r12)*(x12611)*(x12613)))+(((r01)*(x12624)))+(((IkReal(-1.00000000000000))*(r02)*(x12613)*(x12619)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12627=((cj0)*(cj5)); +IkReal x12628=((IkReal(1.00000000000000))*(cj0)); +IkReal x12629=((cj6)*(r11)); +IkReal x12630=((r10)*(sj6)); +IkReal x12631=((cj5)*(sj0)); +IkReal x12632=((r00)*(sj5)*(sj6)); +IkReal x12633=((cj6)*(r01)*(sj5)); +IkReal x12634=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x12627)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12629)))+(((IkReal(-1.00000000000000))*(r02)*(x12631)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12630)))+(((sj0)*(x12632)))+(((sj0)*(x12633))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r12)*(x12631)))+(((IkReal(-1.00000000000000))*(x12630)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12633)))+(((IkReal(-1.00000000000000))*(x12629)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12632)))+(((r02)*(x12627))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x12627)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12629)))+(((IkReal(-1.00000000000000))*(r02)*(x12631)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12630)))+(((sj0)*(x12632)))+(((sj0)*(x12633)))))))+IKsqr(((((r12)*(x12631)))+(((IkReal(-1.00000000000000))*(x12630)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12633)))+(((IkReal(-1.00000000000000))*(x12629)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12632)))+(((r02)*(x12627)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x12627)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12629)))+(((IkReal(-1.00000000000000))*(r02)*(x12631)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12630)))+(((sj0)*(x12632)))+(((sj0)*(x12633)))))), ((((r12)*(x12631)))+(((IkReal(-1.00000000000000))*(x12630)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12633)))+(((IkReal(-1.00000000000000))*(x12629)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12632)))+(((r02)*(x12627))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12635=IKsin(j3); +IkReal x12636=IKcos(j3); +IkReal x12637=((sj0)*(sj5)); +IkReal x12638=((r00)*(sj6)); +IkReal x12639=((IkReal(1.00000000000000))*(cj4)); +IkReal x12640=((cj6)*(r01)); +IkReal x12641=((cj0)*(cj5)); +IkReal x12642=((cj5)*(sj0)); +IkReal x12643=((cj6)*(r11)); +IkReal x12644=((cj0)*(sj5)); +IkReal x12645=((cj6)*(sj4)); +IkReal x12646=((cj4)*(cj5)); +IkReal x12647=((cj6)*(r21)); +IkReal x12648=((r20)*(sj6)); +IkReal x12649=((r10)*(sj6)); +IkReal x12650=((IkReal(1.00000000000000))*(cj0)); +IkReal x12651=((IkReal(1.00000000000000))*(x12635)); +IkReal x12652=((cj0)*(sj4)*(sj6)); +IkReal x12653=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12648)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x12651)))+(((sj5)*(x12647)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12646)*(x12647)))+(((cj4)*(r22)*(sj5)))+(((x12646)*(x12648)))+(((cj2)*(x12636)))+(((r20)*(x12645)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x12651)))+(((IkReal(-1.00000000000000))*(r02)*(x12642)))+(((x12637)*(x12640)))+(((x12637)*(x12638)))+(((r12)*(x12641)))+(((IkReal(-1.00000000000000))*(x12644)*(x12649)))+(((IkReal(-1.00000000000000))*(x12643)*(x12644)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12636)))+(((r02)*(x12641)))+(((r12)*(x12642)))+(((IkReal(-1.00000000000000))*(x12637)*(x12649)))+(((IkReal(-1.00000000000000))*(x12638)*(x12644)))+(((IkReal(-1.00000000000000))*(x12640)*(x12644)))+(((IkReal(-1.00000000000000))*(x12637)*(x12643)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x12653)))+(((sj2)*(x12636)))+(((cj4)*(r02)*(x12637)))+(((cj4)*(x12638)*(x12642)))+(((IkReal(-1.00000000000000))*(r12)*(x12639)*(x12644)))+(((r11)*(x12652)))+(((IkReal(-1.00000000000000))*(x12639)*(x12641)*(x12649)))+(((cj4)*(x12640)*(x12642)))+(((IkReal(-1.00000000000000))*(r10)*(x12645)*(x12650)))+(((IkReal(-1.00000000000000))*(x12639)*(x12641)*(x12643)))+(((r00)*(sj0)*(x12645)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12639)*(x12640)*(x12641)))+(((IkReal(-1.00000000000000))*(x12639)*(x12642)*(x12649)))+(((IkReal(-1.00000000000000))*(x12651)))+(((r01)*(x12652)))+(((IkReal(-1.00000000000000))*(x12638)*(x12639)*(x12641)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12645)))+(((IkReal(-1.00000000000000))*(r00)*(x12645)*(x12650)))+(((IkReal(-1.00000000000000))*(r02)*(x12639)*(x12644)))+(((r11)*(x12653)))+(((IkReal(-1.00000000000000))*(r12)*(x12637)*(x12639)))+(((IkReal(-1.00000000000000))*(x12639)*(x12642)*(x12643)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12654=((sj5)*(sj6)); +IkReal x12655=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x12654))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12654)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12654))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x12654)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12654)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12654)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x12654)))))), ((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12654)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12654))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12656=IKsin(j3); +IkReal x12657=IKcos(j3); +IkReal x12658=((sj0)*(sj5)); +IkReal x12659=((r00)*(sj6)); +IkReal x12660=((IkReal(1.00000000000000))*(cj4)); +IkReal x12661=((cj6)*(r01)); +IkReal x12662=((cj0)*(cj5)); +IkReal x12663=((cj5)*(sj0)); +IkReal x12664=((cj6)*(r11)); +IkReal x12665=((cj0)*(sj5)); +IkReal x12666=((cj6)*(sj4)); +IkReal x12667=((cj4)*(cj5)); +IkReal x12668=((cj6)*(r21)); +IkReal x12669=((r20)*(sj6)); +IkReal x12670=((r10)*(sj6)); +IkReal x12671=((IkReal(1.00000000000000))*(cj0)); +IkReal x12672=((IkReal(1.00000000000000))*(x12656)); +IkReal x12673=((cj0)*(sj4)*(sj6)); +IkReal x12674=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj2)*(x12672)))+(((sj5)*(x12669)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12668)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x12657)))+(((x12667)*(x12668)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12666)))+(((x12667)*(x12669)))); +evalcond[2]=((((x12658)*(x12661)))+(((IkReal(-1.00000000000000))*(x12664)*(x12665)))+(((x12658)*(x12659)))+(((IkReal(-1.00000000000000))*(sj2)*(x12672)))+(((r12)*(x12662)))+(((IkReal(-1.00000000000000))*(r02)*(x12663)))+(((IkReal(-1.00000000000000))*(x12665)*(x12670)))); +evalcond[3]=((((r02)*(x12662)))+(((IkReal(-1.00000000000000))*(x12659)*(x12665)))+(((IkReal(-1.00000000000000))*(x12658)*(x12670)))+(((IkReal(-1.00000000000000))*(x12658)*(x12664)))+(((r12)*(x12663)))+(((IkReal(-1.00000000000000))*(x12661)*(x12665)))+(((IkReal(-1.00000000000000))*(x12657)))); +evalcond[4]=((((sj2)*(x12657)))+(((cj4)*(r02)*(x12658)))+(((cj4)*(x12661)*(x12663)))+(((r11)*(x12673)))+(((cj4)*(x12659)*(x12663)))+(((IkReal(-1.00000000000000))*(r01)*(x12674)))+(((IkReal(-1.00000000000000))*(x12660)*(x12662)*(x12664)))+(((r00)*(sj0)*(x12666)))+(((IkReal(-1.00000000000000))*(r10)*(x12666)*(x12671)))+(((IkReal(-1.00000000000000))*(x12660)*(x12662)*(x12670)))+(((IkReal(-1.00000000000000))*(r12)*(x12660)*(x12665)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12672)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12666)))+(((IkReal(-1.00000000000000))*(x12660)*(x12661)*(x12662)))+(((r11)*(x12674)))+(((IkReal(-1.00000000000000))*(x12660)*(x12663)*(x12664)))+(((IkReal(-1.00000000000000))*(r12)*(x12658)*(x12660)))+(((r01)*(x12673)))+(((IkReal(-1.00000000000000))*(r00)*(x12666)*(x12671)))+(((IkReal(-1.00000000000000))*(x12660)*(x12663)*(x12670)))+(((IkReal(-1.00000000000000))*(r02)*(x12660)*(x12665)))+(((IkReal(-1.00000000000000))*(x12659)*(x12660)*(x12662)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12675=((IkReal(1.00000000000000))*(cj4)); +IkReal x12676=((cj6)*(r21)); +IkReal x12677=((r20)*(sj6)); +if( IKabs(((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12677)))+(((sj5)*(x12676))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x12675)*(x12677)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x12675)*(x12676)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12675)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12677)))+(((sj5)*(x12676)))))), ((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x12675)*(x12677)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x12675)*(x12676)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12675)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12678=IKsin(j3); +IkReal x12679=IKcos(j3); +IkReal x12680=((sj0)*(sj5)); +IkReal x12681=((r00)*(sj6)); +IkReal x12682=((IkReal(1.00000000000000))*(cj4)); +IkReal x12683=((cj6)*(r01)); +IkReal x12684=((cj0)*(cj5)); +IkReal x12685=((cj5)*(sj0)); +IkReal x12686=((cj6)*(r11)); +IkReal x12687=((cj0)*(sj5)); +IkReal x12688=((cj6)*(sj4)); +IkReal x12689=((cj4)*(cj5)); +IkReal x12690=((cj6)*(r21)); +IkReal x12691=((r20)*(sj6)); +IkReal x12692=((r10)*(sj6)); +IkReal x12693=((IkReal(1.00000000000000))*(cj0)); +IkReal x12694=((IkReal(1.00000000000000))*(x12678)); +IkReal x12695=((cj0)*(sj4)*(sj6)); +IkReal x12696=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12691)))+(((sj5)*(x12690)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x12694)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x12689)*(x12690)))+(((x12689)*(x12691)))+(((cj2)*(x12679)))+(((r20)*(x12688)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x12694)))+(((x12680)*(x12683)))+(((r12)*(x12684)))+(((x12680)*(x12681)))+(((IkReal(-1.00000000000000))*(x12686)*(x12687)))+(((IkReal(-1.00000000000000))*(r02)*(x12685)))+(((IkReal(-1.00000000000000))*(x12687)*(x12692)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12679)))+(((r12)*(x12685)))+(((r02)*(x12684)))+(((IkReal(-1.00000000000000))*(x12680)*(x12692)))+(((IkReal(-1.00000000000000))*(x12681)*(x12687)))+(((IkReal(-1.00000000000000))*(x12680)*(x12686)))+(((IkReal(-1.00000000000000))*(x12683)*(x12687)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x12682)*(x12684)*(x12692)))+(((cj4)*(x12683)*(x12685)))+(((r00)*(sj0)*(x12688)))+(((r11)*(x12695)))+(((cj4)*(x12681)*(x12685)))+(((cj4)*(r02)*(x12680)))+(((sj2)*(x12679)))+(((IkReal(-1.00000000000000))*(r10)*(x12688)*(x12693)))+(((IkReal(-1.00000000000000))*(r01)*(x12696)))+(((IkReal(-1.00000000000000))*(r12)*(x12682)*(x12687)))+(((IkReal(-1.00000000000000))*(x12682)*(x12684)*(x12686)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12681)*(x12682)*(x12684)))+(((IkReal(-1.00000000000000))*(x12682)*(x12685)*(x12692)))+(((r01)*(x12695)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12688)))+(((IkReal(-1.00000000000000))*(x12682)*(x12685)*(x12686)))+(((IkReal(-1.00000000000000))*(r12)*(x12680)*(x12682)))+(((r11)*(x12696)))+(((IkReal(-1.00000000000000))*(r02)*(x12682)*(x12687)))+(((IkReal(-1.00000000000000))*(x12694)))+(((IkReal(-1.00000000000000))*(x12682)*(x12683)*(x12684)))+(((IkReal(-1.00000000000000))*(r00)*(x12688)*(x12693)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x12697=((IkReal(1.00000000000000))*(cj0)); +IkReal x12698=((cj4)*(sj6)); +IkReal x12699=((sj0)*(sj4)); +IkReal x12700=((cj5)*(sj6)); +IkReal x12701=((sj4)*(sj5)); +IkReal x12702=((r12)*(sj5)); +IkReal x12703=((IkReal(0.374290000000000))*(cj5)); +IkReal x12704=((r02)*(sj0)); +IkReal x12705=((IkReal(1.00000000000000))*(sj0)); +IkReal x12706=((cj0)*(r10)); +IkReal x12707=((cj4)*(cj6)); +IkReal x12708=((r00)*(sj0)); +IkReal x12709=((cj6)*(r21)); +IkReal x12710=((IkReal(0.374290000000000))*(sj5)); +IkReal x12711=((cj0)*(r00)); +IkReal x12712=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12713=((cj0)*(r02)); +IkReal x12714=((cj5)*(sj4)); +IkReal x12715=((cj6)*(r01)); +IkReal x12716=((cj6)*(r11)); +IkReal x12717=((r01)*(sj0)); +IkReal x12718=((r10)*(sj0)); +IkReal x12719=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x12720=((sj6)*(x12710)); +IkReal x12721=((cj0)*(cj6)*(x12710)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((sj2)+(((IkReal(-1.00000000000000))*(r20)*(x12707)))+(((r22)*(x12701)))+(((x12709)*(x12714)))+(((r21)*(x12698)))+(((r20)*(sj4)*(x12700)))); +evalcond[2]=((((r20)*(x12720)))+(((IkReal(-1.00000000000000))*(r22)*(x12712)))+(((IkReal(-0.0100000000000000))*(r20)*(x12700)))+(((IkReal(-0.0690000000000000))*(cj2)))+(((IkReal(-0.0100000000000000))*(cj5)*(x12709)))+(((IkReal(-1.00000000000000))*(r22)*(x12703)))+(pz)+(((x12709)*(x12710)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x12697)*(x12698)))+(((x12698)*(x12717)))+(((IkReal(-1.00000000000000))*(r12)*(x12697)*(x12701)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12697)*(x12700)))+(((x12706)*(x12707)))+(((IkReal(-1.00000000000000))*(r00)*(x12705)*(x12707)))+(((r00)*(x12699)*(x12700)))+(((IkReal(-1.00000000000000))*(x12697)*(x12714)*(x12716)))+(cj2)+(((r02)*(sj5)*(x12699)))+(((cj5)*(x12699)*(x12715)))); +evalcond[4]=((((x12707)*(x12711)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12697)*(x12700)))+(((IkReal(-1.00000000000000))*(x12699)*(x12702)))+(((x12707)*(x12718)))+(((IkReal(-1.00000000000000))*(r02)*(x12697)*(x12701)))+(((IkReal(-1.00000000000000))*(cj5)*(x12699)*(x12716)))+(((IkReal(-1.00000000000000))*(r01)*(x12697)*(x12698)))+(((IkReal(-1.00000000000000))*(r11)*(x12698)*(x12705)))+(((IkReal(-1.00000000000000))*(x12697)*(x12714)*(x12715)))+(((IkReal(-1.00000000000000))*(r10)*(x12699)*(x12700)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(py)*(x12697)))+(((IkReal(-1.00000000000000))*(x12706)*(x12720)))+(((IkReal(-1.00000000000000))*(cj0)*(x12710)*(x12716)))+(((IkReal(-1.00000000000000))*(x12704)*(x12712)))+(((x12708)*(x12720)))+(((IkReal(0.0100000000000000))*(x12700)*(x12706)))+(((sj0)*(x12710)*(x12715)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(0.0100000000000000))*(cj0)*(x12702)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12716)))+(((cj0)*(r12)*(x12703)))+(((IkReal(-1.00000000000000))*(x12703)*(x12704)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(x12700)*(x12708)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x12715)))); +evalcond[6]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(x12700)*(x12718)))+(((x12712)*(x12713)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12715)))+(((IkReal(0.0100000000000000))*(sj0)*(x12702)))+(((r12)*(sj0)*(x12703)))+(((IkReal(-1.00000000000000))*(x12711)*(x12720)))+(((IkReal(-1.00000000000000))*(sj0)*(x12710)*(x12716)))+(((x12703)*(x12713)))+(((IkReal(-1.00000000000000))*(x12718)*(x12720)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x12716)))+(((IkReal(-1.00000000000000))*(cj0)*(x12710)*(x12715)))+(((IkReal(-1.00000000000000))*(px)*(x12697)))+(((IkReal(0.0100000000000000))*(x12700)*(x12711)))+(((IkReal(-1.00000000000000))*(py)*(x12705)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst10; +gconst10=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x12722=((cj5)*(sj4)); +IkReal x12723=((IkReal(1.00000000000000))*(sj6)); +IkReal x12724=((r10)*(sj0)); +IkReal x12725=((sj4)*(sj5)); +IkReal x12726=((cj5)*(cj6)); +IkReal x12727=((r01)*(sj0)); +IkReal x12728=((IkReal(1.00000000000000))*(r02)); +IkReal x12729=((IkReal(0.374290000000000))*(cj0)); +IkReal x12730=((cj5)*(r12)); +IkReal x12731=((cj6)*(sj5)); +IkReal x12732=((cj0)*(r11)); +IkReal x12733=((cj5)*(sj0)); +IkReal x12734=((r20)*(sj6)); +IkReal x12735=((IkReal(1.00000000000000))*(sj0)); +IkReal x12736=((cj4)*(cj5)); +IkReal x12737=((IkReal(1.00000000000000))*(cj6)); +IkReal x12738=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12739=((sj5)*(sj6)); +IkReal x12740=((cj0)*(r10)); +IkReal x12741=((cj4)*(cj6)); +IkReal x12742=((cj0)*(r01)); +IkReal x12743=((IkReal(1.00000000000000))*(cj4)); +IkReal x12744=((cj0)*(r00)); +IkReal x12745=((IkReal(0.374290000000000))*(sj0)); +IkReal x12746=((cj0)*(r12)); +IkReal x12747=((IkReal(0.374290000000000))*(sj5)); +IkReal x12748=((cj4)*(sj6)); +IkReal x12749=((IkReal(1.00000000000000))*(cj0)); +IkReal x12750=((r02)*(sj0)); +IkReal x12751=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12752=((r11)*(sj0)); +IkReal x12753=((r00)*(sj0)*(sj6)); +IkReal x12754=((r00)*(x12741)); +IkReal x12755=((sj6)*(x12751)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x12725)))+(((cj6)*(r21)*(x12722)))+(((r21)*(x12748)))+(((x12722)*(x12734)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12737)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x12734)*(x12751)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x12734)*(x12747)))+(((IkReal(0.374290000000000))*(r21)*(x12731)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x12738)))+(((IkReal(-0.0100000000000000))*(r21)*(x12726)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12731)*(x12732)))+(((x12727)*(x12731)))+(((r00)*(sj0)*(x12739)))+(((IkReal(-1.00000000000000))*(sj5)*(x12723)*(x12740)))+(((IkReal(-1.00000000000000))*(x12728)*(x12733)))+(((cj0)*(x12730)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x12725)*(x12746)))+(((cj6)*(x12722)*(x12727)))+(((IkReal(-1.00000000000000))*(x12722)*(x12732)*(x12737)))+(((IkReal(-1.00000000000000))*(x12722)*(x12723)*(x12740)))+(((x12725)*(x12750)))+(((x12740)*(x12741)))+(((IkReal(-1.00000000000000))*(x12735)*(x12754)))+(((x12722)*(x12753)))+(((x12727)*(x12748)))+(((IkReal(-1.00000000000000))*(cj4)*(x12723)*(x12732)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x12723)*(x12727)))+(((IkReal(-1.00000000000000))*(sj5)*(x12743)*(x12746)))+(((cj4)*(x12726)*(x12727)))+(((cj4)*(sj5)*(x12750)))+(((IkReal(-1.00000000000000))*(sj4)*(x12737)*(x12740)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((r00)*(x12733)*(x12748)))+(((sj4)*(sj6)*(x12732)))+(((IkReal(-1.00000000000000))*(x12726)*(x12732)*(x12743)))+(((IkReal(-1.00000000000000))*(x12723)*(x12736)*(x12740)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x12723)*(x12752)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12722)*(x12735)))+(((IkReal(-1.00000000000000))*(r12)*(x12725)*(x12735)))+(((IkReal(-1.00000000000000))*(x12722)*(x12723)*(x12724)))+(((IkReal(-1.00000000000000))*(cj0)*(x12725)*(x12728)))+(((IkReal(-1.00000000000000))*(x12722)*(x12723)*(x12744)))+(((x12741)*(x12744)))+(((IkReal(-1.00000000000000))*(cj4)*(x12723)*(x12742)))+(((x12724)*(x12741)))+(((IkReal(-1.00000000000000))*(x12722)*(x12737)*(x12742)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x12738)*(x12750)))+(((IkReal(-1.00000000000000))*(r11)*(x12729)*(x12731)))+(((x12740)*(x12755)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12733)))+(((IkReal(-1.00000000000000))*(py)*(x12749)))+(((IkReal(-0.374290000000000))*(r02)*(x12733)))+(((IkReal(0.374290000000000))*(x12727)*(x12731)))+(((IkReal(0.0100000000000000))*(x12726)*(x12732)))+(((r00)*(x12739)*(x12745)))+(((IkReal(-1.00000000000000))*(r10)*(x12729)*(x12739)))+(((IkReal(-0.0100000000000000))*(x12726)*(x12727)))+(((x12729)*(x12730)))+(((x12738)*(x12746)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((cj5)*(r02)*(x12729)))+(((IkReal(-0.374290000000000))*(x12724)*(x12739)))+(((IkReal(-1.00000000000000))*(r11)*(x12731)*(x12745)))+(((r12)*(sj0)*(x12738)))+(((cj0)*(r02)*(x12738)))+(((IkReal(-1.00000000000000))*(r00)*(x12729)*(x12739)))+(((IkReal(0.0100000000000000))*(x12726)*(x12742)))+(((IkReal(-1.00000000000000))*(px)*(x12749)))+(((IkReal(-1.00000000000000))*(r01)*(x12729)*(x12731)))+(((IkReal(-1.00000000000000))*(py)*(x12735)))+(((x12744)*(x12755)))+(((x12724)*(x12755)))+(((x12730)*(x12745)))+(((IkReal(0.0100000000000000))*(x12726)*(x12752)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12756=((IkReal(1.00000000000000))*(r21)); +IkReal x12757=((cj4)*(cj5)); +IkReal x12758=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x12758)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12756))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12757)))+(((x12757)*(x12758)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12756))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x12758)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12756)))))+IKsqr(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12757)))+(((x12757)*(x12758)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12756)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x12758)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12756)))), ((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12757)))+(((x12757)*(x12758)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12756))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12759=IKcos(j3); +IkReal x12760=IKsin(j3); +IkReal x12761=((IkReal(1.00000000000000))*(cj4)); +IkReal x12762=((sj0)*(sj5)); +IkReal x12763=((cj0)*(cj5)); +IkReal x12764=((cj6)*(r01)); +IkReal x12765=((r00)*(sj6)); +IkReal x12766=((cj6)*(r11)); +IkReal x12767=((cj5)*(sj0)); +IkReal x12768=((cj6)*(sj4)); +IkReal x12769=((sj4)*(sj6)); +IkReal x12770=((cj4)*(cj5)); +IkReal x12771=((cj6)*(r21)); +IkReal x12772=((r20)*(sj6)); +IkReal x12773=((r10)*(sj6)); +IkReal x12774=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((x12760)+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12771)))+(((sj5)*(x12772)))); +evalcond[1]=((((r20)*(x12768)))+(((x12770)*(x12772)))+(((x12770)*(x12771)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x12769)))+(((IkReal(-1.00000000000000))*(x12759)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12762)*(x12766)))+(((r02)*(x12763)))+(((r12)*(x12767)))+(((IkReal(-1.00000000000000))*(x12765)*(x12774)))+(((IkReal(-1.00000000000000))*(x12762)*(x12773)))+(((IkReal(-1.00000000000000))*(x12764)*(x12774)))+(x12759)); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12761)*(x12763)*(x12765)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12768)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12768)))+(((IkReal(-1.00000000000000))*(x12761)*(x12763)*(x12764)))+(x12760)+(((IkReal(-1.00000000000000))*(x12761)*(x12766)*(x12767)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12761)))+(((IkReal(-1.00000000000000))*(x12761)*(x12767)*(x12773)))+(((cj0)*(r01)*(x12769)))+(((IkReal(-1.00000000000000))*(r12)*(x12761)*(x12762)))+(((r11)*(sj0)*(x12769)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12775=((cj5)*(sj4)); +IkReal x12776=((IkReal(1.00000000000000))*(sj6)); +IkReal x12777=((r10)*(sj0)); +IkReal x12778=((sj4)*(sj5)); +IkReal x12779=((cj5)*(cj6)); +IkReal x12780=((r01)*(sj0)); +IkReal x12781=((IkReal(1.00000000000000))*(r02)); +IkReal x12782=((IkReal(0.374290000000000))*(cj0)); +IkReal x12783=((cj5)*(r12)); +IkReal x12784=((cj6)*(sj5)); +IkReal x12785=((cj0)*(r11)); +IkReal x12786=((cj5)*(sj0)); +IkReal x12787=((r20)*(sj6)); +IkReal x12788=((IkReal(1.00000000000000))*(sj0)); +IkReal x12789=((cj4)*(cj5)); +IkReal x12790=((IkReal(1.00000000000000))*(cj6)); +IkReal x12791=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12792=((sj5)*(sj6)); +IkReal x12793=((cj0)*(r10)); +IkReal x12794=((cj4)*(cj6)); +IkReal x12795=((cj0)*(r01)); +IkReal x12796=((IkReal(1.00000000000000))*(cj4)); +IkReal x12797=((cj0)*(r00)); +IkReal x12798=((IkReal(0.374290000000000))*(sj0)); +IkReal x12799=((cj0)*(r12)); +IkReal x12800=((IkReal(0.374290000000000))*(sj5)); +IkReal x12801=((cj4)*(sj6)); +IkReal x12802=((IkReal(1.00000000000000))*(cj0)); +IkReal x12803=((r02)*(sj0)); +IkReal x12804=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12805=((r11)*(sj0)); +IkReal x12806=((r00)*(sj0)*(sj6)); +IkReal x12807=((r00)*(x12794)); +IkReal x12808=((sj6)*(x12804)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((x12775)*(x12787)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12790)))+(((r21)*(x12801)))+(((r22)*(x12778)))+(((cj6)*(r21)*(x12775)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x12787)*(x12804)))+(((x12787)*(x12800)))+(((IkReal(0.374290000000000))*(r21)*(x12784)))+(((IkReal(-1.00000000000000))*(r22)*(x12791)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-0.0100000000000000))*(r21)*(x12779)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x12776)*(x12793)))+(((IkReal(-1.00000000000000))*(x12784)*(x12785)))+(((r00)*(sj0)*(x12792)))+(((IkReal(-1.00000000000000))*(x12781)*(x12786)))+(((x12780)*(x12784)))+(((cj0)*(x12783)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x12788)*(x12807)))+(((x12778)*(x12803)))+(((IkReal(-1.00000000000000))*(cj4)*(x12776)*(x12785)))+(((IkReal(-1.00000000000000))*(x12775)*(x12776)*(x12793)))+(((x12780)*(x12801)))+(((IkReal(-1.00000000000000))*(x12778)*(x12799)))+(((x12775)*(x12806)))+(((cj6)*(x12775)*(x12780)))+(((x12793)*(x12794)))+(((IkReal(-1.00000000000000))*(x12775)*(x12785)*(x12790)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x12776)*(x12780)))+(((IkReal(-1.00000000000000))*(x12776)*(x12789)*(x12793)))+(((IkReal(-1.00000000000000))*(sj4)*(x12790)*(x12793)))+(((cj4)*(x12779)*(x12780)))+(((r00)*(x12786)*(x12801)))+(((cj4)*(sj5)*(x12803)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((sj4)*(sj6)*(x12785)))+(((IkReal(-1.00000000000000))*(x12779)*(x12785)*(x12796)))+(((IkReal(-1.00000000000000))*(sj5)*(x12796)*(x12799)))); +evalcond[6]=((((x12794)*(x12797)))+(((IkReal(-1.00000000000000))*(cj4)*(x12776)*(x12795)))+(((IkReal(-1.00000000000000))*(x12775)*(x12776)*(x12777)))+(((IkReal(-1.00000000000000))*(x12775)*(x12776)*(x12797)))+(((IkReal(-1.00000000000000))*(cj0)*(x12778)*(x12781)))+(((IkReal(-1.00000000000000))*(x12775)*(x12790)*(x12795)))+(((x12777)*(x12794)))+(((IkReal(-1.00000000000000))*(cj4)*(x12776)*(x12805)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12775)*(x12788)))+(((IkReal(-1.00000000000000))*(r12)*(x12778)*(x12788)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x12782)*(x12784)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12786)))+(((IkReal(-1.00000000000000))*(py)*(x12802)))+(((IkReal(-0.374290000000000))*(r02)*(x12786)))+(((IkReal(0.374290000000000))*(x12780)*(x12784)))+(((x12793)*(x12808)))+(((x12782)*(x12783)))+(((IkReal(-0.0100000000000000))*(x12779)*(x12780)))+(((x12791)*(x12799)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(x12779)*(x12785)))+(((r00)*(x12792)*(x12798)))+(((IkReal(-1.00000000000000))*(x12791)*(x12803)))+(((IkReal(-1.00000000000000))*(r10)*(x12782)*(x12792)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x12783)*(x12798)))+(((IkReal(-1.00000000000000))*(px)*(x12802)))+(((IkReal(-1.00000000000000))*(r00)*(x12782)*(x12792)))+(((cj5)*(r02)*(x12782)))+(((IkReal(-1.00000000000000))*(r01)*(x12782)*(x12784)))+(((cj0)*(r02)*(x12791)))+(((IkReal(0.0100000000000000))*(x12779)*(x12795)))+(((IkReal(-0.374290000000000))*(x12777)*(x12792)))+(((IkReal(-1.00000000000000))*(r11)*(x12784)*(x12798)))+(((IkReal(0.0100000000000000))*(x12779)*(x12805)))+(((x12777)*(x12808)))+(((IkReal(-1.00000000000000))*(py)*(x12788)))+(((x12797)*(x12808)))+(((r12)*(sj0)*(x12791)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12809=((IkReal(1.00000000000000))*(cj4)); +IkReal x12810=((cj6)*(r21)); +IkReal x12811=((r20)*(sj6)); +if( IKabs(((((sj5)*(x12811)))+(((sj5)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12809)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12811)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x12811)))+(((sj5)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12809)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12811)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x12811)))+(((sj5)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12809)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12811)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12812=IKcos(j3); +IkReal x12813=IKsin(j3); +IkReal x12814=((IkReal(1.00000000000000))*(cj4)); +IkReal x12815=((sj0)*(sj5)); +IkReal x12816=((cj0)*(cj5)); +IkReal x12817=((cj6)*(r01)); +IkReal x12818=((r00)*(sj6)); +IkReal x12819=((cj6)*(r11)); +IkReal x12820=((cj5)*(sj0)); +IkReal x12821=((cj6)*(sj4)); +IkReal x12822=((sj4)*(sj6)); +IkReal x12823=((cj4)*(cj5)); +IkReal x12824=((cj6)*(r21)); +IkReal x12825=((r20)*(sj6)); +IkReal x12826=((r10)*(sj6)); +IkReal x12827=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12825)))+(((IkReal(-1.00000000000000))*(x12813)))+(((sj5)*(x12824)))); +evalcond[1]=((((x12823)*(x12825)))+(((x12823)*(x12824)))+(((cj4)*(r22)*(sj5)))+(x12812)+(((r20)*(x12821)))+(((IkReal(-1.00000000000000))*(r21)*(x12822)))); +evalcond[2]=((((r12)*(x12820)))+(((r02)*(x12816)))+(((IkReal(-1.00000000000000))*(x12815)*(x12826)))+(((IkReal(-1.00000000000000))*(x12818)*(x12827)))+(x12812)+(((IkReal(-1.00000000000000))*(x12817)*(x12827)))+(((IkReal(-1.00000000000000))*(x12815)*(x12819)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12821)))+(((IkReal(-1.00000000000000))*(x12814)*(x12820)*(x12826)))+(((r11)*(sj0)*(x12822)))+(((IkReal(-1.00000000000000))*(x12814)*(x12816)*(x12818)))+(x12813)+(((IkReal(-1.00000000000000))*(x12814)*(x12816)*(x12817)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12814)))+(((cj0)*(r01)*(x12822)))+(((IkReal(-1.00000000000000))*(x12814)*(x12819)*(x12820)))+(((IkReal(-1.00000000000000))*(r12)*(x12814)*(x12815)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12821)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12828=((IkReal(1.00000000000000))*(cj0)); +IkReal x12829=((cj4)*(sj6)); +IkReal x12830=((sj0)*(sj4)); +IkReal x12831=((cj5)*(sj6)); +IkReal x12832=((sj4)*(sj5)); +IkReal x12833=((r12)*(sj5)); +IkReal x12834=((IkReal(0.374290000000000))*(cj5)); +IkReal x12835=((r02)*(sj0)); +IkReal x12836=((r20)*(sj4)); +IkReal x12837=((IkReal(1.00000000000000))*(sj0)); +IkReal x12838=((IkReal(1.00000000000000))*(cj5)); +IkReal x12839=((cj0)*(r10)); +IkReal x12840=((cj4)*(cj6)); +IkReal x12841=((r00)*(sj0)); +IkReal x12842=((cj6)*(r21)); +IkReal x12843=((IkReal(0.374290000000000))*(sj5)); +IkReal x12844=((cj0)*(r00)); +IkReal x12845=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12846=((cj0)*(r02)); +IkReal x12847=((cj5)*(sj4)); +IkReal x12848=((cj6)*(r01)); +IkReal x12849=((cj6)*(r11)); +IkReal x12850=((r01)*(sj0)); +IkReal x12851=((r10)*(sj0)); +IkReal x12852=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x12853=((sj6)*(x12843)); +IkReal x12854=((cj0)*(cj6)*(x12843)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x12838)))+(((r20)*(sj5)*(sj6)))+(((sj5)*(x12842)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x12840)))+(((r21)*(x12829)))+(((x12842)*(x12847)))+(((r22)*(x12832)))+(((x12831)*(x12836)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x12845)))+(((IkReal(-1.00000000000000))*(r22)*(x12834)))+(((IkReal(-0.0100000000000000))*(cj5)*(x12842)))+(((IkReal(-0.0100000000000000))*(r20)*(x12831)))+(pz)+(((r20)*(x12853)))+(((x12842)*(x12843)))); +evalcond[4]=((((cj5)*(r21)*(x12840)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x12829)))+(((cj6)*(x12836)))+(((cj4)*(r22)*(sj5)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x12828)*(x12832)))+(((IkReal(-1.00000000000000))*(x12828)*(x12847)*(x12849)))+(((r02)*(sj5)*(x12830)))+(((x12829)*(x12850)))+(((x12839)*(x12840)))+(((cj5)*(x12830)*(x12848)))+(((IkReal(-1.00000000000000))*(r00)*(x12837)*(x12840)))+(((r00)*(x12830)*(x12831)))+(((IkReal(-1.00000000000000))*(r11)*(x12828)*(x12829)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12828)*(x12831)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x12830)*(x12833)))+(((IkReal(-1.00000000000000))*(x12830)*(x12838)*(x12849)))+(((IkReal(-1.00000000000000))*(r02)*(x12828)*(x12832)))+(((x12840)*(x12851)))+(((IkReal(-1.00000000000000))*(r10)*(x12830)*(x12831)))+(((IkReal(-1.00000000000000))*(x12828)*(x12847)*(x12848)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12828)*(x12831)))+(((IkReal(-1.00000000000000))*(r11)*(x12829)*(x12837)))+(((IkReal(-1.00000000000000))*(r01)*(x12828)*(x12829)))+(((x12840)*(x12844)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(x12831)*(x12839)))+(((cj0)*(r12)*(x12834)))+(((IkReal(-1.00000000000000))*(x12835)*(x12845)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x12848)))+(((x12841)*(x12853)))+(((IkReal(-1.00000000000000))*(cj0)*(x12843)*(x12849)))+(((sj0)*(x12843)*(x12848)))+(((IkReal(-1.00000000000000))*(x12839)*(x12853)))+(((IkReal(-1.00000000000000))*(py)*(x12828)))+(((IkReal(-0.0100000000000000))*(x12831)*(x12841)))+(((IkReal(0.0100000000000000))*(cj0)*(x12833)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12849)))+(((IkReal(-1.00000000000000))*(x12834)*(x12835)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x12845)*(x12846)))+(((r12)*(sj0)*(x12834)))+(((IkReal(-1.00000000000000))*(x12851)*(x12853)))+(((IkReal(-1.00000000000000))*(sj0)*(x12843)*(x12849)))+(((IkReal(0.0100000000000000))*(x12831)*(x12851)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12848)))+(((IkReal(0.0100000000000000))*(sj0)*(x12833)))+(((IkReal(-1.00000000000000))*(py)*(x12837)))+(((x12834)*(x12846)))+(((IkReal(-1.00000000000000))*(x12844)*(x12853)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x12849)))+(((IkReal(-1.00000000000000))*(cj0)*(x12843)*(x12848)))+(((IkReal(0.0100000000000000))*(x12831)*(x12844)))+(((IkReal(-1.00000000000000))*(px)*(x12828)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12855=((sj0)*(sj5)); +IkReal x12856=((r00)*(sj6)); +IkReal x12857=((IkReal(1.00000000000000))*(cj5)); +IkReal x12858=((cj6)*(r11)); +IkReal x12859=((cj6)*(r01)); +IkReal x12860=((r10)*(sj6)); +IkReal x12861=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x12860)*(x12861)))+(((x12855)*(x12856)))+(((IkReal(-1.00000000000000))*(x12858)*(x12861)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12857)))+(((x12855)*(x12859))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12857)))+(((x12856)*(x12861)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12857)))+(((x12855)*(x12860)))+(((x12859)*(x12861)))+(((x12855)*(x12858))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x12860)*(x12861)))+(((x12855)*(x12856)))+(((IkReal(-1.00000000000000))*(x12858)*(x12861)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12857)))+(((x12855)*(x12859)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12857)))+(((x12856)*(x12861)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12857)))+(((x12855)*(x12860)))+(((x12859)*(x12861)))+(((x12855)*(x12858)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x12860)*(x12861)))+(((x12855)*(x12856)))+(((IkReal(-1.00000000000000))*(x12858)*(x12861)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12857)))+(((x12855)*(x12859)))), ((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12857)))+(((x12856)*(x12861)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12857)))+(((x12855)*(x12860)))+(((x12859)*(x12861)))+(((x12855)*(x12858))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12862=IKcos(j3); +IkReal x12863=IKsin(j3); +IkReal x12864=((sj0)*(sj5)); +IkReal x12865=((r00)*(sj6)); +IkReal x12866=((cj6)*(sj0)); +IkReal x12867=((IkReal(1.00000000000000))*(cj4)); +IkReal x12868=((r00)*(sj4)); +IkReal x12869=((cj0)*(cj5)); +IkReal x12870=((cj5)*(sj0)); +IkReal x12871=((cj6)*(r11)); +IkReal x12872=((r10)*(sj6)); +IkReal x12873=((cj0)*(sj5)); +IkReal x12874=((r10)*(sj4)); +IkReal x12875=((cj4)*(cj5)*(r01)); +IkReal x12876=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x12877=((cj0)*(sj4)*(sj6)); +IkReal x12878=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj6)*(r01)*(x12864)))+(((IkReal(-1.00000000000000))*(x12871)*(x12873)))+(((IkReal(-1.00000000000000))*(x12863)))+(((IkReal(-1.00000000000000))*(x12872)*(x12873)))+(((x12864)*(x12865)))+(((IkReal(-1.00000000000000))*(r02)*(x12870)))+(((r12)*(x12869)))); +evalcond[1]=((((r02)*(x12869)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x12873)))+(((IkReal(-1.00000000000000))*(x12864)*(x12871)))+(((IkReal(-1.00000000000000))*(x12865)*(x12873)))+(((IkReal(-1.00000000000000))*(x12864)*(x12872)))+(x12862)+(((r12)*(x12870)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x12867)*(x12873)))+(((cj4)*(r02)*(x12864)))+(((cj4)*(x12865)*(x12870)))+(((IkReal(-1.00000000000000))*(r01)*(x12878)))+(((IkReal(-1.00000000000000))*(x12867)*(x12869)*(x12872)))+(((IkReal(-1.00000000000000))*(x12874)*(x12876)))+(((r11)*(x12877)))+(((x12866)*(x12875)))+(((IkReal(-1.00000000000000))*(x12867)*(x12869)*(x12871)))+(((x12866)*(x12868)))+(x12862)); +evalcond[3]=((((r01)*(x12877)))+(((r11)*(x12878)))+(((IkReal(-1.00000000000000))*(r02)*(x12867)*(x12873)))+(((IkReal(-1.00000000000000))*(x12866)*(x12874)))+(((IkReal(-1.00000000000000))*(x12868)*(x12876)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x12867)*(x12869)))+(((IkReal(-1.00000000000000))*(r12)*(x12864)*(x12867)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12866)*(x12867)))+(((IkReal(-1.00000000000000))*(x12867)*(x12870)*(x12872)))+(((IkReal(-1.00000000000000))*(x12865)*(x12867)*(x12869)))+(x12863)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12879=((IkReal(1.00000000000000))*(cj0)); +IkReal x12880=((cj4)*(sj6)); +IkReal x12881=((sj0)*(sj4)); +IkReal x12882=((cj5)*(sj6)); +IkReal x12883=((sj4)*(sj5)); +IkReal x12884=((r12)*(sj5)); +IkReal x12885=((IkReal(0.374290000000000))*(cj5)); +IkReal x12886=((r02)*(sj0)); +IkReal x12887=((r20)*(sj4)); +IkReal x12888=((IkReal(1.00000000000000))*(sj0)); +IkReal x12889=((IkReal(1.00000000000000))*(cj5)); +IkReal x12890=((cj0)*(r10)); +IkReal x12891=((cj4)*(cj6)); +IkReal x12892=((r00)*(sj0)); +IkReal x12893=((cj6)*(r21)); +IkReal x12894=((IkReal(0.374290000000000))*(sj5)); +IkReal x12895=((cj0)*(r00)); +IkReal x12896=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12897=((cj0)*(r02)); +IkReal x12898=((cj5)*(sj4)); +IkReal x12899=((cj6)*(r01)); +IkReal x12900=((cj6)*(r11)); +IkReal x12901=((r01)*(sj0)); +IkReal x12902=((r10)*(sj0)); +IkReal x12903=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x12904=((sj6)*(x12894)); +IkReal x12905=((cj0)*(cj6)*(x12894)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x12893)))+(((IkReal(-1.00000000000000))*(r22)*(x12889)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x12891)))+(((x12882)*(x12887)))+(((x12893)*(x12898)))+(((r21)*(x12880)))+(((r22)*(x12883)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x12896)))+(((IkReal(-0.0100000000000000))*(r20)*(x12882)))+(((x12893)*(x12894)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x12885)))+(((IkReal(-0.0100000000000000))*(cj5)*(x12893)))+(((r20)*(x12904)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x12891)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x12887)))+(((cj5)*(r20)*(x12880)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12879)*(x12898)*(x12900)))+(((IkReal(-1.00000000000000))*(r00)*(x12888)*(x12891)))+(((IkReal(-1.00000000000000))*(r12)*(x12879)*(x12883)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12879)*(x12882)))+(((r00)*(x12881)*(x12882)))+(((r02)*(sj5)*(x12881)))+(((cj5)*(x12881)*(x12899)))+(((x12890)*(x12891)))+(((IkReal(-1.00000000000000))*(r11)*(x12879)*(x12880)))+(((x12880)*(x12901)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x12879)*(x12898)*(x12899)))+(((IkReal(-1.00000000000000))*(x12881)*(x12884)))+(((IkReal(-1.00000000000000))*(x12881)*(x12889)*(x12900)))+(((x12891)*(x12902)))+(((IkReal(-1.00000000000000))*(r11)*(x12880)*(x12888)))+(((IkReal(-1.00000000000000))*(r02)*(x12879)*(x12883)))+(((IkReal(-1.00000000000000))*(r01)*(x12879)*(x12880)))+(((x12891)*(x12895)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12879)*(x12882)))+(((IkReal(-1.00000000000000))*(r10)*(x12881)*(x12882)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((cj0)*(r12)*(x12885)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x12899)))+(((IkReal(-1.00000000000000))*(py)*(x12879)))+(((IkReal(-1.00000000000000))*(x12890)*(x12904)))+(((sj0)*(x12894)*(x12899)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12900)))+(((IkReal(-0.0100000000000000))*(x12882)*(x12892)))+(((IkReal(0.0100000000000000))*(cj0)*(x12884)))+(((x12892)*(x12904)))+(((IkReal(-1.00000000000000))*(cj0)*(x12894)*(x12900)))+(((IkReal(-1.00000000000000))*(x12886)*(x12896)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(x12882)*(x12890)))+(((IkReal(-1.00000000000000))*(x12885)*(x12886)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x12900)))+(((IkReal(0.0100000000000000))*(x12882)*(x12902)))+(((x12896)*(x12897)))+(((IkReal(-1.00000000000000))*(x12902)*(x12904)))+(((x12885)*(x12897)))+(((IkReal(-1.00000000000000))*(x12895)*(x12904)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12899)))+(((IkReal(-1.00000000000000))*(cj0)*(x12894)*(x12899)))+(((IkReal(0.0100000000000000))*(sj0)*(x12884)))+(((IkReal(-1.00000000000000))*(py)*(x12888)))+(((r12)*(sj0)*(x12885)))+(((IkReal(-1.00000000000000))*(px)*(x12879)))+(((IkReal(-1.00000000000000))*(sj0)*(x12894)*(x12900)))+(((IkReal(0.0100000000000000))*(x12882)*(x12895)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12906=((IkReal(1.00000000000000))*(cj5)); +IkReal x12907=((r10)*(sj5)*(sj6)); +IkReal x12908=((cj6)*(sj0)*(sj5)); +IkReal x12909=((r00)*(sj5)*(sj6)); +IkReal x12910=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj0)*(x12909)))+(((IkReal(-1.00000000000000))*(r01)*(x12908)))+(((cj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12906)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x12910))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12906)))+(((r11)*(x12908)))+(((r01)*(x12910)))+(((sj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12906)))+(((cj0)*(x12909))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj0)*(x12909)))+(((IkReal(-1.00000000000000))*(r01)*(x12908)))+(((cj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12906)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x12910)))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12906)))+(((r11)*(x12908)))+(((r01)*(x12910)))+(((sj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12906)))+(((cj0)*(x12909)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj0)*(x12909)))+(((IkReal(-1.00000000000000))*(r01)*(x12908)))+(((cj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12906)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x12910)))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12906)))+(((r11)*(x12908)))+(((r01)*(x12910)))+(((sj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12906)))+(((cj0)*(x12909))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12911=IKcos(j3); +IkReal x12912=IKsin(j3); +IkReal x12913=((sj0)*(sj5)); +IkReal x12914=((r00)*(sj6)); +IkReal x12915=((IkReal(1.00000000000000))*(cj4)); +IkReal x12916=((cj6)*(sj0)); +IkReal x12917=((r00)*(sj4)); +IkReal x12918=((cj0)*(cj5)); +IkReal x12919=((cj6)*(r01)); +IkReal x12920=((cj5)*(sj0)); +IkReal x12921=((cj0)*(sj5)); +IkReal x12922=((cj6)*(r11)); +IkReal x12923=((r10)*(sj6)); +IkReal x12924=((r10)*(sj4)); +IkReal x12925=((cj0)*(sj4)*(sj6)); +IkReal x12926=((sj0)*(sj4)*(sj6)); +IkReal x12927=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12921)*(x12922)))+(((x12913)*(x12919)))+(((IkReal(-1.00000000000000))*(x12921)*(x12923)))+(x12912)+(((r12)*(x12918)))+(((IkReal(-1.00000000000000))*(r02)*(x12920)))+(((x12913)*(x12914)))); +evalcond[1]=((((r12)*(x12920)))+(((IkReal(-1.00000000000000))*(x12913)*(x12922)))+(((IkReal(-1.00000000000000))*(x12913)*(x12923)))+(((IkReal(-1.00000000000000))*(x12919)*(x12921)))+(x12911)+(((IkReal(-1.00000000000000))*(x12914)*(x12921)))+(((r02)*(x12918)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x12926)))+(((cj4)*(x12914)*(x12920)))+(((IkReal(-1.00000000000000))*(x12924)*(x12927)))+(((IkReal(-1.00000000000000))*(x12911)))+(((r11)*(x12925)))+(((cj4)*(r02)*(x12913)))+(((IkReal(-1.00000000000000))*(x12915)*(x12918)*(x12922)))+(((x12916)*(x12917)))+(((IkReal(-1.00000000000000))*(r12)*(x12915)*(x12921)))+(((cj4)*(cj5)*(r01)*(x12916)))+(((IkReal(-1.00000000000000))*(x12915)*(x12918)*(x12923)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12915)*(x12916)))+(((IkReal(-1.00000000000000))*(x12914)*(x12915)*(x12918)))+(((r11)*(x12926)))+(((IkReal(-1.00000000000000))*(x12915)*(x12920)*(x12923)))+(((IkReal(-1.00000000000000))*(x12917)*(x12927)))+(((IkReal(-1.00000000000000))*(x12916)*(x12924)))+(x12912)+(((IkReal(-1.00000000000000))*(r02)*(x12915)*(x12921)))+(((r01)*(x12925)))+(((IkReal(-1.00000000000000))*(x12915)*(x12918)*(x12919)))+(((IkReal(-1.00000000000000))*(r12)*(x12913)*(x12915)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12928=((sj0)*(sj5)); +IkReal x12929=((r00)*(sj6)); +IkReal x12930=((IkReal(1.00000000000000))*(cj5)); +IkReal x12931=((cj6)*(r11)); +IkReal x12932=((cj6)*(r01)); +IkReal x12933=((cj0)*(sj5)); +IkReal x12934=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x12931)*(x12933)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12930)))+(((x12928)*(x12929)))+(((x12928)*(x12932)))+(((IkReal(-1.00000000000000))*(x12933)*(x12934))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12930)))+(((x12928)*(x12934)))+(((x12929)*(x12933)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12930)))+(((x12928)*(x12931)))+(((x12932)*(x12933))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x12931)*(x12933)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12930)))+(((x12928)*(x12929)))+(((x12928)*(x12932)))+(((IkReal(-1.00000000000000))*(x12933)*(x12934)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12930)))+(((x12928)*(x12934)))+(((x12929)*(x12933)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12930)))+(((x12928)*(x12931)))+(((x12932)*(x12933)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x12931)*(x12933)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12930)))+(((x12928)*(x12929)))+(((x12928)*(x12932)))+(((IkReal(-1.00000000000000))*(x12933)*(x12934)))))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12930)))+(((x12928)*(x12934)))+(((x12929)*(x12933)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12930)))+(((x12928)*(x12931)))+(((x12932)*(x12933))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12935=IKsin(j3); +IkReal x12936=IKcos(j3); +IkReal x12937=((sj0)*(sj5)); +IkReal x12938=((r00)*(sj6)); +IkReal x12939=((IkReal(1.00000000000000))*(cj4)); +IkReal x12940=((cj6)*(r01)); +IkReal x12941=((cj0)*(cj5)); +IkReal x12942=((cj5)*(sj0)); +IkReal x12943=((cj6)*(r11)); +IkReal x12944=((cj6)*(sj4)); +IkReal x12945=((cj0)*(sj5)); +IkReal x12946=((cj4)*(cj5)); +IkReal x12947=((cj6)*(r21)); +IkReal x12948=((r20)*(sj6)); +IkReal x12949=((r10)*(sj6)); +IkReal x12950=((IkReal(1.00000000000000))*(cj0)); +IkReal x12951=((cj0)*(sj4)*(sj6)); +IkReal x12952=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12947)))+(((sj5)*(x12948)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x12935)))); +evalcond[1]=((((x12946)*(x12947)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12946)*(x12948)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12944)))+(((IkReal(-1.00000000000000))*(cj2)*(x12936)))); +evalcond[2]=((((r12)*(x12941)))+(((IkReal(-1.00000000000000))*(r02)*(x12942)))+(((x12937)*(x12940)))+(((x12937)*(x12938)))+(((IkReal(-1.00000000000000))*(x12943)*(x12945)))+(((IkReal(-1.00000000000000))*(x12945)*(x12949)))+(((IkReal(-1.00000000000000))*(sj2)*(x12935)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12937)*(x12943)))+(x12936)+(((r12)*(x12942)))+(((IkReal(-1.00000000000000))*(x12937)*(x12949)))+(((IkReal(-1.00000000000000))*(x12938)*(x12945)))+(((IkReal(-1.00000000000000))*(x12940)*(x12945)))+(((r02)*(x12941)))); +evalcond[4]=((((sj2)*(x12936)))+(((cj4)*(r02)*(x12937)))+(((cj4)*(x12940)*(x12942)))+(((r11)*(x12951)))+(((IkReal(-1.00000000000000))*(x12939)*(x12941)*(x12949)))+(((IkReal(-1.00000000000000))*(r12)*(x12939)*(x12945)))+(((IkReal(-1.00000000000000))*(r10)*(x12944)*(x12950)))+(((cj4)*(x12938)*(x12942)))+(((IkReal(-1.00000000000000))*(r01)*(x12952)))+(((r00)*(sj0)*(x12944)))+(((IkReal(-1.00000000000000))*(x12939)*(x12941)*(x12943)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x12944)*(x12950)))+(((r11)*(x12952)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12944)))+(((IkReal(-1.00000000000000))*(x12939)*(x12942)*(x12943)))+(((IkReal(-1.00000000000000))*(x12938)*(x12939)*(x12941)))+(x12935)+(((IkReal(-1.00000000000000))*(x12939)*(x12942)*(x12949)))+(((IkReal(-1.00000000000000))*(x12939)*(x12940)*(x12941)))+(((IkReal(-1.00000000000000))*(r12)*(x12937)*(x12939)))+(((IkReal(-1.00000000000000))*(r02)*(x12939)*(x12945)))+(((r01)*(x12951)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12953=((cj6)*(sj5)); +IkReal x12954=((IkReal(1.00000000000000))*(cj5)); +IkReal x12955=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x12953)))+(((IkReal(-1.00000000000000))*(r20)*(x12955)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r11)*(sj0)*(x12953)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12954)))+(((cj0)*(r01)*(x12953)))+(((r10)*(sj0)*(x12955)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12954)))+(((cj0)*(r00)*(x12955))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x12953)))+(((IkReal(-1.00000000000000))*(r20)*(x12955)))+(((cj5)*(r22)))))))+IKsqr(((((r11)*(sj0)*(x12953)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12954)))+(((cj0)*(r01)*(x12953)))+(((r10)*(sj0)*(x12955)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12954)))+(((cj0)*(r00)*(x12955)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x12953)))+(((IkReal(-1.00000000000000))*(r20)*(x12955)))+(((cj5)*(r22)))))), ((((r11)*(sj0)*(x12953)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12954)))+(((cj0)*(r01)*(x12953)))+(((r10)*(sj0)*(x12955)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12954)))+(((cj0)*(r00)*(x12955))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12956=IKsin(j3); +IkReal x12957=IKcos(j3); +IkReal x12958=((sj0)*(sj5)); +IkReal x12959=((r00)*(sj6)); +IkReal x12960=((IkReal(1.00000000000000))*(cj4)); +IkReal x12961=((cj6)*(r01)); +IkReal x12962=((cj0)*(cj5)); +IkReal x12963=((cj5)*(sj0)); +IkReal x12964=((cj6)*(r11)); +IkReal x12965=((cj6)*(sj4)); +IkReal x12966=((cj0)*(sj5)); +IkReal x12967=((cj4)*(cj5)); +IkReal x12968=((cj6)*(r21)); +IkReal x12969=((r20)*(sj6)); +IkReal x12970=((r10)*(sj6)); +IkReal x12971=((IkReal(1.00000000000000))*(cj0)); +IkReal x12972=((cj0)*(sj4)*(sj6)); +IkReal x12973=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj2)*(x12956)))+(((sj5)*(x12968)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12969)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj2)*(x12957)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12967)*(x12968)))+(((cj4)*(r22)*(sj5)))+(((x12967)*(x12969)))+(((r20)*(x12965)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x12956)))+(((IkReal(-1.00000000000000))*(x12966)*(x12970)))+(((IkReal(-1.00000000000000))*(x12964)*(x12966)))+(((x12958)*(x12959)))+(((x12958)*(x12961)))+(((IkReal(-1.00000000000000))*(r02)*(x12963)))+(((r12)*(x12962)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12958)*(x12964)))+(((r12)*(x12963)))+(((IkReal(-1.00000000000000))*(x12961)*(x12966)))+(((r02)*(x12962)))+(((IkReal(-1.00000000000000))*(x12958)*(x12970)))+(((IkReal(-1.00000000000000))*(x12959)*(x12966)))+(x12957)); +evalcond[4]=((((IkReal(-1.00000000000000))*(x12960)*(x12962)*(x12970)))+(((cj4)*(r02)*(x12958)))+(((IkReal(-1.00000000000000))*(r10)*(x12965)*(x12971)))+(((IkReal(-1.00000000000000))*(x12960)*(x12962)*(x12964)))+(((r00)*(sj0)*(x12965)))+(((cj4)*(x12959)*(x12963)))+(((cj4)*(x12961)*(x12963)))+(((IkReal(-1.00000000000000))*(r12)*(x12960)*(x12966)))+(((IkReal(-1.00000000000000))*(r01)*(x12973)))+(((sj2)*(x12957)))+(((r11)*(x12972)))); +evalcond[5]=((((r11)*(x12973)))+(((r01)*(x12972)))+(((IkReal(-1.00000000000000))*(x12960)*(x12961)*(x12962)))+(((IkReal(-1.00000000000000))*(x12960)*(x12963)*(x12964)))+(((IkReal(-1.00000000000000))*(r12)*(x12958)*(x12960)))+(((IkReal(-1.00000000000000))*(r00)*(x12965)*(x12971)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12965)))+(((IkReal(-1.00000000000000))*(x12959)*(x12960)*(x12962)))+(((IkReal(-1.00000000000000))*(x12960)*(x12963)*(x12970)))+(x12956)+(((IkReal(-1.00000000000000))*(r02)*(x12960)*(x12966)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12974=((IkReal(1.00000000000000))*(r21)); +IkReal x12975=((cj4)*(cj5)); +IkReal x12976=((r20)*(sj6)); +if( IKabs(((gconst10)*(((((IkReal(-1.00000000000000))*(sj5)*(x12976)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12974)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst10)*(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12974)))+(((cj6)*(r21)*(x12975)))+(((x12975)*(x12976))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst10)*(((((IkReal(-1.00000000000000))*(sj5)*(x12976)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12974)))+(((cj5)*(r22)))))), ((gconst10)*(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12974)))+(((cj6)*(r21)*(x12975)))+(((x12975)*(x12976))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12977=IKsin(j3); +IkReal x12978=IKcos(j3); +IkReal x12979=((sj0)*(sj5)); +IkReal x12980=((r00)*(sj6)); +IkReal x12981=((IkReal(1.00000000000000))*(cj4)); +IkReal x12982=((cj6)*(r01)); +IkReal x12983=((cj0)*(cj5)); +IkReal x12984=((cj5)*(sj0)); +IkReal x12985=((cj6)*(r11)); +IkReal x12986=((cj6)*(sj4)); +IkReal x12987=((cj0)*(sj5)); +IkReal x12988=((cj4)*(cj5)); +IkReal x12989=((cj6)*(r21)); +IkReal x12990=((r20)*(sj6)); +IkReal x12991=((r10)*(sj6)); +IkReal x12992=((IkReal(1.00000000000000))*(cj0)); +IkReal x12993=((cj0)*(sj4)*(sj6)); +IkReal x12994=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12990)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12989)))+(((cj2)*(x12977)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj2)*(x12978)))+(((x12988)*(x12989)))+(((cj4)*(r22)*(sj5)))+(((x12988)*(x12990)))+(((r20)*(x12986)))); +evalcond[2]=((((r12)*(x12983)))+(((x12979)*(x12982)))+(((IkReal(-1.00000000000000))*(x12987)*(x12991)))+(((x12979)*(x12980)))+(((IkReal(-1.00000000000000))*(sj2)*(x12977)))+(((IkReal(-1.00000000000000))*(r02)*(x12984)))+(((IkReal(-1.00000000000000))*(x12985)*(x12987)))); +evalcond[3]=((((r02)*(x12983)))+(((IkReal(-1.00000000000000))*(x12982)*(x12987)))+(x12978)+(((IkReal(-1.00000000000000))*(x12979)*(x12991)))+(((IkReal(-1.00000000000000))*(x12979)*(x12985)))+(((IkReal(-1.00000000000000))*(x12980)*(x12987)))+(((r12)*(x12984)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x12981)*(x12983)*(x12985)))+(((IkReal(-1.00000000000000))*(r12)*(x12981)*(x12987)))+(((sj2)*(x12978)))+(((cj4)*(x12980)*(x12984)))+(((cj4)*(r02)*(x12979)))+(((IkReal(-1.00000000000000))*(r10)*(x12986)*(x12992)))+(((IkReal(-1.00000000000000))*(x12981)*(x12983)*(x12991)))+(((cj4)*(x12982)*(x12984)))+(((IkReal(-1.00000000000000))*(r01)*(x12994)))+(((r11)*(x12993)))+(((r00)*(sj0)*(x12986)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12980)*(x12981)*(x12983)))+(((r01)*(x12993)))+(((r11)*(x12994)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12986)))+(((IkReal(-1.00000000000000))*(x12981)*(x12984)*(x12985)))+(x12977)+(((IkReal(-1.00000000000000))*(r02)*(x12981)*(x12987)))+(((IkReal(-1.00000000000000))*(x12981)*(x12984)*(x12991)))+(((IkReal(-1.00000000000000))*(x12981)*(x12982)*(x12983)))+(((IkReal(-1.00000000000000))*(r00)*(x12986)*(x12992)))+(((IkReal(-1.00000000000000))*(r12)*(x12979)*(x12981)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x12995=((IkReal(1.00000000000000))*(cj0)); +IkReal x12996=((cj4)*(sj6)); +IkReal x12997=((sj0)*(sj4)); +IkReal x12998=((cj5)*(sj6)); +IkReal x12999=((sj4)*(sj5)); +IkReal x13000=((r12)*(sj5)); +IkReal x13001=((IkReal(0.374290000000000))*(cj5)); +IkReal x13002=((r02)*(sj0)); +IkReal x13003=((IkReal(1.00000000000000))*(sj0)); +IkReal x13004=((cj0)*(r10)); +IkReal x13005=((cj4)*(cj6)); +IkReal x13006=((r00)*(sj0)); +IkReal x13007=((cj6)*(r21)); +IkReal x13008=((IkReal(0.374290000000000))*(sj5)); +IkReal x13009=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13010=((cj0)*(r02)); +IkReal x13011=((cj5)*(sj4)); +IkReal x13012=((cj6)*(r01)); +IkReal x13013=((cj0)*(r00)); +IkReal x13014=((cj6)*(r11)); +IkReal x13015=((r01)*(sj0)); +IkReal x13016=((r10)*(sj0)); +IkReal x13017=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x13018=((sj6)*(x13008)); +IkReal x13019=((cj0)*(cj6)*(x13008)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x13007)*(x13011)))+(((r21)*(x12996)))+(((r20)*(sj4)*(x12998)))+(((IkReal(-1.00000000000000))*(cj1)))+(((r22)*(x12999)))+(((IkReal(-1.00000000000000))*(r20)*(x13005)))); +evalcond[2]=((((IkReal(-0.0100000000000000))*(cj5)*(x13007)))+(((x13007)*(x13008)))+(((r20)*(x13018)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x13009)))+(((IkReal(-1.00000000000000))*(r22)*(x13001)))+(((IkReal(-0.0100000000000000))*(r20)*(x12998)))+(pz)); +evalcond[3]=((((r00)*(x12997)*(x12998)))+(((r02)*(sj5)*(x12997)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12995)*(x12998)))+(((IkReal(-1.00000000000000))*(r11)*(x12995)*(x12996)))+(((x12996)*(x13015)))+(((x13004)*(x13005)))+(((IkReal(-1.00000000000000))*(r12)*(x12995)*(x12999)))+(((IkReal(-1.00000000000000))*(x12995)*(x13011)*(x13014)))+(((IkReal(-1.00000000000000))*(r00)*(x13003)*(x13005)))+(((cj5)*(x12997)*(x13012)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r02)*(x12995)*(x12999)))+(((IkReal(-1.00000000000000))*(x12997)*(x13000)))+(((IkReal(-1.00000000000000))*(r01)*(x12995)*(x12996)))+(sj1)+(((IkReal(-1.00000000000000))*(r11)*(x12996)*(x13003)))+(((x13005)*(x13016)))+(((x13005)*(x13013)))+(((IkReal(-1.00000000000000))*(r10)*(x12997)*(x12998)))+(((IkReal(-1.00000000000000))*(x12995)*(x13011)*(x13012)))+(((IkReal(-1.00000000000000))*(cj5)*(x12997)*(x13014)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12995)*(x12998)))); +evalcond[5]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x13014)))+(((IkReal(-1.00000000000000))*(py)*(x12995)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x13012)))+(((IkReal(-0.0100000000000000))*(x12998)*(x13006)))+(((IkReal(-1.00000000000000))*(x13002)*(x13009)))+(((IkReal(-1.00000000000000))*(cj0)*(x13008)*(x13014)))+(((IkReal(-1.00000000000000))*(x13001)*(x13002)))+(((cj0)*(r12)*(x13001)))+(((IkReal(-1.00000000000000))*(x13004)*(x13018)))+(((IkReal(0.0100000000000000))*(x12998)*(x13004)))+(((x13006)*(x13018)))+(((sj0)*(x13008)*(x13012)))+(((IkReal(0.0100000000000000))*(cj0)*(x13000)))+(((px)*(sj0)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x13008)*(x13012)))+(((IkReal(-1.00000000000000))*(py)*(x13003)))+(((IkReal(0.0100000000000000))*(x12998)*(x13016)))+(((IkReal(0.0100000000000000))*(x12998)*(x13013)))+(((IkReal(-1.00000000000000))*(x13013)*(x13018)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x13012)))+(((IkReal(-1.00000000000000))*(x13016)*(x13018)))+(((r12)*(sj0)*(x13001)))+(((x13001)*(x13010)))+(((IkReal(-1.00000000000000))*(px)*(x12995)))+(((IkReal(0.0100000000000000))*(sj0)*(x13000)))+(((x13009)*(x13010)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(sj0)*(x13008)*(x13014)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x13014)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst11; +gconst11=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x13020=((IkReal(1.00000000000000))*(cj0)); +IkReal x13021=((cj4)*(sj6)); +IkReal x13022=((sj0)*(sj6)); +IkReal x13023=((cj5)*(sj4)); +IkReal x13024=((IkReal(0.374290000000000))*(sj5)); +IkReal x13025=((sj4)*(sj5)); +IkReal x13026=((cj0)*(cj6)); +IkReal x13027=((IkReal(0.0100000000000000))*(cj5)); +IkReal x13028=((cj4)*(sj5)); +IkReal x13029=((cj5)*(sj0)); +IkReal x13030=((IkReal(0.374290000000000))*(r02)); +IkReal x13031=((r20)*(sj6)); +IkReal x13032=((cj6)*(r21)); +IkReal x13033=((IkReal(1.00000000000000))*(sj0)); +IkReal x13034=((cj0)*(sj6)); +IkReal x13035=((cj4)*(cj6)); +IkReal x13036=((IkReal(0.374290000000000))*(r12)); +IkReal x13037=((cj0)*(cj5)); +IkReal x13038=((cj6)*(sj5)); +IkReal x13039=((cj6)*(r01)); +IkReal x13040=((r00)*(sj6)); +IkReal x13041=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13042=((cj6)*(r11)); +IkReal x13043=((IkReal(1.00000000000000))*(r10)); +IkReal x13044=((r02)*(sj0)); +IkReal x13045=((cj6)*(sj4)); +IkReal x13046=((r12)*(x13033)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x13025)))+(((IkReal(-1.00000000000000))*(r20)*(x13035)))+(((x13023)*(x13031)))+(((r21)*(x13021)))+(((x13023)*(x13032)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x13024)*(x13031)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x13027)*(x13031)))+(pz)+(((IkReal(-1.00000000000000))*(x13027)*(x13032)))+(((x13024)*(x13032)))+(((IkReal(-1.00000000000000))*(r22)*(x13041)))); +evalcond[3]=((((r12)*(x13029)))+(((IkReal(-1.00000000000000))*(sj5)*(x13020)*(x13040)))+(((IkReal(-1.00000000000000))*(r11)*(x13033)*(x13038)))+(((r02)*(x13037)))+(((IkReal(-1.00000000000000))*(r01)*(x13020)*(x13038)))+(((IkReal(-1.00000000000000))*(sj5)*(x13022)*(x13043)))); +evalcond[4]=((((x13025)*(x13044)))+(((IkReal(-1.00000000000000))*(r11)*(x13020)*(x13021)))+(((cj4)*(r10)*(x13026)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x13020)*(x13023)))+(((r00)*(x13022)*(x13023)))+(((r01)*(sj0)*(x13021)))+(((IkReal(-1.00000000000000))*(x13020)*(x13023)*(x13042)))+(((IkReal(-1.00000000000000))*(r00)*(x13033)*(x13035)))+(((sj0)*(x13023)*(x13039)))+(((IkReal(-1.00000000000000))*(r12)*(x13020)*(x13025)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x13020)*(x13023)*(x13040)))+(((IkReal(-1.00000000000000))*(x13025)*(x13046)))+(((IkReal(-1.00000000000000))*(r02)*(x13020)*(x13025)))+(((IkReal(-1.00000000000000))*(r01)*(x13020)*(x13021)))+(((cj4)*(r00)*(x13026)))+(((IkReal(-1.00000000000000))*(x13023)*(x13033)*(x13042)))+(((IkReal(-1.00000000000000))*(x13020)*(x13023)*(x13039)))+(((r10)*(sj0)*(x13035)))+(((IkReal(-1.00000000000000))*(x13022)*(x13023)*(x13043)))+(((IkReal(-1.00000000000000))*(r11)*(x13021)*(x13033)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r11)*(x13026)*(x13027)))+(((IkReal(-1.00000000000000))*(x13041)*(x13044)))+(((IkReal(-1.00000000000000))*(r00)*(x13022)*(x13027)))+(((IkReal(-1.00000000000000))*(r11)*(x13024)*(x13026)))+(((r00)*(x13022)*(x13024)))+(((IkReal(-1.00000000000000))*(sj0)*(x13027)*(x13039)))+(((IkReal(-1.00000000000000))*(r10)*(x13024)*(x13034)))+(((IkReal(-1.00000000000000))*(x13029)*(x13030)))+(((IkReal(-1.00000000000000))*(py)*(x13020)))+(((sj0)*(x13024)*(x13039)))+(((cj0)*(r12)*(x13041)))+(((x13036)*(x13037)))+(((r10)*(x13027)*(x13034)))+(((px)*(sj0)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x13020)*(x13045)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x13020)*(x13021)))+(((r11)*(sj4)*(x13022)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x13020)*(x13035)))+(((IkReal(-1.00000000000000))*(x13021)*(x13029)*(x13043)))+(((IkReal(-1.00000000000000))*(r10)*(x13033)*(x13045)))+(((r01)*(sj4)*(x13034)))+(((IkReal(-1.00000000000000))*(r11)*(x13029)*(x13035)))+(((IkReal(-1.00000000000000))*(x13028)*(x13046)))+(((IkReal(-1.00000000000000))*(r02)*(x13020)*(x13028)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((x13030)*(x13037)))+(((r00)*(x13027)*(x13034)))+(((r10)*(x13022)*(x13027)))+(((IkReal(-1.00000000000000))*(px)*(x13020)))+(((IkReal(-1.00000000000000))*(r00)*(x13024)*(x13034)))+(((IkReal(-1.00000000000000))*(r10)*(x13022)*(x13024)))+(((cj0)*(r02)*(x13041)))+(((x13029)*(x13036)))+(((r12)*(sj0)*(x13041)))+(((sj0)*(x13027)*(x13042)))+(((r01)*(x13026)*(x13027)))+(((IkReal(-1.00000000000000))*(sj0)*(x13024)*(x13042)))+(((IkReal(-1.00000000000000))*(r01)*(x13024)*(x13026)))+(((IkReal(-1.00000000000000))*(py)*(x13033)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13047=((r20)*(sj6)); +IkReal x13048=((cj4)*(cj5)); +IkReal x13049=((cj6)*(r21)); +if( IKabs(((((x13047)*(x13048)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13048)*(x13049))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13047)))+(((sj5)*(x13049))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x13047)*(x13048)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13048)*(x13049)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13047)))+(((sj5)*(x13049)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x13047)*(x13048)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13048)*(x13049)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13047)))+(((sj5)*(x13049))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x13050=IKcos(j3); +IkReal x13051=((sj0)*(sj5)); +IkReal x13052=((r00)*(sj6)); +IkReal x13053=((cj6)*(r01)); +IkReal x13054=((cj5)*(sj0)); +IkReal x13055=((cj0)*(cj5)); +IkReal x13056=((cj6)*(sj4)); +IkReal x13057=((sj4)*(sj6)); +IkReal x13058=((cj0)*(r11)); +IkReal x13059=((cj4)*(cj6)); +IkReal x13060=((cj4)*(sj6)); +IkReal x13061=((IkReal(1.00000000000000))*(cj0)); +IkReal x13062=((cj4)*(sj5)); +IkReal x13063=((sj5)*(sj6)); +IkReal x13064=((cj6)*(sj5)); +IkReal x13065=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13050)))+(((r21)*(x13064)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x13063)))); +evalcond[1]=((((r22)*(x13062)))+(((IkReal(-1.00000000000000))*(r21)*(x13057)))+(((IkReal(-1.00000000000000))*(x13065)))+(((r20)*(x13056)))+(((cj5)*(r20)*(x13060)))+(((cj5)*(r21)*(x13059)))); +evalcond[2]=((((r12)*(x13055)))+(((x13051)*(x13052)))+(((IkReal(-1.00000000000000))*(x13058)*(x13064)))+(((x13051)*(x13053)))+(((IkReal(-1.00000000000000))*(x13065)))+(((IkReal(-1.00000000000000))*(r10)*(x13061)*(x13063)))+(((IkReal(-1.00000000000000))*(r02)*(x13054)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(sj0)*(x13057)))+(((x13057)*(x13058)))+(((r00)*(sj0)*(x13056)))+(((IkReal(-1.00000000000000))*(r10)*(x13056)*(x13061)))+(((IkReal(-1.00000000000000))*(r12)*(x13061)*(x13062)))+(((cj4)*(r02)*(x13051)))+(((IkReal(-1.00000000000000))*(r11)*(x13055)*(x13059)))+(((IkReal(-1.00000000000000))*(r10)*(x13055)*(x13060)))+(((cj4)*(x13053)*(x13054)))+(x13050)+(((cj4)*(x13052)*(x13054)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x13066=((IkReal(1.00000000000000))*(cj0)); +IkReal x13067=((cj4)*(sj6)); +IkReal x13068=((sj0)*(sj6)); +IkReal x13069=((cj5)*(sj4)); +IkReal x13070=((IkReal(0.374290000000000))*(sj5)); +IkReal x13071=((sj4)*(sj5)); +IkReal x13072=((cj0)*(cj6)); +IkReal x13073=((IkReal(0.0100000000000000))*(cj5)); +IkReal x13074=((cj4)*(sj5)); +IkReal x13075=((cj5)*(sj0)); +IkReal x13076=((IkReal(0.374290000000000))*(r02)); +IkReal x13077=((r20)*(sj6)); +IkReal x13078=((cj6)*(r21)); +IkReal x13079=((IkReal(1.00000000000000))*(sj0)); +IkReal x13080=((cj0)*(sj6)); +IkReal x13081=((cj4)*(cj6)); +IkReal x13082=((IkReal(0.374290000000000))*(r12)); +IkReal x13083=((cj0)*(cj5)); +IkReal x13084=((cj6)*(sj5)); +IkReal x13085=((cj6)*(r01)); +IkReal x13086=((r00)*(sj6)); +IkReal x13087=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13088=((cj6)*(r11)); +IkReal x13089=((IkReal(1.00000000000000))*(r10)); +IkReal x13090=((r02)*(sj0)); +IkReal x13091=((cj6)*(sj4)); +IkReal x13092=((r12)*(x13079)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x13069)*(x13078)))+(((r22)*(x13071)))+(((IkReal(-1.00000000000000))*(r20)*(x13081)))+(((x13069)*(x13077)))+(((r21)*(x13067)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x13073)*(x13077)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x13087)))+(((x13070)*(x13078)))+(((IkReal(-1.00000000000000))*(x13073)*(x13078)))+(pz)+(((x13070)*(x13077)))); +evalcond[3]=((((r02)*(x13083)))+(((IkReal(-1.00000000000000))*(sj5)*(x13066)*(x13086)))+(((IkReal(-1.00000000000000))*(r11)*(x13079)*(x13084)))+(((r12)*(x13075)))+(((IkReal(-1.00000000000000))*(r01)*(x13066)*(x13084)))+(((IkReal(-1.00000000000000))*(sj5)*(x13068)*(x13089)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x13066)*(x13069)*(x13088)))+(((r01)*(sj0)*(x13067)))+(((IkReal(-1.00000000000000))*(r11)*(x13066)*(x13067)))+(((sj0)*(x13069)*(x13085)))+(((x13071)*(x13090)))+(((IkReal(-1.00000000000000))*(r00)*(x13079)*(x13081)))+(((r00)*(x13068)*(x13069)))+(((IkReal(-1.00000000000000))*(r12)*(x13066)*(x13071)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x13066)*(x13069)))+(((cj4)*(r10)*(x13072)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((r10)*(sj0)*(x13081)))+(((IkReal(-1.00000000000000))*(x13071)*(x13092)))+(((IkReal(-1.00000000000000))*(r11)*(x13067)*(x13079)))+(((IkReal(-1.00000000000000))*(x13068)*(x13069)*(x13089)))+(((cj4)*(r00)*(x13072)))+(((IkReal(-1.00000000000000))*(x13069)*(x13079)*(x13088)))+(((IkReal(-1.00000000000000))*(x13066)*(x13069)*(x13085)))+(((IkReal(-1.00000000000000))*(x13066)*(x13069)*(x13086)))+(((IkReal(-1.00000000000000))*(r01)*(x13066)*(x13067)))+(((IkReal(-1.00000000000000))*(r02)*(x13066)*(x13071)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r10)*(x13073)*(x13080)))+(((IkReal(-1.00000000000000))*(py)*(x13066)))+(((IkReal(-1.00000000000000))*(r10)*(x13070)*(x13080)))+(((IkReal(-1.00000000000000))*(sj0)*(x13073)*(x13085)))+(((IkReal(-1.00000000000000))*(x13075)*(x13076)))+(((IkReal(-1.00000000000000))*(r00)*(x13068)*(x13073)))+(((r11)*(x13072)*(x13073)))+(((IkReal(-1.00000000000000))*(x13087)*(x13090)))+(((x13082)*(x13083)))+(((cj0)*(r12)*(x13087)))+(((IkReal(-1.00000000000000))*(r11)*(x13070)*(x13072)))+(((r00)*(x13068)*(x13070)))+(((sj0)*(x13070)*(x13085)))+(((px)*(sj0)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x13066)*(x13091)))+(((IkReal(-1.00000000000000))*(r11)*(x13075)*(x13081)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x13066)*(x13081)))+(((r11)*(sj4)*(x13068)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x13066)*(x13067)))+(((IkReal(-1.00000000000000))*(r10)*(x13079)*(x13091)))+(((IkReal(-1.00000000000000))*(r02)*(x13066)*(x13074)))+(((r01)*(sj4)*(x13080)))+(((IkReal(-1.00000000000000))*(x13067)*(x13075)*(x13089)))+(((IkReal(-1.00000000000000))*(x13074)*(x13092)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x13066)))+(((r00)*(x13073)*(x13080)))+(((r10)*(x13068)*(x13073)))+(((IkReal(-1.00000000000000))*(r00)*(x13070)*(x13080)))+(((cj0)*(r02)*(x13087)))+(((r01)*(x13072)*(x13073)))+(((x13075)*(x13082)))+(((IkReal(-1.00000000000000))*(sj0)*(x13070)*(x13088)))+(((r12)*(sj0)*(x13087)))+(((IkReal(-1.00000000000000))*(py)*(x13079)))+(((IkReal(-1.00000000000000))*(r01)*(x13070)*(x13072)))+(((x13076)*(x13083)))+(((IkReal(-1.00000000000000))*(r10)*(x13068)*(x13070)))+(((sj0)*(x13073)*(x13088)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13093=((IkReal(1.00000000000000))*(sj5)); +IkReal x13094=((cj6)*(r21)); +IkReal x13095=((r20)*(sj6)); +IkReal x13096=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x13095)*(x13096)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x13094)*(x13096)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13093)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x13093)*(x13094)))+(((IkReal(-1.00000000000000))*(x13093)*(x13095)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x13095)*(x13096)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x13094)*(x13096)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13093)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x13093)*(x13094)))+(((IkReal(-1.00000000000000))*(x13093)*(x13095)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x13095)*(x13096)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x13094)*(x13096)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13093)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x13093)*(x13094)))+(((IkReal(-1.00000000000000))*(x13093)*(x13095)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x13097=IKsin(j3); +IkReal x13098=IKcos(j3); +IkReal x13099=((sj0)*(sj5)); +IkReal x13100=((r00)*(sj6)); +IkReal x13101=((cj6)*(r01)); +IkReal x13102=((cj5)*(sj0)); +IkReal x13103=((cj0)*(cj5)); +IkReal x13104=((cj6)*(sj4)); +IkReal x13105=((sj4)*(sj6)); +IkReal x13106=((cj0)*(r11)); +IkReal x13107=((cj4)*(cj6)); +IkReal x13108=((cj4)*(sj6)); +IkReal x13109=((IkReal(1.00000000000000))*(cj0)); +IkReal x13110=((cj4)*(sj5)); +IkReal x13111=((sj5)*(sj6)); +IkReal x13112=((cj6)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x13111)))+(x13098)+(((r21)*(x13112)))); +evalcond[1]=((((cj5)*(r21)*(x13107)))+(((IkReal(-1.00000000000000))*(r21)*(x13105)))+(((r22)*(x13110)))+(x13097)+(((cj5)*(r20)*(x13108)))+(((r20)*(x13104)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x13102)))+(((IkReal(-1.00000000000000))*(x13106)*(x13112)))+(((x13099)*(x13100)))+(((IkReal(-1.00000000000000))*(r10)*(x13109)*(x13111)))+(((x13099)*(x13101)))+(((IkReal(-1.00000000000000))*(x13097)))+(((r12)*(x13103)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x13103)*(x13108)))+(((cj4)*(r02)*(x13099)))+(((IkReal(-1.00000000000000))*(r11)*(x13103)*(x13107)))+(((IkReal(-1.00000000000000))*(r10)*(x13104)*(x13109)))+(((x13105)*(x13106)))+(((r00)*(sj0)*(x13104)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x13105)))+(((IkReal(-1.00000000000000))*(r12)*(x13109)*(x13110)))+(x13098)+(((cj4)*(x13100)*(x13102)))+(((cj4)*(x13101)*(x13102)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13113=((cj0)*(cj5)); +IkReal x13114=((IkReal(1.00000000000000))*(cj0)); +IkReal x13115=((cj6)*(r11)); +IkReal x13116=((r10)*(sj6)); +IkReal x13117=((cj5)*(sj0)); +IkReal x13118=((r00)*(sj5)*(sj6)); +IkReal x13119=((cj6)*(r01)*(sj5)); +IkReal x13120=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13115)))+(((r12)*(x13113)))+(((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13116)))+(((sj0)*(x13118)))+(((sj0)*(x13119)))+(((IkReal(-1.00000000000000))*(r02)*(x13117))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x13113)))+(((IkReal(-1.00000000000000))*(x13114)*(x13119)))+(((r12)*(x13117)))+(((IkReal(-1.00000000000000))*(x13114)*(x13118)))+(((IkReal(-1.00000000000000))*(x13115)*(x13120)))+(((IkReal(-1.00000000000000))*(x13116)*(x13120))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13115)))+(((r12)*(x13113)))+(((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13116)))+(((sj0)*(x13118)))+(((sj0)*(x13119)))+(((IkReal(-1.00000000000000))*(r02)*(x13117)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x13113)))+(((IkReal(-1.00000000000000))*(x13114)*(x13119)))+(((r12)*(x13117)))+(((IkReal(-1.00000000000000))*(x13114)*(x13118)))+(((IkReal(-1.00000000000000))*(x13115)*(x13120)))+(((IkReal(-1.00000000000000))*(x13116)*(x13120)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13115)))+(((r12)*(x13113)))+(((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13116)))+(((sj0)*(x13118)))+(((sj0)*(x13119)))+(((IkReal(-1.00000000000000))*(r02)*(x13117)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x13113)))+(((IkReal(-1.00000000000000))*(x13114)*(x13119)))+(((r12)*(x13117)))+(((IkReal(-1.00000000000000))*(x13114)*(x13118)))+(((IkReal(-1.00000000000000))*(x13115)*(x13120)))+(((IkReal(-1.00000000000000))*(x13116)*(x13120))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13121=IKsin(j3); +IkReal x13122=IKcos(j3); +IkReal x13123=((sj0)*(sj5)); +IkReal x13124=((r00)*(sj6)); +IkReal x13125=((cj6)*(r01)); +IkReal x13126=((cj4)*(cj5)); +IkReal x13127=((IkReal(1.00000000000000))*(cj0)); +IkReal x13128=((cj5)*(r12)); +IkReal x13129=((IkReal(1.00000000000000))*(sj0)); +IkReal x13130=((cj6)*(r11)); +IkReal x13131=((cj5)*(r02)); +IkReal x13132=((IkReal(1.00000000000000))*(cj1)); +IkReal x13133=((cj6)*(sj4)); +IkReal x13134=((cj6)*(r21)); +IkReal x13135=((r20)*(sj6)); +IkReal x13136=((r10)*(sj6)); +IkReal x13137=((sj4)*(sj6)); +IkReal x13138=((cj4)*(r02)); +IkReal x13139=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x13140=((IkReal(1.00000000000000))*(x13121)); +IkReal x13141=((cj0)*(x13137)); +evalcond[0]=((((sj5)*(x13135)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x13122)))+(((sj5)*(x13134)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x13137)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x13140)))+(((x13126)*(x13134)))+(((x13126)*(x13135)))+(((r20)*(x13133)))); +evalcond[2]=((((cj0)*(x13128)))+(((x13123)*(x13125)))+(((IkReal(-1.00000000000000))*(sj5)*(x13127)*(x13130)))+(((IkReal(-1.00000000000000))*(x13140)))+(((IkReal(-1.00000000000000))*(sj5)*(x13127)*(x13136)))+(((IkReal(-1.00000000000000))*(x13129)*(x13131)))+(((x13123)*(x13124)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13123)*(x13130)))+(((IkReal(-1.00000000000000))*(sj5)*(x13125)*(x13127)))+(((sj0)*(x13128)))+(((IkReal(-1.00000000000000))*(x13123)*(x13136)))+(((cj0)*(x13131)))+(((IkReal(-1.00000000000000))*(sj5)*(x13124)*(x13127)))+(((IkReal(-1.00000000000000))*(x13122)*(x13132)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x13127)*(x13133)))+(((r00)*(sj0)*(x13133)))+(((x13123)*(x13138)))+(((IkReal(-1.00000000000000))*(x13126)*(x13127)*(x13136)))+(((r11)*(x13141)))+(((IkReal(-1.00000000000000))*(x13126)*(x13127)*(x13130)))+(((sj0)*(x13125)*(x13126)))+(((sj0)*(x13124)*(x13126)))+(((IkReal(-1.00000000000000))*(r01)*(x13129)*(x13137)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x13127)))+(x13122)); +evalcond[5]=((((r11)*(sj0)*(x13137)))+(((IkReal(-1.00000000000000))*(x13121)*(x13132)))+(((r01)*(x13141)))+(((IkReal(-1.00000000000000))*(r10)*(x13129)*(x13133)))+(((IkReal(-1.00000000000000))*(x13126)*(x13129)*(x13136)))+(((IkReal(-1.00000000000000))*(x13125)*(x13126)*(x13127)))+(((IkReal(-1.00000000000000))*(x13124)*(x13126)*(x13127)))+(((IkReal(-1.00000000000000))*(x13126)*(x13129)*(x13130)))+(((IkReal(-1.00000000000000))*(sj5)*(x13127)*(x13138)))+(((IkReal(-1.00000000000000))*(x13123)*(x13139)))+(((IkReal(-1.00000000000000))*(r00)*(x13127)*(x13133)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13142=((sj5)*(sj6)); +IkReal x13143=((cj6)*(sj5)); +IkReal x13144=((IkReal(1.00000000000000))*(cj0)); +IkReal x13145=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r11)*(x13143)*(x13144)))+(((r01)*(sj0)*(x13143)))+(((r00)*(sj0)*(x13142)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x13145)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x13142)*(x13144))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13145)))+(((r21)*(x13143)))+(((r20)*(x13142))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r11)*(x13143)*(x13144)))+(((r01)*(sj0)*(x13143)))+(((r00)*(sj0)*(x13142)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x13145)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x13142)*(x13144)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13145)))+(((r21)*(x13143)))+(((r20)*(x13142)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r11)*(x13143)*(x13144)))+(((r01)*(sj0)*(x13143)))+(((r00)*(sj0)*(x13142)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x13145)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x13142)*(x13144)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13145)))+(((r21)*(x13143)))+(((r20)*(x13142))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13146=IKsin(j3); +IkReal x13147=IKcos(j3); +IkReal x13148=((sj0)*(sj5)); +IkReal x13149=((r00)*(sj6)); +IkReal x13150=((cj6)*(r01)); +IkReal x13151=((cj4)*(cj5)); +IkReal x13152=((IkReal(1.00000000000000))*(cj0)); +IkReal x13153=((cj5)*(r12)); +IkReal x13154=((IkReal(1.00000000000000))*(sj0)); +IkReal x13155=((cj6)*(r11)); +IkReal x13156=((cj5)*(r02)); +IkReal x13157=((IkReal(1.00000000000000))*(cj1)); +IkReal x13158=((cj6)*(sj4)); +IkReal x13159=((cj6)*(r21)); +IkReal x13160=((r20)*(sj6)); +IkReal x13161=((r10)*(sj6)); +IkReal x13162=((sj4)*(sj6)); +IkReal x13163=((cj4)*(r02)); +IkReal x13164=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x13165=((IkReal(1.00000000000000))*(x13146)); +IkReal x13166=((cj0)*(x13162)); +evalcond[0]=((((sj5)*(x13159)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x13147)))+(((sj5)*(x13160)))); +evalcond[1]=((((x13151)*(x13159)))+(((r20)*(x13158)))+(((cj4)*(r22)*(sj5)))+(((x13151)*(x13160)))+(((IkReal(-1.00000000000000))*(sj1)*(x13165)))+(((IkReal(-1.00000000000000))*(r21)*(x13162)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x13165)))+(((IkReal(-1.00000000000000))*(sj5)*(x13152)*(x13161)))+(((cj0)*(x13153)))+(((x13148)*(x13150)))+(((x13148)*(x13149)))+(((IkReal(-1.00000000000000))*(sj5)*(x13152)*(x13155)))+(((IkReal(-1.00000000000000))*(x13154)*(x13156)))); +evalcond[3]=((((sj0)*(x13153)))+(((IkReal(-1.00000000000000))*(x13147)*(x13157)))+(((IkReal(-1.00000000000000))*(sj5)*(x13150)*(x13152)))+(((IkReal(-1.00000000000000))*(sj5)*(x13149)*(x13152)))+(((cj0)*(x13156)))+(((IkReal(-1.00000000000000))*(x13148)*(x13161)))+(((IkReal(-1.00000000000000))*(x13148)*(x13155)))); +evalcond[4]=((((r11)*(x13166)))+(((x13148)*(x13163)))+(((r00)*(sj0)*(x13158)))+(((sj0)*(x13149)*(x13151)))+(x13147)+(((IkReal(-1.00000000000000))*(x13151)*(x13152)*(x13155)))+(((IkReal(-1.00000000000000))*(r01)*(x13154)*(x13162)))+(((IkReal(-1.00000000000000))*(x13151)*(x13152)*(x13161)))+(((IkReal(-1.00000000000000))*(r10)*(x13152)*(x13158)))+(((sj0)*(x13150)*(x13151)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x13152)))); +evalcond[5]=((((r01)*(x13166)))+(((IkReal(-1.00000000000000))*(x13149)*(x13151)*(x13152)))+(((IkReal(-1.00000000000000))*(sj5)*(x13152)*(x13163)))+(((IkReal(-1.00000000000000))*(r00)*(x13152)*(x13158)))+(((IkReal(-1.00000000000000))*(x13150)*(x13151)*(x13152)))+(((IkReal(-1.00000000000000))*(r10)*(x13154)*(x13158)))+(((IkReal(-1.00000000000000))*(x13151)*(x13154)*(x13155)))+(((IkReal(-1.00000000000000))*(x13146)*(x13157)))+(((r11)*(sj0)*(x13162)))+(((IkReal(-1.00000000000000))*(x13148)*(x13164)))+(((IkReal(-1.00000000000000))*(x13151)*(x13154)*(x13161)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13167=((r20)*(sj6)); +IkReal x13168=((cj4)*(cj5)); +IkReal x13169=((cj6)*(r21)); +if( IKabs(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13167)*(x13168)))+(((x13168)*(x13169))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst11)*(((((sj5)*(x13167)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13169))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13167)*(x13168)))+(((x13168)*(x13169)))))), ((gconst11)*(((((sj5)*(x13167)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13169))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13170=IKsin(j3); +IkReal x13171=IKcos(j3); +IkReal x13172=((sj0)*(sj5)); +IkReal x13173=((r00)*(sj6)); +IkReal x13174=((cj6)*(r01)); +IkReal x13175=((cj4)*(cj5)); +IkReal x13176=((IkReal(1.00000000000000))*(cj0)); +IkReal x13177=((cj5)*(r12)); +IkReal x13178=((IkReal(1.00000000000000))*(sj0)); +IkReal x13179=((cj6)*(r11)); +IkReal x13180=((cj5)*(r02)); +IkReal x13181=((IkReal(1.00000000000000))*(cj1)); +IkReal x13182=((cj6)*(sj4)); +IkReal x13183=((cj6)*(r21)); +IkReal x13184=((r20)*(sj6)); +IkReal x13185=((r10)*(sj6)); +IkReal x13186=((sj4)*(sj6)); +IkReal x13187=((cj4)*(r02)); +IkReal x13188=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x13189=((IkReal(1.00000000000000))*(x13170)); +IkReal x13190=((cj0)*(x13186)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x13171)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13184)))+(((sj5)*(x13183)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x13186)))+(((cj4)*(r22)*(sj5)))+(((x13175)*(x13184)))+(((x13175)*(x13183)))+(((r20)*(x13182)))+(((IkReal(-1.00000000000000))*(sj1)*(x13189)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x13178)*(x13180)))+(((x13172)*(x13173)))+(((IkReal(-1.00000000000000))*(x13189)))+(((cj0)*(x13177)))+(((IkReal(-1.00000000000000))*(sj5)*(x13176)*(x13185)))+(((IkReal(-1.00000000000000))*(sj5)*(x13176)*(x13179)))+(((x13172)*(x13174)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13171)*(x13181)))+(((IkReal(-1.00000000000000))*(sj5)*(x13174)*(x13176)))+(((IkReal(-1.00000000000000))*(x13172)*(x13179)))+(((IkReal(-1.00000000000000))*(x13172)*(x13185)))+(((IkReal(-1.00000000000000))*(sj5)*(x13173)*(x13176)))+(((sj0)*(x13177)))+(((cj0)*(x13180)))); +evalcond[4]=((x13171)+(((r00)*(sj0)*(x13182)))+(((IkReal(-1.00000000000000))*(x13175)*(x13176)*(x13185)))+(((IkReal(-1.00000000000000))*(r10)*(x13176)*(x13182)))+(((IkReal(-1.00000000000000))*(r01)*(x13178)*(x13186)))+(((IkReal(-1.00000000000000))*(x13175)*(x13176)*(x13179)))+(((x13172)*(x13187)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x13176)))+(((r11)*(x13190)))+(((sj0)*(x13173)*(x13175)))+(((sj0)*(x13174)*(x13175)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x13175)*(x13178)*(x13179)))+(((IkReal(-1.00000000000000))*(x13173)*(x13175)*(x13176)))+(((IkReal(-1.00000000000000))*(x13172)*(x13188)))+(((IkReal(-1.00000000000000))*(r00)*(x13176)*(x13182)))+(((IkReal(-1.00000000000000))*(x13174)*(x13175)*(x13176)))+(((r01)*(x13190)))+(((IkReal(-1.00000000000000))*(x13170)*(x13181)))+(((IkReal(-1.00000000000000))*(x13175)*(x13178)*(x13185)))+(((IkReal(-1.00000000000000))*(r10)*(x13178)*(x13182)))+(((r11)*(sj0)*(x13186)))+(((IkReal(-1.00000000000000))*(sj5)*(x13176)*(x13187)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x13191=((IkReal(1.00000000000000))*(cj0)); +IkReal x13192=((cj4)*(sj6)); +IkReal x13193=((sj0)*(sj4)); +IkReal x13194=((cj5)*(sj6)); +IkReal x13195=((sj4)*(sj5)); +IkReal x13196=((r12)*(sj5)); +IkReal x13197=((IkReal(0.374290000000000))*(cj5)); +IkReal x13198=((r02)*(sj0)); +IkReal x13199=((IkReal(1.00000000000000))*(sj0)); +IkReal x13200=((cj0)*(r10)); +IkReal x13201=((cj4)*(cj6)); +IkReal x13202=((r00)*(sj0)); +IkReal x13203=((cj6)*(r21)); +IkReal x13204=((IkReal(0.374290000000000))*(sj5)); +IkReal x13205=((cj0)*(r00)); +IkReal x13206=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13207=((cj0)*(r02)); +IkReal x13208=((cj5)*(sj4)); +IkReal x13209=((cj6)*(r01)); +IkReal x13210=((cj6)*(r11)); +IkReal x13211=((r01)*(sj0)); +IkReal x13212=((r10)*(sj0)); +IkReal x13213=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x13214=((sj6)*(x13204)); +IkReal x13215=((cj0)*(cj6)*(x13204)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x13192)))+(((r22)*(x13195)))+(((IkReal(-1.00000000000000))*(r20)*(x13201)))+(((x13203)*(x13208)))+(cj1)+(((r20)*(sj4)*(x13194)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x13197)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x13206)))+(((r20)*(x13214)))+(((IkReal(-0.0100000000000000))*(cj5)*(x13203)))+(pz)+(((x13203)*(x13204)))+(((IkReal(-0.0100000000000000))*(r20)*(x13194)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x13191)*(x13194)))+(((IkReal(-1.00000000000000))*(r12)*(x13191)*(x13195)))+(((IkReal(-1.00000000000000))*(r00)*(x13199)*(x13201)))+(((IkReal(-1.00000000000000))*(x13191)*(x13208)*(x13210)))+(((r00)*(x13193)*(x13194)))+(((x13192)*(x13211)))+(((r02)*(sj5)*(x13193)))+(((IkReal(-1.00000000000000))*(r11)*(x13191)*(x13192)))+(((cj5)*(x13193)*(x13209)))+(((x13200)*(x13201)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x13193)*(x13194)))+(((IkReal(-1.00000000000000))*(cj5)*(x13193)*(x13210)))+(((IkReal(-1.00000000000000))*(r01)*(x13191)*(x13192)))+(((x13201)*(x13212)))+(((IkReal(-1.00000000000000))*(r11)*(x13192)*(x13199)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r02)*(x13191)*(x13195)))+(((IkReal(-1.00000000000000))*(x13191)*(x13208)*(x13209)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x13191)*(x13194)))+(((x13201)*(x13205)))+(((IkReal(-1.00000000000000))*(x13193)*(x13196)))); +evalcond[5]=((IkReal(-0.0690000000000000))+(((sj0)*(x13204)*(x13209)))+(((x13202)*(x13214)))+(((IkReal(-0.0100000000000000))*(x13194)*(x13202)))+(((IkReal(-1.00000000000000))*(cj0)*(x13204)*(x13210)))+(((IkReal(-1.00000000000000))*(py)*(x13191)))+(((cj0)*(r12)*(x13197)))+(((IkReal(-1.00000000000000))*(x13200)*(x13214)))+(((IkReal(0.0100000000000000))*(cj0)*(x13196)))+(((IkReal(-1.00000000000000))*(x13197)*(x13198)))+(((IkReal(0.0100000000000000))*(x13194)*(x13200)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x13209)))+(((IkReal(-1.00000000000000))*(x13198)*(x13206)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x13210)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x13199)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x13210)))+(((IkReal(-1.00000000000000))*(x13205)*(x13214)))+(((IkReal(-1.00000000000000))*(sj0)*(x13204)*(x13210)))+(((IkReal(0.0100000000000000))*(x13194)*(x13205)))+(((IkReal(0.0100000000000000))*(sj0)*(x13196)))+(((x13206)*(x13207)))+(((r12)*(sj0)*(x13197)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x13209)))+(((IkReal(-1.00000000000000))*(x13212)*(x13214)))+(((x13197)*(x13207)))+(((IkReal(0.0100000000000000))*(x13194)*(x13212)))+(((IkReal(-1.00000000000000))*(cj0)*(x13204)*(x13209)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(px)*(x13191)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst12; +gconst12=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x13216=((IkReal(1.00000000000000))*(cj0)); +IkReal x13217=((cj4)*(sj6)); +IkReal x13218=((sj0)*(sj6)); +IkReal x13219=((cj5)*(sj4)); +IkReal x13220=((IkReal(0.374290000000000))*(sj5)); +IkReal x13221=((sj4)*(sj5)); +IkReal x13222=((cj0)*(cj6)); +IkReal x13223=((IkReal(0.0100000000000000))*(cj5)); +IkReal x13224=((cj4)*(sj5)); +IkReal x13225=((cj5)*(sj0)); +IkReal x13226=((IkReal(0.374290000000000))*(r02)); +IkReal x13227=((r20)*(sj6)); +IkReal x13228=((cj6)*(r21)); +IkReal x13229=((IkReal(1.00000000000000))*(sj0)); +IkReal x13230=((cj0)*(sj6)); +IkReal x13231=((cj4)*(cj6)); +IkReal x13232=((IkReal(0.374290000000000))*(r12)); +IkReal x13233=((cj0)*(cj5)); +IkReal x13234=((cj6)*(sj5)); +IkReal x13235=((cj6)*(r01)); +IkReal x13236=((r00)*(sj6)); +IkReal x13237=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13238=((cj6)*(r11)); +IkReal x13239=((IkReal(1.00000000000000))*(r10)); +IkReal x13240=((r02)*(sj0)); +IkReal x13241=((cj6)*(sj4)); +IkReal x13242=((r12)*(x13229)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x13231)))+(((r22)*(x13221)))+(((x13219)*(x13227)))+(((x13219)*(x13228)))+(((r21)*(x13217)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x13220)*(x13227)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x13223)*(x13227)))+(pz)+(((x13220)*(x13228)))+(((IkReal(-1.00000000000000))*(r22)*(x13237)))+(((IkReal(-1.00000000000000))*(x13223)*(x13228)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x13216)*(x13236)))+(((IkReal(-1.00000000000000))*(r01)*(x13216)*(x13234)))+(((IkReal(-1.00000000000000))*(r11)*(x13229)*(x13234)))+(((r12)*(x13225)))+(((IkReal(-1.00000000000000))*(sj5)*(x13218)*(x13239)))+(((r02)*(x13233)))); +evalcond[4]=((((cj4)*(r10)*(x13222)))+(((IkReal(-1.00000000000000))*(r12)*(x13216)*(x13221)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x13216)*(x13219)))+(((sj0)*(x13219)*(x13235)))+(((r00)*(x13218)*(x13219)))+(((IkReal(-1.00000000000000))*(r11)*(x13216)*(x13217)))+(((x13221)*(x13240)))+(((IkReal(-1.00000000000000))*(r00)*(x13229)*(x13231)))+(((r01)*(sj0)*(x13217)))+(((IkReal(-1.00000000000000))*(x13216)*(x13219)*(x13238)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x13219)*(x13229)*(x13238)))+(((cj4)*(r00)*(x13222)))+(((IkReal(-1.00000000000000))*(x13216)*(x13219)*(x13235)))+(((IkReal(-1.00000000000000))*(r11)*(x13217)*(x13229)))+(((r10)*(sj0)*(x13231)))+(((IkReal(-1.00000000000000))*(x13216)*(x13219)*(x13236)))+(((IkReal(-1.00000000000000))*(x13218)*(x13219)*(x13239)))+(((IkReal(-1.00000000000000))*(r01)*(x13216)*(x13217)))+(((IkReal(-1.00000000000000))*(x13221)*(x13242)))+(((IkReal(-1.00000000000000))*(r02)*(x13216)*(x13221)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x13220)*(x13230)))+(((IkReal(-1.00000000000000))*(r00)*(x13218)*(x13223)))+(((r00)*(x13218)*(x13220)))+(((x13232)*(x13233)))+(((sj0)*(x13220)*(x13235)))+(((IkReal(-1.00000000000000))*(py)*(x13216)))+(((r10)*(x13223)*(x13230)))+(((IkReal(-1.00000000000000))*(r11)*(x13220)*(x13222)))+(((r11)*(x13222)*(x13223)))+(((IkReal(-1.00000000000000))*(sj0)*(x13223)*(x13235)))+(((cj0)*(r12)*(x13237)))+(((IkReal(-1.00000000000000))*(x13225)*(x13226)))+(((IkReal(-1.00000000000000))*(x13237)*(x13240)))+(((px)*(sj0)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x13216)*(x13241)))+(((IkReal(-1.00000000000000))*(r10)*(x13229)*(x13241)))+(((IkReal(-1.00000000000000))*(x13224)*(x13242)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x13216)*(x13217)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x13216)*(x13231)))+(((IkReal(-1.00000000000000))*(r11)*(x13225)*(x13231)))+(((r11)*(sj4)*(x13218)))+(((IkReal(-1.00000000000000))*(x13217)*(x13225)*(x13239)))+(((IkReal(-1.00000000000000))*(r02)*(x13216)*(x13224)))+(((r01)*(sj4)*(x13230)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x13220)*(x13238)))+(((IkReal(-1.00000000000000))*(r01)*(x13220)*(x13222)))+(((sj0)*(x13223)*(x13238)))+(((r12)*(sj0)*(x13237)))+(((r10)*(x13218)*(x13223)))+(((IkReal(-1.00000000000000))*(py)*(x13229)))+(((cj0)*(r02)*(x13237)))+(((x13225)*(x13232)))+(((IkReal(-1.00000000000000))*(px)*(x13216)))+(((r01)*(x13222)*(x13223)))+(((IkReal(-1.00000000000000))*(r10)*(x13218)*(x13220)))+(((r00)*(x13223)*(x13230)))+(((x13226)*(x13233)))+(((IkReal(-1.00000000000000))*(r00)*(x13220)*(x13230)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13243=((r20)*(sj6)); +IkReal x13244=((cj4)*(cj5)); +IkReal x13245=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13244)*(x13245)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13243)*(x13244))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x13243)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13245))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13244)*(x13245)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13243)*(x13244)))))+IKsqr(((((sj5)*(x13243)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13245)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13244)*(x13245)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13243)*(x13244)))), ((((sj5)*(x13243)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13245))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x13246=IKsin(j3); +IkReal x13247=((sj0)*(sj5)); +IkReal x13248=((r00)*(sj6)); +IkReal x13249=((cj6)*(r01)); +IkReal x13250=((cj5)*(sj0)); +IkReal x13251=((cj0)*(cj5)); +IkReal x13252=((cj6)*(sj4)); +IkReal x13253=((sj4)*(sj6)); +IkReal x13254=((cj0)*(r11)); +IkReal x13255=((cj4)*(cj6)); +IkReal x13256=((cj4)*(sj6)); +IkReal x13257=((IkReal(1.00000000000000))*(cj0)); +IkReal x13258=((cj4)*(sj5)); +IkReal x13259=((sj5)*(sj6)); +IkReal x13260=((cj6)*(sj5)); +IkReal x13261=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((r21)*(x13260)))+(((IkReal(-1.00000000000000))*(x13261)))+(((r20)*(x13259)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x13253)))+(((r20)*(x13252)))+(((cj5)*(r20)*(x13256)))+(((IkReal(-1.00000000000000))*(x13246)))+(((r22)*(x13258)))+(((cj5)*(r21)*(x13255)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x13250)))+(x13246)+(((x13247)*(x13249)))+(((IkReal(-1.00000000000000))*(r10)*(x13257)*(x13259)))+(((IkReal(-1.00000000000000))*(x13254)*(x13260)))+(((r12)*(x13251)))+(((x13247)*(x13248)))); +evalcond[3]=((((cj4)*(x13249)*(x13250)))+(((cj4)*(x13248)*(x13250)))+(((IkReal(-1.00000000000000))*(r11)*(x13251)*(x13255)))+(((IkReal(-1.00000000000000))*(r10)*(x13251)*(x13256)))+(((IkReal(-1.00000000000000))*(x13261)))+(((r00)*(sj0)*(x13252)))+(((IkReal(-1.00000000000000))*(r10)*(x13252)*(x13257)))+(((IkReal(-1.00000000000000))*(r12)*(x13257)*(x13258)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x13253)))+(((cj4)*(r02)*(x13247)))+(((x13253)*(x13254)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x13262=((IkReal(1.00000000000000))*(cj0)); +IkReal x13263=((cj4)*(sj6)); +IkReal x13264=((sj0)*(sj6)); +IkReal x13265=((cj5)*(sj4)); +IkReal x13266=((IkReal(0.374290000000000))*(sj5)); +IkReal x13267=((sj4)*(sj5)); +IkReal x13268=((cj0)*(cj6)); +IkReal x13269=((IkReal(0.0100000000000000))*(cj5)); +IkReal x13270=((cj4)*(sj5)); +IkReal x13271=((cj5)*(sj0)); +IkReal x13272=((IkReal(0.374290000000000))*(r02)); +IkReal x13273=((r20)*(sj6)); +IkReal x13274=((cj6)*(r21)); +IkReal x13275=((IkReal(1.00000000000000))*(sj0)); +IkReal x13276=((cj0)*(sj6)); +IkReal x13277=((cj4)*(cj6)); +IkReal x13278=((IkReal(0.374290000000000))*(r12)); +IkReal x13279=((cj0)*(cj5)); +IkReal x13280=((cj6)*(sj5)); +IkReal x13281=((cj6)*(r01)); +IkReal x13282=((r00)*(sj6)); +IkReal x13283=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13284=((cj6)*(r11)); +IkReal x13285=((IkReal(1.00000000000000))*(r10)); +IkReal x13286=((r02)*(sj0)); +IkReal x13287=((cj6)*(sj4)); +IkReal x13288=((r12)*(x13275)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x13265)*(x13273)))+(((IkReal(-1.00000000000000))*(r20)*(x13277)))+(((r21)*(x13263)))+(((x13265)*(x13274)))+(((r22)*(x13267)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x13269)*(x13274)))+(((x13266)*(x13274)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x13269)*(x13273)))+(((IkReal(-1.00000000000000))*(r22)*(x13283)))+(((x13266)*(x13273)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x13262)*(x13282)))+(((r02)*(x13279)))+(((r12)*(x13271)))+(((IkReal(-1.00000000000000))*(r11)*(x13275)*(x13280)))+(((IkReal(-1.00000000000000))*(r01)*(x13262)*(x13280)))+(((IkReal(-1.00000000000000))*(sj5)*(x13264)*(x13285)))); +evalcond[4]=((((r01)*(sj0)*(x13263)))+(((IkReal(-1.00000000000000))*(r00)*(x13275)*(x13277)))+(((cj4)*(r10)*(x13268)))+(((sj0)*(x13265)*(x13281)))+(((IkReal(-1.00000000000000))*(r11)*(x13262)*(x13263)))+(((IkReal(-1.00000000000000))*(x13262)*(x13265)*(x13284)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x13262)*(x13265)))+(((IkReal(-1.00000000000000))*(r12)*(x13262)*(x13267)))+(((r00)*(x13264)*(x13265)))+(((x13267)*(x13286)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r02)*(x13262)*(x13267)))+(((IkReal(-1.00000000000000))*(x13267)*(x13288)))+(((IkReal(-1.00000000000000))*(x13262)*(x13265)*(x13281)))+(((r10)*(sj0)*(x13277)))+(((IkReal(-1.00000000000000))*(x13264)*(x13265)*(x13285)))+(((cj4)*(r00)*(x13268)))+(((IkReal(-1.00000000000000))*(r11)*(x13263)*(x13275)))+(((IkReal(-1.00000000000000))*(x13265)*(x13275)*(x13284)))+(((IkReal(-1.00000000000000))*(r01)*(x13262)*(x13263)))+(((IkReal(-1.00000000000000))*(x13262)*(x13265)*(x13282)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((sj0)*(x13266)*(x13281)))+(((IkReal(-1.00000000000000))*(r10)*(x13266)*(x13276)))+(((IkReal(-1.00000000000000))*(sj0)*(x13269)*(x13281)))+(((IkReal(-1.00000000000000))*(x13283)*(x13286)))+(((r11)*(x13268)*(x13269)))+(((cj0)*(r12)*(x13283)))+(((IkReal(-1.00000000000000))*(r11)*(x13266)*(x13268)))+(((r10)*(x13269)*(x13276)))+(((IkReal(-1.00000000000000))*(r00)*(x13264)*(x13269)))+(((IkReal(-1.00000000000000))*(py)*(x13262)))+(((r00)*(x13264)*(x13266)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x13271)*(x13272)))+(((x13278)*(x13279)))); +evalcond[7]=((((r11)*(sj4)*(x13264)))+(((IkReal(-1.00000000000000))*(x13263)*(x13271)*(x13285)))+(((IkReal(-1.00000000000000))*(r02)*(x13262)*(x13270)))+(((IkReal(-1.00000000000000))*(x13270)*(x13288)))+(((IkReal(-1.00000000000000))*(r10)*(x13275)*(x13287)))+(((r01)*(sj4)*(x13276)))+(((IkReal(-1.00000000000000))*(r00)*(x13262)*(x13287)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x13262)*(x13277)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x13262)*(x13263)))+(((IkReal(-1.00000000000000))*(r11)*(x13271)*(x13277)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r12)*(sj0)*(x13283)))+(((r00)*(x13269)*(x13276)))+(((sj0)*(x13269)*(x13284)))+(((IkReal(-1.00000000000000))*(sj0)*(x13266)*(x13284)))+(((x13271)*(x13278)))+(((r01)*(x13268)*(x13269)))+(((IkReal(-1.00000000000000))*(r00)*(x13266)*(x13276)))+(((x13272)*(x13279)))+(((cj0)*(r02)*(x13283)))+(((r10)*(x13264)*(x13269)))+(((IkReal(-1.00000000000000))*(py)*(x13275)))+(((IkReal(-1.00000000000000))*(r01)*(x13266)*(x13268)))+(((IkReal(-1.00000000000000))*(r10)*(x13264)*(x13266)))+(((IkReal(-1.00000000000000))*(px)*(x13262)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13289=((IkReal(1.00000000000000))*(sj5)); +IkReal x13290=((cj6)*(r21)); +IkReal x13291=((r20)*(sj6)); +IkReal x13292=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x13290)*(x13292)))+(((IkReal(-1.00000000000000))*(x13291)*(x13292)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13289)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x13289)*(x13291)))+(((IkReal(-1.00000000000000))*(x13289)*(x13290)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x13290)*(x13292)))+(((IkReal(-1.00000000000000))*(x13291)*(x13292)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13289)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x13289)*(x13291)))+(((IkReal(-1.00000000000000))*(x13289)*(x13290)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x13290)*(x13292)))+(((IkReal(-1.00000000000000))*(x13291)*(x13292)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13289)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x13289)*(x13291)))+(((IkReal(-1.00000000000000))*(x13289)*(x13290)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x13293=IKsin(j3); +IkReal x13294=IKcos(j3); +IkReal x13295=((sj0)*(sj5)); +IkReal x13296=((r00)*(sj6)); +IkReal x13297=((cj6)*(r01)); +IkReal x13298=((cj0)*(cj5)); +IkReal x13299=((IkReal(1.00000000000000))*(cj5)); +IkReal x13300=((cj4)*(cj5)); +IkReal x13301=((cj6)*(sj4)); +IkReal x13302=((sj4)*(sj6)); +IkReal x13303=((cj0)*(r11)); +IkReal x13304=((IkReal(1.00000000000000))*(cj4)); +IkReal x13305=((cj6)*(r21)); +IkReal x13306=((r20)*(sj6)); +IkReal x13307=((cj0)*(sj5)); +IkReal x13308=((r10)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r22)*(x13299)))+(((sj5)*(x13306)))+(((sj5)*(x13305)))+(x13294)); +evalcond[1]=((((r20)*(x13301)))+(((x13300)*(x13305)))+(((x13300)*(x13306)))+(((cj4)*(r22)*(sj5)))+(x13293)+(((IkReal(-1.00000000000000))*(r21)*(x13302)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x13299)))+(((x13295)*(x13296)))+(((r12)*(x13298)))+(((x13295)*(x13297)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x13303)))+(((IkReal(-1.00000000000000))*(x13307)*(x13308)))+(x13293)); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13298)*(x13304)*(x13308)))+(((sj0)*(x13296)*(x13300)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x13302)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x13301)))+(((sj0)*(x13297)*(x13300)))+(((cj4)*(r02)*(x13295)))+(((x13302)*(x13303)))+(((IkReal(-1.00000000000000))*(r12)*(x13304)*(x13307)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x13298)*(x13304)))+(((IkReal(-1.00000000000000))*(x13294)))+(((r00)*(sj0)*(x13301)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13309=((cj5)*(r02)); +IkReal x13310=((cj0)*(sj5)); +IkReal x13311=((r10)*(sj6)); +IkReal x13312=((IkReal(1.00000000000000))*(cj6)); +IkReal x13313=((sj0)*(sj5)); +IkReal x13314=((cj5)*(r12)); +IkReal x13315=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((sj0)*(x13309)))+(((x13310)*(x13311)))+(((IkReal(-1.00000000000000))*(r01)*(x13312)*(x13313)))+(((cj6)*(r11)*(x13310)))+(((IkReal(-1.00000000000000))*(x13313)*(x13315)))+(((IkReal(-1.00000000000000))*(cj0)*(x13314))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x13310)*(x13312)))+(((sj0)*(x13314)))+(((IkReal(-1.00000000000000))*(r11)*(x13312)*(x13313)))+(((IkReal(-1.00000000000000))*(x13310)*(x13315)))+(((IkReal(-1.00000000000000))*(x13311)*(x13313)))+(((cj0)*(x13309))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x13309)))+(((x13310)*(x13311)))+(((IkReal(-1.00000000000000))*(r01)*(x13312)*(x13313)))+(((cj6)*(r11)*(x13310)))+(((IkReal(-1.00000000000000))*(x13313)*(x13315)))+(((IkReal(-1.00000000000000))*(cj0)*(x13314)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x13310)*(x13312)))+(((sj0)*(x13314)))+(((IkReal(-1.00000000000000))*(r11)*(x13312)*(x13313)))+(((IkReal(-1.00000000000000))*(x13310)*(x13315)))+(((IkReal(-1.00000000000000))*(x13311)*(x13313)))+(((cj0)*(x13309)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x13309)))+(((x13310)*(x13311)))+(((IkReal(-1.00000000000000))*(r01)*(x13312)*(x13313)))+(((cj6)*(r11)*(x13310)))+(((IkReal(-1.00000000000000))*(x13313)*(x13315)))+(((IkReal(-1.00000000000000))*(cj0)*(x13314)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x13310)*(x13312)))+(((sj0)*(x13314)))+(((IkReal(-1.00000000000000))*(r11)*(x13312)*(x13313)))+(((IkReal(-1.00000000000000))*(x13310)*(x13315)))+(((IkReal(-1.00000000000000))*(x13311)*(x13313)))+(((cj0)*(x13309))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13316=IKsin(j3); +IkReal x13317=IKcos(j3); +IkReal x13318=((sj0)*(sj5)); +IkReal x13319=((r00)*(sj6)); +IkReal x13320=((IkReal(1.00000000000000))*(cj4)); +IkReal x13321=((cj6)*(r01)); +IkReal x13322=((cj0)*(cj5)); +IkReal x13323=((cj5)*(sj0)); +IkReal x13324=((cj6)*(r11)); +IkReal x13325=((cj0)*(sj5)); +IkReal x13326=((IkReal(1.00000000000000))*(cj1)); +IkReal x13327=((cj6)*(sj4)); +IkReal x13328=((IkReal(1.00000000000000))*(sj1)); +IkReal x13329=((cj4)*(cj5)); +IkReal x13330=((cj6)*(r21)); +IkReal x13331=((r20)*(sj6)); +IkReal x13332=((r10)*(sj6)); +IkReal x13333=((IkReal(1.00000000000000))*(cj0)); +IkReal x13334=((cj0)*(sj4)*(sj6)); +IkReal x13335=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13317)*(x13328)))+(((sj5)*(x13331)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13330)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x13316)*(x13328)))+(((x13329)*(x13331)))+(((cj4)*(r22)*(sj5)))+(((x13329)*(x13330)))+(((r20)*(x13327)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x13323)))+(((IkReal(-1.00000000000000))*(x13324)*(x13325)))+(((r12)*(x13322)))+(((x13318)*(x13321)))+(((x13318)*(x13319)))+(x13316)+(((IkReal(-1.00000000000000))*(x13325)*(x13332)))); +evalcond[3]=((((r12)*(x13323)))+(((IkReal(-1.00000000000000))*(x13321)*(x13325)))+(((IkReal(-1.00000000000000))*(x13317)*(x13326)))+(((IkReal(-1.00000000000000))*(x13319)*(x13325)))+(((r02)*(x13322)))+(((IkReal(-1.00000000000000))*(x13318)*(x13324)))+(((IkReal(-1.00000000000000))*(x13318)*(x13332)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x13320)*(x13322)*(x13332)))+(((cj4)*(x13321)*(x13323)))+(((cj4)*(x13319)*(x13323)))+(((r11)*(x13334)))+(((IkReal(-1.00000000000000))*(x13317)))+(((IkReal(-1.00000000000000))*(r01)*(x13335)))+(((IkReal(-1.00000000000000))*(x13320)*(x13322)*(x13324)))+(((IkReal(-1.00000000000000))*(r12)*(x13320)*(x13325)))+(((r00)*(sj0)*(x13327)))+(((cj4)*(r02)*(x13318)))+(((IkReal(-1.00000000000000))*(r10)*(x13327)*(x13333)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x13320)*(x13323)*(x13332)))+(((IkReal(-1.00000000000000))*(r12)*(x13318)*(x13320)))+(((IkReal(-1.00000000000000))*(x13316)*(x13326)))+(((IkReal(-1.00000000000000))*(r00)*(x13327)*(x13333)))+(((r11)*(x13335)))+(((IkReal(-1.00000000000000))*(r02)*(x13320)*(x13325)))+(((IkReal(-1.00000000000000))*(x13320)*(x13321)*(x13322)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13327)))+(((IkReal(-1.00000000000000))*(x13320)*(x13323)*(x13324)))+(((IkReal(-1.00000000000000))*(x13319)*(x13320)*(x13322)))+(((r01)*(x13334)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13336=((sj5)*(sj6)); +IkReal x13337=((IkReal(1.00000000000000))*(sj0)); +IkReal x13338=((cj6)*(sj5)); +IkReal x13339=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r10)*(x13336)))+(((cj0)*(r11)*(x13338)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x13339)))+(((IkReal(-1.00000000000000))*(r00)*(x13336)*(x13337)))+(((IkReal(-1.00000000000000))*(r01)*(x13337)*(x13338))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13339)))+(((r20)*(x13336)))+(((r21)*(x13338))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r10)*(x13336)))+(((cj0)*(r11)*(x13338)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x13339)))+(((IkReal(-1.00000000000000))*(r00)*(x13336)*(x13337)))+(((IkReal(-1.00000000000000))*(r01)*(x13337)*(x13338)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13339)))+(((r20)*(x13336)))+(((r21)*(x13338)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r10)*(x13336)))+(((cj0)*(r11)*(x13338)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x13339)))+(((IkReal(-1.00000000000000))*(r00)*(x13336)*(x13337)))+(((IkReal(-1.00000000000000))*(r01)*(x13337)*(x13338)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13339)))+(((r20)*(x13336)))+(((r21)*(x13338))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13340=IKsin(j3); +IkReal x13341=IKcos(j3); +IkReal x13342=((sj0)*(sj5)); +IkReal x13343=((r00)*(sj6)); +IkReal x13344=((IkReal(1.00000000000000))*(cj4)); +IkReal x13345=((cj6)*(r01)); +IkReal x13346=((cj0)*(cj5)); +IkReal x13347=((cj5)*(sj0)); +IkReal x13348=((cj6)*(r11)); +IkReal x13349=((cj0)*(sj5)); +IkReal x13350=((IkReal(1.00000000000000))*(cj1)); +IkReal x13351=((cj6)*(sj4)); +IkReal x13352=((IkReal(1.00000000000000))*(sj1)); +IkReal x13353=((cj4)*(cj5)); +IkReal x13354=((cj6)*(r21)); +IkReal x13355=((r20)*(sj6)); +IkReal x13356=((r10)*(sj6)); +IkReal x13357=((IkReal(1.00000000000000))*(cj0)); +IkReal x13358=((cj0)*(sj4)*(sj6)); +IkReal x13359=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13341)*(x13352)))+(((sj5)*(x13355)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13354)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13353)*(x13354)))+(((cj4)*(r22)*(sj5)))+(((x13353)*(x13355)))+(((IkReal(-1.00000000000000))*(x13340)*(x13352)))+(((r20)*(x13351)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x13349)*(x13356)))+(((r12)*(x13346)))+(((IkReal(-1.00000000000000))*(x13348)*(x13349)))+(((x13342)*(x13345)))+(x13340)+(((x13342)*(x13343)))+(((IkReal(-1.00000000000000))*(r02)*(x13347)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13341)*(x13350)))+(((IkReal(-1.00000000000000))*(x13342)*(x13348)))+(((IkReal(-1.00000000000000))*(x13342)*(x13356)))+(((IkReal(-1.00000000000000))*(x13343)*(x13349)))+(((r12)*(x13347)))+(((r02)*(x13346)))+(((IkReal(-1.00000000000000))*(x13345)*(x13349)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x13344)*(x13346)*(x13348)))+(((IkReal(-1.00000000000000))*(x13341)))+(((IkReal(-1.00000000000000))*(r10)*(x13351)*(x13357)))+(((IkReal(-1.00000000000000))*(x13344)*(x13346)*(x13356)))+(((cj4)*(x13345)*(x13347)))+(((cj4)*(x13343)*(x13347)))+(((r11)*(x13358)))+(((IkReal(-1.00000000000000))*(r01)*(x13359)))+(((cj4)*(r02)*(x13342)))+(((IkReal(-1.00000000000000))*(r12)*(x13344)*(x13349)))+(((r00)*(sj0)*(x13351)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13351)))+(((IkReal(-1.00000000000000))*(x13340)*(x13350)))+(((IkReal(-1.00000000000000))*(r12)*(x13342)*(x13344)))+(((IkReal(-1.00000000000000))*(x13344)*(x13345)*(x13346)))+(((IkReal(-1.00000000000000))*(x13344)*(x13347)*(x13348)))+(((IkReal(-1.00000000000000))*(r02)*(x13344)*(x13349)))+(((r01)*(x13358)))+(((r11)*(x13359)))+(((IkReal(-1.00000000000000))*(r00)*(x13351)*(x13357)))+(((IkReal(-1.00000000000000))*(x13344)*(x13347)*(x13356)))+(((IkReal(-1.00000000000000))*(x13343)*(x13344)*(x13346)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13360=((r20)*(sj6)); +IkReal x13361=((cj4)*(cj5)); +IkReal x13362=((cj6)*(r21)); +if( IKabs(((gconst12)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13360)*(x13361)))+(((x13361)*(x13362)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst12)*(((((sj5)*(x13360)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13362))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst12)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13360)*(x13361)))+(((x13361)*(x13362)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))), ((gconst12)*(((((sj5)*(x13360)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13362))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13363=IKsin(j3); +IkReal x13364=IKcos(j3); +IkReal x13365=((sj0)*(sj5)); +IkReal x13366=((r00)*(sj6)); +IkReal x13367=((IkReal(1.00000000000000))*(cj4)); +IkReal x13368=((cj6)*(r01)); +IkReal x13369=((cj0)*(cj5)); +IkReal x13370=((cj5)*(sj0)); +IkReal x13371=((cj6)*(r11)); +IkReal x13372=((cj0)*(sj5)); +IkReal x13373=((IkReal(1.00000000000000))*(cj1)); +IkReal x13374=((cj6)*(sj4)); +IkReal x13375=((IkReal(1.00000000000000))*(sj1)); +IkReal x13376=((cj4)*(cj5)); +IkReal x13377=((cj6)*(r21)); +IkReal x13378=((r20)*(sj6)); +IkReal x13379=((r10)*(sj6)); +IkReal x13380=((IkReal(1.00000000000000))*(cj0)); +IkReal x13381=((cj0)*(sj4)*(sj6)); +IkReal x13382=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13364)*(x13375)))+(((sj5)*(x13378)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13377)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x13376)*(x13378)))+(((r20)*(x13374)))+(((x13376)*(x13377)))+(((IkReal(-1.00000000000000))*(x13363)*(x13375)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x13371)*(x13372)))+(((IkReal(-1.00000000000000))*(r02)*(x13370)))+(((r12)*(x13369)))+(((x13365)*(x13368)))+(((IkReal(-1.00000000000000))*(x13372)*(x13379)))+(x13363)+(((x13365)*(x13366)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13365)*(x13379)))+(((r02)*(x13369)))+(((IkReal(-1.00000000000000))*(x13365)*(x13371)))+(((IkReal(-1.00000000000000))*(x13366)*(x13372)))+(((r12)*(x13370)))+(((IkReal(-1.00000000000000))*(x13368)*(x13372)))+(((IkReal(-1.00000000000000))*(x13364)*(x13373)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x13382)))+(((cj4)*(x13368)*(x13370)))+(((cj4)*(x13366)*(x13370)))+(((IkReal(-1.00000000000000))*(r12)*(x13367)*(x13372)))+(((IkReal(-1.00000000000000))*(x13367)*(x13369)*(x13379)))+(((cj4)*(r02)*(x13365)))+(((r11)*(x13381)))+(((IkReal(-1.00000000000000))*(x13364)))+(((IkReal(-1.00000000000000))*(r10)*(x13374)*(x13380)))+(((r00)*(sj0)*(x13374)))+(((IkReal(-1.00000000000000))*(x13367)*(x13369)*(x13371)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x13365)*(x13367)))+(((IkReal(-1.00000000000000))*(r00)*(x13374)*(x13380)))+(((IkReal(-1.00000000000000))*(x13367)*(x13370)*(x13379)))+(((IkReal(-1.00000000000000))*(x13366)*(x13367)*(x13369)))+(((IkReal(-1.00000000000000))*(r02)*(x13367)*(x13372)))+(((r11)*(x13382)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13374)))+(((IkReal(-1.00000000000000))*(x13367)*(x13370)*(x13371)))+(((IkReal(-1.00000000000000))*(x13367)*(x13368)*(x13369)))+(((IkReal(-1.00000000000000))*(x13363)*(x13373)))+(((r01)*(x13381)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13383=((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30); +IkReal x13384=((sj5)*(sj6)); +IkReal x13385=((r00)*(sj0)); +IkReal x13386=((cj1)*(cj2)); +IkReal x13387=((cj0)*(r10)); +IkReal x13388=((cj6)*(sj5)); +IkReal x13389=((r01)*(sj0)); +IkReal x13390=((IkReal(1.00000000000000))*(cj0)); +IkReal x13391=((cj5)*(r12)); +IkReal x13392=((IkReal(1.00000000000000))*(cj5)); +IkReal x13393=((r02)*(sj0)); +if( IKabs(((x13383)*(((((x13384)*(x13385)))+(((cj0)*(x13391)))+(((IkReal(-1.00000000000000))*(r11)*(x13388)*(x13390)))+(((IkReal(-1.00000000000000))*(x13392)*(x13393)))+(((x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13384)*(x13387))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((x13383)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13386)*(x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13386)*(x13390)*(x13391)))+(((IkReal(-1.00000000000000))*(x13384)*(x13385)*(x13386)))+(((cj0)*(r11)*(x13386)*(x13388)))+(((r20)*(sj2)*(x13384)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x13392)))+(((cj5)*(x13386)*(x13393)))+(((x13384)*(x13386)*(x13387)))+(((r21)*(sj2)*(x13388))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((x13383)*(((((x13384)*(x13385)))+(((cj0)*(x13391)))+(((IkReal(-1.00000000000000))*(r11)*(x13388)*(x13390)))+(((IkReal(-1.00000000000000))*(x13392)*(x13393)))+(((x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13384)*(x13387)))))))+IKsqr(((x13383)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13386)*(x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13386)*(x13390)*(x13391)))+(((IkReal(-1.00000000000000))*(x13384)*(x13385)*(x13386)))+(((cj0)*(r11)*(x13386)*(x13388)))+(((r20)*(sj2)*(x13384)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x13392)))+(((cj5)*(x13386)*(x13393)))+(((x13384)*(x13386)*(x13387)))+(((r21)*(sj2)*(x13388)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((x13383)*(((((x13384)*(x13385)))+(((cj0)*(x13391)))+(((IkReal(-1.00000000000000))*(r11)*(x13388)*(x13390)))+(((IkReal(-1.00000000000000))*(x13392)*(x13393)))+(((x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13384)*(x13387)))))), ((x13383)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13386)*(x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13386)*(x13390)*(x13391)))+(((IkReal(-1.00000000000000))*(x13384)*(x13385)*(x13386)))+(((cj0)*(r11)*(x13386)*(x13388)))+(((r20)*(sj2)*(x13384)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x13392)))+(((cj5)*(x13386)*(x13393)))+(((x13384)*(x13386)*(x13387)))+(((r21)*(sj2)*(x13388))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13394=IKcos(j3); +IkReal x13395=IKsin(j3); +IkReal x13396=((sj0)*(sj5)); +IkReal x13397=((r00)*(sj6)); +IkReal x13398=((IkReal(1.00000000000000))*(cj4)); +IkReal x13399=((cj6)*(r01)); +IkReal x13400=((cj0)*(cj5)); +IkReal x13401=((cj5)*(sj0)); +IkReal x13402=((cj6)*(r11)); +IkReal x13403=((cj6)*(sj4)); +IkReal x13404=((IkReal(1.00000000000000))*(cj1)); +IkReal x13405=((cj4)*(cj5)); +IkReal x13406=((cj6)*(r21)); +IkReal x13407=((r20)*(sj6)); +IkReal x13408=((r10)*(sj6)); +IkReal x13409=((cj0)*(sj5)); +IkReal x13410=((IkReal(1.00000000000000))*(cj0)); +IkReal x13411=((IkReal(1.00000000000000))*(x13409)); +IkReal x13412=((IkReal(1.00000000000000))*(x13395)); +IkReal x13413=((cj0)*(sj4)*(sj6)); +IkReal x13414=((cj2)*(x13395)); +IkReal x13415=((sj0)*(sj4)*(sj6)); +IkReal x13416=((IkReal(1.00000000000000))*(sj1)*(x13394)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13404)*(x13414)))+(((IkReal(-1.00000000000000))*(x13416)))+(((sj5)*(x13406)))+(((sj5)*(x13407)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13405)*(x13407)))+(((cj4)*(r22)*(sj5)))+(((cj1)*(cj2)*(x13394)))+(((r20)*(x13403)))+(((IkReal(-1.00000000000000))*(sj1)*(x13412)))+(((x13405)*(x13406)))); +evalcond[2]=((((x13396)*(x13399)))+(((r12)*(x13400)))+(((IkReal(-1.00000000000000))*(x13402)*(x13411)))+(((IkReal(-1.00000000000000))*(r02)*(x13401)))+(((IkReal(-1.00000000000000))*(x13408)*(x13411)))+(((x13396)*(x13397)))+(((IkReal(-1.00000000000000))*(sj2)*(x13412)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13396)*(x13402)))+(((IkReal(-1.00000000000000))*(x13394)*(x13404)))+(((r12)*(x13401)))+(((IkReal(-1.00000000000000))*(x13399)*(x13411)))+(((IkReal(-1.00000000000000))*(x13396)*(x13408)))+(((r02)*(x13400)))+(((IkReal(-1.00000000000000))*(x13397)*(x13411)))+(((sj1)*(x13414)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x13398)*(x13400)*(x13402)))+(((cj4)*(x13399)*(x13401)))+(((cj4)*(r02)*(x13396)))+(((cj4)*(x13397)*(x13401)))+(((IkReal(-1.00000000000000))*(x13398)*(x13400)*(x13408)))+(((IkReal(-1.00000000000000))*(r01)*(x13415)))+(((sj2)*(x13394)))+(((IkReal(-1.00000000000000))*(r12)*(x13398)*(x13409)))+(((r00)*(sj0)*(x13403)))+(((IkReal(-1.00000000000000))*(r10)*(x13403)*(x13410)))+(((r11)*(x13413)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x13398)*(x13401)*(x13402)))+(((IkReal(-1.00000000000000))*(x13398)*(x13401)*(x13408)))+(((IkReal(-1.00000000000000))*(r00)*(x13403)*(x13410)))+(((r01)*(x13413)))+(((IkReal(-1.00000000000000))*(cj2)*(x13416)))+(((IkReal(-1.00000000000000))*(r02)*(x13398)*(x13409)))+(((IkReal(-1.00000000000000))*(x13395)*(x13404)))+(((IkReal(-1.00000000000000))*(r12)*(x13396)*(x13398)))+(((IkReal(-1.00000000000000))*(x13397)*(x13398)*(x13400)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13403)))+(((r11)*(x13415)))+(((IkReal(-1.00000000000000))*(x13398)*(x13399)*(x13400)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13417=(cj1)*(cj1); +IkReal x13418=(sj1)*(sj1); +IkReal x13419=((r00)*(sj6)); +IkReal x13420=((cj6)*(r01)); +IkReal x13421=((IkReal(1.00000000000000))*(cj1)); +IkReal x13422=((cj5)*(r22)); +IkReal x13423=((sj5)*(sj6)); +IkReal x13424=((r10)*(sj0)); +IkReal x13425=((cj1)*(cj5)); +IkReal x13426=((cj0)*(r02)); +IkReal x13427=((r12)*(sj0)); +IkReal x13428=((IkReal(1.00000000000000))*(sj1)); +IkReal x13429=((cj6)*(sj5)); +IkReal x13430=((cj0)*(sj5)); +IkReal x13431=((r11)*(sj0)); +IkReal x13432=((sj1)*(x13430)); +if( IKabs(((((IKabs(((((cj2)*(x13418)))+(((cj2)*(x13417))))) != 0)?((IkReal)1/(((((cj2)*(x13418)))+(((cj2)*(x13417)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x13426)*(x13428)))+(((cj1)*(r21)*(x13429)))+(((x13420)*(x13432)))+(((sj1)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13421)*(x13422)))+(((sj1)*(x13423)*(x13424)))+(((cj1)*(r20)*(x13423)))+(((x13419)*(x13432)))+(((IkReal(-1.00000000000000))*(cj5)*(x13427)*(x13428))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x13417)+(x13418))) != 0)?((IkReal)1/(((x13417)+(x13418)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13419)*(x13421)*(x13430)))+(((r20)*(sj1)*(x13423)))+(((x13425)*(x13427)))+(((r21)*(sj1)*(x13429)))+(((IkReal(-1.00000000000000))*(x13421)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13420)*(x13421)*(x13430)))+(((x13425)*(x13426)))+(((IkReal(-1.00000000000000))*(x13421)*(x13423)*(x13424)))+(((IkReal(-1.00000000000000))*(x13422)*(x13428))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x13418)))+(((cj2)*(x13417))))) != 0)?((IkReal)1/(((((cj2)*(x13418)))+(((cj2)*(x13417)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x13426)*(x13428)))+(((cj1)*(r21)*(x13429)))+(((x13420)*(x13432)))+(((sj1)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13421)*(x13422)))+(((sj1)*(x13423)*(x13424)))+(((cj1)*(r20)*(x13423)))+(((x13419)*(x13432)))+(((IkReal(-1.00000000000000))*(cj5)*(x13427)*(x13428)))))))+IKsqr(((((IKabs(((x13417)+(x13418))) != 0)?((IkReal)1/(((x13417)+(x13418)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13419)*(x13421)*(x13430)))+(((r20)*(sj1)*(x13423)))+(((x13425)*(x13427)))+(((r21)*(sj1)*(x13429)))+(((IkReal(-1.00000000000000))*(x13421)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13420)*(x13421)*(x13430)))+(((x13425)*(x13426)))+(((IkReal(-1.00000000000000))*(x13421)*(x13423)*(x13424)))+(((IkReal(-1.00000000000000))*(x13422)*(x13428)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x13418)))+(((cj2)*(x13417))))) != 0)?((IkReal)1/(((((cj2)*(x13418)))+(((cj2)*(x13417)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x13426)*(x13428)))+(((cj1)*(r21)*(x13429)))+(((x13420)*(x13432)))+(((sj1)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13421)*(x13422)))+(((sj1)*(x13423)*(x13424)))+(((cj1)*(r20)*(x13423)))+(((x13419)*(x13432)))+(((IkReal(-1.00000000000000))*(cj5)*(x13427)*(x13428)))))), ((((IKabs(((x13417)+(x13418))) != 0)?((IkReal)1/(((x13417)+(x13418)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13419)*(x13421)*(x13430)))+(((r20)*(sj1)*(x13423)))+(((x13425)*(x13427)))+(((r21)*(sj1)*(x13429)))+(((IkReal(-1.00000000000000))*(x13421)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13420)*(x13421)*(x13430)))+(((x13425)*(x13426)))+(((IkReal(-1.00000000000000))*(x13421)*(x13423)*(x13424)))+(((IkReal(-1.00000000000000))*(x13422)*(x13428))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13433=IKcos(j3); +IkReal x13434=IKsin(j3); +IkReal x13435=((sj0)*(sj5)); +IkReal x13436=((r00)*(sj6)); +IkReal x13437=((IkReal(1.00000000000000))*(cj4)); +IkReal x13438=((cj6)*(r01)); +IkReal x13439=((cj0)*(cj5)); +IkReal x13440=((cj5)*(sj0)); +IkReal x13441=((cj6)*(r11)); +IkReal x13442=((cj6)*(sj4)); +IkReal x13443=((IkReal(1.00000000000000))*(cj1)); +IkReal x13444=((cj4)*(cj5)); +IkReal x13445=((cj6)*(r21)); +IkReal x13446=((r20)*(sj6)); +IkReal x13447=((r10)*(sj6)); +IkReal x13448=((cj0)*(sj5)); +IkReal x13449=((IkReal(1.00000000000000))*(cj0)); +IkReal x13450=((IkReal(1.00000000000000))*(x13448)); +IkReal x13451=((IkReal(1.00000000000000))*(x13434)); +IkReal x13452=((cj0)*(sj4)*(sj6)); +IkReal x13453=((cj2)*(x13434)); +IkReal x13454=((sj0)*(sj4)*(sj6)); +IkReal x13455=((IkReal(1.00000000000000))*(sj1)*(x13433)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13455)))+(((sj5)*(x13445)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x13443)*(x13453)))+(((sj5)*(x13446)))); +evalcond[1]=((((r20)*(x13442)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(sj1)*(x13451)))+(((cj4)*(r22)*(sj5)))+(((cj1)*(cj2)*(x13433)))+(((x13444)*(x13446)))+(((x13444)*(x13445)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x13440)))+(((IkReal(-1.00000000000000))*(sj2)*(x13451)))+(((r12)*(x13439)))+(((IkReal(-1.00000000000000))*(x13447)*(x13450)))+(((IkReal(-1.00000000000000))*(x13441)*(x13450)))+(((x13435)*(x13436)))+(((x13435)*(x13438)))); +evalcond[3]=((((sj1)*(x13453)))+(((IkReal(-1.00000000000000))*(x13438)*(x13450)))+(((r02)*(x13439)))+(((IkReal(-1.00000000000000))*(x13433)*(x13443)))+(((IkReal(-1.00000000000000))*(x13436)*(x13450)))+(((IkReal(-1.00000000000000))*(x13435)*(x13441)))+(((r12)*(x13440)))+(((IkReal(-1.00000000000000))*(x13435)*(x13447)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x13442)*(x13449)))+(((cj4)*(r02)*(x13435)))+(((sj2)*(x13433)))+(((r11)*(x13452)))+(((cj4)*(x13436)*(x13440)))+(((IkReal(-1.00000000000000))*(x13437)*(x13439)*(x13441)))+(((IkReal(-1.00000000000000))*(r01)*(x13454)))+(((r00)*(sj0)*(x13442)))+(((IkReal(-1.00000000000000))*(r12)*(x13437)*(x13448)))+(((cj4)*(x13438)*(x13440)))+(((IkReal(-1.00000000000000))*(x13437)*(x13439)*(x13447)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x13437)*(x13448)))+(((IkReal(-1.00000000000000))*(x13434)*(x13443)))+(((IkReal(-1.00000000000000))*(r12)*(x13435)*(x13437)))+(((IkReal(-1.00000000000000))*(x13436)*(x13437)*(x13439)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13442)))+(((IkReal(-1.00000000000000))*(x13437)*(x13438)*(x13439)))+(((IkReal(-1.00000000000000))*(x13437)*(x13440)*(x13447)))+(((r01)*(x13452)))+(((IkReal(-1.00000000000000))*(cj2)*(x13455)))+(((IkReal(-1.00000000000000))*(r00)*(x13442)*(x13449)))+(((IkReal(-1.00000000000000))*(x13437)*(x13440)*(x13441)))+(((r11)*(x13454)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13456=((sj1)*(sj6)); +IkReal x13457=((r20)*(sj5)); +IkReal x13458=((IkReal(1.00000000000000))*(r21)); +IkReal x13459=((cj5)*(cj6)); +IkReal x13460=((r22)*(sj5)); +IkReal x13461=((cj4)*(sj1)); +IkReal x13462=((cj1)*(cj2)); +IkReal x13463=((cj5)*(r20)); +IkReal x13464=((cj4)*(x13462)); +IkReal x13465=((IkReal(1.00000000000000))*(cj5)*(r22)); +IkReal x13466=((cj6)*(r20)*(sj4)); +IkReal x13467=((cj6)*(r21)*(sj5)); +if( IKabs(((gconst4)*(((((sj1)*(x13466)))+(((IkReal(-1.00000000000000))*(sj4)*(x13456)*(x13458)))+(((x13460)*(x13461)))+(((cj4)*(x13456)*(x13463)))+(((r21)*(x13459)*(x13461)))+(((x13462)*(x13467)))+(((IkReal(-1.00000000000000))*(x13462)*(x13465)))+(((sj6)*(x13457)*(x13462))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst4)*(((((sj1)*(x13467)))+(((IkReal(-1.00000000000000))*(x13460)*(x13464)))+(((x13456)*(x13457)))+(((IkReal(-1.00000000000000))*(x13458)*(x13459)*(x13464)))+(((IkReal(-1.00000000000000))*(sj6)*(x13463)*(x13464)))+(((IkReal(-1.00000000000000))*(x13462)*(x13466)))+(((IkReal(-1.00000000000000))*(sj1)*(x13465)))+(((r21)*(sj4)*(sj6)*(x13462))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst4)*(((((sj1)*(x13466)))+(((IkReal(-1.00000000000000))*(sj4)*(x13456)*(x13458)))+(((x13460)*(x13461)))+(((cj4)*(x13456)*(x13463)))+(((r21)*(x13459)*(x13461)))+(((x13462)*(x13467)))+(((IkReal(-1.00000000000000))*(x13462)*(x13465)))+(((sj6)*(x13457)*(x13462)))))), ((gconst4)*(((((sj1)*(x13467)))+(((IkReal(-1.00000000000000))*(x13460)*(x13464)))+(((x13456)*(x13457)))+(((IkReal(-1.00000000000000))*(x13458)*(x13459)*(x13464)))+(((IkReal(-1.00000000000000))*(sj6)*(x13463)*(x13464)))+(((IkReal(-1.00000000000000))*(x13462)*(x13466)))+(((IkReal(-1.00000000000000))*(sj1)*(x13465)))+(((r21)*(sj4)*(sj6)*(x13462))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13468=IKcos(j3); +IkReal x13469=IKsin(j3); +IkReal x13470=((sj0)*(sj5)); +IkReal x13471=((r00)*(sj6)); +IkReal x13472=((IkReal(1.00000000000000))*(cj4)); +IkReal x13473=((cj6)*(r01)); +IkReal x13474=((cj0)*(cj5)); +IkReal x13475=((cj5)*(sj0)); +IkReal x13476=((cj6)*(r11)); +IkReal x13477=((cj6)*(sj4)); +IkReal x13478=((IkReal(1.00000000000000))*(cj1)); +IkReal x13479=((cj4)*(cj5)); +IkReal x13480=((cj6)*(r21)); +IkReal x13481=((r20)*(sj6)); +IkReal x13482=((r10)*(sj6)); +IkReal x13483=((cj0)*(sj5)); +IkReal x13484=((IkReal(1.00000000000000))*(cj0)); +IkReal x13485=((IkReal(1.00000000000000))*(x13483)); +IkReal x13486=((IkReal(1.00000000000000))*(x13469)); +IkReal x13487=((cj0)*(sj4)*(sj6)); +IkReal x13488=((cj2)*(x13469)); +IkReal x13489=((sj0)*(sj4)*(sj6)); +IkReal x13490=((IkReal(1.00000000000000))*(sj1)*(x13468)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13490)))+(((sj5)*(x13480)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13481)))+(((IkReal(-1.00000000000000))*(x13478)*(x13488)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13479)*(x13480)))+(((cj1)*(cj2)*(x13468)))+(((IkReal(-1.00000000000000))*(sj1)*(x13486)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x13477)))+(((x13479)*(x13481)))); +evalcond[2]=((((x13470)*(x13471)))+(((IkReal(-1.00000000000000))*(x13482)*(x13485)))+(((x13470)*(x13473)))+(((IkReal(-1.00000000000000))*(sj2)*(x13486)))+(((r12)*(x13474)))+(((IkReal(-1.00000000000000))*(x13476)*(x13485)))+(((IkReal(-1.00000000000000))*(r02)*(x13475)))); +evalcond[3]=((((sj1)*(x13488)))+(((IkReal(-1.00000000000000))*(x13470)*(x13476)))+(((IkReal(-1.00000000000000))*(x13468)*(x13478)))+(((r02)*(x13474)))+(((IkReal(-1.00000000000000))*(x13471)*(x13485)))+(((IkReal(-1.00000000000000))*(x13470)*(x13482)))+(((IkReal(-1.00000000000000))*(x13473)*(x13485)))+(((r12)*(x13475)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x13477)*(x13484)))+(((IkReal(-1.00000000000000))*(r12)*(x13472)*(x13483)))+(((cj4)*(x13471)*(x13475)))+(((IkReal(-1.00000000000000))*(x13472)*(x13474)*(x13476)))+(((IkReal(-1.00000000000000))*(x13472)*(x13474)*(x13482)))+(((r00)*(sj0)*(x13477)))+(((r11)*(x13487)))+(((sj2)*(x13468)))+(((cj4)*(x13473)*(x13475)))+(((IkReal(-1.00000000000000))*(r01)*(x13489)))+(((cj4)*(r02)*(x13470)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x13471)*(x13472)*(x13474)))+(((IkReal(-1.00000000000000))*(cj2)*(x13490)))+(((r11)*(x13489)))+(((IkReal(-1.00000000000000))*(x13472)*(x13475)*(x13482)))+(((IkReal(-1.00000000000000))*(x13469)*(x13478)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13477)))+(((IkReal(-1.00000000000000))*(r02)*(x13472)*(x13483)))+(((r01)*(x13487)))+(((IkReal(-1.00000000000000))*(x13472)*(x13475)*(x13476)))+(((IkReal(-1.00000000000000))*(r12)*(x13470)*(x13472)))+(((IkReal(-1.00000000000000))*(r00)*(x13477)*(x13484)))+(((IkReal(-1.00000000000000))*(x13472)*(x13473)*(x13474)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} +} +} + +} + +} + } +} +return solutions.GetNumSolutions()>0; +} + +static inline bool checkconsistency8(const IkReal* Breal) +{ + IkReal norm = 0.1; + for(int i = 0; i < 7; ++i) { + norm += IKabs(Breal[i]); + } + IkReal tol = 1e-5*norm; // have to increase the threshold since many computations are involved + return IKabs(Breal[0]*Breal[1]-Breal[2]) < tol && IKabs(Breal[1]*Breal[1]-Breal[3]) < tol && IKabs(Breal[0]*Breal[3]-Breal[4]) < tol && IKabs(Breal[1]*Breal[3]-Breal[5]) < tol && IKabs(Breal[0]*Breal[5]-Breal[6]) < tol; +} +/// \brief Solve the det Ax^2+Bx+C = 0 problem using the Manocha and Canny method (1994) +/// +/// matcoeffs is of length 54*3, for 3 matrices +static inline void solvedialyticpoly8qep(const IkReal* matcoeffs, IkReal* rawroots, int& numroots) +{ + const IkReal tol = 128.0*std::numeric_limits::epsilon(); + IkReal IKFAST_ALIGNED16(M[16*16]) = {0}; + IkReal IKFAST_ALIGNED16(A[8*8]); + IkReal IKFAST_ALIGNED16(work[16*16*15]); + int ipiv[8]; + int info, coeffindex; + const int worksize=16*16*15; + const int matrixdim = 8; + const int matrixdim2 = 16; + numroots = 0; + // first setup M = [0 I; -C -B] and A + coeffindex = 0; + for(int j = 0; j < 4; ++j) { + for(int k = 0; k < 6; ++k) { + M[matrixdim+(j+4)+2*matrixdim*k] = M[matrixdim+j+2*matrixdim*(k+2)] = -matcoeffs[coeffindex++]; + } + } + for(int j = 0; j < 4; ++j) { + for(int k = 0; k < 6; ++k) { + M[matrixdim+(j+4)+2*matrixdim*k+matrixdim*2*matrixdim] = M[matrixdim+j+2*matrixdim*(k+2)+matrixdim*2*matrixdim] = -matcoeffs[coeffindex++]; + } + } + for(int j = 0; j < 4; ++j) { + for(int k = 0; k < 6; ++k) { + A[(j+4)+matrixdim*k] = A[j+matrixdim*(k+2)] = matcoeffs[coeffindex++]; + } + for(int k = 0; k < 2; ++k) { + A[j+matrixdim*k] = A[(j+4)+matrixdim*(k+6)] = 0; + } + } + const IkReal lfpossibilities[4][4] = {{1,-1,1,1},{1,0,-2,1},{1,1,2,0},{1,-1,4,1}}; + int lfindex = -1; + bool bsingular = true; + do { + dgetrf_(&matrixdim,&matrixdim,A,&matrixdim,&ipiv[0],&info); + if( info == 0 ) { + bsingular = false; + for(int j = 0; j < matrixdim; ++j) { + if( IKabs(A[j*matrixdim+j]) < 100*tol ) { + bsingular = true; + break; + } + } + if( !bsingular ) { + break; + } + } + if( lfindex == 3 ) { + break; + } + // transform by the linear functional + lfindex++; + const IkReal* lf = lfpossibilities[lfindex]; + // have to reinitialize A + coeffindex = 0; + for(int j = 0; j < 4; ++j) { + for(int k = 0; k < 6; ++k) { + IkReal a = matcoeffs[coeffindex+48], b = matcoeffs[coeffindex+24], c = matcoeffs[coeffindex]; + A[(j+4)+matrixdim*k] = A[j+matrixdim*(k+2)] = lf[0]*lf[0]*a+lf[0]*lf[2]*b+lf[2]*lf[2]*c; + M[matrixdim+(j+4)+2*matrixdim*k] = M[matrixdim+j+2*matrixdim*(k+2)] = -(lf[1]*lf[1]*a + lf[1]*lf[3]*b + lf[3]*lf[3]*c); + M[matrixdim+(j+4)+2*matrixdim*k+matrixdim*2*matrixdim] = M[matrixdim+j+2*matrixdim*(k+2)+matrixdim*2*matrixdim] = -(2*lf[0]*lf[1]*a + (lf[0]*lf[3]+lf[1]*lf[2])*b + 2*lf[2]*lf[3]*c); + coeffindex++; + } + for(int k = 0; k < 2; ++k) { + A[j+matrixdim*k] = A[(j+4)+matrixdim*(k+6)] = 0; + } + } + } while(lfindex<4); + + if( bsingular ) { + return; + } + dgetrs_("No transpose", &matrixdim, &matrixdim2, A, &matrixdim, &ipiv[0], &M[matrixdim], &matrixdim2, &info); + if( info != 0 ) { + return; + } + + // set identity in upper corner + for(int j = 0; j < matrixdim; ++j) { + M[matrixdim*2*matrixdim+j+matrixdim*2*j] = 1; + } + IkReal IKFAST_ALIGNED16(wr[16]); + IkReal IKFAST_ALIGNED16(wi[16]); + IkReal IKFAST_ALIGNED16(vr[16*16]); + int one=1; + dgeev_("N", "V", &matrixdim2, M, &matrixdim2, wr, wi,NULL, &one, vr, &matrixdim2, work, &worksize, &info); + if( info != 0 ) { + return; + } + IkReal Breal[matrixdim-1]; + for(int i = 0; i < matrixdim2; ++i) { + if( IKabs(wi[i]) < tol*100 ) { + IkReal* ev = vr+matrixdim2*i; + if( IKabs(wr[i]) > 1 ) { + ev += matrixdim; + } + // consistency has to be checked!! + if( IKabs(ev[0]) < tol ) { + continue; + } + IkReal iconst = 1/ev[0]; + for(int j = 1; j < matrixdim; ++j) { + Breal[j-1] = ev[j]*iconst; + } + if( checkconsistency8(Breal) ) { + if( lfindex >= 0 ) { + const IkReal* lf = lfpossibilities[lfindex]; + rawroots[numroots++] = (wr[i]*lf[0]+lf[1])/(wr[i]*lf[2]+lf[3]); + } + else { + rawroots[numroots++] = wr[i]; + } + bool bsmall0=IKabs(ev[0]) > IKabs(ev[2]); + bool bsmall1=IKabs(ev[0]) > IKabs(ev[1]); + if( bsmall0 && bsmall1 ) { + rawroots[numroots++] = ev[2]/ev[0]; + rawroots[numroots++] = ev[1]/ev[0]; + } + else if( bsmall0 && !bsmall1 ) { + rawroots[numroots++] = ev[3]/ev[1]; + rawroots[numroots++] = ev[1]/ev[0]; + } + else if( !bsmall0 && bsmall1 ) { + rawroots[numroots++] = ev[6]/ev[4]; + rawroots[numroots++] = ev[7]/ev[6]; + } + else if( !bsmall0 && !bsmall1 ) { + rawroots[numroots++] = ev[7]/ev[5]; + rawroots[numroots++] = ev[7]/ev[6]; + } + } + } + } +}}; + + +/// solves the inverse kinematics equations. +/// \param pfree is an array specifying the free joints of the chain. +IKFAST_API bool ComputeIk(const IkReal* eetrans, const IkReal* eerot, const IkReal* pfree, IkSolutionListBase& solutions) { +IKSolver solver; +return solver.ComputeIk(eetrans,eerot,pfree,solutions); +} + +IKFAST_API const char* GetKinematicsHash() { return ""; } + +IKFAST_API const char* GetIkFastVersion() { return IKFAST_STRINGIZE(IKFAST_VERSION); } + +#ifdef IKFAST_NAMESPACE +} // end namespace +#endif + +#ifndef IKFAST_NO_MAIN +#include +#include +#ifdef IKFAST_NAMESPACE +using namespace IKFAST_NAMESPACE; +#endif +int main(int argc, char** argv) +{ + if( argc != 12+GetNumFreeParameters()+1 ) { + printf("\nUsage: ./ik r00 r01 r02 t0 r10 r11 r12 t1 r20 r21 r22 t2 free0 ...\n\n" + "Returns the ik solutions given the transformation of the end effector specified by\n" + "a 3x3 rotation R (rXX), and a 3x1 translation (tX).\n" + "There are %d free parameters that have to be specified.\n\n",GetNumFreeParameters()); + return 1; + } + + IkSolutionList solutions; + std::vector vfree(GetNumFreeParameters()); + IkReal eerot[9],eetrans[3]; + eerot[0] = atof(argv[1]); eerot[1] = atof(argv[2]); eerot[2] = atof(argv[3]); eetrans[0] = atof(argv[4]); + eerot[3] = atof(argv[5]); eerot[4] = atof(argv[6]); eerot[5] = atof(argv[7]); eetrans[1] = atof(argv[8]); + eerot[6] = atof(argv[9]); eerot[7] = atof(argv[10]); eerot[8] = atof(argv[11]); eetrans[2] = atof(argv[12]); + for(std::size_t i = 0; i < vfree.size(); ++i) + vfree[i] = atof(argv[13+i]); + bool bSuccess = ComputeIk(eetrans, eerot, vfree.size() > 0 ? &vfree[0] : NULL, solutions); + + if( !bSuccess ) { + fprintf(stderr,"Failed to get ik solution\n"); + return -1; + } + + printf("Found %d ik solutions:\n", (int)solutions.GetNumSolutions()); + std::vector solvalues(GetNumJoints()); + for(std::size_t i = 0; i < solutions.GetNumSolutions(); ++i) { + const IkSolutionBase& sol = solutions.GetSolution(i); + printf("sol%d (free=%d): ", (int)i, (int)sol.GetFree().size()); + std::vector vsolfree(sol.GetFree().size()); + sol.GetSolution(&solvalues[0],vsolfree.size()>0?&vsolfree[0]:NULL); + for( std::size_t j = 0; j < solvalues.size(); ++j) + printf("%.15f, ", solvalues[j]); + printf("\n"); + } + return 0; +} + +#endif diff --git a/src/ikfast/baxter_left_arm_ikfast_solver.cpp.REMOVED.git-id b/src/ikfast/baxter_left_arm_ikfast_solver.cpp.REMOVED.git-id deleted file mode 100644 index 13515a8a..00000000 --- a/src/ikfast/baxter_left_arm_ikfast_solver.cpp.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -2b192edeb95c2bd321971dd4373821c171892dd8 \ No newline at end of file diff --git a/src/ikfast/baxter_right_arm_ikfast_solver.cpp b/src/ikfast/baxter_right_arm_ikfast_solver.cpp new file mode 100644 index 00000000..0d971bf8 --- /dev/null +++ b/src/ikfast/baxter_right_arm_ikfast_solver.cpp @@ -0,0 +1,44539 @@ +/// autogenerated analytical inverse kinematics code from ikfast program part of OpenRAVE +/// \author Rosen Diankov +/// +/// Licensed under the Apache License, Version 2.0 (the "License"); +/// you may not use this file except in compliance with the License. +/// You may obtain a copy of the License at +/// http://www.apache.org/licenses/LICENSE-2.0 +/// +/// Unless required by applicable law or agreed to in writing, software +/// distributed under the License is distributed on an "AS IS" BASIS, +/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +/// See the License for the specific language governing permissions and +/// limitations under the License. +/// +/// ikfast version 61 generated on 2013-10-08 17:29:42.298650 +/// To compile with gcc: +/// gcc -lstdc++ ik.cpp +/// To compile without any main function as a shared object (might need -llapack): +/// gcc -fPIC -lstdc++ -DIKFAST_NO_MAIN -DIKFAST_CLIBRARY -shared -Wl,-soname,libik.so -o libik.so ik.cpp +#define IKFAST_HAS_LIBRARY +#include "ikfast.h" // found inside share/openrave-X.Y/python/ikfast.h +using namespace ikfast; + +// check if the included ikfast version matches what this file was compiled with +#define IKFAST_COMPILE_ASSERT(x) extern int __dummy[(int)x] +IKFAST_COMPILE_ASSERT(IKFAST_VERSION==61); + +#include +#include +#include +#include +#include + +#define IKFAST_STRINGIZE2(s) #s +#define IKFAST_STRINGIZE(s) IKFAST_STRINGIZE2(s) + +#ifndef IKFAST_ASSERT +#include +#include +#include + +#ifdef _MSC_VER +#ifndef __PRETTY_FUNCTION__ +#define __PRETTY_FUNCTION__ __FUNCDNAME__ +#endif +#endif + +#ifndef __PRETTY_FUNCTION__ +#define __PRETTY_FUNCTION__ __func__ +#endif + +#define IKFAST_ASSERT(b) { if( !(b) ) { std::stringstream ss; ss << "ikfast exception: " << __FILE__ << ":" << __LINE__ << ": " <<__PRETTY_FUNCTION__ << ": Assertion '" << #b << "' failed"; throw std::runtime_error(ss.str()); } } + +#endif + +#if defined(_MSC_VER) +#define IKFAST_ALIGNED16(x) __declspec(align(16)) x +#else +#define IKFAST_ALIGNED16(x) x __attribute((aligned(16))) +#endif + +#define IK2PI ((IkReal)6.28318530717959) +#define IKPI ((IkReal)3.14159265358979) +#define IKPI_2 ((IkReal)1.57079632679490) + +#ifdef _MSC_VER +#ifndef isnan +#define isnan _isnan +#endif +#endif // _MSC_VER + +// lapack routines +extern "C" { + void dgetrf_ (const int* m, const int* n, double* a, const int* lda, int* ipiv, int* info); + void zgetrf_ (const int* m, const int* n, std::complex* a, const int* lda, int* ipiv, int* info); + void dgetri_(const int* n, const double* a, const int* lda, int* ipiv, double* work, const int* lwork, int* info); + void dgesv_ (const int* n, const int* nrhs, double* a, const int* lda, int* ipiv, double* b, const int* ldb, int* info); + void dgetrs_(const char *trans, const int *n, const int *nrhs, double *a, const int *lda, int *ipiv, double *b, const int *ldb, int *info); + void dgeev_(const char *jobvl, const char *jobvr, const int *n, double *a, const int *lda, double *wr, double *wi,double *vl, const int *ldvl, double *vr, const int *ldvr, double *work, const int *lwork, int *info); +} + +using namespace std; // necessary to get std math routines + +#ifdef IKFAST_NAMESPACE +namespace IKFAST_NAMESPACE { +#endif + +inline float IKabs(float f) { return fabsf(f); } +inline double IKabs(double f) { return fabs(f); } + +inline float IKsqr(float f) { return f*f; } +inline double IKsqr(double f) { return f*f; } + +inline float IKlog(float f) { return logf(f); } +inline double IKlog(double f) { return log(f); } + +// allows asin and acos to exceed 1 +#ifndef IKFAST_SINCOS_THRESH +#define IKFAST_SINCOS_THRESH ((IkReal)0.000001) +#endif + +// used to check input to atan2 for degenerate cases +#ifndef IKFAST_ATAN2_MAGTHRESH +#define IKFAST_ATAN2_MAGTHRESH ((IkReal)2e-6) +#endif + +// minimum distance of separate solutions +#ifndef IKFAST_SOLUTION_THRESH +#define IKFAST_SOLUTION_THRESH ((IkReal)1e-6) +#endif + +inline float IKasin(float f) +{ +IKFAST_ASSERT( f > -1-IKFAST_SINCOS_THRESH && f < 1+IKFAST_SINCOS_THRESH ); // any more error implies something is wrong with the solver +if( f <= -1 ) return float(-IKPI_2); +else if( f >= 1 ) return float(IKPI_2); +return asinf(f); +} +inline double IKasin(double f) +{ +IKFAST_ASSERT( f > -1-IKFAST_SINCOS_THRESH && f < 1+IKFAST_SINCOS_THRESH ); // any more error implies something is wrong with the solver +if( f <= -1 ) return -IKPI_2; +else if( f >= 1 ) return IKPI_2; +return asin(f); +} + +// return positive value in [0,y) +inline float IKfmod(float x, float y) +{ + while(x < 0) { + x += y; + } + return fmodf(x,y); +} + +// return positive value in [0,y) +inline double IKfmod(double x, double y) +{ + while(x < 0) { + x += y; + } + return fmod(x,y); +} + +inline float IKacos(float f) +{ +IKFAST_ASSERT( f > -1-IKFAST_SINCOS_THRESH && f < 1+IKFAST_SINCOS_THRESH ); // any more error implies something is wrong with the solver +if( f <= -1 ) return float(IKPI); +else if( f >= 1 ) return float(0); +return acosf(f); +} +inline double IKacos(double f) +{ +IKFAST_ASSERT( f > -1-IKFAST_SINCOS_THRESH && f < 1+IKFAST_SINCOS_THRESH ); // any more error implies something is wrong with the solver +if( f <= -1 ) return IKPI; +else if( f >= 1 ) return 0; +return acos(f); +} +inline float IKsin(float f) { return sinf(f); } +inline double IKsin(double f) { return sin(f); } +inline float IKcos(float f) { return cosf(f); } +inline double IKcos(double f) { return cos(f); } +inline float IKtan(float f) { return tanf(f); } +inline double IKtan(double f) { return tan(f); } +inline float IKsqrt(float f) { if( f <= 0.0f ) return 0.0f; return sqrtf(f); } +inline double IKsqrt(double f) { if( f <= 0.0 ) return 0.0; return sqrt(f); } +inline float IKatan2(float fy, float fx) { + if( isnan(fy) ) { + IKFAST_ASSERT(!isnan(fx)); // if both are nan, probably wrong value will be returned + return float(IKPI_2); + } + else if( isnan(fx) ) { + return 0; + } + return atan2f(fy,fx); +} +inline double IKatan2(double fy, double fx) { + if( isnan(fy) ) { + IKFAST_ASSERT(!isnan(fx)); // if both are nan, probably wrong value will be returned + return IKPI_2; + } + else if( isnan(fx) ) { + return 0; + } + return atan2(fy,fx); +} + +inline float IKsign(float f) { + if( f > 0 ) { + return float(1); + } + else if( f < 0 ) { + return float(-1); + } + return 0; +} + +inline double IKsign(double f) { + if( f > 0 ) { + return 1.0; + } + else if( f < 0 ) { + return -1.0; + } + return 0; +} + +/// solves the forward kinematics equations. +/// \param pfree is an array specifying the free joints of the chain. +IKFAST_API void ComputeFk(const IkReal* j, IkReal* eetrans, IkReal* eerot) { +IkReal x0,x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17,x18,x19,x20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30,x31,x32,x33,x34,x35,x36,x37,x38,x39,x40,x41,x42,x43,x44,x45,x46,x47,x48,x49,x50,x51,x52,x53,x54,x55,x56,x57,x58,x59,x60,x61,x62,x63,x64,x65,x66,x67,x68,x69,x70,x71,x72,x73; +x0=IKcos(j[0]); +x1=IKcos(j[2]); +x2=IKsin(j[1]); +x3=IKsin(j[0]); +x4=IKsin(j[2]); +x5=IKsin(j[3]); +x6=IKcos(j[1]); +x7=IKcos(j[3]); +x8=IKsin(j[4]); +x9=IKcos(j[4]); +x10=IKcos(j[6]); +x11=IKsin(j[6]); +x12=IKsin(j[5]); +x13=IKcos(j[5]); +x14=((IkReal(0.0690000000000000))*(x0)); +x15=((IkReal(0.0100000000000000))*(x7)); +x16=((IkReal(1.00000000000000))*(x3)); +x17=((IkReal(0.279525000000000))*(x5)); +x18=((IkReal(1.00000000000000))*(x9)); +x19=((IkReal(0.279525000000000))*(x9)); +x20=((IkReal(1.00000000000000))*(x5)); +x21=((IkReal(0.374290000000000))*(x3)); +x22=((IkReal(0.374290000000000))*(x0)); +x23=((IkReal(1.00000000000000))*(x0)); +x24=((IkReal(0.0100000000000000))*(x2)); +x25=((IkReal(1.00000000000000))*(x8)); +x26=((IkReal(0.279525000000000))*(x8)); +x27=((IkReal(0.0690000000000000))*(x3)); +x28=((IkReal(0.0100000000000000))*(x0)); +x29=((IkReal(-1.00000000000000))*(x9)); +x30=((x2)*(x7)); +x31=((x1)*(x6)); +x32=((IkReal(-1.00000000000000))*(x12)); +x33=((x1)*(x2)); +x34=((x0)*(x4)); +x35=((x5)*(x6)); +x36=((x3)*(x6)); +x37=((x6)*(x7)); +x38=((IkReal(-1.00000000000000))*(x8)); +x39=((x1)*(x3)); +x40=((x4)*(x6)); +x41=((IkReal(-1.00000000000000))*(x13)); +x42=((x2)*(x23)*(x4)); +x43=((x23)*(x37)); +x44=((x16)*(x33)); +x45=((x16)*(x37)); +x46=((x18)*(x40)); +x47=((x39)+(((IkReal(-1.00000000000000))*(x42)))); +x48=((((IkReal(-1.00000000000000))*(x44)))+(x34)); +x49=((((IkReal(-1.00000000000000))*(x31)*(x7)))+(((x2)*(x5)))); +x50=((((x31)*(x5)))+(x30)); +x51=((x42)+(((IkReal(-1.00000000000000))*(x1)*(x16)))); +x52=((x44)+(((IkReal(-1.00000000000000))*(x23)*(x4)))); +x53=((((x23)*(x33)))+(((x16)*(x4)))); +x54=((IkReal(-1.00000000000000))*(x53)); +x55=((((x1)*(x23)))+(((x16)*(x2)*(x4)))); +x56=((x48)*(x7)); +x57=((x5)*(x52)); +x58=((x51)*(x8)); +x59=((x54)*(x7)); +x60=((x55)*(x8)); +x61=((x5)*(x53)); +x62=((x56)+(((IkReal(-1.00000000000000))*(x16)*(x35)))); +x63=((((x40)*(x8)))+(((x49)*(x9)))); +x64=((x57)+(((IkReal(-1.00000000000000))*(x45)))); +x65=((x59)+(((IkReal(-1.00000000000000))*(x0)*(x20)*(x6)))); +x66=((x61)+(((IkReal(-1.00000000000000))*(x43)))); +x67=((x13)*(x63)); +x68=((x12)*(x64)); +x69=((x60)+(((x62)*(x9)))); +x70=((x58)+(((x65)*(x9)))); +x71=((x13)*(x69)); +x72=((((IkReal(-1.00000000000000))*(x29)*(x55)))+(((x38)*(x62)))); +x73=((x13)*(x70)); +eerot[0]=((((x10)*(((((x12)*(x66)))+(x73)))))+(((x11)*(((((x38)*(x65)))+(((x29)*(x47)))))))); +eerot[1]=((((x10)*(((((IkReal(-1.00000000000000))*(x25)*(x65)))+(((IkReal(-1.00000000000000))*(x18)*(x47)))))))+(((x11)*(((((x32)*(x66)))+(((x41)*(x70)))))))); +eerot[2]=((((x13)*(((x43)+(((IkReal(-1.00000000000000))*(x20)*(x53)))))))+(((x12)*(x70)))); +IkReal x74=((IkReal(1.00000000000000))*(x35)); +IkReal x75=((IkReal(1.00000000000000))*(x4)); +IkReal x76=((IkReal(1.00000000000000))*(x33)); +eetrans[0]=((IkReal(0.0556950000000000))+(((x12)*(((((x26)*(x51)))+(((x19)*(((x59)+(((IkReal(-1.00000000000000))*(x0)*(x74)))))))))))+(((IkReal(-1.00000000000000))*(x27)*(x75)))+(x14)+(((IkReal(-1.00000000000000))*(x14)*(x76)))+(((x22)*(x37)))+(((x5)*(((((IkReal(-1.00000000000000))*(x22)*(x76)))+(((IkReal(-1.00000000000000))*(x21)*(x75)))))))+(((x9)*(((((x15)*(x54)))+(((IkReal(-1.00000000000000))*(x28)*(x74)))))))+(((x13)*(((((IkReal(0.279525000000000))*(x0)*(x37)))+(((IkReal(-1.00000000000000))*(x17)*(x53)))))))+(((IkReal(0.364420000000000))*(x0)*(x6)))+(((x8)*(((((x24)*(x34)))+(((IkReal(-0.0100000000000000))*(x39)))))))); +eerot[3]=((((x10)*(((x68)+(x71)))))+(((x11)*(x72)))); +eerot[4]=((((x10)*(x72)))+(((x11)*(((((IkReal(-1.00000000000000))*(x71)))+(((IkReal(-1.00000000000000))*(x68)))))))); +eerot[5]=((((x12)*(x69)))+(((x13)*(((((IkReal(-1.00000000000000))*(x20)*(x52)))+(x45)))))); +IkReal x77=((x3)*(x35)); +IkReal x78=((IkReal(1.00000000000000))*(x33)); +eetrans[1]=((((x12)*(((((x26)*(x55)))+(((x19)*(((x56)+(((IkReal(-1.00000000000000))*(x77)))))))))))+(((IkReal(-1.00000000000000))*(x27)*(x78)))+(x27)+(((x8)*(((((x24)*(x3)*(x4)))+(((x1)*(x28)))))))+(((x9)*(((((x15)*(x48)))+(((IkReal(-0.0100000000000000))*(x77)))))))+(((x21)*(x37)))+(((x13)*(((((IkReal(-1.00000000000000))*(x17)*(x52)))+(((IkReal(0.279525000000000))*(x36)*(x7)))))))+(((x5)*(((((x22)*(x4)))+(((IkReal(-1.00000000000000))*(x21)*(x78)))))))+(((IkReal(0.364420000000000))*(x36)))+(((x14)*(x4)))); +eerot[6]=((((x11)*(((x46)+(((x38)*(x49)))))))+(((x10)*(((((x12)*(x50)))+(x67)))))); +eerot[7]=((((x10)*(((x46)+(((IkReal(-1.00000000000000))*(x25)*(x49)))))))+(((x11)*(((((x32)*(x50)))+(((x41)*(x63)))))))); +eerot[8]=((((x13)*(((((IkReal(-1.00000000000000))*(x30)))+(((IkReal(-1.00000000000000))*(x20)*(x31)))))))+(((x12)*(x63)))); +IkReal x79=((IkReal(1.00000000000000))*(x31)); +eetrans[2]=((IkReal(0.281388000000000))+(((IkReal(-0.0690000000000000))*(x31)))+(((IkReal(0.0100000000000000))*(x40)*(x8)))+(((IkReal(-0.374290000000000))*(x30)))+(((IkReal(-0.364420000000000))*(x2)))+(((x12)*(((((x19)*(x49)))+(((x26)*(x40)))))))+(((x13)*(((((IkReal(-0.279525000000000))*(x30)))+(((IkReal(-1.00000000000000))*(x17)*(x79)))))))+(((x9)*(((((IkReal(-1.00000000000000))*(x15)*(x79)))+(((x24)*(x5)))))))+(((IkReal(-0.374290000000000))*(x31)*(x5)))); +} + +IKFAST_API int GetNumFreeParameters() { return 1; } +IKFAST_API int* GetFreeParameters() { static int freeparams[] = {5}; return freeparams; } +IKFAST_API int GetNumJoints() { return 7; } + +IKFAST_API int GetIkRealSize() { return sizeof(IkReal); } + +IKFAST_API int GetIkType() { return 0x67000001; } + +class IKSolver { +public: +IkReal j0,cj0,sj0,htj0,j1,cj1,sj1,htj1,j2,cj2,sj2,htj2,j3,cj3,sj3,htj3,j4,cj4,sj4,htj4,j6,cj6,sj6,htj6,j5,cj5,sj5,htj5,new_r00,r00,rxp0_0,new_r01,r01,rxp0_1,new_r02,r02,rxp0_2,new_r10,r10,rxp1_0,new_r11,r11,rxp1_1,new_r12,r12,rxp1_2,new_r20,r20,rxp2_0,new_r21,r21,rxp2_1,new_r22,r22,rxp2_2,new_px,px,npx,new_py,py,npy,new_pz,pz,npz,pp; +unsigned char _ij0[2], _nj0,_ij1[2], _nj1,_ij2[2], _nj2,_ij3[2], _nj3,_ij4[2], _nj4,_ij6[2], _nj6,_ij5[2], _nj5; + +bool ComputeIk(const IkReal* eetrans, const IkReal* eerot, const IkReal* pfree, IkSolutionListBase& solutions) { +j0=numeric_limits::quiet_NaN(); _ij0[0] = -1; _ij0[1] = -1; _nj0 = -1; j1=numeric_limits::quiet_NaN(); _ij1[0] = -1; _ij1[1] = -1; _nj1 = -1; j2=numeric_limits::quiet_NaN(); _ij2[0] = -1; _ij2[1] = -1; _nj2 = -1; j3=numeric_limits::quiet_NaN(); _ij3[0] = -1; _ij3[1] = -1; _nj3 = -1; j4=numeric_limits::quiet_NaN(); _ij4[0] = -1; _ij4[1] = -1; _nj4 = -1; j6=numeric_limits::quiet_NaN(); _ij6[0] = -1; _ij6[1] = -1; _nj6 = -1; _ij5[0] = -1; _ij5[1] = -1; _nj5 = 0; +for(int dummyiter = 0; dummyiter < 1; ++dummyiter) { + solutions.Clear(); +j5=pfree[0]; cj5=cos(pfree[0]); sj5=sin(pfree[0]); +r00 = eerot[0*3+0]; +r01 = eerot[0*3+1]; +r02 = eerot[0*3+2]; +r10 = eerot[1*3+0]; +r11 = eerot[1*3+1]; +r12 = eerot[1*3+2]; +r20 = eerot[2*3+0]; +r21 = eerot[2*3+1]; +r22 = eerot[2*3+2]; +px = eetrans[0]; py = eetrans[1]; pz = eetrans[2]; + +new_r00=((IkReal(-1.00000000000000))*(r01)); +new_r01=r00; +new_r02=r02; +new_px=((IkReal(-0.0556950000000000))+(((IkReal(-0.279525000000000))*(r02)))+(px)); +new_r10=((IkReal(-1.00000000000000))*(r11)); +new_r11=r10; +new_r12=r12; +new_py=((((IkReal(-0.279525000000000))*(r12)))+(py)); +new_r20=((IkReal(-1.00000000000000))*(r21)); +new_r21=r20; +new_r22=r22; +new_pz=((IkReal(-0.281388000000000))+(((IkReal(-0.279525000000000))*(r22)))+(pz)); +r00 = new_r00; r01 = new_r01; r02 = new_r02; r10 = new_r10; r11 = new_r11; r12 = new_r12; r20 = new_r20; r21 = new_r21; r22 = new_r22; px = new_px; py = new_py; pz = new_pz; +pp=(((px)*(px))+((pz)*(pz))+((py)*(py))); +npx=((((py)*(r10)))+(((pz)*(r20)))+(((px)*(r00)))); +npy=((((px)*(r01)))+(((pz)*(r21)))+(((py)*(r11)))); +npz=((((py)*(r12)))+(((pz)*(r22)))+(((px)*(r02)))); +rxp0_0=((((IkReal(-1.00000000000000))*(py)*(r20)))+(((pz)*(r10)))); +rxp0_1=((((px)*(r20)))+(((IkReal(-1.00000000000000))*(pz)*(r00)))); +rxp0_2=((((py)*(r00)))+(((IkReal(-1.00000000000000))*(px)*(r10)))); +rxp1_0=((((pz)*(r11)))+(((IkReal(-1.00000000000000))*(py)*(r21)))); +rxp1_1=((((IkReal(-1.00000000000000))*(pz)*(r01)))+(((px)*(r21)))); +rxp1_2=((((py)*(r01)))+(((IkReal(-1.00000000000000))*(px)*(r11)))); +rxp2_0=((((IkReal(-1.00000000000000))*(py)*(r22)))+(((pz)*(r12)))); +rxp2_1=((((px)*(r22)))+(((IkReal(-1.00000000000000))*(pz)*(r02)))); +rxp2_2=((((py)*(r02)))+(((IkReal(-1.00000000000000))*(px)*(r12)))); +IkReal op[72], zeror[48]; +int numroots; +IkReal x80=((IkReal(0.138000000000000))*(px)); +IkReal x81=((IkReal(0.748580000000000))*(py)); +IkReal x82=((IkReal(0.0200000000000000))*(rxp0_1)); +IkReal x83=((IkReal(0.00866840000000000))*(r20)); +IkReal x84=((IkReal(0.00728840000000000))*(r00)); +IkReal x85=((IkReal(0.0400000000000000))*(rxp1_1)); +IkReal x86=((IkReal(0.00590840000000000))*(r20)); +IkReal x87=((IkReal(0.276000000000000))*(py)); +IkReal x88=((IkReal(1.49716000000000))*(px)); +IkReal x89=((IkReal(0.0400000000000000))*(rxp0_0)); +IkReal x90=((IkReal(0.0145768000000000))*(r10)); +IkReal x91=((IkReal(0.0800000000000000))*(rxp1_0)); +IkReal x92=((IkReal(0.0173368000000000))*(r21)); +IkReal x93=((IkReal(0.0118168000000000))*(r21)); +IkReal x94=((cj5)*(r00)); +IkReal x95=((IkReal(0.0959180554000000))*(sj5)); +IkReal x96=((cj5)*(r12)); +IkReal x97=((cj5)*(r02)); +IkReal x98=((r11)*(sj5)); +IkReal x99=((r12)*(sj5)); +IkReal x100=((r02)*(sj5)); +IkReal x101=((rxp1_2)*(sj5)); +IkReal x102=((cj5)*(rxp2_2)); +IkReal x103=((r00)*(sj5)); +IkReal x104=((npx)*(sj5)); +IkReal x105=((r10)*(sj5)); +IkReal x106=((IkReal(2.00000000000000))*(pp)); +IkReal x107=((rxp0_2)*(sj5)); +IkReal x108=((IkReal(1.45768000000000))*(sj5)); +IkReal x109=((cj5)*(r01)); +IkReal x110=((IkReal(1.00000000000000))*(pp)); +IkReal x111=((cj5)*(npz)); +IkReal x112=((IkReal(4.00000000000000))*(px)); +IkReal x113=((r01)*(sj5)); +IkReal x114=((cj5)*(r10)); +IkReal x115=((npy)*(sj5)); +IkReal x116=((IkReal(2.00000000000000))*(py)); +IkReal x117=((cj5)*(r11)); +IkReal x118=((IkReal(0.0516520200000000))*(x97)); +IkReal x119=((IkReal(0.0200000000000000))*(cj5)*(npy)); +IkReal x120=((IkReal(0.00138000000000000))*(x100)); +IkReal x121=((IkReal(0.0516520200000000))*(x113)); +IkReal x122=((IkReal(0.748580000000000))*(x111)); +IkReal x123=((IkReal(0.00138000000000000))*(x109)); +IkReal x124=((IkReal(0.748580000000000))*(x115)); +IkReal x125=((IkReal(0.0200000000000000))*(npz)*(sj5)); +IkReal x126=((IkReal(0.0526208923000000))*(x98)); +IkReal x127=((IkReal(0.0526208923000000))*(x96)); +IkReal x128=((IkReal(0.00748580000000000))*(x117)); +IkReal x129=((IkReal(0.866840000000000))*(x102)); +IkReal x130=((pp)*(x96)); +IkReal x131=((IkReal(0.866840000000000))*(x101)); +IkReal x132=((IkReal(0.00748580000000000))*(x99)); +IkReal x133=((IkReal(0.728840000000000))*(cj5)*(rxp2_0)); +IkReal x134=((IkReal(0.728840000000000))*(rxp1_0)*(sj5)); +IkReal x135=((IkReal(0.0149716000000000))*(x114)); +IkReal x136=((pp)*(x98)); +IkReal x137=((IkReal(0.0479590277000000))*(x98)); +IkReal x138=((IkReal(0.0479590277000000))*(x96)); +IkReal x139=((IkReal(0.590840000000000))*(x102)); +IkReal x140=((IkReal(0.590840000000000))*(x101)); +IkReal x141=((IkReal(0.103304040000000))*(x96)); +IkReal x142=((IkReal(0.103304040000000))*(x98)); +IkReal x143=((IkReal(0.00276000000000000))*(x99)); +IkReal x144=((IkReal(0.00276000000000000))*(x117)); +IkReal x145=((IkReal(0.0149716000000000))*(x100)); +IkReal x146=((IkReal(0.105241784600000))*(x97)); +IkReal x147=((IkReal(0.105241784600000))*(x113)); +IkReal x148=((IkReal(0.0149716000000000))*(x109)); +IkReal x149=((IkReal(1.45768000000000))*(cj5)*(rxp2_1)); +IkReal x150=((rxp1_1)*(x108)); +IkReal x151=((IkReal(0.0299432000000000))*(x94)); +IkReal x152=((IkReal(0.0959180554000000))*(x97)); +IkReal x153=((r01)*(x95)); +IkReal x154=((IkReal(0.103304040000000))*(x103)); +IkReal x155=((IkReal(1.49716000000000))*(x104)); +IkReal x156=((IkReal(0.0400000000000000))*(cj5)*(npx)); +IkReal x157=((IkReal(0.00276000000000000))*(x94)); +IkReal x158=((IkReal(0.105241784600000))*(x105)); +IkReal x159=((IkReal(1.73368000000000))*(x107)); +IkReal x160=((IkReal(1.18168000000000))*(x107)); +IkReal x161=((r10)*(x95)); +IkReal x162=((x115)*(x116)); +IkReal x163=((x111)*(x116)); +IkReal x164=((x110)*(x98)); +IkReal x165=((IkReal(4.00000000000000))*(py)*(x104)); +IkReal x166=((x105)*(x106)); +IkReal x167=((x112)*(x115)); +IkReal x168=((x111)*(x112)); +IkReal x169=((x106)*(x113)); +IkReal x170=((x106)*(x97)); +IkReal x171=((IkReal(4.00000000000000))*(pp)*(x103)); +IkReal x172=((IkReal(8.00000000000000))*(px)*(x104)); +IkReal x173=((x110)*(x96)); +IkReal x174=((((IkReal(-1.00000000000000))*(rxp0_0)*(x108)))+(((IkReal(-0.0145768000000000))*(r01)))); +IkReal x175=((((IkReal(0.00552000000000000))*(x114)))+(((IkReal(-0.206608080000000))*(x105)))); +IkReal x176=((((IkReal(-0.0291536000000000))*(r11)))+(((IkReal(-2.91536000000000))*(rxp0_1)*(sj5)))); +IkReal x177=((x133)+(x84)); +IkReal x178=((((IkReal(0.0145768000000000))*(r01)))+(((rxp0_0)*(x108)))); +IkReal x179=((x129)+(x83)); +IkReal x180=((x130)+(x81)); +IkReal x181=((x159)+(x92)); +IkReal x182=((IkReal(0.00739106770000000))+(x123)+(pp)); +IkReal x183=((x119)+(x80)); +IkReal x184=((x124)+(x80)); +IkReal x185=((IkReal(0.00739106770000000))+(x121)+(pp)); +IkReal x186=((x160)+(x93)); +IkReal x187=((x134)+(x133)); +IkReal x188=((x173)+(x81)); +IkReal x189=((x139)+(x140)); +IkReal x190=((x170)+(x88)); +IkReal x191=((x126)+(x131)); +IkReal x192=((x125)+(x122)); +IkReal x193=((x172)+(x91)); +IkReal x194=((x165)+(x85)); +IkReal x195=((x141)+(x143)); +IkReal x196=((x177)+(((IkReal(-1.00000000000000))*(x134)))); +IkReal x197=((x187)+(((IkReal(-1.00000000000000))*(x84)))); +IkReal x198=((((IkReal(-1.00000000000000))*(x150)))+(x149)+(x90)); +IkReal x199=((x150)+(((IkReal(-1.00000000000000))*(x90)))+(x149)); +IkReal x200=((((IkReal(-1.00000000000000))*(x177)))+(x134)); +IkReal x201=((((IkReal(-1.00000000000000))*(x187)))+(x84)); +IkReal x202=((x163)+(x132)); +IkReal x203=((x127)+(x162)); +IkReal x204=((x153)+(x167)); +IkReal x205=((x168)+(x145)); +IkReal x206=((x171)+(x151)); +IkReal x207=((x166)+(x135)); +IkReal x208=((x162)+(x137)); +IkReal x209=((x128)+(x136)+(x82)); +IkReal x210=((x128)+(x164)+(x82)); +IkReal x211=((x169)+(x148)+(x89)); +IkReal x212=((x124)+(x120)+(x118)); +IkReal x213=((x208)+(x86)); +IkReal x214=((x194)+(x161)); +IkReal x215=((x120)+(x119)+(x118)); +IkReal x216=((x158)+(x207)); +IkReal x217=((x152)+(x205)); +IkReal x218=((((IkReal(-1.00000000000000))*(x154)))+(x157)+(x155)+(((IkReal(-1.00000000000000))*(x156)))); +IkReal x219=((x155)+(x154)+(((IkReal(-1.00000000000000))*(x157)))+(((IkReal(-1.00000000000000))*(x156)))); +IkReal x220=((((IkReal(-1.00000000000000))*(x142)))+(x195)+(x144)+(((IkReal(-1.00000000000000))*(x87)))); +IkReal x221=((x195)+(x142)+(((IkReal(-1.00000000000000))*(x144)))+(((IkReal(-1.00000000000000))*(x87)))); +IkReal x222=((((IkReal(-1.00000000000000))*(x192)))+(((IkReal(-1.00000000000000))*(x183)))+(x212)+(x182)+(((IkReal(-1.00000000000000))*(x121)))); +IkReal x223=((((IkReal(-1.00000000000000))*(x192)))+(x215)+(x185)+(((IkReal(-1.00000000000000))*(x184)))+(((IkReal(-1.00000000000000))*(x123)))); +IkReal x224=((((IkReal(-1.00000000000000))*(x192)))+(((IkReal(-1.00000000000000))*(x215)))+(x184)+(x185)+(((IkReal(-1.00000000000000))*(x123)))); +IkReal x225=((((IkReal(-1.00000000000000))*(x192)))+(((IkReal(-1.00000000000000))*(x212)))+(x182)+(x183)+(((IkReal(-1.00000000000000))*(x121)))); +op[0]=x222; +op[1]=IkReal(0); +op[2]=x218; +op[3]=IkReal(0); +op[4]=x223; +op[5]=IkReal(0); +op[6]=IkReal(0); +op[7]=x222; +op[8]=IkReal(0); +op[9]=x218; +op[10]=IkReal(0); +op[11]=x223; +op[12]=((((IkReal(-1.00000000000000))*(x210)))+(x179)+(((IkReal(-1.00000000000000))*(x191)))+(((IkReal(-1.00000000000000))*(x202)))+(x180)+(x203)); +op[13]=x196; +op[14]=((x194)+(((IkReal(-1.00000000000000))*(x181)))+(((IkReal(-1.00000000000000))*(x216)))); +op[15]=x174; +op[16]=((((IkReal(-1.00000000000000))*(x202)))+(x191)+(x180)+(x127)+(x129)+(x209)+(((IkReal(-1.00000000000000))*(x83)))+(((IkReal(-1.00000000000000))*(x162)))); +op[17]=x197; +op[18]=x196; +op[19]=((((IkReal(-1.00000000000000))*(x86)))+(((IkReal(-1.00000000000000))*(x210)))+(((IkReal(-1.00000000000000))*(x202)))+(((IkReal(-1.00000000000000))*(x139)))+(((IkReal(-1.00000000000000))*(x138)))+(x180)+(x208)+(x140)); +op[20]=x174; +op[21]=((x214)+(x186)+(((IkReal(-1.00000000000000))*(x207)))); +op[22]=x197; +op[23]=((((IkReal(-1.00000000000000))*(x189)))+(((IkReal(-1.00000000000000))*(x202)))+(((IkReal(-1.00000000000000))*(x138)))+(x180)+(x209)+(x86)+(((IkReal(-1.00000000000000))*(x208)))); +op[24]=x220; +op[25]=IkReal(0); +op[26]=x175; +op[27]=IkReal(0); +op[28]=x221; +op[29]=IkReal(0); +op[30]=IkReal(0); +op[31]=x220; +op[32]=IkReal(0); +op[33]=x175; +op[34]=IkReal(0); +op[35]=x221; +op[36]=((((IkReal(-1.00000000000000))*(x167)))+(x211)+(((IkReal(-1.00000000000000))*(x146)))+(x205)+(((IkReal(-1.00000000000000))*(x190)))+(x147)); +op[37]=x198; +op[38]=((((IkReal(-1.00000000000000))*(x193)))+(x206)+(((IkReal(0.210483569200000))*(x103)))); +op[39]=x176; +op[40]=((((IkReal(-1.00000000000000))*(x146)))+(x167)+(x205)+(((IkReal(-1.00000000000000))*(x147)))+(((IkReal(-1.00000000000000))*(x190)))+(((IkReal(-1.00000000000000))*(x211)))); +op[41]=x199; +op[42]=x198; +op[43]=((((IkReal(-1.00000000000000))*(x204)))+(x211)+(x217)+(((IkReal(-1.00000000000000))*(x190)))); +op[44]=x176; +op[45]=((((IkReal(-1.00000000000000))*(x193)))+(x206)+(((IkReal(-0.191836110800000))*(x103)))); +op[46]=x199; +op[47]=((x217)+(x204)+(((IkReal(-1.00000000000000))*(x190)))+(((IkReal(-1.00000000000000))*(x211)))); +op[48]=x224; +op[49]=IkReal(0); +op[50]=x219; +op[51]=IkReal(0); +op[52]=x225; +op[53]=IkReal(0); +op[54]=IkReal(0); +op[55]=x224; +op[56]=IkReal(0); +op[57]=x219; +op[58]=IkReal(0); +op[59]=x225; +op[60]=((x179)+(((IkReal(-1.00000000000000))*(x188)))+(((IkReal(-1.00000000000000))*(x203)))+(((IkReal(-1.00000000000000))*(x131)))+(x126)+(x202)+(x209)); +op[61]=x200; +op[62]=((x216)+(((IkReal(-1.00000000000000))*(x181)))+(((IkReal(-1.00000000000000))*(x194)))); +op[63]=x178; +op[64]=((((IkReal(-1.00000000000000))*(x210)))+(((IkReal(-1.00000000000000))*(x188)))+(((IkReal(-1.00000000000000))*(x126)))+(((IkReal(-1.00000000000000))*(x127)))+(x129)+(x162)+(x202)+(((IkReal(-1.00000000000000))*(x83)))+(x131)); +op[65]=x201; +op[66]=x200; +op[67]=((((IkReal(-1.00000000000000))*(x188)))+(((IkReal(-1.00000000000000))*(x139)))+(((IkReal(-1.00000000000000))*(x213)))+(x202)+(x209)+(x138)+(x140)); +op[68]=x178; +op[69]=((((IkReal(-1.00000000000000))*(x214)))+(x186)+(x207)); +op[70]=x201; +op[71]=((((IkReal(-1.00000000000000))*(x210)))+(((IkReal(-1.00000000000000))*(x188)))+(((IkReal(-1.00000000000000))*(x189)))+(x213)+(x202)+(x138)); +solvedialyticpoly8qep(op,zeror,numroots); +IkReal j0array[16], cj0array[16], sj0array[16], j6array[16], cj6array[16], sj6array[16], j1array[16], cj1array[16], sj1array[16]; +int numsolutions = 0; +for(int ij0 = 0; ij0 < numroots; ij0 += 3) +{ +IkReal htj0 = zeror[ij0+0], htj6 = zeror[ij0+1], htj1 = zeror[ij0+2]; +j0array[numsolutions]=((IkReal(2.00000000000000))*(atan(htj0))); +j6array[numsolutions]=((IkReal(2.00000000000000))*(atan(htj6))); +j1array[numsolutions]=((IkReal(2.00000000000000))*(atan(htj1))); +IkReal x226=(htj0)*(htj0); +IkReal x227=(htj6)*(htj6); +IkReal x228=(htj1)*(htj1); +cj0array[numsolutions]=((((IKabs(((IkReal(1.00000000000000))+(x226))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+(x226)))):(IkReal)1.0e30))*(((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x226)))))); +cj6array[numsolutions]=((((IKabs(((IkReal(1.00000000000000))+(x227))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+(x227)))):(IkReal)1.0e30))*(((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x227)))))); +cj1array[numsolutions]=((((IKabs(((IkReal(1.00000000000000))+(x228))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+(x228)))):(IkReal)1.0e30))*(((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x228)))))); +sj0array[numsolutions]=((IkReal(2.00000000000000))*(htj0)*(((IKabs(((IkReal(1.00000000000000))+((htj0)*(htj0)))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+((htj0)*(htj0))))):(IkReal)1.0e30))); +sj6array[numsolutions]=((IkReal(2.00000000000000))*(htj6)*(((IKabs(((IkReal(1.00000000000000))+((htj6)*(htj6)))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+((htj6)*(htj6))))):(IkReal)1.0e30))); +sj1array[numsolutions]=((IkReal(2.00000000000000))*(htj1)*(((IKabs(((IkReal(1.00000000000000))+((htj1)*(htj1)))) != 0)?((IkReal)1/(((IkReal(1.00000000000000))+((htj1)*(htj1))))):(IkReal)1.0e30))); +if( j0array[numsolutions] > IKPI ) +{ + j0array[numsolutions]-=IK2PI; +} +else if( j0array[numsolutions] < -IKPI ) +{ + j0array[numsolutions]+=IK2PI; +} +if( j6array[numsolutions] > IKPI ) +{ + j6array[numsolutions]-=IK2PI; +} +else if( j6array[numsolutions] < -IKPI ) +{ + j6array[numsolutions]+=IK2PI; +} +if( j1array[numsolutions] > IKPI ) +{ + j1array[numsolutions]-=IK2PI; +} +else if( j1array[numsolutions] < -IKPI ) +{ + j1array[numsolutions]+=IK2PI; +} +numsolutions++; +} +bool j0valid[16]={true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true}; +_nj0 = 16; +_nj6 = 1; +_nj1 = 1; +for(int ij0 = 0; ij0 < numsolutions; ++ij0) + { +if( !j0valid[ij0] ) +{ + continue; +} +_ij0[0] = ij0; _ij0[1] = -1; +_ij6[0] = 0; _ij6[1] = -1; +_ij1[0] = 0; _ij1[1] = -1; +for(int iij0 = ij0+1; iij0 < numsolutions; ++iij0) +{ +if( !j0valid[iij0] ) { continue; } +if( IKabs(cj0array[ij0]-cj0array[iij0]) < IKFAST_SOLUTION_THRESH && IKabs(sj0array[ij0]-sj0array[iij0]) < IKFAST_SOLUTION_THRESH && IKabs(cj6array[ij0]-cj6array[iij0]) < IKFAST_SOLUTION_THRESH && IKabs(sj6array[ij0]-sj6array[iij0]) < IKFAST_SOLUTION_THRESH && IKabs(cj1array[ij0]-cj1array[iij0]) < IKFAST_SOLUTION_THRESH && IKabs(sj1array[ij0]-sj1array[iij0]) < IKFAST_SOLUTION_THRESH && 1 ) +{ + j0valid[iij0]=false; _ij0[1] = iij0; _ij6[1] = 0; _ij1[1] = 0; break; +} +} + j0 = j0array[ij0]; cj0 = cj0array[ij0]; sj0 = sj0array[ij0]; + + j6 = j6array[ij0]; cj6 = cj6array[ij0]; sj6 = sj6array[ij0]; + + j1 = j1array[ij0]; cj1 = cj1array[ij0]; sj1 = sj1array[ij0]; + +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[2]; +IkReal x229=((cj0)*(cj5)); +IkReal x230=((IkReal(0.374290000000000))*(sj0)); +IkReal x231=((cj6)*(r11)); +IkReal x232=((IkReal(0.0100000000000000))*(sj6)); +IkReal x233=((cj6)*(r01)); +IkReal x234=((IkReal(0.0100000000000000))*(sj0)); +IkReal x235=((cj0)*(sj5)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(0.433420000000000))+(((cj5)*(r10)*(sj0)*(x232)))+(((IkReal(-1.00000000000000))*(r10)*(sj5)*(sj6)*(x230)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-0.374290000000000))*(r00)*(sj6)*(x235)))+(((IkReal(-1.00000000000000))*(sj5)*(x230)*(x231)))+(((IkReal(0.0100000000000000))*(r02)*(x235)))+(((IkReal(-0.374290000000000))*(x233)*(x235)))+(((r12)*(sj5)*(x234)))+(((r00)*(x229)*(x232)))+(((IkReal(0.0100000000000000))*(x229)*(x233)))+(((cj5)*(x231)*(x234)))+(((cj5)*(r12)*(x230)))+(((IkReal(-1.00000000000000))*(py)*(sj0)))+(((IkReal(0.374290000000000))*(r02)*(x229)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 ) +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x236=((cj0)*(r11)); +IkReal x237=((r01)*(sj0)); +IkReal x238=((cj0)*(r10)); +IkReal x239=((IkReal(0.144927536231884))*(sj5)); +IkReal x240=((IkReal(5.42449275362319))*(cj5)); +IkReal x241=((r00)*(sj0)); +IkReal x242=((cj0)*(r12)); +IkReal x243=((r02)*(sj0)); +IkReal x244=((IkReal(5.42449275362319))*(cj6)*(sj5)); +IkReal x245=((IkReal(5.42449275362319))*(sj5)*(sj6)); +IkReal x246=((IkReal(0.144927536231884))*(cj5)*(sj6)); +IkReal x247=((IkReal(0.144927536231884))*(cj5)*(cj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(x238)*(x246)))+(((x241)*(x246)))+(((x240)*(x243)))+(((IkReal(-1.00000000000000))*(x236)*(x247)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x239)*(x242)))+(((x236)*(x244)))+(((x238)*(x245)))+(((IkReal(-1.00000000000000))*(x241)*(x245)))+(((IkReal(-1.00000000000000))*(x240)*(x242)))+(((IkReal(-1.00000000000000))*(x237)*(x244)))+(((x239)*(x243)))+(((x237)*(x247))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r22)*(x240)))+(((IkReal(-14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(r20)*(x245)))+(((r22)*(x239)))+(((r21)*(x247)))+(((IkReal(-1.00000000000000))*(r21)*(x244)))+(((r20)*(x246))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x238)*(x246)))+(((x241)*(x246)))+(((x240)*(x243)))+(((IkReal(-1.00000000000000))*(x236)*(x247)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x239)*(x242)))+(((x236)*(x244)))+(((x238)*(x245)))+(((IkReal(-1.00000000000000))*(x241)*(x245)))+(((IkReal(-1.00000000000000))*(x240)*(x242)))+(((IkReal(-1.00000000000000))*(x237)*(x244)))+(((x239)*(x243)))+(((x237)*(x247)))))+IKsqr(((((r22)*(x240)))+(((IkReal(-14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(r20)*(x245)))+(((r22)*(x239)))+(((r21)*(x247)))+(((IkReal(-1.00000000000000))*(r21)*(x244)))+(((r20)*(x246)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x238)*(x246)))+(((x241)*(x246)))+(((x240)*(x243)))+(((IkReal(-1.00000000000000))*(x236)*(x247)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x239)*(x242)))+(((x236)*(x244)))+(((x238)*(x245)))+(((IkReal(-1.00000000000000))*(x241)*(x245)))+(((IkReal(-1.00000000000000))*(x240)*(x242)))+(((IkReal(-1.00000000000000))*(x237)*(x244)))+(((x239)*(x243)))+(((x237)*(x247)))), ((((r22)*(x240)))+(((IkReal(-14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(r20)*(x245)))+(((r22)*(x239)))+(((r21)*(x247)))+(((IkReal(-1.00000000000000))*(r21)*(x244)))+(((r20)*(x246))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[2]; +IkReal x248=((cj6)*(r11)); +IkReal x249=((IkReal(0.374290000000000))*(sj0)); +IkReal x250=((IkReal(0.0100000000000000))*(cj5)); +IkReal x251=((cj6)*(r21)); +IkReal x252=((r10)*(sj6)); +IkReal x253=((IkReal(0.374290000000000))*(sj5)); +IkReal x254=((IkReal(0.0100000000000000))*(sj5)); +IkReal x255=((cj6)*(r01)); +IkReal x256=((r20)*(sj6)); +IkReal x257=((IkReal(0.374290000000000))*(cj5)); +IkReal x258=((cj0)*(r12)); +IkReal x259=((r00)*(sj6)); +IkReal x260=((cj0)*(x253)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r22)*(x254)))+(((x253)*(x256)))+(((IkReal(0.0690000000000000))*(IKcos(j2))))+(((IkReal(-1.00000000000000))*(x250)*(x256)))+(((IkReal(-1.00000000000000))*(x250)*(x251)))+(pz)+(((x251)*(x253)))+(((IkReal(-1.00000000000000))*(r22)*(x257)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x254)))+(((IkReal(-1.00000000000000))*(sj0)*(x250)*(x255)))+(((IkReal(-1.00000000000000))*(sj0)*(x250)*(x259)))+(((IkReal(-1.00000000000000))*(cj0)*(py)))+(((IkReal(-1.00000000000000))*(x252)*(x260)))+(((cj0)*(x248)*(x250)))+(((sj5)*(x249)*(x259)))+(((IkReal(-1.00000000000000))*(x248)*(x260)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x249)))+(((x254)*(x258)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((sj5)*(x249)*(x255)))+(((cj0)*(x250)*(x252)))+(((x257)*(x258)))+(((px)*(sj0)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst40; +IkReal x261=(sj6)*(sj6); +IkReal x262=(cj6)*(cj6); +IkReal x263=((r10)*(sj0)); +IkReal x264=((r22)*(sj5)); +IkReal x265=((cj0)*(cj5)); +IkReal x266=((IkReal(1.00000000000000))*(r20)); +IkReal x267=((cj0)*(sj6)); +IkReal x268=((r21)*(sj5)); +IkReal x269=((sj0)*(sj6)); +IkReal x270=((cj6)*(sj5)); +IkReal x271=((r21)*(x262)); +IkReal x272=((cj5)*(r11)*(sj0)); +IkReal x273=((r21)*(x261)); +gconst40=IKsign(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x266)*(x270)))+(((cj5)*(x263)*(x271)))+(((cj6)*(x263)*(x264)))+(((IkReal(-1.00000000000000))*(r01)*(x264)*(x267)))+(((cj0)*(cj6)*(r00)*(x264)))+(((IkReal(-1.00000000000000))*(r01)*(x262)*(x265)*(x266)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x266)*(x270)))+(((IkReal(-1.00000000000000))*(x261)*(x266)*(x272)))+(((IkReal(-1.00000000000000))*(r11)*(x264)*(x269)))+(((cj5)*(x263)*(x273)))+(((r02)*(x267)*(x268)))+(((r00)*(x265)*(x271)))+(((r00)*(x265)*(x273)))+(((r12)*(x268)*(x269)))+(((IkReal(-1.00000000000000))*(x262)*(x266)*(x272)))+(((IkReal(-1.00000000000000))*(r01)*(x261)*(x265)*(x266))))); +IkReal x274=(sj6)*(sj6); +IkReal x275=(cj6)*(cj6); +IkReal x276=((r10)*(sj0)); +IkReal x277=((r22)*(sj5)); +IkReal x278=((cj0)*(cj5)); +IkReal x279=((IkReal(1.00000000000000))*(r20)); +IkReal x280=((cj0)*(sj6)); +IkReal x281=((r21)*(sj5)); +IkReal x282=((sj0)*(sj6)); +IkReal x283=((cj6)*(sj5)); +IkReal x284=((r21)*(x275)); +IkReal x285=((cj5)*(r11)*(sj0)); +IkReal x286=((r21)*(x274)); +dummyeval[0]=((((cj5)*(x276)*(x284)))+(((IkReal(-1.00000000000000))*(r01)*(x275)*(x278)*(x279)))+(((r12)*(x281)*(x282)))+(((IkReal(-1.00000000000000))*(x275)*(x279)*(x285)))+(((cj0)*(cj6)*(r00)*(x277)))+(((IkReal(-1.00000000000000))*(r01)*(x274)*(x278)*(x279)))+(((cj5)*(x276)*(x286)))+(((r02)*(x280)*(x281)))+(((IkReal(-1.00000000000000))*(r11)*(x277)*(x282)))+(((IkReal(-1.00000000000000))*(x274)*(x279)*(x285)))+(((IkReal(-1.00000000000000))*(r01)*(x277)*(x280)))+(((cj6)*(x276)*(x277)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x279)*(x283)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x279)*(x283)))+(((r00)*(x278)*(x286)))+(((r00)*(x278)*(x284)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst39; +IkReal x287=(cj6)*(cj6); +IkReal x288=(sj6)*(sj6); +IkReal x289=((IkReal(1.00000000000000))*(r01)); +IkReal x290=((sj0)*(sj5)); +IkReal x291=((cj6)*(r22)); +IkReal x292=((r21)*(sj6)); +IkReal x293=((r00)*(r21)); +IkReal x294=((cj0)*(sj5)); +IkReal x295=((cj6)*(r20)); +IkReal x296=((r22)*(sj6)); +IkReal x297=((cj0)*(cj5)); +IkReal x298=((IkReal(1.00000000000000))*(r10)); +IkReal x299=((cj5)*(sj0)); +IkReal x300=((r20)*(x288)); +IkReal x301=((x287)*(x299)); +gconst39=IKsign(((((IkReal(-1.00000000000000))*(x289)*(x299)*(x300)))+(((IkReal(-1.00000000000000))*(x291)*(x294)*(x298)))+(((IkReal(-1.00000000000000))*(r02)*(x290)*(x295)))+(((r11)*(x297)*(x300)))+(((r12)*(x294)*(x295)))+(((IkReal(-1.00000000000000))*(r21)*(x288)*(x297)*(x298)))+(((IkReal(-1.00000000000000))*(x289)*(x290)*(x296)))+(((x293)*(x301)))+(((r11)*(r20)*(x287)*(x297)))+(((IkReal(-1.00000000000000))*(r21)*(x287)*(x297)*(x298)))+(((r02)*(x290)*(x292)))+(((IkReal(-1.00000000000000))*(r20)*(x289)*(x301)))+(((x288)*(x293)*(x299)))+(((r11)*(x294)*(x296)))+(((IkReal(-1.00000000000000))*(r12)*(x292)*(x294)))+(((r00)*(x290)*(x291))))); +IkReal x302=(cj6)*(cj6); +IkReal x303=(sj6)*(sj6); +IkReal x304=((IkReal(1.00000000000000))*(r01)); +IkReal x305=((sj0)*(sj5)); +IkReal x306=((cj6)*(r22)); +IkReal x307=((r21)*(sj6)); +IkReal x308=((r00)*(r21)); +IkReal x309=((cj0)*(sj5)); +IkReal x310=((cj6)*(r20)); +IkReal x311=((r22)*(sj6)); +IkReal x312=((cj0)*(cj5)); +IkReal x313=((IkReal(1.00000000000000))*(r10)); +IkReal x314=((cj5)*(sj0)); +IkReal x315=((r20)*(x303)); +IkReal x316=((x302)*(x314)); +dummyeval[0]=((((x303)*(x308)*(x314)))+(((x308)*(x316)))+(((IkReal(-1.00000000000000))*(x304)*(x314)*(x315)))+(((r00)*(x305)*(x306)))+(((IkReal(-1.00000000000000))*(x304)*(x305)*(x311)))+(((IkReal(-1.00000000000000))*(r21)*(x302)*(x312)*(x313)))+(((r11)*(x312)*(x315)))+(((IkReal(-1.00000000000000))*(r21)*(x303)*(x312)*(x313)))+(((r02)*(x305)*(x307)))+(((IkReal(-1.00000000000000))*(x306)*(x309)*(x313)))+(((IkReal(-1.00000000000000))*(r12)*(x307)*(x309)))+(((IkReal(-1.00000000000000))*(r02)*(x305)*(x310)))+(((r11)*(r20)*(x302)*(x312)))+(((r11)*(x309)*(x311)))+(((r12)*(x309)*(x310)))+(((IkReal(-1.00000000000000))*(r20)*(x304)*(x316)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x317=((cj5)*(r22)); +IkReal x318=((IkReal(0.374290000000000))*(sj5)); +IkReal x319=((cj0)*(sj6)); +IkReal x320=((cj6)*(r21)); +IkReal x321=((IkReal(0.0100000000000000))*(sj5)); +IkReal x322=((cj0)*(r02)); +IkReal x323=((IkReal(0.0100000000000000))*(cj5)); +IkReal x324=((IkReal(1.00000000000000))*(py)); +IkReal x325=((r01)*(sj0)); +IkReal x326=((r20)*(sj6)); +IkReal x327=((r11)*(sj0)); +IkReal x328=((IkReal(0.374290000000000))*(cj5)); +IkReal x329=((cj0)*(r12)); +IkReal x330=((sj0)*(x328)); +IkReal x331=((cj6)*(x323)); +IkReal x332=((r10)*(sj0)*(sj6)); +IkReal x333=((r00)*(sj0)*(sj6)); +IkReal x334=((cj0)*(cj6)*(x318)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x317)))+(((sj5)*(x320)))+(((sj5)*(x326)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x320)*(x323)))+(((x318)*(x326)))+(((IkReal(-1.00000000000000))*(r22)*(x321)))+(((IkReal(-0.374290000000000))*(x317)))+(((x318)*(x320)))+(pz)+(((IkReal(-1.00000000000000))*(x323)*(x326)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x334)))+(((IkReal(-1.00000000000000))*(x323)*(x333)))+(((r10)*(x319)*(x323)))+(((IkReal(-1.00000000000000))*(r02)*(x330)))+(((x328)*(x329)))+(((cj6)*(x318)*(x325)))+(((x321)*(x329)))+(((IkReal(-1.00000000000000))*(cj0)*(x324)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x321)))+(((x318)*(x333)))+(((cj0)*(r11)*(x331)))+(((IkReal(-1.00000000000000))*(x325)*(x331)))+(((IkReal(-1.00000000000000))*(r10)*(x318)*(x319)))+(((px)*(sj0)))); +evalcond[4]=((IkReal(0.433420000000000))+(((r00)*(x319)*(x323)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x323)*(x332)))+(((x322)*(x328)))+(((r12)*(sj0)*(x321)))+(((cj0)*(r01)*(x331)))+(((x321)*(x322)))+(((IkReal(-1.00000000000000))*(r01)*(x334)))+(((IkReal(-1.00000000000000))*(r00)*(x318)*(x319)))+(((IkReal(-1.00000000000000))*(sj0)*(x324)))+(((r12)*(x330)))+(((x327)*(x331)))+(((IkReal(-1.00000000000000))*(x318)*(x332)))+(((IkReal(-1.00000000000000))*(cj6)*(x318)*(x327)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x335=((cj0)*(cj5)); +IkReal x336=((IkReal(1.00000000000000))*(cj0)); +IkReal x337=((cj6)*(r11)); +IkReal x338=((r10)*(sj6)); +IkReal x339=((cj5)*(sj0)); +IkReal x340=((r00)*(sj5)*(sj6)); +IkReal x341=((cj6)*(r01)*(sj5)); +IkReal x342=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x336)*(x338)))+(((IkReal(-1.00000000000000))*(r02)*(x339)))+(((r12)*(x335)))+(((sj0)*(x341)))+(((IkReal(-1.00000000000000))*(sj5)*(x336)*(x337)))+(((sj0)*(x340))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r12)*(x339)))+(((r02)*(x335)))+(((IkReal(-1.00000000000000))*(x336)*(x340)))+(((IkReal(-1.00000000000000))*(x336)*(x341)))+(((IkReal(-1.00000000000000))*(x337)*(x342)))+(((IkReal(-1.00000000000000))*(x338)*(x342))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x336)*(x338)))+(((IkReal(-1.00000000000000))*(r02)*(x339)))+(((r12)*(x335)))+(((sj0)*(x341)))+(((IkReal(-1.00000000000000))*(sj5)*(x336)*(x337)))+(((sj0)*(x340)))))+IKsqr(((((r12)*(x339)))+(((r02)*(x335)))+(((IkReal(-1.00000000000000))*(x336)*(x340)))+(((IkReal(-1.00000000000000))*(x336)*(x341)))+(((IkReal(-1.00000000000000))*(x337)*(x342)))+(((IkReal(-1.00000000000000))*(x338)*(x342)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x336)*(x338)))+(((IkReal(-1.00000000000000))*(r02)*(x339)))+(((r12)*(x335)))+(((sj0)*(x341)))+(((IkReal(-1.00000000000000))*(sj5)*(x336)*(x337)))+(((sj0)*(x340)))), ((((r12)*(x339)))+(((r02)*(x335)))+(((IkReal(-1.00000000000000))*(x336)*(x340)))+(((IkReal(-1.00000000000000))*(x336)*(x341)))+(((IkReal(-1.00000000000000))*(x337)*(x342)))+(((IkReal(-1.00000000000000))*(x338)*(x342))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x343=((cj0)*(cj5)); +IkReal x344=((IkReal(1.00000000000000))*(cj0)); +IkReal x345=((cj6)*(r11)); +IkReal x346=((r10)*(sj6)); +IkReal x347=((cj5)*(sj0)); +IkReal x348=((r00)*(sj5)*(sj6)); +IkReal x349=((cj6)*(r01)*(sj5)); +IkReal x350=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj5)*(x344)*(x346)))+(((IkReal(-1.00000000000000))*(r02)*(x347)))+(((r12)*(x343)))+(((sj0)*(x348)))+(((sj0)*(x349)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((IkReal(-1.00000000000000))*(sj5)*(x344)*(x345)))); +evalcond[1]=((((r12)*(x347)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(x344)*(x348)))+(((IkReal(-1.00000000000000))*(x346)*(x350)))+(((IkReal(-1.00000000000000))*(x344)*(x349)))+(((IkReal(-1.00000000000000))*(x345)*(x350)))+(((r02)*(x343)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst46; +IkReal x351=(cj5)*(cj5); +IkReal x352=(r20)*(r20); +IkReal x353=(sj6)*(sj6); +IkReal x354=(cj6)*(cj6); +IkReal x355=(r21)*(r21); +IkReal x356=((cj6)*(r21)); +IkReal x357=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x358=((cj5)*(r22)*(sj5)); +gconst46=IKsign((((((r22)*(r22))*((sj5)*(sj5))))+(((x353)*(x355)))+(((IkReal(2.00000000000000))*(x356)*(x358)))+(((x357)*(x358)))+(((IkReal(-1.00000000000000))*(x356)*(x357)))+(((x351)*(x356)*(x357)))+(((x351)*(x352)*(x353)))+(((x351)*(x354)*(x355)))+(((x352)*(x354))))); +IkReal x359=(cj5)*(cj5); +IkReal x360=(r20)*(r20); +IkReal x361=(sj6)*(sj6); +IkReal x362=(cj6)*(cj6); +IkReal x363=(r21)*(r21); +IkReal x364=((cj6)*(r21)); +IkReal x365=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x366=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x359)*(x364)*(x365)))+(((x365)*(x366)))+((((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x364)*(x365)))+(((x359)*(x360)*(x361)))+(((x360)*(x362)))+(((x359)*(x362)*(x363)))+(((IkReal(2.00000000000000))*(x364)*(x366)))+(((x361)*(x363)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst47; +IkReal x367=(cj6)*(cj6); +IkReal x368=(sj6)*(sj6); +IkReal x369=((IkReal(1.00000000000000))*(r21)); +IkReal x370=((cj6)*(r20)); +IkReal x371=((r22)*(sj5)); +IkReal x372=((r01)*(sj0)); +IkReal x373=((r00)*(sj0)); +IkReal x374=((cj0)*(r10)); +IkReal x375=((r02)*(sj0)*(sj5)); +IkReal x376=((cj5)*(x367)); +IkReal x377=((cj0)*(r12)*(sj5)); +IkReal x378=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x379=((cj5)*(x368)); +IkReal x380=((r20)*(x379)); +gconst47=IKsign(((((IkReal(-1.00000000000000))*(cj6)*(x371)*(x373)))+(((IkReal(-1.00000000000000))*(sj6)*(x369)*(x375)))+(((sj6)*(x371)*(x372)))+(((r21)*(x374)*(x376)))+(((IkReal(-1.00000000000000))*(r20)*(x376)*(x378)))+(((IkReal(-1.00000000000000))*(sj6)*(x371)*(x378)))+(((IkReal(-1.00000000000000))*(x369)*(x373)*(x376)))+(((IkReal(-1.00000000000000))*(x378)*(x380)))+(((r21)*(x374)*(x379)))+(((r21)*(sj6)*(x377)))+(((IkReal(-1.00000000000000))*(x369)*(x373)*(x379)))+(((IkReal(-1.00000000000000))*(x370)*(x377)))+(((cj6)*(x371)*(x374)))+(((r20)*(x372)*(x376)))+(((x372)*(x380)))+(((x370)*(x375))))); +IkReal x381=(cj6)*(cj6); +IkReal x382=(sj6)*(sj6); +IkReal x383=((IkReal(1.00000000000000))*(r21)); +IkReal x384=((cj6)*(r20)); +IkReal x385=((r22)*(sj5)); +IkReal x386=((r01)*(sj0)); +IkReal x387=((r00)*(sj0)); +IkReal x388=((cj0)*(r10)); +IkReal x389=((r02)*(sj0)*(sj5)); +IkReal x390=((cj5)*(x381)); +IkReal x391=((cj0)*(r12)*(sj5)); +IkReal x392=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x393=((cj5)*(x382)); +IkReal x394=((r20)*(x393)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x383)*(x387)*(x390)))+(((x384)*(x389)))+(((r20)*(x386)*(x390)))+(((IkReal(-1.00000000000000))*(r20)*(x390)*(x392)))+(((x386)*(x394)))+(((IkReal(-1.00000000000000))*(cj6)*(x385)*(x387)))+(((IkReal(-1.00000000000000))*(x383)*(x387)*(x393)))+(((IkReal(-1.00000000000000))*(sj6)*(x383)*(x389)))+(((sj6)*(x385)*(x386)))+(((IkReal(-1.00000000000000))*(sj6)*(x385)*(x392)))+(((IkReal(-1.00000000000000))*(x392)*(x394)))+(((IkReal(-1.00000000000000))*(x384)*(x391)))+(((r21)*(x388)*(x393)))+(((r21)*(sj6)*(x391)))+(((r21)*(x388)*(x390)))+(((cj6)*(x385)*(x388)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x395=((sj0)*(sj6)); +IkReal x396=((cj0)*(r10)); +IkReal x397=((IkReal(1.00000000000000))*(cj5)); +IkReal x398=((cj6)*(sj0)); +IkReal x399=((cj0)*(r11)); +if( IKabs(((gconst47)*(((((IkReal(-1.00000000000000))*(r00)*(x398)))+(((cj6)*(x396)))+(((r01)*(x395)))+(((IkReal(-1.00000000000000))*(sj6)*(x399))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst47)*(((((cj5)*(sj6)*(x396)))+(((IkReal(-1.00000000000000))*(r01)*(x397)*(x398)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x399)))+(((IkReal(-1.00000000000000))*(r00)*(x395)*(x397))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst47)*(((((IkReal(-1.00000000000000))*(r00)*(x398)))+(((cj6)*(x396)))+(((r01)*(x395)))+(((IkReal(-1.00000000000000))*(sj6)*(x399)))))), ((gconst47)*(((((cj5)*(sj6)*(x396)))+(((IkReal(-1.00000000000000))*(r01)*(x397)*(x398)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x399)))+(((IkReal(-1.00000000000000))*(r00)*(x395)*(x397))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x400=IKsin(j4); +IkReal x401=IKcos(j4); +IkReal x402=((r22)*(sj5)); +IkReal x403=((IkReal(1.00000000000000))*(cj6)); +IkReal x404=((IkReal(1.00000000000000))*(cj0)); +IkReal x405=((cj5)*(r11)); +IkReal x406=((cj5)*(cj6)); +IkReal x407=((r11)*(sj6)); +IkReal x408=((IkReal(1.00000000000000))*(sj6)); +IkReal x409=((cj6)*(r00)); +IkReal x410=((r12)*(sj5)); +IkReal x411=((r02)*(sj5)); +IkReal x412=((cj6)*(r10)); +IkReal x413=((cj5)*(sj6)); +IkReal x414=((cj5)*(r01)); +IkReal x415=((sj0)*(x400)); +IkReal x416=((r00)*(x413)); +IkReal x417=((cj0)*(x400)); +IkReal x418=((sj0)*(x401)); +IkReal x419=((r20)*(x401)); +IkReal x420=((cj0)*(x401)); +IkReal x421=((r21)*(x400)); +IkReal x422=((r21)*(x401)); +IkReal x423=((r20)*(x400)); +IkReal x424=((x401)*(x410)); +IkReal x425=((r01)*(sj6)*(x401)); +IkReal x426=((cj5)*(r10)*(x408)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x403)*(x419)))+(((x413)*(x423)))+(((x406)*(x421)))+(((x400)*(x402)))+(((sj6)*(x422)))); +evalcond[1]=((((x413)*(x419)))+(((IkReal(-1.00000000000000))*(x408)*(x421)))+(((x406)*(x422)))+(((cj6)*(x423)))+(((x401)*(x402)))); +evalcond[2]=((((x412)*(x420)))+(((x415)*(x416)))+(((IkReal(-1.00000000000000))*(r10)*(x400)*(x404)*(x413)))+(((IkReal(-1.00000000000000))*(x401)*(x404)*(x407)))+(((IkReal(-1.00000000000000))*(r00)*(x403)*(x418)))+(((IkReal(-1.00000000000000))*(x400)*(x404)*(x410)))+(((r01)*(sj6)*(x418)))+(((IkReal(-1.00000000000000))*(x403)*(x405)*(x417)))+(((x411)*(x415)))+(((r01)*(x406)*(x415)))); +evalcond[3]=((((x409)*(x415)))+(((x411)*(x418)))+(((x416)*(x418)))+(((IkReal(-1.00000000000000))*(r10)*(x403)*(x417)))+(((IkReal(-1.00000000000000))*(r10)*(x401)*(x404)*(x413)))+(cj3)+(((x407)*(x417)))+(((IkReal(-1.00000000000000))*(x403)*(x405)*(x420)))+(((IkReal(-1.00000000000000))*(x404)*(x424)))+(((r01)*(x406)*(x418)))+(((IkReal(-1.00000000000000))*(r01)*(x408)*(x415)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x403)*(x405)*(x415)))+(((IkReal(-1.00000000000000))*(x400)*(x404)*(x416)))+(((IkReal(-1.00000000000000))*(x407)*(x418)))+(((IkReal(-1.00000000000000))*(x400)*(x404)*(x411)))+(((IkReal(-1.00000000000000))*(x403)*(x414)*(x417)))+(((IkReal(-1.00000000000000))*(x415)*(x426)))+(((x412)*(x418)))+(((IkReal(-1.00000000000000))*(x410)*(x415)))+(((IkReal(-1.00000000000000))*(x404)*(x425)))+(((x409)*(x420)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x418)*(x426)))+(((IkReal(-1.00000000000000))*(x410)*(x418)))+(((IkReal(-1.00000000000000))*(x401)*(x404)*(x416)))+(((IkReal(-1.00000000000000))*(x403)*(x405)*(x418)))+(((IkReal(-1.00000000000000))*(x403)*(x414)*(x420)))+(((r01)*(sj6)*(x417)))+(((IkReal(-1.00000000000000))*(r00)*(x403)*(x417)))+(((IkReal(-1.00000000000000))*(sj3)))+(((x407)*(x415)))+(((IkReal(-1.00000000000000))*(r10)*(x403)*(x415)))+(((IkReal(-1.00000000000000))*(x401)*(x404)*(x411)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst46)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst46)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst46)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst46)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x427=IKsin(j4); +IkReal x428=IKcos(j4); +IkReal x429=((r22)*(sj5)); +IkReal x430=((IkReal(1.00000000000000))*(cj6)); +IkReal x431=((IkReal(1.00000000000000))*(cj0)); +IkReal x432=((cj5)*(r11)); +IkReal x433=((cj5)*(cj6)); +IkReal x434=((r11)*(sj6)); +IkReal x435=((IkReal(1.00000000000000))*(sj6)); +IkReal x436=((cj6)*(r00)); +IkReal x437=((r12)*(sj5)); +IkReal x438=((r02)*(sj5)); +IkReal x439=((cj6)*(r10)); +IkReal x440=((cj5)*(sj6)); +IkReal x441=((cj5)*(r01)); +IkReal x442=((sj0)*(x427)); +IkReal x443=((r00)*(x440)); +IkReal x444=((cj0)*(x427)); +IkReal x445=((sj0)*(x428)); +IkReal x446=((r20)*(x428)); +IkReal x447=((cj0)*(x428)); +IkReal x448=((r21)*(x427)); +IkReal x449=((r21)*(x428)); +IkReal x450=((r20)*(x427)); +IkReal x451=((x428)*(x437)); +IkReal x452=((r01)*(sj6)*(x428)); +IkReal x453=((cj5)*(r10)*(x435)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x430)*(x446)))+(((x433)*(x448)))+(((x427)*(x429)))+(((x440)*(x450)))+(((sj6)*(x449)))); +evalcond[1]=((((x433)*(x449)))+(((cj6)*(x450)))+(((x428)*(x429)))+(((IkReal(-1.00000000000000))*(x435)*(x448)))+(((x440)*(x446)))); +evalcond[2]=((((r01)*(x433)*(x442)))+(((x439)*(x447)))+(((IkReal(-1.00000000000000))*(r00)*(x430)*(x445)))+(((x442)*(x443)))+(((x438)*(x442)))+(((IkReal(-1.00000000000000))*(r10)*(x427)*(x431)*(x440)))+(((r01)*(sj6)*(x445)))+(((IkReal(-1.00000000000000))*(x430)*(x432)*(x444)))+(((IkReal(-1.00000000000000))*(x428)*(x431)*(x434)))+(((IkReal(-1.00000000000000))*(x427)*(x431)*(x437)))); +evalcond[3]=((((r01)*(x433)*(x445)))+(((IkReal(-1.00000000000000))*(r10)*(x428)*(x431)*(x440)))+(((x436)*(x442)))+(((IkReal(-1.00000000000000))*(r01)*(x435)*(x442)))+(((x438)*(x445)))+(((IkReal(-1.00000000000000))*(x431)*(x451)))+(cj3)+(((IkReal(-1.00000000000000))*(x430)*(x432)*(x447)))+(((IkReal(-1.00000000000000))*(r10)*(x430)*(x444)))+(((x443)*(x445)))+(((x434)*(x444)))); +evalcond[4]=((((x436)*(x447)))+(((IkReal(-1.00000000000000))*(x430)*(x432)*(x442)))+(((IkReal(-1.00000000000000))*(x427)*(x431)*(x443)))+(((IkReal(-1.00000000000000))*(x434)*(x445)))+(((IkReal(-1.00000000000000))*(x431)*(x452)))+(((IkReal(-1.00000000000000))*(x430)*(x441)*(x444)))+(((IkReal(-1.00000000000000))*(x437)*(x442)))+(((IkReal(-1.00000000000000))*(x427)*(x431)*(x438)))+(((IkReal(-1.00000000000000))*(x442)*(x453)))+(((x439)*(x445)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x437)*(x445)))+(((IkReal(-1.00000000000000))*(x430)*(x432)*(x445)))+(((IkReal(-1.00000000000000))*(x445)*(x453)))+(((IkReal(-1.00000000000000))*(r10)*(x430)*(x442)))+(((IkReal(-1.00000000000000))*(x428)*(x431)*(x443)))+(((IkReal(-1.00000000000000))*(x428)*(x431)*(x438)))+(((IkReal(-1.00000000000000))*(x430)*(x441)*(x447)))+(((x434)*(x442)))+(((IkReal(-1.00000000000000))*(sj3)))+(((r01)*(sj6)*(x444)))+(((IkReal(-1.00000000000000))*(r00)*(x430)*(x444)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x454=((cj5)*(r22)); +IkReal x455=((IkReal(0.374290000000000))*(sj5)); +IkReal x456=((cj0)*(sj6)); +IkReal x457=((cj6)*(r21)); +IkReal x458=((IkReal(0.0100000000000000))*(sj5)); +IkReal x459=((cj0)*(r02)); +IkReal x460=((IkReal(0.0100000000000000))*(cj5)); +IkReal x461=((IkReal(1.00000000000000))*(py)); +IkReal x462=((r01)*(sj0)); +IkReal x463=((r20)*(sj6)); +IkReal x464=((r11)*(sj0)); +IkReal x465=((IkReal(0.374290000000000))*(cj5)); +IkReal x466=((cj0)*(r12)); +IkReal x467=((sj0)*(x465)); +IkReal x468=((cj6)*(x460)); +IkReal x469=((r10)*(sj0)*(sj6)); +IkReal x470=((r00)*(sj0)*(sj6)); +IkReal x471=((cj0)*(cj6)*(x455)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x454)))+(((sj5)*(x457)))+(((sj5)*(x463)))); +evalcond[2]=((((IkReal(-0.374290000000000))*(x454)))+(((x455)*(x457)))+(((IkReal(-1.00000000000000))*(x460)*(x463)))+(((IkReal(-1.00000000000000))*(x457)*(x460)))+(((x455)*(x463)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x458)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((r10)*(x456)*(x460)))+(((x465)*(x466)))+(((IkReal(-1.00000000000000))*(cj0)*(x461)))+(((IkReal(-1.00000000000000))*(x460)*(x470)))+(((IkReal(-1.00000000000000))*(x462)*(x468)))+(((x455)*(x470)))+(((IkReal(-1.00000000000000))*(r10)*(x455)*(x456)))+(((IkReal(-1.00000000000000))*(r02)*(x467)))+(((cj0)*(r11)*(x468)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x471)))+(((cj6)*(x455)*(x462)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x458)))+(((x458)*(x466)))); +evalcond[4]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((r00)*(x456)*(x460)))+(((IkReal(-1.00000000000000))*(r00)*(x455)*(x456)))+(((x458)*(x459)))+(((x460)*(x469)))+(((cj0)*(r01)*(x468)))+(((x464)*(x468)))+(((r12)*(sj0)*(x458)))+(((IkReal(-1.00000000000000))*(cj6)*(x455)*(x464)))+(((IkReal(-1.00000000000000))*(x455)*(x469)))+(((r12)*(x467)))+(((IkReal(-1.00000000000000))*(sj0)*(x461)))+(((x459)*(x465)))+(((IkReal(-1.00000000000000))*(r01)*(x471)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x472=((cj5)*(r02)); +IkReal x473=((cj0)*(sj5)); +IkReal x474=((r10)*(sj6)); +IkReal x475=((IkReal(1.00000000000000))*(cj6)); +IkReal x476=((sj0)*(sj5)); +IkReal x477=((cj5)*(r12)); +IkReal x478=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(x476)*(x478)))+(((IkReal(-1.00000000000000))*(cj0)*(x477)))+(((IkReal(-1.00000000000000))*(r01)*(x475)*(x476)))+(((sj0)*(x472)))+(((x473)*(x474)))+(((cj6)*(r11)*(x473))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x473)*(x478)))+(((cj0)*(x472)))+(((IkReal(-1.00000000000000))*(r11)*(x475)*(x476)))+(((IkReal(-1.00000000000000))*(r01)*(x473)*(x475)))+(((IkReal(-1.00000000000000))*(x474)*(x476)))+(((sj0)*(x477))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x476)*(x478)))+(((IkReal(-1.00000000000000))*(cj0)*(x477)))+(((IkReal(-1.00000000000000))*(r01)*(x475)*(x476)))+(((sj0)*(x472)))+(((x473)*(x474)))+(((cj6)*(r11)*(x473)))))+IKsqr(((((IkReal(-1.00000000000000))*(x473)*(x478)))+(((cj0)*(x472)))+(((IkReal(-1.00000000000000))*(r11)*(x475)*(x476)))+(((IkReal(-1.00000000000000))*(r01)*(x473)*(x475)))+(((IkReal(-1.00000000000000))*(x474)*(x476)))+(((sj0)*(x477)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x476)*(x478)))+(((IkReal(-1.00000000000000))*(cj0)*(x477)))+(((IkReal(-1.00000000000000))*(r01)*(x475)*(x476)))+(((sj0)*(x472)))+(((x473)*(x474)))+(((cj6)*(r11)*(x473)))), ((((IkReal(-1.00000000000000))*(x473)*(x478)))+(((cj0)*(x472)))+(((IkReal(-1.00000000000000))*(r11)*(x475)*(x476)))+(((IkReal(-1.00000000000000))*(r01)*(x473)*(x475)))+(((IkReal(-1.00000000000000))*(x474)*(x476)))+(((sj0)*(x477))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x479=((cj0)*(cj5)); +IkReal x480=((IkReal(1.00000000000000))*(cj0)); +IkReal x481=((cj6)*(r11)); +IkReal x482=((r10)*(sj6)); +IkReal x483=((cj5)*(sj0)); +IkReal x484=((r00)*(sj5)*(sj6)); +IkReal x485=((cj6)*(r01)*(sj5)); +IkReal x486=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((sj0)*(x484)))+(((r12)*(x479)))+(IKsin(j3))+(((IkReal(-1.00000000000000))*(sj5)*(x480)*(x481)))+(((IkReal(-1.00000000000000))*(sj5)*(x480)*(x482)))+(((IkReal(-1.00000000000000))*(r02)*(x483)))+(((sj0)*(x485)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x480)*(x484)))+(((r12)*(x483)))+(((r02)*(x479)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(x482)*(x486)))+(((IkReal(-1.00000000000000))*(x481)*(x486)))+(((IkReal(-1.00000000000000))*(x480)*(x485)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst50; +IkReal x487=(r21)*(r21); +IkReal x488=(cj5)*(cj5); +IkReal x489=(sj6)*(sj6); +IkReal x490=(cj6)*(cj6); +IkReal x491=(r20)*(r20); +IkReal x492=((cj6)*(r21)); +IkReal x493=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x494=((cj5)*(r22)*(sj5)); +IkReal x495=((IkReal(1.00000000000000))*(x489)); +IkReal x496=((IkReal(1.00000000000000))*(x490)); +gconst50=IKsign(((((IkReal(-1.00000000000000))*(x487)*(x488)*(x496)))+(((IkReal(-1.00000000000000))*(x488)*(x492)*(x493)))+(((x492)*(x493)))+(((IkReal(-1.00000000000000))*(x491)*(x496)))+(((IkReal(-2.00000000000000))*(x492)*(x494)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x488)*(x491)*(x495)))+(((IkReal(-1.00000000000000))*(x487)*(x495)))+(((IkReal(-1.00000000000000))*(x493)*(x494))))); +IkReal x497=(r21)*(r21); +IkReal x498=(cj5)*(cj5); +IkReal x499=(sj6)*(sj6); +IkReal x500=(cj6)*(cj6); +IkReal x501=(r20)*(r20); +IkReal x502=((cj6)*(r21)); +IkReal x503=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x504=((cj5)*(r22)*(sj5)); +IkReal x505=((IkReal(1.00000000000000))*(x499)); +IkReal x506=((IkReal(1.00000000000000))*(x500)); +dummyeval[0]=((((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x497)*(x505)))+(((IkReal(-1.00000000000000))*(x503)*(x504)))+(((IkReal(-1.00000000000000))*(x498)*(x502)*(x503)))+(((IkReal(-1.00000000000000))*(x498)*(x501)*(x505)))+(((x502)*(x503)))+(((IkReal(-1.00000000000000))*(x501)*(x506)))+(((IkReal(-2.00000000000000))*(x502)*(x504)))+(((IkReal(-1.00000000000000))*(x497)*(x498)*(x506)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst51; +IkReal x507=(cj6)*(cj6); +IkReal x508=(sj6)*(sj6); +IkReal x509=((IkReal(1.00000000000000))*(r01)); +IkReal x510=((sj0)*(sj5)); +IkReal x511=((cj6)*(r22)); +IkReal x512=((r21)*(sj6)); +IkReal x513=((r00)*(r21)); +IkReal x514=((cj0)*(sj5)); +IkReal x515=((cj6)*(r20)); +IkReal x516=((r22)*(sj6)); +IkReal x517=((cj0)*(cj5)); +IkReal x518=((IkReal(1.00000000000000))*(r10)); +IkReal x519=((cj5)*(sj0)); +IkReal x520=((r20)*(x508)); +IkReal x521=((x507)*(x519)); +gconst51=IKsign(((((r11)*(x514)*(x516)))+(((IkReal(-1.00000000000000))*(r20)*(x509)*(x521)))+(((IkReal(-1.00000000000000))*(r12)*(x512)*(x514)))+(((r00)*(x510)*(x511)))+(((IkReal(-1.00000000000000))*(r21)*(x508)*(x517)*(x518)))+(((x513)*(x521)))+(((x508)*(x513)*(x519)))+(((IkReal(-1.00000000000000))*(x509)*(x510)*(x516)))+(((r11)*(x517)*(x520)))+(((r11)*(r20)*(x507)*(x517)))+(((IkReal(-1.00000000000000))*(r21)*(x507)*(x517)*(x518)))+(((r02)*(x510)*(x512)))+(((IkReal(-1.00000000000000))*(x511)*(x514)*(x518)))+(((IkReal(-1.00000000000000))*(x509)*(x519)*(x520)))+(((IkReal(-1.00000000000000))*(r02)*(x510)*(x515)))+(((r12)*(x514)*(x515))))); +IkReal x522=(cj6)*(cj6); +IkReal x523=(sj6)*(sj6); +IkReal x524=((IkReal(1.00000000000000))*(r01)); +IkReal x525=((sj0)*(sj5)); +IkReal x526=((cj6)*(r22)); +IkReal x527=((r21)*(sj6)); +IkReal x528=((r00)*(r21)); +IkReal x529=((cj0)*(sj5)); +IkReal x530=((cj6)*(r20)); +IkReal x531=((r22)*(sj6)); +IkReal x532=((cj0)*(cj5)); +IkReal x533=((IkReal(1.00000000000000))*(r10)); +IkReal x534=((cj5)*(sj0)); +IkReal x535=((r20)*(x523)); +IkReal x536=((x522)*(x534)); +dummyeval[0]=((((r11)*(x529)*(x531)))+(((r12)*(x529)*(x530)))+(((r00)*(x525)*(x526)))+(((r02)*(x525)*(x527)))+(((IkReal(-1.00000000000000))*(r21)*(x522)*(x532)*(x533)))+(((IkReal(-1.00000000000000))*(r20)*(x524)*(x536)))+(((IkReal(-1.00000000000000))*(x526)*(x529)*(x533)))+(((IkReal(-1.00000000000000))*(r21)*(x523)*(x532)*(x533)))+(((IkReal(-1.00000000000000))*(r02)*(x525)*(x530)))+(((IkReal(-1.00000000000000))*(r12)*(x527)*(x529)))+(((IkReal(-1.00000000000000))*(x524)*(x525)*(x531)))+(((r11)*(x532)*(x535)))+(((x528)*(x536)))+(((r11)*(r20)*(x522)*(x532)))+(((IkReal(-1.00000000000000))*(x524)*(x534)*(x535)))+(((x523)*(x528)*(x534)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x537=((sj0)*(sj6)); +IkReal x538=((cj0)*(r10)); +IkReal x539=((IkReal(1.00000000000000))*(cj5)); +IkReal x540=((cj6)*(sj0)); +IkReal x541=((cj0)*(r11)); +if( IKabs(((gconst51)*(((((r01)*(x537)))+(((IkReal(-1.00000000000000))*(r00)*(x540)))+(((IkReal(-1.00000000000000))*(sj6)*(x541)))+(((cj6)*(x538))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst51)*(((((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x537)*(x539)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x541)))+(((cj5)*(sj6)*(x538)))+(((IkReal(-1.00000000000000))*(r01)*(x539)*(x540))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst51)*(((((r01)*(x537)))+(((IkReal(-1.00000000000000))*(r00)*(x540)))+(((IkReal(-1.00000000000000))*(sj6)*(x541)))+(((cj6)*(x538)))))), ((gconst51)*(((((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x537)*(x539)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x541)))+(((cj5)*(sj6)*(x538)))+(((IkReal(-1.00000000000000))*(r01)*(x539)*(x540))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x542=IKsin(j4); +IkReal x543=IKcos(j4); +IkReal x544=((r22)*(sj5)); +IkReal x545=((IkReal(1.00000000000000))*(cj6)); +IkReal x546=((IkReal(1.00000000000000))*(cj0)); +IkReal x547=((cj5)*(r11)); +IkReal x548=((cj5)*(cj6)); +IkReal x549=((r11)*(sj6)); +IkReal x550=((IkReal(1.00000000000000))*(sj6)); +IkReal x551=((cj6)*(r00)); +IkReal x552=((r12)*(sj5)); +IkReal x553=((r02)*(sj5)); +IkReal x554=((cj6)*(r10)); +IkReal x555=((cj5)*(sj6)); +IkReal x556=((cj5)*(r01)); +IkReal x557=((sj0)*(x542)); +IkReal x558=((r00)*(x555)); +IkReal x559=((cj0)*(x542)); +IkReal x560=((sj0)*(x543)); +IkReal x561=((r20)*(x543)); +IkReal x562=((cj0)*(x543)); +IkReal x563=((r21)*(x542)); +IkReal x564=((r21)*(x543)); +IkReal x565=((r20)*(x542)); +IkReal x566=((x543)*(x552)); +IkReal x567=((r01)*(sj6)*(x543)); +IkReal x568=((cj5)*(r10)*(x550)); +evalcond[0]=((IkReal(1.00000000000000))+(((sj6)*(x564)))+(((x542)*(x544)))+(((IkReal(-1.00000000000000))*(x545)*(x561)))+(((x548)*(x563)))+(((x555)*(x565)))); +evalcond[1]=((((cj6)*(x565)))+(((x555)*(x561)))+(((IkReal(-1.00000000000000))*(x550)*(x563)))+(((x548)*(x564)))+(((x543)*(x544)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x542)*(x546)*(x555)))+(((IkReal(-1.00000000000000))*(x542)*(x546)*(x552)))+(((r01)*(x548)*(x557)))+(((IkReal(-1.00000000000000))*(x543)*(x546)*(x549)))+(((IkReal(-1.00000000000000))*(r00)*(x545)*(x560)))+(((IkReal(-1.00000000000000))*(x545)*(x547)*(x559)))+(((r01)*(sj6)*(x560)))+(((x557)*(x558)))+(((x554)*(x562)))+(((x553)*(x557)))); +evalcond[3]=((((r01)*(x548)*(x560)))+(((x553)*(x560)))+(((x549)*(x559)))+(((IkReal(-1.00000000000000))*(r10)*(x545)*(x559)))+(((IkReal(-1.00000000000000))*(r01)*(x550)*(x557)))+(((IkReal(-1.00000000000000))*(r10)*(x543)*(x546)*(x555)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x545)*(x547)*(x562)))+(((x551)*(x557)))+(((IkReal(-1.00000000000000))*(x546)*(x566)))+(((x558)*(x560)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x542)*(x546)*(x553)))+(((IkReal(-1.00000000000000))*(x542)*(x546)*(x558)))+(((IkReal(-1.00000000000000))*(x546)*(x567)))+(((IkReal(-1.00000000000000))*(x557)*(x568)))+(((IkReal(-1.00000000000000))*(x545)*(x547)*(x557)))+(((IkReal(-1.00000000000000))*(x549)*(x560)))+(((IkReal(-1.00000000000000))*(x545)*(x556)*(x559)))+(((x554)*(x560)))+(((x551)*(x562)))+(((IkReal(-1.00000000000000))*(x552)*(x557)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x560)*(x568)))+(((r01)*(sj6)*(x559)))+(((IkReal(-1.00000000000000))*(r00)*(x545)*(x559)))+(((IkReal(-1.00000000000000))*(x545)*(x556)*(x562)))+(((IkReal(-1.00000000000000))*(r10)*(x545)*(x557)))+(((IkReal(-1.00000000000000))*(x545)*(x547)*(x560)))+(((IkReal(-1.00000000000000))*(x543)*(x546)*(x558)))+(((IkReal(-1.00000000000000))*(x552)*(x560)))+(((IkReal(-1.00000000000000))*(x543)*(x546)*(x553)))+(((IkReal(-1.00000000000000))*(sj3)))+(((x549)*(x557)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst50)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst50)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst50)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst50)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x569=IKsin(j4); +IkReal x570=IKcos(j4); +IkReal x571=((r22)*(sj5)); +IkReal x572=((IkReal(1.00000000000000))*(cj6)); +IkReal x573=((IkReal(1.00000000000000))*(cj0)); +IkReal x574=((cj5)*(r11)); +IkReal x575=((cj5)*(cj6)); +IkReal x576=((r11)*(sj6)); +IkReal x577=((IkReal(1.00000000000000))*(sj6)); +IkReal x578=((cj6)*(r00)); +IkReal x579=((r12)*(sj5)); +IkReal x580=((r02)*(sj5)); +IkReal x581=((cj6)*(r10)); +IkReal x582=((cj5)*(sj6)); +IkReal x583=((cj5)*(r01)); +IkReal x584=((sj0)*(x569)); +IkReal x585=((r00)*(x582)); +IkReal x586=((cj0)*(x569)); +IkReal x587=((sj0)*(x570)); +IkReal x588=((r20)*(x570)); +IkReal x589=((cj0)*(x570)); +IkReal x590=((r21)*(x569)); +IkReal x591=((r21)*(x570)); +IkReal x592=((r20)*(x569)); +IkReal x593=((x570)*(x579)); +IkReal x594=((r01)*(sj6)*(x570)); +IkReal x595=((cj5)*(r10)*(x577)); +evalcond[0]=((IkReal(1.00000000000000))+(((sj6)*(x591)))+(((x582)*(x592)))+(((x575)*(x590)))+(((IkReal(-1.00000000000000))*(x572)*(x588)))+(((x569)*(x571)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x577)*(x590)))+(((x575)*(x591)))+(((x570)*(x571)))+(((cj6)*(x592)))+(((x582)*(x588)))); +evalcond[2]=((((r01)*(sj6)*(x587)))+(((IkReal(-1.00000000000000))*(x572)*(x574)*(x586)))+(((x584)*(x585)))+(((IkReal(-1.00000000000000))*(r10)*(x569)*(x573)*(x582)))+(((IkReal(-1.00000000000000))*(r00)*(x572)*(x587)))+(((r01)*(x575)*(x584)))+(((IkReal(-1.00000000000000))*(x570)*(x573)*(x576)))+(((x580)*(x584)))+(((IkReal(-1.00000000000000))*(x569)*(x573)*(x579)))+(((x581)*(x589)))); +evalcond[3]=((((x580)*(x587)))+(((IkReal(-1.00000000000000))*(r01)*(x577)*(x584)))+(((r01)*(x575)*(x587)))+(((x585)*(x587)))+(((IkReal(-1.00000000000000))*(x572)*(x574)*(x589)))+(((IkReal(-1.00000000000000))*(x573)*(x593)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(r10)*(x572)*(x586)))+(((x578)*(x584)))+(((IkReal(-1.00000000000000))*(r10)*(x570)*(x573)*(x582)))+(((x576)*(x586)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x572)*(x583)*(x586)))+(((x578)*(x589)))+(((x581)*(x587)))+(((IkReal(-1.00000000000000))*(x573)*(x594)))+(((IkReal(-1.00000000000000))*(x584)*(x595)))+(((IkReal(-1.00000000000000))*(x569)*(x573)*(x580)))+(((IkReal(-1.00000000000000))*(x579)*(x584)))+(((IkReal(-1.00000000000000))*(x569)*(x573)*(x585)))+(((IkReal(-1.00000000000000))*(x576)*(x587)))+(((IkReal(-1.00000000000000))*(x572)*(x574)*(x584)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x572)*(x583)*(x589)))+(((IkReal(-1.00000000000000))*(r00)*(x572)*(x586)))+(((IkReal(-1.00000000000000))*(x587)*(x595)))+(((IkReal(-1.00000000000000))*(x572)*(x574)*(x587)))+(((IkReal(-1.00000000000000))*(x570)*(x573)*(x580)))+(((IkReal(-1.00000000000000))*(x579)*(x587)))+(((IkReal(-1.00000000000000))*(x570)*(x573)*(x585)))+(((r01)*(sj6)*(x586)))+(((x576)*(x584)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r10)*(x572)*(x584)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x596=((sj5)*(sj6)); +IkReal x597=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x596)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x597)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x596)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x597)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x596))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x596)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x597)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x596)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x597)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x596)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x596)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x597)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x596)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x597)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x596))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x598=IKsin(j3); +IkReal x599=((sj5)*(sj6)); +IkReal x600=((cj0)*(cj5)); +IkReal x601=((IkReal(1.00000000000000))*(cj0)); +IkReal x602=((IkReal(1.00000000000000))*(sj0)); +IkReal x603=((IkReal(1.00000000000000))*(x598)); +IkReal x604=((cj6)*(r01)*(sj5)); +IkReal x605=((cj6)*(r11)*(sj5)); +evalcond[0]=((((r20)*(x599)))+(((IkReal(-1.00000000000000))*(cj2)*(x603)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj5)*(r02)*(x602)))+(((r00)*(sj0)*(x599)))+(((IkReal(-1.00000000000000))*(sj2)*(x603)))+(((IkReal(-1.00000000000000))*(x601)*(x605)))+(((IkReal(-1.00000000000000))*(r10)*(x599)*(x601)))+(((sj0)*(x604)))+(((r12)*(x600)))); +evalcond[2]=((((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(r10)*(x599)*(x602)))+(((IkReal(-1.00000000000000))*(r00)*(x599)*(x601)))+(((r02)*(x600)))+(((IkReal(-1.00000000000000))*(x602)*(x605)))+(((IkReal(-1.00000000000000))*(x601)*(x604)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst41; +IkReal x606=(r21)*(r21); +IkReal x607=(cj5)*(cj5); +IkReal x608=(sj6)*(sj6); +IkReal x609=(cj6)*(cj6); +IkReal x610=(r20)*(r20); +IkReal x611=((cj6)*(r21)); +IkReal x612=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x613=((cj5)*(r22)*(sj5)); +IkReal x614=((IkReal(1.00000000000000))*(x608)); +IkReal x615=((IkReal(1.00000000000000))*(x609)); +gconst41=IKsign(((((IkReal(-1.00000000000000))*(x606)*(x614)))+(((IkReal(-1.00000000000000))*(x610)*(x615)))+(((IkReal(-1.00000000000000))*(x607)*(x610)*(x614)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x612)*(x613)))+(((IkReal(-2.00000000000000))*(x611)*(x613)))+(((IkReal(-1.00000000000000))*(x606)*(x607)*(x615)))+(((IkReal(-1.00000000000000))*(x607)*(x611)*(x612)))+(((x611)*(x612))))); +IkReal x616=(r21)*(r21); +IkReal x617=(cj5)*(cj5); +IkReal x618=(sj6)*(sj6); +IkReal x619=(cj6)*(cj6); +IkReal x620=(r20)*(r20); +IkReal x621=((cj6)*(r21)); +IkReal x622=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x623=((cj5)*(r22)*(sj5)); +IkReal x624=((IkReal(1.00000000000000))*(x618)); +IkReal x625=((IkReal(1.00000000000000))*(x619)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x616)*(x617)*(x625)))+(((IkReal(-1.00000000000000))*(x616)*(x624)))+(((IkReal(-1.00000000000000))*(x620)*(x625)))+(((IkReal(-2.00000000000000))*(x621)*(x623)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((x621)*(x622)))+(((IkReal(-1.00000000000000))*(x622)*(x623)))+(((IkReal(-1.00000000000000))*(x617)*(x620)*(x624)))+(((IkReal(-1.00000000000000))*(x617)*(x621)*(x622)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst42; +IkReal x626=(cj6)*(cj6); +IkReal x627=(sj6)*(sj6); +IkReal x628=((IkReal(1.00000000000000))*(r01)); +IkReal x629=((sj0)*(sj5)); +IkReal x630=((cj6)*(r22)); +IkReal x631=((r21)*(sj6)); +IkReal x632=((r00)*(r21)); +IkReal x633=((cj0)*(sj5)); +IkReal x634=((cj6)*(r20)); +IkReal x635=((r22)*(sj6)); +IkReal x636=((cj0)*(cj5)); +IkReal x637=((IkReal(1.00000000000000))*(r10)); +IkReal x638=((cj5)*(sj0)); +IkReal x639=((r20)*(x627)); +IkReal x640=((x626)*(x638)); +gconst42=IKsign(((((r00)*(x629)*(x630)))+(((r02)*(x629)*(x631)))+(((IkReal(-1.00000000000000))*(r12)*(x631)*(x633)))+(((IkReal(-1.00000000000000))*(x628)*(x638)*(x639)))+(((r12)*(x633)*(x634)))+(((IkReal(-1.00000000000000))*(x630)*(x633)*(x637)))+(((IkReal(-1.00000000000000))*(r21)*(x626)*(x636)*(x637)))+(((IkReal(-1.00000000000000))*(r21)*(x627)*(x636)*(x637)))+(((r11)*(x633)*(x635)))+(((IkReal(-1.00000000000000))*(x628)*(x629)*(x635)))+(((IkReal(-1.00000000000000))*(r02)*(x629)*(x634)))+(((r11)*(r20)*(x626)*(x636)))+(((IkReal(-1.00000000000000))*(r20)*(x628)*(x640)))+(((x632)*(x640)))+(((r11)*(x636)*(x639)))+(((x627)*(x632)*(x638))))); +IkReal x641=(cj6)*(cj6); +IkReal x642=(sj6)*(sj6); +IkReal x643=((IkReal(1.00000000000000))*(r01)); +IkReal x644=((sj0)*(sj5)); +IkReal x645=((cj6)*(r22)); +IkReal x646=((r21)*(sj6)); +IkReal x647=((r00)*(r21)); +IkReal x648=((cj0)*(sj5)); +IkReal x649=((cj6)*(r20)); +IkReal x650=((r22)*(sj6)); +IkReal x651=((cj0)*(cj5)); +IkReal x652=((IkReal(1.00000000000000))*(r10)); +IkReal x653=((cj5)*(sj0)); +IkReal x654=((r20)*(x642)); +IkReal x655=((x641)*(x653)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r02)*(x644)*(x649)))+(((IkReal(-1.00000000000000))*(r21)*(x642)*(x651)*(x652)))+(((r02)*(x644)*(x646)))+(((x642)*(x647)*(x653)))+(((IkReal(-1.00000000000000))*(x643)*(x644)*(x650)))+(((IkReal(-1.00000000000000))*(r20)*(x643)*(x655)))+(((IkReal(-1.00000000000000))*(x643)*(x653)*(x654)))+(((IkReal(-1.00000000000000))*(x645)*(x648)*(x652)))+(((r11)*(r20)*(x641)*(x651)))+(((r00)*(x644)*(x645)))+(((x647)*(x655)))+(((IkReal(-1.00000000000000))*(r21)*(x641)*(x651)*(x652)))+(((IkReal(-1.00000000000000))*(r12)*(x646)*(x648)))+(((r11)*(x648)*(x650)))+(((r12)*(x648)*(x649)))+(((r11)*(x651)*(x654)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x656=((r01)*(sj0)); +IkReal x657=((cj2)*(sj6)); +IkReal x658=((IkReal(1.00000000000000))*(cj0)); +IkReal x659=((r10)*(sj2)); +IkReal x660=((sj2)*(sj5)); +IkReal x661=((cj5)*(sj6)); +IkReal x662=((sj2)*(sj6)); +IkReal x663=((cj2)*(cj6)); +IkReal x664=((cj5)*(cj6)*(sj2)); +IkReal x665=((r00)*(sj0)*(sj2)); +if( IKabs(((gconst42)*(((((cj6)*(x665)))+(((r20)*(x663)))+(((cj0)*(r11)*(x662)))+(((IkReal(-1.00000000000000))*(r21)*(x657)))+(((IkReal(-1.00000000000000))*(cj6)*(x658)*(x659)))+(((IkReal(-1.00000000000000))*(x656)*(x662))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst42)*(((((cj2)*(r22)*(sj5)))+(((x656)*(x664)))+(((x661)*(x665)))+(((IkReal(-1.00000000000000))*(x658)*(x659)*(x661)))+(((cj5)*(r21)*(x663)))+(((IkReal(-1.00000000000000))*(r11)*(x658)*(x664)))+(((r02)*(sj0)*(x660)))+(((cj5)*(r20)*(x657)))+(((IkReal(-1.00000000000000))*(r12)*(x658)*(x660))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst42)*(((((cj6)*(x665)))+(((r20)*(x663)))+(((cj0)*(r11)*(x662)))+(((IkReal(-1.00000000000000))*(r21)*(x657)))+(((IkReal(-1.00000000000000))*(cj6)*(x658)*(x659)))+(((IkReal(-1.00000000000000))*(x656)*(x662)))))), ((gconst42)*(((((cj2)*(r22)*(sj5)))+(((x656)*(x664)))+(((x661)*(x665)))+(((IkReal(-1.00000000000000))*(x658)*(x659)*(x661)))+(((cj5)*(r21)*(x663)))+(((IkReal(-1.00000000000000))*(r11)*(x658)*(x664)))+(((r02)*(sj0)*(x660)))+(((cj5)*(r20)*(x657)))+(((IkReal(-1.00000000000000))*(r12)*(x658)*(x660))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x666=IKsin(j4); +IkReal x667=IKcos(j4); +IkReal x668=((r00)*(sj6)); +IkReal x669=((IkReal(1.00000000000000))*(r12)); +IkReal x670=((IkReal(1.00000000000000))*(cj6)); +IkReal x671=((cj6)*(r01)); +IkReal x672=((r11)*(sj6)); +IkReal x673=((r01)*(sj6)); +IkReal x674=((IkReal(1.00000000000000))*(cj5)); +IkReal x675=((IkReal(1.00000000000000))*(sj6)); +IkReal x676=((cj5)*(sj6)); +IkReal x677=((cj5)*(r11)); +IkReal x678=((cj6)*(r00)); +IkReal x679=((cj5)*(cj6)); +IkReal x680=((r02)*(sj5)); +IkReal x681=((cj6)*(r10)); +IkReal x682=((r10)*(sj6)); +IkReal x683=((cj5)*(r01)); +IkReal x684=((sj5)*(x666)); +IkReal x685=((cj0)*(x667)); +IkReal x686=((cj0)*(x666)); +IkReal x687=((sj0)*(x667)); +IkReal x688=((sj0)*(x666)); +IkReal x689=((r20)*(x667)); +IkReal x690=((r21)*(x666)); +IkReal x691=((r21)*(x667)); +IkReal x692=((r20)*(x666)); +IkReal x693=((cj5)*(x688)); +evalcond[0]=((((sj6)*(x691)))+(((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(x670)*(x689)))+(((r22)*(x684)))+(((x679)*(x690)))+(((x676)*(x692)))); +evalcond[1]=((((cj6)*(x692)))+(((x679)*(x691)))+(((cj2)*(cj3)))+(((r22)*(sj5)*(x667)))+(((x676)*(x689)))+(((IkReal(-1.00000000000000))*(x675)*(x690)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj0)*(x669)*(x684)))+(((x681)*(x685)))+(((x680)*(x688)))+(((x668)*(x693)))+(((IkReal(-1.00000000000000))*(r00)*(x670)*(x687)))+(((x673)*(x687)))+(((IkReal(-1.00000000000000))*(x670)*(x677)*(x686)))+(((x671)*(x693)))+(cj2)+(((IkReal(-1.00000000000000))*(x674)*(x682)*(x686)))+(((IkReal(-1.00000000000000))*(x672)*(x685)))); +evalcond[3]=((((x680)*(x687)))+(((cj5)*(x668)*(x687)))+(((IkReal(-1.00000000000000))*(x673)*(x688)))+(((IkReal(-1.00000000000000))*(x670)*(x677)*(x685)))+(((IkReal(-1.00000000000000))*(r10)*(x670)*(x686)))+(((x678)*(x688)))+(((x672)*(x686)))+(((IkReal(-1.00000000000000))*(sj5)*(x669)*(x685)))+(((cj5)*(x671)*(x687)))+(((IkReal(-1.00000000000000))*(x674)*(x682)*(x685)))+(((cj3)*(sj2)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x680)*(x686)))+(((IkReal(-1.00000000000000))*(x668)*(x674)*(x686)))+(((IkReal(-1.00000000000000))*(x670)*(x677)*(x688)))+(((IkReal(-1.00000000000000))*(x670)*(x683)*(x686)))+(((IkReal(-1.00000000000000))*(sj0)*(x669)*(x684)))+(((IkReal(-1.00000000000000))*(x672)*(x687)))+(((x681)*(x687)))+(((IkReal(-1.00000000000000))*(x674)*(x682)*(x688)))+(((IkReal(-1.00000000000000))*(x673)*(x685)))+(((x678)*(x685)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x674)*(x682)*(x687)))+(((IkReal(-1.00000000000000))*(x680)*(x685)))+(((IkReal(-1.00000000000000))*(sj5)*(x669)*(x687)))+(((x673)*(x686)))+(((IkReal(-1.00000000000000))*(r00)*(x670)*(x686)))+(((IkReal(-1.00000000000000))*(x670)*(x677)*(x687)))+(((IkReal(-1.00000000000000))*(x668)*(x674)*(x685)))+(((x672)*(x688)))+(((IkReal(-1.00000000000000))*(x670)*(x683)*(x685)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r10)*(x670)*(x688)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x694=((IkReal(1.00000000000000))*(sj2)); +IkReal x695=((r22)*(sj5)); +IkReal x696=((cj5)*(sj6)); +IkReal x697=((cj2)*(cj3)); +IkReal x698=((r21)*(sj6)); +IkReal x699=((r20)*(x697)); +IkReal x700=((cj5)*(cj6)*(r21)); +if( IKabs(((gconst41)*(((((cj6)*(x699)))+(((IkReal(-1.00000000000000))*(x697)*(x698)))+(((IkReal(-1.00000000000000))*(r20)*(x694)*(x696)))+(((IkReal(-1.00000000000000))*(x694)*(x695)))+(((IkReal(-1.00000000000000))*(x694)*(x700))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst41)*(((((x697)*(x700)))+(((cj6)*(r20)*(sj2)))+(((IkReal(-1.00000000000000))*(x694)*(x698)))+(((x696)*(x699)))+(((x695)*(x697))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst41)*(((((cj6)*(x699)))+(((IkReal(-1.00000000000000))*(x697)*(x698)))+(((IkReal(-1.00000000000000))*(r20)*(x694)*(x696)))+(((IkReal(-1.00000000000000))*(x694)*(x695)))+(((IkReal(-1.00000000000000))*(x694)*(x700)))))), ((gconst41)*(((((x697)*(x700)))+(((cj6)*(r20)*(sj2)))+(((IkReal(-1.00000000000000))*(x694)*(x698)))+(((x696)*(x699)))+(((x695)*(x697))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x701=IKsin(j4); +IkReal x702=IKcos(j4); +IkReal x703=((r00)*(sj6)); +IkReal x704=((IkReal(1.00000000000000))*(r12)); +IkReal x705=((IkReal(1.00000000000000))*(cj6)); +IkReal x706=((cj6)*(r01)); +IkReal x707=((r11)*(sj6)); +IkReal x708=((r01)*(sj6)); +IkReal x709=((IkReal(1.00000000000000))*(cj5)); +IkReal x710=((IkReal(1.00000000000000))*(sj6)); +IkReal x711=((cj5)*(sj6)); +IkReal x712=((cj5)*(r11)); +IkReal x713=((cj6)*(r00)); +IkReal x714=((cj5)*(cj6)); +IkReal x715=((r02)*(sj5)); +IkReal x716=((cj6)*(r10)); +IkReal x717=((r10)*(sj6)); +IkReal x718=((cj5)*(r01)); +IkReal x719=((sj5)*(x701)); +IkReal x720=((cj0)*(x702)); +IkReal x721=((cj0)*(x701)); +IkReal x722=((sj0)*(x702)); +IkReal x723=((sj0)*(x701)); +IkReal x724=((r20)*(x702)); +IkReal x725=((r21)*(x701)); +IkReal x726=((r21)*(x702)); +IkReal x727=((r20)*(x701)); +IkReal x728=((cj5)*(x723)); +evalcond[0]=((((sj6)*(x726)))+(((r22)*(x719)))+(((IkReal(-1.00000000000000))*(sj2)))+(((x711)*(x727)))+(((x714)*(x725)))+(((IkReal(-1.00000000000000))*(x705)*(x724)))); +evalcond[1]=((((x714)*(x726)))+(((cj2)*(cj3)))+(((IkReal(-1.00000000000000))*(x710)*(x725)))+(((r22)*(sj5)*(x702)))+(((x711)*(x724)))+(((cj6)*(x727)))); +evalcond[2]=((((x715)*(x723)))+(((x703)*(x728)))+(((x708)*(x722)))+(((x706)*(x728)))+(((x716)*(x720)))+(cj2)+(((IkReal(-1.00000000000000))*(x705)*(x712)*(x721)))+(((IkReal(-1.00000000000000))*(cj0)*(x704)*(x719)))+(((IkReal(-1.00000000000000))*(r00)*(x705)*(x722)))+(((IkReal(-1.00000000000000))*(x709)*(x717)*(x721)))+(((IkReal(-1.00000000000000))*(x707)*(x720)))); +evalcond[3]=((((x715)*(x722)))+(((IkReal(-1.00000000000000))*(r10)*(x705)*(x721)))+(((x707)*(x721)))+(((cj5)*(x706)*(x722)))+(((cj5)*(x703)*(x722)))+(((IkReal(-1.00000000000000))*(x709)*(x717)*(x720)))+(((x713)*(x723)))+(((IkReal(-1.00000000000000))*(x705)*(x712)*(x720)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(sj5)*(x704)*(x720)))+(((IkReal(-1.00000000000000))*(x708)*(x723)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x709)*(x717)*(x723)))+(((IkReal(-1.00000000000000))*(x703)*(x709)*(x721)))+(((IkReal(-1.00000000000000))*(sj0)*(x704)*(x719)))+(((IkReal(-1.00000000000000))*(x715)*(x721)))+(((IkReal(-1.00000000000000))*(x708)*(x720)))+(((x713)*(x720)))+(((x716)*(x722)))+(((IkReal(-1.00000000000000))*(x705)*(x718)*(x721)))+(((IkReal(-1.00000000000000))*(x707)*(x722)))+(((IkReal(-1.00000000000000))*(x705)*(x712)*(x723)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x715)*(x720)))+(((IkReal(-1.00000000000000))*(r00)*(x705)*(x721)))+(((IkReal(-1.00000000000000))*(r10)*(x705)*(x723)))+(((x707)*(x723)))+(((IkReal(-1.00000000000000))*(x705)*(x718)*(x720)))+(((IkReal(-1.00000000000000))*(x703)*(x709)*(x720)))+(((IkReal(-1.00000000000000))*(x705)*(x712)*(x722)))+(((IkReal(-1.00000000000000))*(x709)*(x717)*(x722)))+(((IkReal(-1.00000000000000))*(sj3)))+(((x708)*(x721)))+(((IkReal(-1.00000000000000))*(sj5)*(x704)*(x722)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x729=((r01)*(sj0)); +IkReal x730=((IkReal(1.00000000000000))*(cj0)); +IkReal x731=((r10)*(sj2)); +IkReal x732=((sj2)*(sj5)); +IkReal x733=((IkReal(1.00000000000000))*(sj6)); +IkReal x734=((cj2)*(r21)); +IkReal x735=((cj5)*(sj6)); +IkReal x736=((cj2)*(r20)); +IkReal x737=((cj5)*(cj6)*(sj2)); +IkReal x738=((r00)*(sj0)*(sj2)); +if( IKabs(((gconst39)*(((((cj6)*(x736)))+(((cj6)*(x738)))+(((cj0)*(r11)*(sj2)*(sj6)))+(((IkReal(-1.00000000000000))*(x733)*(x734)))+(((IkReal(-1.00000000000000))*(sj2)*(x729)*(x733)))+(((IkReal(-1.00000000000000))*(cj6)*(x730)*(x731))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst39)*(((((cj2)*(r22)*(sj5)))+(((x729)*(x737)))+(((IkReal(-1.00000000000000))*(r12)*(x730)*(x732)))+(((x735)*(x738)))+(((IkReal(-1.00000000000000))*(r11)*(x730)*(x737)))+(((x735)*(x736)))+(((r02)*(sj0)*(x732)))+(((IkReal(-1.00000000000000))*(x730)*(x731)*(x735)))+(((cj5)*(cj6)*(x734))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst39)*(((((cj6)*(x736)))+(((cj6)*(x738)))+(((cj0)*(r11)*(sj2)*(sj6)))+(((IkReal(-1.00000000000000))*(x733)*(x734)))+(((IkReal(-1.00000000000000))*(sj2)*(x729)*(x733)))+(((IkReal(-1.00000000000000))*(cj6)*(x730)*(x731)))))), ((gconst39)*(((((cj2)*(r22)*(sj5)))+(((x729)*(x737)))+(((IkReal(-1.00000000000000))*(r12)*(x730)*(x732)))+(((x735)*(x738)))+(((IkReal(-1.00000000000000))*(r11)*(x730)*(x737)))+(((x735)*(x736)))+(((r02)*(sj0)*(x732)))+(((IkReal(-1.00000000000000))*(x730)*(x731)*(x735)))+(((cj5)*(cj6)*(x734))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x739=IKsin(j4); +IkReal x740=IKcos(j4); +IkReal x741=((r00)*(sj6)); +IkReal x742=((cj6)*(r01)); +IkReal x743=((IkReal(1.00000000000000))*(cj0)); +IkReal x744=((IkReal(1.00000000000000))*(sj0)); +IkReal x745=((r10)*(sj6)); +IkReal x746=((sj5)*(x739)); +IkReal x747=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x748=((cj5)*(x739)); +IkReal x749=((cj6)*(x740)); +IkReal x750=((sj0)*(x748)); +IkReal x751=((r01)*(sj6)*(x740)); +IkReal x752=((r11)*(sj6)*(x740)); +evalcond[0]=((((r20)*(sj6)*(x748)))+(((IkReal(-1.00000000000000))*(sj2)))+(((r21)*(sj6)*(x740)))+(((r22)*(x746)))+(((IkReal(-1.00000000000000))*(r20)*(x749)))+(((cj6)*(r21)*(x748)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r12)*(x743)*(x746)))+(((sj0)*(x751)))+(((IkReal(-1.00000000000000))*(x743)*(x752)))+(((IkReal(-1.00000000000000))*(x743)*(x745)*(x748)))+(cj2)+(((x742)*(x750)))+(((x741)*(x750)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x743)*(x748)))+(((IkReal(-1.00000000000000))*(r00)*(x744)*(x749)))+(((cj0)*(r10)*(x749)))+(((r02)*(sj0)*(x746)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x744)*(x745)*(x748)))+(((IkReal(-1.00000000000000))*(x742)*(x743)*(x748)))+(((IkReal(-1.00000000000000))*(r02)*(x743)*(x746)))+(((IkReal(-1.00000000000000))*(x744)*(x752)))+(((cj0)*(r00)*(x749)))+(((IkReal(-1.00000000000000))*(r12)*(x744)*(x746)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x744)*(x748)))+(((IkReal(-1.00000000000000))*(x741)*(x743)*(x748)))+(((r10)*(sj0)*(x749)))+(((IkReal(-1.00000000000000))*(x743)*(x751)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst43; +gconst43=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x753=((cj5)*(sj4)); +IkReal x754=((IkReal(1.00000000000000))*(sj6)); +IkReal x755=((r10)*(sj0)); +IkReal x756=((sj4)*(sj5)); +IkReal x757=((cj5)*(cj6)); +IkReal x758=((r01)*(sj0)); +IkReal x759=((IkReal(1.00000000000000))*(r02)); +IkReal x760=((IkReal(0.374290000000000))*(cj0)); +IkReal x761=((cj5)*(r12)); +IkReal x762=((cj6)*(sj5)); +IkReal x763=((cj0)*(r11)); +IkReal x764=((cj5)*(sj0)); +IkReal x765=((r20)*(sj6)); +IkReal x766=((IkReal(1.00000000000000))*(sj0)); +IkReal x767=((cj4)*(cj5)); +IkReal x768=((IkReal(1.00000000000000))*(cj6)); +IkReal x769=((IkReal(0.0100000000000000))*(sj5)); +IkReal x770=((sj5)*(sj6)); +IkReal x771=((cj0)*(r10)); +IkReal x772=((cj4)*(cj6)); +IkReal x773=((cj0)*(r01)); +IkReal x774=((IkReal(1.00000000000000))*(cj4)); +IkReal x775=((cj0)*(r00)); +IkReal x776=((IkReal(0.374290000000000))*(sj0)); +IkReal x777=((cj0)*(r12)); +IkReal x778=((IkReal(0.374290000000000))*(sj5)); +IkReal x779=((cj4)*(sj6)); +IkReal x780=((IkReal(1.00000000000000))*(cj0)); +IkReal x781=((r02)*(sj0)); +IkReal x782=((IkReal(0.0100000000000000))*(cj5)); +IkReal x783=((r11)*(sj0)); +IkReal x784=((r00)*(sj0)*(sj6)); +IkReal x785=((r00)*(x772)); +IkReal x786=((sj6)*(x782)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x756)))+(((cj6)*(r21)*(x753)))+(((x753)*(x765)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x768)))+(((r21)*(x779)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x769)))+(((IkReal(-0.0100000000000000))*(r21)*(x757)))+(((IkReal(-1.00000000000000))*(x765)*(x782)))+(((IkReal(0.374290000000000))*(r21)*(x762)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x765)*(x778)))); +evalcond[3]=((((cj0)*(x761)))+(((x758)*(x762)))+(((IkReal(-1.00000000000000))*(x762)*(x763)))+(((IkReal(-1.00000000000000))*(x759)*(x764)))+(((IkReal(-1.00000000000000))*(sj5)*(x754)*(x771)))+(((r00)*(sj0)*(x770)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x753)*(x763)*(x768)))+(((x753)*(x784)))+(((IkReal(-1.00000000000000))*(cj4)*(x754)*(x763)))+(((cj6)*(x753)*(x758)))+(((IkReal(-1.00000000000000))*(x753)*(x754)*(x771)))+(((x756)*(x781)))+(((IkReal(-1.00000000000000))*(x766)*(x785)))+(((x771)*(x772)))+(((x758)*(x779)))+(((IkReal(-1.00000000000000))*(x756)*(x777)))); +evalcond[5]=((((sj4)*(sj6)*(x763)))+(((IkReal(-1.00000000000000))*(sj4)*(x754)*(x758)))+(((IkReal(-1.00000000000000))*(sj5)*(x774)*(x777)))+(((r00)*(x764)*(x779)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(sj5)*(x781)))+(((IkReal(-1.00000000000000))*(sj4)*(x768)*(x771)))+(((IkReal(-1.00000000000000))*(x754)*(x767)*(x771)))+(((cj4)*(x757)*(x758)))+(((IkReal(-1.00000000000000))*(x757)*(x763)*(x774)))); +evalcond[6]=((((x755)*(x772)))+(((IkReal(-1.00000000000000))*(x753)*(x754)*(x775)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x753)*(x766)))+(((x772)*(x775)))+(((IkReal(-1.00000000000000))*(cj4)*(x754)*(x783)))+(((IkReal(-1.00000000000000))*(x753)*(x768)*(x773)))+(((IkReal(-1.00000000000000))*(x753)*(x754)*(x755)))+(((IkReal(-1.00000000000000))*(cj0)*(x756)*(x759)))+(((IkReal(-1.00000000000000))*(cj4)*(x754)*(x773)))+(((IkReal(-1.00000000000000))*(r12)*(x756)*(x766)))); +evalcond[7]=((((IkReal(-0.0100000000000000))*(x757)*(x758)))+(((IkReal(0.374290000000000))*(x758)*(x762)))+(((x769)*(x777)))+(((IkReal(-1.00000000000000))*(r11)*(x760)*(x762)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x764)))+(((IkReal(-1.00000000000000))*(py)*(x780)))+(((IkReal(-1.00000000000000))*(x769)*(x781)))+(((x760)*(x761)))+(((r00)*(x770)*(x776)))+(((x771)*(x786)))+(((IkReal(0.0100000000000000))*(x757)*(x763)))+(((IkReal(-1.00000000000000))*(r10)*(x760)*(x770)))+(((px)*(sj0)))+(((IkReal(-0.374290000000000))*(r02)*(x764)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x755)*(x786)))+(((x775)*(x786)))+(((IkReal(-0.374290000000000))*(x755)*(x770)))+(((IkReal(-1.00000000000000))*(r11)*(x762)*(x776)))+(((IkReal(-1.00000000000000))*(py)*(x766)))+(((IkReal(0.0100000000000000))*(x757)*(x773)))+(((x761)*(x776)))+(((cj0)*(r02)*(x769)))+(((IkReal(0.0100000000000000))*(x757)*(x783)))+(((IkReal(-1.00000000000000))*(r01)*(x760)*(x762)))+(((IkReal(-1.00000000000000))*(px)*(x780)))+(((cj5)*(r02)*(x760)))+(((r12)*(sj0)*(x769)))+(((IkReal(-1.00000000000000))*(r00)*(x760)*(x770)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x787=((IkReal(1.00000000000000))*(cj4)); +IkReal x788=((cj6)*(r21)); +IkReal x789=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x788)))+(((sj5)*(x789))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x787)*(x788)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x787)*(x789)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x787)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x788)))+(((sj5)*(x789)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x787)*(x788)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x787)*(x789)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x787)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x788)))+(((sj5)*(x789)))), ((((IkReal(-1.00000000000000))*(cj5)*(x787)*(x788)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x787)*(x789)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x787)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x790=IKcos(j3); +IkReal x791=((IkReal(1.00000000000000))*(cj4)); +IkReal x792=((sj0)*(sj5)); +IkReal x793=((cj0)*(cj5)); +IkReal x794=((cj6)*(r01)); +IkReal x795=((r00)*(sj6)); +IkReal x796=((cj6)*(r11)); +IkReal x797=((cj5)*(sj0)); +IkReal x798=((cj6)*(sj4)); +IkReal x799=((sj4)*(sj6)); +IkReal x800=((cj4)*(cj5)); +IkReal x801=((cj6)*(r21)); +IkReal x802=((r20)*(sj6)); +IkReal x803=((r10)*(sj6)); +IkReal x804=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x805=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x804)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x801)))+(((sj5)*(x802)))); +evalcond[1]=((((x800)*(x801)))+(((r20)*(x798)))+(((x800)*(x802)))+(((cj4)*(r22)*(sj5)))+(x790)+(((IkReal(-1.00000000000000))*(r21)*(x799)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x792)*(x803)))+(((r12)*(x797)))+(((r02)*(x793)))+(((IkReal(-1.00000000000000))*(x794)*(x805)))+(((IkReal(-1.00000000000000))*(x792)*(x796)))+(((IkReal(-1.00000000000000))*(x790)))+(((IkReal(-1.00000000000000))*(x795)*(x805)))); +evalcond[3]=((((r11)*(sj0)*(x799)))+(((IkReal(-1.00000000000000))*(x791)*(x797)*(x803)))+(((IkReal(-1.00000000000000))*(x791)*(x793)*(x794)))+(((IkReal(-1.00000000000000))*(x804)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x791)))+(((IkReal(-1.00000000000000))*(r12)*(x791)*(x792)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x798)))+(((cj0)*(r01)*(x799)))+(((IkReal(-1.00000000000000))*(x791)*(x796)*(x797)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x798)))+(((IkReal(-1.00000000000000))*(x791)*(x793)*(x795)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x806=((cj5)*(sj4)); +IkReal x807=((IkReal(1.00000000000000))*(sj6)); +IkReal x808=((r10)*(sj0)); +IkReal x809=((sj4)*(sj5)); +IkReal x810=((cj5)*(cj6)); +IkReal x811=((r01)*(sj0)); +IkReal x812=((IkReal(1.00000000000000))*(r02)); +IkReal x813=((IkReal(0.374290000000000))*(cj0)); +IkReal x814=((cj5)*(r12)); +IkReal x815=((cj6)*(sj5)); +IkReal x816=((cj0)*(r11)); +IkReal x817=((cj5)*(sj0)); +IkReal x818=((r20)*(sj6)); +IkReal x819=((IkReal(1.00000000000000))*(sj0)); +IkReal x820=((cj4)*(cj5)); +IkReal x821=((IkReal(1.00000000000000))*(cj6)); +IkReal x822=((IkReal(0.0100000000000000))*(sj5)); +IkReal x823=((sj5)*(sj6)); +IkReal x824=((cj0)*(r10)); +IkReal x825=((cj4)*(cj6)); +IkReal x826=((cj0)*(r01)); +IkReal x827=((IkReal(1.00000000000000))*(cj4)); +IkReal x828=((cj0)*(r00)); +IkReal x829=((IkReal(0.374290000000000))*(sj0)); +IkReal x830=((cj0)*(r12)); +IkReal x831=((IkReal(0.374290000000000))*(sj5)); +IkReal x832=((cj4)*(sj6)); +IkReal x833=((IkReal(1.00000000000000))*(cj0)); +IkReal x834=((r02)*(sj0)); +IkReal x835=((IkReal(0.0100000000000000))*(cj5)); +IkReal x836=((r11)*(sj0)); +IkReal x837=((r00)*(sj0)*(sj6)); +IkReal x838=((r00)*(x825)); +IkReal x839=((sj6)*(x835)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((cj6)*(r21)*(x806)))+(((r21)*(x832)))+(((x806)*(x818)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x821)))+(((r22)*(x809)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x818)*(x835)))+(((IkReal(0.374290000000000))*(r21)*(x815)))+(((IkReal(-0.0100000000000000))*(r21)*(x810)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x822)))+(((x818)*(x831)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x815)*(x816)))+(((IkReal(-1.00000000000000))*(sj5)*(x807)*(x824)))+(((r00)*(sj0)*(x823)))+(((cj0)*(x814)))+(((IkReal(-1.00000000000000))*(x812)*(x817)))+(((x811)*(x815)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((cj6)*(x806)*(x811)))+(((IkReal(-1.00000000000000))*(x806)*(x807)*(x824)))+(((IkReal(-1.00000000000000))*(x806)*(x816)*(x821)))+(((x824)*(x825)))+(((x811)*(x832)))+(((IkReal(-1.00000000000000))*(cj4)*(x807)*(x816)))+(((IkReal(-1.00000000000000))*(x819)*(x838)))+(((x809)*(x834)))+(((IkReal(-1.00000000000000))*(x809)*(x830)))+(((x806)*(x837)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x807)*(x811)))+(((IkReal(-1.00000000000000))*(sj5)*(x827)*(x830)))+(((sj4)*(sj6)*(x816)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((r00)*(x817)*(x832)))+(((IkReal(-1.00000000000000))*(sj4)*(x821)*(x824)))+(((cj4)*(x810)*(x811)))+(((IkReal(-1.00000000000000))*(x810)*(x816)*(x827)))+(((IkReal(-1.00000000000000))*(x807)*(x820)*(x824)))+(((cj4)*(sj5)*(x834)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj0)*(x809)*(x812)))+(((IkReal(-1.00000000000000))*(x806)*(x821)*(x826)))+(((IkReal(-1.00000000000000))*(cj4)*(x807)*(x826)))+(((IkReal(-1.00000000000000))*(x806)*(x807)*(x828)))+(((IkReal(-1.00000000000000))*(x806)*(x807)*(x808)))+(((IkReal(-1.00000000000000))*(cj4)*(x807)*(x836)))+(((IkReal(-1.00000000000000))*(r12)*(x809)*(x819)))+(((x808)*(x825)))+(((x825)*(x828)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x806)*(x819)))); +evalcond[7]=((((x824)*(x839)))+(((IkReal(-1.00000000000000))*(r11)*(x813)*(x815)))+(((r00)*(x823)*(x829)))+(((IkReal(-0.0100000000000000))*(x810)*(x811)))+(((IkReal(-1.00000000000000))*(py)*(x833)))+(((IkReal(-0.374290000000000))*(r02)*(x817)))+(((IkReal(0.0100000000000000))*(x810)*(x816)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x817)))+(((IkReal(0.374290000000000))*(x811)*(x815)))+(((x813)*(x814)))+(((IkReal(-1.00000000000000))*(x822)*(x834)))+(((x822)*(x830)))+(((IkReal(-1.00000000000000))*(r10)*(x813)*(x823)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(r00)*(x813)*(x823)))+(((IkReal(-0.374290000000000))*(x808)*(x823)))+(((IkReal(0.0100000000000000))*(x810)*(x826)))+(((x808)*(x839)))+(((IkReal(0.0100000000000000))*(x810)*(x836)))+(((IkReal(-1.00000000000000))*(px)*(x833)))+(((r12)*(sj0)*(x822)))+(((IkReal(-1.00000000000000))*(r11)*(x815)*(x829)))+(((IkReal(-1.00000000000000))*(r01)*(x813)*(x815)))+(((cj5)*(r02)*(x813)))+(((IkReal(-1.00000000000000))*(py)*(x819)))+(((x814)*(x829)))+(((cj0)*(r02)*(x822)))+(((x828)*(x839)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x840=((IkReal(1.00000000000000))*(r21)); +IkReal x841=((cj4)*(cj5)); +IkReal x842=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x842)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x840))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x840)))+(((x841)*(x842)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x841))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x842)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x840)))))+IKsqr(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x840)))+(((x841)*(x842)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x841)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x842)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x840)))), ((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x840)))+(((x841)*(x842)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x841))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x843=IKsin(j3); +IkReal x844=((IkReal(1.00000000000000))*(cj4)); +IkReal x845=((sj0)*(sj5)); +IkReal x846=((cj0)*(cj5)); +IkReal x847=((cj6)*(r01)); +IkReal x848=((r00)*(sj6)); +IkReal x849=((cj6)*(r11)); +IkReal x850=((cj5)*(sj0)); +IkReal x851=((cj6)*(sj4)); +IkReal x852=((sj4)*(sj6)); +IkReal x853=((cj4)*(cj5)); +IkReal x854=((cj6)*(r21)); +IkReal x855=((r20)*(sj6)); +IkReal x856=((r10)*(sj6)); +IkReal x857=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x858=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x854)))+(((sj5)*(x855)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x843)); +evalcond[1]=((((r20)*(x851)))+(((x853)*(x854)))+(((cj4)*(r22)*(sj5)))+(((x853)*(x855)))+(((IkReal(-1.00000000000000))*(x857)))+(((IkReal(-1.00000000000000))*(r21)*(x852)))); +evalcond[2]=((((r12)*(x850)))+(((IkReal(-1.00000000000000))*(x848)*(x858)))+(((IkReal(-1.00000000000000))*(x845)*(x849)))+(((IkReal(-1.00000000000000))*(x857)))+(((IkReal(-1.00000000000000))*(x847)*(x858)))+(((IkReal(-1.00000000000000))*(x845)*(x856)))+(((r02)*(x846)))); +evalcond[3]=((((r11)*(sj0)*(x852)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x844)))+(((cj0)*(r01)*(x852)))+(((IkReal(-1.00000000000000))*(x843)))+(((IkReal(-1.00000000000000))*(x844)*(x849)*(x850)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x851)))+(((IkReal(-1.00000000000000))*(r12)*(x844)*(x845)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x851)))+(((IkReal(-1.00000000000000))*(x844)*(x846)*(x848)))+(((IkReal(-1.00000000000000))*(x844)*(x846)*(x847)))+(((IkReal(-1.00000000000000))*(x844)*(x850)*(x856)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x859=((IkReal(1.00000000000000))*(cj0)); +IkReal x860=((cj4)*(sj6)); +IkReal x861=((sj0)*(sj4)); +IkReal x862=((cj5)*(sj6)); +IkReal x863=((sj4)*(sj5)); +IkReal x864=((r12)*(sj5)); +IkReal x865=((IkReal(0.374290000000000))*(cj5)); +IkReal x866=((r02)*(sj0)); +IkReal x867=((r20)*(sj4)); +IkReal x868=((IkReal(1.00000000000000))*(sj0)); +IkReal x869=((IkReal(1.00000000000000))*(cj5)); +IkReal x870=((cj0)*(r10)); +IkReal x871=((cj4)*(cj6)); +IkReal x872=((r00)*(sj0)); +IkReal x873=((cj6)*(r21)); +IkReal x874=((IkReal(0.374290000000000))*(sj5)); +IkReal x875=((cj0)*(r00)); +IkReal x876=((IkReal(0.0100000000000000))*(sj5)); +IkReal x877=((cj0)*(r02)); +IkReal x878=((cj5)*(sj4)); +IkReal x879=((cj6)*(r01)); +IkReal x880=((cj6)*(r11)); +IkReal x881=((r01)*(sj0)); +IkReal x882=((r10)*(sj0)); +IkReal x883=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x884=((sj6)*(x874)); +IkReal x885=((cj0)*(cj6)*(x874)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x869)))+(((sj5)*(x873)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x863)))+(((x873)*(x878)))+(((x862)*(x867)))+(((IkReal(-1.00000000000000))*(r20)*(x871)))+(((r21)*(x860)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x862)))+(((IkReal(-0.0100000000000000))*(cj5)*(x873)))+(((IkReal(-1.00000000000000))*(r22)*(x876)))+(((x873)*(x874)))+(((r20)*(x884)))+(((IkReal(-1.00000000000000))*(r22)*(x865)))+(pz)); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x860)))+(((cj6)*(x867)))+(((cj5)*(r21)*(x871)))); +evalcond[5]=((((x860)*(x881)))+(((x870)*(x871)))+(((IkReal(-1.00000000000000))*(r12)*(x859)*(x863)))+(((IkReal(-1.00000000000000))*(r00)*(x868)*(x871)))+(((IkReal(-1.00000000000000))*(x859)*(x878)*(x880)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x859)*(x862)))+(((r02)*(sj5)*(x861)))+(((r00)*(x861)*(x862)))+(((cj5)*(x861)*(x879)))+(((IkReal(-1.00000000000000))*(r11)*(x859)*(x860)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x859)*(x878)*(x879)))+(((IkReal(-1.00000000000000))*(r10)*(x861)*(x862)))+(((IkReal(-1.00000000000000))*(x861)*(x864)))+(((IkReal(-1.00000000000000))*(x861)*(x869)*(x880)))+(((IkReal(-1.00000000000000))*(r02)*(x859)*(x863)))+(((x871)*(x882)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x859)*(x862)))+(((IkReal(-1.00000000000000))*(r01)*(x859)*(x860)))+(((x871)*(x875)))+(((IkReal(-1.00000000000000))*(r11)*(x860)*(x868)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x879)))+(((IkReal(0.0100000000000000))*(cj0)*(x864)))+(((IkReal(-0.0100000000000000))*(x862)*(x872)))+(((IkReal(-1.00000000000000))*(x865)*(x866)))+(((IkReal(0.0100000000000000))*(x862)*(x870)))+(((sj0)*(x874)*(x879)))+(((x872)*(x884)))+(((cj0)*(r12)*(x865)))+(((IkReal(-1.00000000000000))*(cj0)*(x874)*(x880)))+(((IkReal(-1.00000000000000))*(py)*(x859)))+(((IkReal(-1.00000000000000))*(x870)*(x884)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x866)*(x876)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x880)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(py)*(x868)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x879)))+(((IkReal(-1.00000000000000))*(x882)*(x884)))+(((r12)*(sj0)*(x865)))+(((IkReal(0.0100000000000000))*(sj0)*(x864)))+(((x876)*(x877)))+(((IkReal(0.0100000000000000))*(x862)*(x875)))+(((IkReal(-1.00000000000000))*(cj0)*(x874)*(x879)))+(((IkReal(-1.00000000000000))*(sj0)*(x874)*(x880)))+(((IkReal(-1.00000000000000))*(x875)*(x884)))+(((x865)*(x877)))+(((IkReal(0.0100000000000000))*(x862)*(x882)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x880)))+(((IkReal(-1.00000000000000))*(px)*(x859)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x886=((cj0)*(cj5)); +IkReal x887=((IkReal(1.00000000000000))*(cj0)); +IkReal x888=((cj6)*(r11)); +IkReal x889=((r10)*(sj6)); +IkReal x890=((cj5)*(sj0)); +IkReal x891=((r00)*(sj5)*(sj6)); +IkReal x892=((cj6)*(r01)*(sj5)); +IkReal x893=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((r12)*(x886)))+(((IkReal(-1.00000000000000))*(r02)*(x890)))+(((sj0)*(x891)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x888)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x889)))+(((sj0)*(x892))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x887)*(x892)))+(((IkReal(-1.00000000000000))*(x887)*(x891)))+(((IkReal(-1.00000000000000))*(x888)*(x893)))+(((IkReal(-1.00000000000000))*(x889)*(x893)))+(((r02)*(x886)))+(((r12)*(x890))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r12)*(x886)))+(((IkReal(-1.00000000000000))*(r02)*(x890)))+(((sj0)*(x891)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x888)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x889)))+(((sj0)*(x892)))))+IKsqr(((((IkReal(-1.00000000000000))*(x887)*(x892)))+(((IkReal(-1.00000000000000))*(x887)*(x891)))+(((IkReal(-1.00000000000000))*(x888)*(x893)))+(((IkReal(-1.00000000000000))*(x889)*(x893)))+(((r02)*(x886)))+(((r12)*(x890)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r12)*(x886)))+(((IkReal(-1.00000000000000))*(r02)*(x890)))+(((sj0)*(x891)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x888)))+(((IkReal(-1.00000000000000))*(sj5)*(x887)*(x889)))+(((sj0)*(x892)))), ((((IkReal(-1.00000000000000))*(x887)*(x892)))+(((IkReal(-1.00000000000000))*(x887)*(x891)))+(((IkReal(-1.00000000000000))*(x888)*(x893)))+(((IkReal(-1.00000000000000))*(x889)*(x893)))+(((r02)*(x886)))+(((r12)*(x890))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x894=IKcos(j3); +IkReal x895=((sj0)*(sj5)); +IkReal x896=((r00)*(sj6)); +IkReal x897=((cj6)*(sj0)); +IkReal x898=((IkReal(1.00000000000000))*(cj4)); +IkReal x899=((r00)*(sj4)); +IkReal x900=((cj0)*(cj5)); +IkReal x901=((cj5)*(sj0)); +IkReal x902=((cj6)*(r11)); +IkReal x903=((r10)*(sj6)); +IkReal x904=((cj0)*(sj5)); +IkReal x905=((r10)*(sj4)); +IkReal x906=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x907=((cj4)*(cj5)*(r01)); +IkReal x908=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x909=((cj0)*(sj4)*(sj6)); +IkReal x910=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x901)))+(((IkReal(-1.00000000000000))*(x903)*(x904)))+(((cj6)*(r01)*(x895)))+(((IkReal(-1.00000000000000))*(x902)*(x904)))+(((r12)*(x900)))+(((x895)*(x896)))+(((IkReal(-1.00000000000000))*(x906)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x895)*(x903)))+(((IkReal(-1.00000000000000))*(x896)*(x904)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x904)))+(((r02)*(x900)))+(((IkReal(-1.00000000000000))*(x894)))+(((IkReal(-1.00000000000000))*(x895)*(x902)))+(((r12)*(x901)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x905)*(x908)))+(((r11)*(x909)))+(((IkReal(-1.00000000000000))*(r12)*(x898)*(x904)))+(((IkReal(-1.00000000000000))*(r01)*(x910)))+(((x897)*(x907)))+(((IkReal(-1.00000000000000))*(x898)*(x900)*(x903)))+(((x897)*(x899)))+(((IkReal(-1.00000000000000))*(x898)*(x900)*(x902)))+(x894)+(((cj4)*(x896)*(x901)))+(((cj4)*(r02)*(x895)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x897)*(x898)))+(((IkReal(-1.00000000000000))*(r12)*(x895)*(x898)))+(((IkReal(-1.00000000000000))*(r02)*(x898)*(x904)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x898)*(x900)))+(((IkReal(-1.00000000000000))*(x899)*(x908)))+(((r11)*(x910)))+(((IkReal(-1.00000000000000))*(x897)*(x905)))+(((IkReal(-1.00000000000000))*(x896)*(x898)*(x900)))+(((r01)*(x909)))+(((IkReal(-1.00000000000000))*(x898)*(x901)*(x903)))+(((IkReal(-1.00000000000000))*(x906)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x911=((IkReal(1.00000000000000))*(cj0)); +IkReal x912=((cj4)*(sj6)); +IkReal x913=((sj0)*(sj4)); +IkReal x914=((cj5)*(sj6)); +IkReal x915=((sj4)*(sj5)); +IkReal x916=((r12)*(sj5)); +IkReal x917=((IkReal(0.374290000000000))*(cj5)); +IkReal x918=((r02)*(sj0)); +IkReal x919=((r20)*(sj4)); +IkReal x920=((IkReal(1.00000000000000))*(sj0)); +IkReal x921=((IkReal(1.00000000000000))*(cj5)); +IkReal x922=((cj0)*(r10)); +IkReal x923=((cj4)*(cj6)); +IkReal x924=((r00)*(sj0)); +IkReal x925=((cj6)*(r21)); +IkReal x926=((IkReal(0.374290000000000))*(sj5)); +IkReal x927=((cj0)*(r00)); +IkReal x928=((IkReal(0.0100000000000000))*(sj5)); +IkReal x929=((cj0)*(r02)); +IkReal x930=((cj5)*(sj4)); +IkReal x931=((cj6)*(r01)); +IkReal x932=((cj6)*(r11)); +IkReal x933=((r01)*(sj0)); +IkReal x934=((r10)*(sj0)); +IkReal x935=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x936=((sj6)*(x926)); +IkReal x937=((cj0)*(cj6)*(x926)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x921)))+(((sj5)*(x925)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((r21)*(x912)))+(((x914)*(x919)))+(((IkReal(-1.00000000000000))*(r20)*(x923)))+(((r22)*(x915)))+(((x925)*(x930)))); +evalcond[3]=((((x925)*(x926)))+(((IkReal(-1.00000000000000))*(r22)*(x917)))+(pz)+(((r20)*(x936)))+(((IkReal(-0.0100000000000000))*(r20)*(x914)))+(((IkReal(-0.0100000000000000))*(cj5)*(x925)))+(((IkReal(-1.00000000000000))*(r22)*(x928)))); +evalcond[4]=((((cj5)*(r21)*(x923)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x912)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x919)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r11)*(x911)*(x912)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x911)*(x914)))+(((IkReal(-1.00000000000000))*(r00)*(x920)*(x923)))+(((IkReal(-1.00000000000000))*(r12)*(x911)*(x915)))+(((r02)*(sj5)*(x913)))+(((IkReal(-1.00000000000000))*(x911)*(x930)*(x932)))+(((cj5)*(x913)*(x931)))+(((x912)*(x933)))+(((r00)*(x913)*(x914)))+(((x922)*(x923)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r02)*(x911)*(x915)))+(((x923)*(x934)))+(((IkReal(-1.00000000000000))*(x911)*(x930)*(x931)))+(((IkReal(-1.00000000000000))*(r10)*(x913)*(x914)))+(((IkReal(-1.00000000000000))*(x913)*(x921)*(x932)))+(((IkReal(-1.00000000000000))*(x913)*(x916)))+(((IkReal(-1.00000000000000))*(r11)*(x912)*(x920)))+(((x923)*(x927)))+(((IkReal(-1.00000000000000))*(r01)*(x911)*(x912)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x911)*(x914)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x911)))+(((IkReal(-0.0100000000000000))*(x914)*(x924)))+(((IkReal(-1.00000000000000))*(x918)*(x928)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x932)))+(((IkReal(0.0100000000000000))*(cj0)*(x916)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x931)))+(((IkReal(-1.00000000000000))*(x917)*(x918)))+(((sj0)*(x926)*(x931)))+(((IkReal(-1.00000000000000))*(x922)*(x936)))+(((IkReal(0.0100000000000000))*(x914)*(x922)))+(((cj0)*(r12)*(x917)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(x926)*(x932)))+(((x924)*(x936)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x932)))+(((IkReal(0.0100000000000000))*(x914)*(x927)))+(((IkReal(0.0100000000000000))*(x914)*(x934)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x931)))+(((x928)*(x929)))+(((IkReal(-1.00000000000000))*(sj0)*(x926)*(x932)))+(((IkReal(-1.00000000000000))*(py)*(x920)))+(((IkReal(-1.00000000000000))*(cj0)*(x926)*(x931)))+(((x917)*(x929)))+(((IkReal(-1.00000000000000))*(px)*(x911)))+(((IkReal(-1.00000000000000))*(x934)*(x936)))+(((IkReal(0.0100000000000000))*(sj0)*(x916)))+(((IkReal(-1.00000000000000))*(x927)*(x936)))+(((r12)*(sj0)*(x917)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x938=((cj5)*(r02)); +IkReal x939=((cj0)*(sj5)); +IkReal x940=((r10)*(sj6)); +IkReal x941=((IkReal(1.00000000000000))*(cj6)); +IkReal x942=((sj0)*(sj5)); +IkReal x943=((cj5)*(r12)); +IkReal x944=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x943)))+(((IkReal(-1.00000000000000))*(r01)*(x941)*(x942)))+(((cj6)*(r11)*(x939)))+(((x939)*(x940)))+(((sj0)*(x938)))+(((IkReal(-1.00000000000000))*(x942)*(x944))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x940)*(x942)))+(((IkReal(-1.00000000000000))*(r01)*(x939)*(x941)))+(((sj0)*(x943)))+(((IkReal(-1.00000000000000))*(r11)*(x941)*(x942)))+(((cj0)*(x938)))+(((IkReal(-1.00000000000000))*(x939)*(x944))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x943)))+(((IkReal(-1.00000000000000))*(r01)*(x941)*(x942)))+(((cj6)*(r11)*(x939)))+(((x939)*(x940)))+(((sj0)*(x938)))+(((IkReal(-1.00000000000000))*(x942)*(x944)))))+IKsqr(((((IkReal(-1.00000000000000))*(x940)*(x942)))+(((IkReal(-1.00000000000000))*(r01)*(x939)*(x941)))+(((sj0)*(x943)))+(((IkReal(-1.00000000000000))*(r11)*(x941)*(x942)))+(((cj0)*(x938)))+(((IkReal(-1.00000000000000))*(x939)*(x944)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x943)))+(((IkReal(-1.00000000000000))*(r01)*(x941)*(x942)))+(((cj6)*(r11)*(x939)))+(((x939)*(x940)))+(((sj0)*(x938)))+(((IkReal(-1.00000000000000))*(x942)*(x944)))), ((((IkReal(-1.00000000000000))*(x940)*(x942)))+(((IkReal(-1.00000000000000))*(r01)*(x939)*(x941)))+(((sj0)*(x943)))+(((IkReal(-1.00000000000000))*(r11)*(x941)*(x942)))+(((cj0)*(x938)))+(((IkReal(-1.00000000000000))*(x939)*(x944))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x945=IKsin(j3); +IkReal x946=((sj0)*(sj5)); +IkReal x947=((r00)*(sj6)); +IkReal x948=((IkReal(1.00000000000000))*(cj4)); +IkReal x949=((cj6)*(sj0)); +IkReal x950=((r00)*(sj4)); +IkReal x951=((cj0)*(cj5)); +IkReal x952=((cj6)*(r01)); +IkReal x953=((cj5)*(sj0)); +IkReal x954=((cj0)*(sj5)); +IkReal x955=((cj6)*(r11)); +IkReal x956=((r10)*(sj6)); +IkReal x957=((r10)*(sj4)); +IkReal x958=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x959=((cj0)*(sj4)*(sj6)); +IkReal x960=((sj0)*(sj4)*(sj6)); +IkReal x961=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((x946)*(x952)))+(((IkReal(-1.00000000000000))*(x954)*(x955)))+(((r12)*(x951)))+(((x946)*(x947)))+(x945)+(((IkReal(-1.00000000000000))*(r02)*(x953)))+(((IkReal(-1.00000000000000))*(x954)*(x956)))); +evalcond[1]=((((r02)*(x951)))+(((r12)*(x953)))+(((IkReal(-1.00000000000000))*(x946)*(x955)))+(((IkReal(-1.00000000000000))*(x947)*(x954)))+(((IkReal(-1.00000000000000))*(x946)*(x956)))+(((IkReal(-1.00000000000000))*(x958)))+(((IkReal(-1.00000000000000))*(x952)*(x954)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x960)))+(((cj4)*(x947)*(x953)))+(((r11)*(x959)))+(((cj4)*(cj5)*(r01)*(x949)))+(((IkReal(-1.00000000000000))*(x957)*(x961)))+(((IkReal(-1.00000000000000))*(x948)*(x951)*(x955)))+(((x949)*(x950)))+(((IkReal(-1.00000000000000))*(r12)*(x948)*(x954)))+(((cj4)*(r02)*(x946)))+(((IkReal(-1.00000000000000))*(x948)*(x951)*(x956)))+(((IkReal(-1.00000000000000))*(x958)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x950)*(x961)))+(((IkReal(-1.00000000000000))*(x945)))+(((IkReal(-1.00000000000000))*(x949)*(x957)))+(((IkReal(-1.00000000000000))*(x948)*(x953)*(x956)))+(((IkReal(-1.00000000000000))*(x948)*(x951)*(x952)))+(((r01)*(x959)))+(((IkReal(-1.00000000000000))*(r12)*(x946)*(x948)))+(((r11)*(x960)))+(((IkReal(-1.00000000000000))*(x947)*(x948)*(x951)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x948)*(x949)))+(((IkReal(-1.00000000000000))*(r02)*(x948)*(x954)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x962=((cj0)*(cj5)); +IkReal x963=((IkReal(1.00000000000000))*(cj0)); +IkReal x964=((cj6)*(r11)); +IkReal x965=((r10)*(sj6)); +IkReal x966=((cj5)*(sj0)); +IkReal x967=((r00)*(sj5)*(sj6)); +IkReal x968=((cj6)*(r01)*(sj5)); +IkReal x969=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x962)))+(((IkReal(-1.00000000000000))*(r02)*(x966)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x965)))+(((sj0)*(x967)))+(((sj0)*(x968)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x964))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x964)*(x969)))+(((IkReal(-1.00000000000000))*(x963)*(x968)))+(((IkReal(-1.00000000000000))*(x965)*(x969)))+(((r02)*(x962)))+(((r12)*(x966)))+(((IkReal(-1.00000000000000))*(x963)*(x967))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x962)))+(((IkReal(-1.00000000000000))*(r02)*(x966)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x965)))+(((sj0)*(x967)))+(((sj0)*(x968)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x964)))))))+IKsqr(((((IkReal(-1.00000000000000))*(x964)*(x969)))+(((IkReal(-1.00000000000000))*(x963)*(x968)))+(((IkReal(-1.00000000000000))*(x965)*(x969)))+(((r02)*(x962)))+(((r12)*(x966)))+(((IkReal(-1.00000000000000))*(x963)*(x967)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x962)))+(((IkReal(-1.00000000000000))*(r02)*(x966)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x965)))+(((sj0)*(x967)))+(((sj0)*(x968)))+(((IkReal(-1.00000000000000))*(sj5)*(x963)*(x964)))))), ((((IkReal(-1.00000000000000))*(x964)*(x969)))+(((IkReal(-1.00000000000000))*(x963)*(x968)))+(((IkReal(-1.00000000000000))*(x965)*(x969)))+(((r02)*(x962)))+(((r12)*(x966)))+(((IkReal(-1.00000000000000))*(x963)*(x967))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x970=IKsin(j3); +IkReal x971=IKcos(j3); +IkReal x972=((sj0)*(sj5)); +IkReal x973=((r00)*(sj6)); +IkReal x974=((IkReal(1.00000000000000))*(cj4)); +IkReal x975=((cj6)*(r01)); +IkReal x976=((cj0)*(cj5)); +IkReal x977=((cj5)*(sj0)); +IkReal x978=((cj6)*(r11)); +IkReal x979=((cj0)*(sj5)); +IkReal x980=((cj6)*(sj4)); +IkReal x981=((cj4)*(cj5)); +IkReal x982=((cj6)*(r21)); +IkReal x983=((r20)*(sj6)); +IkReal x984=((r10)*(sj6)); +IkReal x985=((IkReal(1.00000000000000))*(cj0)); +IkReal x986=((IkReal(1.00000000000000))*(x970)); +IkReal x987=((cj0)*(sj4)*(sj6)); +IkReal x988=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj2)*(x986)))+(((sj5)*(x982)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x983)))); +evalcond[1]=((((x981)*(x983)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x971)))+(((x981)*(x982)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x980)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x978)*(x979)))+(((x972)*(x975)))+(((IkReal(-1.00000000000000))*(sj2)*(x986)))+(((IkReal(-1.00000000000000))*(x979)*(x984)))+(((IkReal(-1.00000000000000))*(r02)*(x977)))+(((r12)*(x976)))+(((x972)*(x973)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x972)*(x978)))+(((IkReal(-1.00000000000000))*(x973)*(x979)))+(((r02)*(x976)))+(((IkReal(-1.00000000000000))*(x971)))+(((IkReal(-1.00000000000000))*(x972)*(x984)))+(((IkReal(-1.00000000000000))*(x975)*(x979)))+(((r12)*(x977)))); +evalcond[4]=((((r11)*(x987)))+(((IkReal(-1.00000000000000))*(r10)*(x980)*(x985)))+(((r00)*(sj0)*(x980)))+(((IkReal(-1.00000000000000))*(x974)*(x976)*(x978)))+(((cj4)*(r02)*(x972)))+(((cj4)*(x973)*(x977)))+(((IkReal(-1.00000000000000))*(r12)*(x974)*(x979)))+(((cj4)*(x975)*(x977)))+(((IkReal(-1.00000000000000))*(r01)*(x988)))+(((IkReal(-1.00000000000000))*(x974)*(x976)*(x984)))+(((sj2)*(x971)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x973)*(x974)*(x976)))+(((IkReal(-1.00000000000000))*(x974)*(x977)*(x978)))+(((IkReal(-1.00000000000000))*(x974)*(x977)*(x984)))+(((r01)*(x987)))+(((IkReal(-1.00000000000000))*(r00)*(x980)*(x985)))+(((IkReal(-1.00000000000000))*(r02)*(x974)*(x979)))+(((r11)*(x988)))+(((IkReal(-1.00000000000000))*(x986)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x980)))+(((IkReal(-1.00000000000000))*(x974)*(x975)*(x976)))+(((IkReal(-1.00000000000000))*(r12)*(x972)*(x974)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x989=((sj5)*(sj6)); +IkReal x990=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x989)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x989)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x989)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x990)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x990))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x989)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x989)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x989)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x990)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x990)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x989)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x989)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x989)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x990)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x990))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x991=IKsin(j3); +IkReal x992=IKcos(j3); +IkReal x993=((sj0)*(sj5)); +IkReal x994=((r00)*(sj6)); +IkReal x995=((IkReal(1.00000000000000))*(cj4)); +IkReal x996=((cj6)*(r01)); +IkReal x997=((cj0)*(cj5)); +IkReal x998=((cj5)*(sj0)); +IkReal x999=((cj6)*(r11)); +IkReal x1000=((cj0)*(sj5)); +IkReal x1001=((cj6)*(sj4)); +IkReal x1002=((cj4)*(cj5)); +IkReal x1003=((cj6)*(r21)); +IkReal x1004=((r20)*(sj6)); +IkReal x1005=((r10)*(sj6)); +IkReal x1006=((IkReal(1.00000000000000))*(cj0)); +IkReal x1007=((IkReal(1.00000000000000))*(x991)); +IkReal x1008=((cj0)*(sj4)*(sj6)); +IkReal x1009=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x1003)))+(((IkReal(-1.00000000000000))*(cj2)*(x1007)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1004)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x1002)*(x1003)))+(((r20)*(x1001)))+(((cj4)*(r22)*(sj5)))+(((cj2)*(x992)))+(((x1002)*(x1004)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x998)))+(((IkReal(-1.00000000000000))*(sj2)*(x1007)))+(((x993)*(x994)))+(((IkReal(-1.00000000000000))*(x1000)*(x999)))+(((r12)*(x997)))+(((IkReal(-1.00000000000000))*(x1000)*(x1005)))+(((x993)*(x996)))); +evalcond[3]=((((r02)*(x997)))+(((IkReal(-1.00000000000000))*(x992)))+(((IkReal(-1.00000000000000))*(x993)*(x999)))+(((IkReal(-1.00000000000000))*(x1005)*(x993)))+(((IkReal(-1.00000000000000))*(x1000)*(x994)))+(((r12)*(x998)))+(((IkReal(-1.00000000000000))*(x1000)*(x996)))); +evalcond[4]=((((cj4)*(r02)*(x993)))+(((sj2)*(x992)))+(((r00)*(sj0)*(x1001)))+(((IkReal(-1.00000000000000))*(r12)*(x1000)*(x995)))+(((IkReal(-1.00000000000000))*(x1005)*(x995)*(x997)))+(((IkReal(-1.00000000000000))*(x995)*(x997)*(x999)))+(((IkReal(-1.00000000000000))*(r10)*(x1001)*(x1006)))+(((r11)*(x1008)))+(((cj4)*(x994)*(x998)))+(((cj4)*(x996)*(x998)))+(((IkReal(-1.00000000000000))*(r01)*(x1009)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x993)*(x995)))+(((IkReal(-1.00000000000000))*(x995)*(x998)*(x999)))+(((r01)*(x1008)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1001)))+(((IkReal(-1.00000000000000))*(x1007)))+(((IkReal(-1.00000000000000))*(r02)*(x1000)*(x995)))+(((IkReal(-1.00000000000000))*(r00)*(x1001)*(x1006)))+(((IkReal(-1.00000000000000))*(x995)*(x996)*(x997)))+(((IkReal(-1.00000000000000))*(x994)*(x995)*(x997)))+(((r11)*(x1009)))+(((IkReal(-1.00000000000000))*(x1005)*(x995)*(x998)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1010=((IkReal(1.00000000000000))*(cj4)); +IkReal x1011=((cj6)*(r21)); +IkReal x1012=((r20)*(sj6)); +if( IKabs(((gconst43)*(((((sj5)*(x1012)))+(((sj5)*(x1011)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst43)*(((((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1010)*(x1012)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1010)))+(((IkReal(-1.00000000000000))*(cj5)*(x1010)*(x1011)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst43)*(((((sj5)*(x1012)))+(((sj5)*(x1011)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((gconst43)*(((((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1010)*(x1012)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1010)))+(((IkReal(-1.00000000000000))*(cj5)*(x1010)*(x1011)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x1013=IKsin(j3); +IkReal x1014=IKcos(j3); +IkReal x1015=((sj0)*(sj5)); +IkReal x1016=((r00)*(sj6)); +IkReal x1017=((IkReal(1.00000000000000))*(cj4)); +IkReal x1018=((cj6)*(r01)); +IkReal x1019=((cj0)*(cj5)); +IkReal x1020=((cj5)*(sj0)); +IkReal x1021=((cj6)*(r11)); +IkReal x1022=((cj0)*(sj5)); +IkReal x1023=((cj6)*(sj4)); +IkReal x1024=((cj4)*(cj5)); +IkReal x1025=((cj6)*(r21)); +IkReal x1026=((r20)*(sj6)); +IkReal x1027=((r10)*(sj6)); +IkReal x1028=((IkReal(1.00000000000000))*(cj0)); +IkReal x1029=((IkReal(1.00000000000000))*(x1013)); +IkReal x1030=((cj0)*(sj4)*(sj6)); +IkReal x1031=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x1025)))+(((IkReal(-1.00000000000000))*(cj2)*(x1029)))+(((sj5)*(x1026)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x1023)))+(((x1024)*(x1025)))+(((x1024)*(x1026)))+(((cj4)*(r22)*(sj5)))+(((cj2)*(x1014)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1021)*(x1022)))+(((r12)*(x1019)))+(((IkReal(-1.00000000000000))*(r02)*(x1020)))+(((x1015)*(x1016)))+(((IkReal(-1.00000000000000))*(sj2)*(x1029)))+(((x1015)*(x1018)))+(((IkReal(-1.00000000000000))*(x1022)*(x1027)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1015)*(x1027)))+(((IkReal(-1.00000000000000))*(x1015)*(x1021)))+(((IkReal(-1.00000000000000))*(x1014)))+(((IkReal(-1.00000000000000))*(x1018)*(x1022)))+(((r12)*(x1020)))+(((r02)*(x1019)))+(((IkReal(-1.00000000000000))*(x1016)*(x1022)))); +evalcond[4]=((((r11)*(x1030)))+(((IkReal(-1.00000000000000))*(r01)*(x1031)))+(((IkReal(-1.00000000000000))*(r12)*(x1017)*(x1022)))+(((r00)*(sj0)*(x1023)))+(((IkReal(-1.00000000000000))*(r10)*(x1023)*(x1028)))+(((IkReal(-1.00000000000000))*(x1017)*(x1019)*(x1021)))+(((cj4)*(x1018)*(x1020)))+(((IkReal(-1.00000000000000))*(x1017)*(x1019)*(x1027)))+(((cj4)*(x1016)*(x1020)))+(((cj4)*(r02)*(x1015)))+(((sj2)*(x1014)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x1017)*(x1022)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1023)))+(((IkReal(-1.00000000000000))*(x1017)*(x1018)*(x1019)))+(((IkReal(-1.00000000000000))*(x1017)*(x1020)*(x1027)))+(((r01)*(x1030)))+(((IkReal(-1.00000000000000))*(r12)*(x1015)*(x1017)))+(((IkReal(-1.00000000000000))*(r00)*(x1023)*(x1028)))+(((IkReal(-1.00000000000000))*(x1017)*(x1020)*(x1021)))+(((IkReal(-1.00000000000000))*(x1029)))+(((IkReal(-1.00000000000000))*(x1016)*(x1017)*(x1019)))+(((r11)*(x1031)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1032=((r11)*(sj0)); +IkReal x1033=((cj0)*(r01)); +IkReal x1034=((cj0)*(sj2)); +IkReal x1035=((sj0)*(sj2)); +IkReal x1036=((cj5)*(sj6)); +IkReal x1037=((IkReal(1.00000000000000))*(sj2)*(sj6)); +IkReal x1038=((cj5)*(cj6)*(sj2)); +if( IKabs(((gconst40)*(((((IkReal(-1.00000000000000))*(x1032)*(x1037)))+(((cj6)*(r10)*(x1035)))+(((IkReal(-1.00000000000000))*(x1033)*(x1037)))+(((cj6)*(r00)*(x1034))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst40)*(((((r00)*(x1034)*(x1036)))+(((x1033)*(x1038)))+(((r02)*(sj5)*(x1034)))+(((r10)*(x1035)*(x1036)))+(((x1032)*(x1038)))+(((r12)*(sj5)*(x1035))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst40)*(((((IkReal(-1.00000000000000))*(x1032)*(x1037)))+(((cj6)*(r10)*(x1035)))+(((IkReal(-1.00000000000000))*(x1033)*(x1037)))+(((cj6)*(r00)*(x1034)))))), ((gconst40)*(((((r00)*(x1034)*(x1036)))+(((x1033)*(x1038)))+(((r02)*(sj5)*(x1034)))+(((r10)*(x1035)*(x1036)))+(((x1032)*(x1038)))+(((r12)*(sj5)*(x1035))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x1039=IKsin(j4); +IkReal x1040=IKcos(j4); +IkReal x1041=((r00)*(sj6)); +IkReal x1042=((cj6)*(r01)); +IkReal x1043=((IkReal(1.00000000000000))*(cj0)); +IkReal x1044=((IkReal(1.00000000000000))*(sj0)); +IkReal x1045=((r10)*(sj6)); +IkReal x1046=((sj5)*(x1039)); +IkReal x1047=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x1048=((cj5)*(x1039)); +IkReal x1049=((cj6)*(x1040)); +IkReal x1050=((sj0)*(x1048)); +IkReal x1051=((r01)*(sj6)*(x1040)); +IkReal x1052=((r11)*(sj6)*(x1040)); +evalcond[0]=((((r22)*(x1046)))+(((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(r20)*(x1049)))+(((r20)*(sj6)*(x1048)))+(((r21)*(sj6)*(x1040)))+(((cj6)*(r21)*(x1048)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1043)*(x1045)*(x1048)))+(((sj0)*(x1051)))+(((IkReal(-1.00000000000000))*(x1043)*(x1052)))+(((IkReal(-1.00000000000000))*(r12)*(x1043)*(x1046)))+(((cj0)*(r10)*(x1049)))+(((IkReal(-1.00000000000000))*(r00)*(x1044)*(x1049)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1043)*(x1048)))+(cj2)+(((x1042)*(x1050)))+(((x1041)*(x1050)))+(((r02)*(sj0)*(x1046)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1044)*(x1052)))+(((IkReal(-1.00000000000000))*(x1041)*(x1043)*(x1048)))+(((IkReal(-1.00000000000000))*(x1044)*(x1045)*(x1048)))+(((IkReal(-1.00000000000000))*(r02)*(x1043)*(x1046)))+(((IkReal(-1.00000000000000))*(r12)*(x1044)*(x1046)))+(((IkReal(-1.00000000000000))*(x1042)*(x1043)*(x1048)))+(((r10)*(sj0)*(x1049)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1044)*(x1048)))+(((cj0)*(r00)*(x1049)))+(((IkReal(-1.00000000000000))*(x1043)*(x1051)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst43; +gconst43=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x1053=((cj5)*(sj4)); +IkReal x1054=((IkReal(1.00000000000000))*(sj6)); +IkReal x1055=((r10)*(sj0)); +IkReal x1056=((sj4)*(sj5)); +IkReal x1057=((cj5)*(cj6)); +IkReal x1058=((r01)*(sj0)); +IkReal x1059=((IkReal(1.00000000000000))*(r02)); +IkReal x1060=((IkReal(0.374290000000000))*(cj0)); +IkReal x1061=((cj5)*(r12)); +IkReal x1062=((cj6)*(sj5)); +IkReal x1063=((cj0)*(r11)); +IkReal x1064=((cj5)*(sj0)); +IkReal x1065=((r20)*(sj6)); +IkReal x1066=((IkReal(1.00000000000000))*(sj0)); +IkReal x1067=((cj4)*(cj5)); +IkReal x1068=((IkReal(1.00000000000000))*(cj6)); +IkReal x1069=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1070=((sj5)*(sj6)); +IkReal x1071=((cj0)*(r10)); +IkReal x1072=((cj4)*(cj6)); +IkReal x1073=((cj0)*(r01)); +IkReal x1074=((IkReal(1.00000000000000))*(cj4)); +IkReal x1075=((cj0)*(r00)); +IkReal x1076=((IkReal(0.374290000000000))*(sj0)); +IkReal x1077=((cj0)*(r12)); +IkReal x1078=((IkReal(0.374290000000000))*(sj5)); +IkReal x1079=((cj4)*(sj6)); +IkReal x1080=((IkReal(1.00000000000000))*(cj0)); +IkReal x1081=((r02)*(sj0)); +IkReal x1082=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1083=((r11)*(sj0)); +IkReal x1084=((r00)*(sj0)*(sj6)); +IkReal x1085=((r00)*(x1072)); +IkReal x1086=((sj6)*(x1082)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x1053)*(x1065)))+(((r21)*(x1079)))+(((cj6)*(r21)*(x1053)))+(((r22)*(x1056)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x1068)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x1069)))+(((x1065)*(x1078)))+(((IkReal(-0.0100000000000000))*(r21)*(x1057)))+(((IkReal(-1.00000000000000))*(x1065)*(x1082)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(0.374290000000000))*(r21)*(x1062)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1062)*(x1063)))+(((IkReal(-1.00000000000000))*(sj5)*(x1054)*(x1071)))+(((IkReal(-1.00000000000000))*(x1059)*(x1064)))+(((x1058)*(x1062)))+(((r00)*(sj0)*(x1070)))+(((cj0)*(x1061)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(cj4)*(x1054)*(x1063)))+(((cj6)*(x1053)*(x1058)))+(((IkReal(-1.00000000000000))*(x1056)*(x1077)))+(((IkReal(-1.00000000000000))*(x1066)*(x1085)))+(((x1071)*(x1072)))+(((x1053)*(x1084)))+(((IkReal(-1.00000000000000))*(x1053)*(x1063)*(x1068)))+(((x1058)*(x1079)))+(((IkReal(-1.00000000000000))*(x1053)*(x1054)*(x1071)))+(((x1056)*(x1081)))); +evalcond[5]=((((sj4)*(sj6)*(x1063)))+(((IkReal(-1.00000000000000))*(sj4)*(x1054)*(x1058)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(x1068)*(x1071)))+(((IkReal(-1.00000000000000))*(sj5)*(x1074)*(x1077)))+(((cj4)*(x1057)*(x1058)))+(((IkReal(-1.00000000000000))*(x1057)*(x1063)*(x1074)))+(((IkReal(-1.00000000000000))*(x1054)*(x1067)*(x1071)))+(((cj4)*(sj5)*(x1081)))+(((r00)*(x1064)*(x1079)))); +evalcond[6]=((((x1072)*(x1075)))+(((IkReal(-1.00000000000000))*(cj4)*(x1054)*(x1073)))+(((x1055)*(x1072)))+(((IkReal(-1.00000000000000))*(x1053)*(x1068)*(x1073)))+(((IkReal(-1.00000000000000))*(cj0)*(x1056)*(x1059)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1053)*(x1066)))+(((IkReal(-1.00000000000000))*(cj4)*(x1054)*(x1083)))+(((IkReal(-1.00000000000000))*(x1053)*(x1054)*(x1075)))+(((IkReal(-1.00000000000000))*(x1053)*(x1054)*(x1055)))+(((IkReal(-1.00000000000000))*(r12)*(x1056)*(x1066)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(py)*(x1080)))+(((IkReal(-0.0100000000000000))*(x1057)*(x1058)))+(((x1060)*(x1061)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x1064)))+(((IkReal(-1.00000000000000))*(r11)*(x1060)*(x1062)))+(((IkReal(-1.00000000000000))*(r10)*(x1060)*(x1070)))+(((x1071)*(x1086)))+(((IkReal(0.0100000000000000))*(x1057)*(x1063)))+(((x1069)*(x1077)))+(((IkReal(-0.374290000000000))*(r02)*(x1064)))+(((IkReal(0.374290000000000))*(x1058)*(x1062)))+(((r00)*(x1070)*(x1076)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x1069)*(x1081)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x1061)*(x1076)))+(((IkReal(-0.374290000000000))*(x1055)*(x1070)))+(((IkReal(0.0100000000000000))*(x1057)*(x1073)))+(((IkReal(-1.00000000000000))*(r01)*(x1060)*(x1062)))+(((IkReal(-1.00000000000000))*(r00)*(x1060)*(x1070)))+(((IkReal(-1.00000000000000))*(px)*(x1080)))+(((r12)*(sj0)*(x1069)))+(((IkReal(-1.00000000000000))*(r11)*(x1062)*(x1076)))+(((cj0)*(r02)*(x1069)))+(((IkReal(-1.00000000000000))*(py)*(x1066)))+(((IkReal(0.0100000000000000))*(x1057)*(x1083)))+(((cj5)*(r02)*(x1060)))+(((x1055)*(x1086)))+(((x1075)*(x1086)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1087=((IkReal(1.00000000000000))*(cj4)); +IkReal x1088=((cj6)*(r21)); +IkReal x1089=((r20)*(sj6)); +if( IKabs(((((sj5)*(x1089)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1088))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1087)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1089)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1088)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x1089)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1088)))))+IKsqr(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1087)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1089)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1088)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x1089)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1088)))), ((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1087)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1089)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1087)*(x1088)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1090=IKcos(j3); +IkReal x1091=((IkReal(1.00000000000000))*(cj4)); +IkReal x1092=((sj0)*(sj5)); +IkReal x1093=((cj0)*(cj5)); +IkReal x1094=((cj6)*(r01)); +IkReal x1095=((r00)*(sj6)); +IkReal x1096=((cj6)*(r11)); +IkReal x1097=((cj5)*(sj0)); +IkReal x1098=((cj6)*(sj4)); +IkReal x1099=((sj4)*(sj6)); +IkReal x1100=((cj4)*(cj5)); +IkReal x1101=((cj6)*(r21)); +IkReal x1102=((r20)*(sj6)); +IkReal x1103=((r10)*(sj6)); +IkReal x1104=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x1105=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x1104)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1102)))+(((sj5)*(x1101)))); +evalcond[1]=((((r20)*(x1098)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x1099)))+(x1090)+(((x1100)*(x1101)))+(((x1100)*(x1102)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1095)*(x1105)))+(((IkReal(-1.00000000000000))*(x1094)*(x1105)))+(((r02)*(x1093)))+(((IkReal(-1.00000000000000))*(x1092)*(x1103)))+(((IkReal(-1.00000000000000))*(x1092)*(x1096)))+(((r12)*(x1097)))+(((IkReal(-1.00000000000000))*(x1090)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1091)*(x1093)*(x1095)))+(((IkReal(-1.00000000000000))*(x1104)))+(((IkReal(-1.00000000000000))*(r12)*(x1091)*(x1092)))+(((IkReal(-1.00000000000000))*(x1091)*(x1093)*(x1094)))+(((cj0)*(r01)*(x1099)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x1091)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1098)))+(((IkReal(-1.00000000000000))*(x1091)*(x1097)*(x1103)))+(((r11)*(sj0)*(x1099)))+(((IkReal(-1.00000000000000))*(x1091)*(x1096)*(x1097)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1098)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1106=((cj5)*(sj4)); +IkReal x1107=((IkReal(1.00000000000000))*(sj6)); +IkReal x1108=((r10)*(sj0)); +IkReal x1109=((sj4)*(sj5)); +IkReal x1110=((cj5)*(cj6)); +IkReal x1111=((r01)*(sj0)); +IkReal x1112=((IkReal(1.00000000000000))*(r02)); +IkReal x1113=((IkReal(0.374290000000000))*(cj0)); +IkReal x1114=((cj5)*(r12)); +IkReal x1115=((cj6)*(sj5)); +IkReal x1116=((cj0)*(r11)); +IkReal x1117=((cj5)*(sj0)); +IkReal x1118=((r20)*(sj6)); +IkReal x1119=((IkReal(1.00000000000000))*(sj0)); +IkReal x1120=((cj4)*(cj5)); +IkReal x1121=((IkReal(1.00000000000000))*(cj6)); +IkReal x1122=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1123=((sj5)*(sj6)); +IkReal x1124=((cj0)*(r10)); +IkReal x1125=((cj4)*(cj6)); +IkReal x1126=((cj0)*(r01)); +IkReal x1127=((IkReal(1.00000000000000))*(cj4)); +IkReal x1128=((cj0)*(r00)); +IkReal x1129=((IkReal(0.374290000000000))*(sj0)); +IkReal x1130=((cj0)*(r12)); +IkReal x1131=((IkReal(0.374290000000000))*(sj5)); +IkReal x1132=((cj4)*(sj6)); +IkReal x1133=((IkReal(1.00000000000000))*(cj0)); +IkReal x1134=((r02)*(sj0)); +IkReal x1135=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1136=((r11)*(sj0)); +IkReal x1137=((r00)*(sj0)*(sj6)); +IkReal x1138=((r00)*(x1125)); +IkReal x1139=((sj6)*(x1135)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x1132)))+(((cj6)*(r21)*(x1106)))+(((x1106)*(x1118)))+(((r22)*(x1109)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x1121)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x1115)))+(((IkReal(-0.0100000000000000))*(r21)*(x1110)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x1122)))+(((IkReal(-1.00000000000000))*(x1118)*(x1135)))+(((x1118)*(x1131)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x1107)*(x1124)))+(((x1111)*(x1115)))+(((IkReal(-1.00000000000000))*(x1115)*(x1116)))+(((r00)*(sj0)*(x1123)))+(((cj0)*(x1114)))+(((IkReal(-1.00000000000000))*(x1112)*(x1117)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x1106)*(x1107)*(x1124)))+(((x1106)*(x1137)))+(((IkReal(-1.00000000000000))*(x1119)*(x1138)))+(((IkReal(-1.00000000000000))*(cj4)*(x1107)*(x1116)))+(((IkReal(-1.00000000000000))*(x1109)*(x1130)))+(((x1124)*(x1125)))+(((x1111)*(x1132)))+(((IkReal(-1.00000000000000))*(x1106)*(x1116)*(x1121)))+(((x1109)*(x1134)))+(((cj6)*(x1106)*(x1111)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x1127)*(x1130)))+(((cj4)*(sj5)*(x1134)))+(((IkReal(-1.00000000000000))*(x1107)*(x1120)*(x1124)))+(((cj4)*(x1110)*(x1111)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((r00)*(x1117)*(x1132)))+(((sj4)*(sj6)*(x1116)))+(((IkReal(-1.00000000000000))*(sj4)*(x1107)*(x1111)))+(((IkReal(-1.00000000000000))*(sj4)*(x1121)*(x1124)))+(((IkReal(-1.00000000000000))*(x1110)*(x1116)*(x1127)))); +evalcond[6]=((((x1108)*(x1125)))+(((IkReal(-1.00000000000000))*(cj4)*(x1107)*(x1136)))+(((x1125)*(x1128)))+(((IkReal(-1.00000000000000))*(x1106)*(x1107)*(x1108)))+(((IkReal(-1.00000000000000))*(cj4)*(x1107)*(x1126)))+(((IkReal(-1.00000000000000))*(x1106)*(x1121)*(x1126)))+(((IkReal(-1.00000000000000))*(x1106)*(x1107)*(x1128)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1106)*(x1119)))+(((IkReal(-1.00000000000000))*(r12)*(x1109)*(x1119)))+(((IkReal(-1.00000000000000))*(cj0)*(x1109)*(x1112)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(py)*(x1133)))+(((x1122)*(x1130)))+(((IkReal(-1.00000000000000))*(r11)*(x1113)*(x1115)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x1117)))+(((r00)*(x1123)*(x1129)))+(((IkReal(0.0100000000000000))*(x1110)*(x1116)))+(((IkReal(-1.00000000000000))*(r10)*(x1113)*(x1123)))+(((IkReal(-1.00000000000000))*(x1122)*(x1134)))+(((x1124)*(x1139)))+(((IkReal(0.374290000000000))*(x1111)*(x1115)))+(((px)*(sj0)))+(((x1113)*(x1114)))+(((IkReal(-0.0100000000000000))*(x1110)*(x1111)))+(((IkReal(-0.374290000000000))*(r02)*(x1117)))); +evalcond[8]=((IkReal(0.433420000000000))+(((r12)*(sj0)*(x1122)))+(((x1114)*(x1129)))+(((IkReal(0.0100000000000000))*(x1110)*(x1136)))+(((x1128)*(x1139)))+(((IkReal(-0.374290000000000))*(x1108)*(x1123)))+(((IkReal(-1.00000000000000))*(r00)*(x1113)*(x1123)))+(((IkReal(-1.00000000000000))*(px)*(x1133)))+(((IkReal(-1.00000000000000))*(r11)*(x1115)*(x1129)))+(((IkReal(-1.00000000000000))*(py)*(x1119)))+(((cj0)*(r02)*(x1122)))+(((IkReal(-1.00000000000000))*(r01)*(x1113)*(x1115)))+(((x1108)*(x1139)))+(((cj5)*(r02)*(x1113)))+(((IkReal(0.0100000000000000))*(x1110)*(x1126)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1140=((IkReal(1.00000000000000))*(r21)); +IkReal x1141=((cj4)*(cj5)); +IkReal x1142=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x1142)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1140)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r20)*(sj4)))+(((x1141)*(x1142)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x1141)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1140))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x1142)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1140)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r20)*(sj4)))+(((x1141)*(x1142)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x1141)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1140)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x1142)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1140)))+(((cj5)*(r22)))), ((((cj6)*(r20)*(sj4)))+(((x1141)*(x1142)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x1141)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1140))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1143=IKsin(j3); +IkReal x1144=((IkReal(1.00000000000000))*(cj4)); +IkReal x1145=((sj0)*(sj5)); +IkReal x1146=((cj0)*(cj5)); +IkReal x1147=((cj6)*(r01)); +IkReal x1148=((r00)*(sj6)); +IkReal x1149=((cj6)*(r11)); +IkReal x1150=((cj5)*(sj0)); +IkReal x1151=((cj6)*(sj4)); +IkReal x1152=((sj4)*(sj6)); +IkReal x1153=((cj4)*(cj5)); +IkReal x1154=((cj6)*(r21)); +IkReal x1155=((r20)*(sj6)); +IkReal x1156=((r10)*(sj6)); +IkReal x1157=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x1158=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((x1143)+(((sj5)*(x1154)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1155)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x1152)))+(((cj4)*(r22)*(sj5)))+(((x1153)*(x1154)))+(((x1153)*(x1155)))+(((r20)*(x1151)))+(((IkReal(-1.00000000000000))*(x1157)))); +evalcond[2]=((((r02)*(x1146)))+(((IkReal(-1.00000000000000))*(x1145)*(x1149)))+(((IkReal(-1.00000000000000))*(x1148)*(x1158)))+(((IkReal(-1.00000000000000))*(x1145)*(x1156)))+(((r12)*(x1150)))+(((IkReal(-1.00000000000000))*(x1147)*(x1158)))+(((IkReal(-1.00000000000000))*(x1157)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x1144)*(x1145)))+(((IkReal(-1.00000000000000))*(x1144)*(x1146)*(x1148)))+(((IkReal(-1.00000000000000))*(x1144)*(x1150)*(x1156)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1151)))+(((IkReal(-1.00000000000000))*(x1144)*(x1149)*(x1150)))+(((r11)*(sj0)*(x1152)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x1144)))+(((IkReal(-1.00000000000000))*(x1143)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1151)))+(((cj0)*(r01)*(x1152)))+(((IkReal(-1.00000000000000))*(x1144)*(x1146)*(x1147)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1159=((IkReal(1.00000000000000))*(cj0)); +IkReal x1160=((cj4)*(sj6)); +IkReal x1161=((sj0)*(sj4)); +IkReal x1162=((cj5)*(sj6)); +IkReal x1163=((sj4)*(sj5)); +IkReal x1164=((r12)*(sj5)); +IkReal x1165=((IkReal(0.374290000000000))*(cj5)); +IkReal x1166=((r02)*(sj0)); +IkReal x1167=((r20)*(sj4)); +IkReal x1168=((IkReal(1.00000000000000))*(sj0)); +IkReal x1169=((IkReal(1.00000000000000))*(cj5)); +IkReal x1170=((cj0)*(r10)); +IkReal x1171=((cj4)*(cj6)); +IkReal x1172=((r00)*(sj0)); +IkReal x1173=((cj6)*(r21)); +IkReal x1174=((IkReal(0.374290000000000))*(sj5)); +IkReal x1175=((cj0)*(r00)); +IkReal x1176=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1177=((cj0)*(r02)); +IkReal x1178=((cj5)*(sj4)); +IkReal x1179=((cj6)*(r01)); +IkReal x1180=((cj6)*(r11)); +IkReal x1181=((r01)*(sj0)); +IkReal x1182=((r10)*(sj0)); +IkReal x1183=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x1184=((sj6)*(x1174)); +IkReal x1185=((cj0)*(cj6)*(x1174)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x1169)))+(((sj5)*(x1173)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x1173)*(x1178)))+(((x1162)*(x1167)))+(((IkReal(-1.00000000000000))*(r20)*(x1171)))+(((r22)*(x1163)))+(((r21)*(x1160)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x1176)))+(((IkReal(-0.0100000000000000))*(r20)*(x1162)))+(((r20)*(x1184)))+(pz)+(((IkReal(-0.0100000000000000))*(cj5)*(x1173)))+(((x1173)*(x1174)))+(((IkReal(-1.00000000000000))*(r22)*(x1165)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x1160)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x1167)))+(((cj5)*(r21)*(x1171)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r11)*(x1159)*(x1160)))+(((x1160)*(x1181)))+(((cj5)*(x1161)*(x1179)))+(((IkReal(-1.00000000000000))*(r00)*(x1168)*(x1171)))+(((r00)*(x1161)*(x1162)))+(((IkReal(-1.00000000000000))*(x1159)*(x1178)*(x1180)))+(((IkReal(-1.00000000000000))*(r12)*(x1159)*(x1163)))+(((r02)*(sj5)*(x1161)))+(((x1170)*(x1171)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x1159)*(x1162)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r10)*(x1161)*(x1162)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x1159)*(x1162)))+(((IkReal(-1.00000000000000))*(r01)*(x1159)*(x1160)))+(((IkReal(-1.00000000000000))*(x1161)*(x1169)*(x1180)))+(((x1171)*(x1175)))+(((IkReal(-1.00000000000000))*(x1161)*(x1164)))+(((x1171)*(x1182)))+(((IkReal(-1.00000000000000))*(x1159)*(x1178)*(x1179)))+(((IkReal(-1.00000000000000))*(r11)*(x1160)*(x1168)))+(((IkReal(-1.00000000000000))*(r02)*(x1159)*(x1163)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x1159)))+(((IkReal(-1.00000000000000))*(x1166)*(x1176)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1180)))+(((IkReal(0.0100000000000000))*(cj0)*(x1164)))+(((sj0)*(x1174)*(x1179)))+(((IkReal(0.0100000000000000))*(x1162)*(x1170)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x1179)))+(((IkReal(-1.00000000000000))*(x1165)*(x1166)))+(((x1172)*(x1184)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(x1174)*(x1180)))+(((cj0)*(r12)*(x1165)))+(((IkReal(-1.00000000000000))*(x1170)*(x1184)))+(((IkReal(-0.0100000000000000))*(x1162)*(x1172)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x1180)))+(((IkReal(-1.00000000000000))*(x1175)*(x1184)))+(((IkReal(-1.00000000000000))*(cj0)*(x1174)*(x1179)))+(((IkReal(0.0100000000000000))*(x1162)*(x1175)))+(((IkReal(-1.00000000000000))*(x1182)*(x1184)))+(((IkReal(0.0100000000000000))*(x1162)*(x1182)))+(((x1176)*(x1177)))+(((r12)*(sj0)*(x1165)))+(((IkReal(-1.00000000000000))*(px)*(x1159)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1179)))+(((x1165)*(x1177)))+(((IkReal(-1.00000000000000))*(py)*(x1168)))+(((IkReal(0.0100000000000000))*(sj0)*(x1164)))+(((IkReal(-1.00000000000000))*(sj0)*(x1174)*(x1180)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1186=((cj0)*(cj5)); +IkReal x1187=((IkReal(1.00000000000000))*(cj0)); +IkReal x1188=((cj6)*(r11)); +IkReal x1189=((r10)*(sj6)); +IkReal x1190=((cj5)*(sj0)); +IkReal x1191=((r00)*(sj5)*(sj6)); +IkReal x1192=((cj6)*(r01)*(sj5)); +IkReal x1193=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x1192)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1188)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1189)))+(((IkReal(-1.00000000000000))*(r02)*(x1190)))+(((sj0)*(x1191)))+(((r12)*(x1186))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x1189)*(x1193)))+(((r02)*(x1186)))+(((IkReal(-1.00000000000000))*(x1188)*(x1193)))+(((IkReal(-1.00000000000000))*(x1187)*(x1191)))+(((r12)*(x1190)))+(((IkReal(-1.00000000000000))*(x1187)*(x1192))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x1192)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1188)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1189)))+(((IkReal(-1.00000000000000))*(r02)*(x1190)))+(((sj0)*(x1191)))+(((r12)*(x1186)))))+IKsqr(((((IkReal(-1.00000000000000))*(x1189)*(x1193)))+(((r02)*(x1186)))+(((IkReal(-1.00000000000000))*(x1188)*(x1193)))+(((IkReal(-1.00000000000000))*(x1187)*(x1191)))+(((r12)*(x1190)))+(((IkReal(-1.00000000000000))*(x1187)*(x1192)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x1192)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1188)))+(((IkReal(-1.00000000000000))*(sj5)*(x1187)*(x1189)))+(((IkReal(-1.00000000000000))*(r02)*(x1190)))+(((sj0)*(x1191)))+(((r12)*(x1186)))), ((((IkReal(-1.00000000000000))*(x1189)*(x1193)))+(((r02)*(x1186)))+(((IkReal(-1.00000000000000))*(x1188)*(x1193)))+(((IkReal(-1.00000000000000))*(x1187)*(x1191)))+(((r12)*(x1190)))+(((IkReal(-1.00000000000000))*(x1187)*(x1192))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1194=IKcos(j3); +IkReal x1195=((sj0)*(sj5)); +IkReal x1196=((r00)*(sj6)); +IkReal x1197=((cj6)*(sj0)); +IkReal x1198=((IkReal(1.00000000000000))*(cj4)); +IkReal x1199=((r00)*(sj4)); +IkReal x1200=((cj0)*(cj5)); +IkReal x1201=((cj5)*(sj0)); +IkReal x1202=((cj6)*(r11)); +IkReal x1203=((r10)*(sj6)); +IkReal x1204=((cj0)*(sj5)); +IkReal x1205=((r10)*(sj4)); +IkReal x1206=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x1207=((cj4)*(cj5)*(r01)); +IkReal x1208=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x1209=((cj0)*(sj4)*(sj6)); +IkReal x1210=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x1203)*(x1204)))+(((x1195)*(x1196)))+(((r12)*(x1200)))+(((cj6)*(r01)*(x1195)))+(((IkReal(-1.00000000000000))*(x1206)))+(((IkReal(-1.00000000000000))*(x1202)*(x1204)))+(((IkReal(-1.00000000000000))*(r02)*(x1201)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1195)*(x1202)))+(((IkReal(-1.00000000000000))*(x1194)))+(((r02)*(x1200)))+(((IkReal(-1.00000000000000))*(x1195)*(x1203)))+(((IkReal(-1.00000000000000))*(x1196)*(x1204)))+(((r12)*(x1201)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x1204)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1198)*(x1200)*(x1203)))+(((IkReal(-1.00000000000000))*(x1205)*(x1208)))+(((IkReal(-1.00000000000000))*(r12)*(x1198)*(x1204)))+(((r11)*(x1209)))+(((IkReal(-1.00000000000000))*(x1198)*(x1200)*(x1202)))+(((cj4)*(r02)*(x1195)))+(x1194)+(((x1197)*(x1207)))+(((IkReal(-1.00000000000000))*(r01)*(x1210)))+(((cj4)*(x1196)*(x1201)))+(((x1197)*(x1199)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r02)*(x1198)*(x1204)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x1197)*(x1198)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x1198)*(x1200)))+(((IkReal(-1.00000000000000))*(x1196)*(x1198)*(x1200)))+(((IkReal(-1.00000000000000))*(x1197)*(x1205)))+(((IkReal(-1.00000000000000))*(x1199)*(x1208)))+(((r01)*(x1209)))+(((IkReal(-1.00000000000000))*(x1198)*(x1201)*(x1203)))+(((IkReal(-1.00000000000000))*(x1206)))+(((IkReal(-1.00000000000000))*(r12)*(x1195)*(x1198)))+(((r11)*(x1210)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1211=((IkReal(1.00000000000000))*(cj0)); +IkReal x1212=((cj4)*(sj6)); +IkReal x1213=((sj0)*(sj4)); +IkReal x1214=((cj5)*(sj6)); +IkReal x1215=((sj4)*(sj5)); +IkReal x1216=((r12)*(sj5)); +IkReal x1217=((IkReal(0.374290000000000))*(cj5)); +IkReal x1218=((r02)*(sj0)); +IkReal x1219=((r20)*(sj4)); +IkReal x1220=((IkReal(1.00000000000000))*(sj0)); +IkReal x1221=((IkReal(1.00000000000000))*(cj5)); +IkReal x1222=((cj0)*(r10)); +IkReal x1223=((cj4)*(cj6)); +IkReal x1224=((r00)*(sj0)); +IkReal x1225=((cj6)*(r21)); +IkReal x1226=((IkReal(0.374290000000000))*(sj5)); +IkReal x1227=((cj0)*(r00)); +IkReal x1228=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1229=((cj0)*(r02)); +IkReal x1230=((cj5)*(sj4)); +IkReal x1231=((cj6)*(r01)); +IkReal x1232=((cj6)*(r11)); +IkReal x1233=((r01)*(sj0)); +IkReal x1234=((r10)*(sj0)); +IkReal x1235=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x1236=((sj6)*(x1226)); +IkReal x1237=((cj0)*(cj6)*(x1226)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x1225)))+(((IkReal(-1.00000000000000))*(r22)*(x1221)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x1223)))+(((x1225)*(x1230)))+(((r21)*(x1212)))+(((r22)*(x1215)))+(((x1214)*(x1219)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x1217)))+(((IkReal(-0.0100000000000000))*(r20)*(x1214)))+(((r20)*(x1236)))+(((IkReal(-1.00000000000000))*(r22)*(x1228)))+(((x1225)*(x1226)))+(pz)+(((IkReal(-0.0100000000000000))*(cj5)*(x1225)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x1219)))+(((cj5)*(r20)*(x1212)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x1223)))); +evalcond[5]=((((r00)*(x1213)*(x1214)))+(((IkReal(-1.00000000000000))*(r12)*(x1211)*(x1215)))+(((IkReal(-1.00000000000000))*(x1211)*(x1230)*(x1232)))+(((IkReal(-1.00000000000000))*(r00)*(x1220)*(x1223)))+(((r02)*(sj5)*(x1213)))+(((x1212)*(x1233)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x1211)*(x1214)))+(((cj5)*(x1213)*(x1231)))+(((IkReal(-1.00000000000000))*(r11)*(x1211)*(x1212)))+(((x1222)*(x1223)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x1211)*(x1230)*(x1231)))+(((IkReal(-1.00000000000000))*(r11)*(x1212)*(x1220)))+(((x1223)*(x1227)))+(((x1223)*(x1234)))+(((IkReal(-1.00000000000000))*(x1213)*(x1216)))+(((IkReal(-1.00000000000000))*(r02)*(x1211)*(x1215)))+(((IkReal(-1.00000000000000))*(r10)*(x1213)*(x1214)))+(((IkReal(-1.00000000000000))*(x1213)*(x1221)*(x1232)))+(((IkReal(-1.00000000000000))*(r01)*(x1211)*(x1212)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x1211)*(x1214)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((cj0)*(r12)*(x1217)))+(((IkReal(-1.00000000000000))*(cj0)*(x1226)*(x1232)))+(((x1224)*(x1236)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1232)))+(((IkReal(0.0100000000000000))*(cj0)*(x1216)))+(((IkReal(-1.00000000000000))*(py)*(x1211)))+(((IkReal(-1.00000000000000))*(x1217)*(x1218)))+(((IkReal(-0.0100000000000000))*(x1214)*(x1224)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x1231)))+(((IkReal(-1.00000000000000))*(x1218)*(x1228)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(x1214)*(x1222)))+(((IkReal(-1.00000000000000))*(x1222)*(x1236)))+(((sj0)*(x1226)*(x1231)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x1226)*(x1231)))+(((IkReal(-1.00000000000000))*(sj0)*(x1226)*(x1232)))+(((IkReal(-1.00000000000000))*(x1227)*(x1236)))+(((IkReal(0.0100000000000000))*(sj0)*(x1216)))+(((IkReal(0.0100000000000000))*(x1214)*(x1234)))+(((IkReal(-1.00000000000000))*(py)*(x1220)))+(((x1217)*(x1229)))+(((IkReal(-1.00000000000000))*(px)*(x1211)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1231)))+(((IkReal(0.0100000000000000))*(x1214)*(x1227)))+(((IkReal(-1.00000000000000))*(x1234)*(x1236)))+(((x1228)*(x1229)))+(((r12)*(sj0)*(x1217)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x1232)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1238=((cj5)*(r02)); +IkReal x1239=((cj0)*(sj5)); +IkReal x1240=((r10)*(sj6)); +IkReal x1241=((IkReal(1.00000000000000))*(cj6)); +IkReal x1242=((sj0)*(sj5)); +IkReal x1243=((cj5)*(r12)); +IkReal x1244=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x1243)))+(((IkReal(-1.00000000000000))*(r01)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1242)*(x1244)))+(((x1239)*(x1240)))+(((cj6)*(r11)*(x1239)))+(((sj0)*(x1238))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x1240)*(x1242)))+(((IkReal(-1.00000000000000))*(r01)*(x1239)*(x1241)))+(((IkReal(-1.00000000000000))*(r11)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1239)*(x1244)))+(((sj0)*(x1243)))+(((cj0)*(x1238))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x1243)))+(((IkReal(-1.00000000000000))*(r01)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1242)*(x1244)))+(((x1239)*(x1240)))+(((cj6)*(r11)*(x1239)))+(((sj0)*(x1238)))))+IKsqr(((((IkReal(-1.00000000000000))*(x1240)*(x1242)))+(((IkReal(-1.00000000000000))*(r01)*(x1239)*(x1241)))+(((IkReal(-1.00000000000000))*(r11)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1239)*(x1244)))+(((sj0)*(x1243)))+(((cj0)*(x1238)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x1243)))+(((IkReal(-1.00000000000000))*(r01)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1242)*(x1244)))+(((x1239)*(x1240)))+(((cj6)*(r11)*(x1239)))+(((sj0)*(x1238)))), ((((IkReal(-1.00000000000000))*(x1240)*(x1242)))+(((IkReal(-1.00000000000000))*(r01)*(x1239)*(x1241)))+(((IkReal(-1.00000000000000))*(r11)*(x1241)*(x1242)))+(((IkReal(-1.00000000000000))*(x1239)*(x1244)))+(((sj0)*(x1243)))+(((cj0)*(x1238))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1245=IKsin(j3); +IkReal x1246=((sj0)*(sj5)); +IkReal x1247=((r00)*(sj6)); +IkReal x1248=((IkReal(1.00000000000000))*(cj4)); +IkReal x1249=((cj6)*(sj0)); +IkReal x1250=((r00)*(sj4)); +IkReal x1251=((cj0)*(cj5)); +IkReal x1252=((cj6)*(r01)); +IkReal x1253=((cj5)*(sj0)); +IkReal x1254=((cj0)*(sj5)); +IkReal x1255=((cj6)*(r11)); +IkReal x1256=((r10)*(sj6)); +IkReal x1257=((r10)*(sj4)); +IkReal x1258=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x1259=((cj0)*(sj4)*(sj6)); +IkReal x1260=((sj0)*(sj4)*(sj6)); +IkReal x1261=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((x1246)*(x1252)))+(((r12)*(x1251)))+(((IkReal(-1.00000000000000))*(x1254)*(x1255)))+(((IkReal(-1.00000000000000))*(r02)*(x1253)))+(x1245)+(((IkReal(-1.00000000000000))*(x1254)*(x1256)))+(((x1246)*(x1247)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1252)*(x1254)))+(((IkReal(-1.00000000000000))*(x1246)*(x1256)))+(((r12)*(x1253)))+(((IkReal(-1.00000000000000))*(x1247)*(x1254)))+(((IkReal(-1.00000000000000))*(x1246)*(x1255)))+(((r02)*(x1251)))+(((IkReal(-1.00000000000000))*(x1258)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1257)*(x1261)))+(((IkReal(-1.00000000000000))*(r01)*(x1260)))+(((x1249)*(x1250)))+(((IkReal(-1.00000000000000))*(r12)*(x1248)*(x1254)))+(((IkReal(-1.00000000000000))*(x1248)*(x1251)*(x1255)))+(((cj4)*(x1247)*(x1253)))+(((cj4)*(r02)*(x1246)))+(((cj4)*(cj5)*(r01)*(x1249)))+(((IkReal(-1.00000000000000))*(x1248)*(x1251)*(x1256)))+(((r11)*(x1259)))+(((IkReal(-1.00000000000000))*(x1258)))); +evalcond[3]=((((r01)*(x1259)))+(((r11)*(x1260)))+(((IkReal(-1.00000000000000))*(x1250)*(x1261)))+(((IkReal(-1.00000000000000))*(x1245)))+(((IkReal(-1.00000000000000))*(x1247)*(x1248)*(x1251)))+(((IkReal(-1.00000000000000))*(r12)*(x1246)*(x1248)))+(((IkReal(-1.00000000000000))*(x1248)*(x1251)*(x1252)))+(((IkReal(-1.00000000000000))*(x1249)*(x1257)))+(((IkReal(-1.00000000000000))*(x1248)*(x1253)*(x1256)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x1248)*(x1249)))+(((IkReal(-1.00000000000000))*(r02)*(x1248)*(x1254)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1262=((cj0)*(cj5)); +IkReal x1263=((IkReal(1.00000000000000))*(cj0)); +IkReal x1264=((cj6)*(r11)); +IkReal x1265=((r10)*(sj6)); +IkReal x1266=((cj5)*(sj0)); +IkReal x1267=((r00)*(sj5)*(sj6)); +IkReal x1268=((cj6)*(r01)*(sj5)); +IkReal x1269=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x1262)))+(((IkReal(-1.00000000000000))*(r02)*(x1266)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1265)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1264)))+(((sj0)*(x1268)))+(((sj0)*(x1267))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x1264)*(x1269)))+(((IkReal(-1.00000000000000))*(x1265)*(x1269)))+(((IkReal(-1.00000000000000))*(x1263)*(x1267)))+(((r12)*(x1266)))+(((IkReal(-1.00000000000000))*(x1263)*(x1268)))+(((r02)*(x1262))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x1262)))+(((IkReal(-1.00000000000000))*(r02)*(x1266)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1265)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1264)))+(((sj0)*(x1268)))+(((sj0)*(x1267)))))))+IKsqr(((((IkReal(-1.00000000000000))*(x1264)*(x1269)))+(((IkReal(-1.00000000000000))*(x1265)*(x1269)))+(((IkReal(-1.00000000000000))*(x1263)*(x1267)))+(((r12)*(x1266)))+(((IkReal(-1.00000000000000))*(x1263)*(x1268)))+(((r02)*(x1262)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x1262)))+(((IkReal(-1.00000000000000))*(r02)*(x1266)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1265)))+(((IkReal(-1.00000000000000))*(sj5)*(x1263)*(x1264)))+(((sj0)*(x1268)))+(((sj0)*(x1267)))))), ((((IkReal(-1.00000000000000))*(x1264)*(x1269)))+(((IkReal(-1.00000000000000))*(x1265)*(x1269)))+(((IkReal(-1.00000000000000))*(x1263)*(x1267)))+(((r12)*(x1266)))+(((IkReal(-1.00000000000000))*(x1263)*(x1268)))+(((r02)*(x1262))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x1270=IKsin(j3); +IkReal x1271=IKcos(j3); +IkReal x1272=((sj0)*(sj5)); +IkReal x1273=((r00)*(sj6)); +IkReal x1274=((IkReal(1.00000000000000))*(cj4)); +IkReal x1275=((cj6)*(r01)); +IkReal x1276=((cj0)*(cj5)); +IkReal x1277=((cj5)*(sj0)); +IkReal x1278=((cj6)*(r11)); +IkReal x1279=((cj0)*(sj5)); +IkReal x1280=((cj6)*(sj4)); +IkReal x1281=((cj4)*(cj5)); +IkReal x1282=((cj6)*(r21)); +IkReal x1283=((r20)*(sj6)); +IkReal x1284=((r10)*(sj6)); +IkReal x1285=((IkReal(1.00000000000000))*(cj0)); +IkReal x1286=((IkReal(1.00000000000000))*(x1270)); +IkReal x1287=((cj0)*(sj4)*(sj6)); +IkReal x1288=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x1282)))+(((sj5)*(x1283)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x1286)))); +evalcond[1]=((((cj2)*(x1271)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x1281)*(x1283)))+(((x1281)*(x1282)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x1280)))); +evalcond[2]=((((r12)*(x1276)))+(((x1272)*(x1275)))+(((IkReal(-1.00000000000000))*(x1279)*(x1284)))+(((IkReal(-1.00000000000000))*(sj2)*(x1286)))+(((x1272)*(x1273)))+(((IkReal(-1.00000000000000))*(x1278)*(x1279)))+(((IkReal(-1.00000000000000))*(r02)*(x1277)))); +evalcond[3]=((((r12)*(x1277)))+(((IkReal(-1.00000000000000))*(x1272)*(x1284)))+(((IkReal(-1.00000000000000))*(x1275)*(x1279)))+(((IkReal(-1.00000000000000))*(x1271)))+(((r02)*(x1276)))+(((IkReal(-1.00000000000000))*(x1272)*(x1278)))+(((IkReal(-1.00000000000000))*(x1273)*(x1279)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x1274)*(x1276)*(x1278)))+(((IkReal(-1.00000000000000))*(r01)*(x1288)))+(((cj4)*(x1275)*(x1277)))+(((cj4)*(x1273)*(x1277)))+(((r00)*(sj0)*(x1280)))+(((IkReal(-1.00000000000000))*(r10)*(x1280)*(x1285)))+(((r11)*(x1287)))+(((IkReal(-1.00000000000000))*(r12)*(x1274)*(x1279)))+(((cj4)*(r02)*(x1272)))+(((sj2)*(x1271)))+(((IkReal(-1.00000000000000))*(x1274)*(x1276)*(x1284)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1286)))+(((IkReal(-1.00000000000000))*(x1274)*(x1277)*(x1278)))+(((IkReal(-1.00000000000000))*(x1273)*(x1274)*(x1276)))+(((r11)*(x1288)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1280)))+(((r01)*(x1287)))+(((IkReal(-1.00000000000000))*(x1274)*(x1277)*(x1284)))+(((IkReal(-1.00000000000000))*(r02)*(x1274)*(x1279)))+(((IkReal(-1.00000000000000))*(x1274)*(x1275)*(x1276)))+(((IkReal(-1.00000000000000))*(r00)*(x1280)*(x1285)))+(((IkReal(-1.00000000000000))*(r12)*(x1272)*(x1274)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1289=((sj5)*(sj6)); +IkReal x1290=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x1289)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1289)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x1290)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1289)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x1290))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x1289)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1289)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x1290)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1289)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x1290)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x1289)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1289)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x1290)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1289)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x1290))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x1291=IKsin(j3); +IkReal x1292=IKcos(j3); +IkReal x1293=((sj0)*(sj5)); +IkReal x1294=((r00)*(sj6)); +IkReal x1295=((IkReal(1.00000000000000))*(cj4)); +IkReal x1296=((cj6)*(r01)); +IkReal x1297=((cj0)*(cj5)); +IkReal x1298=((cj5)*(sj0)); +IkReal x1299=((cj6)*(r11)); +IkReal x1300=((cj0)*(sj5)); +IkReal x1301=((cj6)*(sj4)); +IkReal x1302=((cj4)*(cj5)); +IkReal x1303=((cj6)*(r21)); +IkReal x1304=((r20)*(sj6)); +IkReal x1305=((r10)*(sj6)); +IkReal x1306=((IkReal(1.00000000000000))*(cj0)); +IkReal x1307=((IkReal(1.00000000000000))*(x1291)); +IkReal x1308=((cj0)*(sj4)*(sj6)); +IkReal x1309=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj2)*(x1307)))+(((sj5)*(x1304)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1303)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x1302)*(x1303)))+(((r20)*(x1301)))+(((cj2)*(x1292)))+(((x1302)*(x1304)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1300)*(x1305)))+(((r12)*(x1297)))+(((IkReal(-1.00000000000000))*(sj2)*(x1307)))+(((IkReal(-1.00000000000000))*(r02)*(x1298)))+(((x1293)*(x1294)))+(((IkReal(-1.00000000000000))*(x1299)*(x1300)))+(((x1293)*(x1296)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1292)))+(((IkReal(-1.00000000000000))*(x1293)*(x1305)))+(((IkReal(-1.00000000000000))*(x1293)*(x1299)))+(((IkReal(-1.00000000000000))*(x1296)*(x1300)))+(((r12)*(x1298)))+(((IkReal(-1.00000000000000))*(x1294)*(x1300)))+(((r02)*(x1297)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x1301)*(x1306)))+(((cj4)*(r02)*(x1293)))+(((IkReal(-1.00000000000000))*(x1295)*(x1297)*(x1305)))+(((r00)*(sj0)*(x1301)))+(((IkReal(-1.00000000000000))*(x1295)*(x1297)*(x1299)))+(((cj4)*(x1296)*(x1298)))+(((IkReal(-1.00000000000000))*(r12)*(x1295)*(x1300)))+(((r11)*(x1308)))+(((cj4)*(x1294)*(x1298)))+(((sj2)*(x1292)))+(((IkReal(-1.00000000000000))*(r01)*(x1309)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x1295)*(x1300)))+(((IkReal(-1.00000000000000))*(x1295)*(x1298)*(x1299)))+(((IkReal(-1.00000000000000))*(x1295)*(x1298)*(x1305)))+(((IkReal(-1.00000000000000))*(r00)*(x1301)*(x1306)))+(((IkReal(-1.00000000000000))*(r12)*(x1293)*(x1295)))+(((IkReal(-1.00000000000000))*(x1294)*(x1295)*(x1297)))+(((IkReal(-1.00000000000000))*(x1295)*(x1296)*(x1297)))+(((IkReal(-1.00000000000000))*(x1307)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1301)))+(((r11)*(x1309)))+(((r01)*(x1308)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1310=((IkReal(1.00000000000000))*(cj4)); +IkReal x1311=((cj6)*(r21)); +IkReal x1312=((r20)*(sj6)); +if( IKabs(((gconst43)*(((((sj5)*(x1311)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1312))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst43)*(((((IkReal(-1.00000000000000))*(cj5)*(x1310)*(x1312)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1310)*(x1311)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1310)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst43)*(((((sj5)*(x1311)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1312)))))), ((gconst43)*(((((IkReal(-1.00000000000000))*(cj5)*(x1310)*(x1312)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x1310)*(x1311)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1310)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x1313=IKsin(j3); +IkReal x1314=IKcos(j3); +IkReal x1315=((sj0)*(sj5)); +IkReal x1316=((r00)*(sj6)); +IkReal x1317=((IkReal(1.00000000000000))*(cj4)); +IkReal x1318=((cj6)*(r01)); +IkReal x1319=((cj0)*(cj5)); +IkReal x1320=((cj5)*(sj0)); +IkReal x1321=((cj6)*(r11)); +IkReal x1322=((cj0)*(sj5)); +IkReal x1323=((cj6)*(sj4)); +IkReal x1324=((cj4)*(cj5)); +IkReal x1325=((cj6)*(r21)); +IkReal x1326=((r20)*(sj6)); +IkReal x1327=((r10)*(sj6)); +IkReal x1328=((IkReal(1.00000000000000))*(cj0)); +IkReal x1329=((IkReal(1.00000000000000))*(x1313)); +IkReal x1330=((cj0)*(sj4)*(sj6)); +IkReal x1331=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x1325)))+(((sj5)*(x1326)))+(((IkReal(-1.00000000000000))*(cj2)*(x1329)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x1324)*(x1325)))+(((r20)*(x1323)))+(((cj2)*(x1314)))+(((cj4)*(r22)*(sj5)))+(((x1324)*(x1326)))); +evalcond[2]=((((x1315)*(x1318)))+(((r12)*(x1319)))+(((IkReal(-1.00000000000000))*(x1321)*(x1322)))+(((IkReal(-1.00000000000000))*(sj2)*(x1329)))+(((IkReal(-1.00000000000000))*(x1322)*(x1327)))+(((x1315)*(x1316)))+(((IkReal(-1.00000000000000))*(r02)*(x1320)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1316)*(x1322)))+(((IkReal(-1.00000000000000))*(x1315)*(x1321)))+(((r12)*(x1320)))+(((IkReal(-1.00000000000000))*(x1314)))+(((IkReal(-1.00000000000000))*(x1318)*(x1322)))+(((IkReal(-1.00000000000000))*(x1315)*(x1327)))+(((r02)*(x1319)))); +evalcond[4]=((((cj4)*(r02)*(x1315)))+(((IkReal(-1.00000000000000))*(x1317)*(x1319)*(x1321)))+(((cj4)*(x1316)*(x1320)))+(((r11)*(x1330)))+(((IkReal(-1.00000000000000))*(r12)*(x1317)*(x1322)))+(((IkReal(-1.00000000000000))*(x1317)*(x1319)*(x1327)))+(((cj4)*(x1318)*(x1320)))+(((sj2)*(x1314)))+(((IkReal(-1.00000000000000))*(r01)*(x1331)))+(((IkReal(-1.00000000000000))*(r10)*(x1323)*(x1328)))+(((r00)*(sj0)*(x1323)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1323)))+(((IkReal(-1.00000000000000))*(x1317)*(x1320)*(x1327)))+(((IkReal(-1.00000000000000))*(r12)*(x1315)*(x1317)))+(((r11)*(x1331)))+(((IkReal(-1.00000000000000))*(x1317)*(x1320)*(x1321)))+(((r01)*(x1330)))+(((IkReal(-1.00000000000000))*(r02)*(x1317)*(x1322)))+(((IkReal(-1.00000000000000))*(r00)*(x1323)*(x1328)))+(((IkReal(-1.00000000000000))*(x1316)*(x1317)*(x1319)))+(((IkReal(-1.00000000000000))*(x1329)))+(((IkReal(-1.00000000000000))*(x1317)*(x1318)*(x1319)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} +} +} + +} else +{ +IkReal x1332=((cj0)*(cj5)); +IkReal x1333=((IkReal(0.374290000000000))*(sj0)); +IkReal x1334=((cj6)*(r11)); +IkReal x1335=((IkReal(0.0100000000000000))*(sj6)); +IkReal x1336=((cj6)*(r01)); +IkReal x1337=((IkReal(0.0100000000000000))*(sj0)); +IkReal x1338=((cj0)*(sj5)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(sj5)*(x1333)*(x1334)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((cj5)*(x1334)*(x1337)))+(((r00)*(x1332)*(x1335)))+(((IkReal(-1.00000000000000))*(r10)*(sj5)*(sj6)*(x1333)))+(((IkReal(-0.374290000000000))*(x1336)*(x1338)))+(((IkReal(0.0100000000000000))*(x1332)*(x1336)))+(((cj5)*(r12)*(x1333)))+(((r12)*(sj5)*(x1337)))+(((IkReal(-0.374290000000000))*(r00)*(sj6)*(x1338)))+(((IkReal(0.0100000000000000))*(r02)*(x1338)))+(((IkReal(-1.00000000000000))*(py)*(sj0)))+(((IkReal(0.374290000000000))*(r02)*(x1332)))+(((cj5)*(r10)*(sj0)*(x1335)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 ) +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x1339=((cj0)*(r11)); +IkReal x1340=((r01)*(sj0)); +IkReal x1341=((r20)*(sj6)); +IkReal x1342=((IkReal(0.144927536231884))*(cj5)); +IkReal x1343=((IkReal(5.42449275362319))*(cj5)); +IkReal x1344=((IkReal(5.42449275362319))*(sj5)); +IkReal x1345=((IkReal(0.144927536231884))*(sj5)); +IkReal x1346=((cj0)*(r12)); +IkReal x1347=((r02)*(sj0)); +IkReal x1348=((cj6)*(x1344)); +IkReal x1349=((cj0)*(r10)*(sj6)); +IkReal x1350=((r00)*(sj0)*(sj6)); +if( IKabs(((((x1344)*(x1349)))+(((x1342)*(x1350)))+(((x1345)*(x1347)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-1.00000000000000))*(x1344)*(x1350)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((cj6)*(x1340)*(x1342)))+(((IkReal(-1.00000000000000))*(x1342)*(x1349)))+(((IkReal(-1.00000000000000))*(cj6)*(x1339)*(x1342)))+(((IkReal(-1.00000000000000))*(x1345)*(x1346)))+(((x1339)*(x1348)))+(((x1343)*(x1347)))+(((IkReal(-1.00000000000000))*(x1343)*(x1346)))+(((IkReal(-1.00000000000000))*(x1340)*(x1348))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x1341)*(x1344)))+(((IkReal(-1.00000000000000))*(r22)*(x1343)))+(((IkReal(14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x1342)))+(((r21)*(x1348)))+(((IkReal(-1.00000000000000))*(x1341)*(x1342)))+(((IkReal(-1.00000000000000))*(r22)*(x1345))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x1344)*(x1349)))+(((x1342)*(x1350)))+(((x1345)*(x1347)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-1.00000000000000))*(x1344)*(x1350)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((cj6)*(x1340)*(x1342)))+(((IkReal(-1.00000000000000))*(x1342)*(x1349)))+(((IkReal(-1.00000000000000))*(cj6)*(x1339)*(x1342)))+(((IkReal(-1.00000000000000))*(x1345)*(x1346)))+(((x1339)*(x1348)))+(((x1343)*(x1347)))+(((IkReal(-1.00000000000000))*(x1343)*(x1346)))+(((IkReal(-1.00000000000000))*(x1340)*(x1348)))))+IKsqr(((((x1341)*(x1344)))+(((IkReal(-1.00000000000000))*(r22)*(x1343)))+(((IkReal(14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x1342)))+(((r21)*(x1348)))+(((IkReal(-1.00000000000000))*(x1341)*(x1342)))+(((IkReal(-1.00000000000000))*(r22)*(x1345)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((x1344)*(x1349)))+(((x1342)*(x1350)))+(((x1345)*(x1347)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-1.00000000000000))*(x1344)*(x1350)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((cj6)*(x1340)*(x1342)))+(((IkReal(-1.00000000000000))*(x1342)*(x1349)))+(((IkReal(-1.00000000000000))*(cj6)*(x1339)*(x1342)))+(((IkReal(-1.00000000000000))*(x1345)*(x1346)))+(((x1339)*(x1348)))+(((x1343)*(x1347)))+(((IkReal(-1.00000000000000))*(x1343)*(x1346)))+(((IkReal(-1.00000000000000))*(x1340)*(x1348)))), ((((x1341)*(x1344)))+(((IkReal(-1.00000000000000))*(r22)*(x1343)))+(((IkReal(14.4927536231884))*(pz)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x1342)))+(((r21)*(x1348)))+(((IkReal(-1.00000000000000))*(x1341)*(x1342)))+(((IkReal(-1.00000000000000))*(r22)*(x1345))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[2]; +IkReal x1351=((cj6)*(r11)); +IkReal x1352=((IkReal(0.374290000000000))*(sj0)); +IkReal x1353=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1354=((cj6)*(r21)); +IkReal x1355=((r10)*(sj6)); +IkReal x1356=((IkReal(0.374290000000000))*(sj5)); +IkReal x1357=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1358=((cj6)*(r01)); +IkReal x1359=((r20)*(sj6)); +IkReal x1360=((IkReal(0.374290000000000))*(cj5)); +IkReal x1361=((cj0)*(r12)); +IkReal x1362=((r00)*(sj6)); +IkReal x1363=((cj0)*(x1356)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r22)*(x1360)))+(((IkReal(-0.0690000000000000))*(IKcos(j2))))+(((IkReal(-1.00000000000000))*(x1353)*(x1359)))+(((x1356)*(x1359)))+(((IkReal(-1.00000000000000))*(r22)*(x1357)))+(((IkReal(-1.00000000000000))*(x1353)*(x1354)))+(pz)+(((x1354)*(x1356)))); +evalcond[1]=((((cj0)*(x1351)*(x1353)))+(((IkReal(-1.00000000000000))*(x1355)*(x1363)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x1352)))+(((IkReal(-1.00000000000000))*(cj0)*(py)))+(((cj0)*(x1353)*(x1355)))+(((IkReal(-1.00000000000000))*(sj0)*(x1353)*(x1358)))+(((IkReal(-1.00000000000000))*(sj0)*(x1353)*(x1362)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1357)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((sj5)*(x1352)*(x1358)))+(((x1357)*(x1361)))+(((x1360)*(x1361)))+(((sj5)*(x1352)*(x1362)))+(((IkReal(-1.00000000000000))*(x1351)*(x1363)))+(((px)*(sj0)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst53; +IkReal x1364=(cj6)*(cj6); +IkReal x1365=(sj6)*(sj6); +IkReal x1366=((sj5)*(sj6)); +IkReal x1367=((IkReal(1.00000000000000))*(cj0)); +IkReal x1368=((cj6)*(sj5)); +IkReal x1369=((r20)*(sj0)); +IkReal x1370=((cj0)*(r20)); +IkReal x1371=((r00)*(r21)); +IkReal x1372=((r22)*(sj0)); +IkReal x1373=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x1374=((cj5)*(x1365)); +IkReal x1375=((cj5)*(x1364)); +gconst53=IKsign(((((r11)*(x1369)*(x1375)))+(((IkReal(-1.00000000000000))*(x1367)*(x1371)*(x1375)))+(((cj0)*(r01)*(r22)*(x1366)))+(((IkReal(-1.00000000000000))*(r10)*(x1373)*(x1374)))+(((r01)*(x1370)*(x1374)))+(((r01)*(x1370)*(x1375)))+(((r11)*(x1366)*(x1372)))+(((r11)*(x1369)*(x1374)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x1367)*(x1368)))+(((IkReal(-1.00000000000000))*(r10)*(x1373)*(x1375)))+(((r12)*(x1368)*(x1369)))+(((r02)*(x1368)*(x1370)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x1366)*(x1367)))+(((IkReal(-1.00000000000000))*(r12)*(x1366)*(x1373)))+(((IkReal(-1.00000000000000))*(r10)*(x1368)*(x1372)))+(((IkReal(-1.00000000000000))*(x1367)*(x1371)*(x1374))))); +IkReal x1376=(cj6)*(cj6); +IkReal x1377=(sj6)*(sj6); +IkReal x1378=((sj5)*(sj6)); +IkReal x1379=((IkReal(1.00000000000000))*(cj0)); +IkReal x1380=((cj6)*(sj5)); +IkReal x1381=((r20)*(sj0)); +IkReal x1382=((cj0)*(r20)); +IkReal x1383=((r00)*(r21)); +IkReal x1384=((r22)*(sj0)); +IkReal x1385=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x1386=((cj5)*(x1377)); +IkReal x1387=((cj5)*(x1376)); +dummyeval[0]=((((r01)*(x1382)*(x1386)))+(((IkReal(-1.00000000000000))*(r10)*(x1385)*(x1387)))+(((r02)*(x1380)*(x1382)))+(((IkReal(-1.00000000000000))*(x1379)*(x1383)*(x1387)))+(((cj0)*(r01)*(r22)*(x1378)))+(((r11)*(x1381)*(x1386)))+(((r11)*(x1381)*(x1387)))+(((IkReal(-1.00000000000000))*(r10)*(x1385)*(x1386)))+(((r11)*(x1378)*(x1384)))+(((IkReal(-1.00000000000000))*(r12)*(x1378)*(x1385)))+(((IkReal(-1.00000000000000))*(r10)*(x1380)*(x1384)))+(((r12)*(x1380)*(x1381)))+(((IkReal(-1.00000000000000))*(x1379)*(x1383)*(x1386)))+(((r01)*(x1382)*(x1387)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x1379)*(x1380)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x1378)*(x1379)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst52; +IkReal x1388=(cj6)*(cj6); +IkReal x1389=(sj6)*(sj6); +IkReal x1390=((IkReal(1.00000000000000))*(r01)); +IkReal x1391=((sj0)*(sj5)); +IkReal x1392=((cj6)*(r22)); +IkReal x1393=((r21)*(sj6)); +IkReal x1394=((r00)*(r21)); +IkReal x1395=((cj0)*(sj5)); +IkReal x1396=((cj6)*(r20)); +IkReal x1397=((r22)*(sj6)); +IkReal x1398=((cj0)*(cj5)); +IkReal x1399=((IkReal(1.00000000000000))*(r10)); +IkReal x1400=((cj5)*(sj0)); +IkReal x1401=((r20)*(x1389)); +IkReal x1402=((x1388)*(x1400)); +gconst52=IKsign(((((r11)*(x1395)*(x1397)))+(((r11)*(x1398)*(x1401)))+(((IkReal(-1.00000000000000))*(r12)*(x1393)*(x1395)))+(((IkReal(-1.00000000000000))*(x1390)*(x1391)*(x1397)))+(((r00)*(x1391)*(x1392)))+(((r12)*(x1395)*(x1396)))+(((r02)*(x1391)*(x1393)))+(((x1394)*(x1402)))+(((IkReal(-1.00000000000000))*(x1390)*(x1400)*(x1401)))+(((IkReal(-1.00000000000000))*(r02)*(x1391)*(x1396)))+(((IkReal(-1.00000000000000))*(r21)*(x1388)*(x1398)*(x1399)))+(((IkReal(-1.00000000000000))*(x1392)*(x1395)*(x1399)))+(((IkReal(-1.00000000000000))*(r20)*(x1390)*(x1402)))+(((x1389)*(x1394)*(x1400)))+(((r11)*(r20)*(x1388)*(x1398)))+(((IkReal(-1.00000000000000))*(r21)*(x1389)*(x1398)*(x1399))))); +IkReal x1403=(cj6)*(cj6); +IkReal x1404=(sj6)*(sj6); +IkReal x1405=((IkReal(1.00000000000000))*(r01)); +IkReal x1406=((sj0)*(sj5)); +IkReal x1407=((cj6)*(r22)); +IkReal x1408=((r21)*(sj6)); +IkReal x1409=((r00)*(r21)); +IkReal x1410=((cj0)*(sj5)); +IkReal x1411=((cj6)*(r20)); +IkReal x1412=((r22)*(sj6)); +IkReal x1413=((cj0)*(cj5)); +IkReal x1414=((IkReal(1.00000000000000))*(r10)); +IkReal x1415=((cj5)*(sj0)); +IkReal x1416=((r20)*(x1404)); +IkReal x1417=((x1403)*(x1415)); +dummyeval[0]=((((r11)*(r20)*(x1403)*(x1413)))+(((IkReal(-1.00000000000000))*(r12)*(x1408)*(x1410)))+(((IkReal(-1.00000000000000))*(x1407)*(x1410)*(x1414)))+(((r12)*(x1410)*(x1411)))+(((IkReal(-1.00000000000000))*(r21)*(x1403)*(x1413)*(x1414)))+(((x1404)*(x1409)*(x1415)))+(((r11)*(x1413)*(x1416)))+(((r02)*(x1406)*(x1408)))+(((IkReal(-1.00000000000000))*(r20)*(x1405)*(x1417)))+(((r00)*(x1406)*(x1407)))+(((IkReal(-1.00000000000000))*(r21)*(x1404)*(x1413)*(x1414)))+(((IkReal(-1.00000000000000))*(x1405)*(x1406)*(x1412)))+(((IkReal(-1.00000000000000))*(x1405)*(x1415)*(x1416)))+(((x1409)*(x1417)))+(((r11)*(x1410)*(x1412)))+(((IkReal(-1.00000000000000))*(r02)*(x1406)*(x1411)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x1418=((cj5)*(r22)); +IkReal x1419=((IkReal(0.374290000000000))*(sj5)); +IkReal x1420=((cj0)*(sj6)); +IkReal x1421=((cj6)*(r21)); +IkReal x1422=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1423=((cj0)*(r02)); +IkReal x1424=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1425=((IkReal(1.00000000000000))*(py)); +IkReal x1426=((r01)*(sj0)); +IkReal x1427=((r20)*(sj6)); +IkReal x1428=((r11)*(sj0)); +IkReal x1429=((IkReal(0.374290000000000))*(cj5)); +IkReal x1430=((cj0)*(r12)); +IkReal x1431=((sj0)*(x1429)); +IkReal x1432=((cj6)*(x1424)); +IkReal x1433=((r10)*(sj0)*(sj6)); +IkReal x1434=((r00)*(sj0)*(sj6)); +IkReal x1435=((cj0)*(cj6)*(x1419)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x1421)))+(((sj5)*(x1427)))+(((IkReal(-1.00000000000000))*(x1418)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1424)*(x1427)))+(((IkReal(-1.00000000000000))*(r22)*(x1422)))+(((IkReal(-1.00000000000000))*(x1421)*(x1424)))+(((x1419)*(x1421)))+(pz)+(((IkReal(-0.374290000000000))*(x1418)))+(((x1419)*(x1427)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((cj0)*(r11)*(x1432)))+(((IkReal(-1.00000000000000))*(r11)*(x1435)))+(((IkReal(-1.00000000000000))*(cj0)*(x1425)))+(((r10)*(x1420)*(x1424)))+(((cj6)*(x1419)*(x1426)))+(((IkReal(-1.00000000000000))*(x1426)*(x1432)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1422)))+(((x1422)*(x1430)))+(((IkReal(-1.00000000000000))*(x1424)*(x1434)))+(((x1429)*(x1430)))+(((IkReal(-1.00000000000000))*(r02)*(x1431)))+(((px)*(sj0)))+(((x1419)*(x1434)))+(((IkReal(-1.00000000000000))*(r10)*(x1419)*(x1420)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x1424)*(x1433)))+(((x1422)*(x1423)))+(((x1428)*(x1432)))+(((r12)*(sj0)*(x1422)))+(((x1423)*(x1429)))+(((IkReal(-1.00000000000000))*(r00)*(x1419)*(x1420)))+(((IkReal(-1.00000000000000))*(sj0)*(x1425)))+(((r00)*(x1420)*(x1424)))+(((cj0)*(r01)*(x1432)))+(((r12)*(x1431)))+(((IkReal(-1.00000000000000))*(cj6)*(x1419)*(x1428)))+(((IkReal(-1.00000000000000))*(r01)*(x1435)))+(((IkReal(-1.00000000000000))*(x1419)*(x1433)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1436=((sj0)*(sj5)); +IkReal x1437=((r00)*(sj6)); +IkReal x1438=((IkReal(1.00000000000000))*(cj5)); +IkReal x1439=((cj6)*(r11)); +IkReal x1440=((cj6)*(r01)); +IkReal x1441=((r10)*(sj6)); +IkReal x1442=((cj0)*(sj5)); +if( IKabs(((((x1436)*(x1440)))+(((x1436)*(x1437)))+(((IkReal(-1.00000000000000))*(x1441)*(x1442)))+(((IkReal(-1.00000000000000))*(x1439)*(x1442)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1438))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x1440)*(x1442)))+(((x1436)*(x1439)))+(((x1437)*(x1442)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1438)))+(((x1436)*(x1441)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1438))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x1436)*(x1440)))+(((x1436)*(x1437)))+(((IkReal(-1.00000000000000))*(x1441)*(x1442)))+(((IkReal(-1.00000000000000))*(x1439)*(x1442)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1438)))))+IKsqr(((((x1440)*(x1442)))+(((x1436)*(x1439)))+(((x1437)*(x1442)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1438)))+(((x1436)*(x1441)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1438)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x1436)*(x1440)))+(((x1436)*(x1437)))+(((IkReal(-1.00000000000000))*(x1441)*(x1442)))+(((IkReal(-1.00000000000000))*(x1439)*(x1442)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1438)))), ((((x1440)*(x1442)))+(((x1436)*(x1439)))+(((x1437)*(x1442)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1438)))+(((x1436)*(x1441)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1438))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x1443=((cj0)*(cj5)); +IkReal x1444=((IkReal(1.00000000000000))*(cj0)); +IkReal x1445=((cj6)*(r11)); +IkReal x1446=((r10)*(sj6)); +IkReal x1447=((cj5)*(sj0)); +IkReal x1448=((r00)*(sj5)*(sj6)); +IkReal x1449=((cj6)*(r01)*(sj5)); +IkReal x1450=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj5)*(x1444)*(x1445)))+(((IkReal(-1.00000000000000))*(r02)*(x1447)))+(((r12)*(x1443)))+(((sj0)*(x1448)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((sj0)*(x1449)))+(((IkReal(-1.00000000000000))*(sj5)*(x1444)*(x1446)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1446)*(x1450)))+(((r12)*(x1447)))+(((IkReal(-1.00000000000000))*(x1445)*(x1450)))+(((IkReal(-1.00000000000000))*(x1444)*(x1448)))+(IKcos(j3))+(((r02)*(x1443)))+(((IkReal(-1.00000000000000))*(x1444)*(x1449)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst59; +IkReal x1451=(r21)*(r21); +IkReal x1452=(cj5)*(cj5); +IkReal x1453=(sj6)*(sj6); +IkReal x1454=(cj6)*(cj6); +IkReal x1455=(r20)*(r20); +IkReal x1456=((cj6)*(r21)); +IkReal x1457=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1458=((cj5)*(r22)*(sj5)); +IkReal x1459=((IkReal(1.00000000000000))*(x1453)); +IkReal x1460=((IkReal(1.00000000000000))*(x1454)); +gconst59=IKsign(((((x1456)*(x1457)))+(((IkReal(-1.00000000000000))*(x1455)*(x1460)))+(((IkReal(-1.00000000000000))*(x1457)*(x1458)))+(((IkReal(-1.00000000000000))*(x1451)*(x1452)*(x1460)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x1452)*(x1456)*(x1457)))+(((IkReal(-2.00000000000000))*(x1456)*(x1458)))+(((IkReal(-1.00000000000000))*(x1451)*(x1459)))+(((IkReal(-1.00000000000000))*(x1452)*(x1455)*(x1459))))); +IkReal x1461=(r21)*(r21); +IkReal x1462=(cj5)*(cj5); +IkReal x1463=(sj6)*(sj6); +IkReal x1464=(cj6)*(cj6); +IkReal x1465=(r20)*(r20); +IkReal x1466=((cj6)*(r21)); +IkReal x1467=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1468=((cj5)*(r22)*(sj5)); +IkReal x1469=((IkReal(1.00000000000000))*(x1463)); +IkReal x1470=((IkReal(1.00000000000000))*(x1464)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x1462)*(x1466)*(x1467)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x1461)*(x1462)*(x1470)))+(((IkReal(-2.00000000000000))*(x1466)*(x1468)))+(((IkReal(-1.00000000000000))*(x1462)*(x1465)*(x1469)))+(((IkReal(-1.00000000000000))*(x1467)*(x1468)))+(((IkReal(-1.00000000000000))*(x1465)*(x1470)))+(((IkReal(-1.00000000000000))*(x1461)*(x1469)))+(((x1466)*(x1467)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst60; +IkReal x1471=(cj6)*(cj6); +IkReal x1472=(sj6)*(sj6); +IkReal x1473=((IkReal(1.00000000000000))*(r01)); +IkReal x1474=((sj0)*(sj5)); +IkReal x1475=((cj6)*(r22)); +IkReal x1476=((r21)*(sj6)); +IkReal x1477=((r00)*(r21)); +IkReal x1478=((cj0)*(sj5)); +IkReal x1479=((cj6)*(r20)); +IkReal x1480=((r22)*(sj6)); +IkReal x1481=((cj0)*(cj5)); +IkReal x1482=((IkReal(1.00000000000000))*(r10)); +IkReal x1483=((cj5)*(sj0)); +IkReal x1484=((r20)*(x1472)); +IkReal x1485=((x1471)*(x1483)); +gconst60=IKsign(((((IkReal(-1.00000000000000))*(r12)*(x1476)*(x1478)))+(((IkReal(-1.00000000000000))*(r02)*(x1474)*(x1479)))+(((IkReal(-1.00000000000000))*(x1473)*(x1483)*(x1484)))+(((r02)*(x1474)*(x1476)))+(((IkReal(-1.00000000000000))*(r20)*(x1473)*(x1485)))+(((r11)*(x1478)*(x1480)))+(((r11)*(x1481)*(x1484)))+(((IkReal(-1.00000000000000))*(r21)*(x1472)*(x1481)*(x1482)))+(((r00)*(x1474)*(x1475)))+(((IkReal(-1.00000000000000))*(r21)*(x1471)*(x1481)*(x1482)))+(((x1472)*(x1477)*(x1483)))+(((r12)*(x1478)*(x1479)))+(((r11)*(r20)*(x1471)*(x1481)))+(((IkReal(-1.00000000000000))*(x1475)*(x1478)*(x1482)))+(((IkReal(-1.00000000000000))*(x1473)*(x1474)*(x1480)))+(((x1477)*(x1485))))); +IkReal x1486=(cj6)*(cj6); +IkReal x1487=(sj6)*(sj6); +IkReal x1488=((IkReal(1.00000000000000))*(r01)); +IkReal x1489=((sj0)*(sj5)); +IkReal x1490=((cj6)*(r22)); +IkReal x1491=((r21)*(sj6)); +IkReal x1492=((r00)*(r21)); +IkReal x1493=((cj0)*(sj5)); +IkReal x1494=((cj6)*(r20)); +IkReal x1495=((r22)*(sj6)); +IkReal x1496=((cj0)*(cj5)); +IkReal x1497=((IkReal(1.00000000000000))*(r10)); +IkReal x1498=((cj5)*(sj0)); +IkReal x1499=((r20)*(x1487)); +IkReal x1500=((x1486)*(x1498)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x1488)*(x1489)*(x1495)))+(((IkReal(-1.00000000000000))*(r12)*(x1491)*(x1493)))+(((IkReal(-1.00000000000000))*(x1490)*(x1493)*(x1497)))+(((r12)*(x1493)*(x1494)))+(((r11)*(x1493)*(x1495)))+(((r11)*(r20)*(x1486)*(x1496)))+(((IkReal(-1.00000000000000))*(r20)*(x1488)*(x1500)))+(((IkReal(-1.00000000000000))*(x1488)*(x1498)*(x1499)))+(((x1492)*(x1500)))+(((x1487)*(x1492)*(x1498)))+(((IkReal(-1.00000000000000))*(r21)*(x1486)*(x1496)*(x1497)))+(((r11)*(x1496)*(x1499)))+(((IkReal(-1.00000000000000))*(r02)*(x1489)*(x1494)))+(((r02)*(x1489)*(x1491)))+(((IkReal(-1.00000000000000))*(r21)*(x1487)*(x1496)*(x1497)))+(((r00)*(x1489)*(x1490)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1501=((sj0)*(sj6)); +IkReal x1502=((cj0)*(r10)); +IkReal x1503=((IkReal(1.00000000000000))*(cj5)); +IkReal x1504=((cj6)*(sj0)); +IkReal x1505=((cj0)*(r11)); +if( IKabs(((gconst60)*(((((IkReal(-1.00000000000000))*(sj6)*(x1505)))+(((r01)*(x1501)))+(((cj6)*(x1502)))+(((IkReal(-1.00000000000000))*(r00)*(x1504))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst60)*(((((cj5)*(sj6)*(x1502)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x1505)))+(((IkReal(-1.00000000000000))*(r00)*(x1501)*(x1503)))+(((IkReal(-1.00000000000000))*(r01)*(x1503)*(x1504))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst60)*(((((IkReal(-1.00000000000000))*(sj6)*(x1505)))+(((r01)*(x1501)))+(((cj6)*(x1502)))+(((IkReal(-1.00000000000000))*(r00)*(x1504)))))), ((gconst60)*(((((cj5)*(sj6)*(x1502)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x1505)))+(((IkReal(-1.00000000000000))*(r00)*(x1501)*(x1503)))+(((IkReal(-1.00000000000000))*(r01)*(x1503)*(x1504))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1506=IKsin(j4); +IkReal x1507=IKcos(j4); +IkReal x1508=((r22)*(sj5)); +IkReal x1509=((IkReal(1.00000000000000))*(cj6)); +IkReal x1510=((IkReal(1.00000000000000))*(cj0)); +IkReal x1511=((cj5)*(r11)); +IkReal x1512=((cj5)*(cj6)); +IkReal x1513=((r11)*(sj6)); +IkReal x1514=((IkReal(1.00000000000000))*(sj6)); +IkReal x1515=((cj6)*(r00)); +IkReal x1516=((r12)*(sj5)); +IkReal x1517=((r02)*(sj5)); +IkReal x1518=((cj6)*(r10)); +IkReal x1519=((cj5)*(sj6)); +IkReal x1520=((cj5)*(r01)); +IkReal x1521=((sj0)*(x1506)); +IkReal x1522=((r00)*(x1519)); +IkReal x1523=((cj0)*(x1506)); +IkReal x1524=((sj0)*(x1507)); +IkReal x1525=((r20)*(x1507)); +IkReal x1526=((cj0)*(x1507)); +IkReal x1527=((r21)*(x1506)); +IkReal x1528=((r21)*(x1507)); +IkReal x1529=((r20)*(x1506)); +IkReal x1530=((x1507)*(x1516)); +IkReal x1531=((r01)*(sj6)*(x1507)); +IkReal x1532=((cj5)*(r10)*(x1514)); +evalcond[0]=((IkReal(1.00000000000000))+(((x1506)*(x1508)))+(((IkReal(-1.00000000000000))*(x1509)*(x1525)))+(((sj6)*(x1528)))+(((x1519)*(x1529)))+(((x1512)*(x1527)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1514)*(x1527)))+(((x1507)*(x1508)))+(((x1512)*(x1528)))+(((cj6)*(x1529)))+(((x1519)*(x1525)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1506)*(x1510)*(x1516)))+(((IkReal(-1.00000000000000))*(r00)*(x1509)*(x1524)))+(((IkReal(-1.00000000000000))*(x1507)*(x1510)*(x1513)))+(((x1518)*(x1526)))+(((x1517)*(x1521)))+(((r01)*(x1512)*(x1521)))+(((r01)*(sj6)*(x1524)))+(((x1521)*(x1522)))+(((IkReal(-1.00000000000000))*(x1509)*(x1511)*(x1523)))+(((IkReal(-1.00000000000000))*(r10)*(x1506)*(x1510)*(x1519)))); +evalcond[3]=((((x1517)*(x1524)))+(((IkReal(-1.00000000000000))*(x1510)*(x1530)))+(((IkReal(-1.00000000000000))*(r10)*(x1507)*(x1510)*(x1519)))+(cj3)+(((r01)*(x1512)*(x1524)))+(((x1515)*(x1521)))+(((x1513)*(x1523)))+(((IkReal(-1.00000000000000))*(x1509)*(x1511)*(x1526)))+(((x1522)*(x1524)))+(((IkReal(-1.00000000000000))*(r10)*(x1509)*(x1523)))+(((IkReal(-1.00000000000000))*(r01)*(x1514)*(x1521)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x1506)*(x1510)*(x1517)))+(((IkReal(-1.00000000000000))*(x1509)*(x1511)*(x1521)))+(((IkReal(-1.00000000000000))*(x1506)*(x1510)*(x1522)))+(((x1518)*(x1524)))+(((IkReal(-1.00000000000000))*(x1510)*(x1531)))+(((IkReal(-1.00000000000000))*(x1521)*(x1532)))+(((IkReal(-1.00000000000000))*(x1516)*(x1521)))+(((IkReal(-1.00000000000000))*(x1509)*(x1520)*(x1523)))+(((IkReal(-1.00000000000000))*(x1513)*(x1524)))+(((x1515)*(x1526)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1509)*(x1511)*(x1524)))+(((r01)*(sj6)*(x1523)))+(((IkReal(-1.00000000000000))*(x1516)*(x1524)))+(sj3)+(((IkReal(-1.00000000000000))*(x1507)*(x1510)*(x1522)))+(((IkReal(-1.00000000000000))*(x1509)*(x1520)*(x1526)))+(((IkReal(-1.00000000000000))*(x1507)*(x1510)*(x1517)))+(((IkReal(-1.00000000000000))*(r00)*(x1509)*(x1523)))+(((IkReal(-1.00000000000000))*(x1524)*(x1532)))+(((x1513)*(x1521)))+(((IkReal(-1.00000000000000))*(r10)*(x1509)*(x1521)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst59)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst59)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst59)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst59)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1533=IKsin(j4); +IkReal x1534=IKcos(j4); +IkReal x1535=((r22)*(sj5)); +IkReal x1536=((IkReal(1.00000000000000))*(cj6)); +IkReal x1537=((IkReal(1.00000000000000))*(cj0)); +IkReal x1538=((cj5)*(r11)); +IkReal x1539=((cj5)*(cj6)); +IkReal x1540=((r11)*(sj6)); +IkReal x1541=((IkReal(1.00000000000000))*(sj6)); +IkReal x1542=((cj6)*(r00)); +IkReal x1543=((r12)*(sj5)); +IkReal x1544=((r02)*(sj5)); +IkReal x1545=((cj6)*(r10)); +IkReal x1546=((cj5)*(sj6)); +IkReal x1547=((cj5)*(r01)); +IkReal x1548=((sj0)*(x1533)); +IkReal x1549=((r00)*(x1546)); +IkReal x1550=((cj0)*(x1533)); +IkReal x1551=((sj0)*(x1534)); +IkReal x1552=((r20)*(x1534)); +IkReal x1553=((cj0)*(x1534)); +IkReal x1554=((r21)*(x1533)); +IkReal x1555=((r21)*(x1534)); +IkReal x1556=((r20)*(x1533)); +IkReal x1557=((x1534)*(x1543)); +IkReal x1558=((r01)*(sj6)*(x1534)); +IkReal x1559=((cj5)*(r10)*(x1541)); +evalcond[0]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x1536)*(x1552)))+(((x1546)*(x1556)))+(((x1533)*(x1535)))+(((x1539)*(x1554)))+(((sj6)*(x1555)))); +evalcond[1]=((((cj6)*(x1556)))+(((x1534)*(x1535)))+(((x1546)*(x1552)))+(((x1539)*(x1555)))+(((IkReal(-1.00000000000000))*(x1541)*(x1554)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1536)*(x1538)*(x1550)))+(((IkReal(-1.00000000000000))*(x1533)*(x1537)*(x1543)))+(((x1544)*(x1548)))+(((IkReal(-1.00000000000000))*(r10)*(x1533)*(x1537)*(x1546)))+(((IkReal(-1.00000000000000))*(x1534)*(x1537)*(x1540)))+(((r01)*(sj6)*(x1551)))+(((x1548)*(x1549)))+(((r01)*(x1539)*(x1548)))+(((x1545)*(x1553)))+(((IkReal(-1.00000000000000))*(r00)*(x1536)*(x1551)))); +evalcond[3]=((((x1540)*(x1550)))+(((x1542)*(x1548)))+(((IkReal(-1.00000000000000))*(r10)*(x1536)*(x1550)))+(((r01)*(x1539)*(x1551)))+(((x1544)*(x1551)))+(((IkReal(-1.00000000000000))*(x1537)*(x1557)))+(((IkReal(-1.00000000000000))*(r01)*(x1541)*(x1548)))+(((IkReal(-1.00000000000000))*(r10)*(x1534)*(x1537)*(x1546)))+(cj3)+(((x1549)*(x1551)))+(((IkReal(-1.00000000000000))*(x1536)*(x1538)*(x1553)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x1540)*(x1551)))+(((x1542)*(x1553)))+(((IkReal(-1.00000000000000))*(x1536)*(x1538)*(x1548)))+(((IkReal(-1.00000000000000))*(x1533)*(x1537)*(x1544)))+(((IkReal(-1.00000000000000))*(x1533)*(x1537)*(x1549)))+(((IkReal(-1.00000000000000))*(x1536)*(x1547)*(x1550)))+(((IkReal(-1.00000000000000))*(x1543)*(x1548)))+(((IkReal(-1.00000000000000))*(x1548)*(x1559)))+(((x1545)*(x1551)))+(((IkReal(-1.00000000000000))*(x1537)*(x1558)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1536)*(x1547)*(x1553)))+(((x1540)*(x1548)))+(((r01)*(sj6)*(x1550)))+(((IkReal(-1.00000000000000))*(r00)*(x1536)*(x1550)))+(sj3)+(((IkReal(-1.00000000000000))*(x1536)*(x1538)*(x1551)))+(((IkReal(-1.00000000000000))*(r10)*(x1536)*(x1548)))+(((IkReal(-1.00000000000000))*(x1551)*(x1559)))+(((IkReal(-1.00000000000000))*(x1534)*(x1537)*(x1544)))+(((IkReal(-1.00000000000000))*(x1534)*(x1537)*(x1549)))+(((IkReal(-1.00000000000000))*(x1543)*(x1551)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x1560=((cj5)*(r22)); +IkReal x1561=((IkReal(0.374290000000000))*(sj5)); +IkReal x1562=((cj0)*(sj6)); +IkReal x1563=((cj6)*(r21)); +IkReal x1564=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1565=((cj0)*(r02)); +IkReal x1566=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1567=((IkReal(1.00000000000000))*(py)); +IkReal x1568=((r01)*(sj0)); +IkReal x1569=((r20)*(sj6)); +IkReal x1570=((r11)*(sj0)); +IkReal x1571=((IkReal(0.374290000000000))*(cj5)); +IkReal x1572=((cj0)*(r12)); +IkReal x1573=((sj0)*(x1571)); +IkReal x1574=((cj6)*(x1566)); +IkReal x1575=((r10)*(sj0)*(sj6)); +IkReal x1576=((r00)*(sj0)*(sj6)); +IkReal x1577=((cj0)*(cj6)*(x1561)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1560)))+(((sj5)*(x1569)))+(((sj5)*(x1563)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1566)*(x1569)))+(((x1561)*(x1563)))+(((IkReal(-1.00000000000000))*(r22)*(x1564)))+(pz)+(((x1561)*(x1569)))+(((IkReal(-1.00000000000000))*(x1563)*(x1566)))+(((IkReal(-0.374290000000000))*(x1560)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x1566)*(x1576)))+(((IkReal(-1.00000000000000))*(r11)*(x1577)))+(((x1571)*(x1572)))+(((r10)*(x1562)*(x1566)))+(((x1561)*(x1576)))+(((IkReal(-1.00000000000000))*(cj0)*(x1567)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1564)))+(((cj6)*(x1561)*(x1568)))+(((IkReal(-1.00000000000000))*(x1568)*(x1574)))+(((px)*(sj0)))+(((cj0)*(r11)*(x1574)))+(((x1564)*(x1572)))+(((IkReal(-1.00000000000000))*(r02)*(x1573)))+(((IkReal(-1.00000000000000))*(r10)*(x1561)*(x1562)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(r00)*(x1561)*(x1562)))+(((cj0)*(r01)*(x1574)))+(((x1565)*(x1571)))+(((IkReal(-1.00000000000000))*(sj0)*(x1567)))+(((x1570)*(x1574)))+(((r12)*(sj0)*(x1564)))+(((x1564)*(x1565)))+(((r12)*(x1573)))+(((IkReal(-1.00000000000000))*(x1561)*(x1575)))+(((IkReal(-1.00000000000000))*(cj6)*(x1561)*(x1570)))+(((r00)*(x1562)*(x1566)))+(((x1566)*(x1575)))+(((IkReal(-1.00000000000000))*(r01)*(x1577)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1578=((IkReal(1.00000000000000))*(cj5)); +IkReal x1579=((r10)*(sj5)*(sj6)); +IkReal x1580=((cj6)*(sj0)*(sj5)); +IkReal x1581=((r00)*(sj5)*(sj6)); +IkReal x1582=((cj0)*(cj6)*(sj5)); +if( IKabs(((((cj0)*(x1579)))+(((IkReal(-1.00000000000000))*(sj0)*(x1581)))+(((IkReal(-1.00000000000000))*(r01)*(x1580)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x1582)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x1578))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1578)))+(((sj0)*(x1579)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1578)))+(((r11)*(x1580)))+(((r01)*(x1582)))+(((cj0)*(x1581))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(x1579)))+(((IkReal(-1.00000000000000))*(sj0)*(x1581)))+(((IkReal(-1.00000000000000))*(r01)*(x1580)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x1582)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x1578)))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1578)))+(((sj0)*(x1579)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1578)))+(((r11)*(x1580)))+(((r01)*(x1582)))+(((cj0)*(x1581)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(x1579)))+(((IkReal(-1.00000000000000))*(sj0)*(x1581)))+(((IkReal(-1.00000000000000))*(r01)*(x1580)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x1582)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x1578)))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1578)))+(((sj0)*(x1579)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1578)))+(((r11)*(x1580)))+(((r01)*(x1582)))+(((cj0)*(x1581))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x1583=((cj0)*(cj5)); +IkReal x1584=((IkReal(1.00000000000000))*(cj0)); +IkReal x1585=((cj6)*(r11)); +IkReal x1586=((r10)*(sj6)); +IkReal x1587=((cj5)*(sj0)); +IkReal x1588=((r00)*(sj5)*(sj6)); +IkReal x1589=((cj6)*(r01)*(sj5)); +IkReal x1590=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj5)*(x1584)*(x1585)))+(((IkReal(-1.00000000000000))*(r02)*(x1587)))+(((r12)*(x1583)))+(((sj0)*(x1588)))+(IKsin(j3))+(((sj0)*(x1589)))+(((IkReal(-1.00000000000000))*(sj5)*(x1584)*(x1586)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1584)*(x1589)))+(((r02)*(x1583)))+(((IkReal(-1.00000000000000))*(x1585)*(x1590)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x1586)*(x1590)))+(((IkReal(-1.00000000000000))*(x1584)*(x1588)))+(((r12)*(x1587)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst63; +IkReal x1591=(cj5)*(cj5); +IkReal x1592=(r20)*(r20); +IkReal x1593=(sj6)*(sj6); +IkReal x1594=(cj6)*(cj6); +IkReal x1595=(r21)*(r21); +IkReal x1596=((cj6)*(r21)); +IkReal x1597=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1598=((cj5)*(r22)*(sj5)); +gconst63=IKsign(((((x1592)*(x1594)))+(((x1593)*(x1595)))+(((IkReal(-1.00000000000000))*(x1596)*(x1597)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x1591)*(x1594)*(x1595)))+(((x1591)*(x1592)*(x1593)))+(((IkReal(2.00000000000000))*(x1596)*(x1598)))+(((x1597)*(x1598)))+(((x1591)*(x1596)*(x1597))))); +IkReal x1599=(cj5)*(cj5); +IkReal x1600=(r20)*(r20); +IkReal x1601=(sj6)*(sj6); +IkReal x1602=(cj6)*(cj6); +IkReal x1603=(r21)*(r21); +IkReal x1604=((cj6)*(r21)); +IkReal x1605=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1606=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x1601)*(x1603)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x1600)*(x1602)))+(((IkReal(2.00000000000000))*(x1604)*(x1606)))+(((x1605)*(x1606)))+(((x1599)*(x1604)*(x1605)))+(((x1599)*(x1600)*(x1601)))+(((x1599)*(x1602)*(x1603)))+(((IkReal(-1.00000000000000))*(x1604)*(x1605)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst64; +IkReal x1607=(cj6)*(cj6); +IkReal x1608=(sj6)*(sj6); +IkReal x1609=((IkReal(1.00000000000000))*(r21)); +IkReal x1610=((cj6)*(r20)); +IkReal x1611=((r22)*(sj5)); +IkReal x1612=((r01)*(sj0)); +IkReal x1613=((r00)*(sj0)); +IkReal x1614=((cj0)*(r10)); +IkReal x1615=((r02)*(sj0)*(sj5)); +IkReal x1616=((cj5)*(x1607)); +IkReal x1617=((cj0)*(r12)*(sj5)); +IkReal x1618=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x1619=((cj5)*(x1608)); +IkReal x1620=((r20)*(x1619)); +gconst64=IKsign(((((IkReal(-1.00000000000000))*(x1609)*(x1613)*(x1619)))+(((cj6)*(x1611)*(x1614)))+(((r21)*(x1614)*(x1619)))+(((IkReal(-1.00000000000000))*(x1609)*(x1613)*(x1616)))+(((IkReal(-1.00000000000000))*(x1610)*(x1617)))+(((IkReal(-1.00000000000000))*(r20)*(x1616)*(x1618)))+(((IkReal(-1.00000000000000))*(x1618)*(x1620)))+(((IkReal(-1.00000000000000))*(cj6)*(x1611)*(x1613)))+(((sj6)*(x1611)*(x1612)))+(((r21)*(x1614)*(x1616)))+(((r21)*(sj6)*(x1617)))+(((IkReal(-1.00000000000000))*(sj6)*(x1611)*(x1618)))+(((IkReal(-1.00000000000000))*(sj6)*(x1609)*(x1615)))+(((r20)*(x1612)*(x1616)))+(((x1610)*(x1615)))+(((x1612)*(x1620))))); +IkReal x1621=(cj6)*(cj6); +IkReal x1622=(sj6)*(sj6); +IkReal x1623=((IkReal(1.00000000000000))*(r21)); +IkReal x1624=((cj6)*(r20)); +IkReal x1625=((r22)*(sj5)); +IkReal x1626=((r01)*(sj0)); +IkReal x1627=((r00)*(sj0)); +IkReal x1628=((cj0)*(r10)); +IkReal x1629=((r02)*(sj0)*(sj5)); +IkReal x1630=((cj5)*(x1621)); +IkReal x1631=((cj0)*(r12)*(sj5)); +IkReal x1632=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x1633=((cj5)*(x1622)); +IkReal x1634=((r20)*(x1633)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x1623)*(x1627)*(x1630)))+(((IkReal(-1.00000000000000))*(r20)*(x1630)*(x1632)))+(((sj6)*(x1625)*(x1626)))+(((IkReal(-1.00000000000000))*(x1624)*(x1631)))+(((IkReal(-1.00000000000000))*(sj6)*(x1625)*(x1632)))+(((r21)*(x1628)*(x1633)))+(((x1626)*(x1634)))+(((IkReal(-1.00000000000000))*(x1632)*(x1634)))+(((cj6)*(x1625)*(x1628)))+(((x1624)*(x1629)))+(((r21)*(sj6)*(x1631)))+(((r20)*(x1626)*(x1630)))+(((r21)*(x1628)*(x1630)))+(((IkReal(-1.00000000000000))*(cj6)*(x1625)*(x1627)))+(((IkReal(-1.00000000000000))*(x1623)*(x1627)*(x1633)))+(((IkReal(-1.00000000000000))*(sj6)*(x1623)*(x1629)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1635=((sj0)*(sj6)); +IkReal x1636=((cj0)*(r10)); +IkReal x1637=((IkReal(1.00000000000000))*(cj5)); +IkReal x1638=((cj6)*(sj0)); +IkReal x1639=((cj0)*(r11)); +if( IKabs(((gconst64)*(((((IkReal(-1.00000000000000))*(sj6)*(x1639)))+(((cj6)*(x1636)))+(((IkReal(-1.00000000000000))*(r00)*(x1638)))+(((r01)*(x1635))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst64)*(((((cj5)*(cj6)*(x1639)))+(((cj5)*(sj6)*(x1636)))+(((IkReal(-1.00000000000000))*(r01)*(x1637)*(x1638)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x1635)*(x1637)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst64)*(((((IkReal(-1.00000000000000))*(sj6)*(x1639)))+(((cj6)*(x1636)))+(((IkReal(-1.00000000000000))*(r00)*(x1638)))+(((r01)*(x1635)))))), ((gconst64)*(((((cj5)*(cj6)*(x1639)))+(((cj5)*(sj6)*(x1636)))+(((IkReal(-1.00000000000000))*(r01)*(x1637)*(x1638)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x1635)*(x1637)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1640=IKsin(j4); +IkReal x1641=IKcos(j4); +IkReal x1642=((r22)*(sj5)); +IkReal x1643=((IkReal(1.00000000000000))*(cj6)); +IkReal x1644=((IkReal(1.00000000000000))*(cj0)); +IkReal x1645=((cj5)*(r11)); +IkReal x1646=((cj5)*(cj6)); +IkReal x1647=((r11)*(sj6)); +IkReal x1648=((IkReal(1.00000000000000))*(sj6)); +IkReal x1649=((cj6)*(r00)); +IkReal x1650=((r12)*(sj5)); +IkReal x1651=((r02)*(sj5)); +IkReal x1652=((cj6)*(r10)); +IkReal x1653=((cj5)*(sj6)); +IkReal x1654=((cj5)*(r01)); +IkReal x1655=((sj0)*(x1640)); +IkReal x1656=((r00)*(x1653)); +IkReal x1657=((cj0)*(x1640)); +IkReal x1658=((sj0)*(x1641)); +IkReal x1659=((r20)*(x1641)); +IkReal x1660=((cj0)*(x1641)); +IkReal x1661=((r21)*(x1640)); +IkReal x1662=((r21)*(x1641)); +IkReal x1663=((r20)*(x1640)); +IkReal x1664=((x1641)*(x1650)); +IkReal x1665=((r01)*(sj6)*(x1641)); +IkReal x1666=((cj5)*(r10)*(x1648)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x1643)*(x1659)))+(((x1646)*(x1661)))+(((x1640)*(x1642)))+(((sj6)*(x1662)))+(((x1653)*(x1663)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1648)*(x1661)))+(((x1641)*(x1642)))+(((x1653)*(x1659)))+(((x1646)*(x1662)))+(((cj6)*(x1663)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x1640)*(x1644)*(x1653)))+(((r01)*(sj6)*(x1658)))+(((x1651)*(x1655)))+(((r01)*(x1646)*(x1655)))+(((x1652)*(x1660)))+(((IkReal(-1.00000000000000))*(x1640)*(x1644)*(x1650)))+(((IkReal(-1.00000000000000))*(x1643)*(x1645)*(x1657)))+(((IkReal(-1.00000000000000))*(x1641)*(x1644)*(x1647)))+(((x1655)*(x1656)))+(((IkReal(-1.00000000000000))*(r00)*(x1643)*(x1658)))); +evalcond[3]=((((x1649)*(x1655)))+(((x1656)*(x1658)))+(((IkReal(-1.00000000000000))*(r01)*(x1648)*(x1655)))+(((IkReal(-1.00000000000000))*(r10)*(x1641)*(x1644)*(x1653)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x1644)*(x1664)))+(((x1651)*(x1658)))+(((x1647)*(x1657)))+(((r01)*(x1646)*(x1658)))+(((IkReal(-1.00000000000000))*(r10)*(x1643)*(x1657)))+(((IkReal(-1.00000000000000))*(x1643)*(x1645)*(x1660)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x1644)*(x1665)))+(((IkReal(-1.00000000000000))*(x1640)*(x1644)*(x1656)))+(((IkReal(-1.00000000000000))*(x1643)*(x1654)*(x1657)))+(((IkReal(-1.00000000000000))*(x1643)*(x1645)*(x1655)))+(((IkReal(-1.00000000000000))*(x1655)*(x1666)))+(((x1649)*(x1660)))+(((x1652)*(x1658)))+(((IkReal(-1.00000000000000))*(x1640)*(x1644)*(x1651)))+(((IkReal(-1.00000000000000))*(x1650)*(x1655)))+(((IkReal(-1.00000000000000))*(x1647)*(x1658)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1643)*(x1645)*(x1658)))+(sj3)+(((x1647)*(x1655)))+(((IkReal(-1.00000000000000))*(x1658)*(x1666)))+(((IkReal(-1.00000000000000))*(x1641)*(x1644)*(x1651)))+(((IkReal(-1.00000000000000))*(r00)*(x1643)*(x1657)))+(((IkReal(-1.00000000000000))*(r10)*(x1643)*(x1655)))+(((IkReal(-1.00000000000000))*(x1641)*(x1644)*(x1656)))+(((IkReal(-1.00000000000000))*(x1650)*(x1658)))+(((IkReal(-1.00000000000000))*(x1643)*(x1654)*(x1660)))+(((r01)*(sj6)*(x1657)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst63)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst63)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst63)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst63)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1667=IKsin(j4); +IkReal x1668=IKcos(j4); +IkReal x1669=((r22)*(sj5)); +IkReal x1670=((IkReal(1.00000000000000))*(cj6)); +IkReal x1671=((IkReal(1.00000000000000))*(cj0)); +IkReal x1672=((cj5)*(r11)); +IkReal x1673=((cj5)*(cj6)); +IkReal x1674=((r11)*(sj6)); +IkReal x1675=((IkReal(1.00000000000000))*(sj6)); +IkReal x1676=((cj6)*(r00)); +IkReal x1677=((r12)*(sj5)); +IkReal x1678=((r02)*(sj5)); +IkReal x1679=((cj6)*(r10)); +IkReal x1680=((cj5)*(sj6)); +IkReal x1681=((cj5)*(r01)); +IkReal x1682=((sj0)*(x1667)); +IkReal x1683=((r00)*(x1680)); +IkReal x1684=((cj0)*(x1667)); +IkReal x1685=((sj0)*(x1668)); +IkReal x1686=((r20)*(x1668)); +IkReal x1687=((cj0)*(x1668)); +IkReal x1688=((r21)*(x1667)); +IkReal x1689=((r21)*(x1668)); +IkReal x1690=((r20)*(x1667)); +IkReal x1691=((x1668)*(x1677)); +IkReal x1692=((r01)*(sj6)*(x1668)); +IkReal x1693=((cj5)*(r10)*(x1675)); +evalcond[0]=((IkReal(-1.00000000000000))+(((x1680)*(x1690)))+(((x1667)*(x1669)))+(((sj6)*(x1689)))+(((IkReal(-1.00000000000000))*(x1670)*(x1686)))+(((x1673)*(x1688)))); +evalcond[1]=((((cj6)*(x1690)))+(((x1668)*(x1669)))+(((x1673)*(x1689)))+(((IkReal(-1.00000000000000))*(x1675)*(x1688)))+(((x1680)*(x1686)))); +evalcond[2]=((((r01)*(sj6)*(x1685)))+(((x1682)*(x1683)))+(((x1679)*(x1687)))+(((x1678)*(x1682)))+(((IkReal(-1.00000000000000))*(x1668)*(x1671)*(x1674)))+(((IkReal(-1.00000000000000))*(r10)*(x1667)*(x1671)*(x1680)))+(((IkReal(-1.00000000000000))*(x1667)*(x1671)*(x1677)))+(((IkReal(-1.00000000000000))*(x1670)*(x1672)*(x1684)))+(((r01)*(x1673)*(x1682)))+(((IkReal(-1.00000000000000))*(r00)*(x1670)*(x1685)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(x1675)*(x1682)))+(((IkReal(-1.00000000000000))*(x1671)*(x1691)))+(((IkReal(-1.00000000000000))*(r10)*(x1670)*(x1684)))+(((IkReal(-1.00000000000000))*(r10)*(x1668)*(x1671)*(x1680)))+(((r01)*(x1673)*(x1685)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x1670)*(x1672)*(x1687)))+(((x1676)*(x1682)))+(((x1683)*(x1685)))+(((x1674)*(x1684)))+(((x1678)*(x1685)))); +evalcond[4]=((((x1676)*(x1687)))+(((IkReal(-1.00000000000000))*(x1667)*(x1671)*(x1683)))+(((IkReal(-1.00000000000000))*(x1670)*(x1681)*(x1684)))+(((IkReal(-1.00000000000000))*(x1670)*(x1672)*(x1682)))+(((IkReal(-1.00000000000000))*(x1667)*(x1671)*(x1678)))+(((IkReal(-1.00000000000000))*(x1677)*(x1682)))+(((IkReal(-1.00000000000000))*(x1682)*(x1693)))+(((IkReal(-1.00000000000000))*(x1671)*(x1692)))+(((IkReal(-1.00000000000000))*(x1674)*(x1685)))+(((x1679)*(x1685)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1685)*(x1693)))+(((IkReal(-1.00000000000000))*(x1677)*(x1685)))+(((IkReal(-1.00000000000000))*(r10)*(x1670)*(x1682)))+(((IkReal(-1.00000000000000))*(x1670)*(x1672)*(x1685)))+(sj3)+(((x1674)*(x1682)))+(((IkReal(-1.00000000000000))*(x1670)*(x1681)*(x1687)))+(((IkReal(-1.00000000000000))*(x1668)*(x1671)*(x1678)))+(((r01)*(sj6)*(x1684)))+(((IkReal(-1.00000000000000))*(r00)*(x1670)*(x1684)))+(((IkReal(-1.00000000000000))*(x1668)*(x1671)*(x1683)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1694=((cj6)*(sj5)); +IkReal x1695=((IkReal(1.00000000000000))*(cj5)); +IkReal x1696=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x1696)))+(((IkReal(-1.00000000000000))*(r21)*(x1694)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(r00)*(x1696)))+(((r10)*(sj0)*(x1696)))+(((cj0)*(r01)*(x1694)))+(((r11)*(sj0)*(x1694)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1695)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1695))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x1696)))+(((IkReal(-1.00000000000000))*(r21)*(x1694)))+(((cj5)*(r22)))))))+IKsqr(((((cj0)*(r00)*(x1696)))+(((r10)*(sj0)*(x1696)))+(((cj0)*(r01)*(x1694)))+(((r11)*(sj0)*(x1694)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1695)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1695)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x1696)))+(((IkReal(-1.00000000000000))*(r21)*(x1694)))+(((cj5)*(r22)))))), ((((cj0)*(r00)*(x1696)))+(((r10)*(sj0)*(x1696)))+(((cj0)*(r01)*(x1694)))+(((r11)*(sj0)*(x1694)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1695)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1695))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x1697=IKsin(j3); +IkReal x1698=((sj5)*(sj6)); +IkReal x1699=((cj0)*(cj5)); +IkReal x1700=((IkReal(1.00000000000000))*(cj0)); +IkReal x1701=((IkReal(1.00000000000000))*(sj0)); +IkReal x1702=((cj6)*(r01)*(sj5)); +IkReal x1703=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj2)*(x1697)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x1698)))); +evalcond[1]=((((r12)*(x1699)))+(((IkReal(-1.00000000000000))*(x1700)*(x1703)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x1701)))+(((sj0)*(x1702)))+(((r00)*(sj0)*(x1698)))+(((IkReal(-1.00000000000000))*(sj2)*(x1697)))+(((IkReal(-1.00000000000000))*(r10)*(x1698)*(x1700)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x1698)*(x1700)))+(((r02)*(x1699)))+(((IkReal(-1.00000000000000))*(x1700)*(x1702)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(x1698)*(x1701)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x1701)*(x1703)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst54; +IkReal x1704=(r21)*(r21); +IkReal x1705=(cj5)*(cj5); +IkReal x1706=(sj6)*(sj6); +IkReal x1707=(cj6)*(cj6); +IkReal x1708=(r20)*(r20); +IkReal x1709=((cj6)*(r21)); +IkReal x1710=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1711=((cj5)*(r22)*(sj5)); +IkReal x1712=((IkReal(1.00000000000000))*(x1706)); +IkReal x1713=((IkReal(1.00000000000000))*(x1707)); +gconst54=IKsign(((((IkReal(-1.00000000000000))*(x1708)*(x1713)))+(((IkReal(-2.00000000000000))*(x1709)*(x1711)))+(((x1709)*(x1710)))+(((IkReal(-1.00000000000000))*(x1704)*(x1712)))+(((IkReal(-1.00000000000000))*(x1704)*(x1705)*(x1713)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x1705)*(x1709)*(x1710)))+(((IkReal(-1.00000000000000))*(x1710)*(x1711)))+(((IkReal(-1.00000000000000))*(x1705)*(x1708)*(x1712))))); +IkReal x1714=(r21)*(r21); +IkReal x1715=(cj5)*(cj5); +IkReal x1716=(sj6)*(sj6); +IkReal x1717=(cj6)*(cj6); +IkReal x1718=(r20)*(r20); +IkReal x1719=((cj6)*(r21)); +IkReal x1720=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x1721=((cj5)*(r22)*(sj5)); +IkReal x1722=((IkReal(1.00000000000000))*(x1716)); +IkReal x1723=((IkReal(1.00000000000000))*(x1717)); +dummyeval[0]=((((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x1714)*(x1722)))+(((IkReal(-1.00000000000000))*(x1715)*(x1719)*(x1720)))+(((x1719)*(x1720)))+(((IkReal(-1.00000000000000))*(x1720)*(x1721)))+(((IkReal(-2.00000000000000))*(x1719)*(x1721)))+(((IkReal(-1.00000000000000))*(x1718)*(x1723)))+(((IkReal(-1.00000000000000))*(x1715)*(x1718)*(x1722)))+(((IkReal(-1.00000000000000))*(x1714)*(x1715)*(x1723)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst55; +IkReal x1724=(cj6)*(cj6); +IkReal x1725=(sj6)*(sj6); +IkReal x1726=((IkReal(1.00000000000000))*(r01)); +IkReal x1727=((sj0)*(sj5)); +IkReal x1728=((cj6)*(r22)); +IkReal x1729=((r21)*(sj6)); +IkReal x1730=((r00)*(r21)); +IkReal x1731=((cj0)*(sj5)); +IkReal x1732=((cj6)*(r20)); +IkReal x1733=((r22)*(sj6)); +IkReal x1734=((cj0)*(cj5)); +IkReal x1735=((IkReal(1.00000000000000))*(r10)); +IkReal x1736=((cj5)*(sj0)); +IkReal x1737=((r20)*(x1725)); +IkReal x1738=((x1724)*(x1736)); +gconst55=IKsign(((((x1725)*(x1730)*(x1736)))+(((r11)*(r20)*(x1724)*(x1734)))+(((IkReal(-1.00000000000000))*(r02)*(x1727)*(x1732)))+(((IkReal(-1.00000000000000))*(r20)*(x1726)*(x1738)))+(((r02)*(x1727)*(x1729)))+(((IkReal(-1.00000000000000))*(x1728)*(x1731)*(x1735)))+(((IkReal(-1.00000000000000))*(r12)*(x1729)*(x1731)))+(((IkReal(-1.00000000000000))*(x1726)*(x1736)*(x1737)))+(((x1730)*(x1738)))+(((r11)*(x1734)*(x1737)))+(((IkReal(-1.00000000000000))*(r21)*(x1725)*(x1734)*(x1735)))+(((IkReal(-1.00000000000000))*(r21)*(x1724)*(x1734)*(x1735)))+(((r00)*(x1727)*(x1728)))+(((r11)*(x1731)*(x1733)))+(((IkReal(-1.00000000000000))*(x1726)*(x1727)*(x1733)))+(((r12)*(x1731)*(x1732))))); +IkReal x1739=(cj6)*(cj6); +IkReal x1740=(sj6)*(sj6); +IkReal x1741=((IkReal(1.00000000000000))*(r01)); +IkReal x1742=((sj0)*(sj5)); +IkReal x1743=((cj6)*(r22)); +IkReal x1744=((r21)*(sj6)); +IkReal x1745=((r00)*(r21)); +IkReal x1746=((cj0)*(sj5)); +IkReal x1747=((cj6)*(r20)); +IkReal x1748=((r22)*(sj6)); +IkReal x1749=((cj0)*(cj5)); +IkReal x1750=((IkReal(1.00000000000000))*(r10)); +IkReal x1751=((cj5)*(sj0)); +IkReal x1752=((r20)*(x1740)); +IkReal x1753=((x1739)*(x1751)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r20)*(x1741)*(x1753)))+(((IkReal(-1.00000000000000))*(r21)*(x1740)*(x1749)*(x1750)))+(((IkReal(-1.00000000000000))*(r21)*(x1739)*(x1749)*(x1750)))+(((r00)*(x1742)*(x1743)))+(((x1740)*(x1745)*(x1751)))+(((r11)*(x1749)*(x1752)))+(((r12)*(x1746)*(x1747)))+(((x1745)*(x1753)))+(((r02)*(x1742)*(x1744)))+(((IkReal(-1.00000000000000))*(r12)*(x1744)*(x1746)))+(((IkReal(-1.00000000000000))*(r02)*(x1742)*(x1747)))+(((IkReal(-1.00000000000000))*(x1741)*(x1751)*(x1752)))+(((IkReal(-1.00000000000000))*(x1741)*(x1742)*(x1748)))+(((IkReal(-1.00000000000000))*(x1743)*(x1746)*(x1750)))+(((r11)*(r20)*(x1739)*(x1749)))+(((r11)*(x1746)*(x1748)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1754=((cj5)*(sj6)); +IkReal x1755=((cj2)*(r20)); +IkReal x1756=((IkReal(1.00000000000000))*(sj6)); +IkReal x1757=((cj2)*(r21)); +IkReal x1758=((cj0)*(sj2)); +IkReal x1759=((cj5)*(cj6)); +IkReal x1760=((IkReal(1.00000000000000))*(sj0)*(sj2)); +IkReal x1761=((r10)*(x1758)); +if( IKabs(((gconst55)*(((((IkReal(-1.00000000000000))*(r11)*(x1756)*(x1758)))+(((r01)*(sj0)*(sj2)*(sj6)))+(((cj6)*(x1761)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x1760)))+(((IkReal(-1.00000000000000))*(x1756)*(x1757)))+(((cj6)*(x1755))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst55)*(((((cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x1754)*(x1760)))+(((IkReal(-1.00000000000000))*(r01)*(x1759)*(x1760)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x1760)))+(((x1754)*(x1755)))+(((x1754)*(x1761)))+(((r12)*(sj5)*(x1758)))+(((x1757)*(x1759)))+(((r11)*(x1758)*(x1759))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst55)*(((((IkReal(-1.00000000000000))*(r11)*(x1756)*(x1758)))+(((r01)*(sj0)*(sj2)*(sj6)))+(((cj6)*(x1761)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x1760)))+(((IkReal(-1.00000000000000))*(x1756)*(x1757)))+(((cj6)*(x1755)))))), ((gconst55)*(((((cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x1754)*(x1760)))+(((IkReal(-1.00000000000000))*(r01)*(x1759)*(x1760)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x1760)))+(((x1754)*(x1755)))+(((x1754)*(x1761)))+(((r12)*(sj5)*(x1758)))+(((x1757)*(x1759)))+(((r11)*(x1758)*(x1759))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1762=IKsin(j4); +IkReal x1763=IKcos(j4); +IkReal x1764=((r00)*(sj6)); +IkReal x1765=((IkReal(1.00000000000000))*(r12)); +IkReal x1766=((IkReal(1.00000000000000))*(cj6)); +IkReal x1767=((cj6)*(r01)); +IkReal x1768=((cj0)*(r11)); +IkReal x1769=((r01)*(sj6)); +IkReal x1770=((IkReal(1.00000000000000))*(cj5)); +IkReal x1771=((cj5)*(r11)); +IkReal x1772=((cj0)*(r01)); +IkReal x1773=((r02)*(sj5)); +IkReal x1774=((cj6)*(r10)); +IkReal x1775=((sj5)*(x1762)); +IkReal x1776=((cj0)*(x1763)); +IkReal x1777=((sj6)*(x1762)); +IkReal x1778=((sj0)*(x1763)); +IkReal x1779=((r10)*(x1762)); +IkReal x1780=((IkReal(1.00000000000000))*(r10)*(sj6)); +IkReal x1781=((cj5)*(x1762)); +IkReal x1782=((IkReal(1.00000000000000))*(r11)*(sj6)); +IkReal x1783=((r00)*(x1762)); +IkReal x1784=((r20)*(x1763)); +IkReal x1785=((r21)*(x1763)); +IkReal x1786=((sj0)*(x1781)); +evalcond[0]=((((sj6)*(x1785)))+(sj2)+(((cj5)*(r20)*(x1777)))+(((r22)*(x1775)))+(((IkReal(-1.00000000000000))*(x1766)*(x1784)))+(((cj6)*(r21)*(x1781)))); +evalcond[1]=((((cj5)*(cj6)*(x1785)))+(((cj6)*(r20)*(x1762)))+(((r22)*(sj5)*(x1763)))+(((cj5)*(sj6)*(x1784)))+(((IkReal(-1.00000000000000))*(r21)*(x1777)))+(((IkReal(-1.00000000000000))*(cj2)*(cj3)))); +evalcond[2]=((((x1769)*(x1778)))+(((IkReal(-1.00000000000000))*(x1766)*(x1768)*(x1781)))+(((IkReal(-1.00000000000000))*(sj6)*(x1763)*(x1768)))+(((x1767)*(x1786)))+(cj2)+(((x1774)*(x1776)))+(((x1764)*(x1786)))+(((sj0)*(x1762)*(x1773)))+(((IkReal(-1.00000000000000))*(r00)*(x1766)*(x1778)))+(((IkReal(-1.00000000000000))*(cj0)*(x1765)*(x1775)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x1770)*(x1777)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj6)*(x1770)*(x1776)))+(((x1768)*(x1777)))+(((IkReal(-1.00000000000000))*(cj5)*(x1763)*(x1766)*(x1768)))+(((cj5)*(x1764)*(x1778)))+(((cj6)*(sj0)*(x1783)))+(((cj5)*(x1767)*(x1778)))+(((IkReal(-1.00000000000000))*(sj0)*(x1762)*(x1769)))+(((x1773)*(x1778)))+(((IkReal(-1.00000000000000))*(cj0)*(x1766)*(x1779)))+(((IkReal(-1.00000000000000))*(sj5)*(x1765)*(x1776)))+(((cj3)*(sj2)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x1778)*(x1782)))+(((cj6)*(r00)*(x1776)))+(((IkReal(-1.00000000000000))*(cj0)*(x1762)*(x1764)*(x1770)))+(((IkReal(-1.00000000000000))*(x1769)*(x1776)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1770)*(x1777)))+(((IkReal(-1.00000000000000))*(sj0)*(x1765)*(x1775)))+(((IkReal(-1.00000000000000))*(cj0)*(x1762)*(x1773)))+(((x1774)*(x1778)))+(((IkReal(-1.00000000000000))*(x1766)*(x1772)*(x1781)))+(((IkReal(-1.00000000000000))*(sj0)*(x1762)*(x1766)*(x1771)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1773)*(x1776)))+(((IkReal(-1.00000000000000))*(sj5)*(x1765)*(x1778)))+(sj3)+(((IkReal(-1.00000000000000))*(cj0)*(x1766)*(x1783)))+(((r11)*(sj0)*(x1777)))+(((IkReal(-1.00000000000000))*(x1766)*(x1771)*(x1778)))+(((IkReal(-1.00000000000000))*(cj5)*(x1763)*(x1766)*(x1772)))+(((cj0)*(x1762)*(x1769)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x1770)*(x1778)))+(((IkReal(-1.00000000000000))*(x1764)*(x1770)*(x1776)))+(((IkReal(-1.00000000000000))*(sj0)*(x1766)*(x1779)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1787=((cj6)*(r20)); +IkReal x1788=((r22)*(sj5)); +IkReal x1789=((r21)*(sj2)); +IkReal x1790=((cj5)*(cj6)); +IkReal x1791=((cj5)*(r20)*(sj6)); +IkReal x1792=((IkReal(1.00000000000000))*(cj2)*(cj3)); +if( IKabs(((gconst54)*(((((IkReal(-1.00000000000000))*(x1787)*(x1792)))+(((cj2)*(cj3)*(r21)*(sj6)))+(((sj2)*(x1788)))+(((sj2)*(x1791)))+(((x1789)*(x1790))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst54)*(((((IkReal(-1.00000000000000))*(r21)*(x1790)*(x1792)))+(((IkReal(-1.00000000000000))*(sj2)*(x1787)))+(((IkReal(-1.00000000000000))*(x1788)*(x1792)))+(((sj6)*(x1789)))+(((IkReal(-1.00000000000000))*(x1791)*(x1792))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst54)*(((((IkReal(-1.00000000000000))*(x1787)*(x1792)))+(((cj2)*(cj3)*(r21)*(sj6)))+(((sj2)*(x1788)))+(((sj2)*(x1791)))+(((x1789)*(x1790)))))), ((gconst54)*(((((IkReal(-1.00000000000000))*(r21)*(x1790)*(x1792)))+(((IkReal(-1.00000000000000))*(sj2)*(x1787)))+(((IkReal(-1.00000000000000))*(x1788)*(x1792)))+(((sj6)*(x1789)))+(((IkReal(-1.00000000000000))*(x1791)*(x1792))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x1793=IKsin(j4); +IkReal x1794=IKcos(j4); +IkReal x1795=((r00)*(sj6)); +IkReal x1796=((IkReal(1.00000000000000))*(r12)); +IkReal x1797=((IkReal(1.00000000000000))*(cj6)); +IkReal x1798=((cj6)*(r01)); +IkReal x1799=((cj0)*(r11)); +IkReal x1800=((r01)*(sj6)); +IkReal x1801=((IkReal(1.00000000000000))*(cj5)); +IkReal x1802=((cj5)*(r11)); +IkReal x1803=((cj0)*(r01)); +IkReal x1804=((r02)*(sj5)); +IkReal x1805=((cj6)*(r10)); +IkReal x1806=((sj5)*(x1793)); +IkReal x1807=((cj0)*(x1794)); +IkReal x1808=((sj6)*(x1793)); +IkReal x1809=((sj0)*(x1794)); +IkReal x1810=((r10)*(x1793)); +IkReal x1811=((IkReal(1.00000000000000))*(r10)*(sj6)); +IkReal x1812=((cj5)*(x1793)); +IkReal x1813=((IkReal(1.00000000000000))*(r11)*(sj6)); +IkReal x1814=((r00)*(x1793)); +IkReal x1815=((r20)*(x1794)); +IkReal x1816=((r21)*(x1794)); +IkReal x1817=((sj0)*(x1812)); +evalcond[0]=((((r22)*(x1806)))+(((sj6)*(x1816)))+(sj2)+(((cj6)*(r21)*(x1812)))+(((cj5)*(r20)*(x1808)))+(((IkReal(-1.00000000000000))*(x1797)*(x1815)))); +evalcond[1]=((((r22)*(sj5)*(x1794)))+(((cj6)*(r20)*(x1793)))+(((cj5)*(cj6)*(x1816)))+(((cj5)*(sj6)*(x1815)))+(((IkReal(-1.00000000000000))*(r21)*(x1808)))+(((IkReal(-1.00000000000000))*(cj2)*(cj3)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1797)*(x1799)*(x1812)))+(((sj0)*(x1793)*(x1804)))+(((x1800)*(x1809)))+(((IkReal(-1.00000000000000))*(cj0)*(x1796)*(x1806)))+(((x1795)*(x1817)))+(cj2)+(((x1805)*(x1807)))+(((x1798)*(x1817)))+(((IkReal(-1.00000000000000))*(sj6)*(x1794)*(x1799)))+(((IkReal(-1.00000000000000))*(r00)*(x1797)*(x1809)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x1801)*(x1808)))); +evalcond[3]=((((cj6)*(sj0)*(x1814)))+(((x1799)*(x1808)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x1801)*(x1807)))+(((IkReal(-1.00000000000000))*(sj0)*(x1793)*(x1800)))+(((x1804)*(x1809)))+(((cj3)*(sj2)))+(((cj5)*(x1798)*(x1809)))+(((cj5)*(x1795)*(x1809)))+(((IkReal(-1.00000000000000))*(cj0)*(x1797)*(x1810)))+(((IkReal(-1.00000000000000))*(sj5)*(x1796)*(x1807)))+(((IkReal(-1.00000000000000))*(cj5)*(x1794)*(x1797)*(x1799)))); +evalcond[4]=((((x1805)*(x1809)))+(((IkReal(-1.00000000000000))*(x1809)*(x1813)))+(((IkReal(-1.00000000000000))*(x1797)*(x1803)*(x1812)))+(((IkReal(-1.00000000000000))*(cj0)*(x1793)*(x1804)))+(((IkReal(-1.00000000000000))*(sj0)*(x1796)*(x1806)))+(((IkReal(-1.00000000000000))*(cj0)*(x1793)*(x1795)*(x1801)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1801)*(x1808)))+(((IkReal(-1.00000000000000))*(sj0)*(x1793)*(x1797)*(x1802)))+(((IkReal(-1.00000000000000))*(x1800)*(x1807)))+(((cj6)*(r00)*(x1807)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x1804)*(x1807)))+(((IkReal(-1.00000000000000))*(x1797)*(x1802)*(x1809)))+(((cj0)*(x1793)*(x1800)))+(sj3)+(((IkReal(-1.00000000000000))*(cj5)*(x1794)*(x1797)*(x1803)))+(((IkReal(-1.00000000000000))*(sj0)*(x1797)*(x1810)))+(((IkReal(-1.00000000000000))*(cj0)*(x1797)*(x1814)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x1801)*(x1809)))+(((IkReal(-1.00000000000000))*(sj5)*(x1796)*(x1809)))+(((r11)*(sj0)*(x1808)))+(((IkReal(-1.00000000000000))*(x1795)*(x1801)*(x1807)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x1818=((cj5)*(sj6)); +IkReal x1819=((cj2)*(r20)); +IkReal x1820=((IkReal(1.00000000000000))*(sj6)); +IkReal x1821=((cj2)*(r21)); +IkReal x1822=((cj5)*(cj6)); +IkReal x1823=((IkReal(1.00000000000000))*(sj0)*(sj2)); +IkReal x1824=((cj0)*(r10)*(sj2)); +IkReal x1825=((cj0)*(r11)*(sj2)); +if( IKabs(((gconst52)*(((((IkReal(-1.00000000000000))*(x1820)*(x1821)))+(((r01)*(sj0)*(sj2)*(sj6)))+(((IkReal(-1.00000000000000))*(x1820)*(x1825)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x1823)))+(((cj6)*(x1824)))+(((cj6)*(x1819))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst52)*(((((x1818)*(x1824)))+(((cj2)*(r22)*(sj5)))+(((cj0)*(r12)*(sj2)*(sj5)))+(((x1821)*(x1822)))+(((IkReal(-1.00000000000000))*(r01)*(x1822)*(x1823)))+(((x1818)*(x1819)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x1823)))+(((x1822)*(x1825)))+(((IkReal(-1.00000000000000))*(r00)*(x1818)*(x1823))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst52)*(((((IkReal(-1.00000000000000))*(x1820)*(x1821)))+(((r01)*(sj0)*(sj2)*(sj6)))+(((IkReal(-1.00000000000000))*(x1820)*(x1825)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x1823)))+(((cj6)*(x1824)))+(((cj6)*(x1819)))))), ((gconst52)*(((((x1818)*(x1824)))+(((cj2)*(r22)*(sj5)))+(((cj0)*(r12)*(sj2)*(sj5)))+(((x1821)*(x1822)))+(((IkReal(-1.00000000000000))*(r01)*(x1822)*(x1823)))+(((x1818)*(x1819)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x1823)))+(((x1822)*(x1825)))+(((IkReal(-1.00000000000000))*(r00)*(x1818)*(x1823))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x1826=IKsin(j4); +IkReal x1827=IKcos(j4); +IkReal x1828=((r00)*(sj6)); +IkReal x1829=((cj6)*(r01)); +IkReal x1830=((IkReal(1.00000000000000))*(cj0)); +IkReal x1831=((IkReal(1.00000000000000))*(sj0)); +IkReal x1832=((r10)*(sj6)); +IkReal x1833=((sj5)*(x1826)); +IkReal x1834=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x1835=((cj5)*(x1826)); +IkReal x1836=((cj6)*(x1827)); +IkReal x1837=((sj0)*(x1835)); +IkReal x1838=((r01)*(sj6)*(x1827)); +IkReal x1839=((r11)*(sj6)*(x1827)); +evalcond[0]=((sj2)+(((r22)*(x1833)))+(((r20)*(sj6)*(x1835)))+(((r21)*(sj6)*(x1827)))+(((IkReal(-1.00000000000000))*(r20)*(x1836)))+(((cj6)*(r21)*(x1835)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x1830)*(x1839)))+(((cj0)*(r10)*(x1836)))+(((r02)*(sj0)*(x1833)))+(((IkReal(-1.00000000000000))*(r12)*(x1830)*(x1833)))+(cj2)+(((IkReal(-1.00000000000000))*(x1830)*(x1832)*(x1835)))+(((sj0)*(x1838)))+(((x1828)*(x1837)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1830)*(x1835)))+(((IkReal(-1.00000000000000))*(r00)*(x1831)*(x1836)))+(((x1829)*(x1837)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1831)*(x1839)))+(((IkReal(-1.00000000000000))*(r02)*(x1830)*(x1833)))+(((IkReal(-1.00000000000000))*(x1829)*(x1830)*(x1835)))+(((r10)*(sj0)*(x1836)))+(((IkReal(-1.00000000000000))*(r12)*(x1831)*(x1833)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1831)*(x1835)))+(((IkReal(-1.00000000000000))*(x1830)*(x1838)))+(((IkReal(-1.00000000000000))*(x1831)*(x1832)*(x1835)))+(((IkReal(-1.00000000000000))*(x1828)*(x1830)*(x1835)))+(((cj0)*(r00)*(x1836)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst56; +gconst56=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x1840=((cj5)*(sj4)); +IkReal x1841=((IkReal(1.00000000000000))*(sj6)); +IkReal x1842=((r10)*(sj0)); +IkReal x1843=((sj4)*(sj5)); +IkReal x1844=((cj5)*(cj6)); +IkReal x1845=((r01)*(sj0)); +IkReal x1846=((IkReal(1.00000000000000))*(r02)); +IkReal x1847=((IkReal(0.374290000000000))*(cj0)); +IkReal x1848=((cj5)*(r12)); +IkReal x1849=((cj6)*(sj5)); +IkReal x1850=((cj0)*(r11)); +IkReal x1851=((cj5)*(sj0)); +IkReal x1852=((r20)*(sj6)); +IkReal x1853=((IkReal(1.00000000000000))*(sj0)); +IkReal x1854=((cj4)*(cj5)); +IkReal x1855=((IkReal(1.00000000000000))*(cj6)); +IkReal x1856=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1857=((sj5)*(sj6)); +IkReal x1858=((cj0)*(r10)); +IkReal x1859=((cj4)*(cj6)); +IkReal x1860=((cj0)*(r01)); +IkReal x1861=((IkReal(1.00000000000000))*(cj4)); +IkReal x1862=((cj0)*(r00)); +IkReal x1863=((IkReal(0.374290000000000))*(sj0)); +IkReal x1864=((cj0)*(r12)); +IkReal x1865=((IkReal(0.374290000000000))*(sj5)); +IkReal x1866=((cj4)*(sj6)); +IkReal x1867=((IkReal(1.00000000000000))*(cj0)); +IkReal x1868=((r02)*(sj0)); +IkReal x1869=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1870=((r11)*(sj0)); +IkReal x1871=((r00)*(sj0)*(sj6)); +IkReal x1872=((r00)*(x1859)); +IkReal x1873=((sj6)*(x1869)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x1866)))+(((cj6)*(r21)*(x1840)))+(((x1840)*(x1852)))+(((r22)*(x1843)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x1855)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x1852)*(x1869)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x1844)))+(((x1852)*(x1865)))+(pz)+(((IkReal(0.374290000000000))*(r21)*(x1849)))+(((IkReal(-1.00000000000000))*(r22)*(x1856)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1846)*(x1851)))+(((x1845)*(x1849)))+(((cj0)*(x1848)))+(((IkReal(-1.00000000000000))*(x1849)*(x1850)))+(((r00)*(sj0)*(x1857)))+(((IkReal(-1.00000000000000))*(sj5)*(x1841)*(x1858)))); +evalcond[4]=((IkReal(1.00000000000000))+(((x1845)*(x1866)))+(((IkReal(-1.00000000000000))*(x1853)*(x1872)))+(((IkReal(-1.00000000000000))*(x1840)*(x1850)*(x1855)))+(((x1840)*(x1871)))+(((x1858)*(x1859)))+(((IkReal(-1.00000000000000))*(x1840)*(x1841)*(x1858)))+(((IkReal(-1.00000000000000))*(cj4)*(x1841)*(x1850)))+(((x1843)*(x1868)))+(((cj6)*(x1840)*(x1845)))+(((IkReal(-1.00000000000000))*(x1843)*(x1864)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x1841)*(x1845)))+(((r00)*(x1851)*(x1866)))+(((IkReal(-1.00000000000000))*(sj4)*(x1855)*(x1858)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(sj5)*(x1868)))+(((IkReal(-1.00000000000000))*(x1841)*(x1854)*(x1858)))+(((IkReal(-1.00000000000000))*(sj5)*(x1861)*(x1864)))+(((cj4)*(x1844)*(x1845)))+(((sj4)*(sj6)*(x1850)))+(((IkReal(-1.00000000000000))*(x1844)*(x1850)*(x1861)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x1840)*(x1841)*(x1862)))+(((IkReal(-1.00000000000000))*(cj0)*(x1843)*(x1846)))+(((IkReal(-1.00000000000000))*(x1840)*(x1855)*(x1860)))+(((x1859)*(x1862)))+(((IkReal(-1.00000000000000))*(x1840)*(x1841)*(x1842)))+(((IkReal(-1.00000000000000))*(cj4)*(x1841)*(x1870)))+(((x1842)*(x1859)))+(((IkReal(-1.00000000000000))*(cj4)*(x1841)*(x1860)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1840)*(x1853)))+(((IkReal(-1.00000000000000))*(r12)*(x1843)*(x1853)))); +evalcond[7]=((((IkReal(0.0100000000000000))*(x1844)*(x1850)))+(((IkReal(-0.0100000000000000))*(x1844)*(x1845)))+(((IkReal(-0.374290000000000))*(r02)*(x1851)))+(((x1847)*(x1848)))+(((r00)*(x1857)*(x1863)))+(((IkReal(-1.00000000000000))*(r11)*(x1847)*(x1849)))+(((x1856)*(x1864)))+(((IkReal(0.374290000000000))*(x1845)*(x1849)))+(((IkReal(-1.00000000000000))*(py)*(x1867)))+(((IkReal(-1.00000000000000))*(r10)*(x1847)*(x1857)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x1851)))+(((IkReal(-1.00000000000000))*(x1856)*(x1868)))+(((px)*(sj0)))+(((x1858)*(x1873)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(py)*(x1853)))+(((r12)*(sj0)*(x1856)))+(((cj0)*(r02)*(x1856)))+(((IkReal(0.0100000000000000))*(x1844)*(x1870)))+(((IkReal(-1.00000000000000))*(px)*(x1867)))+(((IkReal(0.0100000000000000))*(x1844)*(x1860)))+(((x1862)*(x1873)))+(((IkReal(-1.00000000000000))*(r01)*(x1847)*(x1849)))+(((cj5)*(r02)*(x1847)))+(((IkReal(-0.374290000000000))*(x1842)*(x1857)))+(((IkReal(-1.00000000000000))*(r00)*(x1847)*(x1857)))+(((x1842)*(x1873)))+(((x1848)*(x1863)))+(((IkReal(-1.00000000000000))*(r11)*(x1849)*(x1863)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1874=((IkReal(1.00000000000000))*(r21)); +IkReal x1875=((cj4)*(cj5)); +IkReal x1876=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1874)))+(((IkReal(-1.00000000000000))*(sj5)*(x1876)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r20)*(sj4)))+(((cj6)*(r21)*(x1875)))+(((cj4)*(r22)*(sj5)))+(((x1875)*(x1876)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1874))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1874)))+(((IkReal(-1.00000000000000))*(sj5)*(x1876)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r20)*(sj4)))+(((cj6)*(r21)*(x1875)))+(((cj4)*(r22)*(sj5)))+(((x1875)*(x1876)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1874)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x1874)))+(((IkReal(-1.00000000000000))*(sj5)*(x1876)))+(((cj5)*(r22)))), ((((cj6)*(r20)*(sj4)))+(((cj6)*(r21)*(x1875)))+(((cj4)*(r22)*(sj5)))+(((x1875)*(x1876)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x1874))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1877=IKcos(j3); +IkReal x1878=IKsin(j3); +IkReal x1879=((IkReal(1.00000000000000))*(cj4)); +IkReal x1880=((sj0)*(sj5)); +IkReal x1881=((cj0)*(cj5)); +IkReal x1882=((cj6)*(r01)); +IkReal x1883=((r00)*(sj6)); +IkReal x1884=((cj6)*(r11)); +IkReal x1885=((cj5)*(sj0)); +IkReal x1886=((cj6)*(sj4)); +IkReal x1887=((sj4)*(sj6)); +IkReal x1888=((cj4)*(cj5)); +IkReal x1889=((cj6)*(r21)); +IkReal x1890=((r20)*(sj6)); +IkReal x1891=((r10)*(sj6)); +IkReal x1892=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x1878)+(((sj5)*(x1889)))+(((sj5)*(x1890)))); +evalcond[1]=((((x1888)*(x1889)))+(((x1888)*(x1890)))+(((IkReal(-1.00000000000000))*(r21)*(x1887)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x1886)))+(((IkReal(-1.00000000000000))*(x1877)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x1880)*(x1891)))+(((r12)*(x1885)))+(((r02)*(x1881)))+(((IkReal(-1.00000000000000))*(x1883)*(x1892)))+(x1877)+(((IkReal(-1.00000000000000))*(x1880)*(x1884)))+(((IkReal(-1.00000000000000))*(x1882)*(x1892)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1886)))+(((r11)*(sj0)*(x1887)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1886)))+(((IkReal(-1.00000000000000))*(x1879)*(x1881)*(x1882)))+(((IkReal(-1.00000000000000))*(x1879)*(x1881)*(x1883)))+(((IkReal(-1.00000000000000))*(r12)*(x1879)*(x1880)))+(((IkReal(-1.00000000000000))*(x1879)*(x1885)*(x1891)))+(x1878)+(((cj0)*(r01)*(x1887)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x1879)))+(((IkReal(-1.00000000000000))*(x1879)*(x1884)*(x1885)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1893=((cj5)*(sj4)); +IkReal x1894=((IkReal(1.00000000000000))*(sj6)); +IkReal x1895=((r10)*(sj0)); +IkReal x1896=((sj4)*(sj5)); +IkReal x1897=((cj5)*(cj6)); +IkReal x1898=((r01)*(sj0)); +IkReal x1899=((IkReal(1.00000000000000))*(r02)); +IkReal x1900=((IkReal(0.374290000000000))*(cj0)); +IkReal x1901=((cj5)*(r12)); +IkReal x1902=((cj6)*(sj5)); +IkReal x1903=((cj0)*(r11)); +IkReal x1904=((cj5)*(sj0)); +IkReal x1905=((r20)*(sj6)); +IkReal x1906=((IkReal(1.00000000000000))*(sj0)); +IkReal x1907=((cj4)*(cj5)); +IkReal x1908=((IkReal(1.00000000000000))*(cj6)); +IkReal x1909=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1910=((sj5)*(sj6)); +IkReal x1911=((cj0)*(r10)); +IkReal x1912=((cj4)*(cj6)); +IkReal x1913=((cj0)*(r01)); +IkReal x1914=((IkReal(1.00000000000000))*(cj4)); +IkReal x1915=((cj0)*(r00)); +IkReal x1916=((IkReal(0.374290000000000))*(sj0)); +IkReal x1917=((cj0)*(r12)); +IkReal x1918=((IkReal(0.374290000000000))*(sj5)); +IkReal x1919=((cj4)*(sj6)); +IkReal x1920=((IkReal(1.00000000000000))*(cj0)); +IkReal x1921=((r02)*(sj0)); +IkReal x1922=((IkReal(0.0100000000000000))*(cj5)); +IkReal x1923=((r11)*(sj0)); +IkReal x1924=((r00)*(sj0)*(sj6)); +IkReal x1925=((r00)*(x1912)); +IkReal x1926=((sj6)*(x1922)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj4)*(r20)*(x1908)))+(((r21)*(x1919)))+(((r22)*(x1896)))+(((x1893)*(x1905)))+(((cj6)*(r21)*(x1893)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x1902)))+(((IkReal(-1.00000000000000))*(r22)*(x1909)))+(((IkReal(-0.0100000000000000))*(r21)*(x1897)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x1905)*(x1918)))+(((IkReal(-1.00000000000000))*(x1905)*(x1922)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x1894)*(x1911)))+(((r00)*(sj0)*(x1910)))+(((cj0)*(x1901)))+(((x1898)*(x1902)))+(((IkReal(-1.00000000000000))*(x1899)*(x1904)))+(((IkReal(-1.00000000000000))*(x1902)*(x1903)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((cj6)*(x1893)*(x1898)))+(((IkReal(-1.00000000000000))*(x1893)*(x1894)*(x1911)))+(((IkReal(-1.00000000000000))*(x1896)*(x1917)))+(((x1893)*(x1924)))+(((IkReal(-1.00000000000000))*(cj4)*(x1894)*(x1903)))+(((x1911)*(x1912)))+(((IkReal(-1.00000000000000))*(x1906)*(x1925)))+(((x1898)*(x1919)))+(((IkReal(-1.00000000000000))*(x1893)*(x1903)*(x1908)))+(((x1896)*(x1921)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x1894)*(x1898)))+(((cj4)*(sj5)*(x1921)))+(((cj4)*(x1897)*(x1898)))+(((r00)*(x1904)*(x1919)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((sj4)*(sj6)*(x1903)))+(((IkReal(-1.00000000000000))*(sj5)*(x1914)*(x1917)))+(((IkReal(-1.00000000000000))*(x1897)*(x1903)*(x1914)))+(((IkReal(-1.00000000000000))*(x1894)*(x1907)*(x1911)))+(((IkReal(-1.00000000000000))*(sj4)*(x1908)*(x1911)))); +evalcond[6]=((((x1912)*(x1915)))+(((IkReal(-1.00000000000000))*(x1893)*(x1894)*(x1915)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x1893)*(x1906)))+(((IkReal(-1.00000000000000))*(cj0)*(x1896)*(x1899)))+(((IkReal(-1.00000000000000))*(cj4)*(x1894)*(x1923)))+(((IkReal(-1.00000000000000))*(x1893)*(x1894)*(x1895)))+(((IkReal(-1.00000000000000))*(cj4)*(x1894)*(x1913)))+(((IkReal(-1.00000000000000))*(r12)*(x1896)*(x1906)))+(((IkReal(-1.00000000000000))*(x1893)*(x1908)*(x1913)))+(((x1895)*(x1912)))); +evalcond[7]=((((IkReal(0.0100000000000000))*(x1897)*(x1903)))+(((x1900)*(x1901)))+(((IkReal(-0.374290000000000))*(r02)*(x1904)))+(((IkReal(-0.0100000000000000))*(x1897)*(x1898)))+(((IkReal(-1.00000000000000))*(x1909)*(x1921)))+(((IkReal(-1.00000000000000))*(py)*(x1920)))+(((x1911)*(x1926)))+(((r00)*(x1910)*(x1916)))+(((IkReal(-1.00000000000000))*(r11)*(x1900)*(x1902)))+(((x1909)*(x1917)))+(((IkReal(-1.00000000000000))*(r10)*(x1900)*(x1910)))+(((IkReal(0.374290000000000))*(x1898)*(x1902)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x1904)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((cj0)*(r02)*(x1909)))+(((IkReal(-1.00000000000000))*(py)*(x1906)))+(((IkReal(-1.00000000000000))*(r00)*(x1900)*(x1910)))+(((x1901)*(x1916)))+(((x1895)*(x1926)))+(((IkReal(-1.00000000000000))*(px)*(x1920)))+(((IkReal(-1.00000000000000))*(r11)*(x1902)*(x1916)))+(((r12)*(sj0)*(x1909)))+(((x1915)*(x1926)))+(((cj5)*(r02)*(x1900)))+(((IkReal(-1.00000000000000))*(r01)*(x1900)*(x1902)))+(((IkReal(-0.374290000000000))*(x1895)*(x1910)))+(((IkReal(0.0100000000000000))*(x1897)*(x1913)))+(((IkReal(0.0100000000000000))*(x1897)*(x1923)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1927=((IkReal(1.00000000000000))*(cj4)); +IkReal x1928=((cj6)*(r21)); +IkReal x1929=((r20)*(sj6)); +if( IKabs(((((sj5)*(x1929)))+(((sj5)*(x1928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1928)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1927)))+(((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1929)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x1929)))+(((sj5)*(x1928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1928)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1927)))+(((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1929)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x1929)))+(((sj5)*(x1928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1928)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x1927)))+(((IkReal(-1.00000000000000))*(cj5)*(x1927)*(x1929)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1930=IKcos(j3); +IkReal x1931=IKsin(j3); +IkReal x1932=((IkReal(1.00000000000000))*(cj4)); +IkReal x1933=((sj0)*(sj5)); +IkReal x1934=((cj0)*(cj5)); +IkReal x1935=((cj6)*(r01)); +IkReal x1936=((r00)*(sj6)); +IkReal x1937=((cj6)*(r11)); +IkReal x1938=((cj5)*(sj0)); +IkReal x1939=((cj6)*(sj4)); +IkReal x1940=((sj4)*(sj6)); +IkReal x1941=((cj4)*(cj5)); +IkReal x1942=((cj6)*(r21)); +IkReal x1943=((r20)*(sj6)); +IkReal x1944=((r10)*(sj6)); +IkReal x1945=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x1943)))+(((IkReal(-1.00000000000000))*(x1931)))+(((sj5)*(x1942)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((x1930)+(((IkReal(-1.00000000000000))*(r21)*(x1940)))+(((x1941)*(x1943)))+(((r20)*(x1939)))+(((cj4)*(r22)*(sj5)))+(((x1941)*(x1942)))); +evalcond[2]=((x1930)+(((r02)*(x1934)))+(((IkReal(-1.00000000000000))*(x1936)*(x1945)))+(((r12)*(x1938)))+(((IkReal(-1.00000000000000))*(x1935)*(x1945)))+(((IkReal(-1.00000000000000))*(x1933)*(x1937)))+(((IkReal(-1.00000000000000))*(x1933)*(x1944)))); +evalcond[3]=((x1931)+(((IkReal(-1.00000000000000))*(r12)*(x1932)*(x1933)))+(((IkReal(-1.00000000000000))*(x1932)*(x1934)*(x1936)))+(((IkReal(-1.00000000000000))*(x1932)*(x1938)*(x1944)))+(((cj0)*(r01)*(x1940)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x1932)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x1939)))+(((r11)*(sj0)*(x1940)))+(((IkReal(-1.00000000000000))*(x1932)*(x1934)*(x1935)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x1939)))+(((IkReal(-1.00000000000000))*(x1932)*(x1937)*(x1938)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1946=((IkReal(1.00000000000000))*(cj0)); +IkReal x1947=((cj4)*(sj6)); +IkReal x1948=((sj0)*(sj4)); +IkReal x1949=((cj5)*(sj6)); +IkReal x1950=((sj4)*(sj5)); +IkReal x1951=((r12)*(sj5)); +IkReal x1952=((IkReal(0.374290000000000))*(cj5)); +IkReal x1953=((r02)*(sj0)); +IkReal x1954=((r20)*(sj4)); +IkReal x1955=((IkReal(1.00000000000000))*(sj0)); +IkReal x1956=((IkReal(1.00000000000000))*(cj5)); +IkReal x1957=((cj0)*(r10)); +IkReal x1958=((cj4)*(cj6)); +IkReal x1959=((r00)*(sj0)); +IkReal x1960=((cj6)*(r21)); +IkReal x1961=((IkReal(0.374290000000000))*(sj5)); +IkReal x1962=((cj0)*(r00)); +IkReal x1963=((IkReal(0.0100000000000000))*(sj5)); +IkReal x1964=((cj0)*(r02)); +IkReal x1965=((cj5)*(sj4)); +IkReal x1966=((cj6)*(r01)); +IkReal x1967=((cj6)*(r11)); +IkReal x1968=((r01)*(sj0)); +IkReal x1969=((r10)*(sj0)); +IkReal x1970=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x1971=((sj6)*(x1961)); +IkReal x1972=((cj0)*(cj6)*(x1961)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x1956)))+(((sj5)*(x1960)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((r21)*(x1947)))+(((x1949)*(x1954)))+(((x1960)*(x1965)))+(((IkReal(-1.00000000000000))*(r20)*(x1958)))+(((r22)*(x1950)))); +evalcond[3]=((((r20)*(x1971)))+(((IkReal(-0.0100000000000000))*(r20)*(x1949)))+(((IkReal(-1.00000000000000))*(r22)*(x1963)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x1952)))+(((x1960)*(x1961)))+(((IkReal(-0.0100000000000000))*(cj5)*(x1960)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x1947)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x1958)))+(((cj6)*(x1954)))); +evalcond[5]=((((cj5)*(x1948)*(x1966)))+(((x1957)*(x1958)))+(((x1947)*(x1968)))+(((r00)*(x1948)*(x1949)))+(((IkReal(-1.00000000000000))*(r11)*(x1946)*(x1947)))+(((IkReal(-1.00000000000000))*(x1946)*(x1965)*(x1967)))+(((r02)*(sj5)*(x1948)))+(((IkReal(-1.00000000000000))*(r12)*(x1946)*(x1950)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x1946)*(x1949)))+(((IkReal(-1.00000000000000))*(r00)*(x1955)*(x1958)))); +evalcond[6]=((((x1958)*(x1969)))+(((IkReal(-1.00000000000000))*(x1946)*(x1965)*(x1966)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x1946)*(x1949)))+(((IkReal(-1.00000000000000))*(r11)*(x1947)*(x1955)))+(((IkReal(-1.00000000000000))*(r02)*(x1946)*(x1950)))+(((IkReal(-1.00000000000000))*(r10)*(x1948)*(x1949)))+(((IkReal(-1.00000000000000))*(r01)*(x1946)*(x1947)))+(((IkReal(-1.00000000000000))*(x1948)*(x1951)))+(((IkReal(-1.00000000000000))*(x1948)*(x1956)*(x1967)))+(((x1958)*(x1962)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x1961)*(x1967)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x1966)))+(((IkReal(-0.0100000000000000))*(x1949)*(x1959)))+(((cj0)*(r12)*(x1952)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1967)))+(((IkReal(-1.00000000000000))*(x1953)*(x1963)))+(((IkReal(-1.00000000000000))*(x1957)*(x1971)))+(((IkReal(-1.00000000000000))*(x1952)*(x1953)))+(((IkReal(0.0100000000000000))*(x1949)*(x1957)))+(((IkReal(0.0100000000000000))*(cj0)*(x1951)))+(((px)*(sj0)))+(((x1959)*(x1971)))+(((IkReal(-1.00000000000000))*(py)*(x1946)))+(((sj0)*(x1961)*(x1966)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((r12)*(sj0)*(x1952)))+(((x1963)*(x1964)))+(((IkReal(0.0100000000000000))*(sj0)*(x1951)))+(((IkReal(-1.00000000000000))*(px)*(x1946)))+(((IkReal(-1.00000000000000))*(sj0)*(x1961)*(x1967)))+(((IkReal(0.0100000000000000))*(x1949)*(x1969)))+(((IkReal(-1.00000000000000))*(cj0)*(x1961)*(x1966)))+(((IkReal(-1.00000000000000))*(x1969)*(x1971)))+(((IkReal(-1.00000000000000))*(py)*(x1955)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x1966)))+(((IkReal(-1.00000000000000))*(x1962)*(x1971)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x1967)))+(((IkReal(0.0100000000000000))*(x1949)*(x1962)))+(((x1952)*(x1964)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x1973=((sj0)*(sj5)); +IkReal x1974=((r00)*(sj6)); +IkReal x1975=((IkReal(1.00000000000000))*(cj5)); +IkReal x1976=((cj6)*(r11)); +IkReal x1977=((cj6)*(r01)); +IkReal x1978=((r10)*(sj6)); +IkReal x1979=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x1978)*(x1979)))+(((IkReal(-1.00000000000000))*(x1976)*(x1979)))+(((x1973)*(x1974)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1975)))+(((cj0)*(cj5)*(r12)))+(((x1973)*(x1977))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1975)))+(((x1974)*(x1979)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1975)))+(((x1973)*(x1976)))+(((x1973)*(x1978)))+(((x1977)*(x1979))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x1978)*(x1979)))+(((IkReal(-1.00000000000000))*(x1976)*(x1979)))+(((x1973)*(x1974)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1975)))+(((cj0)*(cj5)*(r12)))+(((x1973)*(x1977)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1975)))+(((x1974)*(x1979)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1975)))+(((x1973)*(x1976)))+(((x1973)*(x1978)))+(((x1977)*(x1979)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x1978)*(x1979)))+(((IkReal(-1.00000000000000))*(x1976)*(x1979)))+(((x1973)*(x1974)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x1975)))+(((cj0)*(cj5)*(r12)))+(((x1973)*(x1977)))), ((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x1975)))+(((x1974)*(x1979)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x1975)))+(((x1973)*(x1976)))+(((x1973)*(x1978)))+(((x1977)*(x1979))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x1980=IKcos(j3); +IkReal x1981=IKsin(j3); +IkReal x1982=((sj0)*(sj5)); +IkReal x1983=((r00)*(sj6)); +IkReal x1984=((cj6)*(sj0)); +IkReal x1985=((IkReal(1.00000000000000))*(cj4)); +IkReal x1986=((r00)*(sj4)); +IkReal x1987=((cj0)*(cj5)); +IkReal x1988=((cj5)*(sj0)); +IkReal x1989=((cj6)*(r11)); +IkReal x1990=((r10)*(sj6)); +IkReal x1991=((cj0)*(sj5)); +IkReal x1992=((r10)*(sj4)); +IkReal x1993=((cj4)*(cj5)*(r01)); +IkReal x1994=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x1995=((cj0)*(sj4)*(sj6)); +IkReal x1996=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x1988)))+(((x1982)*(x1983)))+(((cj6)*(r01)*(x1982)))+(((IkReal(-1.00000000000000))*(x1989)*(x1991)))+(((IkReal(-1.00000000000000))*(x1981)))+(((IkReal(-1.00000000000000))*(x1990)*(x1991)))+(((r12)*(x1987)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x1991)))+(x1980)+(((r12)*(x1988)))+(((IkReal(-1.00000000000000))*(x1982)*(x1989)))+(((IkReal(-1.00000000000000))*(x1983)*(x1991)))+(((r02)*(x1987)))+(((IkReal(-1.00000000000000))*(x1982)*(x1990)))); +evalcond[2]=((((cj4)*(x1983)*(x1988)))+(x1980)+(((r11)*(x1995)))+(((IkReal(-1.00000000000000))*(x1992)*(x1994)))+(((cj4)*(r02)*(x1982)))+(((x1984)*(x1993)))+(((IkReal(-1.00000000000000))*(r12)*(x1985)*(x1991)))+(((IkReal(-1.00000000000000))*(x1985)*(x1987)*(x1990)))+(((IkReal(-1.00000000000000))*(r01)*(x1996)))+(((IkReal(-1.00000000000000))*(x1985)*(x1987)*(x1989)))+(((x1984)*(x1986)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x1984)*(x1992)))+(x1981)+(((IkReal(-1.00000000000000))*(r02)*(x1985)*(x1991)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x1985)*(x1987)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x1984)*(x1985)))+(((IkReal(-1.00000000000000))*(x1986)*(x1994)))+(((IkReal(-1.00000000000000))*(x1983)*(x1985)*(x1987)))+(((r01)*(x1995)))+(((r11)*(x1996)))+(((IkReal(-1.00000000000000))*(x1985)*(x1988)*(x1990)))+(((IkReal(-1.00000000000000))*(r12)*(x1982)*(x1985)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x1997=((IkReal(1.00000000000000))*(cj0)); +IkReal x1998=((cj4)*(sj6)); +IkReal x1999=((sj0)*(sj4)); +IkReal x2000=((cj5)*(sj6)); +IkReal x2001=((sj4)*(sj5)); +IkReal x2002=((r12)*(sj5)); +IkReal x2003=((IkReal(0.374290000000000))*(cj5)); +IkReal x2004=((r02)*(sj0)); +IkReal x2005=((r20)*(sj4)); +IkReal x2006=((IkReal(1.00000000000000))*(sj0)); +IkReal x2007=((IkReal(1.00000000000000))*(cj5)); +IkReal x2008=((cj0)*(r10)); +IkReal x2009=((cj4)*(cj6)); +IkReal x2010=((r00)*(sj0)); +IkReal x2011=((cj6)*(r21)); +IkReal x2012=((IkReal(0.374290000000000))*(sj5)); +IkReal x2013=((cj0)*(r00)); +IkReal x2014=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2015=((cj0)*(r02)); +IkReal x2016=((cj5)*(sj4)); +IkReal x2017=((cj6)*(r01)); +IkReal x2018=((cj6)*(r11)); +IkReal x2019=((r01)*(sj0)); +IkReal x2020=((r10)*(sj0)); +IkReal x2021=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x2022=((sj6)*(x2012)); +IkReal x2023=((cj0)*(cj6)*(x2012)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x2011)))+(((IkReal(-1.00000000000000))*(r22)*(x2007)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x2001)))+(((r21)*(x1998)))+(((x2000)*(x2005)))+(((IkReal(-1.00000000000000))*(r20)*(x2009)))+(((x2011)*(x2016)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x2011)))+(((x2011)*(x2012)))+(((IkReal(-1.00000000000000))*(r22)*(x2003)))+(((IkReal(-0.0100000000000000))*(r20)*(x2000)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x2014)))+(((r20)*(x2022)))); +evalcond[4]=((((cj5)*(r21)*(x2009)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x2005)))+(((cj5)*(r20)*(x1998)))); +evalcond[5]=((((r02)*(sj5)*(x1999)))+(((x1998)*(x2019)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x1997)*(x2000)))+(((x2008)*(x2009)))+(((r00)*(x1999)*(x2000)))+(((IkReal(-1.00000000000000))*(r00)*(x2006)*(x2009)))+(((IkReal(-1.00000000000000))*(x1997)*(x2016)*(x2018)))+(((IkReal(-1.00000000000000))*(r11)*(x1997)*(x1998)))+(((IkReal(-1.00000000000000))*(r12)*(x1997)*(x2001)))+(((cj5)*(x1999)*(x2017)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r01)*(x1997)*(x1998)))+(((IkReal(-1.00000000000000))*(x1999)*(x2002)))+(((x2009)*(x2020)))+(((x2009)*(x2013)))+(((IkReal(-1.00000000000000))*(r10)*(x1999)*(x2000)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x1997)*(x2000)))+(((IkReal(-1.00000000000000))*(r02)*(x1997)*(x2001)))+(((IkReal(-1.00000000000000))*(x1999)*(x2007)*(x2018)))+(((IkReal(-1.00000000000000))*(x1997)*(x2016)*(x2017)))+(((IkReal(-1.00000000000000))*(r11)*(x1998)*(x2006)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x2008)*(x2022)))+(((IkReal(-1.00000000000000))*(cj0)*(x2012)*(x2018)))+(((IkReal(-1.00000000000000))*(x2004)*(x2014)))+(((x2010)*(x2022)))+(((IkReal(-1.00000000000000))*(py)*(x1997)))+(((IkReal(0.0100000000000000))*(cj0)*(x2002)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x2017)))+(((IkReal(-0.0100000000000000))*(x2000)*(x2010)))+(((IkReal(-1.00000000000000))*(x2003)*(x2004)))+(((cj0)*(r12)*(x2003)))+(((px)*(sj0)))+(((sj0)*(x2012)*(x2017)))+(((IkReal(0.0100000000000000))*(x2000)*(x2008)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2018)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(sj0)*(x2002)))+(((r12)*(sj0)*(x2003)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x2018)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2017)))+(((x2014)*(x2015)))+(((IkReal(-1.00000000000000))*(sj0)*(x2012)*(x2018)))+(((IkReal(0.0100000000000000))*(x2000)*(x2013)))+(((IkReal(-1.00000000000000))*(cj0)*(x2012)*(x2017)))+(((IkReal(-1.00000000000000))*(x2020)*(x2022)))+(((IkReal(-1.00000000000000))*(py)*(x2006)))+(((IkReal(-1.00000000000000))*(x2013)*(x2022)))+(((IkReal(-1.00000000000000))*(px)*(x1997)))+(((IkReal(0.0100000000000000))*(x2000)*(x2020)))+(((x2003)*(x2015)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2024=((IkReal(1.00000000000000))*(cj5)); +IkReal x2025=((r10)*(sj5)*(sj6)); +IkReal x2026=((cj6)*(sj0)*(sj5)); +IkReal x2027=((r00)*(sj5)*(sj6)); +IkReal x2028=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r01)*(x2026)))+(((r11)*(x2028)))+(((cj0)*(x2025)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2024)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x2027))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(x2027)))+(((sj0)*(x2025)))+(((r01)*(x2028)))+(((r11)*(x2026)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2024)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2024))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x2026)))+(((r11)*(x2028)))+(((cj0)*(x2025)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2024)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x2027)))))+IKsqr(((((cj0)*(x2027)))+(((sj0)*(x2025)))+(((r01)*(x2028)))+(((r11)*(x2026)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2024)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2024)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r01)*(x2026)))+(((r11)*(x2028)))+(((cj0)*(x2025)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2024)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x2027)))), ((((cj0)*(x2027)))+(((sj0)*(x2025)))+(((r01)*(x2028)))+(((r11)*(x2026)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2024)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2024))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x2029=IKcos(j3); +IkReal x2030=IKsin(j3); +IkReal x2031=((sj0)*(sj5)); +IkReal x2032=((r00)*(sj6)); +IkReal x2033=((IkReal(1.00000000000000))*(cj4)); +IkReal x2034=((cj6)*(sj0)); +IkReal x2035=((r00)*(sj4)); +IkReal x2036=((cj0)*(cj5)); +IkReal x2037=((cj6)*(r01)); +IkReal x2038=((cj5)*(sj0)); +IkReal x2039=((cj0)*(sj5)); +IkReal x2040=((cj6)*(r11)); +IkReal x2041=((r10)*(sj6)); +IkReal x2042=((r10)*(sj4)); +IkReal x2043=((cj0)*(sj4)*(sj6)); +IkReal x2044=((sj0)*(sj4)*(sj6)); +IkReal x2045=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((x2030)+(((x2031)*(x2032)))+(((IkReal(-1.00000000000000))*(r02)*(x2038)))+(((IkReal(-1.00000000000000))*(x2039)*(x2040)))+(((r12)*(x2036)))+(((x2031)*(x2037)))+(((IkReal(-1.00000000000000))*(x2039)*(x2041)))); +evalcond[1]=((x2029)+(((IkReal(-1.00000000000000))*(x2032)*(x2039)))+(((r02)*(x2036)))+(((IkReal(-1.00000000000000))*(x2031)*(x2041)))+(((IkReal(-1.00000000000000))*(x2037)*(x2039)))+(((r12)*(x2038)))+(((IkReal(-1.00000000000000))*(x2031)*(x2040)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2029)))+(((cj4)*(x2032)*(x2038)))+(((IkReal(-1.00000000000000))*(x2033)*(x2036)*(x2041)))+(((IkReal(-1.00000000000000))*(r12)*(x2033)*(x2039)))+(((IkReal(-1.00000000000000))*(x2042)*(x2045)))+(((IkReal(-1.00000000000000))*(x2033)*(x2036)*(x2040)))+(((IkReal(-1.00000000000000))*(r01)*(x2044)))+(((r11)*(x2043)))+(((cj4)*(cj5)*(r01)*(x2034)))+(((cj4)*(r02)*(x2031)))+(((x2034)*(x2035)))); +evalcond[3]=((x2030)+(((r01)*(x2043)))+(((IkReal(-1.00000000000000))*(r02)*(x2033)*(x2039)))+(((r11)*(x2044)))+(((IkReal(-1.00000000000000))*(x2034)*(x2042)))+(((IkReal(-1.00000000000000))*(r12)*(x2031)*(x2033)))+(((IkReal(-1.00000000000000))*(x2032)*(x2033)*(x2036)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x2033)*(x2034)))+(((IkReal(-1.00000000000000))*(x2033)*(x2038)*(x2041)))+(((IkReal(-1.00000000000000))*(x2033)*(x2036)*(x2037)))+(((IkReal(-1.00000000000000))*(x2035)*(x2045)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2046=((sj0)*(sj5)); +IkReal x2047=((r00)*(sj6)); +IkReal x2048=((IkReal(1.00000000000000))*(cj5)); +IkReal x2049=((cj6)*(r11)); +IkReal x2050=((cj6)*(r01)); +IkReal x2051=((cj0)*(sj5)); +IkReal x2052=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x2049)*(x2051)))+(((x2046)*(x2047)))+(((x2046)*(x2050)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2048)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2051)*(x2052))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2048)))+(((x2046)*(x2052)))+(((x2050)*(x2051)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2048)))+(((x2046)*(x2049)))+(((x2047)*(x2051))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x2049)*(x2051)))+(((x2046)*(x2047)))+(((x2046)*(x2050)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2048)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2051)*(x2052)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2048)))+(((x2046)*(x2052)))+(((x2050)*(x2051)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2048)))+(((x2046)*(x2049)))+(((x2047)*(x2051)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x2049)*(x2051)))+(((x2046)*(x2047)))+(((x2046)*(x2050)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2048)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2051)*(x2052)))))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2048)))+(((x2046)*(x2052)))+(((x2050)*(x2051)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2048)))+(((x2046)*(x2049)))+(((x2047)*(x2051))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2053=IKsin(j3); +IkReal x2054=IKcos(j3); +IkReal x2055=((sj0)*(sj5)); +IkReal x2056=((r00)*(sj6)); +IkReal x2057=((IkReal(1.00000000000000))*(cj4)); +IkReal x2058=((cj6)*(r01)); +IkReal x2059=((cj0)*(cj5)); +IkReal x2060=((cj5)*(sj0)); +IkReal x2061=((cj6)*(r11)); +IkReal x2062=((cj6)*(sj4)); +IkReal x2063=((cj0)*(sj5)); +IkReal x2064=((cj4)*(cj5)); +IkReal x2065=((cj6)*(r21)); +IkReal x2066=((r20)*(sj6)); +IkReal x2067=((r10)*(sj6)); +IkReal x2068=((IkReal(1.00000000000000))*(cj0)); +IkReal x2069=((cj0)*(sj4)*(sj6)); +IkReal x2070=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x2066)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x2053)))+(((sj5)*(x2065)))); +evalcond[1]=((((r20)*(x2062)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x2064)*(x2066)))+(((IkReal(-1.00000000000000))*(cj2)*(x2054)))+(((cj4)*(r22)*(sj5)))+(((x2064)*(x2065)))); +evalcond[2]=((((x2055)*(x2056)))+(((IkReal(-1.00000000000000))*(x2063)*(x2067)))+(((IkReal(-1.00000000000000))*(r02)*(x2060)))+(((IkReal(-1.00000000000000))*(sj2)*(x2053)))+(((x2055)*(x2058)))+(((r12)*(x2059)))+(((IkReal(-1.00000000000000))*(x2061)*(x2063)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x2055)*(x2061)))+(((r02)*(x2059)))+(((IkReal(-1.00000000000000))*(x2058)*(x2063)))+(x2054)+(((IkReal(-1.00000000000000))*(x2056)*(x2063)))+(((r12)*(x2060)))+(((IkReal(-1.00000000000000))*(x2055)*(x2067)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x2070)))+(((IkReal(-1.00000000000000))*(r12)*(x2057)*(x2063)))+(((r00)*(sj0)*(x2062)))+(((cj4)*(r02)*(x2055)))+(((IkReal(-1.00000000000000))*(r10)*(x2062)*(x2068)))+(((IkReal(-1.00000000000000))*(x2057)*(x2059)*(x2061)))+(((r11)*(x2069)))+(((cj4)*(x2058)*(x2060)))+(((IkReal(-1.00000000000000))*(x2057)*(x2059)*(x2067)))+(((cj4)*(x2056)*(x2060)))+(((sj2)*(x2054)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2057)*(x2058)*(x2059)))+(((IkReal(-1.00000000000000))*(x2057)*(x2060)*(x2061)))+(x2053)+(((IkReal(-1.00000000000000))*(r12)*(x2055)*(x2057)))+(((r01)*(x2069)))+(((IkReal(-1.00000000000000))*(r00)*(x2062)*(x2068)))+(((r11)*(x2070)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2062)))+(((IkReal(-1.00000000000000))*(x2057)*(x2060)*(x2067)))+(((IkReal(-1.00000000000000))*(x2056)*(x2057)*(x2059)))+(((IkReal(-1.00000000000000))*(r02)*(x2057)*(x2063)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2071=((cj6)*(sj5)); +IkReal x2072=((IkReal(1.00000000000000))*(cj5)); +IkReal x2073=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2071)))+(((IkReal(-1.00000000000000))*(r20)*(x2073)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r11)*(sj0)*(x2071)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2072)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2072)))+(((cj0)*(r01)*(x2071)))+(((cj0)*(r00)*(x2073)))+(((r10)*(sj0)*(x2073))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2071)))+(((IkReal(-1.00000000000000))*(r20)*(x2073)))+(((cj5)*(r22)))))))+IKsqr(((((r11)*(sj0)*(x2071)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2072)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2072)))+(((cj0)*(r01)*(x2071)))+(((cj0)*(r00)*(x2073)))+(((r10)*(sj0)*(x2073)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2071)))+(((IkReal(-1.00000000000000))*(r20)*(x2073)))+(((cj5)*(r22)))))), ((((r11)*(sj0)*(x2071)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2072)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2072)))+(((cj0)*(r01)*(x2071)))+(((cj0)*(r00)*(x2073)))+(((r10)*(sj0)*(x2073))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2074=IKsin(j3); +IkReal x2075=IKcos(j3); +IkReal x2076=((sj0)*(sj5)); +IkReal x2077=((r00)*(sj6)); +IkReal x2078=((IkReal(1.00000000000000))*(cj4)); +IkReal x2079=((cj6)*(r01)); +IkReal x2080=((cj0)*(cj5)); +IkReal x2081=((cj5)*(sj0)); +IkReal x2082=((cj6)*(r11)); +IkReal x2083=((cj6)*(sj4)); +IkReal x2084=((cj0)*(sj5)); +IkReal x2085=((cj4)*(cj5)); +IkReal x2086=((cj6)*(r21)); +IkReal x2087=((r20)*(sj6)); +IkReal x2088=((r10)*(sj6)); +IkReal x2089=((IkReal(1.00000000000000))*(cj0)); +IkReal x2090=((cj0)*(sj4)*(sj6)); +IkReal x2091=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x2087)))+(((cj2)*(x2074)))+(((sj5)*(x2086)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj2)*(x2075)))+(((x2085)*(x2087)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x2085)*(x2086)))+(((r20)*(x2083)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2084)*(x2088)))+(((IkReal(-1.00000000000000))*(sj2)*(x2074)))+(((x2076)*(x2079)))+(((IkReal(-1.00000000000000))*(x2082)*(x2084)))+(((x2076)*(x2077)))+(((r12)*(x2080)))+(((IkReal(-1.00000000000000))*(r02)*(x2081)))); +evalcond[3]=((x2075)+(((IkReal(-1.00000000000000))*(x2076)*(x2082)))+(((r12)*(x2081)))+(((r02)*(x2080)))+(((IkReal(-1.00000000000000))*(x2077)*(x2084)))+(((IkReal(-1.00000000000000))*(x2076)*(x2088)))+(((IkReal(-1.00000000000000))*(x2079)*(x2084)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x2083)*(x2089)))+(((IkReal(-1.00000000000000))*(x2078)*(x2080)*(x2082)))+(((r00)*(sj0)*(x2083)))+(((IkReal(-1.00000000000000))*(r12)*(x2078)*(x2084)))+(((cj4)*(r02)*(x2076)))+(((r11)*(x2090)))+(((sj2)*(x2075)))+(((IkReal(-1.00000000000000))*(x2078)*(x2080)*(x2088)))+(((cj4)*(x2077)*(x2081)))+(((cj4)*(x2079)*(x2081)))+(((IkReal(-1.00000000000000))*(r01)*(x2091)))); +evalcond[5]=((x2074)+(((r01)*(x2090)))+(((IkReal(-1.00000000000000))*(x2078)*(x2079)*(x2080)))+(((IkReal(-1.00000000000000))*(x2078)*(x2081)*(x2082)))+(((IkReal(-1.00000000000000))*(x2077)*(x2078)*(x2080)))+(((IkReal(-1.00000000000000))*(r12)*(x2076)*(x2078)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2083)))+(((r11)*(x2091)))+(((IkReal(-1.00000000000000))*(r00)*(x2083)*(x2089)))+(((IkReal(-1.00000000000000))*(r02)*(x2078)*(x2084)))+(((IkReal(-1.00000000000000))*(x2078)*(x2081)*(x2088)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2092=((IkReal(1.00000000000000))*(r21)); +IkReal x2093=((cj4)*(cj5)); +IkReal x2094=((r20)*(sj6)); +if( IKabs(((gconst56)*(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2092)))+(((IkReal(-1.00000000000000))*(sj5)*(x2094)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst56)*(((((x2093)*(x2094)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2092)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x2093))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst56)*(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2092)))+(((IkReal(-1.00000000000000))*(sj5)*(x2094)))+(((cj5)*(r22)))))), ((gconst56)*(((((x2093)*(x2094)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2092)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x2093))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2095=IKsin(j3); +IkReal x2096=IKcos(j3); +IkReal x2097=((sj0)*(sj5)); +IkReal x2098=((r00)*(sj6)); +IkReal x2099=((IkReal(1.00000000000000))*(cj4)); +IkReal x2100=((cj6)*(r01)); +IkReal x2101=((cj0)*(cj5)); +IkReal x2102=((cj5)*(sj0)); +IkReal x2103=((cj6)*(r11)); +IkReal x2104=((cj6)*(sj4)); +IkReal x2105=((cj0)*(sj5)); +IkReal x2106=((cj4)*(cj5)); +IkReal x2107=((cj6)*(r21)); +IkReal x2108=((r20)*(sj6)); +IkReal x2109=((r10)*(sj6)); +IkReal x2110=((IkReal(1.00000000000000))*(cj0)); +IkReal x2111=((cj0)*(sj4)*(sj6)); +IkReal x2112=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x2108)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x2095)))+(((sj5)*(x2107)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj2)*(x2096)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x2106)*(x2108)))+(((cj4)*(r22)*(sj5)))+(((x2106)*(x2107)))+(((r20)*(x2104)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x2095)))+(((IkReal(-1.00000000000000))*(x2103)*(x2105)))+(((IkReal(-1.00000000000000))*(x2105)*(x2109)))+(((x2097)*(x2098)))+(((r12)*(x2101)))+(((x2097)*(x2100)))+(((IkReal(-1.00000000000000))*(r02)*(x2102)))); +evalcond[3]=((x2096)+(((IkReal(-1.00000000000000))*(x2098)*(x2105)))+(((IkReal(-1.00000000000000))*(x2100)*(x2105)))+(((r12)*(x2102)))+(((r02)*(x2101)))+(((IkReal(-1.00000000000000))*(x2097)*(x2103)))+(((IkReal(-1.00000000000000))*(x2097)*(x2109)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x2099)*(x2101)*(x2103)))+(((IkReal(-1.00000000000000))*(r10)*(x2104)*(x2110)))+(((sj2)*(x2096)))+(((cj4)*(r02)*(x2097)))+(((cj4)*(x2100)*(x2102)))+(((cj4)*(x2098)*(x2102)))+(((IkReal(-1.00000000000000))*(r12)*(x2099)*(x2105)))+(((IkReal(-1.00000000000000))*(x2099)*(x2101)*(x2109)))+(((IkReal(-1.00000000000000))*(r01)*(x2112)))+(((r11)*(x2111)))+(((r00)*(sj0)*(x2104)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2099)*(x2100)*(x2101)))+(((IkReal(-1.00000000000000))*(r00)*(x2104)*(x2110)))+(((r01)*(x2111)))+(((IkReal(-1.00000000000000))*(x2098)*(x2099)*(x2101)))+(x2095)+(((r11)*(x2112)))+(((IkReal(-1.00000000000000))*(r12)*(x2097)*(x2099)))+(((IkReal(-1.00000000000000))*(r02)*(x2099)*(x2105)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2104)))+(((IkReal(-1.00000000000000))*(x2099)*(x2102)*(x2109)))+(((IkReal(-1.00000000000000))*(x2099)*(x2102)*(x2103)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2113=((r11)*(sj0)); +IkReal x2114=((cj0)*(r01)); +IkReal x2115=((cj0)*(sj2)); +IkReal x2116=((sj0)*(sj2)); +IkReal x2117=((cj5)*(sj6)); +IkReal x2118=((IkReal(1.00000000000000))*(sj2)*(sj6)); +IkReal x2119=((cj5)*(cj6)*(sj2)); +if( IKabs(((gconst53)*(((((cj6)*(r00)*(x2115)))+(((IkReal(-1.00000000000000))*(x2114)*(x2118)))+(((cj6)*(r10)*(x2116)))+(((IkReal(-1.00000000000000))*(x2113)*(x2118))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst53)*(((((x2114)*(x2119)))+(((r02)*(sj5)*(x2115)))+(((r00)*(x2115)*(x2117)))+(((r10)*(x2116)*(x2117)))+(((x2113)*(x2119)))+(((r12)*(sj5)*(x2116))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst53)*(((((cj6)*(r00)*(x2115)))+(((IkReal(-1.00000000000000))*(x2114)*(x2118)))+(((cj6)*(r10)*(x2116)))+(((IkReal(-1.00000000000000))*(x2113)*(x2118)))))), ((gconst53)*(((((x2114)*(x2119)))+(((r02)*(sj5)*(x2115)))+(((r00)*(x2115)*(x2117)))+(((r10)*(x2116)*(x2117)))+(((x2113)*(x2119)))+(((r12)*(sj5)*(x2116))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x2120=IKsin(j4); +IkReal x2121=IKcos(j4); +IkReal x2122=((r00)*(sj6)); +IkReal x2123=((cj6)*(r01)); +IkReal x2124=((IkReal(1.00000000000000))*(cj0)); +IkReal x2125=((IkReal(1.00000000000000))*(sj0)); +IkReal x2126=((r10)*(sj6)); +IkReal x2127=((sj5)*(x2120)); +IkReal x2128=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x2129=((cj5)*(x2120)); +IkReal x2130=((cj6)*(x2121)); +IkReal x2131=((sj0)*(x2129)); +IkReal x2132=((r01)*(sj6)*(x2121)); +IkReal x2133=((r11)*(sj6)*(x2121)); +evalcond[0]=((sj2)+(((cj6)*(r21)*(x2129)))+(((IkReal(-1.00000000000000))*(r20)*(x2130)))+(((r21)*(sj6)*(x2121)))+(((r20)*(sj6)*(x2129)))+(((r22)*(x2127)))); +evalcond[1]=((((sj0)*(x2132)))+(((x2123)*(x2131)))+(((IkReal(-1.00000000000000))*(r12)*(x2124)*(x2127)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2124)*(x2129)))+(((IkReal(-1.00000000000000))*(r00)*(x2125)*(x2130)))+(((IkReal(-1.00000000000000))*(x2124)*(x2126)*(x2129)))+(((cj0)*(r10)*(x2130)))+(cj2)+(((r02)*(sj0)*(x2127)))+(((IkReal(-1.00000000000000))*(x2124)*(x2133)))+(((x2122)*(x2131)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2125)*(x2133)))+(((IkReal(-1.00000000000000))*(x2125)*(x2126)*(x2129)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2125)*(x2129)))+(((IkReal(-1.00000000000000))*(x2123)*(x2124)*(x2129)))+(((IkReal(-1.00000000000000))*(x2124)*(x2132)))+(((IkReal(-1.00000000000000))*(r12)*(x2125)*(x2127)))+(((IkReal(-1.00000000000000))*(r02)*(x2124)*(x2127)))+(((IkReal(-1.00000000000000))*(x2122)*(x2124)*(x2129)))+(((r10)*(sj0)*(x2130)))+(((cj0)*(r00)*(x2130)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst56; +gconst56=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x2134=((cj5)*(sj4)); +IkReal x2135=((IkReal(1.00000000000000))*(sj6)); +IkReal x2136=((r10)*(sj0)); +IkReal x2137=((sj4)*(sj5)); +IkReal x2138=((cj5)*(cj6)); +IkReal x2139=((r01)*(sj0)); +IkReal x2140=((IkReal(1.00000000000000))*(r02)); +IkReal x2141=((IkReal(0.374290000000000))*(cj0)); +IkReal x2142=((cj5)*(r12)); +IkReal x2143=((cj6)*(sj5)); +IkReal x2144=((cj0)*(r11)); +IkReal x2145=((cj5)*(sj0)); +IkReal x2146=((r20)*(sj6)); +IkReal x2147=((IkReal(1.00000000000000))*(sj0)); +IkReal x2148=((cj4)*(cj5)); +IkReal x2149=((IkReal(1.00000000000000))*(cj6)); +IkReal x2150=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2151=((sj5)*(sj6)); +IkReal x2152=((cj0)*(r10)); +IkReal x2153=((cj4)*(cj6)); +IkReal x2154=((cj0)*(r01)); +IkReal x2155=((IkReal(1.00000000000000))*(cj4)); +IkReal x2156=((cj0)*(r00)); +IkReal x2157=((IkReal(0.374290000000000))*(sj0)); +IkReal x2158=((cj0)*(r12)); +IkReal x2159=((IkReal(0.374290000000000))*(sj5)); +IkReal x2160=((cj4)*(sj6)); +IkReal x2161=((IkReal(1.00000000000000))*(cj0)); +IkReal x2162=((r02)*(sj0)); +IkReal x2163=((IkReal(0.0100000000000000))*(cj5)); +IkReal x2164=((r11)*(sj0)); +IkReal x2165=((r00)*(sj0)*(sj6)); +IkReal x2166=((r00)*(x2153)); +IkReal x2167=((sj6)*(x2163)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x2137)))+(((x2134)*(x2146)))+(((cj6)*(r21)*(x2134)))+(((r21)*(x2160)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x2149)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(0.374290000000000))*(r21)*(x2143)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x2150)))+(((x2146)*(x2159)))+(((IkReal(-1.00000000000000))*(x2146)*(x2163)))+(((IkReal(-0.0100000000000000))*(r21)*(x2138)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x2143)*(x2144)))+(((r00)*(sj0)*(x2151)))+(((IkReal(-1.00000000000000))*(x2140)*(x2145)))+(((x2139)*(x2143)))+(((cj0)*(x2142)))+(((IkReal(-1.00000000000000))*(sj5)*(x2135)*(x2152)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x2147)*(x2166)))+(((IkReal(-1.00000000000000))*(cj4)*(x2135)*(x2144)))+(((IkReal(-1.00000000000000))*(x2134)*(x2144)*(x2149)))+(((IkReal(-1.00000000000000))*(x2137)*(x2158)))+(((x2139)*(x2160)))+(((cj6)*(x2134)*(x2139)))+(((x2134)*(x2165)))+(((x2152)*(x2153)))+(((x2137)*(x2162)))+(((IkReal(-1.00000000000000))*(x2134)*(x2135)*(x2152)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x2135)*(x2139)))+(((sj4)*(sj6)*(x2144)))+(((cj4)*(sj5)*(x2162)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x2135)*(x2148)*(x2152)))+(((IkReal(-1.00000000000000))*(sj4)*(x2149)*(x2152)))+(((IkReal(-1.00000000000000))*(x2138)*(x2144)*(x2155)))+(((cj4)*(x2138)*(x2139)))+(((r00)*(x2145)*(x2160)))+(((IkReal(-1.00000000000000))*(sj5)*(x2155)*(x2158)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x2134)*(x2135)*(x2136)))+(((IkReal(-1.00000000000000))*(r12)*(x2137)*(x2147)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2134)*(x2147)))+(((x2136)*(x2153)))+(((x2153)*(x2156)))+(((IkReal(-1.00000000000000))*(cj4)*(x2135)*(x2154)))+(((IkReal(-1.00000000000000))*(x2134)*(x2135)*(x2156)))+(((IkReal(-1.00000000000000))*(cj0)*(x2137)*(x2140)))+(((IkReal(-1.00000000000000))*(x2134)*(x2149)*(x2154)))+(((IkReal(-1.00000000000000))*(cj4)*(x2135)*(x2164)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x2141)*(x2143)))+(((IkReal(-0.374290000000000))*(r02)*(x2145)))+(((IkReal(0.374290000000000))*(x2139)*(x2143)))+(((x2152)*(x2167)))+(((IkReal(0.0100000000000000))*(x2138)*(x2144)))+(((x2150)*(x2158)))+(((IkReal(-1.00000000000000))*(py)*(x2161)))+(((IkReal(-1.00000000000000))*(r10)*(x2141)*(x2151)))+(((IkReal(-0.0100000000000000))*(x2138)*(x2139)))+(((x2141)*(x2142)))+(((px)*(sj0)))+(((r00)*(x2151)*(x2157)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x2145)))+(((IkReal(-1.00000000000000))*(x2150)*(x2162)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x2136)*(x2167)))+(((cj5)*(r02)*(x2141)))+(((IkReal(-1.00000000000000))*(py)*(x2147)))+(((IkReal(0.0100000000000000))*(x2138)*(x2164)))+(((r12)*(sj0)*(x2150)))+(((IkReal(0.0100000000000000))*(x2138)*(x2154)))+(((IkReal(-1.00000000000000))*(r01)*(x2141)*(x2143)))+(((x2142)*(x2157)))+(((IkReal(-1.00000000000000))*(r00)*(x2141)*(x2151)))+(((IkReal(-1.00000000000000))*(r11)*(x2143)*(x2157)))+(((IkReal(-0.374290000000000))*(x2136)*(x2151)))+(((cj0)*(r02)*(x2150)))+(((x2156)*(x2167)))+(((IkReal(-1.00000000000000))*(px)*(x2161)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2168=((IkReal(1.00000000000000))*(r21)); +IkReal x2169=((cj4)*(cj5)); +IkReal x2170=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x2170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2168))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r20)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2168)))+(((cj4)*(r22)*(sj5)))+(((x2169)*(x2170)))+(((cj6)*(r21)*(x2169))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x2170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2168)))))+IKsqr(((((cj6)*(r20)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2168)))+(((cj4)*(r22)*(sj5)))+(((x2169)*(x2170)))+(((cj6)*(r21)*(x2169)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x2170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2168)))), ((((cj6)*(r20)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2168)))+(((cj4)*(r22)*(sj5)))+(((x2169)*(x2170)))+(((cj6)*(r21)*(x2169))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x2171=IKcos(j3); +IkReal x2172=IKsin(j3); +IkReal x2173=((IkReal(1.00000000000000))*(cj4)); +IkReal x2174=((sj0)*(sj5)); +IkReal x2175=((cj0)*(cj5)); +IkReal x2176=((cj6)*(r01)); +IkReal x2177=((r00)*(sj6)); +IkReal x2178=((cj6)*(r11)); +IkReal x2179=((cj5)*(sj0)); +IkReal x2180=((cj6)*(sj4)); +IkReal x2181=((sj4)*(sj6)); +IkReal x2182=((cj4)*(cj5)); +IkReal x2183=((cj6)*(r21)); +IkReal x2184=((r20)*(sj6)); +IkReal x2185=((r10)*(sj6)); +IkReal x2186=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((x2172)+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x2184)))+(((sj5)*(x2183)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x2181)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x2171)))+(((x2182)*(x2183)))+(((x2182)*(x2184)))+(((r20)*(x2180)))); +evalcond[2]=((x2171)+(((IkReal(-1.00000000000000))*(x2176)*(x2186)))+(((r02)*(x2175)))+(((IkReal(-1.00000000000000))*(x2174)*(x2185)))+(((IkReal(-1.00000000000000))*(x2174)*(x2178)))+(((r12)*(x2179)))+(((IkReal(-1.00000000000000))*(x2177)*(x2186)))); +evalcond[3]=((((cj0)*(r01)*(x2181)))+(x2172)+(((r11)*(sj0)*(x2181)))+(((IkReal(-1.00000000000000))*(x2173)*(x2179)*(x2185)))+(((IkReal(-1.00000000000000))*(x2173)*(x2175)*(x2177)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x2180)))+(((IkReal(-1.00000000000000))*(x2173)*(x2178)*(x2179)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x2173)))+(((IkReal(-1.00000000000000))*(r12)*(x2173)*(x2174)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2180)))+(((IkReal(-1.00000000000000))*(x2173)*(x2175)*(x2176)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x2187=((cj5)*(sj4)); +IkReal x2188=((IkReal(1.00000000000000))*(sj6)); +IkReal x2189=((r10)*(sj0)); +IkReal x2190=((sj4)*(sj5)); +IkReal x2191=((cj5)*(cj6)); +IkReal x2192=((r01)*(sj0)); +IkReal x2193=((IkReal(1.00000000000000))*(r02)); +IkReal x2194=((IkReal(0.374290000000000))*(cj0)); +IkReal x2195=((cj5)*(r12)); +IkReal x2196=((cj6)*(sj5)); +IkReal x2197=((cj0)*(r11)); +IkReal x2198=((cj5)*(sj0)); +IkReal x2199=((r20)*(sj6)); +IkReal x2200=((IkReal(1.00000000000000))*(sj0)); +IkReal x2201=((cj4)*(cj5)); +IkReal x2202=((IkReal(1.00000000000000))*(cj6)); +IkReal x2203=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2204=((sj5)*(sj6)); +IkReal x2205=((cj0)*(r10)); +IkReal x2206=((cj4)*(cj6)); +IkReal x2207=((cj0)*(r01)); +IkReal x2208=((IkReal(1.00000000000000))*(cj4)); +IkReal x2209=((cj0)*(r00)); +IkReal x2210=((IkReal(0.374290000000000))*(sj0)); +IkReal x2211=((cj0)*(r12)); +IkReal x2212=((IkReal(0.374290000000000))*(sj5)); +IkReal x2213=((cj4)*(sj6)); +IkReal x2214=((IkReal(1.00000000000000))*(cj0)); +IkReal x2215=((r02)*(sj0)); +IkReal x2216=((IkReal(0.0100000000000000))*(cj5)); +IkReal x2217=((r11)*(sj0)); +IkReal x2218=((r00)*(sj0)*(sj6)); +IkReal x2219=((r00)*(x2206)); +IkReal x2220=((sj6)*(x2216)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x2190)))+(((r21)*(x2213)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x2202)))+(((x2187)*(x2199)))+(((cj6)*(r21)*(x2187)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x2203)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x2191)))+(((IkReal(0.374290000000000))*(r21)*(x2196)))+(((IkReal(-1.00000000000000))*(x2199)*(x2216)))+(((x2199)*(x2212)))+(pz)); +evalcond[3]=((((cj0)*(x2195)))+(((IkReal(-1.00000000000000))*(x2196)*(x2197)))+(((r00)*(sj0)*(x2204)))+(((x2192)*(x2196)))+(((IkReal(-1.00000000000000))*(x2193)*(x2198)))+(((IkReal(-1.00000000000000))*(sj5)*(x2188)*(x2205)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x2192)*(x2213)))+(((IkReal(-1.00000000000000))*(x2187)*(x2197)*(x2202)))+(((IkReal(-1.00000000000000))*(x2190)*(x2211)))+(((IkReal(-1.00000000000000))*(x2200)*(x2219)))+(((x2187)*(x2218)))+(((IkReal(-1.00000000000000))*(cj4)*(x2188)*(x2197)))+(((x2190)*(x2215)))+(((IkReal(-1.00000000000000))*(x2187)*(x2188)*(x2205)))+(((cj6)*(x2187)*(x2192)))+(((x2205)*(x2206)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x2202)*(x2205)))+(((IkReal(-1.00000000000000))*(x2191)*(x2197)*(x2208)))+(((sj4)*(sj6)*(x2197)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(x2188)*(x2192)))+(((cj4)*(x2191)*(x2192)))+(((cj4)*(sj5)*(x2215)))+(((r00)*(x2198)*(x2213)))+(((IkReal(-1.00000000000000))*(x2188)*(x2201)*(x2205)))+(((IkReal(-1.00000000000000))*(sj5)*(x2208)*(x2211)))); +evalcond[6]=((((x2189)*(x2206)))+(((IkReal(-1.00000000000000))*(cj4)*(x2188)*(x2217)))+(((IkReal(-1.00000000000000))*(cj0)*(x2190)*(x2193)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2187)*(x2200)))+(((x2206)*(x2209)))+(((IkReal(-1.00000000000000))*(cj4)*(x2188)*(x2207)))+(((IkReal(-1.00000000000000))*(x2187)*(x2202)*(x2207)))+(((IkReal(-1.00000000000000))*(x2187)*(x2188)*(x2209)))+(((IkReal(-1.00000000000000))*(r12)*(x2190)*(x2200)))+(((IkReal(-1.00000000000000))*(x2187)*(x2188)*(x2189)))); +evalcond[7]=((((x2205)*(x2220)))+(((IkReal(-0.374290000000000))*(r02)*(x2198)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x2198)))+(((IkReal(-1.00000000000000))*(r11)*(x2194)*(x2196)))+(((x2203)*(x2211)))+(((IkReal(0.0100000000000000))*(x2191)*(x2197)))+(((IkReal(-1.00000000000000))*(r10)*(x2194)*(x2204)))+(((IkReal(-1.00000000000000))*(py)*(x2214)))+(((IkReal(-0.0100000000000000))*(x2191)*(x2192)))+(((IkReal(0.374290000000000))*(x2192)*(x2196)))+(((r00)*(x2204)*(x2210)))+(((IkReal(-1.00000000000000))*(x2203)*(x2215)))+(((px)*(sj0)))+(((x2194)*(x2195)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(r00)*(x2194)*(x2204)))+(((cj5)*(r02)*(x2194)))+(((cj0)*(r02)*(x2203)))+(((r12)*(sj0)*(x2203)))+(((IkReal(-0.374290000000000))*(x2189)*(x2204)))+(((x2195)*(x2210)))+(((x2209)*(x2220)))+(((IkReal(-1.00000000000000))*(r01)*(x2194)*(x2196)))+(((IkReal(0.0100000000000000))*(x2191)*(x2217)))+(((IkReal(-1.00000000000000))*(r11)*(x2196)*(x2210)))+(((IkReal(0.0100000000000000))*(x2191)*(x2207)))+(((IkReal(-1.00000000000000))*(py)*(x2200)))+(((x2189)*(x2220)))+(((IkReal(-1.00000000000000))*(px)*(x2214)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2221=((IkReal(1.00000000000000))*(cj4)); +IkReal x2222=((cj6)*(r21)); +IkReal x2223=((r20)*(sj6)); +if( IKabs(((((sj5)*(x2223)))+(((sj5)*(x2222)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2223)))+(((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2222)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2221)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x2223)))+(((sj5)*(x2222)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2223)))+(((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2222)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2221)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x2223)))+(((sj5)*(x2222)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2223)))+(((IkReal(-1.00000000000000))*(cj5)*(x2221)*(x2222)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2221)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x2224=IKcos(j3); +IkReal x2225=IKsin(j3); +IkReal x2226=((IkReal(1.00000000000000))*(cj4)); +IkReal x2227=((sj0)*(sj5)); +IkReal x2228=((cj0)*(cj5)); +IkReal x2229=((cj6)*(r01)); +IkReal x2230=((r00)*(sj6)); +IkReal x2231=((cj6)*(r11)); +IkReal x2232=((cj5)*(sj0)); +IkReal x2233=((cj6)*(sj4)); +IkReal x2234=((sj4)*(sj6)); +IkReal x2235=((cj4)*(cj5)); +IkReal x2236=((cj6)*(r21)); +IkReal x2237=((r20)*(sj6)); +IkReal x2238=((r10)*(sj6)); +IkReal x2239=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x2236)))+(((sj5)*(x2237)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x2225)))); +evalcond[1]=((x2224)+(((r20)*(x2233)))+(((IkReal(-1.00000000000000))*(r21)*(x2234)))+(((x2235)*(x2237)))+(((cj4)*(r22)*(sj5)))+(((x2235)*(x2236)))); +evalcond[2]=((x2224)+(((IkReal(-1.00000000000000))*(x2230)*(x2239)))+(((IkReal(-1.00000000000000))*(x2227)*(x2238)))+(((IkReal(-1.00000000000000))*(x2227)*(x2231)))+(((IkReal(-1.00000000000000))*(x2229)*(x2239)))+(((r12)*(x2232)))+(((r02)*(x2228)))); +evalcond[3]=((x2225)+(((IkReal(-1.00000000000000))*(x2226)*(x2228)*(x2229)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x2226)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2233)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x2233)))+(((IkReal(-1.00000000000000))*(x2226)*(x2228)*(x2230)))+(((IkReal(-1.00000000000000))*(x2226)*(x2232)*(x2238)))+(((IkReal(-1.00000000000000))*(r12)*(x2226)*(x2227)))+(((IkReal(-1.00000000000000))*(x2226)*(x2231)*(x2232)))+(((cj0)*(r01)*(x2234)))+(((r11)*(sj0)*(x2234)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x2240=((IkReal(1.00000000000000))*(cj0)); +IkReal x2241=((cj4)*(sj6)); +IkReal x2242=((sj0)*(sj4)); +IkReal x2243=((cj5)*(sj6)); +IkReal x2244=((sj4)*(sj5)); +IkReal x2245=((r12)*(sj5)); +IkReal x2246=((IkReal(0.374290000000000))*(cj5)); +IkReal x2247=((r02)*(sj0)); +IkReal x2248=((r20)*(sj4)); +IkReal x2249=((IkReal(1.00000000000000))*(sj0)); +IkReal x2250=((IkReal(1.00000000000000))*(cj5)); +IkReal x2251=((cj0)*(r10)); +IkReal x2252=((cj4)*(cj6)); +IkReal x2253=((r00)*(sj0)); +IkReal x2254=((cj6)*(r21)); +IkReal x2255=((IkReal(0.374290000000000))*(sj5)); +IkReal x2256=((cj0)*(r00)); +IkReal x2257=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2258=((cj0)*(r02)); +IkReal x2259=((cj5)*(sj4)); +IkReal x2260=((cj6)*(r01)); +IkReal x2261=((cj6)*(r11)); +IkReal x2262=((r01)*(sj0)); +IkReal x2263=((r10)*(sj0)); +IkReal x2264=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x2265=((sj6)*(x2255)); +IkReal x2266=((cj0)*(cj6)*(x2255)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x2254)))+(((IkReal(-1.00000000000000))*(r22)*(x2250)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x2254)*(x2259)))+(((IkReal(-1.00000000000000))*(r20)*(x2252)))+(((x2243)*(x2248)))+(((r21)*(x2241)))+(((r22)*(x2244)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x2254)))+(((IkReal(-0.0100000000000000))*(r20)*(x2243)))+(((IkReal(-1.00000000000000))*(r22)*(x2246)))+(((r20)*(x2265)))+(((x2254)*(x2255)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x2257)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x2248)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x2241)))+(((cj5)*(r21)*(x2252)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r11)*(x2240)*(x2241)))+(((x2241)*(x2262)))+(((r02)*(sj5)*(x2242)))+(((IkReal(-1.00000000000000))*(r12)*(x2240)*(x2244)))+(((IkReal(-1.00000000000000))*(r00)*(x2249)*(x2252)))+(((x2251)*(x2252)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x2240)*(x2243)))+(((IkReal(-1.00000000000000))*(x2240)*(x2259)*(x2261)))+(((r00)*(x2242)*(x2243)))+(((cj5)*(x2242)*(x2260)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r01)*(x2240)*(x2241)))+(((IkReal(-1.00000000000000))*(r11)*(x2241)*(x2249)))+(((x2252)*(x2256)))+(((IkReal(-1.00000000000000))*(x2240)*(x2259)*(x2260)))+(((IkReal(-1.00000000000000))*(r10)*(x2242)*(x2243)))+(((IkReal(-1.00000000000000))*(x2242)*(x2245)))+(((x2252)*(x2263)))+(((IkReal(-1.00000000000000))*(r02)*(x2240)*(x2244)))+(((IkReal(-1.00000000000000))*(x2242)*(x2250)*(x2261)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x2240)*(x2243)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x2255)*(x2261)))+(((IkReal(-1.00000000000000))*(x2246)*(x2247)))+(((IkReal(0.0100000000000000))*(x2243)*(x2251)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x2260)))+(((IkReal(-1.00000000000000))*(x2251)*(x2265)))+(((cj0)*(r12)*(x2246)))+(((IkReal(-1.00000000000000))*(x2247)*(x2257)))+(((IkReal(-0.0100000000000000))*(x2243)*(x2253)))+(((IkReal(0.0100000000000000))*(cj0)*(x2245)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2261)))+(((sj0)*(x2255)*(x2260)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x2240)))+(((x2253)*(x2265)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2260)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x2261)))+(((IkReal(0.0100000000000000))*(sj0)*(x2245)))+(((IkReal(-1.00000000000000))*(x2256)*(x2265)))+(((IkReal(-1.00000000000000))*(px)*(x2240)))+(((IkReal(-1.00000000000000))*(x2263)*(x2265)))+(((IkReal(-1.00000000000000))*(py)*(x2249)))+(((IkReal(0.0100000000000000))*(x2243)*(x2256)))+(((x2246)*(x2258)))+(((IkReal(-1.00000000000000))*(cj0)*(x2255)*(x2260)))+(((x2257)*(x2258)))+(((IkReal(-1.00000000000000))*(sj0)*(x2255)*(x2261)))+(((IkReal(0.0100000000000000))*(x2243)*(x2263)))+(((r12)*(sj0)*(x2246)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2267=((sj0)*(sj5)); +IkReal x2268=((r00)*(sj6)); +IkReal x2269=((IkReal(1.00000000000000))*(cj5)); +IkReal x2270=((cj6)*(r11)); +IkReal x2271=((cj6)*(r01)); +IkReal x2272=((r10)*(sj6)); +IkReal x2273=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2269)))+(((x2267)*(x2268)))+(((x2267)*(x2271)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2272)*(x2273)))+(((IkReal(-1.00000000000000))*(x2270)*(x2273))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x2271)*(x2273)))+(((x2267)*(x2270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2269)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2269)))+(((x2268)*(x2273)))+(((x2267)*(x2272))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2269)))+(((x2267)*(x2268)))+(((x2267)*(x2271)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2272)*(x2273)))+(((IkReal(-1.00000000000000))*(x2270)*(x2273)))))+IKsqr(((((x2271)*(x2273)))+(((x2267)*(x2270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2269)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2269)))+(((x2268)*(x2273)))+(((x2267)*(x2272)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2269)))+(((x2267)*(x2268)))+(((x2267)*(x2271)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2272)*(x2273)))+(((IkReal(-1.00000000000000))*(x2270)*(x2273)))), ((((x2271)*(x2273)))+(((x2267)*(x2270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2269)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2269)))+(((x2268)*(x2273)))+(((x2267)*(x2272))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x2274=IKcos(j3); +IkReal x2275=IKsin(j3); +IkReal x2276=((sj0)*(sj5)); +IkReal x2277=((r00)*(sj6)); +IkReal x2278=((cj6)*(sj0)); +IkReal x2279=((IkReal(1.00000000000000))*(cj4)); +IkReal x2280=((r00)*(sj4)); +IkReal x2281=((cj0)*(cj5)); +IkReal x2282=((cj5)*(sj0)); +IkReal x2283=((cj6)*(r11)); +IkReal x2284=((r10)*(sj6)); +IkReal x2285=((cj0)*(sj5)); +IkReal x2286=((r10)*(sj4)); +IkReal x2287=((cj4)*(cj5)*(r01)); +IkReal x2288=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x2289=((cj0)*(sj4)*(sj6)); +IkReal x2290=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x2282)))+(((cj6)*(r01)*(x2276)))+(((IkReal(-1.00000000000000))*(x2283)*(x2285)))+(((IkReal(-1.00000000000000))*(x2275)))+(((r12)*(x2281)))+(((x2276)*(x2277)))+(((IkReal(-1.00000000000000))*(x2284)*(x2285)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x2277)*(x2285)))+(((IkReal(-1.00000000000000))*(x2276)*(x2283)))+(((r12)*(x2282)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x2285)))+(x2274)+(((r02)*(x2281)))+(((IkReal(-1.00000000000000))*(x2276)*(x2284)))); +evalcond[2]=((((cj4)*(x2277)*(x2282)))+(((x2278)*(x2280)))+(((cj4)*(r02)*(x2276)))+(((IkReal(-1.00000000000000))*(x2279)*(x2281)*(x2284)))+(((r11)*(x2289)))+(((IkReal(-1.00000000000000))*(x2286)*(x2288)))+(x2274)+(((IkReal(-1.00000000000000))*(r01)*(x2290)))+(((IkReal(-1.00000000000000))*(x2279)*(x2281)*(x2283)))+(((IkReal(-1.00000000000000))*(r12)*(x2279)*(x2285)))+(((x2278)*(x2287)))); +evalcond[3]=((((r01)*(x2289)))+(((r11)*(x2290)))+(((IkReal(-1.00000000000000))*(x2279)*(x2282)*(x2284)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x2279)*(x2281)))+(((IkReal(-1.00000000000000))*(r02)*(x2279)*(x2285)))+(((IkReal(-1.00000000000000))*(x2280)*(x2288)))+(((IkReal(-1.00000000000000))*(x2278)*(x2286)))+(x2275)+(((IkReal(-1.00000000000000))*(r12)*(x2276)*(x2279)))+(((IkReal(-1.00000000000000))*(x2277)*(x2279)*(x2281)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x2278)*(x2279)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x2291=((IkReal(1.00000000000000))*(cj0)); +IkReal x2292=((cj4)*(sj6)); +IkReal x2293=((sj0)*(sj4)); +IkReal x2294=((cj5)*(sj6)); +IkReal x2295=((sj4)*(sj5)); +IkReal x2296=((r12)*(sj5)); +IkReal x2297=((IkReal(0.374290000000000))*(cj5)); +IkReal x2298=((r02)*(sj0)); +IkReal x2299=((r20)*(sj4)); +IkReal x2300=((IkReal(1.00000000000000))*(sj0)); +IkReal x2301=((IkReal(1.00000000000000))*(cj5)); +IkReal x2302=((cj0)*(r10)); +IkReal x2303=((cj4)*(cj6)); +IkReal x2304=((r00)*(sj0)); +IkReal x2305=((cj6)*(r21)); +IkReal x2306=((IkReal(0.374290000000000))*(sj5)); +IkReal x2307=((cj0)*(r00)); +IkReal x2308=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2309=((cj0)*(r02)); +IkReal x2310=((cj5)*(sj4)); +IkReal x2311=((cj6)*(r01)); +IkReal x2312=((cj6)*(r11)); +IkReal x2313=((r01)*(sj0)); +IkReal x2314=((r10)*(sj0)); +IkReal x2315=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x2316=((sj6)*(x2306)); +IkReal x2317=((cj0)*(cj6)*(x2306)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x2305)))+(((r20)*(sj5)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(x2301)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x2295)))+(((x2294)*(x2299)))+(((r21)*(x2292)))+(((x2305)*(x2310)))+(((IkReal(-1.00000000000000))*(r20)*(x2303)))); +evalcond[3]=((((x2305)*(x2306)))+(((IkReal(-1.00000000000000))*(r22)*(x2308)))+(((IkReal(-1.00000000000000))*(r22)*(x2297)))+(((r20)*(x2316)))+(((IkReal(-0.0100000000000000))*(cj5)*(x2305)))+(((IkReal(-0.0100000000000000))*(r20)*(x2294)))+(pz)); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x2292)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x2299)))+(((cj5)*(r21)*(x2303)))); +evalcond[5]=((((r02)*(sj5)*(x2293)))+(((x2302)*(x2303)))+(((r00)*(x2293)*(x2294)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x2291)*(x2294)))+(((IkReal(-1.00000000000000))*(r00)*(x2300)*(x2303)))+(((IkReal(-1.00000000000000))*(r12)*(x2291)*(x2295)))+(((IkReal(-1.00000000000000))*(x2291)*(x2310)*(x2312)))+(((cj5)*(x2293)*(x2311)))+(((IkReal(-1.00000000000000))*(r11)*(x2291)*(x2292)))+(((x2292)*(x2313)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r02)*(x2291)*(x2295)))+(((IkReal(-1.00000000000000))*(r11)*(x2292)*(x2300)))+(((IkReal(-1.00000000000000))*(x2291)*(x2310)*(x2311)))+(((x2303)*(x2314)))+(((IkReal(-1.00000000000000))*(x2293)*(x2296)))+(((IkReal(-1.00000000000000))*(x2293)*(x2301)*(x2312)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x2291)*(x2294)))+(((IkReal(-1.00000000000000))*(r10)*(x2293)*(x2294)))+(((x2303)*(x2307)))+(((IkReal(-1.00000000000000))*(r01)*(x2291)*(x2292)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((x2304)*(x2316)))+(((IkReal(-1.00000000000000))*(x2302)*(x2316)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x2311)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2312)))+(((IkReal(0.0100000000000000))*(cj0)*(x2296)))+(((sj0)*(x2306)*(x2311)))+(((cj0)*(r12)*(x2297)))+(((IkReal(-1.00000000000000))*(cj0)*(x2306)*(x2312)))+(((IkReal(0.0100000000000000))*(x2294)*(x2302)))+(((IkReal(-0.0100000000000000))*(x2294)*(x2304)))+(((IkReal(-1.00000000000000))*(py)*(x2291)))+(((IkReal(-1.00000000000000))*(x2298)*(x2308)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x2297)*(x2298)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(x2294)*(x2314)))+(((IkReal(-1.00000000000000))*(x2314)*(x2316)))+(((IkReal(0.0100000000000000))*(sj0)*(x2296)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x2312)))+(((r12)*(sj0)*(x2297)))+(((IkReal(-1.00000000000000))*(cj0)*(x2306)*(x2311)))+(((IkReal(-1.00000000000000))*(px)*(x2291)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x2311)))+(((IkReal(-1.00000000000000))*(x2307)*(x2316)))+(((IkReal(-1.00000000000000))*(py)*(x2300)))+(((x2297)*(x2309)))+(((IkReal(-1.00000000000000))*(sj0)*(x2306)*(x2312)))+(((x2308)*(x2309)))+(((IkReal(0.0100000000000000))*(x2294)*(x2307)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2318=((IkReal(1.00000000000000))*(cj5)); +IkReal x2319=((r10)*(sj5)*(sj6)); +IkReal x2320=((cj6)*(sj0)*(sj5)); +IkReal x2321=((r00)*(sj5)*(sj6)); +IkReal x2322=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2318)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x2319)))+(((IkReal(-1.00000000000000))*(r01)*(x2320)))+(((IkReal(-1.00000000000000))*(sj0)*(x2321)))+(((r11)*(x2322))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2318)))+(((cj0)*(x2321)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2318)))+(((sj0)*(x2319)))+(((r11)*(x2320)))+(((r01)*(x2322))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2318)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x2319)))+(((IkReal(-1.00000000000000))*(r01)*(x2320)))+(((IkReal(-1.00000000000000))*(sj0)*(x2321)))+(((r11)*(x2322)))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2318)))+(((cj0)*(x2321)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2318)))+(((sj0)*(x2319)))+(((r11)*(x2320)))+(((r01)*(x2322)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2318)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x2319)))+(((IkReal(-1.00000000000000))*(r01)*(x2320)))+(((IkReal(-1.00000000000000))*(sj0)*(x2321)))+(((r11)*(x2322)))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2318)))+(((cj0)*(x2321)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2318)))+(((sj0)*(x2319)))+(((r11)*(x2320)))+(((r01)*(x2322))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x2323=IKcos(j3); +IkReal x2324=IKsin(j3); +IkReal x2325=((sj0)*(sj5)); +IkReal x2326=((r00)*(sj6)); +IkReal x2327=((IkReal(1.00000000000000))*(cj4)); +IkReal x2328=((cj6)*(sj0)); +IkReal x2329=((r00)*(sj4)); +IkReal x2330=((cj0)*(cj5)); +IkReal x2331=((cj6)*(r01)); +IkReal x2332=((cj5)*(sj0)); +IkReal x2333=((cj0)*(sj5)); +IkReal x2334=((cj6)*(r11)); +IkReal x2335=((r10)*(sj6)); +IkReal x2336=((r10)*(sj4)); +IkReal x2337=((cj0)*(sj4)*(sj6)); +IkReal x2338=((sj0)*(sj4)*(sj6)); +IkReal x2339=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((r12)*(x2330)))+(x2324)+(((IkReal(-1.00000000000000))*(r02)*(x2332)))+(((IkReal(-1.00000000000000))*(x2333)*(x2334)))+(((x2325)*(x2326)))+(((x2325)*(x2331)))+(((IkReal(-1.00000000000000))*(x2333)*(x2335)))); +evalcond[1]=((x2323)+(((IkReal(-1.00000000000000))*(x2325)*(x2335)))+(((IkReal(-1.00000000000000))*(x2331)*(x2333)))+(((IkReal(-1.00000000000000))*(x2325)*(x2334)))+(((r02)*(x2330)))+(((r12)*(x2332)))+(((IkReal(-1.00000000000000))*(x2326)*(x2333)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2336)*(x2339)))+(((IkReal(-1.00000000000000))*(r12)*(x2327)*(x2333)))+(((x2328)*(x2329)))+(((IkReal(-1.00000000000000))*(x2327)*(x2330)*(x2334)))+(((IkReal(-1.00000000000000))*(x2323)))+(((IkReal(-1.00000000000000))*(r01)*(x2338)))+(((IkReal(-1.00000000000000))*(x2327)*(x2330)*(x2335)))+(((cj4)*(x2326)*(x2332)))+(((r11)*(x2337)))+(((cj4)*(cj5)*(r01)*(x2328)))+(((cj4)*(r02)*(x2325)))); +evalcond[3]=((x2324)+(((IkReal(-1.00000000000000))*(r02)*(x2327)*(x2333)))+(((IkReal(-1.00000000000000))*(x2326)*(x2327)*(x2330)))+(((IkReal(-1.00000000000000))*(x2327)*(x2330)*(x2331)))+(((IkReal(-1.00000000000000))*(x2329)*(x2339)))+(((IkReal(-1.00000000000000))*(x2328)*(x2336)))+(((IkReal(-1.00000000000000))*(x2327)*(x2332)*(x2335)))+(((IkReal(-1.00000000000000))*(r12)*(x2325)*(x2327)))+(((r11)*(x2338)))+(((r01)*(x2337)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x2327)*(x2328)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2340=((sj0)*(sj5)); +IkReal x2341=((r00)*(sj6)); +IkReal x2342=((IkReal(1.00000000000000))*(cj5)); +IkReal x2343=((cj6)*(r11)); +IkReal x2344=((cj6)*(r01)); +IkReal x2345=((cj0)*(sj5)); +IkReal x2346=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x2340)*(x2341)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2342)))+(((IkReal(-1.00000000000000))*(x2343)*(x2345)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2345)*(x2346)))+(((x2340)*(x2344))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2342)))+(((x2341)*(x2345)))+(((x2340)*(x2343)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2342)))+(((x2340)*(x2346)))+(((x2344)*(x2345))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x2340)*(x2341)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2342)))+(((IkReal(-1.00000000000000))*(x2343)*(x2345)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2345)*(x2346)))+(((x2340)*(x2344)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2342)))+(((x2341)*(x2345)))+(((x2340)*(x2343)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2342)))+(((x2340)*(x2346)))+(((x2344)*(x2345)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x2340)*(x2341)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2342)))+(((IkReal(-1.00000000000000))*(x2343)*(x2345)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x2345)*(x2346)))+(((x2340)*(x2344)))))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2342)))+(((x2341)*(x2345)))+(((x2340)*(x2343)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2342)))+(((x2340)*(x2346)))+(((x2344)*(x2345))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2347=IKsin(j3); +IkReal x2348=IKcos(j3); +IkReal x2349=((sj0)*(sj5)); +IkReal x2350=((r00)*(sj6)); +IkReal x2351=((IkReal(1.00000000000000))*(cj4)); +IkReal x2352=((cj6)*(r01)); +IkReal x2353=((cj0)*(cj5)); +IkReal x2354=((cj5)*(sj0)); +IkReal x2355=((cj6)*(r11)); +IkReal x2356=((cj6)*(sj4)); +IkReal x2357=((cj0)*(sj5)); +IkReal x2358=((cj4)*(cj5)); +IkReal x2359=((cj6)*(r21)); +IkReal x2360=((r20)*(sj6)); +IkReal x2361=((r10)*(sj6)); +IkReal x2362=((IkReal(1.00000000000000))*(cj0)); +IkReal x2363=((cj0)*(sj4)*(sj6)); +IkReal x2364=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj2)*(x2347)))+(((sj5)*(x2360)))+(((sj5)*(x2359)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj2)*(x2348)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x2356)))+(((cj4)*(r22)*(sj5)))+(((x2358)*(x2359)))+(((x2358)*(x2360)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2357)*(x2361)))+(((IkReal(-1.00000000000000))*(sj2)*(x2347)))+(((IkReal(-1.00000000000000))*(x2355)*(x2357)))+(((r12)*(x2353)))+(((x2349)*(x2350)))+(((IkReal(-1.00000000000000))*(r02)*(x2354)))+(((x2349)*(x2352)))); +evalcond[3]=((((r02)*(x2353)))+(((IkReal(-1.00000000000000))*(x2349)*(x2361)))+(((IkReal(-1.00000000000000))*(x2350)*(x2357)))+(x2348)+(((r12)*(x2354)))+(((IkReal(-1.00000000000000))*(x2349)*(x2355)))+(((IkReal(-1.00000000000000))*(x2352)*(x2357)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x2351)*(x2357)))+(((cj4)*(x2350)*(x2354)))+(((IkReal(-1.00000000000000))*(x2351)*(x2353)*(x2361)))+(((r00)*(sj0)*(x2356)))+(((IkReal(-1.00000000000000))*(r10)*(x2356)*(x2362)))+(((cj4)*(x2352)*(x2354)))+(((IkReal(-1.00000000000000))*(x2351)*(x2353)*(x2355)))+(((r11)*(x2363)))+(((cj4)*(r02)*(x2349)))+(((sj2)*(x2348)))+(((IkReal(-1.00000000000000))*(r01)*(x2364)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2351)*(x2354)*(x2355)))+(((IkReal(-1.00000000000000))*(x2351)*(x2354)*(x2361)))+(((r11)*(x2364)))+(((IkReal(-1.00000000000000))*(r12)*(x2349)*(x2351)))+(x2347)+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2356)))+(((IkReal(-1.00000000000000))*(x2351)*(x2352)*(x2353)))+(((IkReal(-1.00000000000000))*(r02)*(x2351)*(x2357)))+(((IkReal(-1.00000000000000))*(r00)*(x2356)*(x2362)))+(((r01)*(x2363)))+(((IkReal(-1.00000000000000))*(x2350)*(x2351)*(x2353)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2365=((cj6)*(sj5)); +IkReal x2366=((IkReal(1.00000000000000))*(cj5)); +IkReal x2367=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2365)))+(((IkReal(-1.00000000000000))*(r20)*(x2367)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(r01)*(x2365)))+(((r10)*(sj0)*(x2367)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2366)))+(((r11)*(sj0)*(x2365)))+(((cj0)*(r00)*(x2367)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2366))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2365)))+(((IkReal(-1.00000000000000))*(r20)*(x2367)))+(((cj5)*(r22)))))))+IKsqr(((((cj0)*(r01)*(x2365)))+(((r10)*(sj0)*(x2367)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2366)))+(((r11)*(sj0)*(x2365)))+(((cj0)*(r00)*(x2367)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2366)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x2365)))+(((IkReal(-1.00000000000000))*(r20)*(x2367)))+(((cj5)*(r22)))))), ((((cj0)*(r01)*(x2365)))+(((r10)*(sj0)*(x2367)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2366)))+(((r11)*(sj0)*(x2365)))+(((cj0)*(r00)*(x2367)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2366))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2368=IKsin(j3); +IkReal x2369=IKcos(j3); +IkReal x2370=((sj0)*(sj5)); +IkReal x2371=((r00)*(sj6)); +IkReal x2372=((IkReal(1.00000000000000))*(cj4)); +IkReal x2373=((cj6)*(r01)); +IkReal x2374=((cj0)*(cj5)); +IkReal x2375=((cj5)*(sj0)); +IkReal x2376=((cj6)*(r11)); +IkReal x2377=((cj6)*(sj4)); +IkReal x2378=((cj0)*(sj5)); +IkReal x2379=((cj4)*(cj5)); +IkReal x2380=((cj6)*(r21)); +IkReal x2381=((r20)*(sj6)); +IkReal x2382=((r10)*(sj6)); +IkReal x2383=((IkReal(1.00000000000000))*(cj0)); +IkReal x2384=((cj0)*(sj4)*(sj6)); +IkReal x2385=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x2380)))+(((sj5)*(x2381)))+(((cj2)*(x2368)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj2)*(x2369)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x2377)))+(((x2379)*(x2381)))+(((x2379)*(x2380)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2376)*(x2378)))+(((r12)*(x2374)))+(((x2370)*(x2373)))+(((IkReal(-1.00000000000000))*(x2378)*(x2382)))+(((IkReal(-1.00000000000000))*(r02)*(x2375)))+(((x2370)*(x2371)))+(((IkReal(-1.00000000000000))*(sj2)*(x2368)))); +evalcond[3]=((x2369)+(((IkReal(-1.00000000000000))*(x2370)*(x2382)))+(((r02)*(x2374)))+(((IkReal(-1.00000000000000))*(x2371)*(x2378)))+(((IkReal(-1.00000000000000))*(x2370)*(x2376)))+(((r12)*(x2375)))+(((IkReal(-1.00000000000000))*(x2373)*(x2378)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x2372)*(x2378)))+(((IkReal(-1.00000000000000))*(x2372)*(x2374)*(x2376)))+(((r11)*(x2384)))+(((cj4)*(x2373)*(x2375)))+(((cj4)*(r02)*(x2370)))+(((sj2)*(x2369)))+(((IkReal(-1.00000000000000))*(r01)*(x2385)))+(((r00)*(sj0)*(x2377)))+(((IkReal(-1.00000000000000))*(r10)*(x2377)*(x2383)))+(((IkReal(-1.00000000000000))*(x2372)*(x2374)*(x2382)))+(((cj4)*(x2371)*(x2375)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2372)*(x2373)*(x2374)))+(x2368)+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2377)))+(((IkReal(-1.00000000000000))*(x2372)*(x2375)*(x2382)))+(((IkReal(-1.00000000000000))*(r00)*(x2377)*(x2383)))+(((r01)*(x2384)))+(((IkReal(-1.00000000000000))*(x2371)*(x2372)*(x2374)))+(((IkReal(-1.00000000000000))*(x2372)*(x2375)*(x2376)))+(((IkReal(-1.00000000000000))*(r12)*(x2370)*(x2372)))+(((IkReal(-1.00000000000000))*(r02)*(x2372)*(x2378)))+(((r11)*(x2385)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2386=((IkReal(1.00000000000000))*(r21)); +IkReal x2387=((cj4)*(cj5)); +IkReal x2388=((r20)*(sj6)); +if( IKabs(((gconst56)*(((((IkReal(-1.00000000000000))*(sj5)*(x2388)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2386)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst56)*(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x2387)))+(((x2387)*(x2388)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2386))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst56)*(((((IkReal(-1.00000000000000))*(sj5)*(x2388)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x2386)))+(((cj5)*(r22)))))), ((gconst56)*(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x2387)))+(((x2387)*(x2388)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x2386))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2389=IKsin(j3); +IkReal x2390=IKcos(j3); +IkReal x2391=((sj0)*(sj5)); +IkReal x2392=((r00)*(sj6)); +IkReal x2393=((IkReal(1.00000000000000))*(cj4)); +IkReal x2394=((cj6)*(r01)); +IkReal x2395=((cj0)*(cj5)); +IkReal x2396=((cj5)*(sj0)); +IkReal x2397=((cj6)*(r11)); +IkReal x2398=((cj6)*(sj4)); +IkReal x2399=((cj0)*(sj5)); +IkReal x2400=((cj4)*(cj5)); +IkReal x2401=((cj6)*(r21)); +IkReal x2402=((r20)*(sj6)); +IkReal x2403=((r10)*(sj6)); +IkReal x2404=((IkReal(1.00000000000000))*(cj0)); +IkReal x2405=((cj0)*(sj4)*(sj6)); +IkReal x2406=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x2389)))+(((sj5)*(x2401)))+(((sj5)*(x2402)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x2398)))+(((x2400)*(x2402)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj2)*(x2390)))+(((x2400)*(x2401)))); +evalcond[2]=((((x2391)*(x2392)))+(((IkReal(-1.00000000000000))*(r02)*(x2396)))+(((IkReal(-1.00000000000000))*(x2399)*(x2403)))+(((IkReal(-1.00000000000000))*(sj2)*(x2389)))+(((IkReal(-1.00000000000000))*(x2397)*(x2399)))+(((r12)*(x2395)))+(((x2391)*(x2394)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x2391)*(x2403)))+(((r12)*(x2396)))+(((r02)*(x2395)))+(((IkReal(-1.00000000000000))*(x2392)*(x2399)))+(x2390)+(((IkReal(-1.00000000000000))*(x2394)*(x2399)))+(((IkReal(-1.00000000000000))*(x2391)*(x2397)))); +evalcond[4]=((((cj4)*(r02)*(x2391)))+(((sj2)*(x2390)))+(((cj4)*(x2392)*(x2396)))+(((IkReal(-1.00000000000000))*(r01)*(x2406)))+(((cj4)*(x2394)*(x2396)))+(((IkReal(-1.00000000000000))*(x2393)*(x2395)*(x2397)))+(((r11)*(x2405)))+(((IkReal(-1.00000000000000))*(r10)*(x2398)*(x2404)))+(((IkReal(-1.00000000000000))*(x2393)*(x2395)*(x2403)))+(((IkReal(-1.00000000000000))*(r12)*(x2393)*(x2399)))+(((r00)*(sj0)*(x2398)))); +evalcond[5]=((x2389)+(((IkReal(-1.00000000000000))*(r00)*(x2398)*(x2404)))+(((r01)*(x2405)))+(((IkReal(-1.00000000000000))*(x2393)*(x2394)*(x2395)))+(((IkReal(-1.00000000000000))*(r12)*(x2391)*(x2393)))+(((IkReal(-1.00000000000000))*(x2393)*(x2396)*(x2397)))+(((IkReal(-1.00000000000000))*(x2393)*(x2396)*(x2403)))+(((r11)*(x2406)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x2398)))+(((IkReal(-1.00000000000000))*(x2392)*(x2393)*(x2395)))+(((IkReal(-1.00000000000000))*(r02)*(x2393)*(x2399)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} +} +} + +} else +{ +IkReal x2407=((r20)*(sj6)); +IkReal x2408=((IkReal(0.0100000000000000))*(cj5)); +IkReal x2409=((IkReal(0.374290000000000))*(sj5)); +IkReal x2410=((cj6)*(r21)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(x2408)*(x2410)))+(((IkReal(-1.00000000000000))*(x2407)*(x2408)))+(((x2407)*(x2409)))+(((IkReal(-0.0100000000000000))*(r22)*(sj5)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x2409)*(x2410)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 ) +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x2411=((IkReal(0.144927536231884))*(cj0)); +IkReal x2412=((r02)*(sj5)); +IkReal x2413=((IkReal(14.4927536231884))*(cj0)); +IkReal x2414=((cj5)*(cj6)); +IkReal x2415=((cj5)*(sj6)); +IkReal x2416=((IkReal(5.42449275362319))*(sj0)); +IkReal x2417=((cj5)*(r12)); +IkReal x2418=((IkReal(14.4927536231884))*(sj0)); +IkReal x2419=((IkReal(0.144927536231884))*(sj0)); +IkReal x2420=((sj5)*(sj6)); +IkReal x2421=((IkReal(5.42449275362319))*(cj0)); +IkReal x2422=((r12)*(sj5)); +IkReal x2423=((cj5)*(r02)); +IkReal x2424=((cj6)*(r11)*(sj5)); +IkReal x2425=((IkReal(5.42449275362319))*(cj6)*(r01)*(sj5)); +if( IKabs(((((r10)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(px)*(x2418)))+(((IkReal(-1.00000000000000))*(x2411)*(x2422)))+(((r01)*(x2414)*(x2419)))+(((py)*(x2413)))+(((x2421)*(x2424)))+(((x2412)*(x2419)))+(((IkReal(-1.00000000000000))*(r11)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2416)))+(((IkReal(-1.00000000000000))*(r10)*(x2411)*(x2415)))+(((r00)*(x2415)*(x2419)))+(((IkReal(-1.00000000000000))*(x2417)*(x2421)))+(((x2416)*(x2423))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((IkReal(1.00000000000000))+(((x2411)*(x2412)))+(((IkReal(-1.00000000000000))*(px)*(x2413)))+(((r00)*(x2411)*(x2415)))+(((r11)*(x2414)*(x2419)))+(((r10)*(x2415)*(x2419)))+(((x2421)*(x2423)))+(((x2416)*(x2417)))+(((r01)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(x2416)*(x2424)))+(((x2419)*(x2422)))+(((IkReal(-1.00000000000000))*(r10)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(py)*(x2418))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r10)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(px)*(x2418)))+(((IkReal(-1.00000000000000))*(x2411)*(x2422)))+(((r01)*(x2414)*(x2419)))+(((py)*(x2413)))+(((x2421)*(x2424)))+(((x2412)*(x2419)))+(((IkReal(-1.00000000000000))*(r11)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2416)))+(((IkReal(-1.00000000000000))*(r10)*(x2411)*(x2415)))+(((r00)*(x2415)*(x2419)))+(((IkReal(-1.00000000000000))*(x2417)*(x2421)))+(((x2416)*(x2423)))))+IKsqr(((IkReal(1.00000000000000))+(((x2411)*(x2412)))+(((IkReal(-1.00000000000000))*(px)*(x2413)))+(((r00)*(x2411)*(x2415)))+(((r11)*(x2414)*(x2419)))+(((r10)*(x2415)*(x2419)))+(((x2421)*(x2423)))+(((x2416)*(x2417)))+(((r01)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(x2416)*(x2424)))+(((x2419)*(x2422)))+(((IkReal(-1.00000000000000))*(r10)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(py)*(x2418)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((r10)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(px)*(x2418)))+(((IkReal(-1.00000000000000))*(x2411)*(x2422)))+(((r01)*(x2414)*(x2419)))+(((py)*(x2413)))+(((x2421)*(x2424)))+(((x2412)*(x2419)))+(((IkReal(-1.00000000000000))*(r11)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2416)))+(((IkReal(-1.00000000000000))*(r10)*(x2411)*(x2415)))+(((r00)*(x2415)*(x2419)))+(((IkReal(-1.00000000000000))*(x2417)*(x2421)))+(((x2416)*(x2423)))), ((IkReal(1.00000000000000))+(((x2411)*(x2412)))+(((IkReal(-1.00000000000000))*(px)*(x2413)))+(((r00)*(x2411)*(x2415)))+(((r11)*(x2414)*(x2419)))+(((r10)*(x2415)*(x2419)))+(((x2421)*(x2423)))+(((x2416)*(x2417)))+(((r01)*(x2411)*(x2414)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(sj5)*(x2421)))+(((IkReal(-1.00000000000000))*(r00)*(x2420)*(x2421)))+(((IkReal(-1.00000000000000))*(x2416)*(x2424)))+(((x2419)*(x2422)))+(((IkReal(-1.00000000000000))*(r10)*(x2416)*(x2420)))+(((IkReal(-1.00000000000000))*(py)*(x2418))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[2]; +IkReal x2426=((IkReal(0.374290000000000))*(sj0)); +IkReal x2427=((cj5)*(r02)); +IkReal x2428=((IkReal(0.0100000000000000))*(cj0)); +IkReal x2429=((cj5)*(cj6)); +IkReal x2430=((r02)*(sj5)); +IkReal x2431=((cj5)*(sj6)); +IkReal x2432=((IkReal(1.00000000000000))*(py)); +IkReal x2433=((cj6)*(sj5)); +IkReal x2434=((IkReal(0.0100000000000000))*(sj0)); +IkReal x2435=((sj5)*(sj6)); +IkReal x2436=((cj5)*(r12)); +IkReal x2437=((IkReal(0.374290000000000))*(cj0)); +IkReal x2438=((r12)*(sj5)); +IkReal x2439=((x2433)*(x2437)); +IkReal x2440=((x2435)*(x2437)); +evalcond[0]=((((x2428)*(x2438)))+(((IkReal(-1.00000000000000))*(r10)*(x2440)))+(((IkReal(-1.00000000000000))*(r00)*(x2431)*(x2434)))+(((IkReal(-1.00000000000000))*(r11)*(x2439)))+(((IkReal(-1.00000000000000))*(r01)*(x2429)*(x2434)))+(((r01)*(x2426)*(x2433)))+(((IkReal(-1.00000000000000))*(x2426)*(x2427)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((r10)*(x2428)*(x2431)))+(((r00)*(x2426)*(x2435)))+(((px)*(sj0)))+(((r11)*(x2428)*(x2429)))+(((IkReal(-1.00000000000000))*(cj0)*(x2432)))+(((IkReal(-1.00000000000000))*(x2430)*(x2434)))+(((x2436)*(x2437)))); +evalcond[1]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x2434)*(x2438)))+(((IkReal(-0.0690000000000000))*(IKcos(j2))))+(((r00)*(x2428)*(x2431)))+(((x2426)*(x2436)))+(((r10)*(x2431)*(x2434)))+(((x2427)*(x2437)))+(((IkReal(-1.00000000000000))*(r00)*(x2440)))+(((IkReal(-1.00000000000000))*(r01)*(x2439)))+(((IkReal(-1.00000000000000))*(r10)*(x2426)*(x2435)))+(((r11)*(x2429)*(x2434)))+(((x2428)*(x2430)))+(((r01)*(x2428)*(x2429)))+(((IkReal(-1.00000000000000))*(r11)*(x2426)*(x2433)))+(((IkReal(-1.00000000000000))*(sj0)*(x2432)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst65; +IkReal x2441=(cj6)*(cj6); +IkReal x2442=(sj6)*(sj6); +IkReal x2443=((IkReal(1.00000000000000))*(r21)); +IkReal x2444=((cj6)*(r20)); +IkReal x2445=((r22)*(sj5)); +IkReal x2446=((r01)*(sj0)); +IkReal x2447=((r00)*(sj0)); +IkReal x2448=((cj0)*(r10)); +IkReal x2449=((r02)*(sj0)*(sj5)); +IkReal x2450=((cj5)*(x2441)); +IkReal x2451=((cj0)*(r12)*(sj5)); +IkReal x2452=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x2453=((cj5)*(x2442)); +IkReal x2454=((r20)*(x2453)); +gconst65=IKsign(((((IkReal(-1.00000000000000))*(cj6)*(x2445)*(x2447)))+(((sj6)*(x2445)*(x2446)))+(((r21)*(x2448)*(x2450)))+(((IkReal(-1.00000000000000))*(x2443)*(x2447)*(x2453)))+(((x2446)*(x2454)))+(((IkReal(-1.00000000000000))*(x2443)*(x2447)*(x2450)))+(((r21)*(x2448)*(x2453)))+(((IkReal(-1.00000000000000))*(x2444)*(x2451)))+(((IkReal(-1.00000000000000))*(sj6)*(x2445)*(x2452)))+(((r20)*(x2446)*(x2450)))+(((IkReal(-1.00000000000000))*(x2452)*(x2454)))+(((IkReal(-1.00000000000000))*(r20)*(x2450)*(x2452)))+(((x2444)*(x2449)))+(((IkReal(-1.00000000000000))*(sj6)*(x2443)*(x2449)))+(((r21)*(sj6)*(x2451)))+(((cj6)*(x2445)*(x2448))))); +IkReal x2455=(cj6)*(cj6); +IkReal x2456=(sj6)*(sj6); +IkReal x2457=((IkReal(1.00000000000000))*(r21)); +IkReal x2458=((cj6)*(r20)); +IkReal x2459=((r22)*(sj5)); +IkReal x2460=((r01)*(sj0)); +IkReal x2461=((r00)*(sj0)); +IkReal x2462=((cj0)*(r10)); +IkReal x2463=((r02)*(sj0)*(sj5)); +IkReal x2464=((cj5)*(x2455)); +IkReal x2465=((cj0)*(r12)*(sj5)); +IkReal x2466=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x2467=((cj5)*(x2456)); +IkReal x2468=((r20)*(x2467)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x2458)*(x2465)))+(((r21)*(sj6)*(x2465)))+(((IkReal(-1.00000000000000))*(x2457)*(x2461)*(x2467)))+(((x2458)*(x2463)))+(((IkReal(-1.00000000000000))*(sj6)*(x2459)*(x2466)))+(((IkReal(-1.00000000000000))*(x2466)*(x2468)))+(((cj6)*(x2459)*(x2462)))+(((IkReal(-1.00000000000000))*(x2457)*(x2461)*(x2464)))+(((r20)*(x2460)*(x2464)))+(((r21)*(x2462)*(x2467)))+(((sj6)*(x2459)*(x2460)))+(((IkReal(-1.00000000000000))*(cj6)*(x2459)*(x2461)))+(((IkReal(-1.00000000000000))*(r20)*(x2464)*(x2466)))+(((IkReal(-1.00000000000000))*(sj6)*(x2457)*(x2463)))+(((r21)*(x2462)*(x2464)))+(((x2460)*(x2468)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst66; +IkReal x2469=(sj6)*(sj6); +IkReal x2470=(cj6)*(cj6); +IkReal x2471=((r10)*(sj0)); +IkReal x2472=((r22)*(sj5)); +IkReal x2473=((cj0)*(cj5)); +IkReal x2474=((IkReal(1.00000000000000))*(r20)); +IkReal x2475=((cj0)*(sj6)); +IkReal x2476=((r21)*(sj5)); +IkReal x2477=((sj0)*(sj6)); +IkReal x2478=((cj6)*(sj5)); +IkReal x2479=((r21)*(x2470)); +IkReal x2480=((cj5)*(r11)*(sj0)); +IkReal x2481=((r21)*(x2469)); +gconst66=IKsign(((((r12)*(x2476)*(x2477)))+(((IkReal(-1.00000000000000))*(x2470)*(x2474)*(x2480)))+(((IkReal(-1.00000000000000))*(r01)*(x2469)*(x2473)*(x2474)))+(((IkReal(-1.00000000000000))*(r01)*(x2472)*(x2475)))+(((r00)*(x2473)*(x2481)))+(((cj5)*(x2471)*(x2481)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2474)*(x2478)))+(((r02)*(x2475)*(x2476)))+(((IkReal(-1.00000000000000))*(x2469)*(x2474)*(x2480)))+(((cj5)*(x2471)*(x2479)))+(((r00)*(x2473)*(x2479)))+(((IkReal(-1.00000000000000))*(r11)*(x2472)*(x2477)))+(((cj0)*(cj6)*(r00)*(x2472)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2474)*(x2478)))+(((IkReal(-1.00000000000000))*(r01)*(x2470)*(x2473)*(x2474)))+(((cj6)*(x2471)*(x2472))))); +IkReal x2482=(sj6)*(sj6); +IkReal x2483=(cj6)*(cj6); +IkReal x2484=((r10)*(sj0)); +IkReal x2485=((r22)*(sj5)); +IkReal x2486=((cj0)*(cj5)); +IkReal x2487=((IkReal(1.00000000000000))*(r20)); +IkReal x2488=((cj0)*(sj6)); +IkReal x2489=((r21)*(sj5)); +IkReal x2490=((sj0)*(sj6)); +IkReal x2491=((cj6)*(sj5)); +IkReal x2492=((r21)*(x2483)); +IkReal x2493=((cj5)*(r11)*(sj0)); +IkReal x2494=((r21)*(x2482)); +dummyeval[0]=((((cj6)*(x2484)*(x2485)))+(((r02)*(x2488)*(x2489)))+(((r00)*(x2486)*(x2494)))+(((cj5)*(x2484)*(x2494)))+(((IkReal(-1.00000000000000))*(r01)*(x2483)*(x2486)*(x2487)))+(((IkReal(-1.00000000000000))*(x2482)*(x2487)*(x2493)))+(((IkReal(-1.00000000000000))*(x2483)*(x2487)*(x2493)))+(((IkReal(-1.00000000000000))*(r01)*(x2485)*(x2488)))+(((IkReal(-1.00000000000000))*(r01)*(x2482)*(x2486)*(x2487)))+(((cj5)*(x2484)*(x2492)))+(((IkReal(-1.00000000000000))*(r11)*(x2485)*(x2490)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2487)*(x2491)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2487)*(x2491)))+(((cj0)*(cj6)*(r00)*(x2485)))+(((r00)*(x2486)*(x2492)))+(((r12)*(x2489)*(x2490)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x2495=((cj0)*(r11)); +IkReal x2496=((r01)*(sj0)); +IkReal x2497=((cj0)*(r01)); +IkReal x2498=((IkReal(0.374290000000000))*(sj0)); +IkReal x2499=((cj5)*(r02)); +IkReal x2500=((IkReal(0.374290000000000))*(cj0)); +IkReal x2501=((r11)*(sj0)); +IkReal x2502=((IkReal(0.0100000000000000))*(cj0)); +IkReal x2503=((r02)*(sj5)); +IkReal x2504=((cj5)*(sj6)); +IkReal x2505=((IkReal(1.00000000000000))*(sj0)); +IkReal x2506=((cj5)*(r12)); +IkReal x2507=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2508=((sj5)*(sj6)); +IkReal x2509=((IkReal(1.00000000000000))*(cj0)); +IkReal x2510=((IkReal(0.0100000000000000))*(sj0)); +IkReal x2511=((IkReal(0.374290000000000))*(cj6)*(sj5)); +IkReal x2512=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x2513=((r10)*(x2508)); +IkReal x2514=((IkReal(1.00000000000000))*(cj6)*(sj5)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(0.364420000000000))+(((IkReal(0.374290000000000))*(r20)*(x2508)))+(((IkReal(-0.0100000000000000))*(r20)*(x2504)))+(((IkReal(-1.00000000000000))*(r21)*(x2512)))+(((r21)*(x2511)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x2507)))+(pz)); +evalcond[2]=((((sj0)*(x2506)))+(((IkReal(-1.00000000000000))*(x2501)*(x2514)))+(((IkReal(-1.00000000000000))*(r00)*(x2508)*(x2509)))+(((IkReal(-1.00000000000000))*(x2505)*(x2513)))+(((cj0)*(x2499)))+(((IkReal(-1.00000000000000))*(x2497)*(x2514)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x2500)*(x2513)))+(((r10)*(x2502)*(x2504)))+(((IkReal(-1.00000000000000))*(x2495)*(x2511)))+(((IkReal(-1.00000000000000))*(py)*(x2509)))+(((x2500)*(x2506)))+(((IkReal(-1.00000000000000))*(x2498)*(x2499)))+(((x2495)*(x2512)))+(((IkReal(-1.00000000000000))*(r00)*(x2504)*(x2510)))+(((x2496)*(x2511)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x2503)*(x2510)))+(((r12)*(sj5)*(x2502)))+(((r00)*(x2498)*(x2508)))+(((IkReal(-1.00000000000000))*(x2496)*(x2512)))); +evalcond[4]=((IkReal(0.0690000000000000))+(((r00)*(x2502)*(x2504)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(sj5)*(x2498)))+(((x2498)*(x2506)))+(((x2502)*(x2503)))+(((IkReal(-1.00000000000000))*(r00)*(x2500)*(x2508)))+(((r12)*(sj0)*(x2507)))+(((IkReal(-1.00000000000000))*(px)*(x2509)))+(((IkReal(-1.00000000000000))*(x2497)*(x2511)))+(((x2501)*(x2512)))+(((x2499)*(x2500)))+(((x2497)*(x2512)))+(((IkReal(-1.00000000000000))*(py)*(x2505)))+(((r10)*(x2504)*(x2510)))+(((IkReal(-1.00000000000000))*(x2498)*(x2513)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2515=((sj5)*(sj6)); +IkReal x2516=((cj6)*(sj5)); +IkReal x2517=((IkReal(1.00000000000000))*(cj0)); +IkReal x2518=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r11)*(x2516)*(x2517)))+(((r00)*(sj0)*(x2515)))+(((IkReal(-1.00000000000000))*(r10)*(x2515)*(x2517)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2518)))+(((cj0)*(cj5)*(r12)))+(((r01)*(sj0)*(x2516))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r20)*(x2515)))+(((r21)*(x2516)))+(((IkReal(-1.00000000000000))*(r22)*(x2518))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r11)*(x2516)*(x2517)))+(((r00)*(sj0)*(x2515)))+(((IkReal(-1.00000000000000))*(r10)*(x2515)*(x2517)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2518)))+(((cj0)*(cj5)*(r12)))+(((r01)*(sj0)*(x2516)))))+IKsqr(((((r20)*(x2515)))+(((r21)*(x2516)))+(((IkReal(-1.00000000000000))*(r22)*(x2518)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r11)*(x2516)*(x2517)))+(((r00)*(sj0)*(x2515)))+(((IkReal(-1.00000000000000))*(r10)*(x2515)*(x2517)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2518)))+(((cj0)*(cj5)*(r12)))+(((r01)*(sj0)*(x2516)))), ((((r20)*(x2515)))+(((r21)*(x2516)))+(((IkReal(-1.00000000000000))*(r22)*(x2518))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x2519=((sj5)*(sj6)); +IkReal x2520=((cj6)*(sj5)); +IkReal x2521=((IkReal(1.00000000000000))*(cj0)); +IkReal x2522=((IkReal(1.00000000000000))*(cj5)); +evalcond[0]=((((r21)*(x2520)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((r20)*(x2519)))+(((IkReal(-1.00000000000000))*(r22)*(x2522)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2522)))+(((IkReal(-1.00000000000000))*(r11)*(x2520)*(x2521)))+(((r01)*(sj0)*(x2520)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x2519)*(x2521)))+(((r00)*(sj0)*(x2519)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst71; +IkReal x2523=(r21)*(r21); +IkReal x2524=(cj5)*(cj5); +IkReal x2525=(sj6)*(sj6); +IkReal x2526=(cj6)*(cj6); +IkReal x2527=(r20)*(r20); +IkReal x2528=((cj6)*(r21)); +IkReal x2529=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2530=((cj5)*(r22)*(sj5)); +IkReal x2531=((IkReal(1.00000000000000))*(x2525)); +IkReal x2532=((IkReal(1.00000000000000))*(x2526)); +gconst71=IKsign(((((IkReal(-1.00000000000000))*(x2523)*(x2531)))+(((IkReal(-2.00000000000000))*(x2528)*(x2530)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x2523)*(x2524)*(x2532)))+(((IkReal(-1.00000000000000))*(x2527)*(x2532)))+(((IkReal(-1.00000000000000))*(x2524)*(x2527)*(x2531)))+(((x2528)*(x2529)))+(((IkReal(-1.00000000000000))*(x2524)*(x2528)*(x2529)))+(((IkReal(-1.00000000000000))*(x2529)*(x2530))))); +IkReal x2533=(r21)*(r21); +IkReal x2534=(cj5)*(cj5); +IkReal x2535=(sj6)*(sj6); +IkReal x2536=(cj6)*(cj6); +IkReal x2537=(r20)*(r20); +IkReal x2538=((cj6)*(r21)); +IkReal x2539=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2540=((cj5)*(r22)*(sj5)); +IkReal x2541=((IkReal(1.00000000000000))*(x2535)); +IkReal x2542=((IkReal(1.00000000000000))*(x2536)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x2533)*(x2534)*(x2542)))+(((IkReal(-2.00000000000000))*(x2538)*(x2540)))+(((IkReal(-1.00000000000000))*(x2533)*(x2541)))+(((IkReal(-1.00000000000000))*(x2534)*(x2537)*(x2541)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x2534)*(x2538)*(x2539)))+(((x2538)*(x2539)))+(((IkReal(-1.00000000000000))*(x2537)*(x2542)))+(((IkReal(-1.00000000000000))*(x2539)*(x2540)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst72; +IkReal x2543=(sj6)*(sj6); +IkReal x2544=(cj5)*(cj5); +IkReal x2545=(cj6)*(cj6); +IkReal x2546=(sj5)*(sj5); +IkReal x2547=((r01)*(sj0)); +IkReal x2548=((cj0)*(sj6)); +IkReal x2549=((cj6)*(r21)); +IkReal x2550=((r22)*(sj0)); +IkReal x2551=((cj5)*(sj5)); +IkReal x2552=((r00)*(sj6)); +IkReal x2553=((IkReal(1.00000000000000))*(cj0)); +IkReal x2554=((cj6)*(r22)); +IkReal x2555=((r02)*(sj0)); +IkReal x2556=((r20)*(sj6)); +IkReal x2557=((IkReal(1.00000000000000))*(cj6)); +IkReal x2558=((r00)*(sj0)); +IkReal x2559=((r21)*(x2544)); +IkReal x2560=((IkReal(1.00000000000000))*(x2551)); +IkReal x2561=((r21)*(x2543)); +IkReal x2562=((cj6)*(r11)*(r20)); +IkReal x2563=((r20)*(x2545)); +IkReal x2564=((r20)*(x2543)*(x2544)); +gconst72=IKsign(((((IkReal(-1.00000000000000))*(r11)*(x2551)*(x2553)*(x2554)))+(((x2558)*(x2563)))+(((x2558)*(x2564)))+(((cj6)*(x2544)*(x2547)*(x2556)))+(((IkReal(-1.00000000000000))*(x2547)*(x2556)*(x2557)))+(((x2547)*(x2561)))+(((x2550)*(x2551)*(x2552)))+(((r10)*(x2548)*(x2549)))+(((IkReal(-1.00000000000000))*(r11)*(r20)*(x2544)*(x2548)*(x2557)))+(((r02)*(x2546)*(x2550)))+(((IkReal(-1.00000000000000))*(r12)*(x2549)*(x2551)*(x2553)))+(((IkReal(-1.00000000000000))*(r11)*(x2545)*(x2553)*(x2559)))+(((IkReal(-1.00000000000000))*(r12)*(r20)*(x2548)*(x2560)))+(((x2549)*(x2551)*(x2555)))+(((x2547)*(x2551)*(x2554)))+(((IkReal(-1.00000000000000))*(r12)*(r22)*(x2546)*(x2553)))+(((x2548)*(x2562)))+(((sj0)*(x2544)*(x2549)*(x2552)))+(((IkReal(-1.00000000000000))*(r10)*(x2544)*(x2548)*(x2549)))+(((IkReal(-1.00000000000000))*(r10)*(x2553)*(x2563)))+(((IkReal(-1.00000000000000))*(r10)*(x2553)*(x2564)))+(((IkReal(-1.00000000000000))*(r10)*(r22)*(x2548)*(x2560)))+(((x2545)*(x2547)*(x2559)))+(((IkReal(-1.00000000000000))*(sj0)*(x2549)*(x2552)))+(((x2551)*(x2555)*(x2556)))+(((IkReal(-1.00000000000000))*(r11)*(x2553)*(x2561))))); +IkReal x2565=(sj6)*(sj6); +IkReal x2566=(cj5)*(cj5); +IkReal x2567=(cj6)*(cj6); +IkReal x2568=(sj5)*(sj5); +IkReal x2569=((r01)*(sj0)); +IkReal x2570=((cj0)*(sj6)); +IkReal x2571=((cj6)*(r21)); +IkReal x2572=((r22)*(sj0)); +IkReal x2573=((cj5)*(sj5)); +IkReal x2574=((r00)*(sj6)); +IkReal x2575=((IkReal(1.00000000000000))*(cj0)); +IkReal x2576=((cj6)*(r22)); +IkReal x2577=((r02)*(sj0)); +IkReal x2578=((r20)*(sj6)); +IkReal x2579=((IkReal(1.00000000000000))*(cj6)); +IkReal x2580=((r00)*(sj0)); +IkReal x2581=((r21)*(x2566)); +IkReal x2582=((IkReal(1.00000000000000))*(x2573)); +IkReal x2583=((r21)*(x2565)); +IkReal x2584=((cj6)*(r11)*(r20)); +IkReal x2585=((r20)*(x2567)); +IkReal x2586=((r20)*(x2565)*(x2566)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r11)*(x2567)*(x2575)*(x2581)))+(((x2580)*(x2585)))+(((cj6)*(x2566)*(x2569)*(x2578)))+(((IkReal(-1.00000000000000))*(sj0)*(x2571)*(x2574)))+(((x2569)*(x2583)))+(((IkReal(-1.00000000000000))*(r12)*(x2571)*(x2573)*(x2575)))+(((IkReal(-1.00000000000000))*(r12)*(r20)*(x2570)*(x2582)))+(((IkReal(-1.00000000000000))*(r11)*(r20)*(x2566)*(x2570)*(x2579)))+(((IkReal(-1.00000000000000))*(r10)*(x2575)*(x2585)))+(((x2570)*(x2584)))+(((x2580)*(x2586)))+(((x2567)*(x2569)*(x2581)))+(((IkReal(-1.00000000000000))*(x2569)*(x2578)*(x2579)))+(((x2571)*(x2573)*(x2577)))+(((x2572)*(x2573)*(x2574)))+(((sj0)*(x2566)*(x2571)*(x2574)))+(((IkReal(-1.00000000000000))*(r12)*(r22)*(x2568)*(x2575)))+(((IkReal(-1.00000000000000))*(r10)*(r22)*(x2570)*(x2582)))+(((IkReal(-1.00000000000000))*(r10)*(x2566)*(x2570)*(x2571)))+(((r02)*(x2568)*(x2572)))+(((IkReal(-1.00000000000000))*(r11)*(x2573)*(x2575)*(x2576)))+(((x2569)*(x2573)*(x2576)))+(((x2573)*(x2577)*(x2578)))+(((IkReal(-1.00000000000000))*(r11)*(x2575)*(x2583)))+(((IkReal(-1.00000000000000))*(r10)*(x2575)*(x2586)))+(((r10)*(x2570)*(x2571)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2587=((IkReal(1.00000000000000))*(cj3)); +IkReal x2588=((cj5)*(x2587)); +if( IKabs(((gconst72)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2587)))+(((cj3)*(r21)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst72)*(((((IkReal(-1.00000000000000))*(cj6)*(r21)*(x2588)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x2588)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2587))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst72)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2587)))+(((cj3)*(r21)*(sj6)))))), ((gconst72)*(((((IkReal(-1.00000000000000))*(cj6)*(r21)*(x2588)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x2588)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2587))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2589=IKsin(j4); +IkReal x2590=IKcos(j4); +IkReal x2591=((r22)*(sj5)); +IkReal x2592=((IkReal(1.00000000000000))*(cj6)); +IkReal x2593=((IkReal(1.00000000000000))*(cj0)); +IkReal x2594=((cj5)*(r11)); +IkReal x2595=((cj5)*(cj6)); +IkReal x2596=((r11)*(sj6)); +IkReal x2597=((IkReal(1.00000000000000))*(sj6)); +IkReal x2598=((cj6)*(r00)); +IkReal x2599=((r12)*(sj5)); +IkReal x2600=((r02)*(sj5)); +IkReal x2601=((cj6)*(r10)); +IkReal x2602=((cj5)*(sj6)); +IkReal x2603=((cj5)*(r01)); +IkReal x2604=((sj0)*(x2589)); +IkReal x2605=((r00)*(x2602)); +IkReal x2606=((cj0)*(x2589)); +IkReal x2607=((sj0)*(x2590)); +IkReal x2608=((r20)*(x2590)); +IkReal x2609=((cj0)*(x2590)); +IkReal x2610=((r21)*(x2589)); +IkReal x2611=((r21)*(x2590)); +IkReal x2612=((r20)*(x2589)); +IkReal x2613=((x2590)*(x2599)); +IkReal x2614=((r01)*(sj6)*(x2590)); +IkReal x2615=((cj5)*(r10)*(x2597)); +evalcond[0]=((((sj6)*(x2611)))+(((IkReal(-1.00000000000000))*(x2592)*(x2608)))+(((x2602)*(x2612)))+(((x2595)*(x2610)))+(((x2589)*(x2591)))); +evalcond[1]=((((x2602)*(x2608)))+(((x2590)*(x2591)))+(((IkReal(-1.00000000000000))*(x2597)*(x2610)))+(((cj6)*(x2612)))+(((IkReal(-1.00000000000000))*(sj3)))+(((x2595)*(x2611)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2589)*(x2593)*(x2599)))+(((IkReal(-1.00000000000000))*(r10)*(x2589)*(x2593)*(x2602)))+(((x2600)*(x2604)))+(((x2604)*(x2605)))+(((IkReal(-1.00000000000000))*(r00)*(x2592)*(x2607)))+(((r01)*(x2595)*(x2604)))+(((IkReal(-1.00000000000000))*(x2592)*(x2594)*(x2606)))+(((IkReal(-1.00000000000000))*(x2590)*(x2593)*(x2596)))+(((x2601)*(x2609)))+(((r01)*(sj6)*(x2607)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x2592)*(x2606)))+(((IkReal(-1.00000000000000))*(x2593)*(x2613)))+(((IkReal(-1.00000000000000))*(r10)*(x2590)*(x2593)*(x2602)))+(((IkReal(-1.00000000000000))*(x2592)*(x2594)*(x2609)))+(cj3)+(((x2600)*(x2607)))+(((x2598)*(x2604)))+(((IkReal(-1.00000000000000))*(r01)*(x2597)*(x2604)))+(((r01)*(x2595)*(x2607)))+(((x2605)*(x2607)))+(((x2596)*(x2606)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x2604)*(x2615)))+(((IkReal(-1.00000000000000))*(x2589)*(x2593)*(x2600)))+(((IkReal(-1.00000000000000))*(x2589)*(x2593)*(x2605)))+(((IkReal(-1.00000000000000))*(x2592)*(x2594)*(x2604)))+(((IkReal(-1.00000000000000))*(x2592)*(x2603)*(x2606)))+(((IkReal(-1.00000000000000))*(x2599)*(x2604)))+(((x2601)*(x2607)))+(((IkReal(-1.00000000000000))*(x2596)*(x2607)))+(((x2598)*(x2609)))+(((IkReal(-1.00000000000000))*(x2593)*(x2614)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2607)*(x2615)))+(((r01)*(sj6)*(x2606)))+(((IkReal(-1.00000000000000))*(r00)*(x2592)*(x2606)))+(((IkReal(-1.00000000000000))*(x2592)*(x2603)*(x2609)))+(((IkReal(-1.00000000000000))*(x2590)*(x2593)*(x2600)))+(((IkReal(-1.00000000000000))*(x2599)*(x2607)))+(((IkReal(-1.00000000000000))*(x2590)*(x2593)*(x2605)))+(((IkReal(-1.00000000000000))*(x2592)*(x2594)*(x2607)))+(((x2596)*(x2604)))+(((IkReal(-1.00000000000000))*(r10)*(x2592)*(x2604)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2616=((r21)*(sj3)); +IkReal x2617=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst71)*(((((IkReal(-1.00000000000000))*(cj6)*(x2617)))+(((sj6)*(x2616))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst71)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2617)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2616)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst71)*(((((IkReal(-1.00000000000000))*(cj6)*(x2617)))+(((sj6)*(x2616)))))), ((gconst71)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2617)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2616)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2618=IKsin(j4); +IkReal x2619=IKcos(j4); +IkReal x2620=((r22)*(sj5)); +IkReal x2621=((IkReal(1.00000000000000))*(cj6)); +IkReal x2622=((IkReal(1.00000000000000))*(cj0)); +IkReal x2623=((cj5)*(r11)); +IkReal x2624=((cj5)*(cj6)); +IkReal x2625=((r11)*(sj6)); +IkReal x2626=((IkReal(1.00000000000000))*(sj6)); +IkReal x2627=((cj6)*(r00)); +IkReal x2628=((r12)*(sj5)); +IkReal x2629=((r02)*(sj5)); +IkReal x2630=((cj6)*(r10)); +IkReal x2631=((cj5)*(sj6)); +IkReal x2632=((cj5)*(r01)); +IkReal x2633=((sj0)*(x2618)); +IkReal x2634=((r00)*(x2631)); +IkReal x2635=((cj0)*(x2618)); +IkReal x2636=((sj0)*(x2619)); +IkReal x2637=((r20)*(x2619)); +IkReal x2638=((cj0)*(x2619)); +IkReal x2639=((r21)*(x2618)); +IkReal x2640=((r21)*(x2619)); +IkReal x2641=((r20)*(x2618)); +IkReal x2642=((x2619)*(x2628)); +IkReal x2643=((r01)*(sj6)*(x2619)); +IkReal x2644=((cj5)*(r10)*(x2626)); +evalcond[0]=((((sj6)*(x2640)))+(((IkReal(-1.00000000000000))*(x2621)*(x2637)))+(((x2631)*(x2641)))+(((x2618)*(x2620)))+(((x2624)*(x2639)))); +evalcond[1]=((((x2624)*(x2640)))+(((IkReal(-1.00000000000000))*(x2626)*(x2639)))+(((x2619)*(x2620)))+(((x2631)*(x2637)))+(((cj6)*(x2641)))+(((IkReal(-1.00000000000000))*(sj3)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2618)*(x2622)*(x2628)))+(((IkReal(-1.00000000000000))*(x2621)*(x2623)*(x2635)))+(((IkReal(-1.00000000000000))*(r00)*(x2621)*(x2636)))+(((r01)*(sj6)*(x2636)))+(((x2633)*(x2634)))+(((x2630)*(x2638)))+(((IkReal(-1.00000000000000))*(x2619)*(x2622)*(x2625)))+(((r01)*(x2624)*(x2633)))+(((x2629)*(x2633)))+(((IkReal(-1.00000000000000))*(r10)*(x2618)*(x2622)*(x2631)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x2621)*(x2635)))+(((IkReal(-1.00000000000000))*(r01)*(x2626)*(x2633)))+(((r01)*(x2624)*(x2636)))+(((x2629)*(x2636)))+(((IkReal(-1.00000000000000))*(x2622)*(x2642)))+(((x2634)*(x2636)))+(cj3)+(((x2627)*(x2633)))+(((x2625)*(x2635)))+(((IkReal(-1.00000000000000))*(x2621)*(x2623)*(x2638)))+(((IkReal(-1.00000000000000))*(r10)*(x2619)*(x2622)*(x2631)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x2618)*(x2622)*(x2629)))+(((x2630)*(x2636)))+(((IkReal(-1.00000000000000))*(x2628)*(x2633)))+(((IkReal(-1.00000000000000))*(x2621)*(x2623)*(x2633)))+(((IkReal(-1.00000000000000))*(x2625)*(x2636)))+(((x2627)*(x2638)))+(((IkReal(-1.00000000000000))*(x2633)*(x2644)))+(((IkReal(-1.00000000000000))*(x2621)*(x2632)*(x2635)))+(((IkReal(-1.00000000000000))*(x2622)*(x2643)))+(((IkReal(-1.00000000000000))*(x2618)*(x2622)*(x2634)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x2621)*(x2635)))+(((x2625)*(x2633)))+(((IkReal(-1.00000000000000))*(r10)*(x2621)*(x2633)))+(((IkReal(-1.00000000000000))*(x2621)*(x2632)*(x2638)))+(((IkReal(-1.00000000000000))*(x2636)*(x2644)))+(((IkReal(-1.00000000000000))*(x2619)*(x2622)*(x2629)))+(((IkReal(-1.00000000000000))*(x2619)*(x2622)*(x2634)))+(((IkReal(-1.00000000000000))*(x2621)*(x2623)*(x2636)))+(((r01)*(sj6)*(x2635)))+(((IkReal(-1.00000000000000))*(x2628)*(x2636)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x2645=((cj0)*(r11)); +IkReal x2646=((r01)*(sj0)); +IkReal x2647=((cj0)*(r01)); +IkReal x2648=((IkReal(0.374290000000000))*(sj0)); +IkReal x2649=((cj5)*(r02)); +IkReal x2650=((IkReal(0.374290000000000))*(cj0)); +IkReal x2651=((r11)*(sj0)); +IkReal x2652=((IkReal(0.0100000000000000))*(cj0)); +IkReal x2653=((r02)*(sj5)); +IkReal x2654=((cj5)*(sj6)); +IkReal x2655=((IkReal(1.00000000000000))*(sj0)); +IkReal x2656=((cj5)*(r12)); +IkReal x2657=((IkReal(0.0100000000000000))*(sj5)); +IkReal x2658=((sj5)*(sj6)); +IkReal x2659=((IkReal(1.00000000000000))*(cj0)); +IkReal x2660=((IkReal(0.0100000000000000))*(sj0)); +IkReal x2661=((IkReal(0.374290000000000))*(cj6)*(sj5)); +IkReal x2662=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x2663=((r10)*(x2658)); +IkReal x2664=((IkReal(1.00000000000000))*(cj6)*(sj5)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(0.364420000000000))+(((IkReal(-0.0100000000000000))*(r20)*(x2654)))+(((IkReal(-1.00000000000000))*(r21)*(x2662)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(0.374290000000000))*(r20)*(x2658)))+(((IkReal(-1.00000000000000))*(r22)*(x2657)))+(pz)+(((r21)*(x2661)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2651)*(x2664)))+(((IkReal(-1.00000000000000))*(r00)*(x2658)*(x2659)))+(((IkReal(-1.00000000000000))*(x2647)*(x2664)))+(((sj0)*(x2656)))+(((cj0)*(x2649)))+(((IkReal(-1.00000000000000))*(x2655)*(x2663)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x2648)*(x2649)))+(((r10)*(x2652)*(x2654)))+(((IkReal(-1.00000000000000))*(x2650)*(x2663)))+(((x2645)*(x2662)))+(((IkReal(-1.00000000000000))*(x2646)*(x2662)))+(((IkReal(-1.00000000000000))*(x2645)*(x2661)))+(((IkReal(-1.00000000000000))*(r00)*(x2654)*(x2660)))+(((IkReal(-1.00000000000000))*(py)*(x2659)))+(((r12)*(sj5)*(x2652)))+(((x2650)*(x2656)))+(((r00)*(x2648)*(x2658)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x2653)*(x2660)))+(((x2646)*(x2661)))); +evalcond[4]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x2648)*(x2663)))+(((x2648)*(x2656)))+(((x2651)*(x2662)))+(((x2652)*(x2653)))+(((IkReal(-1.00000000000000))*(px)*(x2659)))+(((x2649)*(x2650)))+(((r10)*(x2654)*(x2660)))+(((r12)*(sj0)*(x2657)))+(((x2647)*(x2662)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(sj5)*(x2648)))+(((r00)*(x2652)*(x2654)))+(((IkReal(-1.00000000000000))*(r00)*(x2650)*(x2658)))+(((IkReal(-1.00000000000000))*(x2647)*(x2661)))+(((IkReal(-1.00000000000000))*(py)*(x2655)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2665=((sj5)*(sj6)); +IkReal x2666=((IkReal(1.00000000000000))*(cj5)); +IkReal x2667=((IkReal(1.00000000000000))*(sj0)); +IkReal x2668=((cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2666)))+(((cj0)*(r11)*(x2668)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x2667)*(x2668)))+(((cj0)*(r10)*(x2665)))+(((IkReal(-1.00000000000000))*(r00)*(x2665)*(x2667))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r20)*(x2665)))+(((IkReal(-1.00000000000000))*(r22)*(x2666)))+(((r21)*(x2668))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2666)))+(((cj0)*(r11)*(x2668)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x2667)*(x2668)))+(((cj0)*(r10)*(x2665)))+(((IkReal(-1.00000000000000))*(r00)*(x2665)*(x2667)))))+IKsqr(((((r20)*(x2665)))+(((IkReal(-1.00000000000000))*(r22)*(x2666)))+(((r21)*(x2668)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x2666)))+(((cj0)*(r11)*(x2668)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x2667)*(x2668)))+(((cj0)*(r10)*(x2665)))+(((IkReal(-1.00000000000000))*(r00)*(x2665)*(x2667)))), ((((r20)*(x2665)))+(((IkReal(-1.00000000000000))*(r22)*(x2666)))+(((r21)*(x2668))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x2669=((sj5)*(sj6)); +IkReal x2670=((cj6)*(sj5)); +IkReal x2671=((IkReal(1.00000000000000))*(cj0)); +IkReal x2672=((IkReal(1.00000000000000))*(cj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(IKcos(j3))))+(((r21)*(x2670)))+(((IkReal(-1.00000000000000))*(r22)*(x2672)))+(((r20)*(x2669)))); +evalcond[1]=((((r00)*(sj0)*(x2669)))+(((IkReal(-1.00000000000000))*(r10)*(x2669)*(x2671)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x2672)))+(((r01)*(sj0)*(x2670)))+(((IkReal(-1.00000000000000))*(r11)*(x2670)*(x2671)))+(IKsin(j3))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst75; +IkReal x2673=(r21)*(r21); +IkReal x2674=(cj5)*(cj5); +IkReal x2675=(sj6)*(sj6); +IkReal x2676=(cj6)*(cj6); +IkReal x2677=(r20)*(r20); +IkReal x2678=((cj6)*(r21)); +IkReal x2679=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2680=((cj5)*(r22)*(sj5)); +IkReal x2681=((IkReal(1.00000000000000))*(x2675)); +IkReal x2682=((IkReal(1.00000000000000))*(x2676)); +gconst75=IKsign(((((x2678)*(x2679)))+(((IkReal(-1.00000000000000))*(x2674)*(x2677)*(x2681)))+(((IkReal(-1.00000000000000))*(x2673)*(x2681)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x2679)*(x2680)))+(((IkReal(-2.00000000000000))*(x2678)*(x2680)))+(((IkReal(-1.00000000000000))*(x2674)*(x2678)*(x2679)))+(((IkReal(-1.00000000000000))*(x2677)*(x2682)))+(((IkReal(-1.00000000000000))*(x2673)*(x2674)*(x2682))))); +IkReal x2683=(r21)*(r21); +IkReal x2684=(cj5)*(cj5); +IkReal x2685=(sj6)*(sj6); +IkReal x2686=(cj6)*(cj6); +IkReal x2687=(r20)*(r20); +IkReal x2688=((cj6)*(r21)); +IkReal x2689=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2690=((cj5)*(r22)*(sj5)); +IkReal x2691=((IkReal(1.00000000000000))*(x2685)); +IkReal x2692=((IkReal(1.00000000000000))*(x2686)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x2689)*(x2690)))+(((IkReal(-1.00000000000000))*(x2683)*(x2691)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((x2688)*(x2689)))+(((IkReal(-1.00000000000000))*(x2683)*(x2684)*(x2692)))+(((IkReal(-2.00000000000000))*(x2688)*(x2690)))+(((IkReal(-1.00000000000000))*(x2684)*(x2687)*(x2691)))+(((IkReal(-1.00000000000000))*(x2684)*(x2688)*(x2689)))+(((IkReal(-1.00000000000000))*(x2687)*(x2692)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst76; +IkReal x2693=(cj6)*(cj6); +IkReal x2694=(cj5)*(cj5); +IkReal x2695=(sj6)*(sj6); +IkReal x2696=(sj5)*(sj5); +IkReal x2697=((cj0)*(r12)); +IkReal x2698=((cj6)*(sj6)); +IkReal x2699=((cj0)*(r21)); +IkReal x2700=((cj0)*(r11)); +IkReal x2701=((IkReal(1.00000000000000))*(r20)); +IkReal x2702=((r01)*(sj0)); +IkReal x2703=((r00)*(sj0)); +IkReal x2704=((IkReal(1.00000000000000))*(r22)); +IkReal x2705=((cj0)*(r10)); +IkReal x2706=((r02)*(sj0)); +IkReal x2707=((r22)*(x2696)); +IkReal x2708=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x2709=((cj5)*(cj6)*(sj5)); +IkReal x2710=((cj5)*(sj5)*(sj6)); +IkReal x2711=((cj0)*(r20)*(x2694)); +IkReal x2712=((x2693)*(x2694)); +gconst76=IKsign(((((IkReal(-1.00000000000000))*(r10)*(x2698)*(x2699)))+(((x2697)*(x2707)))+(((r21)*(x2698)*(x2703)))+(((IkReal(-1.00000000000000))*(x2698)*(x2700)*(x2701)))+(((r20)*(x2694)*(x2698)*(x2700)))+(((r20)*(x2694)*(x2695)*(x2705)))+(((IkReal(-1.00000000000000))*(x2696)*(x2704)*(x2706)))+(((IkReal(-1.00000000000000))*(x2701)*(x2706)*(x2710)))+(((r20)*(x2693)*(x2705)))+(((IkReal(-1.00000000000000))*(r21)*(x2706)*(x2709)))+(((IkReal(-1.00000000000000))*(x2693)*(x2701)*(x2703)))+(((r22)*(x2705)*(x2710)))+(((IkReal(-1.00000000000000))*(x2694)*(x2698)*(x2701)*(x2702)))+(((r21)*(x2697)*(x2709)))+(((IkReal(-1.00000000000000))*(x2703)*(x2704)*(x2710)))+(((IkReal(-1.00000000000000))*(x2694)*(x2695)*(x2701)*(x2703)))+(((IkReal(-1.00000000000000))*(x2702)*(x2704)*(x2709)))+(((r20)*(x2698)*(x2702)))+(((r10)*(x2694)*(x2698)*(x2699)))+(((r11)*(x2695)*(x2699)))+(((IkReal(-1.00000000000000))*(r21)*(x2702)*(x2712)))+(((IkReal(-1.00000000000000))*(r21)*(x2694)*(x2698)*(x2703)))+(((r20)*(x2697)*(x2710)))+(((r22)*(x2700)*(x2709)))+(((IkReal(-1.00000000000000))*(r21)*(x2695)*(x2702)))+(((r11)*(x2699)*(x2712))))); +IkReal x2713=(cj6)*(cj6); +IkReal x2714=(cj5)*(cj5); +IkReal x2715=(sj6)*(sj6); +IkReal x2716=(sj5)*(sj5); +IkReal x2717=((cj0)*(r12)); +IkReal x2718=((cj6)*(sj6)); +IkReal x2719=((cj0)*(r21)); +IkReal x2720=((cj0)*(r11)); +IkReal x2721=((IkReal(1.00000000000000))*(r20)); +IkReal x2722=((r01)*(sj0)); +IkReal x2723=((r00)*(sj0)); +IkReal x2724=((IkReal(1.00000000000000))*(r22)); +IkReal x2725=((cj0)*(r10)); +IkReal x2726=((r02)*(sj0)); +IkReal x2727=((r22)*(x2716)); +IkReal x2728=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x2729=((cj5)*(cj6)*(sj5)); +IkReal x2730=((cj5)*(sj5)*(sj6)); +IkReal x2731=((cj0)*(r20)*(x2714)); +IkReal x2732=((x2713)*(x2714)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x2714)*(x2715)*(x2721)*(x2723)))+(((r22)*(x2725)*(x2730)))+(((IkReal(-1.00000000000000))*(x2714)*(x2718)*(x2721)*(x2722)))+(((IkReal(-1.00000000000000))*(r21)*(x2715)*(x2722)))+(((r11)*(x2715)*(x2719)))+(((x2717)*(x2727)))+(((IkReal(-1.00000000000000))*(x2723)*(x2724)*(x2730)))+(((IkReal(-1.00000000000000))*(x2722)*(x2724)*(x2729)))+(((r21)*(x2717)*(x2729)))+(((IkReal(-1.00000000000000))*(r10)*(x2718)*(x2719)))+(((r11)*(x2719)*(x2732)))+(((r21)*(x2718)*(x2723)))+(((IkReal(-1.00000000000000))*(x2713)*(x2721)*(x2723)))+(((IkReal(-1.00000000000000))*(x2716)*(x2724)*(x2726)))+(((r20)*(x2714)*(x2715)*(x2725)))+(((r10)*(x2714)*(x2718)*(x2719)))+(((r20)*(x2713)*(x2725)))+(((IkReal(-1.00000000000000))*(x2718)*(x2720)*(x2721)))+(((r20)*(x2718)*(x2722)))+(((IkReal(-1.00000000000000))*(r21)*(x2714)*(x2718)*(x2723)))+(((IkReal(-1.00000000000000))*(r21)*(x2726)*(x2729)))+(((IkReal(-1.00000000000000))*(x2721)*(x2726)*(x2730)))+(((r20)*(x2714)*(x2718)*(x2720)))+(((r20)*(x2717)*(x2730)))+(((r22)*(x2720)*(x2729)))+(((IkReal(-1.00000000000000))*(r21)*(x2722)*(x2732)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2733=((IkReal(1.00000000000000))*(cj3)); +IkReal x2734=((cj5)*(x2733)); +if( IKabs(((gconst76)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2733)))+(((cj3)*(r21)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst76)*(((((IkReal(-1.00000000000000))*(r20)*(sj6)*(x2734)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2733)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x2734))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst76)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2733)))+(((cj3)*(r21)*(sj6)))))), ((gconst76)*(((((IkReal(-1.00000000000000))*(r20)*(sj6)*(x2734)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2733)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x2734))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2735=IKsin(j4); +IkReal x2736=IKcos(j4); +IkReal x2737=((r22)*(sj5)); +IkReal x2738=((IkReal(1.00000000000000))*(cj6)); +IkReal x2739=((IkReal(1.00000000000000))*(cj0)); +IkReal x2740=((cj5)*(r11)); +IkReal x2741=((cj5)*(cj6)); +IkReal x2742=((r11)*(sj6)); +IkReal x2743=((IkReal(1.00000000000000))*(sj6)); +IkReal x2744=((cj6)*(r00)); +IkReal x2745=((r12)*(sj5)); +IkReal x2746=((r02)*(sj5)); +IkReal x2747=((cj6)*(r10)); +IkReal x2748=((cj5)*(sj6)); +IkReal x2749=((cj5)*(r01)); +IkReal x2750=((sj0)*(x2735)); +IkReal x2751=((r00)*(x2748)); +IkReal x2752=((cj0)*(x2735)); +IkReal x2753=((sj0)*(x2736)); +IkReal x2754=((r20)*(x2736)); +IkReal x2755=((cj0)*(x2736)); +IkReal x2756=((r21)*(x2735)); +IkReal x2757=((r21)*(x2736)); +IkReal x2758=((r20)*(x2735)); +IkReal x2759=((x2736)*(x2745)); +IkReal x2760=((r01)*(sj6)*(x2736)); +IkReal x2761=((cj5)*(r10)*(x2743)); +evalcond[0]=((((x2748)*(x2758)))+(((x2735)*(x2737)))+(((x2741)*(x2756)))+(((IkReal(-1.00000000000000))*(x2738)*(x2754)))+(((sj6)*(x2757)))); +evalcond[1]=((((x2736)*(x2737)))+(((x2741)*(x2757)))+(((x2748)*(x2754)))+(((cj6)*(x2758)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(x2743)*(x2756)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2736)*(x2739)*(x2742)))+(((IkReal(-1.00000000000000))*(r00)*(x2738)*(x2753)))+(((x2750)*(x2751)))+(((r01)*(x2741)*(x2750)))+(((IkReal(-1.00000000000000))*(r10)*(x2735)*(x2739)*(x2748)))+(((IkReal(-1.00000000000000))*(x2738)*(x2740)*(x2752)))+(((x2746)*(x2750)))+(((x2747)*(x2755)))+(((IkReal(-1.00000000000000))*(x2735)*(x2739)*(x2745)))+(((r01)*(sj6)*(x2753)))); +evalcond[3]=((((x2751)*(x2753)))+(((IkReal(-1.00000000000000))*(x2738)*(x2740)*(x2755)))+(((IkReal(-1.00000000000000))*(x2739)*(x2759)))+(((IkReal(-1.00000000000000))*(r10)*(x2738)*(x2752)))+(((IkReal(-1.00000000000000))*(r10)*(x2736)*(x2739)*(x2748)))+(((x2744)*(x2750)))+(((x2746)*(x2753)))+(((r01)*(x2741)*(x2753)))+(((x2742)*(x2752)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(r01)*(x2743)*(x2750)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x2739)*(x2760)))+(((IkReal(-1.00000000000000))*(x2745)*(x2750)))+(((IkReal(-1.00000000000000))*(x2735)*(x2739)*(x2746)))+(((IkReal(-1.00000000000000))*(x2742)*(x2753)))+(((IkReal(-1.00000000000000))*(x2735)*(x2739)*(x2751)))+(((IkReal(-1.00000000000000))*(x2738)*(x2740)*(x2750)))+(((IkReal(-1.00000000000000))*(x2750)*(x2761)))+(((IkReal(-1.00000000000000))*(x2738)*(x2749)*(x2752)))+(((x2744)*(x2755)))+(((x2747)*(x2753)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2736)*(x2739)*(x2751)))+(((r01)*(sj6)*(x2752)))+(((IkReal(-1.00000000000000))*(x2738)*(x2740)*(x2753)))+(((x2742)*(x2750)))+(((IkReal(-1.00000000000000))*(x2745)*(x2753)))+(((IkReal(-1.00000000000000))*(x2738)*(x2749)*(x2755)))+(((IkReal(-1.00000000000000))*(x2736)*(x2739)*(x2746)))+(((IkReal(-1.00000000000000))*(x2753)*(x2761)))+(((IkReal(-1.00000000000000))*(r00)*(x2738)*(x2752)))+(((IkReal(-1.00000000000000))*(r10)*(x2738)*(x2750)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2762=((r21)*(sj3)); +IkReal x2763=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst75)*(((((IkReal(-1.00000000000000))*(cj6)*(x2763)))+(((sj6)*(x2762))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst75)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2762)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2763)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst75)*(((((IkReal(-1.00000000000000))*(cj6)*(x2763)))+(((sj6)*(x2762)))))), ((gconst75)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2762)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2763)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2764=IKsin(j4); +IkReal x2765=IKcos(j4); +IkReal x2766=((r22)*(sj5)); +IkReal x2767=((IkReal(1.00000000000000))*(cj6)); +IkReal x2768=((IkReal(1.00000000000000))*(cj0)); +IkReal x2769=((cj5)*(r11)); +IkReal x2770=((cj5)*(cj6)); +IkReal x2771=((r11)*(sj6)); +IkReal x2772=((IkReal(1.00000000000000))*(sj6)); +IkReal x2773=((cj6)*(r00)); +IkReal x2774=((r12)*(sj5)); +IkReal x2775=((r02)*(sj5)); +IkReal x2776=((cj6)*(r10)); +IkReal x2777=((cj5)*(sj6)); +IkReal x2778=((cj5)*(r01)); +IkReal x2779=((sj0)*(x2764)); +IkReal x2780=((r00)*(x2777)); +IkReal x2781=((cj0)*(x2764)); +IkReal x2782=((sj0)*(x2765)); +IkReal x2783=((r20)*(x2765)); +IkReal x2784=((cj0)*(x2765)); +IkReal x2785=((r21)*(x2764)); +IkReal x2786=((r21)*(x2765)); +IkReal x2787=((r20)*(x2764)); +IkReal x2788=((x2765)*(x2774)); +IkReal x2789=((r01)*(sj6)*(x2765)); +IkReal x2790=((cj5)*(r10)*(x2772)); +evalcond[0]=((((sj6)*(x2786)))+(((x2777)*(x2787)))+(((IkReal(-1.00000000000000))*(x2767)*(x2783)))+(((x2764)*(x2766)))+(((x2770)*(x2785)))); +evalcond[1]=((((x2770)*(x2786)))+(((x2765)*(x2766)))+(((x2777)*(x2783)))+(((IkReal(-1.00000000000000))*(sj3)))+(((cj6)*(x2787)))+(((IkReal(-1.00000000000000))*(x2772)*(x2785)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2767)*(x2769)*(x2781)))+(((IkReal(-1.00000000000000))*(x2764)*(x2768)*(x2774)))+(((r01)*(sj6)*(x2782)))+(((IkReal(-1.00000000000000))*(x2765)*(x2768)*(x2771)))+(((IkReal(-1.00000000000000))*(r10)*(x2764)*(x2768)*(x2777)))+(((x2779)*(x2780)))+(((x2775)*(x2779)))+(((r01)*(x2770)*(x2779)))+(((x2776)*(x2784)))+(((IkReal(-1.00000000000000))*(r00)*(x2767)*(x2782)))); +evalcond[3]=((((r01)*(x2770)*(x2782)))+(((x2773)*(x2779)))+(((IkReal(-1.00000000000000))*(x2767)*(x2769)*(x2784)))+(((IkReal(-1.00000000000000))*(r10)*(x2767)*(x2781)))+(((IkReal(-1.00000000000000))*(r10)*(x2765)*(x2768)*(x2777)))+(((x2780)*(x2782)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x2775)*(x2782)))+(((IkReal(-1.00000000000000))*(r01)*(x2772)*(x2779)))+(((x2771)*(x2781)))+(((IkReal(-1.00000000000000))*(x2768)*(x2788)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x2776)*(x2782)))+(((IkReal(-1.00000000000000))*(x2764)*(x2768)*(x2775)))+(((IkReal(-1.00000000000000))*(x2774)*(x2779)))+(((IkReal(-1.00000000000000))*(x2764)*(x2768)*(x2780)))+(((IkReal(-1.00000000000000))*(x2767)*(x2778)*(x2781)))+(((x2773)*(x2784)))+(((IkReal(-1.00000000000000))*(x2771)*(x2782)))+(((IkReal(-1.00000000000000))*(x2768)*(x2789)))+(((IkReal(-1.00000000000000))*(x2779)*(x2790)))+(((IkReal(-1.00000000000000))*(x2767)*(x2769)*(x2779)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x2767)*(x2778)*(x2784)))+(((r01)*(sj6)*(x2781)))+(((IkReal(-1.00000000000000))*(r10)*(x2767)*(x2779)))+(((IkReal(-1.00000000000000))*(x2765)*(x2768)*(x2780)))+(((IkReal(-1.00000000000000))*(x2767)*(x2769)*(x2782)))+(((IkReal(-1.00000000000000))*(x2774)*(x2782)))+(((x2771)*(x2779)))+(((IkReal(-1.00000000000000))*(x2782)*(x2790)))+(((IkReal(-1.00000000000000))*(r00)*(x2767)*(x2781)))+(((IkReal(-1.00000000000000))*(x2765)*(x2768)*(x2775)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2791=((sj5)*(sj6)); +IkReal x2792=((IkReal(1.00000000000000))*(cj5)); +IkReal x2793=((cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj0)*(r00)*(x2791)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2792)))+(((r11)*(sj0)*(x2793)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2792)))+(((r10)*(sj0)*(x2791)))+(((cj0)*(r01)*(x2793))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r22)*(x2792)))+(((r21)*(x2793)))+(((r20)*(x2791))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj0)*(r00)*(x2791)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2792)))+(((r11)*(sj0)*(x2793)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2792)))+(((r10)*(sj0)*(x2791)))+(((cj0)*(r01)*(x2793)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r22)*(x2792)))+(((r21)*(x2793)))+(((r20)*(x2791)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj0)*(r00)*(x2791)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x2792)))+(((r11)*(sj0)*(x2793)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x2792)))+(((r10)*(sj0)*(x2791)))+(((cj0)*(r01)*(x2793)))))), ((((IkReal(-1.00000000000000))*(r22)*(x2792)))+(((r21)*(x2793)))+(((r20)*(x2791))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x2794=IKsin(j3); +IkReal x2795=((sj5)*(sj6)); +IkReal x2796=((cj0)*(cj5)); +IkReal x2797=((IkReal(1.00000000000000))*(cj0)); +IkReal x2798=((IkReal(1.00000000000000))*(sj0)); +IkReal x2799=((cj6)*(r01)*(sj5)); +IkReal x2800=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((r20)*(x2795)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r10)*(x2795)*(x2797)))+(((sj0)*(x2799)))+(((r12)*(x2796)))+(((IkReal(-1.00000000000000))*(x2797)*(x2800)))+(((r00)*(sj0)*(x2795)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x2798)))+(((IkReal(-1.00000000000000))*(sj2)*(x2794)))); +evalcond[2]=((((cj2)*(x2794)))+(((IkReal(-1.00000000000000))*(x2797)*(x2799)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x2795)*(x2797)))+(((IkReal(-1.00000000000000))*(x2798)*(x2800)))+(((IkReal(-1.00000000000000))*(r10)*(x2795)*(x2798)))+(((r02)*(x2796)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst67; +IkReal x2801=(r21)*(r21); +IkReal x2802=(cj5)*(cj5); +IkReal x2803=(sj6)*(sj6); +IkReal x2804=(cj6)*(cj6); +IkReal x2805=(r20)*(r20); +IkReal x2806=((cj6)*(r21)); +IkReal x2807=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2808=((cj5)*(r22)*(sj5)); +IkReal x2809=((IkReal(1.00000000000000))*(x2803)); +IkReal x2810=((IkReal(1.00000000000000))*(x2804)); +gconst67=IKsign(((((IkReal(-1.00000000000000))*(x2807)*(x2808)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x2802)*(x2805)*(x2809)))+(((IkReal(-1.00000000000000))*(x2805)*(x2810)))+(((IkReal(-1.00000000000000))*(x2801)*(x2809)))+(((IkReal(-1.00000000000000))*(x2802)*(x2806)*(x2807)))+(((x2806)*(x2807)))+(((IkReal(-2.00000000000000))*(x2806)*(x2808)))+(((IkReal(-1.00000000000000))*(x2801)*(x2802)*(x2810))))); +IkReal x2811=(r21)*(r21); +IkReal x2812=(cj5)*(cj5); +IkReal x2813=(sj6)*(sj6); +IkReal x2814=(cj6)*(cj6); +IkReal x2815=(r20)*(r20); +IkReal x2816=((cj6)*(r21)); +IkReal x2817=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x2818=((cj5)*(r22)*(sj5)); +IkReal x2819=((IkReal(1.00000000000000))*(x2813)); +IkReal x2820=((IkReal(1.00000000000000))*(x2814)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x2817)*(x2818)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x2811)*(x2819)))+(((IkReal(-1.00000000000000))*(x2815)*(x2820)))+(((IkReal(-1.00000000000000))*(x2812)*(x2816)*(x2817)))+(((IkReal(-1.00000000000000))*(x2812)*(x2815)*(x2819)))+(((x2816)*(x2817)))+(((IkReal(-1.00000000000000))*(x2811)*(x2812)*(x2820)))+(((IkReal(-2.00000000000000))*(x2816)*(x2818)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst68; +IkReal x2821=(cj6)*(cj6); +IkReal x2822=(sj6)*(sj6); +IkReal x2823=((IkReal(1.00000000000000))*(r21)); +IkReal x2824=((cj6)*(r20)); +IkReal x2825=((r22)*(sj5)); +IkReal x2826=((r01)*(sj0)); +IkReal x2827=((r00)*(sj0)); +IkReal x2828=((cj0)*(r10)); +IkReal x2829=((r02)*(sj0)*(sj5)); +IkReal x2830=((cj5)*(x2821)); +IkReal x2831=((cj0)*(r12)*(sj5)); +IkReal x2832=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x2833=((cj5)*(x2822)); +IkReal x2834=((r20)*(x2833)); +gconst68=IKsign(((((cj6)*(x2825)*(x2828)))+(((IkReal(-1.00000000000000))*(x2823)*(x2827)*(x2833)))+(((IkReal(-1.00000000000000))*(sj6)*(x2823)*(x2829)))+(((IkReal(-1.00000000000000))*(sj6)*(x2825)*(x2832)))+(((IkReal(-1.00000000000000))*(x2832)*(x2834)))+(((IkReal(-1.00000000000000))*(cj6)*(x2825)*(x2827)))+(((x2826)*(x2834)))+(((r20)*(x2826)*(x2830)))+(((IkReal(-1.00000000000000))*(x2824)*(x2831)))+(((x2824)*(x2829)))+(((r21)*(x2828)*(x2833)))+(((IkReal(-1.00000000000000))*(x2823)*(x2827)*(x2830)))+(((sj6)*(x2825)*(x2826)))+(((r21)*(sj6)*(x2831)))+(((r21)*(x2828)*(x2830)))+(((IkReal(-1.00000000000000))*(r20)*(x2830)*(x2832))))); +IkReal x2835=(cj6)*(cj6); +IkReal x2836=(sj6)*(sj6); +IkReal x2837=((IkReal(1.00000000000000))*(r21)); +IkReal x2838=((cj6)*(r20)); +IkReal x2839=((r22)*(sj5)); +IkReal x2840=((r01)*(sj0)); +IkReal x2841=((r00)*(sj0)); +IkReal x2842=((cj0)*(r10)); +IkReal x2843=((r02)*(sj0)*(sj5)); +IkReal x2844=((cj5)*(x2835)); +IkReal x2845=((cj0)*(r12)*(sj5)); +IkReal x2846=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x2847=((cj5)*(x2836)); +IkReal x2848=((r20)*(x2847)); +dummyeval[0]=((((x2838)*(x2843)))+(((IkReal(-1.00000000000000))*(sj6)*(x2839)*(x2846)))+(((r21)*(x2842)*(x2847)))+(((cj6)*(x2839)*(x2842)))+(((IkReal(-1.00000000000000))*(cj6)*(x2839)*(x2841)))+(((r21)*(x2842)*(x2844)))+(((IkReal(-1.00000000000000))*(x2837)*(x2841)*(x2844)))+(((r20)*(x2840)*(x2844)))+(((sj6)*(x2839)*(x2840)))+(((x2840)*(x2848)))+(((IkReal(-1.00000000000000))*(x2838)*(x2845)))+(((IkReal(-1.00000000000000))*(sj6)*(x2837)*(x2843)))+(((r21)*(sj6)*(x2845)))+(((IkReal(-1.00000000000000))*(x2846)*(x2848)))+(((IkReal(-1.00000000000000))*(r20)*(x2844)*(x2846)))+(((IkReal(-1.00000000000000))*(x2837)*(x2841)*(x2847)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2849=((cj2)*(sj6)); +IkReal x2850=((IkReal(1.00000000000000))*(r20)); +IkReal x2851=((cj2)*(cj6)); +if( IKabs(((gconst68)*(((((r21)*(x2849)))+(((IkReal(-1.00000000000000))*(x2850)*(x2851))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst68)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x2851)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(x2849)*(x2850))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst68)*(((((r21)*(x2849)))+(((IkReal(-1.00000000000000))*(x2850)*(x2851)))))), ((gconst68)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x2851)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(x2849)*(x2850))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2852=IKsin(j4); +IkReal x2853=IKcos(j4); +IkReal x2854=((r00)*(sj6)); +IkReal x2855=((IkReal(1.00000000000000))*(r12)); +IkReal x2856=((IkReal(1.00000000000000))*(cj6)); +IkReal x2857=((cj6)*(r01)); +IkReal x2858=((r11)*(sj6)); +IkReal x2859=((r01)*(sj6)); +IkReal x2860=((IkReal(1.00000000000000))*(cj5)); +IkReal x2861=((r10)*(sj6)); +IkReal x2862=((cj5)*(r11)); +IkReal x2863=((cj6)*(r00)); +IkReal x2864=((r21)*(sj6)); +IkReal x2865=((r02)*(sj5)); +IkReal x2866=((cj6)*(r10)); +IkReal x2867=((cj5)*(sj6)); +IkReal x2868=((cj5)*(r01)); +IkReal x2869=((sj5)*(x2852)); +IkReal x2870=((cj0)*(x2853)); +IkReal x2871=((cj0)*(x2852)); +IkReal x2872=((sj0)*(x2853)); +IkReal x2873=((sj0)*(x2852)); +IkReal x2874=((r20)*(x2853)); +IkReal x2875=((cj5)*(cj6)*(r21)); +IkReal x2876=((r20)*(x2852)); +IkReal x2877=((cj5)*(x2873)); +evalcond[0]=((((r22)*(x2869)))+(((x2852)*(x2875)))+(((IkReal(-1.00000000000000))*(x2856)*(x2874)))+(((x2853)*(x2864)))+(((x2867)*(x2876)))); +evalcond[1]=((((cj6)*(x2876)))+(((IkReal(-1.00000000000000))*(x2852)*(x2864)))+(((x2867)*(x2874)))+(((IkReal(-1.00000000000000))*(sj3)))+(((r22)*(sj5)*(x2853)))+(((x2853)*(x2875)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x2856)*(x2872)))+(((IkReal(-1.00000000000000))*(cj0)*(x2855)*(x2869)))+(((IkReal(-1.00000000000000))*(x2858)*(x2870)))+(((x2857)*(x2877)))+(((x2865)*(x2873)))+(((IkReal(-1.00000000000000))*(x2856)*(x2862)*(x2871)))+(cj2)+(((x2859)*(x2872)))+(((x2854)*(x2877)))+(((IkReal(-1.00000000000000))*(x2860)*(x2861)*(x2871)))+(((x2866)*(x2870)))); +evalcond[3]=((((x2865)*(x2872)))+(((x2858)*(x2871)))+(((IkReal(-1.00000000000000))*(x2856)*(x2862)*(x2870)))+(((cj5)*(x2857)*(x2872)))+(((x2863)*(x2873)))+(((IkReal(-1.00000000000000))*(x2859)*(x2873)))+(((cj3)*(sj2)))+(((cj5)*(x2854)*(x2872)))+(((IkReal(-1.00000000000000))*(r10)*(x2856)*(x2871)))+(((IkReal(-1.00000000000000))*(sj5)*(x2855)*(x2870)))+(((IkReal(-1.00000000000000))*(x2860)*(x2861)*(x2870)))); +evalcond[4]=((((x2866)*(x2872)))+(((IkReal(-1.00000000000000))*(x2856)*(x2868)*(x2871)))+(sj2)+(((IkReal(-1.00000000000000))*(x2859)*(x2870)))+(((IkReal(-1.00000000000000))*(x2860)*(x2861)*(x2873)))+(((IkReal(-1.00000000000000))*(x2854)*(x2860)*(x2871)))+(((IkReal(-1.00000000000000))*(x2856)*(x2862)*(x2873)))+(((IkReal(-1.00000000000000))*(x2858)*(x2872)))+(((x2863)*(x2870)))+(((IkReal(-1.00000000000000))*(sj0)*(x2855)*(x2869)))+(((IkReal(-1.00000000000000))*(x2865)*(x2871)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x2856)*(x2873)))+(((IkReal(-1.00000000000000))*(r00)*(x2856)*(x2871)))+(((IkReal(-1.00000000000000))*(x2860)*(x2861)*(x2872)))+(((IkReal(-1.00000000000000))*(sj5)*(x2855)*(x2872)))+(((IkReal(-1.00000000000000))*(x2856)*(x2868)*(x2870)))+(((x2859)*(x2871)))+(((IkReal(-1.00000000000000))*(x2865)*(x2870)))+(((x2858)*(x2873)))+(((IkReal(-1.00000000000000))*(x2854)*(x2860)*(x2870)))+(((IkReal(-1.00000000000000))*(x2856)*(x2862)*(x2872)))+(((IkReal(-1.00000000000000))*(cj2)*(cj3)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2878=((r21)*(sj3)); +IkReal x2879=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst67)*(((((IkReal(-1.00000000000000))*(cj6)*(x2879)))+(((sj6)*(x2878))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst67)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2878)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2879)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst67)*(((((IkReal(-1.00000000000000))*(cj6)*(x2879)))+(((sj6)*(x2878)))))), ((gconst67)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x2878)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x2879)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x2880=IKsin(j4); +IkReal x2881=IKcos(j4); +IkReal x2882=((r00)*(sj6)); +IkReal x2883=((IkReal(1.00000000000000))*(r12)); +IkReal x2884=((IkReal(1.00000000000000))*(cj6)); +IkReal x2885=((cj6)*(r01)); +IkReal x2886=((r11)*(sj6)); +IkReal x2887=((r01)*(sj6)); +IkReal x2888=((IkReal(1.00000000000000))*(cj5)); +IkReal x2889=((r10)*(sj6)); +IkReal x2890=((cj5)*(r11)); +IkReal x2891=((cj6)*(r00)); +IkReal x2892=((r21)*(sj6)); +IkReal x2893=((r02)*(sj5)); +IkReal x2894=((cj6)*(r10)); +IkReal x2895=((cj5)*(sj6)); +IkReal x2896=((cj5)*(r01)); +IkReal x2897=((sj5)*(x2880)); +IkReal x2898=((cj0)*(x2881)); +IkReal x2899=((cj0)*(x2880)); +IkReal x2900=((sj0)*(x2881)); +IkReal x2901=((sj0)*(x2880)); +IkReal x2902=((r20)*(x2881)); +IkReal x2903=((cj5)*(cj6)*(r21)); +IkReal x2904=((r20)*(x2880)); +IkReal x2905=((cj5)*(x2901)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x2884)*(x2902)))+(((r22)*(x2897)))+(((x2895)*(x2904)))+(((x2880)*(x2903)))+(((x2881)*(x2892)))); +evalcond[1]=((((x2881)*(x2903)))+(((x2895)*(x2902)))+(((cj6)*(x2904)))+(((r22)*(sj5)*(x2881)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(x2880)*(x2892)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2886)*(x2898)))+(((IkReal(-1.00000000000000))*(r00)*(x2884)*(x2900)))+(((x2894)*(x2898)))+(((x2885)*(x2905)))+(((IkReal(-1.00000000000000))*(x2888)*(x2889)*(x2899)))+(((IkReal(-1.00000000000000))*(x2884)*(x2890)*(x2899)))+(((x2893)*(x2901)))+(cj2)+(((IkReal(-1.00000000000000))*(cj0)*(x2883)*(x2897)))+(((x2882)*(x2905)))+(((x2887)*(x2900)))); +evalcond[3]=((((x2893)*(x2900)))+(((cj5)*(x2885)*(x2900)))+(((IkReal(-1.00000000000000))*(x2888)*(x2889)*(x2898)))+(((cj5)*(x2882)*(x2900)))+(((IkReal(-1.00000000000000))*(x2887)*(x2901)))+(((IkReal(-1.00000000000000))*(sj5)*(x2883)*(x2898)))+(((IkReal(-1.00000000000000))*(x2884)*(x2890)*(x2898)))+(((x2886)*(x2899)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(r10)*(x2884)*(x2899)))+(((x2891)*(x2901)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x2886)*(x2900)))+(((IkReal(-1.00000000000000))*(sj0)*(x2883)*(x2897)))+(((IkReal(-1.00000000000000))*(x2882)*(x2888)*(x2899)))+(sj2)+(((IkReal(-1.00000000000000))*(x2888)*(x2889)*(x2901)))+(((IkReal(-1.00000000000000))*(x2893)*(x2899)))+(((IkReal(-1.00000000000000))*(x2887)*(x2898)))+(((IkReal(-1.00000000000000))*(x2884)*(x2896)*(x2899)))+(((x2891)*(x2898)))+(((x2894)*(x2900)))+(((IkReal(-1.00000000000000))*(x2884)*(x2890)*(x2901)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x2884)*(x2901)))+(((IkReal(-1.00000000000000))*(sj5)*(x2883)*(x2900)))+(((IkReal(-1.00000000000000))*(x2884)*(x2890)*(x2900)))+(((IkReal(-1.00000000000000))*(x2888)*(x2889)*(x2900)))+(((IkReal(-1.00000000000000))*(x2884)*(x2896)*(x2898)))+(((IkReal(-1.00000000000000))*(r00)*(x2884)*(x2899)))+(((x2887)*(x2899)))+(((IkReal(-1.00000000000000))*(x2882)*(x2888)*(x2898)))+(((x2886)*(x2901)))+(((IkReal(-1.00000000000000))*(x2893)*(x2898)))+(((IkReal(-1.00000000000000))*(cj2)*(cj3)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2906=((IkReal(1.00000000000000))*(sj2)); +if( IKabs(((gconst66)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2906)))+(((r21)*(sj2)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst66)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2906)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(r21)*(x2906)))+(((IkReal(-1.00000000000000))*(cj5)*(r20)*(sj6)*(x2906))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst66)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x2906)))+(((r21)*(sj2)*(sj6)))))), ((gconst66)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x2906)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(r21)*(x2906)))+(((IkReal(-1.00000000000000))*(cj5)*(r20)*(sj6)*(x2906))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x2907=IKsin(j4); +IkReal x2908=IKcos(j4); +IkReal x2909=((r00)*(sj6)); +IkReal x2910=((cj6)*(r01)); +IkReal x2911=((IkReal(1.00000000000000))*(cj0)); +IkReal x2912=((IkReal(1.00000000000000))*(sj0)); +IkReal x2913=((r10)*(sj6)); +IkReal x2914=((sj5)*(x2907)); +IkReal x2915=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x2916=((cj5)*(x2907)); +IkReal x2917=((cj6)*(x2908)); +IkReal x2918=((sj0)*(x2916)); +IkReal x2919=((r01)*(sj6)*(x2908)); +IkReal x2920=((r11)*(sj6)*(x2908)); +evalcond[0]=((((cj6)*(r21)*(x2916)))+(((IkReal(-1.00000000000000))*(r20)*(x2917)))+(((r22)*(x2914)))+(((r21)*(sj6)*(x2908)))+(((r20)*(sj6)*(x2916)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x2911)*(x2913)*(x2916)))+(((IkReal(-1.00000000000000))*(x2911)*(x2920)))+(((cj0)*(r10)*(x2917)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2911)*(x2916)))+(((IkReal(-1.00000000000000))*(r00)*(x2912)*(x2917)))+(((x2910)*(x2918)))+(cj2)+(((IkReal(-1.00000000000000))*(r12)*(x2911)*(x2914)))+(((r02)*(sj0)*(x2914)))+(((sj0)*(x2919)))+(((x2909)*(x2918)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x2909)*(x2911)*(x2916)))+(((IkReal(-1.00000000000000))*(x2912)*(x2920)))+(((cj0)*(r00)*(x2917)))+(sj2)+(((IkReal(-1.00000000000000))*(x2910)*(x2911)*(x2916)))+(((IkReal(-1.00000000000000))*(r02)*(x2911)*(x2914)))+(((IkReal(-1.00000000000000))*(x2912)*(x2913)*(x2916)))+(((IkReal(-1.00000000000000))*(x2911)*(x2919)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2912)*(x2916)))+(((IkReal(-1.00000000000000))*(r12)*(x2912)*(x2914)))+(((r10)*(sj0)*(x2917)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2921=((r20)*(sj6)); +IkReal x2922=((cj4)*(cj5)); +IkReal x2923=((cj6)*(r21)); +if( IKabs(((((x2922)*(x2923)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2921)*(x2922))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x2923)))+(((sj5)*(x2921)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x2922)*(x2923)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2921)*(x2922)))))+IKsqr(((((sj5)*(x2923)))+(((sj5)*(x2921)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x2922)*(x2923)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2921)*(x2922)))), ((((sj5)*(x2923)))+(((sj5)*(x2921)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2924=IKsin(j3); +IkReal x2925=IKcos(j3); +IkReal x2926=((sj0)*(sj5)); +IkReal x2927=((r00)*(sj6)); +IkReal x2928=((cj6)*(r01)); +IkReal x2929=((cj4)*(cj5)); +IkReal x2930=((IkReal(1.00000000000000))*(cj0)); +IkReal x2931=((cj5)*(r12)); +IkReal x2932=((IkReal(1.00000000000000))*(sj0)); +IkReal x2933=((cj6)*(r11)); +IkReal x2934=((cj6)*(sj4)); +IkReal x2935=((cj5)*(r02)); +IkReal x2936=((cj6)*(r21)); +IkReal x2937=((r20)*(sj6)); +IkReal x2938=((r10)*(sj6)); +IkReal x2939=((sj4)*(sj6)); +IkReal x2940=((cj4)*(r02)); +IkReal x2941=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x2942=((cj0)*(x2939)); +IkReal x2943=((IkReal(1.00000000000000))*(x2924)); +IkReal x2944=((IkReal(1.00000000000000))*(x2925)); +evalcond[0]=((((sj5)*(x2937)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x2944)))+(((sj5)*(x2936)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x2939)))+(((x2929)*(x2936)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x2943)))+(((r20)*(x2934)))+(((x2929)*(x2937)))); +evalcond[2]=((((x2926)*(x2927)))+(((cj0)*(x2931)))+(((IkReal(-1.00000000000000))*(sj5)*(x2930)*(x2938)))+(((IkReal(-1.00000000000000))*(x2932)*(x2935)))+(((IkReal(-1.00000000000000))*(sj5)*(x2930)*(x2933)))+(((x2926)*(x2928)))+(((IkReal(-1.00000000000000))*(sj2)*(x2943)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x2926)*(x2938)))+(((cj2)*(x2924)))+(((IkReal(-1.00000000000000))*(sj5)*(x2928)*(x2930)))+(((IkReal(-1.00000000000000))*(x2926)*(x2933)))+(((cj0)*(x2935)))+(((sj0)*(x2931)))+(((IkReal(-1.00000000000000))*(sj5)*(x2927)*(x2930)))); +evalcond[4]=((((x2926)*(x2940)))+(((IkReal(-1.00000000000000))*(r01)*(x2932)*(x2939)))+(((r11)*(x2942)))+(((sj0)*(x2928)*(x2929)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x2930)))+(((r00)*(sj0)*(x2934)))+(((sj0)*(x2927)*(x2929)))+(((IkReal(-1.00000000000000))*(x2929)*(x2930)*(x2933)))+(((IkReal(-1.00000000000000))*(r10)*(x2930)*(x2934)))+(((IkReal(-1.00000000000000))*(x2929)*(x2930)*(x2938)))+(((sj2)*(x2925)))); +evalcond[5]=((((r11)*(sj0)*(x2939)))+(((IkReal(-1.00000000000000))*(x2927)*(x2929)*(x2930)))+(((r01)*(x2942)))+(((IkReal(-1.00000000000000))*(r10)*(x2932)*(x2934)))+(((IkReal(-1.00000000000000))*(x2926)*(x2941)))+(((IkReal(-1.00000000000000))*(r00)*(x2930)*(x2934)))+(((IkReal(-1.00000000000000))*(sj5)*(x2930)*(x2940)))+(((IkReal(-1.00000000000000))*(x2929)*(x2932)*(x2933)))+(((IkReal(-1.00000000000000))*(x2928)*(x2929)*(x2930)))+(((IkReal(-1.00000000000000))*(cj2)*(x2944)))+(((IkReal(-1.00000000000000))*(x2929)*(x2932)*(x2938)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x2945=((cj2)*(sj6)); +IkReal x2946=((IkReal(1.00000000000000))*(r20)); +IkReal x2947=((cj2)*(cj6)); +if( IKabs(((gconst65)*(((((IkReal(-1.00000000000000))*(x2946)*(x2947)))+(((r21)*(x2945))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst65)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x2947)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(x2945)*(x2946))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst65)*(((((IkReal(-1.00000000000000))*(x2946)*(x2947)))+(((r21)*(x2945)))))), ((gconst65)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x2947)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(x2945)*(x2946))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x2948=IKsin(j4); +IkReal x2949=IKcos(j4); +IkReal x2950=((r00)*(sj6)); +IkReal x2951=((cj6)*(r01)); +IkReal x2952=((IkReal(1.00000000000000))*(cj0)); +IkReal x2953=((IkReal(1.00000000000000))*(sj0)); +IkReal x2954=((r10)*(sj6)); +IkReal x2955=((sj5)*(x2948)); +IkReal x2956=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x2957=((cj5)*(x2948)); +IkReal x2958=((cj6)*(x2949)); +IkReal x2959=((sj0)*(x2957)); +IkReal x2960=((r01)*(sj6)*(x2949)); +IkReal x2961=((r11)*(sj6)*(x2949)); +evalcond[0]=((((r20)*(sj6)*(x2957)))+(((cj6)*(r21)*(x2957)))+(((r22)*(x2955)))+(((IkReal(-1.00000000000000))*(r20)*(x2958)))+(((r21)*(sj6)*(x2949)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x2952)*(x2954)*(x2957)))+(((IkReal(-1.00000000000000))*(r12)*(x2952)*(x2955)))+(((IkReal(-1.00000000000000))*(r00)*(x2953)*(x2958)))+(((x2950)*(x2959)))+(((x2951)*(x2959)))+(cj2)+(((sj0)*(x2960)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2952)*(x2957)))+(((IkReal(-1.00000000000000))*(x2952)*(x2961)))+(((cj0)*(r10)*(x2958)))+(((r02)*(sj0)*(x2955)))); +evalcond[2]=((sj2)+(((IkReal(-1.00000000000000))*(x2950)*(x2952)*(x2957)))+(((IkReal(-1.00000000000000))*(x2951)*(x2952)*(x2957)))+(((cj0)*(r00)*(x2958)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x2953)*(x2957)))+(((IkReal(-1.00000000000000))*(r12)*(x2953)*(x2955)))+(((IkReal(-1.00000000000000))*(x2953)*(x2961)))+(((r10)*(sj0)*(x2958)))+(((IkReal(-1.00000000000000))*(x2952)*(x2960)))+(((IkReal(-1.00000000000000))*(x2953)*(x2954)*(x2957)))+(((IkReal(-1.00000000000000))*(r02)*(x2952)*(x2955)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x2962=((r20)*(sj6)); +IkReal x2963=((cj4)*(cj5)); +IkReal x2964=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x2962)*(x2963)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2963)*(x2964))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x2962)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x2964))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x2962)*(x2963)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2963)*(x2964)))))+IKsqr(((((sj5)*(x2962)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x2964)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x2962)*(x2963)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x2963)*(x2964)))), ((((sj5)*(x2962)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x2964))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x2965=IKsin(j3); +IkReal x2966=IKcos(j3); +IkReal x2967=((sj0)*(sj5)); +IkReal x2968=((r00)*(sj6)); +IkReal x2969=((cj6)*(r01)); +IkReal x2970=((cj4)*(cj5)); +IkReal x2971=((IkReal(1.00000000000000))*(cj0)); +IkReal x2972=((cj5)*(r12)); +IkReal x2973=((IkReal(1.00000000000000))*(sj0)); +IkReal x2974=((cj6)*(r11)); +IkReal x2975=((cj6)*(sj4)); +IkReal x2976=((cj5)*(r02)); +IkReal x2977=((cj6)*(r21)); +IkReal x2978=((r20)*(sj6)); +IkReal x2979=((r10)*(sj6)); +IkReal x2980=((sj4)*(sj6)); +IkReal x2981=((cj4)*(r02)); +IkReal x2982=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x2983=((cj0)*(x2980)); +IkReal x2984=((IkReal(1.00000000000000))*(x2965)); +IkReal x2985=((IkReal(1.00000000000000))*(x2966)); +evalcond[0]=((((sj5)*(x2978)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x2985)))+(((sj5)*(x2977)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x2984)))+(((cj4)*(r22)*(sj5)))+(((x2970)*(x2977)))+(((IkReal(-1.00000000000000))*(r21)*(x2980)))+(((r20)*(x2975)))+(((x2970)*(x2978)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x2984)))+(((IkReal(-1.00000000000000))*(x2973)*(x2976)))+(((IkReal(-1.00000000000000))*(sj5)*(x2971)*(x2979)))+(((cj0)*(x2972)))+(((x2967)*(x2968)))+(((x2967)*(x2969)))+(((IkReal(-1.00000000000000))*(sj5)*(x2971)*(x2974)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x2968)*(x2971)))+(((IkReal(-1.00000000000000))*(x2967)*(x2974)))+(((IkReal(-1.00000000000000))*(sj5)*(x2969)*(x2971)))+(((sj0)*(x2972)))+(((cj0)*(x2976)))+(((IkReal(-1.00000000000000))*(x2967)*(x2979)))+(((cj2)*(x2965)))); +evalcond[4]=((((sj0)*(x2969)*(x2970)))+(((IkReal(-1.00000000000000))*(r01)*(x2973)*(x2980)))+(((r11)*(x2983)))+(((IkReal(-1.00000000000000))*(r10)*(x2971)*(x2975)))+(((IkReal(-1.00000000000000))*(x2970)*(x2971)*(x2979)))+(((x2967)*(x2981)))+(((sj0)*(x2968)*(x2970)))+(((IkReal(-1.00000000000000))*(x2970)*(x2971)*(x2974)))+(((r00)*(sj0)*(x2975)))+(((sj2)*(x2966)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x2971)))); +evalcond[5]=((((r01)*(x2983)))+(((IkReal(-1.00000000000000))*(sj5)*(x2971)*(x2981)))+(((IkReal(-1.00000000000000))*(r10)*(x2973)*(x2975)))+(((IkReal(-1.00000000000000))*(r00)*(x2971)*(x2975)))+(((IkReal(-1.00000000000000))*(x2967)*(x2982)))+(((IkReal(-1.00000000000000))*(x2970)*(x2973)*(x2979)))+(((IkReal(-1.00000000000000))*(x2969)*(x2970)*(x2971)))+(((r11)*(sj0)*(x2980)))+(((IkReal(-1.00000000000000))*(x2968)*(x2970)*(x2971)))+(((IkReal(-1.00000000000000))*(cj2)*(x2985)))+(((IkReal(-1.00000000000000))*(x2970)*(x2973)*(x2974)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} +} +} + +} + +} +} +} + +} else +{ +IkReal x2986=((r20)*(sj6)); +IkReal x2987=((IkReal(0.0100000000000000))*(cj5)); +IkReal x2988=((IkReal(0.374290000000000))*(sj5)); +IkReal x2989=((cj6)*(r21)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(-0.364420000000000))+(((x2988)*(x2989)))+(((IkReal(-1.00000000000000))*(x2986)*(x2987)))+(((IkReal(-0.0100000000000000))*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x2987)*(x2989)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x2986)*(x2988)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 ) +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x2990=((r00)*(sj6)); +IkReal x2991=((IkReal(14.4927536231884))*(cj0)); +IkReal x2992=((cj6)*(r11)); +IkReal x2993=((cj0)*(sj5)); +IkReal x2994=((IkReal(0.144927536231884))*(r02)); +IkReal x2995=((r10)*(sj6)); +IkReal x2996=((cj5)*(sj0)); +IkReal x2997=((IkReal(5.42449275362319))*(r12)); +IkReal x2998=((IkReal(14.4927536231884))*(sj0)); +IkReal x2999=((cj6)*(r01)); +IkReal x3000=((sj0)*(sj5)); +IkReal x3001=((IkReal(0.144927536231884))*(r12)); +IkReal x3002=((IkReal(5.42449275362319))*(r02)); +IkReal x3003=((cj0)*(cj5)); +IkReal x3004=((IkReal(0.144927536231884))*(x3003)); +IkReal x3005=((IkReal(5.42449275362319))*(sj5)*(x2999)); +if( IKabs(((((IkReal(0.144927536231884))*(x2990)*(x2996)))+(((IkReal(5.42449275362319))*(x2993)*(x2995)))+(((IkReal(-1.00000000000000))*(px)*(x2998)))+(((IkReal(-1.00000000000000))*(x2997)*(x3003)))+(((x2996)*(x3002)))+(((IkReal(-5.42449275362319))*(x2999)*(x3000)))+(((py)*(x2991)))+(((IkReal(0.144927536231884))*(x2996)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x2993)))+(((IkReal(-1.00000000000000))*(x2993)*(x3001)))+(((IkReal(-1.00000000000000))*(x2995)*(x3004)))+(((x2994)*(x3000)))+(((IkReal(-1.00000000000000))*(x2992)*(x3004)))+(((IkReal(-5.42449275362319))*(x2990)*(x3000))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x2990)*(x3004)))+(((IkReal(5.42449275362319))*(x2993)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x3000)))+(((IkReal(-1.00000000000000))*(x3000)*(x3001)))+(((IkReal(5.42449275362319))*(x2990)*(x2993)))+(((IkReal(5.42449275362319))*(x2995)*(x3000)))+(((IkReal(-1.00000000000000))*(x2999)*(x3004)))+(((px)*(x2991)))+(((IkReal(-1.00000000000000))*(x3002)*(x3003)))+(((IkReal(-1.00000000000000))*(x2993)*(x2994)))+(((py)*(x2998)))+(((IkReal(-0.144927536231884))*(x2992)*(x2996)))+(((IkReal(-0.144927536231884))*(x2995)*(x2996)))+(((IkReal(-1.00000000000000))*(x2996)*(x2997))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(0.144927536231884))*(x2990)*(x2996)))+(((IkReal(5.42449275362319))*(x2993)*(x2995)))+(((IkReal(-1.00000000000000))*(px)*(x2998)))+(((IkReal(-1.00000000000000))*(x2997)*(x3003)))+(((x2996)*(x3002)))+(((IkReal(-5.42449275362319))*(x2999)*(x3000)))+(((py)*(x2991)))+(((IkReal(0.144927536231884))*(x2996)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x2993)))+(((IkReal(-1.00000000000000))*(x2993)*(x3001)))+(((IkReal(-1.00000000000000))*(x2995)*(x3004)))+(((x2994)*(x3000)))+(((IkReal(-1.00000000000000))*(x2992)*(x3004)))+(((IkReal(-5.42449275362319))*(x2990)*(x3000)))))+IKsqr(((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x2990)*(x3004)))+(((IkReal(5.42449275362319))*(x2993)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x3000)))+(((IkReal(-1.00000000000000))*(x3000)*(x3001)))+(((IkReal(5.42449275362319))*(x2990)*(x2993)))+(((IkReal(5.42449275362319))*(x2995)*(x3000)))+(((IkReal(-1.00000000000000))*(x2999)*(x3004)))+(((px)*(x2991)))+(((IkReal(-1.00000000000000))*(x3002)*(x3003)))+(((IkReal(-1.00000000000000))*(x2993)*(x2994)))+(((py)*(x2998)))+(((IkReal(-0.144927536231884))*(x2992)*(x2996)))+(((IkReal(-0.144927536231884))*(x2995)*(x2996)))+(((IkReal(-1.00000000000000))*(x2996)*(x2997)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((IkReal(0.144927536231884))*(x2990)*(x2996)))+(((IkReal(5.42449275362319))*(x2993)*(x2995)))+(((IkReal(-1.00000000000000))*(px)*(x2998)))+(((IkReal(-1.00000000000000))*(x2997)*(x3003)))+(((x2996)*(x3002)))+(((IkReal(-5.42449275362319))*(x2999)*(x3000)))+(((py)*(x2991)))+(((IkReal(0.144927536231884))*(x2996)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x2993)))+(((IkReal(-1.00000000000000))*(x2993)*(x3001)))+(((IkReal(-1.00000000000000))*(x2995)*(x3004)))+(((x2994)*(x3000)))+(((IkReal(-1.00000000000000))*(x2992)*(x3004)))+(((IkReal(-5.42449275362319))*(x2990)*(x3000)))), ((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x2990)*(x3004)))+(((IkReal(5.42449275362319))*(x2993)*(x2999)))+(((IkReal(5.42449275362319))*(x2992)*(x3000)))+(((IkReal(-1.00000000000000))*(x3000)*(x3001)))+(((IkReal(5.42449275362319))*(x2990)*(x2993)))+(((IkReal(5.42449275362319))*(x2995)*(x3000)))+(((IkReal(-1.00000000000000))*(x2999)*(x3004)))+(((px)*(x2991)))+(((IkReal(-1.00000000000000))*(x3002)*(x3003)))+(((IkReal(-1.00000000000000))*(x2993)*(x2994)))+(((py)*(x2998)))+(((IkReal(-0.144927536231884))*(x2992)*(x2996)))+(((IkReal(-0.144927536231884))*(x2995)*(x2996)))+(((IkReal(-1.00000000000000))*(x2996)*(x2997))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[2]; +IkReal x3006=((IkReal(0.374290000000000))*(sj0)); +IkReal x3007=((cj5)*(r02)); +IkReal x3008=((IkReal(0.0100000000000000))*(cj0)); +IkReal x3009=((cj5)*(cj6)); +IkReal x3010=((r02)*(sj5)); +IkReal x3011=((cj5)*(sj6)); +IkReal x3012=((IkReal(1.00000000000000))*(py)); +IkReal x3013=((cj6)*(sj5)); +IkReal x3014=((IkReal(0.0100000000000000))*(sj0)); +IkReal x3015=((sj5)*(sj6)); +IkReal x3016=((cj5)*(r12)); +IkReal x3017=((IkReal(0.374290000000000))*(cj0)); +IkReal x3018=((r12)*(sj5)); +IkReal x3019=((x3013)*(x3017)); +IkReal x3020=((x3015)*(x3017)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj0)*(x3012)))+(((IkReal(-1.00000000000000))*(r10)*(x3020)))+(((IkReal(-1.00000000000000))*(x3006)*(x3007)))+(((r10)*(x3008)*(x3011)))+(((r00)*(x3006)*(x3015)))+(((IkReal(-1.00000000000000))*(r01)*(x3009)*(x3014)))+(((IkReal(-1.00000000000000))*(r11)*(x3019)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((IkReal(-1.00000000000000))*(r00)*(x3011)*(x3014)))+(((x3016)*(x3017)))+(((x3008)*(x3018)))+(((r01)*(x3006)*(x3013)))+(((px)*(sj0)))+(((r11)*(x3008)*(x3009)))+(((IkReal(-1.00000000000000))*(x3010)*(x3014)))); +evalcond[1]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x3006)*(x3015)))+(((r01)*(x3008)*(x3009)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(sj0)*(x3012)))+(((x3007)*(x3017)))+(((x3008)*(x3010)))+(((IkReal(-1.00000000000000))*(r00)*(x3020)))+(((IkReal(0.0690000000000000))*(IKcos(j2))))+(((IkReal(-1.00000000000000))*(r11)*(x3006)*(x3013)))+(((r00)*(x3008)*(x3011)))+(((x3006)*(x3016)))+(((IkReal(-1.00000000000000))*(r01)*(x3019)))+(((r10)*(x3011)*(x3014)))+(((r11)*(x3009)*(x3014)))+(((x3014)*(x3018)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst77; +IkReal x3021=(cj6)*(cj6); +IkReal x3022=(sj6)*(sj6); +IkReal x3023=((IkReal(1.00000000000000))*(r21)); +IkReal x3024=((cj6)*(r20)); +IkReal x3025=((r22)*(sj5)); +IkReal x3026=((r01)*(sj0)); +IkReal x3027=((r00)*(sj0)); +IkReal x3028=((cj0)*(r10)); +IkReal x3029=((r02)*(sj0)*(sj5)); +IkReal x3030=((cj5)*(x3021)); +IkReal x3031=((cj0)*(r12)*(sj5)); +IkReal x3032=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3033=((cj5)*(x3022)); +IkReal x3034=((r20)*(x3033)); +gconst77=IKsign(((((IkReal(-1.00000000000000))*(sj6)*(x3023)*(x3029)))+(((sj6)*(x3025)*(x3026)))+(((x3026)*(x3034)))+(((r20)*(x3026)*(x3030)))+(((r21)*(sj6)*(x3031)))+(((IkReal(-1.00000000000000))*(sj6)*(x3025)*(x3032)))+(((IkReal(-1.00000000000000))*(x3024)*(x3031)))+(((IkReal(-1.00000000000000))*(x3023)*(x3027)*(x3030)))+(((IkReal(-1.00000000000000))*(cj6)*(x3025)*(x3027)))+(((IkReal(-1.00000000000000))*(x3032)*(x3034)))+(((x3024)*(x3029)))+(((IkReal(-1.00000000000000))*(r20)*(x3030)*(x3032)))+(((r21)*(x3028)*(x3030)))+(((IkReal(-1.00000000000000))*(x3023)*(x3027)*(x3033)))+(((cj6)*(x3025)*(x3028)))+(((r21)*(x3028)*(x3033))))); +IkReal x3035=(cj6)*(cj6); +IkReal x3036=(sj6)*(sj6); +IkReal x3037=((IkReal(1.00000000000000))*(r21)); +IkReal x3038=((cj6)*(r20)); +IkReal x3039=((r22)*(sj5)); +IkReal x3040=((r01)*(sj0)); +IkReal x3041=((r00)*(sj0)); +IkReal x3042=((cj0)*(r10)); +IkReal x3043=((r02)*(sj0)*(sj5)); +IkReal x3044=((cj5)*(x3035)); +IkReal x3045=((cj0)*(r12)*(sj5)); +IkReal x3046=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3047=((cj5)*(x3036)); +IkReal x3048=((r20)*(x3047)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x3046)*(x3048)))+(((IkReal(-1.00000000000000))*(x3037)*(x3041)*(x3047)))+(((r20)*(x3040)*(x3044)))+(((r21)*(x3042)*(x3044)))+(((x3040)*(x3048)))+(((cj6)*(x3039)*(x3042)))+(((IkReal(-1.00000000000000))*(sj6)*(x3039)*(x3046)))+(((r21)*(sj6)*(x3045)))+(((IkReal(-1.00000000000000))*(cj6)*(x3039)*(x3041)))+(((IkReal(-1.00000000000000))*(r20)*(x3044)*(x3046)))+(((r21)*(x3042)*(x3047)))+(((IkReal(-1.00000000000000))*(x3038)*(x3045)))+(((x3038)*(x3043)))+(((sj6)*(x3039)*(x3040)))+(((IkReal(-1.00000000000000))*(x3037)*(x3041)*(x3044)))+(((IkReal(-1.00000000000000))*(sj6)*(x3037)*(x3043)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst78; +IkReal x3049=(cj6)*(cj6); +IkReal x3050=(sj6)*(sj6); +IkReal x3051=((sj5)*(sj6)); +IkReal x3052=((IkReal(1.00000000000000))*(cj0)); +IkReal x3053=((cj6)*(sj5)); +IkReal x3054=((r20)*(sj0)); +IkReal x3055=((cj0)*(r20)); +IkReal x3056=((r00)*(r21)); +IkReal x3057=((r22)*(sj0)); +IkReal x3058=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3059=((cj5)*(x3050)); +IkReal x3060=((cj5)*(x3049)); +gconst78=IKsign(((((r12)*(x3053)*(x3054)))+(((r01)*(x3055)*(x3060)))+(((IkReal(-1.00000000000000))*(x3052)*(x3056)*(x3060)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3052)*(x3053)))+(((IkReal(-1.00000000000000))*(x3052)*(x3056)*(x3059)))+(((IkReal(-1.00000000000000))*(r12)*(x3051)*(x3058)))+(((IkReal(-1.00000000000000))*(r10)*(x3058)*(x3060)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3051)*(x3052)))+(((IkReal(-1.00000000000000))*(r10)*(x3053)*(x3057)))+(((r02)*(x3053)*(x3055)))+(((cj0)*(r01)*(r22)*(x3051)))+(((r11)*(x3054)*(x3059)))+(((IkReal(-1.00000000000000))*(r10)*(x3058)*(x3059)))+(((r11)*(x3051)*(x3057)))+(((r11)*(x3054)*(x3060)))+(((r01)*(x3055)*(x3059))))); +IkReal x3061=(cj6)*(cj6); +IkReal x3062=(sj6)*(sj6); +IkReal x3063=((sj5)*(sj6)); +IkReal x3064=((IkReal(1.00000000000000))*(cj0)); +IkReal x3065=((cj6)*(sj5)); +IkReal x3066=((r20)*(sj0)); +IkReal x3067=((cj0)*(r20)); +IkReal x3068=((r00)*(r21)); +IkReal x3069=((r22)*(sj0)); +IkReal x3070=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3071=((cj5)*(x3062)); +IkReal x3072=((cj5)*(x3061)); +dummyeval[0]=((((r12)*(x3065)*(x3066)))+(((IkReal(-1.00000000000000))*(r10)*(x3070)*(x3071)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3064)*(x3065)))+(((r01)*(x3067)*(x3072)))+(((IkReal(-1.00000000000000))*(r12)*(x3063)*(x3070)))+(((cj0)*(r01)*(r22)*(x3063)))+(((r11)*(x3063)*(x3069)))+(((IkReal(-1.00000000000000))*(r10)*(x3070)*(x3072)))+(((r02)*(x3065)*(x3067)))+(((r01)*(x3067)*(x3071)))+(((r11)*(x3066)*(x3072)))+(((r11)*(x3066)*(x3071)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3063)*(x3064)))+(((IkReal(-1.00000000000000))*(x3064)*(x3068)*(x3071)))+(((IkReal(-1.00000000000000))*(x3064)*(x3068)*(x3072)))+(((IkReal(-1.00000000000000))*(r10)*(x3065)*(x3069)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x3073=((sj0)*(sj5)); +IkReal x3074=((r00)*(sj6)); +IkReal x3075=((cj6)*(r01)); +IkReal x3076=((cj0)*(cj5)); +IkReal x3077=((cj0)*(sj5)); +IkReal x3078=((r10)*(sj6)); +IkReal x3079=((cj6)*(r11)); +IkReal x3080=((IkReal(0.374290000000000))*(sj5)); +IkReal x3081=((IkReal(0.0100000000000000))*(r02)); +IkReal x3082=((IkReal(1.00000000000000))*(py)); +IkReal x3083=((cj5)*(sj0)); +IkReal x3084=((IkReal(0.374290000000000))*(r12)); +IkReal x3085=((r20)*(sj6)); +IkReal x3086=((IkReal(0.0100000000000000))*(r12)); +IkReal x3087=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x3088=((r02)*(x3083)); +IkReal x3089=((IkReal(0.374290000000000))*(cj6)*(x3077)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(-0.364420000000000))+(((IkReal(-0.0100000000000000))*(cj5)*(x3085)))+(((cj6)*(r21)*(x3080)))+(((IkReal(-0.0100000000000000))*(r22)*(sj5)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x3080)*(x3085)))+(pz)+(((IkReal(-1.00000000000000))*(r21)*(x3087)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3077)*(x3078)))+(((IkReal(-1.00000000000000))*(x3077)*(x3079)))+(((x3073)*(x3075)))+(((x3073)*(x3074)))+(((r12)*(x3076)))+(((IkReal(-1.00000000000000))*(x3088)))); +evalcond[3]=((((x3076)*(x3084)))+(((IkReal(-1.00000000000000))*(cj0)*(x3082)))+(((IkReal(-0.374290000000000))*(x3077)*(x3078)))+(((IkReal(0.0100000000000000))*(x3076)*(x3079)))+(((IkReal(0.374290000000000))*(x3073)*(x3075)))+(((IkReal(-1.00000000000000))*(x3073)*(x3081)))+(((IkReal(-0.0100000000000000))*(x3075)*(x3083)))+(((IkReal(-0.0100000000000000))*(x3074)*(x3083)))+(((IkReal(-0.374290000000000))*(x3077)*(x3079)))+(((x3077)*(x3086)))+(((px)*(sj0)))+(((IkReal(-0.374290000000000))*(x3088)))+(((IkReal(0.0100000000000000))*(x3076)*(x3078)))+(((IkReal(0.374290000000000))*(x3073)*(x3074)))); +evalcond[4]=((IkReal(0.138000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x3073)*(x3086)))+(((IkReal(0.0100000000000000))*(x3075)*(x3076)))+(((x3083)*(x3084)))+(((IkReal(-0.374290000000000))*(x3074)*(x3077)))+(((IkReal(-1.00000000000000))*(sj0)*(x3082)))+(((IkReal(0.0100000000000000))*(x3079)*(x3083)))+(((IkReal(0.374290000000000))*(r02)*(x3076)))+(((x3077)*(x3081)))+(((IkReal(-0.374290000000000))*(x3073)*(x3078)))+(((IkReal(0.0100000000000000))*(x3074)*(x3076)))+(((IkReal(0.0100000000000000))*(x3078)*(x3083)))+(((IkReal(-0.374290000000000))*(x3073)*(x3079)))+(((IkReal(-0.374290000000000))*(x3075)*(x3077)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3090=((IkReal(1.00000000000000))*(cj6)*(sj5)); +IkReal x3091=((IkReal(1.00000000000000))*(sj5)*(sj6)); +if( IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x3090)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x3091)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3091)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x3090))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r20)*(x3091)))+(((IkReal(-1.00000000000000))*(r21)*(x3090)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x3090)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x3091)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3091)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x3090)))))+IKsqr(((((IkReal(-1.00000000000000))*(r20)*(x3091)))+(((IkReal(-1.00000000000000))*(r21)*(x3090)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x3090)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x3091)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3091)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x3090)))), ((((IkReal(-1.00000000000000))*(r20)*(x3091)))+(((IkReal(-1.00000000000000))*(r21)*(x3090)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x3092=((sj5)*(sj6)); +IkReal x3093=((IkReal(1.00000000000000))*(cj6)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(IKcos(j3))+(((r20)*(x3092)))); +evalcond[1]=((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x3093)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3092)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x3092)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x3093)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst83; +IkReal x3094=(cj5)*(cj5); +IkReal x3095=(r20)*(r20); +IkReal x3096=(sj6)*(sj6); +IkReal x3097=(cj6)*(cj6); +IkReal x3098=(r21)*(r21); +IkReal x3099=((cj6)*(r21)); +IkReal x3100=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3101=((cj5)*(r22)*(sj5)); +gconst83=IKsign(((((x3100)*(x3101)))+(((x3094)*(x3095)*(x3096)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3096)*(x3098)))+(((x3094)*(x3097)*(x3098)))+(((x3095)*(x3097)))+(((IkReal(2.00000000000000))*(x3099)*(x3101)))+(((x3094)*(x3099)*(x3100)))+(((IkReal(-1.00000000000000))*(x3099)*(x3100))))); +IkReal x3102=(cj5)*(cj5); +IkReal x3103=(r20)*(r20); +IkReal x3104=(sj6)*(sj6); +IkReal x3105=(cj6)*(cj6); +IkReal x3106=(r21)*(r21); +IkReal x3107=((cj6)*(r21)); +IkReal x3108=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3109=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x3104)*(x3106)))+(((x3103)*(x3105)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3102)*(x3105)*(x3106)))+(((x3102)*(x3103)*(x3104)))+(((x3102)*(x3107)*(x3108)))+(((IkReal(2.00000000000000))*(x3107)*(x3109)))+(((x3108)*(x3109)))+(((IkReal(-1.00000000000000))*(x3107)*(x3108)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst84; +IkReal x3110=(cj6)*(cj6); +IkReal x3111=(sj6)*(sj6); +IkReal x3112=((IkReal(1.00000000000000))*(r21)); +IkReal x3113=((cj6)*(r20)); +IkReal x3114=((r22)*(sj5)); +IkReal x3115=((r01)*(sj0)); +IkReal x3116=((r00)*(sj0)); +IkReal x3117=((cj0)*(r10)); +IkReal x3118=((r02)*(sj0)*(sj5)); +IkReal x3119=((cj5)*(x3110)); +IkReal x3120=((cj0)*(r12)*(sj5)); +IkReal x3121=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3122=((cj5)*(x3111)); +IkReal x3123=((r20)*(x3122)); +gconst84=IKsign(((((IkReal(-1.00000000000000))*(x3112)*(x3116)*(x3122)))+(((IkReal(-1.00000000000000))*(x3112)*(x3116)*(x3119)))+(((IkReal(-1.00000000000000))*(x3113)*(x3120)))+(((r21)*(sj6)*(x3120)))+(((r20)*(x3115)*(x3119)))+(((IkReal(-1.00000000000000))*(x3121)*(x3123)))+(((IkReal(-1.00000000000000))*(cj6)*(x3114)*(x3116)))+(((IkReal(-1.00000000000000))*(sj6)*(x3114)*(x3121)))+(((x3115)*(x3123)))+(((IkReal(-1.00000000000000))*(sj6)*(x3112)*(x3118)))+(((x3113)*(x3118)))+(((sj6)*(x3114)*(x3115)))+(((IkReal(-1.00000000000000))*(r20)*(x3119)*(x3121)))+(((r21)*(x3117)*(x3119)))+(((cj6)*(x3114)*(x3117)))+(((r21)*(x3117)*(x3122))))); +IkReal x3124=(cj6)*(cj6); +IkReal x3125=(sj6)*(sj6); +IkReal x3126=((IkReal(1.00000000000000))*(r21)); +IkReal x3127=((cj6)*(r20)); +IkReal x3128=((r22)*(sj5)); +IkReal x3129=((r01)*(sj0)); +IkReal x3130=((r00)*(sj0)); +IkReal x3131=((cj0)*(r10)); +IkReal x3132=((r02)*(sj0)*(sj5)); +IkReal x3133=((cj5)*(x3124)); +IkReal x3134=((cj0)*(r12)*(sj5)); +IkReal x3135=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3136=((cj5)*(x3125)); +IkReal x3137=((r20)*(x3136)); +dummyeval[0]=((((cj6)*(x3128)*(x3131)))+(((sj6)*(x3128)*(x3129)))+(((IkReal(-1.00000000000000))*(x3135)*(x3137)))+(((r21)*(x3131)*(x3136)))+(((IkReal(-1.00000000000000))*(x3127)*(x3134)))+(((r21)*(sj6)*(x3134)))+(((r21)*(x3131)*(x3133)))+(((r20)*(x3129)*(x3133)))+(((IkReal(-1.00000000000000))*(r20)*(x3133)*(x3135)))+(((IkReal(-1.00000000000000))*(cj6)*(x3128)*(x3130)))+(((IkReal(-1.00000000000000))*(x3126)*(x3130)*(x3133)))+(((IkReal(-1.00000000000000))*(sj6)*(x3128)*(x3135)))+(((x3129)*(x3137)))+(((IkReal(-1.00000000000000))*(sj6)*(x3126)*(x3132)))+(((IkReal(-1.00000000000000))*(x3126)*(x3130)*(x3136)))+(((x3127)*(x3132)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3138=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((gconst84)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst84)*(((((IkReal(-1.00000000000000))*(cj6)*(r21)*(x3138)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x3138)))+(((IkReal(-1.00000000000000))*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst84)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)))))), ((gconst84)*(((((IkReal(-1.00000000000000))*(cj6)*(r21)*(x3138)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x3138)))+(((IkReal(-1.00000000000000))*(r22)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3139=IKsin(j4); +IkReal x3140=IKcos(j4); +IkReal x3141=((r22)*(sj5)); +IkReal x3142=((IkReal(1.00000000000000))*(cj6)); +IkReal x3143=((IkReal(1.00000000000000))*(cj0)); +IkReal x3144=((cj5)*(r11)); +IkReal x3145=((cj5)*(cj6)); +IkReal x3146=((r11)*(sj6)); +IkReal x3147=((IkReal(1.00000000000000))*(sj6)); +IkReal x3148=((cj6)*(r00)); +IkReal x3149=((r12)*(sj5)); +IkReal x3150=((r02)*(sj5)); +IkReal x3151=((cj6)*(r10)); +IkReal x3152=((cj5)*(sj6)); +IkReal x3153=((cj5)*(r01)); +IkReal x3154=((sj0)*(x3139)); +IkReal x3155=((r00)*(x3152)); +IkReal x3156=((cj0)*(x3139)); +IkReal x3157=((sj0)*(x3140)); +IkReal x3158=((r20)*(x3140)); +IkReal x3159=((cj0)*(x3140)); +IkReal x3160=((r21)*(x3139)); +IkReal x3161=((r21)*(x3140)); +IkReal x3162=((r20)*(x3139)); +IkReal x3163=((x3140)*(x3149)); +IkReal x3164=((r01)*(sj6)*(x3140)); +IkReal x3165=((cj5)*(r10)*(x3147)); +evalcond[0]=((((x3139)*(x3141)))+(((IkReal(-1.00000000000000))*(x3142)*(x3158)))+(((sj6)*(x3161)))+(((x3152)*(x3162)))+(((x3145)*(x3160)))); +evalcond[1]=((((x3152)*(x3158)))+(sj3)+(((cj6)*(x3162)))+(((IkReal(-1.00000000000000))*(x3147)*(x3160)))+(((x3145)*(x3161)))+(((x3140)*(x3141)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x3139)*(x3143)*(x3149)))+(((IkReal(-1.00000000000000))*(r00)*(x3142)*(x3157)))+(((r01)*(sj6)*(x3157)))+(((x3150)*(x3154)))+(((IkReal(-1.00000000000000))*(r10)*(x3139)*(x3143)*(x3152)))+(((IkReal(-1.00000000000000))*(x3140)*(x3143)*(x3146)))+(((IkReal(-1.00000000000000))*(x3142)*(x3144)*(x3156)))+(((r01)*(x3145)*(x3154)))+(((x3151)*(x3159)))+(((x3154)*(x3155)))); +evalcond[3]=((((r01)*(x3145)*(x3157)))+(((x3155)*(x3157)))+(((x3146)*(x3156)))+(((IkReal(-1.00000000000000))*(x3142)*(x3144)*(x3159)))+(((IkReal(-1.00000000000000))*(x3143)*(x3163)))+(((IkReal(-1.00000000000000))*(r10)*(x3142)*(x3156)))+(((IkReal(-1.00000000000000))*(r01)*(x3147)*(x3154)))+(((x3148)*(x3154)))+(((IkReal(-1.00000000000000))*(r10)*(x3140)*(x3143)*(x3152)))+(((x3150)*(x3157)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3154)*(x3165)))+(((IkReal(-1.00000000000000))*(x3142)*(x3153)*(x3156)))+(((IkReal(-1.00000000000000))*(x3146)*(x3157)))+(((IkReal(-1.00000000000000))*(x3143)*(x3164)))+(((IkReal(-1.00000000000000))*(x3142)*(x3144)*(x3154)))+(((IkReal(-1.00000000000000))*(x3149)*(x3154)))+(((x3151)*(x3157)))+(((IkReal(-1.00000000000000))*(x3139)*(x3143)*(x3155)))+(((IkReal(-1.00000000000000))*(x3139)*(x3143)*(x3150)))+(((x3148)*(x3159)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x3142)*(x3153)*(x3159)))+(((IkReal(-1.00000000000000))*(r00)*(x3142)*(x3156)))+(((x3146)*(x3154)))+(((IkReal(-1.00000000000000))*(x3140)*(x3143)*(x3150)))+(cj3)+(((IkReal(-1.00000000000000))*(x3149)*(x3157)))+(((IkReal(-1.00000000000000))*(r10)*(x3142)*(x3154)))+(((IkReal(-1.00000000000000))*(x3157)*(x3165)))+(((IkReal(-1.00000000000000))*(x3142)*(x3144)*(x3157)))+(((r01)*(sj6)*(x3156)))+(((IkReal(-1.00000000000000))*(x3140)*(x3143)*(x3155)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3166=((r21)*(sj3)); +IkReal x3167=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst83)*(((((IkReal(-1.00000000000000))*(cj6)*(x3167)))+(((sj6)*(x3166))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst83)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3166)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3167)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst83)*(((((IkReal(-1.00000000000000))*(cj6)*(x3167)))+(((sj6)*(x3166)))))), ((gconst83)*(((((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3166)))+(((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3167)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3168=IKsin(j4); +IkReal x3169=IKcos(j4); +IkReal x3170=((r22)*(sj5)); +IkReal x3171=((IkReal(1.00000000000000))*(cj6)); +IkReal x3172=((IkReal(1.00000000000000))*(cj0)); +IkReal x3173=((cj5)*(r11)); +IkReal x3174=((cj5)*(cj6)); +IkReal x3175=((r11)*(sj6)); +IkReal x3176=((IkReal(1.00000000000000))*(sj6)); +IkReal x3177=((cj6)*(r00)); +IkReal x3178=((r12)*(sj5)); +IkReal x3179=((r02)*(sj5)); +IkReal x3180=((cj6)*(r10)); +IkReal x3181=((cj5)*(sj6)); +IkReal x3182=((cj5)*(r01)); +IkReal x3183=((sj0)*(x3168)); +IkReal x3184=((r00)*(x3181)); +IkReal x3185=((cj0)*(x3168)); +IkReal x3186=((sj0)*(x3169)); +IkReal x3187=((r20)*(x3169)); +IkReal x3188=((cj0)*(x3169)); +IkReal x3189=((r21)*(x3168)); +IkReal x3190=((r21)*(x3169)); +IkReal x3191=((r20)*(x3168)); +IkReal x3192=((x3169)*(x3178)); +IkReal x3193=((r01)*(sj6)*(x3169)); +IkReal x3194=((cj5)*(r10)*(x3176)); +evalcond[0]=((((sj6)*(x3190)))+(((x3181)*(x3191)))+(((x3168)*(x3170)))+(((IkReal(-1.00000000000000))*(x3171)*(x3187)))+(((x3174)*(x3189)))); +evalcond[1]=((((x3169)*(x3170)))+(sj3)+(((cj6)*(x3191)))+(((x3174)*(x3190)))+(((x3181)*(x3187)))+(((IkReal(-1.00000000000000))*(x3176)*(x3189)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x3168)*(x3172)*(x3181)))+(((x3180)*(x3188)))+(((IkReal(-1.00000000000000))*(r00)*(x3171)*(x3186)))+(((x3183)*(x3184)))+(((r01)*(x3174)*(x3183)))+(((r01)*(sj6)*(x3186)))+(((IkReal(-1.00000000000000))*(x3168)*(x3172)*(x3178)))+(((IkReal(-1.00000000000000))*(x3169)*(x3172)*(x3175)))+(((x3179)*(x3183)))+(((IkReal(-1.00000000000000))*(x3171)*(x3173)*(x3185)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x3171)*(x3173)*(x3188)))+(((x3175)*(x3185)))+(((IkReal(-1.00000000000000))*(r10)*(x3169)*(x3172)*(x3181)))+(((x3184)*(x3186)))+(((x3179)*(x3186)))+(((IkReal(-1.00000000000000))*(x3172)*(x3192)))+(((IkReal(-1.00000000000000))*(r01)*(x3176)*(x3183)))+(((IkReal(-1.00000000000000))*(r10)*(x3171)*(x3185)))+(((x3177)*(x3183)))+(((r01)*(x3174)*(x3186)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3171)*(x3173)*(x3183)))+(((x3180)*(x3186)))+(((x3177)*(x3188)))+(((IkReal(-1.00000000000000))*(x3168)*(x3172)*(x3184)))+(((IkReal(-1.00000000000000))*(x3172)*(x3193)))+(((IkReal(-1.00000000000000))*(x3168)*(x3172)*(x3179)))+(((IkReal(-1.00000000000000))*(x3183)*(x3194)))+(((IkReal(-1.00000000000000))*(x3175)*(x3186)))+(((IkReal(-1.00000000000000))*(x3178)*(x3183)))+(((IkReal(-1.00000000000000))*(x3171)*(x3182)*(x3185)))); +evalcond[5]=((((r01)*(sj6)*(x3185)))+(((IkReal(-1.00000000000000))*(x3178)*(x3186)))+(((IkReal(-1.00000000000000))*(x3169)*(x3172)*(x3184)))+(((IkReal(-1.00000000000000))*(x3186)*(x3194)))+(((IkReal(-1.00000000000000))*(x3171)*(x3173)*(x3186)))+(cj3)+(((IkReal(-1.00000000000000))*(x3171)*(x3182)*(x3188)))+(((x3175)*(x3183)))+(((IkReal(-1.00000000000000))*(x3169)*(x3172)*(x3179)))+(((IkReal(-1.00000000000000))*(r00)*(x3171)*(x3185)))+(((IkReal(-1.00000000000000))*(r10)*(x3171)*(x3183)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x3195=((sj0)*(sj5)); +IkReal x3196=((r00)*(sj6)); +IkReal x3197=((cj6)*(r01)); +IkReal x3198=((cj0)*(cj5)); +IkReal x3199=((cj0)*(sj5)); +IkReal x3200=((r10)*(sj6)); +IkReal x3201=((cj6)*(r11)); +IkReal x3202=((IkReal(0.374290000000000))*(sj5)); +IkReal x3203=((IkReal(0.0100000000000000))*(r02)); +IkReal x3204=((IkReal(1.00000000000000))*(py)); +IkReal x3205=((cj5)*(sj0)); +IkReal x3206=((IkReal(0.374290000000000))*(r12)); +IkReal x3207=((r20)*(sj6)); +IkReal x3208=((IkReal(0.0100000000000000))*(r12)); +IkReal x3209=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x3210=((r02)*(x3205)); +IkReal x3211=((IkReal(0.374290000000000))*(cj6)*(x3199)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((IkReal(-0.364420000000000))+(((IkReal(-0.0100000000000000))*(cj5)*(x3207)))+(((IkReal(-0.0100000000000000))*(r22)*(sj5)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r21)*(x3209)))+(pz)+(((x3202)*(x3207)))+(((cj6)*(r21)*(x3202)))); +evalcond[2]=((((r12)*(x3198)))+(((IkReal(-1.00000000000000))*(x3210)))+(((IkReal(-1.00000000000000))*(x3199)*(x3201)))+(((IkReal(-1.00000000000000))*(x3199)*(x3200)))+(((x3195)*(x3197)))+(((x3195)*(x3196)))); +evalcond[3]=((((IkReal(0.374290000000000))*(x3195)*(x3196)))+(((IkReal(-0.374290000000000))*(x3199)*(x3200)))+(((IkReal(0.374290000000000))*(x3195)*(x3197)))+(((IkReal(0.0100000000000000))*(x3198)*(x3200)))+(((IkReal(-1.00000000000000))*(cj0)*(x3204)))+(((IkReal(-1.00000000000000))*(x3195)*(x3203)))+(((x3198)*(x3206)))+(((x3199)*(x3208)))+(((IkReal(0.0100000000000000))*(x3198)*(x3201)))+(((IkReal(-0.374290000000000))*(x3199)*(x3201)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(x3197)*(x3205)))+(((IkReal(-0.374290000000000))*(x3210)))+(((IkReal(-0.0100000000000000))*(x3196)*(x3205)))); +evalcond[4]=((((IkReal(0.0100000000000000))*(x3197)*(x3198)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-0.374290000000000))*(x3196)*(x3199)))+(((x3195)*(x3208)))+(((IkReal(0.374290000000000))*(r02)*(x3198)))+(((IkReal(-0.374290000000000))*(x3197)*(x3199)))+(((IkReal(-0.374290000000000))*(x3195)*(x3200)))+(((x3199)*(x3203)))+(((IkReal(-1.00000000000000))*(sj0)*(x3204)))+(((x3205)*(x3206)))+(((IkReal(0.0100000000000000))*(x3200)*(x3205)))+(((IkReal(-0.374290000000000))*(x3195)*(x3201)))+(((IkReal(0.0100000000000000))*(x3201)*(x3205)))+(((IkReal(0.0100000000000000))*(x3196)*(x3198)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3212=((IkReal(1.00000000000000))*(cj5)); +IkReal x3213=((cj6)*(sj5)); +IkReal x3214=((sj5)*(sj6)); +if( IKabs(((((r10)*(sj0)*(x3214)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3212)))+(((r11)*(sj0)*(x3213)))+(((cj0)*(r00)*(x3214)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3212)))+(((cj0)*(r01)*(x3213))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r21)*(x3213)))+(((IkReal(-1.00000000000000))*(r20)*(x3214)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r10)*(sj0)*(x3214)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3212)))+(((r11)*(sj0)*(x3213)))+(((cj0)*(r00)*(x3214)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3212)))+(((cj0)*(r01)*(x3213)))))+IKsqr(((((IkReal(-1.00000000000000))*(r21)*(x3213)))+(((IkReal(-1.00000000000000))*(r20)*(x3214)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r10)*(sj0)*(x3214)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3212)))+(((r11)*(sj0)*(x3213)))+(((cj0)*(r00)*(x3214)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3212)))+(((cj0)*(r01)*(x3213)))), ((((IkReal(-1.00000000000000))*(r21)*(x3213)))+(((IkReal(-1.00000000000000))*(r20)*(x3214)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x3215=((sj5)*(sj6)); +IkReal x3216=((IkReal(1.00000000000000))*(cj6)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((r20)*(x3215)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(IKcos(j3))); +evalcond[1]=((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x3215)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x3216)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3215)))+(IKsin(j3))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x3216)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst87; +IkReal x3217=(cj5)*(cj5); +IkReal x3218=(r20)*(r20); +IkReal x3219=(sj6)*(sj6); +IkReal x3220=(cj6)*(cj6); +IkReal x3221=(r21)*(r21); +IkReal x3222=((cj6)*(r21)); +IkReal x3223=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3224=((cj5)*(r22)*(sj5)); +gconst87=IKsign(((((IkReal(-1.00000000000000))*(x3222)*(x3223)))+(((x3217)*(x3218)*(x3219)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3219)*(x3221)))+(((x3218)*(x3220)))+(((x3217)*(x3222)*(x3223)))+(((x3223)*(x3224)))+(((x3217)*(x3220)*(x3221)))+(((IkReal(2.00000000000000))*(x3222)*(x3224))))); +IkReal x3225=(cj5)*(cj5); +IkReal x3226=(r20)*(r20); +IkReal x3227=(sj6)*(sj6); +IkReal x3228=(cj6)*(cj6); +IkReal x3229=(r21)*(r21); +IkReal x3230=((cj6)*(r21)); +IkReal x3231=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3232=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x3227)*(x3229)))+(((x3231)*(x3232)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3225)*(x3228)*(x3229)))+(((IkReal(-1.00000000000000))*(x3230)*(x3231)))+(((x3226)*(x3228)))+(((x3225)*(x3230)*(x3231)))+(((x3225)*(x3226)*(x3227)))+(((IkReal(2.00000000000000))*(x3230)*(x3232)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst88; +IkReal x3233=(cj6)*(cj6); +IkReal x3234=(sj6)*(sj6); +IkReal x3235=((IkReal(1.00000000000000))*(r01)); +IkReal x3236=((sj0)*(sj5)); +IkReal x3237=((cj6)*(r22)); +IkReal x3238=((r21)*(sj6)); +IkReal x3239=((r00)*(r21)); +IkReal x3240=((cj0)*(sj5)); +IkReal x3241=((cj6)*(r20)); +IkReal x3242=((r22)*(sj6)); +IkReal x3243=((cj0)*(cj5)); +IkReal x3244=((IkReal(1.00000000000000))*(r10)); +IkReal x3245=((cj5)*(sj0)); +IkReal x3246=((r20)*(x3234)); +IkReal x3247=((x3233)*(x3245)); +gconst88=IKsign(((((IkReal(-1.00000000000000))*(r21)*(x3234)*(x3243)*(x3244)))+(((r11)*(x3240)*(x3242)))+(((x3234)*(x3239)*(x3245)))+(((r12)*(x3240)*(x3241)))+(((IkReal(-1.00000000000000))*(r21)*(x3233)*(x3243)*(x3244)))+(((r00)*(x3236)*(x3237)))+(((IkReal(-1.00000000000000))*(x3237)*(x3240)*(x3244)))+(((r11)*(r20)*(x3233)*(x3243)))+(((r02)*(x3236)*(x3238)))+(((IkReal(-1.00000000000000))*(x3235)*(x3245)*(x3246)))+(((IkReal(-1.00000000000000))*(x3235)*(x3236)*(x3242)))+(((IkReal(-1.00000000000000))*(r20)*(x3235)*(x3247)))+(((IkReal(-1.00000000000000))*(r02)*(x3236)*(x3241)))+(((IkReal(-1.00000000000000))*(r12)*(x3238)*(x3240)))+(((x3239)*(x3247)))+(((r11)*(x3243)*(x3246))))); +IkReal x3248=(cj6)*(cj6); +IkReal x3249=(sj6)*(sj6); +IkReal x3250=((IkReal(1.00000000000000))*(r01)); +IkReal x3251=((sj0)*(sj5)); +IkReal x3252=((cj6)*(r22)); +IkReal x3253=((r21)*(sj6)); +IkReal x3254=((r00)*(r21)); +IkReal x3255=((cj0)*(sj5)); +IkReal x3256=((cj6)*(r20)); +IkReal x3257=((r22)*(sj6)); +IkReal x3258=((cj0)*(cj5)); +IkReal x3259=((IkReal(1.00000000000000))*(r10)); +IkReal x3260=((cj5)*(sj0)); +IkReal x3261=((r20)*(x3249)); +IkReal x3262=((x3248)*(x3260)); +dummyeval[0]=((((r11)*(x3258)*(x3261)))+(((IkReal(-1.00000000000000))*(x3252)*(x3255)*(x3259)))+(((IkReal(-1.00000000000000))*(x3250)*(x3251)*(x3257)))+(((IkReal(-1.00000000000000))*(r12)*(x3253)*(x3255)))+(((IkReal(-1.00000000000000))*(r02)*(x3251)*(x3256)))+(((r02)*(x3251)*(x3253)))+(((r11)*(r20)*(x3248)*(x3258)))+(((IkReal(-1.00000000000000))*(r21)*(x3248)*(x3258)*(x3259)))+(((r00)*(x3251)*(x3252)))+(((x3249)*(x3254)*(x3260)))+(((r11)*(x3255)*(x3257)))+(((IkReal(-1.00000000000000))*(r21)*(x3249)*(x3258)*(x3259)))+(((IkReal(-1.00000000000000))*(r20)*(x3250)*(x3262)))+(((IkReal(-1.00000000000000))*(x3250)*(x3260)*(x3261)))+(((r12)*(x3255)*(x3256)))+(((x3254)*(x3262)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3263=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((gconst88)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst88)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x3263)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x3263))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst88)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)))))), ((gconst88)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x3263)))+(((IkReal(-1.00000000000000))*(cj6)*(r21)*(x3263))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3264=IKsin(j4); +IkReal x3265=IKcos(j4); +IkReal x3266=((r22)*(sj5)); +IkReal x3267=((IkReal(1.00000000000000))*(cj6)); +IkReal x3268=((IkReal(1.00000000000000))*(cj0)); +IkReal x3269=((cj5)*(r11)); +IkReal x3270=((cj5)*(cj6)); +IkReal x3271=((r11)*(sj6)); +IkReal x3272=((IkReal(1.00000000000000))*(sj6)); +IkReal x3273=((cj6)*(r00)); +IkReal x3274=((r12)*(sj5)); +IkReal x3275=((r02)*(sj5)); +IkReal x3276=((cj6)*(r10)); +IkReal x3277=((cj5)*(sj6)); +IkReal x3278=((cj5)*(r01)); +IkReal x3279=((sj0)*(x3264)); +IkReal x3280=((r00)*(x3277)); +IkReal x3281=((cj0)*(x3264)); +IkReal x3282=((sj0)*(x3265)); +IkReal x3283=((r20)*(x3265)); +IkReal x3284=((cj0)*(x3265)); +IkReal x3285=((r21)*(x3264)); +IkReal x3286=((r21)*(x3265)); +IkReal x3287=((r20)*(x3264)); +IkReal x3288=((x3265)*(x3274)); +IkReal x3289=((r01)*(sj6)*(x3265)); +IkReal x3290=((cj5)*(r10)*(x3272)); +evalcond[0]=((((x3277)*(x3287)))+(((x3264)*(x3266)))+(((IkReal(-1.00000000000000))*(x3267)*(x3283)))+(((x3270)*(x3285)))+(((sj6)*(x3286)))); +evalcond[1]=((sj3)+(((cj6)*(x3287)))+(((IkReal(-1.00000000000000))*(x3272)*(x3285)))+(((x3277)*(x3283)))+(((x3270)*(x3286)))+(((x3265)*(x3266)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r01)*(sj6)*(x3282)))+(((r01)*(x3270)*(x3279)))+(((x3275)*(x3279)))+(((IkReal(-1.00000000000000))*(x3264)*(x3268)*(x3274)))+(((IkReal(-1.00000000000000))*(x3267)*(x3269)*(x3281)))+(((IkReal(-1.00000000000000))*(r10)*(x3264)*(x3268)*(x3277)))+(((x3276)*(x3284)))+(((IkReal(-1.00000000000000))*(r00)*(x3267)*(x3282)))+(((x3279)*(x3280)))+(((IkReal(-1.00000000000000))*(x3265)*(x3268)*(x3271)))); +evalcond[3]=((((x3273)*(x3279)))+(((x3275)*(x3282)))+(((IkReal(-1.00000000000000))*(r10)*(x3265)*(x3268)*(x3277)))+(((r01)*(x3270)*(x3282)))+(((x3280)*(x3282)))+(((IkReal(-1.00000000000000))*(r10)*(x3267)*(x3281)))+(((IkReal(-1.00000000000000))*(x3267)*(x3269)*(x3284)))+(((IkReal(-1.00000000000000))*(x3268)*(x3288)))+(((x3271)*(x3281)))+(((IkReal(-1.00000000000000))*(r01)*(x3272)*(x3279)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3274)*(x3279)))+(((x3273)*(x3284)))+(((IkReal(-1.00000000000000))*(x3279)*(x3290)))+(((IkReal(-1.00000000000000))*(x3267)*(x3278)*(x3281)))+(((IkReal(-1.00000000000000))*(x3267)*(x3269)*(x3279)))+(((IkReal(-1.00000000000000))*(x3264)*(x3268)*(x3280)))+(((x3276)*(x3282)))+(((IkReal(-1.00000000000000))*(x3264)*(x3268)*(x3275)))+(((IkReal(-1.00000000000000))*(x3271)*(x3282)))+(((IkReal(-1.00000000000000))*(x3268)*(x3289)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x3267)*(x3279)))+(((IkReal(-1.00000000000000))*(r00)*(x3267)*(x3281)))+(((IkReal(-1.00000000000000))*(x3274)*(x3282)))+(((x3271)*(x3279)))+(((IkReal(-1.00000000000000))*(x3267)*(x3278)*(x3284)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x3265)*(x3268)*(x3280)))+(((IkReal(-1.00000000000000))*(x3265)*(x3268)*(x3275)))+(((IkReal(-1.00000000000000))*(x3267)*(x3269)*(x3282)))+(((r01)*(sj6)*(x3281)))+(((IkReal(-1.00000000000000))*(x3282)*(x3290)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3291=((r21)*(sj3)); +IkReal x3292=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst87)*(((((sj6)*(x3291)))+(((IkReal(-1.00000000000000))*(cj6)*(x3292))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst87)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3292)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3291)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst87)*(((((sj6)*(x3291)))+(((IkReal(-1.00000000000000))*(cj6)*(x3292)))))), ((gconst87)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3292)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3291)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3293=IKsin(j4); +IkReal x3294=IKcos(j4); +IkReal x3295=((r22)*(sj5)); +IkReal x3296=((IkReal(1.00000000000000))*(cj6)); +IkReal x3297=((IkReal(1.00000000000000))*(cj0)); +IkReal x3298=((cj5)*(r11)); +IkReal x3299=((cj5)*(cj6)); +IkReal x3300=((r11)*(sj6)); +IkReal x3301=((IkReal(1.00000000000000))*(sj6)); +IkReal x3302=((cj6)*(r00)); +IkReal x3303=((r12)*(sj5)); +IkReal x3304=((r02)*(sj5)); +IkReal x3305=((cj6)*(r10)); +IkReal x3306=((cj5)*(sj6)); +IkReal x3307=((cj5)*(r01)); +IkReal x3308=((sj0)*(x3293)); +IkReal x3309=((r00)*(x3306)); +IkReal x3310=((cj0)*(x3293)); +IkReal x3311=((sj0)*(x3294)); +IkReal x3312=((r20)*(x3294)); +IkReal x3313=((cj0)*(x3294)); +IkReal x3314=((r21)*(x3293)); +IkReal x3315=((r21)*(x3294)); +IkReal x3316=((r20)*(x3293)); +IkReal x3317=((x3294)*(x3303)); +IkReal x3318=((r01)*(sj6)*(x3294)); +IkReal x3319=((cj5)*(r10)*(x3301)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x3296)*(x3312)))+(((x3299)*(x3314)))+(((x3293)*(x3295)))+(((x3306)*(x3316)))+(((sj6)*(x3315)))); +evalcond[1]=((((cj6)*(x3316)))+(sj3)+(((x3306)*(x3312)))+(((IkReal(-1.00000000000000))*(x3301)*(x3314)))+(((x3294)*(x3295)))+(((x3299)*(x3315)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x3294)*(x3297)*(x3300)))+(((r01)*(x3299)*(x3308)))+(((IkReal(-1.00000000000000))*(x3296)*(x3298)*(x3310)))+(((x3305)*(x3313)))+(((IkReal(-1.00000000000000))*(r00)*(x3296)*(x3311)))+(((x3308)*(x3309)))+(((IkReal(-1.00000000000000))*(r10)*(x3293)*(x3297)*(x3306)))+(((x3304)*(x3308)))+(((r01)*(sj6)*(x3311)))+(((IkReal(-1.00000000000000))*(x3293)*(x3297)*(x3303)))); +evalcond[3]=((((x3300)*(x3310)))+(((IkReal(-1.00000000000000))*(x3296)*(x3298)*(x3313)))+(((IkReal(-1.00000000000000))*(x3297)*(x3317)))+(((IkReal(-1.00000000000000))*(r10)*(x3294)*(x3297)*(x3306)))+(((x3304)*(x3311)))+(((x3309)*(x3311)))+(((IkReal(-1.00000000000000))*(r01)*(x3301)*(x3308)))+(((IkReal(-1.00000000000000))*(r10)*(x3296)*(x3310)))+(((r01)*(x3299)*(x3311)))+(((x3302)*(x3308)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3300)*(x3311)))+(((x3305)*(x3311)))+(((x3302)*(x3313)))+(((IkReal(-1.00000000000000))*(x3308)*(x3319)))+(((IkReal(-1.00000000000000))*(x3296)*(x3298)*(x3308)))+(((IkReal(-1.00000000000000))*(x3293)*(x3297)*(x3304)))+(((IkReal(-1.00000000000000))*(x3296)*(x3307)*(x3310)))+(((IkReal(-1.00000000000000))*(x3293)*(x3297)*(x3309)))+(((IkReal(-1.00000000000000))*(x3303)*(x3308)))+(((IkReal(-1.00000000000000))*(x3297)*(x3318)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x3296)*(x3308)))+(((r01)*(sj6)*(x3310)))+(((IkReal(-1.00000000000000))*(r00)*(x3296)*(x3310)))+(((IkReal(-1.00000000000000))*(x3296)*(x3307)*(x3313)))+(((IkReal(-1.00000000000000))*(x3311)*(x3319)))+(((x3300)*(x3308)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x3294)*(x3297)*(x3304)))+(((IkReal(-1.00000000000000))*(x3303)*(x3311)))+(((IkReal(-1.00000000000000))*(x3296)*(x3298)*(x3311)))+(((IkReal(-1.00000000000000))*(x3294)*(x3297)*(x3309)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3320=((sj0)*(sj5)); +IkReal x3321=((IkReal(1.00000000000000))*(cj6)*(sj5)); +IkReal x3322=((IkReal(1.00000000000000))*(sj5)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((cj6)*(r01)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r11)*(x3321)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj6)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x3322)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(sj0))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r20)*(x3322)))+(((IkReal(-1.00000000000000))*(r21)*(x3321)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((cj6)*(r01)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r11)*(x3321)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj6)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x3322)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(sj0)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r20)*(x3322)))+(((IkReal(-1.00000000000000))*(r21)*(x3321)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((cj6)*(r01)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r11)*(x3321)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj6)*(x3320)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x3322)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(sj0)))))), ((((IkReal(-1.00000000000000))*(r20)*(x3322)))+(((IkReal(-1.00000000000000))*(r21)*(x3321)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x3323=IKsin(j3); +IkReal x3324=((sj5)*(sj6)); +IkReal x3325=((cj0)*(cj5)); +IkReal x3326=((IkReal(1.00000000000000))*(cj0)); +IkReal x3327=((IkReal(1.00000000000000))*(sj0)); +IkReal x3328=((IkReal(1.00000000000000))*(x3323)); +IkReal x3329=((cj6)*(r01)*(sj5)); +IkReal x3330=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x3324)))+(IKcos(j3))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x3326)*(x3330)))+(((r12)*(x3325)))+(((r00)*(sj0)*(x3324)))+(((IkReal(-1.00000000000000))*(sj2)*(x3328)))+(((IkReal(-1.00000000000000))*(r10)*(x3324)*(x3326)))+(((sj0)*(x3329)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x3327)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x3324)*(x3326)))+(((r02)*(x3325)))+(((IkReal(-1.00000000000000))*(x3327)*(x3330)))+(((IkReal(-1.00000000000000))*(r10)*(x3324)*(x3327)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj2)*(x3328)))+(((IkReal(-1.00000000000000))*(x3326)*(x3329)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst79; +IkReal x3331=(cj5)*(cj5); +IkReal x3332=(r20)*(r20); +IkReal x3333=(sj6)*(sj6); +IkReal x3334=(cj6)*(cj6); +IkReal x3335=(r21)*(r21); +IkReal x3336=((cj6)*(r21)); +IkReal x3337=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3338=((cj5)*(r22)*(sj5)); +gconst79=IKsign(((((x3337)*(x3338)))+(((IkReal(-1.00000000000000))*(x3336)*(x3337)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3331)*(x3334)*(x3335)))+(((x3331)*(x3336)*(x3337)))+(((x3331)*(x3332)*(x3333)))+(((x3333)*(x3335)))+(((IkReal(2.00000000000000))*(x3336)*(x3338)))+(((x3332)*(x3334))))); +IkReal x3339=(cj5)*(cj5); +IkReal x3340=(r20)*(r20); +IkReal x3341=(sj6)*(sj6); +IkReal x3342=(cj6)*(cj6); +IkReal x3343=(r21)*(r21); +IkReal x3344=((cj6)*(r21)); +IkReal x3345=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3346=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x3344)*(x3345)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3340)*(x3342)))+(((x3341)*(x3343)))+(((x3339)*(x3340)*(x3341)))+(((x3339)*(x3342)*(x3343)))+(((x3345)*(x3346)))+(((IkReal(2.00000000000000))*(x3344)*(x3346)))+(((x3339)*(x3344)*(x3345)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst80; +IkReal x3347=(cj6)*(cj6); +IkReal x3348=(sj6)*(sj6); +IkReal x3349=((IkReal(1.00000000000000))*(r21)); +IkReal x3350=((cj6)*(r20)); +IkReal x3351=((r22)*(sj5)); +IkReal x3352=((r01)*(sj0)); +IkReal x3353=((r00)*(sj0)); +IkReal x3354=((cj0)*(r10)); +IkReal x3355=((r02)*(sj0)*(sj5)); +IkReal x3356=((cj5)*(x3347)); +IkReal x3357=((cj0)*(r12)*(sj5)); +IkReal x3358=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3359=((cj5)*(x3348)); +IkReal x3360=((r20)*(x3359)); +gconst80=IKsign(((((x3352)*(x3360)))+(((IkReal(-1.00000000000000))*(x3349)*(x3353)*(x3359)))+(((r20)*(x3352)*(x3356)))+(((IkReal(-1.00000000000000))*(x3358)*(x3360)))+(((x3350)*(x3355)))+(((cj6)*(x3351)*(x3354)))+(((IkReal(-1.00000000000000))*(sj6)*(x3351)*(x3358)))+(((IkReal(-1.00000000000000))*(cj6)*(x3351)*(x3353)))+(((r21)*(sj6)*(x3357)))+(((r21)*(x3354)*(x3356)))+(((sj6)*(x3351)*(x3352)))+(((r21)*(x3354)*(x3359)))+(((IkReal(-1.00000000000000))*(r20)*(x3356)*(x3358)))+(((IkReal(-1.00000000000000))*(x3349)*(x3353)*(x3356)))+(((IkReal(-1.00000000000000))*(x3350)*(x3357)))+(((IkReal(-1.00000000000000))*(sj6)*(x3349)*(x3355))))); +IkReal x3361=(cj6)*(cj6); +IkReal x3362=(sj6)*(sj6); +IkReal x3363=((IkReal(1.00000000000000))*(r21)); +IkReal x3364=((cj6)*(r20)); +IkReal x3365=((r22)*(sj5)); +IkReal x3366=((r01)*(sj0)); +IkReal x3367=((r00)*(sj0)); +IkReal x3368=((cj0)*(r10)); +IkReal x3369=((r02)*(sj0)*(sj5)); +IkReal x3370=((cj5)*(x3361)); +IkReal x3371=((cj0)*(r12)*(sj5)); +IkReal x3372=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3373=((cj5)*(x3362)); +IkReal x3374=((r20)*(x3373)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r20)*(x3370)*(x3372)))+(((x3366)*(x3374)))+(((x3364)*(x3369)))+(((r21)*(x3368)*(x3370)))+(((IkReal(-1.00000000000000))*(x3363)*(x3367)*(x3370)))+(((r21)*(sj6)*(x3371)))+(((r21)*(x3368)*(x3373)))+(((IkReal(-1.00000000000000))*(x3364)*(x3371)))+(((IkReal(-1.00000000000000))*(sj6)*(x3363)*(x3369)))+(((IkReal(-1.00000000000000))*(x3372)*(x3374)))+(((cj6)*(x3365)*(x3368)))+(((r20)*(x3366)*(x3370)))+(((sj6)*(x3365)*(x3366)))+(((IkReal(-1.00000000000000))*(x3363)*(x3367)*(x3373)))+(((IkReal(-1.00000000000000))*(sj6)*(x3365)*(x3372)))+(((IkReal(-1.00000000000000))*(cj6)*(x3365)*(x3367)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3375=((cj2)*(sj6)); +IkReal x3376=((IkReal(1.00000000000000))*(r20)); +IkReal x3377=((cj2)*(cj6)); +if( IKabs(((gconst80)*(((((r21)*(x3375)))+(((IkReal(-1.00000000000000))*(x3376)*(x3377))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst80)*(((((IkReal(-1.00000000000000))*(cj5)*(x3375)*(x3376)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r21)*(x3377))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst80)*(((((r21)*(x3375)))+(((IkReal(-1.00000000000000))*(x3376)*(x3377)))))), ((gconst80)*(((((IkReal(-1.00000000000000))*(cj5)*(x3375)*(x3376)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r21)*(x3377))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3378=IKsin(j4); +IkReal x3379=IKcos(j4); +IkReal x3380=((r00)*(sj6)); +IkReal x3381=((IkReal(1.00000000000000))*(r12)); +IkReal x3382=((IkReal(1.00000000000000))*(cj6)); +IkReal x3383=((cj6)*(r01)); +IkReal x3384=((r11)*(sj6)); +IkReal x3385=((r01)*(sj6)); +IkReal x3386=((IkReal(1.00000000000000))*(cj5)); +IkReal x3387=((IkReal(1.00000000000000))*(sj6)); +IkReal x3388=((cj5)*(r11)); +IkReal x3389=((cj6)*(r00)); +IkReal x3390=((cj5)*(cj6)); +IkReal x3391=((r02)*(sj5)); +IkReal x3392=((cj6)*(r10)); +IkReal x3393=((cj5)*(sj6)); +IkReal x3394=((r10)*(sj6)); +IkReal x3395=((cj5)*(r01)); +IkReal x3396=((sj5)*(x3378)); +IkReal x3397=((cj0)*(x3379)); +IkReal x3398=((cj0)*(x3378)); +IkReal x3399=((sj0)*(x3379)); +IkReal x3400=((sj0)*(x3378)); +IkReal x3401=((r20)*(x3379)); +IkReal x3402=((r21)*(x3378)); +IkReal x3403=((r21)*(x3379)); +IkReal x3404=((r20)*(x3378)); +IkReal x3405=((cj5)*(x3400)); +evalcond[0]=((((r22)*(x3396)))+(((IkReal(-1.00000000000000))*(x3382)*(x3401)))+(((x3393)*(x3404)))+(((x3390)*(x3402)))+(((sj6)*(x3403)))); +evalcond[1]=((((cj6)*(x3404)))+(sj3)+(((IkReal(-1.00000000000000))*(x3387)*(x3402)))+(((r22)*(sj5)*(x3379)))+(((x3393)*(x3401)))+(((x3390)*(x3403)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3384)*(x3397)))+(((x3385)*(x3399)))+(((x3391)*(x3400)))+(((IkReal(-1.00000000000000))*(x3386)*(x3394)*(x3398)))+(((x3392)*(x3397)))+(((x3380)*(x3405)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x3382)*(x3399)))+(((IkReal(-1.00000000000000))*(x3382)*(x3388)*(x3398)))+(((IkReal(-1.00000000000000))*(cj0)*(x3381)*(x3396)))+(((x3383)*(x3405)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x3382)*(x3388)*(x3397)))+(((IkReal(-1.00000000000000))*(x3386)*(x3394)*(x3397)))+(((x3389)*(x3400)))+(((IkReal(-1.00000000000000))*(sj5)*(x3381)*(x3397)))+(((cj5)*(x3380)*(x3399)))+(((IkReal(-1.00000000000000))*(r10)*(x3382)*(x3398)))+(((IkReal(-1.00000000000000))*(x3385)*(x3400)))+(((cj5)*(x3383)*(x3399)))+(((cj3)*(sj2)))+(((x3391)*(x3399)))+(((x3384)*(x3398)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(sj0)*(x3381)*(x3396)))+(((IkReal(-1.00000000000000))*(sj2)))+(((x3389)*(x3397)))+(((IkReal(-1.00000000000000))*(x3385)*(x3397)))+(((x3392)*(x3399)))+(((IkReal(-1.00000000000000))*(x3391)*(x3398)))+(((IkReal(-1.00000000000000))*(x3380)*(x3386)*(x3398)))+(((IkReal(-1.00000000000000))*(x3386)*(x3394)*(x3400)))+(((IkReal(-1.00000000000000))*(x3382)*(x3395)*(x3398)))+(((IkReal(-1.00000000000000))*(x3384)*(x3399)))+(((IkReal(-1.00000000000000))*(x3382)*(x3388)*(x3400)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x3382)*(x3400)))+(((IkReal(-1.00000000000000))*(x3380)*(x3386)*(x3397)))+(((IkReal(-1.00000000000000))*(x3391)*(x3397)))+(((IkReal(-1.00000000000000))*(x3386)*(x3394)*(x3399)))+(((IkReal(-1.00000000000000))*(r00)*(x3382)*(x3398)))+(((x3384)*(x3400)))+(((cj2)*(cj3)))+(((IkReal(-1.00000000000000))*(x3382)*(x3395)*(x3397)))+(((IkReal(-1.00000000000000))*(sj5)*(x3381)*(x3399)))+(((x3385)*(x3398)))+(((IkReal(-1.00000000000000))*(x3382)*(x3388)*(x3399)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3406=((r21)*(sj3)); +IkReal x3407=((IkReal(1.00000000000000))*(r20)*(sj3)); +if( IKabs(((gconst79)*(((((sj6)*(x3406)))+(((IkReal(-1.00000000000000))*(cj6)*(x3407))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst79)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3407)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3406)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst79)*(((((sj6)*(x3406)))+(((IkReal(-1.00000000000000))*(cj6)*(x3407)))))), ((gconst79)*(((((IkReal(-1.00000000000000))*(cj5)*(sj6)*(x3407)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(x3406)))+(((IkReal(-1.00000000000000))*(r22)*(sj3)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3408=IKsin(j4); +IkReal x3409=IKcos(j4); +IkReal x3410=((r00)*(sj6)); +IkReal x3411=((IkReal(1.00000000000000))*(r12)); +IkReal x3412=((IkReal(1.00000000000000))*(cj6)); +IkReal x3413=((cj6)*(r01)); +IkReal x3414=((r11)*(sj6)); +IkReal x3415=((r01)*(sj6)); +IkReal x3416=((IkReal(1.00000000000000))*(cj5)); +IkReal x3417=((IkReal(1.00000000000000))*(sj6)); +IkReal x3418=((cj5)*(r11)); +IkReal x3419=((cj6)*(r00)); +IkReal x3420=((cj5)*(cj6)); +IkReal x3421=((r02)*(sj5)); +IkReal x3422=((cj6)*(r10)); +IkReal x3423=((cj5)*(sj6)); +IkReal x3424=((r10)*(sj6)); +IkReal x3425=((cj5)*(r01)); +IkReal x3426=((sj5)*(x3408)); +IkReal x3427=((cj0)*(x3409)); +IkReal x3428=((cj0)*(x3408)); +IkReal x3429=((sj0)*(x3409)); +IkReal x3430=((sj0)*(x3408)); +IkReal x3431=((r20)*(x3409)); +IkReal x3432=((r21)*(x3408)); +IkReal x3433=((r21)*(x3409)); +IkReal x3434=((r20)*(x3408)); +IkReal x3435=((cj5)*(x3430)); +evalcond[0]=((((r22)*(x3426)))+(((sj6)*(x3433)))+(((x3420)*(x3432)))+(((IkReal(-1.00000000000000))*(x3412)*(x3431)))+(((x3423)*(x3434)))); +evalcond[1]=((((r22)*(sj5)*(x3409)))+(sj3)+(((cj6)*(x3434)))+(((x3423)*(x3431)))+(((x3420)*(x3433)))+(((IkReal(-1.00000000000000))*(x3417)*(x3432)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3414)*(x3427)))+(((IkReal(-1.00000000000000))*(r00)*(x3412)*(x3429)))+(((IkReal(-1.00000000000000))*(x3416)*(x3424)*(x3428)))+(((x3422)*(x3427)))+(((x3415)*(x3429)))+(((x3413)*(x3435)))+(cj2)+(((IkReal(-1.00000000000000))*(cj0)*(x3411)*(x3426)))+(((x3410)*(x3435)))+(((IkReal(-1.00000000000000))*(x3412)*(x3418)*(x3428)))+(((x3421)*(x3430)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x3415)*(x3430)))+(((IkReal(-1.00000000000000))*(x3412)*(x3418)*(x3427)))+(((x3419)*(x3430)))+(((IkReal(-1.00000000000000))*(sj5)*(x3411)*(x3427)))+(((cj5)*(x3410)*(x3429)))+(((IkReal(-1.00000000000000))*(r10)*(x3412)*(x3428)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(x3416)*(x3424)*(x3427)))+(((x3421)*(x3429)))+(((x3414)*(x3428)))+(((cj5)*(x3413)*(x3429)))); +evalcond[4]=((((x3419)*(x3427)))+(((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(x3421)*(x3428)))+(((IkReal(-1.00000000000000))*(x3412)*(x3425)*(x3428)))+(((IkReal(-1.00000000000000))*(x3412)*(x3418)*(x3430)))+(((x3422)*(x3429)))+(((IkReal(-1.00000000000000))*(x3410)*(x3416)*(x3428)))+(((IkReal(-1.00000000000000))*(x3414)*(x3429)))+(((IkReal(-1.00000000000000))*(sj0)*(x3411)*(x3426)))+(((IkReal(-1.00000000000000))*(x3415)*(x3427)))+(((IkReal(-1.00000000000000))*(x3416)*(x3424)*(x3430)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x3412)*(x3418)*(x3429)))+(((IkReal(-1.00000000000000))*(x3410)*(x3416)*(x3427)))+(((x3415)*(x3428)))+(((x3414)*(x3430)))+(((IkReal(-1.00000000000000))*(r00)*(x3412)*(x3428)))+(((IkReal(-1.00000000000000))*(x3416)*(x3424)*(x3429)))+(((cj2)*(cj3)))+(((IkReal(-1.00000000000000))*(x3412)*(x3425)*(x3427)))+(((IkReal(-1.00000000000000))*(r10)*(x3412)*(x3430)))+(((IkReal(-1.00000000000000))*(sj5)*(x3411)*(x3429)))+(((IkReal(-1.00000000000000))*(x3421)*(x3427)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3436=((IkReal(1.00000000000000))*(sj2)); +if( IKabs(((gconst78)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x3436)))+(((r21)*(sj2)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst78)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x3436)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(r21)*(x3436)))+(((IkReal(-1.00000000000000))*(cj5)*(r20)*(sj6)*(x3436))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst78)*(((((IkReal(-1.00000000000000))*(cj6)*(r20)*(x3436)))+(((r21)*(sj2)*(sj6)))))), ((gconst78)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x3436)))+(((IkReal(-1.00000000000000))*(cj5)*(cj6)*(r21)*(x3436)))+(((IkReal(-1.00000000000000))*(cj5)*(r20)*(sj6)*(x3436))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x3437=IKsin(j4); +IkReal x3438=IKcos(j4); +IkReal x3439=((r00)*(sj6)); +IkReal x3440=((cj6)*(r01)); +IkReal x3441=((IkReal(1.00000000000000))*(cj0)); +IkReal x3442=((IkReal(1.00000000000000))*(sj0)); +IkReal x3443=((r10)*(sj6)); +IkReal x3444=((sj5)*(x3437)); +IkReal x3445=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x3446=((cj5)*(x3437)); +IkReal x3447=((cj6)*(x3438)); +IkReal x3448=((sj0)*(x3446)); +IkReal x3449=((r01)*(sj6)*(x3438)); +IkReal x3450=((r11)*(sj6)*(x3438)); +evalcond[0]=((((r22)*(x3444)))+(((r21)*(sj6)*(x3438)))+(((r20)*(sj6)*(x3446)))+(((cj6)*(r21)*(x3446)))+(((IkReal(-1.00000000000000))*(r20)*(x3447)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r12)*(x3441)*(x3444)))+(((r02)*(sj0)*(x3444)))+(((sj0)*(x3449)))+(((x3440)*(x3448)))+(((IkReal(-1.00000000000000))*(x3441)*(x3450)))+(cj2)+(((cj0)*(r10)*(x3447)))+(((x3439)*(x3448)))+(((IkReal(-1.00000000000000))*(r00)*(x3442)*(x3447)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x3441)*(x3446)))+(((IkReal(-1.00000000000000))*(x3441)*(x3443)*(x3446)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3440)*(x3441)*(x3446)))+(((IkReal(-1.00000000000000))*(x3442)*(x3443)*(x3446)))+(((IkReal(-1.00000000000000))*(x3439)*(x3441)*(x3446)))+(((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(r02)*(x3441)*(x3444)))+(((r10)*(sj0)*(x3447)))+(((cj0)*(r00)*(x3447)))+(((IkReal(-1.00000000000000))*(x3442)*(x3450)))+(((IkReal(-1.00000000000000))*(r12)*(x3442)*(x3444)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x3442)*(x3446)))+(((IkReal(-1.00000000000000))*(x3441)*(x3449)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3451=((IkReal(1.00000000000000))*(sj5)); +IkReal x3452=((cj6)*(r21)); +IkReal x3453=((r20)*(sj6)); +IkReal x3454=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x3452)*(x3454)))+(((IkReal(-1.00000000000000))*(x3453)*(x3454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3451)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x3451)*(x3452)))+(((IkReal(-1.00000000000000))*(x3451)*(x3453)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x3452)*(x3454)))+(((IkReal(-1.00000000000000))*(x3453)*(x3454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3451)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x3451)*(x3452)))+(((IkReal(-1.00000000000000))*(x3451)*(x3453)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x3452)*(x3454)))+(((IkReal(-1.00000000000000))*(x3453)*(x3454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3451)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x3451)*(x3452)))+(((IkReal(-1.00000000000000))*(x3451)*(x3453)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x3455=IKsin(j3); +IkReal x3456=IKcos(j3); +IkReal x3457=((sj0)*(sj5)); +IkReal x3458=((r00)*(sj6)); +IkReal x3459=((IkReal(1.00000000000000))*(cj4)); +IkReal x3460=((cj6)*(r01)); +IkReal x3461=((cj0)*(cj5)); +IkReal x3462=((cj5)*(sj0)); +IkReal x3463=((cj6)*(r11)); +IkReal x3464=((cj0)*(sj5)); +IkReal x3465=((cj6)*(sj4)); +IkReal x3466=((cj4)*(cj5)); +IkReal x3467=((cj6)*(r21)); +IkReal x3468=((r20)*(sj6)); +IkReal x3469=((r10)*(sj6)); +IkReal x3470=((IkReal(1.00000000000000))*(cj0)); +IkReal x3471=((IkReal(1.00000000000000))*(x3455)); +IkReal x3472=((cj0)*(sj4)*(sj6)); +IkReal x3473=((sj0)*(sj4)*(sj6)); +evalcond[0]=((x3456)+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x3468)))+(((sj5)*(x3467)))); +evalcond[1]=((((r20)*(x3465)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(x3455)+(((cj4)*(r22)*(sj5)))+(((x3466)*(x3468)))+(((x3466)*(x3467)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x3471)))+(((IkReal(-1.00000000000000))*(r02)*(x3462)))+(((x3457)*(x3460)))+(((IkReal(-1.00000000000000))*(x3464)*(x3469)))+(((x3457)*(x3458)))+(((IkReal(-1.00000000000000))*(x3463)*(x3464)))+(((r12)*(x3461)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x3457)*(x3463)))+(((IkReal(-1.00000000000000))*(cj2)*(x3471)))+(((r02)*(x3461)))+(((IkReal(-1.00000000000000))*(x3460)*(x3464)))+(((r12)*(x3462)))+(((IkReal(-1.00000000000000))*(x3457)*(x3469)))+(((IkReal(-1.00000000000000))*(x3458)*(x3464)))); +evalcond[4]=((((r00)*(sj0)*(x3465)))+(((cj4)*(x3458)*(x3462)))+(((IkReal(-1.00000000000000))*(r12)*(x3459)*(x3464)))+(((cj4)*(r02)*(x3457)))+(((IkReal(-1.00000000000000))*(r01)*(x3473)))+(((IkReal(-1.00000000000000))*(x3459)*(x3461)*(x3469)))+(((sj2)*(x3456)))+(((cj4)*(x3460)*(x3462)))+(((IkReal(-1.00000000000000))*(r10)*(x3465)*(x3470)))+(((IkReal(-1.00000000000000))*(x3459)*(x3461)*(x3463)))+(((r11)*(x3472)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x3458)*(x3459)*(x3461)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3465)))+(((IkReal(-1.00000000000000))*(x3459)*(x3460)*(x3461)))+(((r01)*(x3472)))+(((cj2)*(x3456)))+(((IkReal(-1.00000000000000))*(r00)*(x3465)*(x3470)))+(((IkReal(-1.00000000000000))*(r02)*(x3459)*(x3464)))+(((r11)*(x3473)))+(((IkReal(-1.00000000000000))*(r12)*(x3457)*(x3459)))+(((IkReal(-1.00000000000000))*(x3459)*(x3462)*(x3469)))+(((IkReal(-1.00000000000000))*(x3459)*(x3462)*(x3463)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3474=((cj2)*(sj6)); +IkReal x3475=((IkReal(1.00000000000000))*(r20)); +IkReal x3476=((cj2)*(cj6)); +if( IKabs(((gconst77)*(((((r21)*(x3474)))+(((IkReal(-1.00000000000000))*(x3475)*(x3476))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst77)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x3476)))+(((IkReal(-1.00000000000000))*(cj5)*(x3474)*(x3475)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst77)*(((((r21)*(x3474)))+(((IkReal(-1.00000000000000))*(x3475)*(x3476)))))), ((gconst77)*(((((IkReal(-1.00000000000000))*(cj5)*(r21)*(x3476)))+(((IkReal(-1.00000000000000))*(cj5)*(x3474)*(x3475)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x3477=IKsin(j4); +IkReal x3478=IKcos(j4); +IkReal x3479=((r00)*(sj6)); +IkReal x3480=((cj6)*(r01)); +IkReal x3481=((IkReal(1.00000000000000))*(cj0)); +IkReal x3482=((IkReal(1.00000000000000))*(sj0)); +IkReal x3483=((r10)*(sj6)); +IkReal x3484=((sj5)*(x3477)); +IkReal x3485=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x3486=((cj5)*(x3477)); +IkReal x3487=((cj6)*(x3478)); +IkReal x3488=((sj0)*(x3486)); +IkReal x3489=((r01)*(sj6)*(x3478)); +IkReal x3490=((r11)*(sj6)*(x3478)); +evalcond[0]=((((r20)*(sj6)*(x3486)))+(((cj6)*(r21)*(x3486)))+(((r21)*(sj6)*(x3478)))+(((IkReal(-1.00000000000000))*(r20)*(x3487)))+(((r22)*(x3484)))); +evalcond[1]=((((sj0)*(x3489)))+(((IkReal(-1.00000000000000))*(r12)*(x3481)*(x3484)))+(((IkReal(-1.00000000000000))*(x3481)*(x3483)*(x3486)))+(((r02)*(sj0)*(x3484)))+(((cj0)*(r10)*(x3487)))+(((IkReal(-1.00000000000000))*(r00)*(x3482)*(x3487)))+(cj2)+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x3481)*(x3486)))+(((x3479)*(x3488)))+(((x3480)*(x3488)))+(((IkReal(-1.00000000000000))*(x3481)*(x3490)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x3481)*(x3484)))+(((IkReal(-1.00000000000000))*(x3482)*(x3483)*(x3486)))+(((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(x3479)*(x3481)*(x3486)))+(((IkReal(-1.00000000000000))*(x3482)*(x3490)))+(((cj0)*(r00)*(x3487)))+(((IkReal(-1.00000000000000))*(r12)*(x3482)*(x3484)))+(((r10)*(sj0)*(x3487)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x3482)*(x3486)))+(((IkReal(-1.00000000000000))*(x3480)*(x3481)*(x3486)))+(((IkReal(-1.00000000000000))*(x3481)*(x3489)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3491=((IkReal(1.00000000000000))*(sj5)); +IkReal x3492=((cj6)*(r21)); +IkReal x3493=((r20)*(sj6)); +IkReal x3494=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3491)))+(((IkReal(-1.00000000000000))*(x3493)*(x3494)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x3492)*(x3494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x3491)*(x3492)))+(((IkReal(-1.00000000000000))*(x3491)*(x3493)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3491)))+(((IkReal(-1.00000000000000))*(x3493)*(x3494)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x3492)*(x3494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x3491)*(x3492)))+(((IkReal(-1.00000000000000))*(x3491)*(x3493)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x3491)))+(((IkReal(-1.00000000000000))*(x3493)*(x3494)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x3492)*(x3494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x3491)*(x3492)))+(((IkReal(-1.00000000000000))*(x3491)*(x3493)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x3495=IKsin(j3); +IkReal x3496=IKcos(j3); +IkReal x3497=((sj0)*(sj5)); +IkReal x3498=((r00)*(sj6)); +IkReal x3499=((IkReal(1.00000000000000))*(cj4)); +IkReal x3500=((cj6)*(r01)); +IkReal x3501=((cj0)*(cj5)); +IkReal x3502=((cj5)*(sj0)); +IkReal x3503=((cj6)*(r11)); +IkReal x3504=((cj0)*(sj5)); +IkReal x3505=((cj6)*(sj4)); +IkReal x3506=((cj4)*(cj5)); +IkReal x3507=((cj6)*(r21)); +IkReal x3508=((r20)*(sj6)); +IkReal x3509=((r10)*(sj6)); +IkReal x3510=((IkReal(1.00000000000000))*(cj0)); +IkReal x3511=((IkReal(1.00000000000000))*(x3495)); +IkReal x3512=((cj0)*(sj4)*(sj6)); +IkReal x3513=((sj0)*(sj4)*(sj6)); +evalcond[0]=((x3496)+(((sj5)*(x3508)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x3507)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x3506)*(x3507)))+(x3495)+(((cj4)*(r22)*(sj5)))+(((x3506)*(x3508)))+(((r20)*(x3505)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3503)*(x3504)))+(((IkReal(-1.00000000000000))*(x3504)*(x3509)))+(((IkReal(-1.00000000000000))*(r02)*(x3502)))+(((r12)*(x3501)))+(((x3497)*(x3500)))+(((x3497)*(x3498)))+(((IkReal(-1.00000000000000))*(sj2)*(x3511)))); +evalcond[3]=((((r02)*(x3501)))+(((IkReal(-1.00000000000000))*(x3497)*(x3509)))+(((IkReal(-1.00000000000000))*(x3498)*(x3504)))+(((IkReal(-1.00000000000000))*(x3500)*(x3504)))+(((IkReal(-1.00000000000000))*(x3497)*(x3503)))+(((IkReal(-1.00000000000000))*(cj2)*(x3511)))+(((r12)*(x3502)))); +evalcond[4]=((((cj4)*(r02)*(x3497)))+(((IkReal(-1.00000000000000))*(r10)*(x3505)*(x3510)))+(((IkReal(-1.00000000000000))*(x3499)*(x3501)*(x3509)))+(((r00)*(sj0)*(x3505)))+(((IkReal(-1.00000000000000))*(x3499)*(x3501)*(x3503)))+(((IkReal(-1.00000000000000))*(r01)*(x3513)))+(((r11)*(x3512)))+(((cj4)*(x3500)*(x3502)))+(((sj2)*(x3496)))+(((cj4)*(x3498)*(x3502)))+(((IkReal(-1.00000000000000))*(r12)*(x3499)*(x3504)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x3499)*(x3502)*(x3509)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x3505)))+(((IkReal(-1.00000000000000))*(x3499)*(x3502)*(x3503)))+(((IkReal(-1.00000000000000))*(r02)*(x3499)*(x3504)))+(((IkReal(-1.00000000000000))*(x3498)*(x3499)*(x3501)))+(((r01)*(x3512)))+(((cj2)*(x3496)))+(((IkReal(-1.00000000000000))*(r12)*(x3497)*(x3499)))+(((r11)*(x3513)))+(((IkReal(-1.00000000000000))*(x3499)*(x3500)*(x3501)))+(((IkReal(-1.00000000000000))*(r00)*(x3505)*(x3510)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x3514=((cj6)*(r01)); +IkReal x3515=((cj0)*(cj5)); +IkReal x3516=((sj0)*(sj5)); +IkReal x3517=((cj0)*(sj5)); +IkReal x3518=((cj6)*(r11)); +IkReal x3519=((r10)*(sj6)); +IkReal x3520=((cj5)*(sj0)); +IkReal x3521=((r00)*(sj6)); +if( IKabs(((((IkReal(-5.42449275362319))*(x3516)*(x3521)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(5.42449275362319))*(x3517)*(x3518)))+(((IkReal(-0.144927536231884))*(x3515)*(x3519)))+(((IkReal(5.42449275362319))*(x3517)*(x3519)))+(((IkReal(-0.144927536231884))*(r12)*(x3517)))+(((IkReal(0.144927536231884))*(x3514)*(x3520)))+(((IkReal(0.144927536231884))*(x3520)*(x3521)))+(((IkReal(-5.42449275362319))*(r12)*(x3515)))+(((IkReal(-0.144927536231884))*(x3515)*(x3518)))+(((IkReal(-5.42449275362319))*(x3514)*(x3516)))+(((IkReal(5.42449275362319))*(r02)*(x3520)))+(((IkReal(0.144927536231884))*(r02)*(x3516))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((IkReal(0.0144927536231884))*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((IkReal(69.0000000000000))+(((IkReal(-374.290000000000))*(x3514)*(x3517)))+(((IkReal(10.0000000000000))*(x3515)*(x3521)))+(((IkReal(10.0000000000000))*(r02)*(x3517)))+(((IkReal(10.0000000000000))*(x3519)*(x3520)))+(((IkReal(-374.290000000000))*(x3517)*(x3521)))+(((IkReal(-1000.00000000000))*(cj0)*(px)))+(((IkReal(10.0000000000000))*(x3518)*(x3520)))+(((IkReal(364.420000000000))*(cj1)))+(((IkReal(10.0000000000000))*(x3514)*(x3515)))+(((IkReal(-374.290000000000))*(x3516)*(x3519)))+(((IkReal(-374.290000000000))*(x3516)*(x3518)))+(((IkReal(374.290000000000))*(r12)*(x3520)))+(((IkReal(374.290000000000))*(r02)*(x3515)))+(((IkReal(-1000.00000000000))*(py)*(sj0)))+(((IkReal(10.0000000000000))*(r12)*(x3516))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-5.42449275362319))*(x3516)*(x3521)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(5.42449275362319))*(x3517)*(x3518)))+(((IkReal(-0.144927536231884))*(x3515)*(x3519)))+(((IkReal(5.42449275362319))*(x3517)*(x3519)))+(((IkReal(-0.144927536231884))*(r12)*(x3517)))+(((IkReal(0.144927536231884))*(x3514)*(x3520)))+(((IkReal(0.144927536231884))*(x3520)*(x3521)))+(((IkReal(-5.42449275362319))*(r12)*(x3515)))+(((IkReal(-0.144927536231884))*(x3515)*(x3518)))+(((IkReal(-5.42449275362319))*(x3514)*(x3516)))+(((IkReal(5.42449275362319))*(r02)*(x3520)))+(((IkReal(0.144927536231884))*(r02)*(x3516)))))+IKsqr(((IkReal(0.0144927536231884))*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((IkReal(69.0000000000000))+(((IkReal(-374.290000000000))*(x3514)*(x3517)))+(((IkReal(10.0000000000000))*(x3515)*(x3521)))+(((IkReal(10.0000000000000))*(r02)*(x3517)))+(((IkReal(10.0000000000000))*(x3519)*(x3520)))+(((IkReal(-374.290000000000))*(x3517)*(x3521)))+(((IkReal(-1000.00000000000))*(cj0)*(px)))+(((IkReal(10.0000000000000))*(x3518)*(x3520)))+(((IkReal(364.420000000000))*(cj1)))+(((IkReal(10.0000000000000))*(x3514)*(x3515)))+(((IkReal(-374.290000000000))*(x3516)*(x3519)))+(((IkReal(-374.290000000000))*(x3516)*(x3518)))+(((IkReal(374.290000000000))*(r12)*(x3520)))+(((IkReal(374.290000000000))*(r02)*(x3515)))+(((IkReal(-1000.00000000000))*(py)*(sj0)))+(((IkReal(10.0000000000000))*(r12)*(x3516)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((IkReal(-5.42449275362319))*(x3516)*(x3521)))+(((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(5.42449275362319))*(x3517)*(x3518)))+(((IkReal(-0.144927536231884))*(x3515)*(x3519)))+(((IkReal(5.42449275362319))*(x3517)*(x3519)))+(((IkReal(-0.144927536231884))*(r12)*(x3517)))+(((IkReal(0.144927536231884))*(x3514)*(x3520)))+(((IkReal(0.144927536231884))*(x3520)*(x3521)))+(((IkReal(-5.42449275362319))*(r12)*(x3515)))+(((IkReal(-0.144927536231884))*(x3515)*(x3518)))+(((IkReal(-5.42449275362319))*(x3514)*(x3516)))+(((IkReal(5.42449275362319))*(r02)*(x3520)))+(((IkReal(0.144927536231884))*(r02)*(x3516)))), ((IkReal(0.0144927536231884))*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((IkReal(69.0000000000000))+(((IkReal(-374.290000000000))*(x3514)*(x3517)))+(((IkReal(10.0000000000000))*(x3515)*(x3521)))+(((IkReal(10.0000000000000))*(r02)*(x3517)))+(((IkReal(10.0000000000000))*(x3519)*(x3520)))+(((IkReal(-374.290000000000))*(x3517)*(x3521)))+(((IkReal(-1000.00000000000))*(cj0)*(px)))+(((IkReal(10.0000000000000))*(x3518)*(x3520)))+(((IkReal(364.420000000000))*(cj1)))+(((IkReal(10.0000000000000))*(x3514)*(x3515)))+(((IkReal(-374.290000000000))*(x3516)*(x3519)))+(((IkReal(-374.290000000000))*(x3516)*(x3518)))+(((IkReal(374.290000000000))*(r12)*(x3520)))+(((IkReal(374.290000000000))*(r02)*(x3515)))+(((IkReal(-1000.00000000000))*(py)*(sj0)))+(((IkReal(10.0000000000000))*(r12)*(x3516))))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[3]; +IkReal x3522=IKcos(j2); +IkReal x3523=((IkReal(0.374290000000000))*(sj5)); +IkReal x3524=((cj0)*(sj6)); +IkReal x3525=((IkReal(0.0100000000000000))*(sj5)); +IkReal x3526=((cj0)*(r02)); +IkReal x3527=((IkReal(0.0100000000000000))*(cj5)); +IkReal x3528=((IkReal(1.00000000000000))*(py)); +IkReal x3529=((r01)*(sj0)); +IkReal x3530=((r20)*(sj6)); +IkReal x3531=((r11)*(sj0)); +IkReal x3532=((IkReal(0.374290000000000))*(cj5)); +IkReal x3533=((cj0)*(r12)); +IkReal x3534=((sj0)*(x3532)); +IkReal x3535=((cj6)*(x3527)); +IkReal x3536=((IkReal(0.0690000000000000))*(x3522)); +IkReal x3537=((r10)*(sj0)*(sj6)); +IkReal x3538=((r00)*(sj0)*(sj6)); +IkReal x3539=((cj0)*(cj6)*(x3523)); +evalcond[0]=((((x3523)*(x3530)))+(((IkReal(0.364420000000000))*(sj1)))+(((cj1)*(x3536)))+(((IkReal(-1.00000000000000))*(r21)*(x3535)))+(((IkReal(-1.00000000000000))*(x3527)*(x3530)))+(((IkReal(-1.00000000000000))*(r22)*(x3532)))+(((cj6)*(r21)*(x3523)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x3525)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x3529)*(x3535)))+(((x3532)*(x3533)))+(((x3525)*(x3533)))+(((r10)*(x3524)*(x3527)))+(((IkReal(-1.00000000000000))*(r11)*(x3539)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3525)))+(((cj6)*(x3523)*(x3529)))+(((x3523)*(x3538)))+(((IkReal(-1.00000000000000))*(x3527)*(x3538)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((IkReal(-1.00000000000000))*(r10)*(x3523)*(x3524)))+(((IkReal(-1.00000000000000))*(r02)*(x3534)))+(((IkReal(-1.00000000000000))*(cj0)*(x3528)))+(((px)*(sj0)))+(((cj0)*(r11)*(x3535)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((x3526)*(x3532)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(r01)*(x3539)))+(((x3527)*(x3537)))+(((r12)*(sj0)*(x3525)))+(((IkReal(-1.00000000000000))*(cj6)*(x3523)*(x3531)))+(((r00)*(x3524)*(x3527)))+(((IkReal(-1.00000000000000))*(x3523)*(x3537)))+(((IkReal(-1.00000000000000))*(sj0)*(x3528)))+(((x3525)*(x3526)))+(((cj0)*(r01)*(x3535)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(r00)*(x3523)*(x3524)))+(((r12)*(x3534)))+(((IkReal(-1.00000000000000))*(sj1)*(x3536)))+(((x3531)*(x3535)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst0; +IkReal x3540=(cj6)*(cj6); +IkReal x3541=(sj6)*(sj6); +IkReal x3542=((IkReal(1.00000000000000))*(r01)); +IkReal x3543=((sj0)*(sj5)); +IkReal x3544=((cj6)*(r22)); +IkReal x3545=((r21)*(sj6)); +IkReal x3546=((r00)*(r21)); +IkReal x3547=((cj0)*(sj5)); +IkReal x3548=((cj6)*(r20)); +IkReal x3549=((r22)*(sj6)); +IkReal x3550=((cj0)*(cj5)); +IkReal x3551=((IkReal(1.00000000000000))*(r10)); +IkReal x3552=((cj5)*(sj0)); +IkReal x3553=((r20)*(x3541)); +IkReal x3554=((x3540)*(x3552)); +gconst0=IKsign(((((r00)*(x3543)*(x3544)))+(((x3546)*(x3554)))+(((IkReal(-1.00000000000000))*(x3544)*(x3547)*(x3551)))+(((IkReal(-1.00000000000000))*(r21)*(x3541)*(x3550)*(x3551)))+(((IkReal(-1.00000000000000))*(r12)*(x3545)*(x3547)))+(((IkReal(-1.00000000000000))*(r20)*(x3542)*(x3554)))+(((r11)*(x3547)*(x3549)))+(((r12)*(x3547)*(x3548)))+(((r11)*(x3550)*(x3553)))+(((r11)*(r20)*(x3540)*(x3550)))+(((IkReal(-1.00000000000000))*(x3542)*(x3552)*(x3553)))+(((IkReal(-1.00000000000000))*(r21)*(x3540)*(x3550)*(x3551)))+(((IkReal(-1.00000000000000))*(x3542)*(x3543)*(x3549)))+(((IkReal(-1.00000000000000))*(r02)*(x3543)*(x3548)))+(((r02)*(x3543)*(x3545)))+(((x3541)*(x3546)*(x3552))))); +IkReal x3555=(cj6)*(cj6); +IkReal x3556=(sj6)*(sj6); +IkReal x3557=((IkReal(1.00000000000000))*(r01)); +IkReal x3558=((sj0)*(sj5)); +IkReal x3559=((cj6)*(r22)); +IkReal x3560=((r21)*(sj6)); +IkReal x3561=((r00)*(r21)); +IkReal x3562=((cj0)*(sj5)); +IkReal x3563=((cj6)*(r20)); +IkReal x3564=((r22)*(sj6)); +IkReal x3565=((cj0)*(cj5)); +IkReal x3566=((IkReal(1.00000000000000))*(r10)); +IkReal x3567=((cj5)*(sj0)); +IkReal x3568=((r20)*(x3556)); +IkReal x3569=((x3555)*(x3567)); +dummyeval[0]=((((r11)*(x3562)*(x3564)))+(((IkReal(-1.00000000000000))*(x3557)*(x3558)*(x3564)))+(((IkReal(-1.00000000000000))*(r02)*(x3558)*(x3563)))+(((IkReal(-1.00000000000000))*(r21)*(x3555)*(x3565)*(x3566)))+(((r11)*(r20)*(x3555)*(x3565)))+(((r00)*(x3558)*(x3559)))+(((IkReal(-1.00000000000000))*(r21)*(x3556)*(x3565)*(x3566)))+(((r11)*(x3565)*(x3568)))+(((x3561)*(x3569)))+(((IkReal(-1.00000000000000))*(x3559)*(x3562)*(x3566)))+(((r02)*(x3558)*(x3560)))+(((IkReal(-1.00000000000000))*(r12)*(x3560)*(x3562)))+(((IkReal(-1.00000000000000))*(r20)*(x3557)*(x3569)))+(((r12)*(x3562)*(x3563)))+(((x3556)*(x3561)*(x3567)))+(((IkReal(-1.00000000000000))*(x3557)*(x3567)*(x3568)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst1; +IkReal x3570=(cj6)*(cj6); +IkReal x3571=(sj6)*(sj6); +IkReal x3572=((sj5)*(sj6)); +IkReal x3573=((IkReal(1.00000000000000))*(cj0)); +IkReal x3574=((cj6)*(sj5)); +IkReal x3575=((r20)*(sj0)); +IkReal x3576=((cj0)*(r20)); +IkReal x3577=((r00)*(r21)); +IkReal x3578=((r22)*(sj0)); +IkReal x3579=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3580=((cj5)*(x3571)); +IkReal x3581=((cj5)*(x3570)); +gconst1=IKsign(((((IkReal(-1.00000000000000))*(x3573)*(x3577)*(x3580)))+(((IkReal(-1.00000000000000))*(r10)*(x3579)*(x3580)))+(((r02)*(x3574)*(x3576)))+(((r12)*(x3574)*(x3575)))+(((r11)*(x3575)*(x3580)))+(((IkReal(-1.00000000000000))*(r10)*(x3579)*(x3581)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3572)*(x3573)))+(((IkReal(-1.00000000000000))*(r10)*(x3574)*(x3578)))+(((r11)*(x3575)*(x3581)))+(((r01)*(x3576)*(x3580)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3573)*(x3574)))+(((r11)*(x3572)*(x3578)))+(((r01)*(x3576)*(x3581)))+(((cj0)*(r01)*(r22)*(x3572)))+(((IkReal(-1.00000000000000))*(r12)*(x3572)*(x3579)))+(((IkReal(-1.00000000000000))*(x3573)*(x3577)*(x3581))))); +IkReal x3582=(cj6)*(cj6); +IkReal x3583=(sj6)*(sj6); +IkReal x3584=((sj5)*(sj6)); +IkReal x3585=((IkReal(1.00000000000000))*(cj0)); +IkReal x3586=((cj6)*(sj5)); +IkReal x3587=((r20)*(sj0)); +IkReal x3588=((cj0)*(r20)); +IkReal x3589=((r00)*(r21)); +IkReal x3590=((r22)*(sj0)); +IkReal x3591=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3592=((cj5)*(x3583)); +IkReal x3593=((cj5)*(x3582)); +dummyeval[0]=((((r02)*(x3586)*(x3588)))+(((r11)*(x3584)*(x3590)))+(((r11)*(x3587)*(x3592)))+(((IkReal(-1.00000000000000))*(r10)*(x3591)*(x3593)))+(((IkReal(-1.00000000000000))*(r10)*(x3586)*(x3590)))+(((r01)*(x3588)*(x3593)))+(((IkReal(-1.00000000000000))*(r10)*(x3591)*(x3592)))+(((cj0)*(r01)*(r22)*(x3584)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3584)*(x3585)))+(((IkReal(-1.00000000000000))*(x3585)*(x3589)*(x3592)))+(((IkReal(-1.00000000000000))*(r12)*(x3584)*(x3591)))+(((r01)*(x3588)*(x3592)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3585)*(x3586)))+(((r11)*(x3587)*(x3593)))+(((r12)*(x3586)*(x3587)))+(((IkReal(-1.00000000000000))*(x3585)*(x3589)*(x3593)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x3594=(cj1)*(cj1); +IkReal x3595=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x3594)))+(((cj2)*(x3595)))); +dummyeval[1]=((x3595)+(x3594)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[4]; +IkReal x3596=((IkReal(0.374290000000000))*(sj5)); +IkReal x3597=((cj0)*(sj6)); +IkReal x3598=((IkReal(0.0100000000000000))*(sj5)); +IkReal x3599=((cj0)*(r02)); +IkReal x3600=((IkReal(0.0100000000000000))*(cj5)); +IkReal x3601=((IkReal(1.00000000000000))*(py)); +IkReal x3602=((r01)*(sj0)); +IkReal x3603=((r20)*(sj6)); +IkReal x3604=((r11)*(sj0)); +IkReal x3605=((IkReal(0.374290000000000))*(cj5)); +IkReal x3606=((cj0)*(r12)); +IkReal x3607=((sj0)*(x3605)); +IkReal x3608=((cj6)*(x3600)); +IkReal x3609=((r10)*(sj0)*(sj6)); +IkReal x3610=((r00)*(sj0)*(sj6)); +IkReal x3611=((cj0)*(cj6)*(x3596)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x3598)))+(((IkReal(-1.00000000000000))*(r21)*(x3608)))+(((cj6)*(r21)*(x3596)))+(((x3596)*(x3603)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x3605)))+(((IkReal(-1.00000000000000))*(x3600)*(x3603)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((r10)*(x3597)*(x3600)))+(((IkReal(-1.00000000000000))*(x3600)*(x3610)))+(((IkReal(-1.00000000000000))*(cj0)*(x3601)))+(((x3596)*(x3610)))+(((cj0)*(r11)*(x3608)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3598)))+(((IkReal(-1.00000000000000))*(x3602)*(x3608)))+(((x3598)*(x3606)))+(((IkReal(-1.00000000000000))*(r11)*(x3611)))+(((x3605)*(x3606)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r02)*(x3607)))+(((cj6)*(x3596)*(x3602)))+(((IkReal(-1.00000000000000))*(r10)*(x3596)*(x3597)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((x3599)*(x3605)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((r12)*(sj0)*(x3598)))+(((IkReal(-1.00000000000000))*(sj0)*(x3601)))+(((x3600)*(x3609)))+(((IkReal(-1.00000000000000))*(r01)*(x3611)))+(((IkReal(-1.00000000000000))*(x3596)*(x3609)))+(((x3604)*(x3608)))+(((cj0)*(r01)*(x3608)))+(((IkReal(-1.00000000000000))*(cj6)*(x3596)*(x3604)))+(((r00)*(x3597)*(x3600)))+(((IkReal(0.364420000000000))*(cj1)))+(((r12)*(x3607)))+(((IkReal(-1.00000000000000))*(r00)*(x3596)*(x3597)))+(((x3598)*(x3599)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst13; +IkReal x3612=(cj6)*(cj6); +IkReal x3613=(sj6)*(sj6); +IkReal x3614=((IkReal(1.00000000000000))*(r21)); +IkReal x3615=((cj6)*(r20)); +IkReal x3616=((r22)*(sj5)); +IkReal x3617=((r01)*(sj0)); +IkReal x3618=((r00)*(sj0)); +IkReal x3619=((cj0)*(r10)); +IkReal x3620=((r02)*(sj0)*(sj5)); +IkReal x3621=((cj5)*(x3612)); +IkReal x3622=((cj0)*(r12)*(sj5)); +IkReal x3623=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3624=((cj5)*(x3613)); +IkReal x3625=((r20)*(x3624)); +gconst13=IKsign(((((r20)*(x3617)*(x3621)))+(((IkReal(-1.00000000000000))*(x3614)*(x3618)*(x3621)))+(((sj6)*(x3616)*(x3617)))+(((x3615)*(x3620)))+(((x3617)*(x3625)))+(((IkReal(-1.00000000000000))*(x3623)*(x3625)))+(((r21)*(sj6)*(x3622)))+(((r21)*(x3619)*(x3624)))+(((r21)*(x3619)*(x3621)))+(((IkReal(-1.00000000000000))*(x3614)*(x3618)*(x3624)))+(((IkReal(-1.00000000000000))*(sj6)*(x3614)*(x3620)))+(((cj6)*(x3616)*(x3619)))+(((IkReal(-1.00000000000000))*(sj6)*(x3616)*(x3623)))+(((IkReal(-1.00000000000000))*(cj6)*(x3616)*(x3618)))+(((IkReal(-1.00000000000000))*(r20)*(x3621)*(x3623)))+(((IkReal(-1.00000000000000))*(x3615)*(x3622))))); +IkReal x3626=(cj6)*(cj6); +IkReal x3627=(sj6)*(sj6); +IkReal x3628=((IkReal(1.00000000000000))*(r21)); +IkReal x3629=((cj6)*(r20)); +IkReal x3630=((r22)*(sj5)); +IkReal x3631=((r01)*(sj0)); +IkReal x3632=((r00)*(sj0)); +IkReal x3633=((cj0)*(r10)); +IkReal x3634=((r02)*(sj0)*(sj5)); +IkReal x3635=((cj5)*(x3626)); +IkReal x3636=((cj0)*(r12)*(sj5)); +IkReal x3637=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3638=((cj5)*(x3627)); +IkReal x3639=((r20)*(x3638)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x3637)*(x3639)))+(((r21)*(sj6)*(x3636)))+(((IkReal(-1.00000000000000))*(sj6)*(x3630)*(x3637)))+(((sj6)*(x3630)*(x3631)))+(((IkReal(-1.00000000000000))*(x3628)*(x3632)*(x3635)))+(((cj6)*(x3630)*(x3633)))+(((IkReal(-1.00000000000000))*(x3629)*(x3636)))+(((IkReal(-1.00000000000000))*(sj6)*(x3628)*(x3634)))+(((x3631)*(x3639)))+(((r20)*(x3631)*(x3635)))+(((IkReal(-1.00000000000000))*(x3628)*(x3632)*(x3638)))+(((IkReal(-1.00000000000000))*(r20)*(x3635)*(x3637)))+(((r21)*(x3633)*(x3635)))+(((x3629)*(x3634)))+(((IkReal(-1.00000000000000))*(cj6)*(x3630)*(x3632)))+(((r21)*(x3633)*(x3638)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst14; +IkReal x3640=(cj6)*(cj6); +IkReal x3641=(sj6)*(sj6); +IkReal x3642=((sj5)*(sj6)); +IkReal x3643=((IkReal(1.00000000000000))*(cj0)); +IkReal x3644=((cj6)*(sj5)); +IkReal x3645=((r20)*(sj0)); +IkReal x3646=((cj0)*(r20)); +IkReal x3647=((r00)*(r21)); +IkReal x3648=((r22)*(sj0)); +IkReal x3649=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3650=((cj5)*(x3641)); +IkReal x3651=((cj5)*(x3640)); +gconst14=IKsign(((((cj0)*(r01)*(r22)*(x3642)))+(((r11)*(x3645)*(x3651)))+(((r01)*(x3646)*(x3651)))+(((IkReal(-1.00000000000000))*(x3643)*(x3647)*(x3650)))+(((r02)*(x3644)*(x3646)))+(((r12)*(x3644)*(x3645)))+(((r01)*(x3646)*(x3650)))+(((IkReal(-1.00000000000000))*(r10)*(x3649)*(x3651)))+(((r11)*(x3645)*(x3650)))+(((IkReal(-1.00000000000000))*(r12)*(x3642)*(x3649)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3643)*(x3644)))+(((IkReal(-1.00000000000000))*(r10)*(x3649)*(x3650)))+(((IkReal(-1.00000000000000))*(x3643)*(x3647)*(x3651)))+(((IkReal(-1.00000000000000))*(r10)*(x3644)*(x3648)))+(((r11)*(x3642)*(x3648)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3642)*(x3643))))); +IkReal x3652=(cj6)*(cj6); +IkReal x3653=(sj6)*(sj6); +IkReal x3654=((sj5)*(sj6)); +IkReal x3655=((IkReal(1.00000000000000))*(cj0)); +IkReal x3656=((cj6)*(sj5)); +IkReal x3657=((r20)*(sj0)); +IkReal x3658=((cj0)*(r20)); +IkReal x3659=((r00)*(r21)); +IkReal x3660=((r22)*(sj0)); +IkReal x3661=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x3662=((cj5)*(x3653)); +IkReal x3663=((cj5)*(x3652)); +dummyeval[0]=((((cj0)*(r01)*(r22)*(x3654)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x3655)*(x3656)))+(((r11)*(x3657)*(x3663)))+(((r11)*(x3657)*(x3662)))+(((IkReal(-1.00000000000000))*(x3655)*(x3659)*(x3663)))+(((r12)*(x3656)*(x3657)))+(((IkReal(-1.00000000000000))*(r10)*(x3656)*(x3660)))+(((IkReal(-1.00000000000000))*(r12)*(x3654)*(x3661)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x3654)*(x3655)))+(((r01)*(x3658)*(x3662)))+(((r11)*(x3654)*(x3660)))+(((IkReal(-1.00000000000000))*(r10)*(x3661)*(x3663)))+(((r01)*(x3658)*(x3663)))+(((IkReal(-1.00000000000000))*(x3655)*(x3659)*(x3662)))+(((IkReal(-1.00000000000000))*(r10)*(x3661)*(x3662)))+(((r02)*(x3656)*(x3658)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x3664=((cj5)*(r22)); +IkReal x3665=((IkReal(0.374290000000000))*(sj5)); +IkReal x3666=((cj0)*(sj6)); +IkReal x3667=((cj6)*(r21)); +IkReal x3668=((IkReal(0.0100000000000000))*(sj5)); +IkReal x3669=((cj0)*(r02)); +IkReal x3670=((IkReal(0.0100000000000000))*(cj5)); +IkReal x3671=((IkReal(1.00000000000000))*(py)); +IkReal x3672=((r01)*(sj0)); +IkReal x3673=((r20)*(sj6)); +IkReal x3674=((r11)*(sj0)); +IkReal x3675=((IkReal(0.374290000000000))*(cj5)); +IkReal x3676=((cj0)*(r12)); +IkReal x3677=((sj0)*(x3675)); +IkReal x3678=((cj6)*(x3670)); +IkReal x3679=((r10)*(sj0)*(sj6)); +IkReal x3680=((r00)*(sj0)*(sj6)); +IkReal x3681=((cj0)*(cj6)*(x3665)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x3667)))+(((IkReal(-1.00000000000000))*(x3664)))+(((sj5)*(x3673)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3670)*(x3673)))+(((IkReal(-1.00000000000000))*(r22)*(x3668)))+(pz)+(((x3665)*(x3673)))+(((IkReal(-0.374290000000000))*(x3664)))+(((IkReal(-1.00000000000000))*(x3667)*(x3670)))+(((x3665)*(x3667)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x3671)))+(((x3668)*(x3676)))+(((IkReal(-1.00000000000000))*(r10)*(x3665)*(x3666)))+(((x3665)*(x3680)))+(((IkReal(-1.00000000000000))*(x3670)*(x3680)))+(((IkReal(-1.00000000000000))*(r02)*(x3677)))+(((cj0)*(r11)*(x3678)))+(((r10)*(x3666)*(x3670)))+(((x3675)*(x3676)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3668)))+(((IkReal(-1.00000000000000))*(x3672)*(x3678)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x3681)))+(((cj6)*(x3665)*(x3672)))); +evalcond[4]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(cj6)*(x3665)*(x3674)))+(((r12)*(x3677)))+(((x3674)*(x3678)))+(((x3668)*(x3669)))+(((IkReal(-1.00000000000000))*(sj0)*(x3671)))+(((x3670)*(x3679)))+(((IkReal(-1.00000000000000))*(r00)*(x3665)*(x3666)))+(((r00)*(x3666)*(x3670)))+(((IkReal(-1.00000000000000))*(r01)*(x3681)))+(((IkReal(-1.00000000000000))*(x3665)*(x3679)))+(((r12)*(sj0)*(x3668)))+(((x3669)*(x3675)))+(((cj0)*(r01)*(x3678)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3682=((cj0)*(cj5)); +IkReal x3683=((IkReal(1.00000000000000))*(cj0)); +IkReal x3684=((cj6)*(r11)); +IkReal x3685=((r10)*(sj6)); +IkReal x3686=((cj5)*(sj0)); +IkReal x3687=((r00)*(sj5)*(sj6)); +IkReal x3688=((cj6)*(r01)*(sj5)); +IkReal x3689=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(x3686)))+(((sj0)*(x3687)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3684)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3685)))+(((r12)*(x3682)))+(((sj0)*(x3688))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r02)*(x3682)))+(((IkReal(-1.00000000000000))*(x3685)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3687)))+(((r12)*(x3686)))+(((IkReal(-1.00000000000000))*(x3684)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3688))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(x3686)))+(((sj0)*(x3687)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3684)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3685)))+(((r12)*(x3682)))+(((sj0)*(x3688)))))+IKsqr(((((r02)*(x3682)))+(((IkReal(-1.00000000000000))*(x3685)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3687)))+(((r12)*(x3686)))+(((IkReal(-1.00000000000000))*(x3684)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3688)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(x3686)))+(((sj0)*(x3687)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3684)))+(((IkReal(-1.00000000000000))*(sj5)*(x3683)*(x3685)))+(((r12)*(x3682)))+(((sj0)*(x3688)))), ((((r02)*(x3682)))+(((IkReal(-1.00000000000000))*(x3685)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3687)))+(((r12)*(x3686)))+(((IkReal(-1.00000000000000))*(x3684)*(x3689)))+(((IkReal(-1.00000000000000))*(x3683)*(x3688))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x3690=((cj0)*(cj5)); +IkReal x3691=((IkReal(1.00000000000000))*(cj0)); +IkReal x3692=((cj6)*(r11)); +IkReal x3693=((r10)*(sj6)); +IkReal x3694=((cj5)*(sj0)); +IkReal x3695=((r00)*(sj5)*(sj6)); +IkReal x3696=((cj6)*(r01)*(sj5)); +IkReal x3697=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj5)*(x3691)*(x3692)))+(((sj0)*(x3696)))+(((IkReal(-1.00000000000000))*(sj5)*(x3691)*(x3693)))+(((IkReal(-1.00000000000000))*(r02)*(x3694)))+(((sj0)*(x3695)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((r12)*(x3690)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x3692)*(x3697)))+(((IkReal(-1.00000000000000))*(x3691)*(x3696)))+(((IkReal(-1.00000000000000))*(x3691)*(x3695)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(x3693)*(x3697)))+(((r02)*(x3690)))+(((r12)*(x3694)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst20; +IkReal x3698=(cj5)*(cj5); +IkReal x3699=(r20)*(r20); +IkReal x3700=(sj6)*(sj6); +IkReal x3701=(cj6)*(cj6); +IkReal x3702=(r21)*(r21); +IkReal x3703=((cj6)*(r21)); +IkReal x3704=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3705=((cj5)*(r22)*(sj5)); +gconst20=IKsign(((((x3698)*(x3699)*(x3700)))+(((x3700)*(x3702)))+(((x3704)*(x3705)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3698)*(x3703)*(x3704)))+(((x3698)*(x3701)*(x3702)))+(((x3699)*(x3701)))+(((IkReal(-1.00000000000000))*(x3703)*(x3704)))+(((IkReal(2.00000000000000))*(x3703)*(x3705))))); +IkReal x3706=(cj5)*(cj5); +IkReal x3707=(r20)*(r20); +IkReal x3708=(sj6)*(sj6); +IkReal x3709=(cj6)*(cj6); +IkReal x3710=(r21)*(r21); +IkReal x3711=((cj6)*(r21)); +IkReal x3712=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3713=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x3706)*(x3707)*(x3708)))+(((IkReal(2.00000000000000))*(x3711)*(x3713)))+(((x3707)*(x3709)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x3706)*(x3709)*(x3710)))+(((IkReal(-1.00000000000000))*(x3711)*(x3712)))+(((x3712)*(x3713)))+(((x3708)*(x3710)))+(((x3706)*(x3711)*(x3712)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst21; +IkReal x3714=(cj6)*(cj6); +IkReal x3715=(sj6)*(sj6); +IkReal x3716=((IkReal(1.00000000000000))*(r21)); +IkReal x3717=((cj6)*(r20)); +IkReal x3718=((r22)*(sj5)); +IkReal x3719=((r01)*(sj0)); +IkReal x3720=((r00)*(sj0)); +IkReal x3721=((cj0)*(r10)); +IkReal x3722=((r02)*(sj0)*(sj5)); +IkReal x3723=((cj5)*(x3714)); +IkReal x3724=((cj0)*(r12)*(sj5)); +IkReal x3725=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3726=((cj5)*(x3715)); +IkReal x3727=((r20)*(x3726)); +gconst21=IKsign(((((IkReal(-1.00000000000000))*(r20)*(x3723)*(x3725)))+(((cj6)*(x3718)*(x3721)))+(((IkReal(-1.00000000000000))*(x3717)*(x3724)))+(((IkReal(-1.00000000000000))*(cj6)*(x3718)*(x3720)))+(((IkReal(-1.00000000000000))*(sj6)*(x3718)*(x3725)))+(((IkReal(-1.00000000000000))*(sj6)*(x3716)*(x3722)))+(((r21)*(sj6)*(x3724)))+(((x3717)*(x3722)))+(((r20)*(x3719)*(x3723)))+(((r21)*(x3721)*(x3726)))+(((x3719)*(x3727)))+(((IkReal(-1.00000000000000))*(x3725)*(x3727)))+(((r21)*(x3721)*(x3723)))+(((IkReal(-1.00000000000000))*(x3716)*(x3720)*(x3726)))+(((IkReal(-1.00000000000000))*(x3716)*(x3720)*(x3723)))+(((sj6)*(x3718)*(x3719))))); +IkReal x3728=(cj6)*(cj6); +IkReal x3729=(sj6)*(sj6); +IkReal x3730=((IkReal(1.00000000000000))*(r21)); +IkReal x3731=((cj6)*(r20)); +IkReal x3732=((r22)*(sj5)); +IkReal x3733=((r01)*(sj0)); +IkReal x3734=((r00)*(sj0)); +IkReal x3735=((cj0)*(r10)); +IkReal x3736=((r02)*(sj0)*(sj5)); +IkReal x3737=((cj5)*(x3728)); +IkReal x3738=((cj0)*(r12)*(sj5)); +IkReal x3739=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3740=((cj5)*(x3729)); +IkReal x3741=((r20)*(x3740)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x3730)*(x3734)*(x3737)))+(((sj6)*(x3732)*(x3733)))+(((x3731)*(x3736)))+(((r21)*(sj6)*(x3738)))+(((cj6)*(x3732)*(x3735)))+(((r21)*(x3735)*(x3740)))+(((r20)*(x3733)*(x3737)))+(((IkReal(-1.00000000000000))*(x3731)*(x3738)))+(((IkReal(-1.00000000000000))*(x3739)*(x3741)))+(((r21)*(x3735)*(x3737)))+(((x3733)*(x3741)))+(((IkReal(-1.00000000000000))*(sj6)*(x3730)*(x3736)))+(((IkReal(-1.00000000000000))*(r20)*(x3737)*(x3739)))+(((IkReal(-1.00000000000000))*(x3730)*(x3734)*(x3740)))+(((IkReal(-1.00000000000000))*(cj6)*(x3732)*(x3734)))+(((IkReal(-1.00000000000000))*(sj6)*(x3732)*(x3739)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3742=((sj0)*(sj6)); +IkReal x3743=((cj0)*(cj6)); +IkReal x3744=((IkReal(1.00000000000000))*(cj5)); +IkReal x3745=((cj6)*(sj0)); +IkReal x3746=((cj0)*(sj6)); +if( IKabs(((gconst21)*(((((IkReal(-1.00000000000000))*(r00)*(x3745)))+(((IkReal(-1.00000000000000))*(r11)*(x3746)))+(((r10)*(x3743)))+(((r01)*(x3742))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst21)*(((((cj5)*(r11)*(x3743)))+(((IkReal(-1.00000000000000))*(r00)*(x3742)*(x3744)))+(((IkReal(-1.00000000000000))*(r01)*(x3744)*(x3745)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(r10)*(x3746))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst21)*(((((IkReal(-1.00000000000000))*(r00)*(x3745)))+(((IkReal(-1.00000000000000))*(r11)*(x3746)))+(((r10)*(x3743)))+(((r01)*(x3742)))))), ((gconst21)*(((((cj5)*(r11)*(x3743)))+(((IkReal(-1.00000000000000))*(r00)*(x3742)*(x3744)))+(((IkReal(-1.00000000000000))*(r01)*(x3744)*(x3745)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(r10)*(x3746))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3747=IKsin(j4); +IkReal x3748=IKcos(j4); +IkReal x3749=((r22)*(sj5)); +IkReal x3750=((IkReal(1.00000000000000))*(cj6)); +IkReal x3751=((IkReal(1.00000000000000))*(cj0)); +IkReal x3752=((cj5)*(r11)); +IkReal x3753=((cj5)*(cj6)); +IkReal x3754=((r11)*(sj6)); +IkReal x3755=((IkReal(1.00000000000000))*(sj6)); +IkReal x3756=((cj6)*(r00)); +IkReal x3757=((r12)*(sj5)); +IkReal x3758=((r02)*(sj5)); +IkReal x3759=((cj6)*(r10)); +IkReal x3760=((cj5)*(sj6)); +IkReal x3761=((cj5)*(r01)); +IkReal x3762=((sj0)*(x3747)); +IkReal x3763=((r00)*(x3760)); +IkReal x3764=((cj0)*(x3747)); +IkReal x3765=((sj0)*(x3748)); +IkReal x3766=((r20)*(x3748)); +IkReal x3767=((cj0)*(x3748)); +IkReal x3768=((r21)*(x3747)); +IkReal x3769=((r21)*(x3748)); +IkReal x3770=((r20)*(x3747)); +IkReal x3771=((x3748)*(x3757)); +IkReal x3772=((r01)*(sj6)*(x3748)); +IkReal x3773=((cj5)*(r10)*(x3755)); +evalcond[0]=((IkReal(-1.00000000000000))+(((x3753)*(x3768)))+(((x3747)*(x3749)))+(((x3760)*(x3770)))+(((sj6)*(x3769)))+(((IkReal(-1.00000000000000))*(x3750)*(x3766)))); +evalcond[1]=((((cj6)*(x3770)))+(((x3753)*(x3769)))+(((x3760)*(x3766)))+(((x3748)*(x3749)))+(((IkReal(-1.00000000000000))*(x3755)*(x3768)))); +evalcond[2]=((((x3759)*(x3767)))+(((x3762)*(x3763)))+(((r01)*(sj6)*(x3765)))+(((IkReal(-1.00000000000000))*(x3748)*(x3751)*(x3754)))+(((r01)*(x3753)*(x3762)))+(((IkReal(-1.00000000000000))*(r00)*(x3750)*(x3765)))+(((IkReal(-1.00000000000000))*(x3750)*(x3752)*(x3764)))+(((x3758)*(x3762)))+(((IkReal(-1.00000000000000))*(x3747)*(x3751)*(x3757)))+(((IkReal(-1.00000000000000))*(r10)*(x3747)*(x3751)*(x3760)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x3750)*(x3764)))+(((IkReal(-1.00000000000000))*(x3750)*(x3752)*(x3767)))+(((IkReal(-1.00000000000000))*(r01)*(x3755)*(x3762)))+(((x3754)*(x3764)))+(((IkReal(-1.00000000000000))*(x3751)*(x3771)))+(((x3756)*(x3762)))+(cj3)+(((IkReal(-1.00000000000000))*(r10)*(x3748)*(x3751)*(x3760)))+(((r01)*(x3753)*(x3765)))+(((x3758)*(x3765)))+(((x3763)*(x3765)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3750)*(x3752)*(x3762)))+(((IkReal(-1.00000000000000))*(x3747)*(x3751)*(x3758)))+(((IkReal(-1.00000000000000))*(x3762)*(x3773)))+(((IkReal(-1.00000000000000))*(x3757)*(x3762)))+(((IkReal(-1.00000000000000))*(x3754)*(x3765)))+(((IkReal(-1.00000000000000))*(x3750)*(x3761)*(x3764)))+(((IkReal(-1.00000000000000))*(x3751)*(x3772)))+(((x3759)*(x3765)))+(((IkReal(-1.00000000000000))*(x3747)*(x3751)*(x3763)))+(((x3756)*(x3767)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x3750)*(x3762)))+(((IkReal(-1.00000000000000))*(x3757)*(x3765)))+(((IkReal(-1.00000000000000))*(x3750)*(x3752)*(x3765)))+(((IkReal(-1.00000000000000))*(x3748)*(x3751)*(x3758)))+(((IkReal(-1.00000000000000))*(r00)*(x3750)*(x3764)))+(((IkReal(-1.00000000000000))*(x3750)*(x3761)*(x3767)))+(((IkReal(-1.00000000000000))*(x3765)*(x3773)))+(((x3754)*(x3762)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(x3748)*(x3751)*(x3763)))+(((r01)*(sj6)*(x3764)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst20)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst20)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst20)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst20)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3774=IKsin(j4); +IkReal x3775=IKcos(j4); +IkReal x3776=((r22)*(sj5)); +IkReal x3777=((IkReal(1.00000000000000))*(cj6)); +IkReal x3778=((IkReal(1.00000000000000))*(cj0)); +IkReal x3779=((cj5)*(r11)); +IkReal x3780=((cj5)*(cj6)); +IkReal x3781=((r11)*(sj6)); +IkReal x3782=((IkReal(1.00000000000000))*(sj6)); +IkReal x3783=((cj6)*(r00)); +IkReal x3784=((r12)*(sj5)); +IkReal x3785=((r02)*(sj5)); +IkReal x3786=((cj6)*(r10)); +IkReal x3787=((cj5)*(sj6)); +IkReal x3788=((cj5)*(r01)); +IkReal x3789=((sj0)*(x3774)); +IkReal x3790=((r00)*(x3787)); +IkReal x3791=((cj0)*(x3774)); +IkReal x3792=((sj0)*(x3775)); +IkReal x3793=((r20)*(x3775)); +IkReal x3794=((cj0)*(x3775)); +IkReal x3795=((r21)*(x3774)); +IkReal x3796=((r21)*(x3775)); +IkReal x3797=((r20)*(x3774)); +IkReal x3798=((x3775)*(x3784)); +IkReal x3799=((r01)*(sj6)*(x3775)); +IkReal x3800=((cj5)*(r10)*(x3782)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x3777)*(x3793)))+(((x3787)*(x3797)))+(((x3780)*(x3795)))+(((x3774)*(x3776)))+(((sj6)*(x3796)))); +evalcond[1]=((((x3787)*(x3793)))+(((IkReal(-1.00000000000000))*(x3782)*(x3795)))+(((x3775)*(x3776)))+(((x3780)*(x3796)))+(((cj6)*(x3797)))); +evalcond[2]=((((x3789)*(x3790)))+(((IkReal(-1.00000000000000))*(x3775)*(x3778)*(x3781)))+(((x3785)*(x3789)))+(((IkReal(-1.00000000000000))*(x3774)*(x3778)*(x3784)))+(((r01)*(sj6)*(x3792)))+(((r01)*(x3780)*(x3789)))+(((x3786)*(x3794)))+(((IkReal(-1.00000000000000))*(r00)*(x3777)*(x3792)))+(((IkReal(-1.00000000000000))*(x3777)*(x3779)*(x3791)))+(((IkReal(-1.00000000000000))*(r10)*(x3774)*(x3778)*(x3787)))); +evalcond[3]=((((x3785)*(x3792)))+(((IkReal(-1.00000000000000))*(r10)*(x3775)*(x3778)*(x3787)))+(((IkReal(-1.00000000000000))*(x3778)*(x3798)))+(((x3783)*(x3789)))+(cj3)+(((IkReal(-1.00000000000000))*(x3777)*(x3779)*(x3794)))+(((IkReal(-1.00000000000000))*(r10)*(x3777)*(x3791)))+(((r01)*(x3780)*(x3792)))+(((x3781)*(x3791)))+(((x3790)*(x3792)))+(((IkReal(-1.00000000000000))*(r01)*(x3782)*(x3789)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3774)*(x3778)*(x3785)))+(((x3786)*(x3792)))+(((IkReal(-1.00000000000000))*(x3784)*(x3789)))+(((IkReal(-1.00000000000000))*(x3777)*(x3788)*(x3791)))+(((IkReal(-1.00000000000000))*(x3778)*(x3799)))+(((IkReal(-1.00000000000000))*(x3774)*(x3778)*(x3790)))+(((IkReal(-1.00000000000000))*(x3789)*(x3800)))+(((IkReal(-1.00000000000000))*(x3777)*(x3779)*(x3789)))+(((IkReal(-1.00000000000000))*(x3781)*(x3792)))+(((x3783)*(x3794)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x3777)*(x3789)))+(((IkReal(-1.00000000000000))*(x3784)*(x3792)))+(((r01)*(sj6)*(x3791)))+(((IkReal(-1.00000000000000))*(x3792)*(x3800)))+(((x3781)*(x3789)))+(((IkReal(-1.00000000000000))*(x3775)*(x3778)*(x3790)))+(((IkReal(-1.00000000000000))*(x3777)*(x3779)*(x3792)))+(((IkReal(-1.00000000000000))*(x3777)*(x3788)*(x3794)))+(((IkReal(-1.00000000000000))*(x3775)*(x3778)*(x3785)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r00)*(x3777)*(x3791)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x3801=((cj5)*(r22)); +IkReal x3802=((IkReal(0.374290000000000))*(sj5)); +IkReal x3803=((cj0)*(sj6)); +IkReal x3804=((cj6)*(r21)); +IkReal x3805=((IkReal(0.0100000000000000))*(sj5)); +IkReal x3806=((cj0)*(r02)); +IkReal x3807=((IkReal(0.0100000000000000))*(cj5)); +IkReal x3808=((IkReal(1.00000000000000))*(py)); +IkReal x3809=((r01)*(sj0)); +IkReal x3810=((r20)*(sj6)); +IkReal x3811=((r11)*(sj0)); +IkReal x3812=((IkReal(0.374290000000000))*(cj5)); +IkReal x3813=((cj0)*(r12)); +IkReal x3814=((sj0)*(x3812)); +IkReal x3815=((cj6)*(x3807)); +IkReal x3816=((r10)*(sj0)*(sj6)); +IkReal x3817=((r00)*(sj0)*(sj6)); +IkReal x3818=((cj0)*(cj6)*(x3802)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x3804)))+(((sj5)*(x3810)))+(((IkReal(-1.00000000000000))*(x3801)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3807)*(x3810)))+(((IkReal(-0.374290000000000))*(x3801)))+(((x3802)*(x3810)))+(((IkReal(-1.00000000000000))*(x3804)*(x3807)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x3805)))+(((x3802)*(x3804)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r02)*(x3814)))+(((x3805)*(x3813)))+(((IkReal(-1.00000000000000))*(r11)*(x3818)))+(((x3802)*(x3817)))+(((x3812)*(x3813)))+(((IkReal(-1.00000000000000))*(cj0)*(x3808)))+(((IkReal(-1.00000000000000))*(r10)*(x3802)*(x3803)))+(((cj0)*(r11)*(x3815)))+(((IkReal(-1.00000000000000))*(x3809)*(x3815)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3805)))+(((IkReal(-1.00000000000000))*(x3807)*(x3817)))+(((cj6)*(x3802)*(x3809)))+(((px)*(sj0)))+(((r10)*(x3803)*(x3807)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((r12)*(x3814)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x3805)*(x3806)))+(((IkReal(-1.00000000000000))*(cj6)*(x3802)*(x3811)))+(((x3811)*(x3815)))+(((IkReal(-1.00000000000000))*(x3802)*(x3816)))+(((x3807)*(x3816)))+(((r12)*(sj0)*(x3805)))+(((r00)*(x3803)*(x3807)))+(((IkReal(-1.00000000000000))*(r00)*(x3802)*(x3803)))+(((IkReal(-1.00000000000000))*(r01)*(x3818)))+(((cj0)*(r01)*(x3815)))+(((IkReal(-1.00000000000000))*(sj0)*(x3808)))+(((x3806)*(x3812)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3819=((sj0)*(sj5)); +IkReal x3820=((r00)*(sj6)); +IkReal x3821=((IkReal(1.00000000000000))*(cj5)); +IkReal x3822=((cj6)*(r11)); +IkReal x3823=((cj6)*(r01)); +IkReal x3824=((r10)*(sj6)); +IkReal x3825=((cj0)*(sj5)); +if( IKabs(((((x3819)*(x3820)))+(((IkReal(-1.00000000000000))*(x3822)*(x3825)))+(((IkReal(-1.00000000000000))*(x3824)*(x3825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3821)))+(((cj0)*(cj5)*(r12)))+(((x3819)*(x3823))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x3823)*(x3825)))+(((x3820)*(x3825)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3821)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3821)))+(((x3819)*(x3822)))+(((x3819)*(x3824))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x3819)*(x3820)))+(((IkReal(-1.00000000000000))*(x3822)*(x3825)))+(((IkReal(-1.00000000000000))*(x3824)*(x3825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3821)))+(((cj0)*(cj5)*(r12)))+(((x3819)*(x3823)))))+IKsqr(((((x3823)*(x3825)))+(((x3820)*(x3825)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3821)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3821)))+(((x3819)*(x3822)))+(((x3819)*(x3824)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x3819)*(x3820)))+(((IkReal(-1.00000000000000))*(x3822)*(x3825)))+(((IkReal(-1.00000000000000))*(x3824)*(x3825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3821)))+(((cj0)*(cj5)*(r12)))+(((x3819)*(x3823)))), ((((x3823)*(x3825)))+(((x3820)*(x3825)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x3821)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x3821)))+(((x3819)*(x3822)))+(((x3819)*(x3824))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x3826=((cj0)*(cj5)); +IkReal x3827=((IkReal(1.00000000000000))*(cj0)); +IkReal x3828=((cj6)*(r11)); +IkReal x3829=((r10)*(sj6)); +IkReal x3830=((cj5)*(sj0)); +IkReal x3831=((r00)*(sj5)*(sj6)); +IkReal x3832=((cj6)*(r01)*(sj5)); +IkReal x3833=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj5)*(x3827)*(x3828)))+(((IkReal(-1.00000000000000))*(r02)*(x3830)))+(((IkReal(-1.00000000000000))*(sj5)*(x3827)*(x3829)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((sj0)*(x3832)))+(((sj0)*(x3831)))+(((r12)*(x3826)))); +evalcond[1]=((((r12)*(x3830)))+(((IkReal(-1.00000000000000))*(x3827)*(x3831)))+(((IkReal(-1.00000000000000))*(x3828)*(x3833)))+(((r02)*(x3826)))+(((IkReal(-1.00000000000000))*(x3829)*(x3833)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x3827)*(x3832)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst24; +IkReal x3834=(r21)*(r21); +IkReal x3835=(cj5)*(cj5); +IkReal x3836=(sj6)*(sj6); +IkReal x3837=(cj6)*(cj6); +IkReal x3838=(r20)*(r20); +IkReal x3839=((cj6)*(r21)); +IkReal x3840=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3841=((cj5)*(r22)*(sj5)); +IkReal x3842=((IkReal(1.00000000000000))*(x3836)); +IkReal x3843=((IkReal(1.00000000000000))*(x3837)); +gconst24=IKsign(((((IkReal(-1.00000000000000))*(x3834)*(x3835)*(x3843)))+(((x3839)*(x3840)))+(((IkReal(-1.00000000000000))*(x3835)*(x3839)*(x3840)))+(((IkReal(-1.00000000000000))*(x3835)*(x3838)*(x3842)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x3834)*(x3842)))+(((IkReal(-2.00000000000000))*(x3839)*(x3841)))+(((IkReal(-1.00000000000000))*(x3838)*(x3843)))+(((IkReal(-1.00000000000000))*(x3840)*(x3841))))); +IkReal x3844=(r21)*(r21); +IkReal x3845=(cj5)*(cj5); +IkReal x3846=(sj6)*(sj6); +IkReal x3847=(cj6)*(cj6); +IkReal x3848=(r20)*(r20); +IkReal x3849=((cj6)*(r21)); +IkReal x3850=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3851=((cj5)*(r22)*(sj5)); +IkReal x3852=((IkReal(1.00000000000000))*(x3846)); +IkReal x3853=((IkReal(1.00000000000000))*(x3847)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x3848)*(x3853)))+(((IkReal(-2.00000000000000))*(x3849)*(x3851)))+(((x3849)*(x3850)))+(((IkReal(-1.00000000000000))*(x3844)*(x3845)*(x3853)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x3845)*(x3848)*(x3852)))+(((IkReal(-1.00000000000000))*(x3844)*(x3852)))+(((IkReal(-1.00000000000000))*(x3850)*(x3851)))+(((IkReal(-1.00000000000000))*(x3845)*(x3849)*(x3850)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst25; +IkReal x3854=(cj6)*(cj6); +IkReal x3855=(sj6)*(sj6); +IkReal x3856=((IkReal(1.00000000000000))*(r01)); +IkReal x3857=((sj0)*(sj5)); +IkReal x3858=((cj6)*(r22)); +IkReal x3859=((r21)*(sj6)); +IkReal x3860=((r00)*(r21)); +IkReal x3861=((cj0)*(sj5)); +IkReal x3862=((cj6)*(r20)); +IkReal x3863=((r22)*(sj6)); +IkReal x3864=((cj0)*(cj5)); +IkReal x3865=((IkReal(1.00000000000000))*(r10)); +IkReal x3866=((cj5)*(sj0)); +IkReal x3867=((r20)*(x3855)); +IkReal x3868=((x3854)*(x3866)); +gconst25=IKsign(((((IkReal(-1.00000000000000))*(r02)*(x3857)*(x3862)))+(((r11)*(x3864)*(x3867)))+(((r00)*(x3857)*(x3858)))+(((IkReal(-1.00000000000000))*(x3856)*(x3857)*(x3863)))+(((x3855)*(x3860)*(x3866)))+(((r11)*(r20)*(x3854)*(x3864)))+(((IkReal(-1.00000000000000))*(x3856)*(x3866)*(x3867)))+(((r11)*(x3861)*(x3863)))+(((IkReal(-1.00000000000000))*(x3858)*(x3861)*(x3865)))+(((r02)*(x3857)*(x3859)))+(((IkReal(-1.00000000000000))*(r12)*(x3859)*(x3861)))+(((r12)*(x3861)*(x3862)))+(((IkReal(-1.00000000000000))*(r20)*(x3856)*(x3868)))+(((IkReal(-1.00000000000000))*(r21)*(x3855)*(x3864)*(x3865)))+(((x3860)*(x3868)))+(((IkReal(-1.00000000000000))*(r21)*(x3854)*(x3864)*(x3865))))); +IkReal x3869=(cj6)*(cj6); +IkReal x3870=(sj6)*(sj6); +IkReal x3871=((IkReal(1.00000000000000))*(r01)); +IkReal x3872=((sj0)*(sj5)); +IkReal x3873=((cj6)*(r22)); +IkReal x3874=((r21)*(sj6)); +IkReal x3875=((r00)*(r21)); +IkReal x3876=((cj0)*(sj5)); +IkReal x3877=((cj6)*(r20)); +IkReal x3878=((r22)*(sj6)); +IkReal x3879=((cj0)*(cj5)); +IkReal x3880=((IkReal(1.00000000000000))*(r10)); +IkReal x3881=((cj5)*(sj0)); +IkReal x3882=((r20)*(x3870)); +IkReal x3883=((x3869)*(x3881)); +dummyeval[0]=((((x3870)*(x3875)*(x3881)))+(((r11)*(x3879)*(x3882)))+(((IkReal(-1.00000000000000))*(x3873)*(x3876)*(x3880)))+(((IkReal(-1.00000000000000))*(r21)*(x3869)*(x3879)*(x3880)))+(((r00)*(x3872)*(x3873)))+(((IkReal(-1.00000000000000))*(x3871)*(x3872)*(x3878)))+(((r11)*(x3876)*(x3878)))+(((IkReal(-1.00000000000000))*(r02)*(x3872)*(x3877)))+(((IkReal(-1.00000000000000))*(r20)*(x3871)*(x3883)))+(((r12)*(x3876)*(x3877)))+(((IkReal(-1.00000000000000))*(r21)*(x3870)*(x3879)*(x3880)))+(((x3875)*(x3883)))+(((IkReal(-1.00000000000000))*(x3871)*(x3881)*(x3882)))+(((r11)*(r20)*(x3869)*(x3879)))+(((IkReal(-1.00000000000000))*(r12)*(x3874)*(x3876)))+(((r02)*(x3872)*(x3874)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x3884=((r01)*(sj0)); +IkReal x3885=((IkReal(1.00000000000000))*(cj5)); +IkReal x3886=((cj0)*(r10)); +IkReal x3887=((r00)*(sj0)); +IkReal x3888=((cj0)*(r11)); +if( IKabs(((gconst25)*(((((sj6)*(x3884)))+(((IkReal(-1.00000000000000))*(cj6)*(x3887)))+(((IkReal(-1.00000000000000))*(sj6)*(x3888)))+(((cj6)*(x3886))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst25)*(((((cj5)*(cj6)*(x3888)))+(((IkReal(-1.00000000000000))*(cj6)*(x3884)*(x3885)))+(((IkReal(-1.00000000000000))*(sj6)*(x3885)*(x3887)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(sj6)*(x3886))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst25)*(((((sj6)*(x3884)))+(((IkReal(-1.00000000000000))*(cj6)*(x3887)))+(((IkReal(-1.00000000000000))*(sj6)*(x3888)))+(((cj6)*(x3886)))))), ((gconst25)*(((((cj5)*(cj6)*(x3888)))+(((IkReal(-1.00000000000000))*(cj6)*(x3884)*(x3885)))+(((IkReal(-1.00000000000000))*(sj6)*(x3885)*(x3887)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(sj6)*(x3886))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3889=IKsin(j4); +IkReal x3890=IKcos(j4); +IkReal x3891=((r22)*(sj5)); +IkReal x3892=((IkReal(1.00000000000000))*(cj6)); +IkReal x3893=((IkReal(1.00000000000000))*(cj0)); +IkReal x3894=((cj5)*(r11)); +IkReal x3895=((cj5)*(cj6)); +IkReal x3896=((r11)*(sj6)); +IkReal x3897=((IkReal(1.00000000000000))*(sj6)); +IkReal x3898=((cj6)*(r00)); +IkReal x3899=((r12)*(sj5)); +IkReal x3900=((r02)*(sj5)); +IkReal x3901=((cj6)*(r10)); +IkReal x3902=((cj5)*(sj6)); +IkReal x3903=((cj5)*(r01)); +IkReal x3904=((sj0)*(x3889)); +IkReal x3905=((r00)*(x3902)); +IkReal x3906=((cj0)*(x3889)); +IkReal x3907=((sj0)*(x3890)); +IkReal x3908=((r20)*(x3890)); +IkReal x3909=((cj0)*(x3890)); +IkReal x3910=((r21)*(x3889)); +IkReal x3911=((r21)*(x3890)); +IkReal x3912=((r20)*(x3889)); +IkReal x3913=((x3890)*(x3899)); +IkReal x3914=((r01)*(sj6)*(x3890)); +IkReal x3915=((cj5)*(r10)*(x3897)); +evalcond[0]=((IkReal(1.00000000000000))+(((x3902)*(x3912)))+(((IkReal(-1.00000000000000))*(x3892)*(x3908)))+(((x3889)*(x3891)))+(((x3895)*(x3910)))+(((sj6)*(x3911)))); +evalcond[1]=((((x3890)*(x3891)))+(((x3902)*(x3908)))+(((x3895)*(x3911)))+(((cj6)*(x3912)))+(((IkReal(-1.00000000000000))*(x3897)*(x3910)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3890)*(x3893)*(x3896)))+(((x3904)*(x3905)))+(((x3900)*(x3904)))+(((IkReal(-1.00000000000000))*(r00)*(x3892)*(x3907)))+(((x3901)*(x3909)))+(((r01)*(sj6)*(x3907)))+(((IkReal(-1.00000000000000))*(x3889)*(x3893)*(x3899)))+(((r01)*(x3895)*(x3904)))+(((IkReal(-1.00000000000000))*(r10)*(x3889)*(x3893)*(x3902)))+(((IkReal(-1.00000000000000))*(x3892)*(x3894)*(x3906)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(x3897)*(x3904)))+(((x3896)*(x3906)))+(((IkReal(-1.00000000000000))*(x3892)*(x3894)*(x3909)))+(((x3905)*(x3907)))+(((r01)*(x3895)*(x3907)))+(((IkReal(-1.00000000000000))*(r10)*(x3890)*(x3893)*(x3902)))+(cj3)+(((x3898)*(x3904)))+(((x3900)*(x3907)))+(((IkReal(-1.00000000000000))*(r10)*(x3892)*(x3906)))+(((IkReal(-1.00000000000000))*(x3893)*(x3913)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3889)*(x3893)*(x3905)))+(((IkReal(-1.00000000000000))*(x3892)*(x3903)*(x3906)))+(((IkReal(-1.00000000000000))*(x3896)*(x3907)))+(((IkReal(-1.00000000000000))*(x3904)*(x3915)))+(((IkReal(-1.00000000000000))*(x3893)*(x3914)))+(((x3901)*(x3907)))+(((IkReal(-1.00000000000000))*(x3889)*(x3893)*(x3900)))+(((IkReal(-1.00000000000000))*(x3899)*(x3904)))+(((x3898)*(x3909)))+(((IkReal(-1.00000000000000))*(x3892)*(x3894)*(x3904)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x3892)*(x3906)))+(((r01)*(sj6)*(x3906)))+(sj3)+(((IkReal(-1.00000000000000))*(x3892)*(x3903)*(x3909)))+(((IkReal(-1.00000000000000))*(x3890)*(x3893)*(x3900)))+(((IkReal(-1.00000000000000))*(x3892)*(x3894)*(x3907)))+(((IkReal(-1.00000000000000))*(x3899)*(x3907)))+(((x3896)*(x3904)))+(((IkReal(-1.00000000000000))*(r10)*(x3892)*(x3904)))+(((IkReal(-1.00000000000000))*(x3890)*(x3893)*(x3905)))+(((IkReal(-1.00000000000000))*(x3907)*(x3915)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst24)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst24)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst24)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst24)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x3916=IKsin(j4); +IkReal x3917=IKcos(j4); +IkReal x3918=((r22)*(sj5)); +IkReal x3919=((IkReal(1.00000000000000))*(cj6)); +IkReal x3920=((IkReal(1.00000000000000))*(cj0)); +IkReal x3921=((cj5)*(r11)); +IkReal x3922=((cj5)*(cj6)); +IkReal x3923=((r11)*(sj6)); +IkReal x3924=((IkReal(1.00000000000000))*(sj6)); +IkReal x3925=((cj6)*(r00)); +IkReal x3926=((r12)*(sj5)); +IkReal x3927=((r02)*(sj5)); +IkReal x3928=((cj6)*(r10)); +IkReal x3929=((cj5)*(sj6)); +IkReal x3930=((cj5)*(r01)); +IkReal x3931=((sj0)*(x3916)); +IkReal x3932=((r00)*(x3929)); +IkReal x3933=((cj0)*(x3916)); +IkReal x3934=((sj0)*(x3917)); +IkReal x3935=((r20)*(x3917)); +IkReal x3936=((cj0)*(x3917)); +IkReal x3937=((r21)*(x3916)); +IkReal x3938=((r21)*(x3917)); +IkReal x3939=((r20)*(x3916)); +IkReal x3940=((x3917)*(x3926)); +IkReal x3941=((r01)*(sj6)*(x3917)); +IkReal x3942=((cj5)*(r10)*(x3924)); +evalcond[0]=((IkReal(1.00000000000000))+(((x3929)*(x3939)))+(((x3922)*(x3937)))+(((sj6)*(x3938)))+(((x3916)*(x3918)))+(((IkReal(-1.00000000000000))*(x3919)*(x3935)))); +evalcond[1]=((((x3917)*(x3918)))+(((x3922)*(x3938)))+(((x3929)*(x3935)))+(((cj6)*(x3939)))+(((IkReal(-1.00000000000000))*(x3924)*(x3937)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3916)*(x3920)*(x3926)))+(((IkReal(-1.00000000000000))*(r10)*(x3916)*(x3920)*(x3929)))+(((r01)*(x3922)*(x3931)))+(((r01)*(sj6)*(x3934)))+(((IkReal(-1.00000000000000))*(r00)*(x3919)*(x3934)))+(((IkReal(-1.00000000000000))*(x3917)*(x3920)*(x3923)))+(((x3931)*(x3932)))+(((IkReal(-1.00000000000000))*(x3919)*(x3921)*(x3933)))+(((x3928)*(x3936)))+(((x3927)*(x3931)))); +evalcond[3]=((((x3925)*(x3931)))+(((x3923)*(x3933)))+(((x3932)*(x3934)))+(((IkReal(-1.00000000000000))*(r01)*(x3924)*(x3931)))+(((r01)*(x3922)*(x3934)))+(((IkReal(-1.00000000000000))*(r10)*(x3919)*(x3933)))+(cj3)+(((IkReal(-1.00000000000000))*(x3919)*(x3921)*(x3936)))+(((x3927)*(x3934)))+(((IkReal(-1.00000000000000))*(r10)*(x3917)*(x3920)*(x3929)))+(((IkReal(-1.00000000000000))*(x3920)*(x3940)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x3920)*(x3941)))+(((IkReal(-1.00000000000000))*(x3923)*(x3934)))+(((IkReal(-1.00000000000000))*(x3916)*(x3920)*(x3932)))+(((IkReal(-1.00000000000000))*(x3919)*(x3930)*(x3933)))+(((x3925)*(x3936)))+(((IkReal(-1.00000000000000))*(x3919)*(x3921)*(x3931)))+(((IkReal(-1.00000000000000))*(x3926)*(x3931)))+(((IkReal(-1.00000000000000))*(x3916)*(x3920)*(x3927)))+(((x3928)*(x3934)))+(((IkReal(-1.00000000000000))*(x3931)*(x3942)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x3917)*(x3920)*(x3927)))+(((IkReal(-1.00000000000000))*(x3917)*(x3920)*(x3932)))+(sj3)+(((IkReal(-1.00000000000000))*(x3934)*(x3942)))+(((r01)*(sj6)*(x3933)))+(((IkReal(-1.00000000000000))*(x3919)*(x3921)*(x3934)))+(((IkReal(-1.00000000000000))*(r10)*(x3919)*(x3931)))+(((IkReal(-1.00000000000000))*(x3926)*(x3934)))+(((x3923)*(x3931)))+(((IkReal(-1.00000000000000))*(r00)*(x3919)*(x3933)))+(((IkReal(-1.00000000000000))*(x3919)*(x3930)*(x3936)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x3943=((sj5)*(sj6)); +IkReal x3944=((cj6)*(sj5)); +IkReal x3945=((IkReal(1.00000000000000))*(cj0)); +IkReal x3946=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r00)*(sj0)*(x3943)))+(((IkReal(-1.00000000000000))*(r10)*(x3943)*(x3945)))+(((r01)*(sj0)*(x3944)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x3944)*(x3945)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3946))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x3943)))+(((IkReal(-1.00000000000000))*(r22)*(x3946)))+(((r21)*(x3944))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r00)*(sj0)*(x3943)))+(((IkReal(-1.00000000000000))*(r10)*(x3943)*(x3945)))+(((r01)*(sj0)*(x3944)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x3944)*(x3945)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3946)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x3943)))+(((IkReal(-1.00000000000000))*(r22)*(x3946)))+(((r21)*(x3944)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r00)*(sj0)*(x3943)))+(((IkReal(-1.00000000000000))*(r10)*(x3943)*(x3945)))+(((r01)*(sj0)*(x3944)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x3944)*(x3945)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x3946)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x3943)))+(((IkReal(-1.00000000000000))*(r22)*(x3946)))+(((r21)*(x3944))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x3947=IKcos(j3); +IkReal x3948=((sj5)*(sj6)); +IkReal x3949=((cj0)*(cj5)); +IkReal x3950=((IkReal(1.00000000000000))*(cj0)); +IkReal x3951=((IkReal(1.00000000000000))*(sj0)); +IkReal x3952=((IkReal(1.00000000000000))*(x3947)); +IkReal x3953=((cj6)*(r01)*(sj5)); +IkReal x3954=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((r20)*(x3948)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x3952)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj5)*(r02)*(x3951)))+(((r12)*(x3949)))+(((IkReal(-1.00000000000000))*(r10)*(x3948)*(x3950)))+(((sj0)*(x3953)))+(((r00)*(sj0)*(x3948)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((IkReal(-1.00000000000000))*(x3950)*(x3954)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x3951)*(x3954)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(x3948)*(x3951)))+(((IkReal(-1.00000000000000))*(x3950)*(x3953)))+(((r02)*(x3949)))+(((IkReal(-1.00000000000000))*(r00)*(x3948)*(x3950)))+(((IkReal(-1.00000000000000))*(cj1)*(x3952)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst15; +IkReal x3955=(r21)*(r21); +IkReal x3956=(cj5)*(cj5); +IkReal x3957=(sj6)*(sj6); +IkReal x3958=(cj6)*(cj6); +IkReal x3959=(r20)*(r20); +IkReal x3960=((cj6)*(r21)); +IkReal x3961=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3962=((cj5)*(r22)*(sj5)); +IkReal x3963=((IkReal(1.00000000000000))*(x3957)); +IkReal x3964=((IkReal(1.00000000000000))*(x3958)); +gconst15=IKsign(((((IkReal(-1.00000000000000))*(x3959)*(x3964)))+(((IkReal(-2.00000000000000))*(x3960)*(x3962)))+(((IkReal(-1.00000000000000))*(x3955)*(x3963)))+(((IkReal(-1.00000000000000))*(x3961)*(x3962)))+(((IkReal(-1.00000000000000))*(x3956)*(x3959)*(x3963)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((x3960)*(x3961)))+(((IkReal(-1.00000000000000))*(x3956)*(x3960)*(x3961)))+(((IkReal(-1.00000000000000))*(x3955)*(x3956)*(x3964))))); +IkReal x3965=(r21)*(r21); +IkReal x3966=(cj5)*(cj5); +IkReal x3967=(sj6)*(sj6); +IkReal x3968=(cj6)*(cj6); +IkReal x3969=(r20)*(r20); +IkReal x3970=((cj6)*(r21)); +IkReal x3971=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x3972=((cj5)*(r22)*(sj5)); +IkReal x3973=((IkReal(1.00000000000000))*(x3967)); +IkReal x3974=((IkReal(1.00000000000000))*(x3968)); +dummyeval[0]=((((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((x3970)*(x3971)))+(((IkReal(-1.00000000000000))*(x3966)*(x3970)*(x3971)))+(((IkReal(-1.00000000000000))*(x3966)*(x3969)*(x3973)))+(((IkReal(-1.00000000000000))*(x3971)*(x3972)))+(((IkReal(-2.00000000000000))*(x3970)*(x3972)))+(((IkReal(-1.00000000000000))*(x3965)*(x3973)))+(((IkReal(-1.00000000000000))*(x3965)*(x3966)*(x3974)))+(((IkReal(-1.00000000000000))*(x3969)*(x3974)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst16; +IkReal x3975=(cj6)*(cj6); +IkReal x3976=(sj6)*(sj6); +IkReal x3977=((IkReal(1.00000000000000))*(r21)); +IkReal x3978=((cj6)*(r20)); +IkReal x3979=((r22)*(sj5)); +IkReal x3980=((r01)*(sj0)); +IkReal x3981=((r00)*(sj0)); +IkReal x3982=((cj0)*(r10)); +IkReal x3983=((r02)*(sj0)*(sj5)); +IkReal x3984=((cj5)*(x3975)); +IkReal x3985=((cj0)*(r12)*(sj5)); +IkReal x3986=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x3987=((cj5)*(x3976)); +IkReal x3988=((r20)*(x3987)); +gconst16=IKsign(((((x3978)*(x3983)))+(((IkReal(-1.00000000000000))*(x3977)*(x3981)*(x3987)))+(((IkReal(-1.00000000000000))*(sj6)*(x3977)*(x3983)))+(((r21)*(sj6)*(x3985)))+(((r21)*(x3982)*(x3984)))+(((r21)*(x3982)*(x3987)))+(((IkReal(-1.00000000000000))*(x3986)*(x3988)))+(((IkReal(-1.00000000000000))*(x3977)*(x3981)*(x3984)))+(((IkReal(-1.00000000000000))*(x3978)*(x3985)))+(((IkReal(-1.00000000000000))*(sj6)*(x3979)*(x3986)))+(((cj6)*(x3979)*(x3982)))+(((sj6)*(x3979)*(x3980)))+(((x3980)*(x3988)))+(((IkReal(-1.00000000000000))*(cj6)*(x3979)*(x3981)))+(((r20)*(x3980)*(x3984)))+(((IkReal(-1.00000000000000))*(r20)*(x3984)*(x3986))))); +IkReal x3989=(cj6)*(cj6); +IkReal x3990=(sj6)*(sj6); +IkReal x3991=((IkReal(1.00000000000000))*(r21)); +IkReal x3992=((cj6)*(r20)); +IkReal x3993=((r22)*(sj5)); +IkReal x3994=((r01)*(sj0)); +IkReal x3995=((r00)*(sj0)); +IkReal x3996=((cj0)*(r10)); +IkReal x3997=((r02)*(sj0)*(sj5)); +IkReal x3998=((cj5)*(x3989)); +IkReal x3999=((cj0)*(r12)*(sj5)); +IkReal x4000=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x4001=((cj5)*(x3990)); +IkReal x4002=((r20)*(x4001)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(cj6)*(x3993)*(x3995)))+(((IkReal(-1.00000000000000))*(x3992)*(x3999)))+(((sj6)*(x3993)*(x3994)))+(((r21)*(x3996)*(x3998)))+(((IkReal(-1.00000000000000))*(x4000)*(x4002)))+(((r21)*(x3996)*(x4001)))+(((r20)*(x3994)*(x3998)))+(((IkReal(-1.00000000000000))*(sj6)*(x3991)*(x3997)))+(((cj6)*(x3993)*(x3996)))+(((IkReal(-1.00000000000000))*(r20)*(x3998)*(x4000)))+(((IkReal(-1.00000000000000))*(sj6)*(x3993)*(x4000)))+(((IkReal(-1.00000000000000))*(x3991)*(x3995)*(x4001)))+(((x3994)*(x4002)))+(((r21)*(sj6)*(x3999)))+(((x3992)*(x3997)))+(((IkReal(-1.00000000000000))*(x3991)*(x3995)*(x3998)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4003=((cj1)*(sj6)); +IkReal x4004=((r01)*(sj0)); +IkReal x4005=((cj0)*(r11)); +IkReal x4006=((cj1)*(cj6)); +IkReal x4007=((cj0)*(r10)); +IkReal x4008=((IkReal(1.00000000000000))*(sj0)); +IkReal x4009=((cj1)*(sj5)); +if( IKabs(((gconst16)*(((((IkReal(-1.00000000000000))*(r00)*(x4006)*(x4008)))+(((x4006)*(x4007)))+(((IkReal(-1.00000000000000))*(x4003)*(x4005)))+(((x4003)*(x4004))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst16)*(((((IkReal(-1.00000000000000))*(cj5)*(x4004)*(x4006)))+(((cj0)*(r12)*(x4009)))+(((IkReal(-1.00000000000000))*(r02)*(x4008)*(x4009)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4003)*(x4008)))+(((cj5)*(x4003)*(x4007)))+(((cj5)*(x4005)*(x4006))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst16)*(((((IkReal(-1.00000000000000))*(r00)*(x4006)*(x4008)))+(((x4006)*(x4007)))+(((IkReal(-1.00000000000000))*(x4003)*(x4005)))+(((x4003)*(x4004)))))), ((gconst16)*(((((IkReal(-1.00000000000000))*(cj5)*(x4004)*(x4006)))+(((cj0)*(r12)*(x4009)))+(((IkReal(-1.00000000000000))*(r02)*(x4008)*(x4009)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4003)*(x4008)))+(((cj5)*(x4003)*(x4007)))+(((cj5)*(x4005)*(x4006))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4010=IKsin(j4); +IkReal x4011=IKcos(j4); +IkReal x4012=((r22)*(sj5)); +IkReal x4013=((IkReal(1.00000000000000))*(cj6)); +IkReal x4014=((IkReal(1.00000000000000))*(cj0)); +IkReal x4015=((cj5)*(r11)); +IkReal x4016=((cj5)*(cj6)); +IkReal x4017=((IkReal(1.00000000000000))*(sj3)); +IkReal x4018=((r11)*(sj6)); +IkReal x4019=((IkReal(1.00000000000000))*(sj6)); +IkReal x4020=((cj6)*(r00)); +IkReal x4021=((r12)*(sj5)); +IkReal x4022=((r02)*(sj5)); +IkReal x4023=((cj6)*(r10)); +IkReal x4024=((cj5)*(sj6)); +IkReal x4025=((cj5)*(r01)); +IkReal x4026=((sj0)*(x4010)); +IkReal x4027=((r00)*(x4024)); +IkReal x4028=((cj0)*(x4010)); +IkReal x4029=((sj0)*(x4011)); +IkReal x4030=((r20)*(x4011)); +IkReal x4031=((cj0)*(x4011)); +IkReal x4032=((r21)*(x4010)); +IkReal x4033=((r21)*(x4011)); +IkReal x4034=((r20)*(x4010)); +IkReal x4035=((x4011)*(x4021)); +IkReal x4036=((r01)*(sj6)*(x4011)); +IkReal x4037=((cj5)*(r10)*(x4019)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x4013)*(x4030)))+(((IkReal(-1.00000000000000))*(cj1)))+(((x4024)*(x4034)))+(((sj6)*(x4033)))+(((x4010)*(x4012)))+(((x4016)*(x4032)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x4017)))+(((x4024)*(x4030)))+(((x4016)*(x4033)))+(((cj6)*(x4034)))+(((IkReal(-1.00000000000000))*(x4019)*(x4032)))+(((x4011)*(x4012)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x4013)*(x4029)))+(((r01)*(sj6)*(x4029)))+(((x4023)*(x4031)))+(((IkReal(-1.00000000000000))*(x4011)*(x4014)*(x4018)))+(((x4026)*(x4027)))+(((r01)*(x4016)*(x4026)))+(((IkReal(-1.00000000000000))*(x4010)*(x4014)*(x4021)))+(((IkReal(-1.00000000000000))*(x4013)*(x4015)*(x4028)))+(((IkReal(-1.00000000000000))*(r10)*(x4010)*(x4014)*(x4024)))+(((x4022)*(x4026)))); +evalcond[3]=((((x4020)*(x4026)))+(((x4018)*(x4028)))+(((x4027)*(x4029)))+(((IkReal(-1.00000000000000))*(x4014)*(x4035)))+(((IkReal(-1.00000000000000))*(x4013)*(x4015)*(x4031)))+(cj3)+(((IkReal(-1.00000000000000))*(r10)*(x4013)*(x4028)))+(((x4022)*(x4029)))+(((r01)*(x4016)*(x4029)))+(((IkReal(-1.00000000000000))*(r10)*(x4011)*(x4014)*(x4024)))+(((IkReal(-1.00000000000000))*(r01)*(x4019)*(x4026)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x4010)*(x4014)*(x4022)))+(((IkReal(-1.00000000000000))*(x4014)*(x4036)))+(((IkReal(-1.00000000000000))*(x4021)*(x4026)))+(((IkReal(-1.00000000000000))*(x4010)*(x4014)*(x4027)))+(sj1)+(((IkReal(-1.00000000000000))*(x4013)*(x4015)*(x4026)))+(((x4023)*(x4029)))+(((IkReal(-1.00000000000000))*(x4026)*(x4037)))+(((x4020)*(x4031)))+(((IkReal(-1.00000000000000))*(x4018)*(x4029)))+(((IkReal(-1.00000000000000))*(x4013)*(x4025)*(x4028)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x4013)*(x4026)))+(((IkReal(-1.00000000000000))*(r00)*(x4013)*(x4028)))+(((IkReal(-1.00000000000000))*(x4013)*(x4025)*(x4031)))+(((IkReal(-1.00000000000000))*(x4011)*(x4014)*(x4022)))+(((IkReal(-1.00000000000000))*(x4011)*(x4014)*(x4027)))+(((IkReal(-1.00000000000000))*(cj1)*(x4017)))+(((IkReal(-1.00000000000000))*(x4029)*(x4037)))+(((x4018)*(x4026)))+(((r01)*(sj6)*(x4028)))+(((IkReal(-1.00000000000000))*(x4021)*(x4029)))+(((IkReal(-1.00000000000000))*(x4013)*(x4015)*(x4029)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4038=((IkReal(1.00000000000000))*(cj1)); +IkReal x4039=((sj1)*(sj3)); +IkReal x4040=((r21)*(sj6)); +IkReal x4041=((r22)*(sj5)); +IkReal x4042=((cj6)*(r20)); +IkReal x4043=((cj5)*(r20)*(sj6)); +IkReal x4044=((cj5)*(cj6)*(r21)); +if( IKabs(((gconst15)*(((((IkReal(-1.00000000000000))*(x4038)*(x4041)))+(((IkReal(-1.00000000000000))*(x4038)*(x4043)))+(((x4039)*(x4040)))+(((IkReal(-1.00000000000000))*(x4038)*(x4044)))+(((IkReal(-1.00000000000000))*(x4039)*(x4042))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst15)*(((((cj1)*(x4042)))+(((IkReal(-1.00000000000000))*(x4038)*(x4040)))+(((IkReal(-1.00000000000000))*(x4039)*(x4041)))+(((IkReal(-1.00000000000000))*(x4039)*(x4044)))+(((IkReal(-1.00000000000000))*(x4039)*(x4043))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst15)*(((((IkReal(-1.00000000000000))*(x4038)*(x4041)))+(((IkReal(-1.00000000000000))*(x4038)*(x4043)))+(((x4039)*(x4040)))+(((IkReal(-1.00000000000000))*(x4038)*(x4044)))+(((IkReal(-1.00000000000000))*(x4039)*(x4042)))))), ((gconst15)*(((((cj1)*(x4042)))+(((IkReal(-1.00000000000000))*(x4038)*(x4040)))+(((IkReal(-1.00000000000000))*(x4039)*(x4041)))+(((IkReal(-1.00000000000000))*(x4039)*(x4044)))+(((IkReal(-1.00000000000000))*(x4039)*(x4043))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4045=IKsin(j4); +IkReal x4046=IKcos(j4); +IkReal x4047=((r22)*(sj5)); +IkReal x4048=((IkReal(1.00000000000000))*(cj6)); +IkReal x4049=((IkReal(1.00000000000000))*(cj0)); +IkReal x4050=((cj5)*(r11)); +IkReal x4051=((cj5)*(cj6)); +IkReal x4052=((IkReal(1.00000000000000))*(sj3)); +IkReal x4053=((r11)*(sj6)); +IkReal x4054=((IkReal(1.00000000000000))*(sj6)); +IkReal x4055=((cj6)*(r00)); +IkReal x4056=((r12)*(sj5)); +IkReal x4057=((r02)*(sj5)); +IkReal x4058=((cj6)*(r10)); +IkReal x4059=((cj5)*(sj6)); +IkReal x4060=((cj5)*(r01)); +IkReal x4061=((sj0)*(x4045)); +IkReal x4062=((r00)*(x4059)); +IkReal x4063=((cj0)*(x4045)); +IkReal x4064=((sj0)*(x4046)); +IkReal x4065=((r20)*(x4046)); +IkReal x4066=((cj0)*(x4046)); +IkReal x4067=((r21)*(x4045)); +IkReal x4068=((r21)*(x4046)); +IkReal x4069=((r20)*(x4045)); +IkReal x4070=((x4046)*(x4056)); +IkReal x4071=((r01)*(sj6)*(x4046)); +IkReal x4072=((cj5)*(r10)*(x4054)); +evalcond[0]=((((x4051)*(x4067)))+(((sj6)*(x4068)))+(((x4045)*(x4047)))+(((IkReal(-1.00000000000000))*(cj1)))+(((x4059)*(x4069)))+(((IkReal(-1.00000000000000))*(x4048)*(x4065)))); +evalcond[1]=((((x4059)*(x4065)))+(((IkReal(-1.00000000000000))*(x4054)*(x4067)))+(((IkReal(-1.00000000000000))*(sj1)*(x4052)))+(((cj6)*(x4069)))+(((x4051)*(x4068)))+(((x4046)*(x4047)))); +evalcond[2]=((((x4057)*(x4061)))+(((x4061)*(x4062)))+(((IkReal(-1.00000000000000))*(x4046)*(x4049)*(x4053)))+(((r01)*(x4051)*(x4061)))+(((r01)*(sj6)*(x4064)))+(((IkReal(-1.00000000000000))*(r00)*(x4048)*(x4064)))+(((IkReal(-1.00000000000000))*(x4048)*(x4050)*(x4063)))+(((IkReal(-1.00000000000000))*(r10)*(x4045)*(x4049)*(x4059)))+(((IkReal(-1.00000000000000))*(x4045)*(x4049)*(x4056)))+(((x4058)*(x4066)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x4048)*(x4063)))+(((x4053)*(x4063)))+(((x4055)*(x4061)))+(((x4057)*(x4064)))+(((IkReal(-1.00000000000000))*(x4048)*(x4050)*(x4066)))+(cj3)+(((r01)*(x4051)*(x4064)))+(((x4062)*(x4064)))+(((IkReal(-1.00000000000000))*(r01)*(x4054)*(x4061)))+(((IkReal(-1.00000000000000))*(r10)*(x4046)*(x4049)*(x4059)))+(((IkReal(-1.00000000000000))*(x4049)*(x4070)))); +evalcond[4]=((sj1)+(((IkReal(-1.00000000000000))*(x4048)*(x4050)*(x4061)))+(((IkReal(-1.00000000000000))*(x4056)*(x4061)))+(((IkReal(-1.00000000000000))*(x4061)*(x4072)))+(((IkReal(-1.00000000000000))*(x4045)*(x4049)*(x4062)))+(((x4055)*(x4066)))+(((IkReal(-1.00000000000000))*(x4048)*(x4060)*(x4063)))+(((x4058)*(x4064)))+(((IkReal(-1.00000000000000))*(x4045)*(x4049)*(x4057)))+(((IkReal(-1.00000000000000))*(x4049)*(x4071)))+(((IkReal(-1.00000000000000))*(x4053)*(x4064)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(cj1)*(x4052)))+(((IkReal(-1.00000000000000))*(x4048)*(x4050)*(x4064)))+(((IkReal(-1.00000000000000))*(x4048)*(x4060)*(x4066)))+(((IkReal(-1.00000000000000))*(x4046)*(x4049)*(x4057)))+(((IkReal(-1.00000000000000))*(r10)*(x4048)*(x4061)))+(((IkReal(-1.00000000000000))*(x4064)*(x4072)))+(((x4053)*(x4061)))+(((IkReal(-1.00000000000000))*(x4056)*(x4064)))+(((IkReal(-1.00000000000000))*(x4046)*(x4049)*(x4062)))+(((IkReal(-1.00000000000000))*(r00)*(x4048)*(x4063)))+(((r01)*(sj6)*(x4063)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4073=((sj0)*(sj6)); +IkReal x4074=((cj0)*(cj6)); +IkReal x4075=((cj0)*(sj6)); +IkReal x4076=((IkReal(1.00000000000000))*(cj1)); +IkReal x4077=((r20)*(sj1)); +IkReal x4078=((cj6)*(sj0)); +IkReal x4079=((r21)*(sj1)); +IkReal x4080=((cj5)*(x4076)); +if( IKabs(((gconst14)*(((((IkReal(-1.00000000000000))*(sj6)*(x4079)))+(((cj6)*(x4077)))+(((cj1)*(r11)*(x4073)))+(((cj1)*(r01)*(x4075)))+(((IkReal(-1.00000000000000))*(r10)*(x4076)*(x4078)))+(((IkReal(-1.00000000000000))*(r00)*(x4074)*(x4076))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst14)*(((((IkReal(-1.00000000000000))*(r11)*(x4078)*(x4080)))+(((IkReal(-1.00000000000000))*(r00)*(x4075)*(x4080)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(sj5)*(x4076)))+(((cj5)*(sj6)*(x4077)))+(((IkReal(-1.00000000000000))*(r01)*(x4074)*(x4080)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x4076)))+(((IkReal(-1.00000000000000))*(r10)*(x4073)*(x4080)))+(((cj5)*(cj6)*(x4079)))+(((r22)*(sj1)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst14)*(((((IkReal(-1.00000000000000))*(sj6)*(x4079)))+(((cj6)*(x4077)))+(((cj1)*(r11)*(x4073)))+(((cj1)*(r01)*(x4075)))+(((IkReal(-1.00000000000000))*(r10)*(x4076)*(x4078)))+(((IkReal(-1.00000000000000))*(r00)*(x4074)*(x4076)))))), ((gconst14)*(((((IkReal(-1.00000000000000))*(r11)*(x4078)*(x4080)))+(((IkReal(-1.00000000000000))*(r00)*(x4075)*(x4080)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(sj5)*(x4076)))+(((cj5)*(sj6)*(x4077)))+(((IkReal(-1.00000000000000))*(r01)*(x4074)*(x4080)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x4076)))+(((IkReal(-1.00000000000000))*(r10)*(x4073)*(x4080)))+(((cj5)*(cj6)*(x4079)))+(((r22)*(sj1)*(sj5))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x4081=IKsin(j4); +IkReal x4082=IKcos(j4); +IkReal x4083=((r00)*(sj6)); +IkReal x4084=((cj6)*(r01)); +IkReal x4085=((IkReal(1.00000000000000))*(cj0)); +IkReal x4086=((IkReal(1.00000000000000))*(sj0)); +IkReal x4087=((r10)*(sj6)); +IkReal x4088=((sj5)*(x4081)); +IkReal x4089=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x4090=((cj5)*(x4081)); +IkReal x4091=((cj6)*(x4082)); +IkReal x4092=((sj0)*(x4090)); +IkReal x4093=((r01)*(sj6)*(x4082)); +IkReal x4094=((r11)*(sj6)*(x4082)); +evalcond[0]=((((r20)*(sj6)*(x4090)))+(((r21)*(sj6)*(x4082)))+(((IkReal(-1.00000000000000))*(cj1)))+(((r22)*(x4088)))+(((cj6)*(r21)*(x4090)))+(((IkReal(-1.00000000000000))*(r20)*(x4091)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4085)*(x4094)))+(((r02)*(sj0)*(x4088)))+(((x4084)*(x4092)))+(((IkReal(-1.00000000000000))*(r00)*(x4086)*(x4091)))+(((IkReal(-1.00000000000000))*(x4085)*(x4087)*(x4090)))+(((cj0)*(r10)*(x4091)))+(((x4083)*(x4092)))+(((IkReal(-1.00000000000000))*(r12)*(x4085)*(x4088)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x4085)*(x4090)))+(((sj0)*(x4093)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4086)*(x4094)))+(((IkReal(-1.00000000000000))*(x4083)*(x4085)*(x4090)))+(((IkReal(-1.00000000000000))*(r02)*(x4085)*(x4088)))+(((IkReal(-1.00000000000000))*(x4086)*(x4087)*(x4090)))+(((cj0)*(r00)*(x4091)))+(sj1)+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x4086)*(x4090)))+(((r10)*(sj0)*(x4091)))+(((IkReal(-1.00000000000000))*(r12)*(x4086)*(x4088)))+(((IkReal(-1.00000000000000))*(x4085)*(x4093)))+(((IkReal(-1.00000000000000))*(x4084)*(x4085)*(x4090)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst17; +gconst17=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x4095=((IkReal(1.00000000000000))*(cj0)); +IkReal x4096=((cj4)*(sj6)); +IkReal x4097=((sj0)*(sj6)); +IkReal x4098=((cj5)*(sj4)); +IkReal x4099=((IkReal(0.374290000000000))*(sj5)); +IkReal x4100=((sj4)*(sj5)); +IkReal x4101=((cj0)*(cj6)); +IkReal x4102=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4103=((cj4)*(sj5)); +IkReal x4104=((cj5)*(sj0)); +IkReal x4105=((IkReal(0.374290000000000))*(r02)); +IkReal x4106=((r20)*(sj6)); +IkReal x4107=((cj6)*(r21)); +IkReal x4108=((IkReal(1.00000000000000))*(sj0)); +IkReal x4109=((cj0)*(sj6)); +IkReal x4110=((cj4)*(cj6)); +IkReal x4111=((IkReal(0.374290000000000))*(r12)); +IkReal x4112=((cj0)*(cj5)); +IkReal x4113=((cj6)*(sj5)); +IkReal x4114=((cj6)*(r01)); +IkReal x4115=((r00)*(sj6)); +IkReal x4116=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4117=((cj6)*(r11)); +IkReal x4118=((IkReal(1.00000000000000))*(r10)); +IkReal x4119=((r02)*(sj0)); +IkReal x4120=((cj6)*(sj4)); +IkReal x4121=((r12)*(x4108)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x4100)))+(((r21)*(x4096)))+(((x4098)*(x4107)))+(((IkReal(-1.00000000000000))*(r20)*(x4110)))+(((x4098)*(x4106)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x4099)*(x4107)))+(((x4099)*(x4106)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x4116)))+(pz)+(((IkReal(-1.00000000000000))*(x4102)*(x4107)))+(((IkReal(-1.00000000000000))*(x4102)*(x4106)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x4095)*(x4115)))+(((r12)*(x4104)))+(((IkReal(-1.00000000000000))*(r11)*(x4108)*(x4113)))+(((IkReal(-1.00000000000000))*(sj5)*(x4097)*(x4118)))+(((IkReal(-1.00000000000000))*(r01)*(x4095)*(x4113)))+(((r02)*(x4112)))); +evalcond[4]=((((sj0)*(x4098)*(x4114)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x4095)*(x4098)))+(((IkReal(-1.00000000000000))*(r12)*(x4095)*(x4100)))+(((IkReal(-1.00000000000000))*(r00)*(x4108)*(x4110)))+(((IkReal(-1.00000000000000))*(r11)*(x4095)*(x4096)))+(((r00)*(x4097)*(x4098)))+(((IkReal(-1.00000000000000))*(x4095)*(x4098)*(x4117)))+(((r01)*(sj0)*(x4096)))+(((x4100)*(x4119)))+(((cj4)*(r10)*(x4101)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x4095)*(x4098)*(x4114)))+(((IkReal(-1.00000000000000))*(x4098)*(x4108)*(x4117)))+(((IkReal(-1.00000000000000))*(x4100)*(x4121)))+(((cj4)*(r00)*(x4101)))+(((IkReal(-1.00000000000000))*(x4097)*(x4098)*(x4118)))+(((IkReal(-1.00000000000000))*(r11)*(x4096)*(x4108)))+(((IkReal(-1.00000000000000))*(x4095)*(x4098)*(x4115)))+(((IkReal(-1.00000000000000))*(r02)*(x4095)*(x4100)))+(((IkReal(-1.00000000000000))*(r01)*(x4095)*(x4096)))+(((r10)*(sj0)*(x4110)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((sj0)*(x4099)*(x4114)))+(((IkReal(-1.00000000000000))*(sj0)*(x4102)*(x4114)))+(((r11)*(x4101)*(x4102)))+(((r00)*(x4097)*(x4099)))+(((IkReal(-1.00000000000000))*(r11)*(x4099)*(x4101)))+(((IkReal(-1.00000000000000))*(r00)*(x4097)*(x4102)))+(((IkReal(-1.00000000000000))*(r10)*(x4099)*(x4109)))+(((IkReal(-1.00000000000000))*(x4116)*(x4119)))+(((IkReal(-1.00000000000000))*(py)*(x4095)))+(((IkReal(-1.00000000000000))*(x4104)*(x4105)))+(((r10)*(x4102)*(x4109)))+(((cj0)*(r12)*(x4116)))+(((px)*(sj0)))+(((x4111)*(x4112)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r02)*(x4095)*(x4103)))+(((r01)*(sj4)*(x4109)))+(((IkReal(-1.00000000000000))*(x4103)*(x4121)))+(((IkReal(-1.00000000000000))*(r00)*(x4095)*(x4120)))+(((r11)*(sj4)*(x4097)))+(((IkReal(-1.00000000000000))*(r10)*(x4108)*(x4120)))+(((IkReal(-1.00000000000000))*(x4096)*(x4104)*(x4118)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x4095)*(x4110)))+(((IkReal(-1.00000000000000))*(r11)*(x4104)*(x4110)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4095)*(x4096)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r00)*(x4102)*(x4109)))+(((IkReal(-1.00000000000000))*(sj0)*(x4099)*(x4117)))+(((IkReal(-1.00000000000000))*(px)*(x4095)))+(((IkReal(-1.00000000000000))*(r01)*(x4099)*(x4101)))+(((r10)*(x4097)*(x4102)))+(((IkReal(-1.00000000000000))*(r10)*(x4097)*(x4099)))+(((cj0)*(r02)*(x4116)))+(((x4105)*(x4112)))+(((r01)*(x4101)*(x4102)))+(((IkReal(-1.00000000000000))*(r00)*(x4099)*(x4109)))+(((IkReal(-1.00000000000000))*(py)*(x4108)))+(((r12)*(sj0)*(x4116)))+(((x4104)*(x4111)))+(((sj0)*(x4102)*(x4117)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4122=((r20)*(sj6)); +IkReal x4123=((cj4)*(cj5)); +IkReal x4124=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x4123)*(x4124)))+(((cj4)*(r22)*(sj5)))+(((x4122)*(x4123))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x4124)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4122))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x4123)*(x4124)))+(((cj4)*(r22)*(sj5)))+(((x4122)*(x4123)))))+IKsqr(((((sj5)*(x4124)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4122)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x4123)*(x4124)))+(((cj4)*(r22)*(sj5)))+(((x4122)*(x4123)))), ((((sj5)*(x4124)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4122))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4125=IKcos(j3); +IkReal x4126=((sj0)*(sj5)); +IkReal x4127=((r00)*(sj6)); +IkReal x4128=((cj6)*(r01)); +IkReal x4129=((cj5)*(sj0)); +IkReal x4130=((cj0)*(cj5)); +IkReal x4131=((cj6)*(sj4)); +IkReal x4132=((sj4)*(sj6)); +IkReal x4133=((cj0)*(r11)); +IkReal x4134=((cj4)*(cj6)); +IkReal x4135=((cj4)*(sj6)); +IkReal x4136=((IkReal(1.00000000000000))*(cj0)); +IkReal x4137=((cj4)*(sj5)); +IkReal x4138=((sj5)*(sj6)); +IkReal x4139=((cj6)*(sj5)); +IkReal x4140=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r21)*(x4139)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4125)))+(((r20)*(x4138)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4140)))+(((r20)*(x4131)))+(((IkReal(-1.00000000000000))*(r21)*(x4132)))+(((cj5)*(r21)*(x4134)))+(((r22)*(x4137)))+(((cj5)*(r20)*(x4135)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4140)))+(((x4126)*(x4128)))+(((IkReal(-1.00000000000000))*(r02)*(x4129)))+(((IkReal(-1.00000000000000))*(x4133)*(x4139)))+(((r12)*(x4130)))+(((IkReal(-1.00000000000000))*(r10)*(x4136)*(x4138)))+(((x4126)*(x4127)))); +evalcond[3]=((((cj4)*(x4127)*(x4129)))+(((IkReal(-1.00000000000000))*(r10)*(x4130)*(x4135)))+(((x4132)*(x4133)))+(((cj4)*(r02)*(x4126)))+(((IkReal(-1.00000000000000))*(r12)*(x4136)*(x4137)))+(((IkReal(-1.00000000000000))*(r10)*(x4131)*(x4136)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x4132)))+(((IkReal(-1.00000000000000))*(r11)*(x4130)*(x4134)))+(((r00)*(sj0)*(x4131)))+(((cj4)*(x4128)*(x4129)))+(x4125)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4141=((IkReal(1.00000000000000))*(cj0)); +IkReal x4142=((cj4)*(sj6)); +IkReal x4143=((sj0)*(sj6)); +IkReal x4144=((cj5)*(sj4)); +IkReal x4145=((IkReal(0.374290000000000))*(sj5)); +IkReal x4146=((sj4)*(sj5)); +IkReal x4147=((cj0)*(cj6)); +IkReal x4148=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4149=((cj4)*(sj5)); +IkReal x4150=((cj5)*(sj0)); +IkReal x4151=((IkReal(0.374290000000000))*(r02)); +IkReal x4152=((r20)*(sj6)); +IkReal x4153=((cj6)*(r21)); +IkReal x4154=((IkReal(1.00000000000000))*(sj0)); +IkReal x4155=((cj0)*(sj6)); +IkReal x4156=((cj4)*(cj6)); +IkReal x4157=((IkReal(0.374290000000000))*(r12)); +IkReal x4158=((cj0)*(cj5)); +IkReal x4159=((cj6)*(sj5)); +IkReal x4160=((cj6)*(r01)); +IkReal x4161=((r00)*(sj6)); +IkReal x4162=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4163=((cj6)*(r11)); +IkReal x4164=((IkReal(1.00000000000000))*(r10)); +IkReal x4165=((r02)*(sj0)); +IkReal x4166=((cj6)*(sj4)); +IkReal x4167=((r12)*(x4154)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x4144)*(x4153)))+(((x4144)*(x4152)))+(((r22)*(x4146)))+(((r21)*(x4142)))+(((IkReal(-1.00000000000000))*(r20)*(x4156)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x4148)*(x4152)))+(((IkReal(-1.00000000000000))*(r22)*(x4162)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x4145)*(x4152)))+(((IkReal(-1.00000000000000))*(x4148)*(x4153)))+(((x4145)*(x4153)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x4141)*(x4161)))+(((IkReal(-1.00000000000000))*(r11)*(x4154)*(x4159)))+(((IkReal(-1.00000000000000))*(r01)*(x4141)*(x4159)))+(((r12)*(x4150)))+(((r02)*(x4158)))+(((IkReal(-1.00000000000000))*(sj5)*(x4143)*(x4164)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x4141)*(x4146)))+(((sj0)*(x4144)*(x4160)))+(((IkReal(-1.00000000000000))*(r11)*(x4141)*(x4142)))+(((r01)*(sj0)*(x4142)))+(((IkReal(-1.00000000000000))*(x4141)*(x4144)*(x4163)))+(((IkReal(-1.00000000000000))*(r00)*(x4154)*(x4156)))+(((cj4)*(r10)*(x4147)))+(((x4146)*(x4165)))+(((r00)*(x4143)*(x4144)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x4141)*(x4144)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((r10)*(sj0)*(x4156)))+(((IkReal(-1.00000000000000))*(x4146)*(x4167)))+(((cj4)*(r00)*(x4147)))+(((IkReal(-1.00000000000000))*(x4141)*(x4144)*(x4161)))+(((IkReal(-1.00000000000000))*(r11)*(x4142)*(x4154)))+(((IkReal(-1.00000000000000))*(x4144)*(x4154)*(x4163)))+(((IkReal(-1.00000000000000))*(x4141)*(x4144)*(x4160)))+(((IkReal(-1.00000000000000))*(x4143)*(x4144)*(x4164)))+(((IkReal(-1.00000000000000))*(r01)*(x4141)*(x4142)))+(((IkReal(-1.00000000000000))*(r02)*(x4141)*(x4146)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r11)*(x4147)*(x4148)))+(((cj0)*(r12)*(x4162)))+(((IkReal(-1.00000000000000))*(x4162)*(x4165)))+(((r00)*(x4143)*(x4145)))+(((IkReal(-1.00000000000000))*(py)*(x4141)))+(((IkReal(-1.00000000000000))*(sj0)*(x4148)*(x4160)))+(((x4157)*(x4158)))+(((IkReal(-1.00000000000000))*(r00)*(x4143)*(x4148)))+(((r10)*(x4148)*(x4155)))+(((IkReal(-1.00000000000000))*(r10)*(x4145)*(x4155)))+(((IkReal(-1.00000000000000))*(x4150)*(x4151)))+(((sj0)*(x4145)*(x4160)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x4145)*(x4147)))); +evalcond[7]=((((r01)*(sj4)*(x4155)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4141)*(x4142)))+(((IkReal(-1.00000000000000))*(r11)*(x4150)*(x4156)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x4141)*(x4156)))+(((IkReal(-1.00000000000000))*(r10)*(x4154)*(x4166)))+(((IkReal(-1.00000000000000))*(x4142)*(x4150)*(x4164)))+(((r11)*(sj4)*(x4143)))+(((IkReal(-1.00000000000000))*(r02)*(x4141)*(x4149)))+(((IkReal(-1.00000000000000))*(r00)*(x4141)*(x4166)))+(((IkReal(-1.00000000000000))*(x4149)*(x4167)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x4143)*(x4145)))+(((r10)*(x4143)*(x4148)))+(((IkReal(-1.00000000000000))*(r00)*(x4145)*(x4155)))+(((r00)*(x4148)*(x4155)))+(((x4150)*(x4157)))+(((r12)*(sj0)*(x4162)))+(((IkReal(-1.00000000000000))*(sj0)*(x4145)*(x4163)))+(((sj0)*(x4148)*(x4163)))+(((IkReal(-1.00000000000000))*(r01)*(x4145)*(x4147)))+(((cj0)*(r02)*(x4162)))+(((r01)*(x4147)*(x4148)))+(((IkReal(-1.00000000000000))*(py)*(x4154)))+(((x4151)*(x4158)))+(((IkReal(-1.00000000000000))*(px)*(x4141)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4168=((IkReal(1.00000000000000))*(sj5)); +IkReal x4169=((cj6)*(r21)); +IkReal x4170=((r20)*(sj6)); +IkReal x4171=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x4170)*(x4171)))+(((IkReal(-1.00000000000000))*(x4169)*(x4171)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4168)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x4168)*(x4170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4168)*(x4169))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x4170)*(x4171)))+(((IkReal(-1.00000000000000))*(x4169)*(x4171)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4168)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x4168)*(x4170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4168)*(x4169)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x4170)*(x4171)))+(((IkReal(-1.00000000000000))*(x4169)*(x4171)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4168)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x4168)*(x4170)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4168)*(x4169))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4172=IKsin(j3); +IkReal x4173=IKcos(j3); +IkReal x4174=((sj0)*(sj5)); +IkReal x4175=((r00)*(sj6)); +IkReal x4176=((cj6)*(r01)); +IkReal x4177=((cj5)*(sj0)); +IkReal x4178=((cj0)*(cj5)); +IkReal x4179=((cj6)*(sj4)); +IkReal x4180=((sj4)*(sj6)); +IkReal x4181=((cj0)*(r11)); +IkReal x4182=((cj4)*(cj6)); +IkReal x4183=((cj4)*(sj6)); +IkReal x4184=((IkReal(1.00000000000000))*(cj0)); +IkReal x4185=((cj4)*(sj5)); +IkReal x4186=((sj5)*(sj6)); +IkReal x4187=((cj6)*(sj5)); +evalcond[0]=((((r21)*(x4187)))+(x4173)+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x4186)))); +evalcond[1]=((x4172)+(((r22)*(x4185)))+(((cj5)*(r21)*(x4182)))+(((IkReal(-1.00000000000000))*(r21)*(x4180)))+(((r20)*(x4179)))+(((cj5)*(r20)*(x4183)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4181)*(x4187)))+(((IkReal(-1.00000000000000))*(r02)*(x4177)))+(((r12)*(x4178)))+(((x4174)*(x4175)))+(((x4174)*(x4176)))+(((IkReal(-1.00000000000000))*(r10)*(x4184)*(x4186)))+(((IkReal(-1.00000000000000))*(x4172)))); +evalcond[3]=((((r00)*(sj0)*(x4179)))+(((x4180)*(x4181)))+(((cj4)*(r02)*(x4174)))+(x4173)+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x4180)))+(((cj4)*(x4176)*(x4177)))+(((cj4)*(x4175)*(x4177)))+(((IkReal(-1.00000000000000))*(r10)*(x4179)*(x4184)))+(((IkReal(-1.00000000000000))*(r10)*(x4178)*(x4183)))+(((IkReal(-1.00000000000000))*(r12)*(x4184)*(x4185)))+(((IkReal(-1.00000000000000))*(r11)*(x4178)*(x4182)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4188=((IkReal(1.00000000000000))*(cj0)); +IkReal x4189=((cj4)*(sj6)); +IkReal x4190=((sj0)*(sj4)); +IkReal x4191=((cj5)*(sj6)); +IkReal x4192=((sj4)*(sj5)); +IkReal x4193=((r12)*(sj5)); +IkReal x4194=((IkReal(0.374290000000000))*(cj5)); +IkReal x4195=((r02)*(sj0)); +IkReal x4196=((r20)*(sj4)); +IkReal x4197=((IkReal(1.00000000000000))*(sj0)); +IkReal x4198=((IkReal(1.00000000000000))*(cj5)); +IkReal x4199=((cj0)*(r10)); +IkReal x4200=((cj4)*(cj6)); +IkReal x4201=((r00)*(sj0)); +IkReal x4202=((cj6)*(r21)); +IkReal x4203=((IkReal(0.374290000000000))*(sj5)); +IkReal x4204=((cj0)*(r00)); +IkReal x4205=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4206=((cj0)*(r02)); +IkReal x4207=((cj5)*(sj4)); +IkReal x4208=((cj6)*(r01)); +IkReal x4209=((cj6)*(r11)); +IkReal x4210=((r01)*(sj0)); +IkReal x4211=((r10)*(sj0)); +IkReal x4212=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x4213=((sj6)*(x4203)); +IkReal x4214=((cj0)*(cj6)*(x4203)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x4202)))+(((IkReal(-1.00000000000000))*(r22)*(x4198)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x4202)*(x4207)))+(((x4191)*(x4196)))+(((r21)*(x4189)))+(((r22)*(x4192)))+(((IkReal(-1.00000000000000))*(r20)*(x4200)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x4191)))+(((IkReal(-0.0100000000000000))*(cj5)*(x4202)))+(((x4202)*(x4203)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x4194)))+(((IkReal(-1.00000000000000))*(r22)*(x4205)))+(((r20)*(x4213)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x4200)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x4189)))+(((cj6)*(x4196)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x4188)*(x4191)))+(((r00)*(x4190)*(x4191)))+(((IkReal(-1.00000000000000))*(r00)*(x4197)*(x4200)))+(((IkReal(-1.00000000000000))*(r11)*(x4188)*(x4189)))+(((x4199)*(x4200)))+(((cj5)*(x4190)*(x4208)))+(((r02)*(sj5)*(x4190)))+(((IkReal(-1.00000000000000))*(r12)*(x4188)*(x4192)))+(((IkReal(-1.00000000000000))*(x4188)*(x4207)*(x4209)))+(((x4189)*(x4210)))); +evalcond[6]=((((x4200)*(x4204)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x4188)*(x4191)))+(((x4200)*(x4211)))+(((IkReal(-1.00000000000000))*(r01)*(x4188)*(x4189)))+(((IkReal(-1.00000000000000))*(x4188)*(x4207)*(x4208)))+(((IkReal(-1.00000000000000))*(r02)*(x4188)*(x4192)))+(((IkReal(-1.00000000000000))*(x4190)*(x4198)*(x4209)))+(((IkReal(-1.00000000000000))*(x4190)*(x4193)))+(((IkReal(-1.00000000000000))*(r11)*(x4189)*(x4197)))+(((IkReal(-1.00000000000000))*(r10)*(x4190)*(x4191)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x4203)*(x4209)))+(((IkReal(-1.00000000000000))*(x4195)*(x4205)))+(((sj0)*(x4203)*(x4208)))+(((IkReal(-1.00000000000000))*(py)*(x4188)))+(((cj0)*(r12)*(x4194)))+(((x4201)*(x4213)))+(((IkReal(-1.00000000000000))*(x4194)*(x4195)))+(((IkReal(-1.00000000000000))*(x4199)*(x4213)))+(((IkReal(0.0100000000000000))*(x4191)*(x4199)))+(((IkReal(0.0100000000000000))*(cj0)*(x4193)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4209)))+(((IkReal(-0.0100000000000000))*(x4191)*(x4201)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x4208)))); +evalcond[8]=((IkReal(0.433420000000000))+(((r12)*(sj0)*(x4194)))+(((IkReal(0.0100000000000000))*(x4191)*(x4211)))+(((x4194)*(x4206)))+(((x4205)*(x4206)))+(((IkReal(-1.00000000000000))*(px)*(x4188)))+(((IkReal(-1.00000000000000))*(cj0)*(x4203)*(x4208)))+(((IkReal(0.0100000000000000))*(sj0)*(x4193)))+(((IkReal(-1.00000000000000))*(py)*(x4197)))+(((IkReal(-1.00000000000000))*(sj0)*(x4203)*(x4209)))+(((IkReal(0.0100000000000000))*(x4191)*(x4204)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4208)))+(((IkReal(-1.00000000000000))*(x4211)*(x4213)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x4209)))+(((IkReal(-1.00000000000000))*(x4204)*(x4213)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4215=((cj0)*(cj5)); +IkReal x4216=((IkReal(1.00000000000000))*(cj0)); +IkReal x4217=((cj6)*(r11)); +IkReal x4218=((r10)*(sj6)); +IkReal x4219=((cj5)*(sj0)); +IkReal x4220=((r00)*(sj5)*(sj6)); +IkReal x4221=((cj6)*(r01)*(sj5)); +IkReal x4222=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x4221)))+(((IkReal(-1.00000000000000))*(r02)*(x4219)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4217)))+(((sj0)*(x4220)))+(((r12)*(x4215)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4218))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x4218)*(x4222)))+(((IkReal(-1.00000000000000))*(x4216)*(x4221)))+(((IkReal(-1.00000000000000))*(x4217)*(x4222)))+(((r02)*(x4215)))+(((r12)*(x4219)))+(((IkReal(-1.00000000000000))*(x4216)*(x4220))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x4221)))+(((IkReal(-1.00000000000000))*(r02)*(x4219)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4217)))+(((sj0)*(x4220)))+(((r12)*(x4215)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4218)))))+IKsqr(((((IkReal(-1.00000000000000))*(x4218)*(x4222)))+(((IkReal(-1.00000000000000))*(x4216)*(x4221)))+(((IkReal(-1.00000000000000))*(x4217)*(x4222)))+(((r02)*(x4215)))+(((r12)*(x4219)))+(((IkReal(-1.00000000000000))*(x4216)*(x4220)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x4221)))+(((IkReal(-1.00000000000000))*(r02)*(x4219)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4217)))+(((sj0)*(x4220)))+(((r12)*(x4215)))+(((IkReal(-1.00000000000000))*(sj5)*(x4216)*(x4218)))), ((((IkReal(-1.00000000000000))*(x4218)*(x4222)))+(((IkReal(-1.00000000000000))*(x4216)*(x4221)))+(((IkReal(-1.00000000000000))*(x4217)*(x4222)))+(((r02)*(x4215)))+(((r12)*(x4219)))+(((IkReal(-1.00000000000000))*(x4216)*(x4220))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4223=IKcos(j3); +IkReal x4224=((sj0)*(sj5)); +IkReal x4225=((r00)*(sj6)); +IkReal x4226=((cj6)*(sj0)); +IkReal x4227=((IkReal(1.00000000000000))*(cj4)); +IkReal x4228=((r00)*(sj4)); +IkReal x4229=((cj0)*(cj5)); +IkReal x4230=((cj5)*(sj0)); +IkReal x4231=((cj6)*(r11)); +IkReal x4232=((r10)*(sj6)); +IkReal x4233=((cj0)*(sj5)); +IkReal x4234=((r10)*(sj4)); +IkReal x4235=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x4236=((cj4)*(cj5)*(r01)); +IkReal x4237=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x4238=((cj0)*(sj4)*(sj6)); +IkReal x4239=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj6)*(r01)*(x4224)))+(((IkReal(-1.00000000000000))*(x4231)*(x4233)))+(((x4224)*(x4225)))+(((IkReal(-1.00000000000000))*(x4232)*(x4233)))+(((IkReal(-1.00000000000000))*(x4235)))+(((r12)*(x4229)))+(((IkReal(-1.00000000000000))*(r02)*(x4230)))); +evalcond[1]=((((r02)*(x4229)))+(((r12)*(x4230)))+(((IkReal(-1.00000000000000))*(x4225)*(x4233)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4233)))+(((IkReal(-1.00000000000000))*(x4223)))+(((IkReal(-1.00000000000000))*(x4224)*(x4232)))+(((IkReal(-1.00000000000000))*(x4224)*(x4231)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4234)*(x4237)))+(((x4226)*(x4236)))+(((cj4)*(x4225)*(x4230)))+(((IkReal(-1.00000000000000))*(r12)*(x4227)*(x4233)))+(((cj4)*(r02)*(x4224)))+(x4223)+(((IkReal(-1.00000000000000))*(r01)*(x4239)))+(((x4226)*(x4228)))+(((IkReal(-1.00000000000000))*(x4227)*(x4229)*(x4232)))+(((IkReal(-1.00000000000000))*(x4227)*(x4229)*(x4231)))+(((r11)*(x4238)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4227)*(x4229)))+(((IkReal(-1.00000000000000))*(x4227)*(x4230)*(x4232)))+(((IkReal(-1.00000000000000))*(r12)*(x4224)*(x4227)))+(((IkReal(-1.00000000000000))*(x4228)*(x4237)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x4226)*(x4227)))+(((r01)*(x4238)))+(((IkReal(-1.00000000000000))*(x4226)*(x4234)))+(((IkReal(-1.00000000000000))*(r02)*(x4227)*(x4233)))+(((r11)*(x4239)))+(((IkReal(-1.00000000000000))*(x4235)))+(((IkReal(-1.00000000000000))*(x4225)*(x4227)*(x4229)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4240=((IkReal(1.00000000000000))*(cj0)); +IkReal x4241=((cj4)*(sj6)); +IkReal x4242=((sj0)*(sj4)); +IkReal x4243=((cj5)*(sj6)); +IkReal x4244=((sj4)*(sj5)); +IkReal x4245=((r12)*(sj5)); +IkReal x4246=((IkReal(0.374290000000000))*(cj5)); +IkReal x4247=((r02)*(sj0)); +IkReal x4248=((r20)*(sj4)); +IkReal x4249=((IkReal(1.00000000000000))*(sj0)); +IkReal x4250=((IkReal(1.00000000000000))*(cj5)); +IkReal x4251=((cj0)*(r10)); +IkReal x4252=((cj4)*(cj6)); +IkReal x4253=((r00)*(sj0)); +IkReal x4254=((cj6)*(r21)); +IkReal x4255=((IkReal(0.374290000000000))*(sj5)); +IkReal x4256=((cj0)*(r00)); +IkReal x4257=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4258=((cj0)*(r02)); +IkReal x4259=((cj5)*(sj4)); +IkReal x4260=((cj6)*(r01)); +IkReal x4261=((cj6)*(r11)); +IkReal x4262=((r01)*(sj0)); +IkReal x4263=((r10)*(sj0)); +IkReal x4264=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x4265=((sj6)*(x4255)); +IkReal x4266=((cj0)*(cj6)*(x4255)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x4250)))+(((sj5)*(x4254)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x4243)*(x4248)))+(((r21)*(x4241)))+(((IkReal(-1.00000000000000))*(r20)*(x4252)))+(((x4254)*(x4259)))+(((r22)*(x4244)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x4246)))+(((x4254)*(x4255)))+(((IkReal(-0.0100000000000000))*(cj5)*(x4254)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x4243)))+(((IkReal(-1.00000000000000))*(r22)*(x4257)))+(((r20)*(x4265)))); +evalcond[4]=((((cj5)*(r21)*(x4252)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x4248)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x4241)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x4240)*(x4243)))+(((r00)*(x4242)*(x4243)))+(((IkReal(-1.00000000000000))*(r12)*(x4240)*(x4244)))+(((IkReal(-1.00000000000000))*(r11)*(x4240)*(x4241)))+(((x4251)*(x4252)))+(((x4241)*(x4262)))+(((r02)*(sj5)*(x4242)))+(((IkReal(-1.00000000000000))*(x4240)*(x4259)*(x4261)))+(((IkReal(-1.00000000000000))*(r00)*(x4249)*(x4252)))+(((cj5)*(x4242)*(x4260)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r00)*(sj4)*(x4240)*(x4243)))+(((IkReal(-1.00000000000000))*(x4242)*(x4250)*(x4261)))+(((IkReal(-1.00000000000000))*(r01)*(x4240)*(x4241)))+(((x4252)*(x4256)))+(((IkReal(-1.00000000000000))*(r11)*(x4241)*(x4249)))+(((IkReal(-1.00000000000000))*(r10)*(x4242)*(x4243)))+(((IkReal(-1.00000000000000))*(x4242)*(x4245)))+(((IkReal(-1.00000000000000))*(x4240)*(x4259)*(x4260)))+(((x4252)*(x4263)))+(((IkReal(-1.00000000000000))*(r02)*(x4240)*(x4244)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(x4243)*(x4251)))+(((IkReal(-1.00000000000000))*(cj0)*(x4255)*(x4261)))+(((x4253)*(x4265)))+(((IkReal(-0.0100000000000000))*(x4243)*(x4253)))+(((IkReal(0.0100000000000000))*(cj0)*(x4245)))+(((IkReal(-1.00000000000000))*(x4246)*(x4247)))+(((cj0)*(r12)*(x4246)))+(((IkReal(-1.00000000000000))*(x4251)*(x4265)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4261)))+(((sj0)*(x4255)*(x4260)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x4260)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x4247)*(x4257)))+(((IkReal(-1.00000000000000))*(py)*(x4240)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(x4256)*(x4265)))+(((IkReal(-1.00000000000000))*(py)*(x4249)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x4261)))+(((IkReal(-1.00000000000000))*(cj0)*(x4255)*(x4260)))+(((r12)*(sj0)*(x4246)))+(((IkReal(-1.00000000000000))*(sj0)*(x4255)*(x4261)))+(((IkReal(0.0100000000000000))*(x4243)*(x4256)))+(((IkReal(0.0100000000000000))*(x4243)*(x4263)))+(((IkReal(-1.00000000000000))*(px)*(x4240)))+(((IkReal(-1.00000000000000))*(x4263)*(x4265)))+(((x4257)*(x4258)))+(((x4246)*(x4258)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4260)))+(((IkReal(0.0100000000000000))*(sj0)*(x4245)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4267=((sj0)*(sj5)); +IkReal x4268=((r00)*(sj6)); +IkReal x4269=((IkReal(1.00000000000000))*(cj5)); +IkReal x4270=((cj6)*(r11)); +IkReal x4271=((cj6)*(r01)); +IkReal x4272=((r10)*(sj6)); +IkReal x4273=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x4272)*(x4273)))+(((cj0)*(cj5)*(r12)))+(((x4267)*(x4268)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4269)))+(((x4267)*(x4271)))+(((IkReal(-1.00000000000000))*(x4270)*(x4273))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x4271)*(x4273)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4269)))+(((x4267)*(x4270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4269)))+(((x4268)*(x4273)))+(((x4267)*(x4272))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x4272)*(x4273)))+(((cj0)*(cj5)*(r12)))+(((x4267)*(x4268)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4269)))+(((x4267)*(x4271)))+(((IkReal(-1.00000000000000))*(x4270)*(x4273)))))+IKsqr(((((x4271)*(x4273)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4269)))+(((x4267)*(x4270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4269)))+(((x4268)*(x4273)))+(((x4267)*(x4272)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x4272)*(x4273)))+(((cj0)*(cj5)*(r12)))+(((x4267)*(x4268)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4269)))+(((x4267)*(x4271)))+(((IkReal(-1.00000000000000))*(x4270)*(x4273)))), ((((x4271)*(x4273)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4269)))+(((x4267)*(x4270)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4269)))+(((x4268)*(x4273)))+(((x4267)*(x4272))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4274=IKcos(j3); +IkReal x4275=IKsin(j3); +IkReal x4276=((sj0)*(sj5)); +IkReal x4277=((r00)*(sj6)); +IkReal x4278=((cj6)*(sj0)); +IkReal x4279=((IkReal(1.00000000000000))*(cj4)); +IkReal x4280=((r00)*(sj4)); +IkReal x4281=((cj0)*(cj5)); +IkReal x4282=((cj5)*(sj0)); +IkReal x4283=((cj6)*(r11)); +IkReal x4284=((r10)*(sj6)); +IkReal x4285=((cj0)*(sj5)); +IkReal x4286=((r10)*(sj4)); +IkReal x4287=((cj4)*(cj5)*(r01)); +IkReal x4288=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x4289=((cj0)*(sj4)*(sj6)); +IkReal x4290=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj6)*(r01)*(x4276)))+(((IkReal(-1.00000000000000))*(x4284)*(x4285)))+(((IkReal(-1.00000000000000))*(x4283)*(x4285)))+(((IkReal(-1.00000000000000))*(x4275)))+(((x4276)*(x4277)))+(((IkReal(-1.00000000000000))*(r02)*(x4282)))+(((r12)*(x4281)))); +evalcond[1]=((((r02)*(x4281)))+(((IkReal(-1.00000000000000))*(x4277)*(x4285)))+(((IkReal(-1.00000000000000))*(x4276)*(x4284)))+(x4274)+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4285)))+(((r12)*(x4282)))+(((IkReal(-1.00000000000000))*(x4276)*(x4283)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4279)*(x4281)*(x4284)))+(((x4278)*(x4287)))+(((r11)*(x4289)))+(((x4278)*(x4280)))+(((IkReal(-1.00000000000000))*(r01)*(x4290)))+(x4274)+(((IkReal(-1.00000000000000))*(x4286)*(x4288)))+(((IkReal(-1.00000000000000))*(r12)*(x4279)*(x4285)))+(((cj4)*(r02)*(x4276)))+(((IkReal(-1.00000000000000))*(x4279)*(x4281)*(x4283)))+(((cj4)*(x4277)*(x4282)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r02)*(x4279)*(x4285)))+(((IkReal(-1.00000000000000))*(x4280)*(x4288)))+(x4275)+(((r01)*(x4289)))+(((r11)*(x4290)))+(((IkReal(-1.00000000000000))*(x4279)*(x4282)*(x4284)))+(((IkReal(-1.00000000000000))*(x4278)*(x4286)))+(((IkReal(-1.00000000000000))*(x4277)*(x4279)*(x4281)))+(((IkReal(-1.00000000000000))*(r12)*(x4276)*(x4279)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4279)*(x4281)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x4278)*(x4279)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4291=((cj0)*(cj5)); +IkReal x4292=((IkReal(1.00000000000000))*(cj0)); +IkReal x4293=((cj6)*(r11)); +IkReal x4294=((r10)*(sj6)); +IkReal x4295=((cj5)*(sj0)); +IkReal x4296=((r00)*(sj5)*(sj6)); +IkReal x4297=((cj6)*(r01)*(sj5)); +IkReal x4298=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4294)))+(((sj0)*(x4296)))+(((sj0)*(x4297)))+(((IkReal(-1.00000000000000))*(r02)*(x4295)))+(((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4293)))+(((r12)*(x4291))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r12)*(x4295)))+(((IkReal(-1.00000000000000))*(x4293)*(x4298)))+(((r02)*(x4291)))+(((IkReal(-1.00000000000000))*(x4294)*(x4298)))+(((IkReal(-1.00000000000000))*(x4292)*(x4297)))+(((IkReal(-1.00000000000000))*(x4292)*(x4296))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4294)))+(((sj0)*(x4296)))+(((sj0)*(x4297)))+(((IkReal(-1.00000000000000))*(r02)*(x4295)))+(((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4293)))+(((r12)*(x4291)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r12)*(x4295)))+(((IkReal(-1.00000000000000))*(x4293)*(x4298)))+(((r02)*(x4291)))+(((IkReal(-1.00000000000000))*(x4294)*(x4298)))+(((IkReal(-1.00000000000000))*(x4292)*(x4297)))+(((IkReal(-1.00000000000000))*(x4292)*(x4296)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4294)))+(((sj0)*(x4296)))+(((sj0)*(x4297)))+(((IkReal(-1.00000000000000))*(r02)*(x4295)))+(((IkReal(-1.00000000000000))*(sj5)*(x4292)*(x4293)))+(((r12)*(x4291)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r12)*(x4295)))+(((IkReal(-1.00000000000000))*(x4293)*(x4298)))+(((r02)*(x4291)))+(((IkReal(-1.00000000000000))*(x4294)*(x4298)))+(((IkReal(-1.00000000000000))*(x4292)*(x4297)))+(((IkReal(-1.00000000000000))*(x4292)*(x4296))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4299=IKsin(j3); +IkReal x4300=IKcos(j3); +IkReal x4301=((sj0)*(sj5)); +IkReal x4302=((r00)*(sj6)); +IkReal x4303=((cj6)*(r01)); +IkReal x4304=((cj4)*(cj5)); +IkReal x4305=((IkReal(1.00000000000000))*(cj0)); +IkReal x4306=((cj5)*(r12)); +IkReal x4307=((IkReal(1.00000000000000))*(sj0)); +IkReal x4308=((cj6)*(r11)); +IkReal x4309=((cj5)*(r02)); +IkReal x4310=((IkReal(1.00000000000000))*(cj1)); +IkReal x4311=((cj6)*(sj4)); +IkReal x4312=((cj6)*(r21)); +IkReal x4313=((r20)*(sj6)); +IkReal x4314=((r10)*(sj6)); +IkReal x4315=((sj4)*(sj6)); +IkReal x4316=((cj4)*(r02)); +IkReal x4317=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4318=((IkReal(1.00000000000000))*(x4299)); +IkReal x4319=((cj0)*(x4315)); +evalcond[0]=((((sj5)*(x4313)))+(((IkReal(-1.00000000000000))*(sj1)*(x4300)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4312)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x4318)))+(((x4304)*(x4313)))+(((IkReal(-1.00000000000000))*(r21)*(x4315)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x4311)))+(((x4304)*(x4312)))); +evalcond[2]=((((cj0)*(x4306)))+(((IkReal(-1.00000000000000))*(sj5)*(x4305)*(x4314)))+(((x4301)*(x4303)))+(((IkReal(-1.00000000000000))*(x4318)))+(((IkReal(-1.00000000000000))*(x4307)*(x4309)))+(((x4301)*(x4302)))+(((IkReal(-1.00000000000000))*(sj5)*(x4305)*(x4308)))); +evalcond[3]=((((sj0)*(x4306)))+(((IkReal(-1.00000000000000))*(x4301)*(x4308)))+(((IkReal(-1.00000000000000))*(sj5)*(x4302)*(x4305)))+(((IkReal(-1.00000000000000))*(x4301)*(x4314)))+(((IkReal(-1.00000000000000))*(x4300)*(x4310)))+(((IkReal(-1.00000000000000))*(sj5)*(x4303)*(x4305)))+(((cj0)*(x4309)))); +evalcond[4]=((((r11)*(x4319)))+(((x4301)*(x4316)))+(((IkReal(-1.00000000000000))*(x4304)*(x4305)*(x4308)))+(((IkReal(-1.00000000000000))*(x4304)*(x4305)*(x4314)))+(((IkReal(-1.00000000000000))*(r10)*(x4305)*(x4311)))+(((sj0)*(x4303)*(x4304)))+(((IkReal(-1.00000000000000))*(r01)*(x4307)*(x4315)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4305)))+(((sj0)*(x4302)*(x4304)))+(x4300)+(((r00)*(sj0)*(x4311)))); +evalcond[5]=((((r11)*(sj0)*(x4315)))+(((IkReal(-1.00000000000000))*(r00)*(x4305)*(x4311)))+(((IkReal(-1.00000000000000))*(r10)*(x4307)*(x4311)))+(((IkReal(-1.00000000000000))*(x4299)*(x4310)))+(((IkReal(-1.00000000000000))*(x4304)*(x4307)*(x4308)))+(((IkReal(-1.00000000000000))*(x4301)*(x4317)))+(((IkReal(-1.00000000000000))*(sj5)*(x4305)*(x4316)))+(((IkReal(-1.00000000000000))*(x4303)*(x4304)*(x4305)))+(((IkReal(-1.00000000000000))*(x4304)*(x4307)*(x4314)))+(((IkReal(-1.00000000000000))*(x4302)*(x4304)*(x4305)))+(((r01)*(x4319)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4320=((sj5)*(sj6)); +IkReal x4321=((cj6)*(sj5)); +IkReal x4322=((IkReal(1.00000000000000))*(cj0)); +IkReal x4323=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r10)*(x4320)*(x4322)))+(((r01)*(sj0)*(x4321)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4323)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x4320)))+(((IkReal(-1.00000000000000))*(r11)*(x4321)*(x4322))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x4321)))+(((IkReal(-1.00000000000000))*(r22)*(x4323)))+(((r20)*(x4320))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r10)*(x4320)*(x4322)))+(((r01)*(sj0)*(x4321)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4323)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x4320)))+(((IkReal(-1.00000000000000))*(r11)*(x4321)*(x4322)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x4321)))+(((IkReal(-1.00000000000000))*(r22)*(x4323)))+(((r20)*(x4320)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r10)*(x4320)*(x4322)))+(((r01)*(sj0)*(x4321)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4323)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x4320)))+(((IkReal(-1.00000000000000))*(r11)*(x4321)*(x4322)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x4321)))+(((IkReal(-1.00000000000000))*(r22)*(x4323)))+(((r20)*(x4320))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4324=IKsin(j3); +IkReal x4325=IKcos(j3); +IkReal x4326=((sj0)*(sj5)); +IkReal x4327=((r00)*(sj6)); +IkReal x4328=((cj6)*(r01)); +IkReal x4329=((cj4)*(cj5)); +IkReal x4330=((IkReal(1.00000000000000))*(cj0)); +IkReal x4331=((cj5)*(r12)); +IkReal x4332=((IkReal(1.00000000000000))*(sj0)); +IkReal x4333=((cj6)*(r11)); +IkReal x4334=((cj5)*(r02)); +IkReal x4335=((IkReal(1.00000000000000))*(cj1)); +IkReal x4336=((cj6)*(sj4)); +IkReal x4337=((cj6)*(r21)); +IkReal x4338=((r20)*(sj6)); +IkReal x4339=((r10)*(sj6)); +IkReal x4340=((sj4)*(sj6)); +IkReal x4341=((cj4)*(r02)); +IkReal x4342=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4343=((IkReal(1.00000000000000))*(x4324)); +IkReal x4344=((cj0)*(x4340)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x4325)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4337)))+(((sj5)*(x4338)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x4340)))+(((r20)*(x4336)))+(((x4329)*(x4337)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x4343)))+(((x4329)*(x4338)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4343)))+(((cj0)*(x4331)))+(((x4326)*(x4328)))+(((x4326)*(x4327)))+(((IkReal(-1.00000000000000))*(x4332)*(x4334)))+(((IkReal(-1.00000000000000))*(sj5)*(x4330)*(x4339)))+(((IkReal(-1.00000000000000))*(sj5)*(x4330)*(x4333)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x4327)*(x4330)))+(((IkReal(-1.00000000000000))*(x4325)*(x4335)))+(((cj0)*(x4334)))+(((IkReal(-1.00000000000000))*(x4326)*(x4339)))+(((sj0)*(x4331)))+(((IkReal(-1.00000000000000))*(sj5)*(x4328)*(x4330)))+(((IkReal(-1.00000000000000))*(x4326)*(x4333)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4330)))+(((IkReal(-1.00000000000000))*(x4329)*(x4330)*(x4333)))+(((IkReal(-1.00000000000000))*(x4329)*(x4330)*(x4339)))+(((r00)*(sj0)*(x4336)))+(((r11)*(x4344)))+(((sj0)*(x4327)*(x4329)))+(((IkReal(-1.00000000000000))*(r01)*(x4332)*(x4340)))+(((IkReal(-1.00000000000000))*(r10)*(x4330)*(x4336)))+(((x4326)*(x4341)))+(((sj0)*(x4328)*(x4329)))+(x4325)); +evalcond[5]=((((r01)*(x4344)))+(((IkReal(-1.00000000000000))*(r00)*(x4330)*(x4336)))+(((IkReal(-1.00000000000000))*(x4326)*(x4342)))+(((IkReal(-1.00000000000000))*(x4328)*(x4329)*(x4330)))+(((IkReal(-1.00000000000000))*(r10)*(x4332)*(x4336)))+(((IkReal(-1.00000000000000))*(x4327)*(x4329)*(x4330)))+(((IkReal(-1.00000000000000))*(x4329)*(x4332)*(x4339)))+(((IkReal(-1.00000000000000))*(x4324)*(x4335)))+(((IkReal(-1.00000000000000))*(x4329)*(x4332)*(x4333)))+(((IkReal(-1.00000000000000))*(sj5)*(x4330)*(x4341)))+(((r11)*(sj0)*(x4340)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4345=((r20)*(sj6)); +IkReal x4346=((cj4)*(cj5)); +IkReal x4347=((cj6)*(r21)); +if( IKabs(((gconst17)*(((((x4345)*(x4346)))+(((x4346)*(x4347)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst17)*(((((sj5)*(x4345)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4347))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst17)*(((((x4345)*(x4346)))+(((x4346)*(x4347)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))), ((gconst17)*(((((sj5)*(x4345)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4347))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4348=IKsin(j3); +IkReal x4349=IKcos(j3); +IkReal x4350=((sj0)*(sj5)); +IkReal x4351=((r00)*(sj6)); +IkReal x4352=((cj6)*(r01)); +IkReal x4353=((cj4)*(cj5)); +IkReal x4354=((IkReal(1.00000000000000))*(cj0)); +IkReal x4355=((cj5)*(r12)); +IkReal x4356=((IkReal(1.00000000000000))*(sj0)); +IkReal x4357=((cj6)*(r11)); +IkReal x4358=((cj5)*(r02)); +IkReal x4359=((IkReal(1.00000000000000))*(cj1)); +IkReal x4360=((cj6)*(sj4)); +IkReal x4361=((cj6)*(r21)); +IkReal x4362=((r20)*(sj6)); +IkReal x4363=((r10)*(sj6)); +IkReal x4364=((sj4)*(sj6)); +IkReal x4365=((cj4)*(r02)); +IkReal x4366=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4367=((IkReal(1.00000000000000))*(x4348)); +IkReal x4368=((cj0)*(x4364)); +evalcond[0]=((((sj5)*(x4361)))+(((sj5)*(x4362)))+(((IkReal(-1.00000000000000))*(sj1)*(x4349)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((x4353)*(x4362)))+(((x4353)*(x4361)))+(((IkReal(-1.00000000000000))*(r21)*(x4364)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x4360)))+(((IkReal(-1.00000000000000))*(sj1)*(x4367)))); +evalcond[2]=((((cj0)*(x4355)))+(((IkReal(-1.00000000000000))*(x4356)*(x4358)))+(((x4350)*(x4352)))+(((IkReal(-1.00000000000000))*(sj5)*(x4354)*(x4363)))+(((IkReal(-1.00000000000000))*(sj5)*(x4354)*(x4357)))+(((IkReal(-1.00000000000000))*(x4367)))+(((x4350)*(x4351)))); +evalcond[3]=((((cj0)*(x4358)))+(((IkReal(-1.00000000000000))*(x4349)*(x4359)))+(((IkReal(-1.00000000000000))*(sj5)*(x4352)*(x4354)))+(((IkReal(-1.00000000000000))*(sj5)*(x4351)*(x4354)))+(((IkReal(-1.00000000000000))*(x4350)*(x4357)))+(((sj0)*(x4355)))+(((IkReal(-1.00000000000000))*(x4350)*(x4363)))); +evalcond[4]=((((r00)*(sj0)*(x4360)))+(((IkReal(-1.00000000000000))*(r01)*(x4356)*(x4364)))+(((sj0)*(x4352)*(x4353)))+(((sj0)*(x4351)*(x4353)))+(((IkReal(-1.00000000000000))*(x4353)*(x4354)*(x4363)))+(((IkReal(-1.00000000000000))*(x4353)*(x4354)*(x4357)))+(x4349)+(((IkReal(-1.00000000000000))*(r10)*(x4354)*(x4360)))+(((x4350)*(x4365)))+(((r11)*(x4368)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4354)))); +evalcond[5]=((((r01)*(x4368)))+(((IkReal(-1.00000000000000))*(sj5)*(x4354)*(x4365)))+(((IkReal(-1.00000000000000))*(x4353)*(x4356)*(x4357)))+(((r11)*(sj0)*(x4364)))+(((IkReal(-1.00000000000000))*(x4350)*(x4366)))+(((IkReal(-1.00000000000000))*(x4353)*(x4356)*(x4363)))+(((IkReal(-1.00000000000000))*(x4351)*(x4353)*(x4354)))+(((IkReal(-1.00000000000000))*(x4348)*(x4359)))+(((IkReal(-1.00000000000000))*(r10)*(x4356)*(x4360)))+(((IkReal(-1.00000000000000))*(r00)*(x4354)*(x4360)))+(((IkReal(-1.00000000000000))*(x4352)*(x4353)*(x4354)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4369=((cj1)*(sj6)); +IkReal x4370=((r01)*(sj0)); +IkReal x4371=((cj0)*(r11)); +IkReal x4372=((cj1)*(cj6)); +IkReal x4373=((cj0)*(r10)); +IkReal x4374=((IkReal(1.00000000000000))*(sj0)); +IkReal x4375=((cj1)*(sj5)); +if( IKabs(((gconst13)*(((((IkReal(-1.00000000000000))*(r00)*(x4372)*(x4374)))+(((x4372)*(x4373)))+(((x4369)*(x4370)))+(((IkReal(-1.00000000000000))*(x4369)*(x4371))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst13)*(((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4369)*(x4374)))+(((IkReal(-1.00000000000000))*(r02)*(x4374)*(x4375)))+(((cj0)*(r12)*(x4375)))+(((cj5)*(x4369)*(x4373)))+(((IkReal(-1.00000000000000))*(cj5)*(x4370)*(x4372)))+(((cj5)*(x4371)*(x4372))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst13)*(((((IkReal(-1.00000000000000))*(r00)*(x4372)*(x4374)))+(((x4372)*(x4373)))+(((x4369)*(x4370)))+(((IkReal(-1.00000000000000))*(x4369)*(x4371)))))), ((gconst13)*(((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4369)*(x4374)))+(((IkReal(-1.00000000000000))*(r02)*(x4374)*(x4375)))+(((cj0)*(r12)*(x4375)))+(((cj5)*(x4369)*(x4373)))+(((IkReal(-1.00000000000000))*(cj5)*(x4370)*(x4372)))+(((cj5)*(x4371)*(x4372))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x4376=IKsin(j4); +IkReal x4377=IKcos(j4); +IkReal x4378=((r00)*(sj6)); +IkReal x4379=((cj6)*(r01)); +IkReal x4380=((IkReal(1.00000000000000))*(cj0)); +IkReal x4381=((IkReal(1.00000000000000))*(sj0)); +IkReal x4382=((r10)*(sj6)); +IkReal x4383=((sj5)*(x4376)); +IkReal x4384=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x4385=((cj5)*(x4376)); +IkReal x4386=((cj6)*(x4377)); +IkReal x4387=((sj0)*(x4385)); +IkReal x4388=((r01)*(sj6)*(x4377)); +IkReal x4389=((r11)*(sj6)*(x4377)); +evalcond[0]=((((r22)*(x4383)))+(((r20)*(sj6)*(x4385)))+(((r21)*(sj6)*(x4377)))+(((IkReal(-1.00000000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(r20)*(x4386)))+(((cj6)*(r21)*(x4385)))); +evalcond[1]=((((x4378)*(x4387)))+(((IkReal(-1.00000000000000))*(r12)*(x4380)*(x4383)))+(((cj0)*(r10)*(x4386)))+(((IkReal(-1.00000000000000))*(r00)*(x4381)*(x4386)))+(((r02)*(sj0)*(x4383)))+(((IkReal(-1.00000000000000))*(x4380)*(x4382)*(x4385)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x4380)*(x4385)))+(((IkReal(-1.00000000000000))*(x4380)*(x4389)))+(((x4379)*(x4387)))+(((sj0)*(x4388)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4379)*(x4380)*(x4385)))+(((cj0)*(r00)*(x4386)))+(((IkReal(-1.00000000000000))*(r12)*(x4381)*(x4383)))+(sj1)+(((IkReal(-1.00000000000000))*(x4380)*(x4388)))+(((r10)*(sj0)*(x4386)))+(((IkReal(-1.00000000000000))*(x4381)*(x4389)))+(((IkReal(-1.00000000000000))*(r02)*(x4380)*(x4383)))+(((IkReal(-1.00000000000000))*(x4381)*(x4382)*(x4385)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x4381)*(x4385)))+(((IkReal(-1.00000000000000))*(x4378)*(x4380)*(x4385)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst17; +gconst17=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x4390=((IkReal(1.00000000000000))*(cj0)); +IkReal x4391=((cj4)*(sj6)); +IkReal x4392=((sj0)*(sj6)); +IkReal x4393=((cj5)*(sj4)); +IkReal x4394=((IkReal(0.374290000000000))*(sj5)); +IkReal x4395=((sj4)*(sj5)); +IkReal x4396=((cj0)*(cj6)); +IkReal x4397=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4398=((cj4)*(sj5)); +IkReal x4399=((cj5)*(sj0)); +IkReal x4400=((IkReal(0.374290000000000))*(r02)); +IkReal x4401=((r20)*(sj6)); +IkReal x4402=((cj6)*(r21)); +IkReal x4403=((IkReal(1.00000000000000))*(sj0)); +IkReal x4404=((cj0)*(sj6)); +IkReal x4405=((cj4)*(cj6)); +IkReal x4406=((IkReal(0.374290000000000))*(r12)); +IkReal x4407=((cj0)*(cj5)); +IkReal x4408=((cj6)*(sj5)); +IkReal x4409=((cj6)*(r01)); +IkReal x4410=((r00)*(sj6)); +IkReal x4411=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4412=((cj6)*(r11)); +IkReal x4413=((IkReal(1.00000000000000))*(r10)); +IkReal x4414=((r02)*(sj0)); +IkReal x4415=((cj6)*(sj4)); +IkReal x4416=((r12)*(x4403)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x4405)))+(((x4393)*(x4402)))+(((x4393)*(x4401)))+(((r21)*(x4391)))+(((r22)*(x4395)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(r22)*(x4411)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4397)*(x4402)))+(((IkReal(-1.00000000000000))*(x4397)*(x4401)))+(((x4394)*(x4401)))+(pz)+(((x4394)*(x4402)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x4403)*(x4408)))+(((r12)*(x4399)))+(((IkReal(-1.00000000000000))*(r01)*(x4390)*(x4408)))+(((IkReal(-1.00000000000000))*(sj5)*(x4392)*(x4413)))+(((IkReal(-1.00000000000000))*(sj5)*(x4390)*(x4410)))+(((r02)*(x4407)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r11)*(x4390)*(x4391)))+(((r01)*(sj0)*(x4391)))+(((IkReal(-1.00000000000000))*(r00)*(x4403)*(x4405)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x4390)*(x4393)))+(((IkReal(-1.00000000000000))*(r12)*(x4390)*(x4395)))+(((x4395)*(x4414)))+(((IkReal(-1.00000000000000))*(x4390)*(x4393)*(x4412)))+(((r00)*(x4392)*(x4393)))+(((sj0)*(x4393)*(x4409)))+(((cj4)*(r10)*(x4396)))); +evalcond[5]=((IkReal(1.00000000000000))+(((r10)*(sj0)*(x4405)))+(((IkReal(-1.00000000000000))*(x4390)*(x4393)*(x4410)))+(((IkReal(-1.00000000000000))*(x4393)*(x4403)*(x4412)))+(((IkReal(-1.00000000000000))*(r11)*(x4391)*(x4403)))+(((cj4)*(r00)*(x4396)))+(((IkReal(-1.00000000000000))*(x4390)*(x4393)*(x4409)))+(((IkReal(-1.00000000000000))*(r01)*(x4390)*(x4391)))+(((IkReal(-1.00000000000000))*(x4395)*(x4416)))+(((IkReal(-1.00000000000000))*(r02)*(x4390)*(x4395)))+(((IkReal(-1.00000000000000))*(x4392)*(x4393)*(x4413)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x4411)*(x4414)))+(((IkReal(-1.00000000000000))*(r00)*(x4392)*(x4397)))+(((IkReal(-1.00000000000000))*(x4399)*(x4400)))+(((r11)*(x4396)*(x4397)))+(((IkReal(-1.00000000000000))*(sj0)*(x4397)*(x4409)))+(((IkReal(-1.00000000000000))*(py)*(x4390)))+(((r10)*(x4397)*(x4404)))+(((x4406)*(x4407)))+(((cj0)*(r12)*(x4411)))+(((IkReal(-1.00000000000000))*(r11)*(x4394)*(x4396)))+(((IkReal(-1.00000000000000))*(r10)*(x4394)*(x4404)))+(((px)*(sj0)))+(((r00)*(x4392)*(x4394)))+(((sj0)*(x4394)*(x4409)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4390)*(x4391)))+(((IkReal(-1.00000000000000))*(x4398)*(x4416)))+(((r01)*(sj4)*(x4404)))+(((IkReal(-1.00000000000000))*(r02)*(x4390)*(x4398)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x4390)*(x4405)))+(((IkReal(-1.00000000000000))*(r00)*(x4390)*(x4415)))+(((IkReal(-1.00000000000000))*(r10)*(x4403)*(x4415)))+(((IkReal(-1.00000000000000))*(r11)*(x4399)*(x4405)))+(((r11)*(sj4)*(x4392)))+(((IkReal(-1.00000000000000))*(x4391)*(x4399)*(x4413)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x4390)))+(((r01)*(x4396)*(x4397)))+(((r12)*(sj0)*(x4411)))+(((x4399)*(x4406)))+(((IkReal(-1.00000000000000))*(r01)*(x4394)*(x4396)))+(((IkReal(-1.00000000000000))*(r00)*(x4394)*(x4404)))+(((IkReal(-1.00000000000000))*(sj0)*(x4394)*(x4412)))+(((IkReal(-1.00000000000000))*(r10)*(x4392)*(x4394)))+(((cj0)*(r02)*(x4411)))+(((r10)*(x4392)*(x4397)))+(((IkReal(-1.00000000000000))*(py)*(x4403)))+(((r00)*(x4397)*(x4404)))+(((sj0)*(x4397)*(x4412)))+(((x4400)*(x4407)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4417=((r20)*(sj6)); +IkReal x4418=((cj4)*(cj5)); +IkReal x4419=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x4417)*(x4418)))+(((x4418)*(x4419))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x4419)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4417))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x4417)*(x4418)))+(((x4418)*(x4419)))))+IKsqr(((((sj5)*(x4419)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4417)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x4417)*(x4418)))+(((x4418)*(x4419)))), ((((sj5)*(x4419)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4417))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4420=IKcos(j3); +IkReal x4421=((sj0)*(sj5)); +IkReal x4422=((r00)*(sj6)); +IkReal x4423=((cj6)*(r01)); +IkReal x4424=((cj5)*(sj0)); +IkReal x4425=((cj0)*(cj5)); +IkReal x4426=((cj6)*(sj4)); +IkReal x4427=((sj4)*(sj6)); +IkReal x4428=((cj0)*(r11)); +IkReal x4429=((cj4)*(cj6)); +IkReal x4430=((cj4)*(sj6)); +IkReal x4431=((IkReal(1.00000000000000))*(cj0)); +IkReal x4432=((cj4)*(sj5)); +IkReal x4433=((sj5)*(sj6)); +IkReal x4434=((cj6)*(sj5)); +IkReal x4435=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r21)*(x4434)))+(((r20)*(x4433)))+(((IkReal(-1.00000000000000))*(x4420)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x4427)))+(((r20)*(x4426)))+(((r22)*(x4432)))+(((cj5)*(r20)*(x4430)))+(((IkReal(-1.00000000000000))*(x4435)))+(((cj5)*(r21)*(x4429)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x4424)))+(((r12)*(x4425)))+(((IkReal(-1.00000000000000))*(x4428)*(x4434)))+(((x4421)*(x4422)))+(((x4421)*(x4423)))+(((IkReal(-1.00000000000000))*(r10)*(x4431)*(x4433)))+(((IkReal(-1.00000000000000))*(x4435)))); +evalcond[3]=((((cj4)*(r02)*(x4421)))+(((cj4)*(x4423)*(x4424)))+(((IkReal(-1.00000000000000))*(r11)*(x4425)*(x4429)))+(((IkReal(-1.00000000000000))*(r12)*(x4431)*(x4432)))+(x4420)+(((x4427)*(x4428)))+(((cj4)*(x4422)*(x4424)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x4427)))+(((IkReal(-1.00000000000000))*(r10)*(x4425)*(x4430)))+(((r00)*(sj0)*(x4426)))+(((IkReal(-1.00000000000000))*(r10)*(x4426)*(x4431)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4436=((IkReal(1.00000000000000))*(cj0)); +IkReal x4437=((cj4)*(sj6)); +IkReal x4438=((sj0)*(sj6)); +IkReal x4439=((cj5)*(sj4)); +IkReal x4440=((IkReal(0.374290000000000))*(sj5)); +IkReal x4441=((sj4)*(sj5)); +IkReal x4442=((cj0)*(cj6)); +IkReal x4443=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4444=((cj4)*(sj5)); +IkReal x4445=((cj5)*(sj0)); +IkReal x4446=((IkReal(0.374290000000000))*(r02)); +IkReal x4447=((r20)*(sj6)); +IkReal x4448=((cj6)*(r21)); +IkReal x4449=((IkReal(1.00000000000000))*(sj0)); +IkReal x4450=((cj0)*(sj6)); +IkReal x4451=((cj4)*(cj6)); +IkReal x4452=((IkReal(0.374290000000000))*(r12)); +IkReal x4453=((cj0)*(cj5)); +IkReal x4454=((cj6)*(sj5)); +IkReal x4455=((cj6)*(r01)); +IkReal x4456=((r00)*(sj6)); +IkReal x4457=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4458=((cj6)*(r11)); +IkReal x4459=((IkReal(1.00000000000000))*(r10)); +IkReal x4460=((r02)*(sj0)); +IkReal x4461=((cj6)*(sj4)); +IkReal x4462=((r12)*(x4449)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x4437)))+(((x4439)*(x4448)))+(((x4439)*(x4447)))+(((r22)*(x4441)))+(((IkReal(-1.00000000000000))*(r20)*(x4451)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x4443)*(x4447)))+(((x4440)*(x4447)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x4443)*(x4448)))+(((IkReal(-1.00000000000000))*(r22)*(x4457)))+(pz)+(((x4440)*(x4448)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x4436)*(x4456)))+(((IkReal(-1.00000000000000))*(r11)*(x4449)*(x4454)))+(((r12)*(x4445)))+(((IkReal(-1.00000000000000))*(r01)*(x4436)*(x4454)))+(((r02)*(x4453)))+(((IkReal(-1.00000000000000))*(sj5)*(x4438)*(x4459)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(sj6)*(x4436)*(x4439)))+(((IkReal(-1.00000000000000))*(r11)*(x4436)*(x4437)))+(((IkReal(-1.00000000000000))*(r00)*(x4449)*(x4451)))+(((IkReal(-1.00000000000000))*(x4436)*(x4439)*(x4458)))+(((sj0)*(x4439)*(x4455)))+(((IkReal(-1.00000000000000))*(r12)*(x4436)*(x4441)))+(((r01)*(sj0)*(x4437)))+(((x4441)*(x4460)))+(((cj4)*(r10)*(x4442)))+(((r00)*(x4438)*(x4439)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((r10)*(sj0)*(x4451)))+(((cj4)*(r00)*(x4442)))+(((IkReal(-1.00000000000000))*(x4439)*(x4449)*(x4458)))+(((IkReal(-1.00000000000000))*(r02)*(x4436)*(x4441)))+(((IkReal(-1.00000000000000))*(x4441)*(x4462)))+(((IkReal(-1.00000000000000))*(x4436)*(x4439)*(x4455)))+(((IkReal(-1.00000000000000))*(x4436)*(x4439)*(x4456)))+(((IkReal(-1.00000000000000))*(r11)*(x4437)*(x4449)))+(((IkReal(-1.00000000000000))*(x4438)*(x4439)*(x4459)))+(((IkReal(-1.00000000000000))*(r01)*(x4436)*(x4437)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r10)*(x4443)*(x4450)))+(((IkReal(-1.00000000000000))*(r11)*(x4440)*(x4442)))+(((x4452)*(x4453)))+(((cj0)*(r12)*(x4457)))+(((r00)*(x4438)*(x4440)))+(((IkReal(-1.00000000000000))*(x4445)*(x4446)))+(((r11)*(x4442)*(x4443)))+(((IkReal(-1.00000000000000))*(sj0)*(x4443)*(x4455)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x4436)))+(((IkReal(-1.00000000000000))*(r00)*(x4438)*(x4443)))+(((IkReal(-1.00000000000000))*(x4457)*(x4460)))+(((IkReal(-1.00000000000000))*(r10)*(x4440)*(x4450)))+(((sj0)*(x4440)*(x4455)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x4437)*(x4445)*(x4459)))+(((r11)*(sj4)*(x4438)))+(((IkReal(-1.00000000000000))*(r11)*(x4445)*(x4451)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x4436)*(x4437)))+(((IkReal(-1.00000000000000))*(x4444)*(x4462)))+(((r01)*(sj4)*(x4450)))+(((IkReal(-1.00000000000000))*(r00)*(x4436)*(x4461)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x4436)*(x4451)))+(((IkReal(-1.00000000000000))*(r02)*(x4436)*(x4444)))+(((IkReal(-1.00000000000000))*(r10)*(x4449)*(x4461)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x4440)*(x4450)))+(((r01)*(x4442)*(x4443)))+(((r10)*(x4438)*(x4443)))+(((x4445)*(x4452)))+(((r12)*(sj0)*(x4457)))+(((IkReal(-1.00000000000000))*(px)*(x4436)))+(((IkReal(-1.00000000000000))*(py)*(x4449)))+(((cj0)*(r02)*(x4457)))+(((IkReal(-1.00000000000000))*(r01)*(x4440)*(x4442)))+(((IkReal(-1.00000000000000))*(r10)*(x4438)*(x4440)))+(((r00)*(x4443)*(x4450)))+(((sj0)*(x4443)*(x4458)))+(((x4446)*(x4453)))+(((IkReal(-1.00000000000000))*(sj0)*(x4440)*(x4458)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4463=((IkReal(1.00000000000000))*(sj5)); +IkReal x4464=((cj6)*(r21)); +IkReal x4465=((r20)*(sj6)); +IkReal x4466=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x4464)*(x4466)))+(((IkReal(-1.00000000000000))*(x4465)*(x4466)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x4463)*(x4465)))+(((IkReal(-1.00000000000000))*(x4463)*(x4464)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x4464)*(x4466)))+(((IkReal(-1.00000000000000))*(x4465)*(x4466)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x4463)*(x4465)))+(((IkReal(-1.00000000000000))*(x4463)*(x4464)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x4464)*(x4466)))+(((IkReal(-1.00000000000000))*(x4465)*(x4466)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x4463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x4463)*(x4465)))+(((IkReal(-1.00000000000000))*(x4463)*(x4464)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4467=IKsin(j3); +IkReal x4468=IKcos(j3); +IkReal x4469=((sj0)*(sj5)); +IkReal x4470=((r00)*(sj6)); +IkReal x4471=((cj6)*(r01)); +IkReal x4472=((cj5)*(sj0)); +IkReal x4473=((cj0)*(cj5)); +IkReal x4474=((cj6)*(sj4)); +IkReal x4475=((sj4)*(sj6)); +IkReal x4476=((cj0)*(r11)); +IkReal x4477=((cj4)*(cj6)); +IkReal x4478=((cj4)*(sj6)); +IkReal x4479=((IkReal(1.00000000000000))*(cj0)); +IkReal x4480=((cj4)*(sj5)); +IkReal x4481=((sj5)*(sj6)); +IkReal x4482=((cj6)*(sj5)); +evalcond[0]=((x4468)+(((r21)*(x4482)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x4481)))); +evalcond[1]=((x4467)+(((r22)*(x4480)))+(((cj5)*(r20)*(x4478)))+(((cj5)*(r21)*(x4477)))+(((IkReal(-1.00000000000000))*(r21)*(x4475)))+(((r20)*(x4474)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x4479)*(x4481)))+(((r12)*(x4473)))+(((x4469)*(x4471)))+(((IkReal(-1.00000000000000))*(x4476)*(x4482)))+(((x4469)*(x4470)))+(((IkReal(-1.00000000000000))*(r02)*(x4472)))+(((IkReal(-1.00000000000000))*(x4467)))); +evalcond[3]=((x4468)+(((r00)*(sj0)*(x4474)))+(((IkReal(-1.00000000000000))*(r10)*(x4474)*(x4479)))+(((cj4)*(x4471)*(x4472)))+(((cj4)*(r02)*(x4469)))+(((x4475)*(x4476)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x4475)))+(((IkReal(-1.00000000000000))*(r11)*(x4473)*(x4477)))+(((IkReal(-1.00000000000000))*(r10)*(x4473)*(x4478)))+(((IkReal(-1.00000000000000))*(r12)*(x4479)*(x4480)))+(((cj4)*(x4470)*(x4472)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4483=((IkReal(1.00000000000000))*(cj0)); +IkReal x4484=((cj4)*(sj6)); +IkReal x4485=((sj0)*(sj4)); +IkReal x4486=((cj5)*(sj6)); +IkReal x4487=((sj4)*(sj5)); +IkReal x4488=((r12)*(sj5)); +IkReal x4489=((IkReal(0.374290000000000))*(cj5)); +IkReal x4490=((r02)*(sj0)); +IkReal x4491=((r20)*(sj4)); +IkReal x4492=((IkReal(1.00000000000000))*(sj0)); +IkReal x4493=((IkReal(1.00000000000000))*(cj5)); +IkReal x4494=((cj0)*(r10)); +IkReal x4495=((cj4)*(cj6)); +IkReal x4496=((r00)*(sj0)); +IkReal x4497=((cj6)*(r21)); +IkReal x4498=((IkReal(0.374290000000000))*(sj5)); +IkReal x4499=((cj0)*(r00)); +IkReal x4500=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4501=((cj0)*(r02)); +IkReal x4502=((cj5)*(sj4)); +IkReal x4503=((cj6)*(r01)); +IkReal x4504=((cj6)*(r11)); +IkReal x4505=((r01)*(sj0)); +IkReal x4506=((r10)*(sj0)); +IkReal x4507=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x4508=((sj6)*(x4498)); +IkReal x4509=((cj0)*(cj6)*(x4498)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x4497)))+(((IkReal(-1.00000000000000))*(r22)*(x4493)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x4495)))+(((x4486)*(x4491)))+(((r22)*(x4487)))+(((r21)*(x4484)))+(((x4497)*(x4502)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x4489)))+(((IkReal(-1.00000000000000))*(r22)*(x4500)))+(((IkReal(-0.0100000000000000))*(cj5)*(x4497)))+(((IkReal(-0.0100000000000000))*(r20)*(x4486)))+(pz)+(((r20)*(x4508)))+(((x4497)*(x4498)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x4491)))+(((cj5)*(r20)*(x4484)))+(((cj5)*(r21)*(x4495)))); +evalcond[5]=((((x4494)*(x4495)))+(((x4484)*(x4505)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x4483)*(x4486)))+(((r02)*(sj5)*(x4485)))+(((r00)*(x4485)*(x4486)))+(((IkReal(-1.00000000000000))*(r12)*(x4483)*(x4487)))+(((IkReal(-1.00000000000000))*(r00)*(x4492)*(x4495)))+(((IkReal(-1.00000000000000))*(r11)*(x4483)*(x4484)))+(((IkReal(-1.00000000000000))*(x4483)*(x4502)*(x4504)))+(((cj5)*(x4485)*(x4503)))); +evalcond[6]=((((x4495)*(x4506)))+(((x4495)*(x4499)))+(((IkReal(-1.00000000000000))*(x4483)*(x4502)*(x4503)))+(((IkReal(-1.00000000000000))*(r11)*(x4484)*(x4492)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x4483)*(x4486)))+(((IkReal(-1.00000000000000))*(r02)*(x4483)*(x4487)))+(((IkReal(-1.00000000000000))*(x4485)*(x4493)*(x4504)))+(((IkReal(-1.00000000000000))*(r10)*(x4485)*(x4486)))+(((IkReal(-1.00000000000000))*(x4485)*(x4488)))+(((IkReal(-1.00000000000000))*(r01)*(x4483)*(x4484)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-0.0100000000000000))*(x4486)*(x4496)))+(((IkReal(-1.00000000000000))*(x4490)*(x4500)))+(((IkReal(-1.00000000000000))*(py)*(x4483)))+(((IkReal(-1.00000000000000))*(cj0)*(x4498)*(x4504)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x4503)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4504)))+(((sj0)*(x4498)*(x4503)))+(((x4496)*(x4508)))+(((IkReal(0.0100000000000000))*(cj0)*(x4488)))+(((IkReal(0.0100000000000000))*(x4486)*(x4494)))+(((cj0)*(r12)*(x4489)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x4489)*(x4490)))+(((IkReal(-1.00000000000000))*(x4494)*(x4508)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4503)))+(((x4500)*(x4501)))+(((x4489)*(x4501)))+(((r12)*(sj0)*(x4489)))+(((IkReal(0.0100000000000000))*(sj0)*(x4488)))+(((IkReal(-1.00000000000000))*(sj0)*(x4498)*(x4504)))+(((IkReal(-1.00000000000000))*(py)*(x4492)))+(((IkReal(-1.00000000000000))*(x4506)*(x4508)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x4504)))+(((IkReal(0.0100000000000000))*(x4486)*(x4506)))+(((IkReal(-1.00000000000000))*(x4499)*(x4508)))+(((IkReal(0.0100000000000000))*(x4486)*(x4499)))+(((IkReal(-1.00000000000000))*(px)*(x4483)))+(((IkReal(-1.00000000000000))*(cj0)*(x4498)*(x4503)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4510=((cj0)*(cj5)); +IkReal x4511=((IkReal(1.00000000000000))*(cj0)); +IkReal x4512=((cj6)*(r11)); +IkReal x4513=((r10)*(sj6)); +IkReal x4514=((cj5)*(sj0)); +IkReal x4515=((r00)*(sj5)*(sj6)); +IkReal x4516=((cj6)*(r01)*(sj5)); +IkReal x4517=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4512)))+(((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4513)))+(((r12)*(x4510)))+(((IkReal(-1.00000000000000))*(r02)*(x4514)))+(((sj0)*(x4515)))+(((sj0)*(x4516))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r02)*(x4510)))+(((r12)*(x4514)))+(((IkReal(-1.00000000000000))*(x4513)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4516)))+(((IkReal(-1.00000000000000))*(x4512)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4515))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4512)))+(((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4513)))+(((r12)*(x4510)))+(((IkReal(-1.00000000000000))*(r02)*(x4514)))+(((sj0)*(x4515)))+(((sj0)*(x4516)))))+IKsqr(((((r02)*(x4510)))+(((r12)*(x4514)))+(((IkReal(-1.00000000000000))*(x4513)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4516)))+(((IkReal(-1.00000000000000))*(x4512)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4515)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4512)))+(((IkReal(-1.00000000000000))*(sj5)*(x4511)*(x4513)))+(((r12)*(x4510)))+(((IkReal(-1.00000000000000))*(r02)*(x4514)))+(((sj0)*(x4515)))+(((sj0)*(x4516)))), ((((r02)*(x4510)))+(((r12)*(x4514)))+(((IkReal(-1.00000000000000))*(x4513)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4516)))+(((IkReal(-1.00000000000000))*(x4512)*(x4517)))+(((IkReal(-1.00000000000000))*(x4511)*(x4515))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4518=IKcos(j3); +IkReal x4519=((sj0)*(sj5)); +IkReal x4520=((r00)*(sj6)); +IkReal x4521=((cj6)*(sj0)); +IkReal x4522=((IkReal(1.00000000000000))*(cj4)); +IkReal x4523=((r00)*(sj4)); +IkReal x4524=((cj0)*(cj5)); +IkReal x4525=((cj5)*(sj0)); +IkReal x4526=((cj6)*(r11)); +IkReal x4527=((r10)*(sj6)); +IkReal x4528=((cj0)*(sj5)); +IkReal x4529=((r10)*(sj4)); +IkReal x4530=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x4531=((cj4)*(cj5)*(r01)); +IkReal x4532=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x4533=((cj0)*(sj4)*(sj6)); +IkReal x4534=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((x4519)*(x4520)))+(((IkReal(-1.00000000000000))*(x4526)*(x4528)))+(((r12)*(x4524)))+(((IkReal(-1.00000000000000))*(r02)*(x4525)))+(((cj6)*(r01)*(x4519)))+(((IkReal(-1.00000000000000))*(x4530)))+(((IkReal(-1.00000000000000))*(x4527)*(x4528)))); +evalcond[1]=((((r02)*(x4524)))+(((IkReal(-1.00000000000000))*(x4518)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4528)))+(((IkReal(-1.00000000000000))*(x4519)*(x4526)))+(((IkReal(-1.00000000000000))*(x4520)*(x4528)))+(((r12)*(x4525)))+(((IkReal(-1.00000000000000))*(x4519)*(x4527)))); +evalcond[2]=((x4518)+(((x4521)*(x4523)))+(((IkReal(-1.00000000000000))*(x4522)*(x4524)*(x4527)))+(((IkReal(-1.00000000000000))*(r12)*(x4522)*(x4528)))+(((IkReal(-1.00000000000000))*(x4522)*(x4524)*(x4526)))+(((IkReal(-1.00000000000000))*(r01)*(x4534)))+(((IkReal(-1.00000000000000))*(x4529)*(x4532)))+(((cj4)*(r02)*(x4519)))+(((r11)*(x4533)))+(((x4521)*(x4531)))+(((cj4)*(x4520)*(x4525)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4522)*(x4524)))+(((IkReal(-1.00000000000000))*(x4521)*(x4529)))+(((IkReal(-1.00000000000000))*(x4522)*(x4525)*(x4527)))+(((IkReal(-1.00000000000000))*(x4520)*(x4522)*(x4524)))+(((IkReal(-1.00000000000000))*(x4523)*(x4532)))+(((r11)*(x4534)))+(((r01)*(x4533)))+(((IkReal(-1.00000000000000))*(r12)*(x4519)*(x4522)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x4521)*(x4522)))+(((IkReal(-1.00000000000000))*(x4530)))+(((IkReal(-1.00000000000000))*(r02)*(x4522)*(x4528)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x4535=((IkReal(1.00000000000000))*(cj0)); +IkReal x4536=((cj4)*(sj6)); +IkReal x4537=((sj0)*(sj4)); +IkReal x4538=((cj5)*(sj6)); +IkReal x4539=((sj4)*(sj5)); +IkReal x4540=((r12)*(sj5)); +IkReal x4541=((IkReal(0.374290000000000))*(cj5)); +IkReal x4542=((r02)*(sj0)); +IkReal x4543=((r20)*(sj4)); +IkReal x4544=((IkReal(1.00000000000000))*(sj0)); +IkReal x4545=((IkReal(1.00000000000000))*(cj5)); +IkReal x4546=((cj0)*(r10)); +IkReal x4547=((cj4)*(cj6)); +IkReal x4548=((r00)*(sj0)); +IkReal x4549=((cj6)*(r21)); +IkReal x4550=((IkReal(0.374290000000000))*(sj5)); +IkReal x4551=((cj0)*(r00)); +IkReal x4552=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4553=((cj0)*(r02)); +IkReal x4554=((cj5)*(sj4)); +IkReal x4555=((cj6)*(r01)); +IkReal x4556=((cj6)*(r11)); +IkReal x4557=((r01)*(sj0)); +IkReal x4558=((r10)*(sj0)); +IkReal x4559=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x4560=((sj6)*(x4550)); +IkReal x4561=((cj0)*(cj6)*(x4550)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x4545)))+(((sj5)*(x4549)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x4547)))+(((r21)*(x4536)))+(((x4538)*(x4543)))+(((r22)*(x4539)))+(((x4549)*(x4554)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x4541)))+(((IkReal(-0.0100000000000000))*(r20)*(x4538)))+(((x4549)*(x4550)))+(pz)+(((r20)*(x4560)))+(((IkReal(-1.00000000000000))*(r22)*(x4552)))+(((IkReal(-0.0100000000000000))*(cj5)*(x4549)))); +evalcond[4]=((((cj5)*(r21)*(x4547)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x4536)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x4543)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x4535)*(x4538)))+(((cj5)*(x4537)*(x4555)))+(((IkReal(-1.00000000000000))*(r12)*(x4535)*(x4539)))+(((IkReal(-1.00000000000000))*(x4535)*(x4554)*(x4556)))+(((r00)*(x4537)*(x4538)))+(((r02)*(sj5)*(x4537)))+(((IkReal(-1.00000000000000))*(r00)*(x4544)*(x4547)))+(((IkReal(-1.00000000000000))*(r11)*(x4535)*(x4536)))+(((x4536)*(x4557)))+(((x4546)*(x4547)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r10)*(x4537)*(x4538)))+(((IkReal(-1.00000000000000))*(x4537)*(x4545)*(x4556)))+(((x4547)*(x4558)))+(((x4547)*(x4551)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x4535)*(x4538)))+(((IkReal(-1.00000000000000))*(x4537)*(x4540)))+(((IkReal(-1.00000000000000))*(r01)*(x4535)*(x4536)))+(((IkReal(-1.00000000000000))*(r02)*(x4535)*(x4539)))+(((IkReal(-1.00000000000000))*(r11)*(x4536)*(x4544)))+(((IkReal(-1.00000000000000))*(x4535)*(x4554)*(x4555)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x4550)*(x4556)))+(((IkReal(0.0100000000000000))*(cj0)*(x4540)))+(((IkReal(-1.00000000000000))*(py)*(x4535)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x4555)))+(((IkReal(-1.00000000000000))*(x4546)*(x4560)))+(((IkReal(-0.0100000000000000))*(x4538)*(x4548)))+(((x4548)*(x4560)))+(((IkReal(-1.00000000000000))*(x4542)*(x4552)))+(((IkReal(0.0100000000000000))*(x4538)*(x4546)))+(((cj0)*(r12)*(x4541)))+(((px)*(sj0)))+(((sj0)*(x4550)*(x4555)))+(((IkReal(-1.00000000000000))*(x4541)*(x4542)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4556)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x4552)*(x4553)))+(((IkReal(-1.00000000000000))*(x4558)*(x4560)))+(((IkReal(-1.00000000000000))*(py)*(x4544)))+(((x4541)*(x4553)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x4555)))+(((IkReal(-1.00000000000000))*(px)*(x4535)))+(((IkReal(-1.00000000000000))*(sj0)*(x4550)*(x4556)))+(((IkReal(-1.00000000000000))*(cj0)*(x4550)*(x4555)))+(((r12)*(sj0)*(x4541)))+(((IkReal(0.0100000000000000))*(x4538)*(x4551)))+(((IkReal(-1.00000000000000))*(x4551)*(x4560)))+(((IkReal(0.0100000000000000))*(sj0)*(x4540)))+(((IkReal(0.0100000000000000))*(x4538)*(x4558)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x4556)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4562=((sj0)*(sj5)); +IkReal x4563=((r00)*(sj6)); +IkReal x4564=((IkReal(1.00000000000000))*(cj5)); +IkReal x4565=((cj6)*(r11)); +IkReal x4566=((cj6)*(r01)); +IkReal x4567=((r10)*(sj6)); +IkReal x4568=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x4565)*(x4568)))+(((x4562)*(x4563)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4564)))+(((IkReal(-1.00000000000000))*(x4567)*(x4568)))+(((cj0)*(cj5)*(r12)))+(((x4562)*(x4566))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x4563)*(x4568)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4564)))+(((x4562)*(x4567)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4564)))+(((x4562)*(x4565)))+(((x4566)*(x4568))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x4565)*(x4568)))+(((x4562)*(x4563)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4564)))+(((IkReal(-1.00000000000000))*(x4567)*(x4568)))+(((cj0)*(cj5)*(r12)))+(((x4562)*(x4566)))))+IKsqr(((((x4563)*(x4568)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4564)))+(((x4562)*(x4567)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4564)))+(((x4562)*(x4565)))+(((x4566)*(x4568)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x4565)*(x4568)))+(((x4562)*(x4563)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4564)))+(((IkReal(-1.00000000000000))*(x4567)*(x4568)))+(((cj0)*(cj5)*(r12)))+(((x4562)*(x4566)))), ((((x4563)*(x4568)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4564)))+(((x4562)*(x4567)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4564)))+(((x4562)*(x4565)))+(((x4566)*(x4568))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x4569=IKcos(j3); +IkReal x4570=IKsin(j3); +IkReal x4571=((sj0)*(sj5)); +IkReal x4572=((r00)*(sj6)); +IkReal x4573=((cj6)*(sj0)); +IkReal x4574=((IkReal(1.00000000000000))*(cj4)); +IkReal x4575=((r00)*(sj4)); +IkReal x4576=((cj0)*(cj5)); +IkReal x4577=((cj5)*(sj0)); +IkReal x4578=((cj6)*(r11)); +IkReal x4579=((r10)*(sj6)); +IkReal x4580=((cj0)*(sj5)); +IkReal x4581=((r10)*(sj4)); +IkReal x4582=((cj4)*(cj5)*(r01)); +IkReal x4583=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x4584=((cj0)*(sj4)*(sj6)); +IkReal x4585=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((r12)*(x4576)))+(((cj6)*(r01)*(x4571)))+(((IkReal(-1.00000000000000))*(x4579)*(x4580)))+(((x4571)*(x4572)))+(((IkReal(-1.00000000000000))*(x4578)*(x4580)))+(((IkReal(-1.00000000000000))*(x4570)))+(((IkReal(-1.00000000000000))*(r02)*(x4577)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4571)*(x4579)))+(((IkReal(-1.00000000000000))*(x4571)*(x4578)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4580)))+(((r12)*(x4577)))+(((IkReal(-1.00000000000000))*(x4572)*(x4580)))+(x4569)+(((r02)*(x4576)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x4585)))+(((IkReal(-1.00000000000000))*(x4574)*(x4576)*(x4579)))+(((IkReal(-1.00000000000000))*(x4574)*(x4576)*(x4578)))+(((cj4)*(x4572)*(x4577)))+(((r11)*(x4584)))+(((IkReal(-1.00000000000000))*(x4581)*(x4583)))+(((cj4)*(r02)*(x4571)))+(x4569)+(((x4573)*(x4575)))+(((x4573)*(x4582)))+(((IkReal(-1.00000000000000))*(r12)*(x4574)*(x4580)))); +evalcond[3]=((x4570)+(((IkReal(-1.00000000000000))*(x4574)*(x4577)*(x4579)))+(((IkReal(-1.00000000000000))*(r02)*(x4574)*(x4580)))+(((r11)*(x4585)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x4574)*(x4576)))+(((IkReal(-1.00000000000000))*(x4573)*(x4581)))+(((IkReal(-1.00000000000000))*(x4575)*(x4583)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x4573)*(x4574)))+(((r01)*(x4584)))+(((IkReal(-1.00000000000000))*(r12)*(x4571)*(x4574)))+(((IkReal(-1.00000000000000))*(x4572)*(x4574)*(x4576)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4586=((cj0)*(cj5)); +IkReal x4587=((IkReal(1.00000000000000))*(cj0)); +IkReal x4588=((cj6)*(r11)); +IkReal x4589=((r10)*(sj6)); +IkReal x4590=((cj5)*(sj0)); +IkReal x4591=((r00)*(sj5)*(sj6)); +IkReal x4592=((cj6)*(r01)*(sj5)); +IkReal x4593=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x4592)))+(((sj0)*(x4591)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4588)))+(((IkReal(-1.00000000000000))*(r02)*(x4590)))+(((r12)*(x4586)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4589))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x4587)*(x4592)))+(((IkReal(-1.00000000000000))*(x4588)*(x4593)))+(((IkReal(-1.00000000000000))*(x4589)*(x4593)))+(((IkReal(-1.00000000000000))*(x4587)*(x4591)))+(((r12)*(x4590)))+(((r02)*(x4586))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x4592)))+(((sj0)*(x4591)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4588)))+(((IkReal(-1.00000000000000))*(r02)*(x4590)))+(((r12)*(x4586)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4589)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x4587)*(x4592)))+(((IkReal(-1.00000000000000))*(x4588)*(x4593)))+(((IkReal(-1.00000000000000))*(x4589)*(x4593)))+(((IkReal(-1.00000000000000))*(x4587)*(x4591)))+(((r12)*(x4590)))+(((r02)*(x4586)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x4592)))+(((sj0)*(x4591)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4588)))+(((IkReal(-1.00000000000000))*(r02)*(x4590)))+(((r12)*(x4586)))+(((IkReal(-1.00000000000000))*(sj5)*(x4587)*(x4589)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x4587)*(x4592)))+(((IkReal(-1.00000000000000))*(x4588)*(x4593)))+(((IkReal(-1.00000000000000))*(x4589)*(x4593)))+(((IkReal(-1.00000000000000))*(x4587)*(x4591)))+(((r12)*(x4590)))+(((r02)*(x4586))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4594=IKsin(j3); +IkReal x4595=IKcos(j3); +IkReal x4596=((sj0)*(sj5)); +IkReal x4597=((r00)*(sj6)); +IkReal x4598=((cj6)*(r01)); +IkReal x4599=((cj4)*(cj5)); +IkReal x4600=((IkReal(1.00000000000000))*(cj0)); +IkReal x4601=((cj5)*(r12)); +IkReal x4602=((IkReal(1.00000000000000))*(sj0)); +IkReal x4603=((cj6)*(r11)); +IkReal x4604=((cj5)*(r02)); +IkReal x4605=((IkReal(1.00000000000000))*(cj1)); +IkReal x4606=((cj6)*(sj4)); +IkReal x4607=((cj6)*(r21)); +IkReal x4608=((r20)*(sj6)); +IkReal x4609=((r10)*(sj6)); +IkReal x4610=((sj4)*(sj6)); +IkReal x4611=((cj4)*(r02)); +IkReal x4612=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4613=((IkReal(1.00000000000000))*(x4594)); +IkReal x4614=((cj0)*(x4610)); +evalcond[0]=((((sj5)*(x4608)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x4595)))+(((sj5)*(x4607)))); +evalcond[1]=((((r20)*(x4606)))+(((cj4)*(r22)*(sj5)))+(((x4599)*(x4607)))+(((IkReal(-1.00000000000000))*(sj1)*(x4613)))+(((IkReal(-1.00000000000000))*(r21)*(x4610)))+(((x4599)*(x4608)))); +evalcond[2]=((((cj0)*(x4601)))+(((IkReal(-1.00000000000000))*(sj5)*(x4600)*(x4609)))+(((IkReal(-1.00000000000000))*(x4613)))+(((IkReal(-1.00000000000000))*(sj5)*(x4600)*(x4603)))+(((x4596)*(x4597)))+(((x4596)*(x4598)))+(((IkReal(-1.00000000000000))*(x4602)*(x4604)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x4598)*(x4600)))+(((IkReal(-1.00000000000000))*(x4595)*(x4605)))+(((sj0)*(x4601)))+(((IkReal(-1.00000000000000))*(x4596)*(x4603)))+(((cj0)*(x4604)))+(((IkReal(-1.00000000000000))*(sj5)*(x4597)*(x4600)))+(((IkReal(-1.00000000000000))*(x4596)*(x4609)))); +evalcond[4]=((x4595)+(((r11)*(x4614)))+(((sj0)*(x4598)*(x4599)))+(((sj0)*(x4597)*(x4599)))+(((IkReal(-1.00000000000000))*(x4599)*(x4600)*(x4609)))+(((x4596)*(x4611)))+(((IkReal(-1.00000000000000))*(r01)*(x4602)*(x4610)))+(((IkReal(-1.00000000000000))*(x4599)*(x4600)*(x4603)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4600)))+(((IkReal(-1.00000000000000))*(r10)*(x4600)*(x4606)))+(((r00)*(sj0)*(x4606)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x4594)*(x4605)))+(((IkReal(-1.00000000000000))*(x4599)*(x4602)*(x4603)))+(((IkReal(-1.00000000000000))*(r00)*(x4600)*(x4606)))+(((r01)*(x4614)))+(((IkReal(-1.00000000000000))*(x4597)*(x4599)*(x4600)))+(((IkReal(-1.00000000000000))*(x4599)*(x4602)*(x4609)))+(((IkReal(-1.00000000000000))*(x4598)*(x4599)*(x4600)))+(((IkReal(-1.00000000000000))*(sj5)*(x4600)*(x4611)))+(((r11)*(sj0)*(x4610)))+(((IkReal(-1.00000000000000))*(r10)*(x4602)*(x4606)))+(((IkReal(-1.00000000000000))*(x4596)*(x4612)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4615=((sj5)*(sj6)); +IkReal x4616=((cj6)*(sj5)); +IkReal x4617=((IkReal(1.00000000000000))*(cj0)); +IkReal x4618=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r01)*(sj0)*(x4616)))+(((r00)*(sj0)*(x4615)))+(((IkReal(-1.00000000000000))*(r10)*(x4615)*(x4617)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4618)))+(((IkReal(-1.00000000000000))*(r11)*(x4616)*(x4617))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x4618)))+(((r20)*(x4615)))+(((r21)*(x4616))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r01)*(sj0)*(x4616)))+(((r00)*(sj0)*(x4615)))+(((IkReal(-1.00000000000000))*(r10)*(x4615)*(x4617)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4618)))+(((IkReal(-1.00000000000000))*(r11)*(x4616)*(x4617)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x4618)))+(((r20)*(x4615)))+(((r21)*(x4616)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r01)*(sj0)*(x4616)))+(((r00)*(sj0)*(x4615)))+(((IkReal(-1.00000000000000))*(r10)*(x4615)*(x4617)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4618)))+(((IkReal(-1.00000000000000))*(r11)*(x4616)*(x4617)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x4618)))+(((r20)*(x4615)))+(((r21)*(x4616))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4619=IKsin(j3); +IkReal x4620=IKcos(j3); +IkReal x4621=((sj0)*(sj5)); +IkReal x4622=((r00)*(sj6)); +IkReal x4623=((cj6)*(r01)); +IkReal x4624=((cj4)*(cj5)); +IkReal x4625=((IkReal(1.00000000000000))*(cj0)); +IkReal x4626=((cj5)*(r12)); +IkReal x4627=((IkReal(1.00000000000000))*(sj0)); +IkReal x4628=((cj6)*(r11)); +IkReal x4629=((cj5)*(r02)); +IkReal x4630=((IkReal(1.00000000000000))*(cj1)); +IkReal x4631=((cj6)*(sj4)); +IkReal x4632=((cj6)*(r21)); +IkReal x4633=((r20)*(sj6)); +IkReal x4634=((r10)*(sj6)); +IkReal x4635=((sj4)*(sj6)); +IkReal x4636=((cj4)*(r02)); +IkReal x4637=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4638=((IkReal(1.00000000000000))*(x4619)); +IkReal x4639=((cj0)*(x4635)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x4620)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4632)))+(((sj5)*(x4633)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x4638)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x4631)))+(((x4624)*(x4633)))+(((x4624)*(x4632)))+(((IkReal(-1.00000000000000))*(r21)*(x4635)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4627)*(x4629)))+(((IkReal(-1.00000000000000))*(x4638)))+(((IkReal(-1.00000000000000))*(sj5)*(x4625)*(x4634)))+(((x4621)*(x4623)))+(((x4621)*(x4622)))+(((cj0)*(x4626)))+(((IkReal(-1.00000000000000))*(sj5)*(x4625)*(x4628)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x4621)*(x4628)))+(((cj0)*(x4629)))+(((IkReal(-1.00000000000000))*(sj5)*(x4622)*(x4625)))+(((IkReal(-1.00000000000000))*(sj5)*(x4623)*(x4625)))+(((IkReal(-1.00000000000000))*(x4620)*(x4630)))+(((IkReal(-1.00000000000000))*(x4621)*(x4634)))+(((sj0)*(x4626)))); +evalcond[4]=((((sj0)*(x4623)*(x4624)))+(((IkReal(-1.00000000000000))*(x4624)*(x4625)*(x4634)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4625)))+(((x4621)*(x4636)))+(((r11)*(x4639)))+(((IkReal(-1.00000000000000))*(r10)*(x4625)*(x4631)))+(((IkReal(-1.00000000000000))*(r01)*(x4627)*(x4635)))+(((r00)*(sj0)*(x4631)))+(((sj0)*(x4622)*(x4624)))+(((IkReal(-1.00000000000000))*(x4624)*(x4625)*(x4628)))+(x4620)); +evalcond[5]=((((IkReal(-1.00000000000000))*(x4624)*(x4627)*(x4628)))+(((IkReal(-1.00000000000000))*(x4624)*(x4627)*(x4634)))+(((IkReal(-1.00000000000000))*(r00)*(x4625)*(x4631)))+(((IkReal(-1.00000000000000))*(r10)*(x4627)*(x4631)))+(((IkReal(-1.00000000000000))*(x4622)*(x4624)*(x4625)))+(((IkReal(-1.00000000000000))*(x4619)*(x4630)))+(((r11)*(sj0)*(x4635)))+(((IkReal(-1.00000000000000))*(x4621)*(x4637)))+(((IkReal(-1.00000000000000))*(sj5)*(x4625)*(x4636)))+(((r01)*(x4639)))+(((IkReal(-1.00000000000000))*(x4623)*(x4624)*(x4625)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4640=((r20)*(sj6)); +IkReal x4641=((cj4)*(cj5)); +IkReal x4642=((cj6)*(r21)); +if( IKabs(((gconst17)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x4641)*(x4642)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x4640)*(x4641))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst17)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4640)))+(((sj5)*(x4642))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst17)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x4641)*(x4642)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x4640)*(x4641)))))), ((gconst17)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4640)))+(((sj5)*(x4642))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x4643=IKsin(j3); +IkReal x4644=IKcos(j3); +IkReal x4645=((sj0)*(sj5)); +IkReal x4646=((r00)*(sj6)); +IkReal x4647=((cj6)*(r01)); +IkReal x4648=((cj4)*(cj5)); +IkReal x4649=((IkReal(1.00000000000000))*(cj0)); +IkReal x4650=((cj5)*(r12)); +IkReal x4651=((IkReal(1.00000000000000))*(sj0)); +IkReal x4652=((cj6)*(r11)); +IkReal x4653=((cj5)*(r02)); +IkReal x4654=((IkReal(1.00000000000000))*(cj1)); +IkReal x4655=((cj6)*(sj4)); +IkReal x4656=((cj6)*(r21)); +IkReal x4657=((r20)*(sj6)); +IkReal x4658=((r10)*(sj6)); +IkReal x4659=((sj4)*(sj6)); +IkReal x4660=((cj4)*(r02)); +IkReal x4661=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x4662=((IkReal(1.00000000000000))*(x4643)); +IkReal x4663=((cj0)*(x4659)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x4656)))+(((sj5)*(x4657)))+(((IkReal(-1.00000000000000))*(sj1)*(x4644)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x4662)))+(((r20)*(x4655)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x4659)))+(((x4648)*(x4657)))+(((x4648)*(x4656)))); +evalcond[2]=((((x4645)*(x4646)))+(((IkReal(-1.00000000000000))*(sj5)*(x4649)*(x4658)))+(((cj0)*(x4650)))+(((x4645)*(x4647)))+(((IkReal(-1.00000000000000))*(x4662)))+(((IkReal(-1.00000000000000))*(sj5)*(x4649)*(x4652)))+(((IkReal(-1.00000000000000))*(x4651)*(x4653)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x4645)*(x4658)))+(((IkReal(-1.00000000000000))*(sj5)*(x4647)*(x4649)))+(((IkReal(-1.00000000000000))*(x4644)*(x4654)))+(((cj0)*(x4653)))+(((sj0)*(x4650)))+(((IkReal(-1.00000000000000))*(x4645)*(x4652)))+(((IkReal(-1.00000000000000))*(sj5)*(x4646)*(x4649)))); +evalcond[4]=((((r11)*(x4663)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x4649)))+(((sj0)*(x4647)*(x4648)))+(((x4645)*(x4660)))+(((sj0)*(x4646)*(x4648)))+(((IkReal(-1.00000000000000))*(r01)*(x4651)*(x4659)))+(((IkReal(-1.00000000000000))*(x4648)*(x4649)*(x4658)))+(((r00)*(sj0)*(x4655)))+(((IkReal(-1.00000000000000))*(x4648)*(x4649)*(x4652)))+(x4644)+(((IkReal(-1.00000000000000))*(r10)*(x4649)*(x4655)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x4649)*(x4660)))+(((r01)*(x4663)))+(((IkReal(-1.00000000000000))*(r10)*(x4651)*(x4655)))+(((IkReal(-1.00000000000000))*(x4648)*(x4651)*(x4658)))+(((IkReal(-1.00000000000000))*(x4643)*(x4654)))+(((IkReal(-1.00000000000000))*(x4648)*(x4651)*(x4652)))+(((IkReal(-1.00000000000000))*(r00)*(x4649)*(x4655)))+(((r11)*(sj0)*(x4659)))+(((IkReal(-1.00000000000000))*(x4647)*(x4648)*(x4649)))+(((IkReal(-1.00000000000000))*(x4645)*(x4661)))+(((IkReal(-1.00000000000000))*(x4646)*(x4648)*(x4649)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +IkReal x4664=((IkReal(0.374290000000000))*(sj5)); +IkReal x4665=((cj0)*(sj6)); +IkReal x4666=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4667=((cj0)*(r02)); +IkReal x4668=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4669=((IkReal(1.00000000000000))*(py)); +IkReal x4670=((r01)*(sj0)); +IkReal x4671=((r20)*(sj6)); +IkReal x4672=((r11)*(sj0)); +IkReal x4673=((IkReal(0.374290000000000))*(cj5)); +IkReal x4674=((cj0)*(r12)); +IkReal x4675=((sj0)*(x4673)); +IkReal x4676=((cj6)*(x4668)); +IkReal x4677=((r10)*(sj0)*(sj6)); +IkReal x4678=((r00)*(sj0)*(sj6)); +IkReal x4679=((cj0)*(cj6)*(x4664)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(0.364420000000000))*(sj1)))+(((x4664)*(x4671)))+(((IkReal(-1.00000000000000))*(r22)*(x4673)))+(((cj6)*(r21)*(x4664)))+(((IkReal(-1.00000000000000))*(r21)*(x4676)))+(pz)+(((IkReal(-1.00000000000000))*(x4668)*(x4671)))+(((IkReal(-1.00000000000000))*(r22)*(x4666)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x4679)))+(((IkReal(-1.00000000000000))*(x4670)*(x4676)))+(((x4664)*(x4678)))+(((IkReal(-1.00000000000000))*(x4668)*(x4678)))+(((x4666)*(x4674)))+(((cj0)*(r11)*(x4676)))+(((IkReal(-1.00000000000000))*(r10)*(x4664)*(x4665)))+(((cj6)*(x4664)*(x4670)))+(((r10)*(x4665)*(x4668)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4666)))+(((px)*(sj0)))+(((x4673)*(x4674)))+(((IkReal(-1.00000000000000))*(r02)*(x4675)))+(((IkReal(-1.00000000000000))*(cj0)*(x4669)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((x4667)*(x4673)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(cj6)*(x4664)*(x4672)))+(((r00)*(x4665)*(x4668)))+(((r12)*(sj0)*(x4666)))+(((cj0)*(r01)*(x4676)))+(((IkReal(-1.00000000000000))*(r00)*(x4664)*(x4665)))+(((x4666)*(x4667)))+(((IkReal(-1.00000000000000))*(sj0)*(x4669)))+(((IkReal(-1.00000000000000))*(r01)*(x4679)))+(((r12)*(x4675)))+(((x4668)*(x4677)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(x4664)*(x4677)))+(((x4672)*(x4676)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst26; +IkReal x4680=(cj6)*(cj6); +IkReal x4681=(sj6)*(sj6); +IkReal x4682=((IkReal(1.00000000000000))*(r01)); +IkReal x4683=((sj0)*(sj5)); +IkReal x4684=((cj6)*(r22)); +IkReal x4685=((r21)*(sj6)); +IkReal x4686=((r00)*(r21)); +IkReal x4687=((cj0)*(sj5)); +IkReal x4688=((cj6)*(r20)); +IkReal x4689=((r22)*(sj6)); +IkReal x4690=((cj0)*(cj5)); +IkReal x4691=((IkReal(1.00000000000000))*(r10)); +IkReal x4692=((cj5)*(sj0)); +IkReal x4693=((r20)*(x4681)); +IkReal x4694=((x4680)*(x4692)); +gconst26=IKsign(((((r00)*(x4683)*(x4684)))+(((r11)*(x4690)*(x4693)))+(((x4686)*(x4694)))+(((IkReal(-1.00000000000000))*(x4682)*(x4683)*(x4689)))+(((IkReal(-1.00000000000000))*(r02)*(x4683)*(x4688)))+(((IkReal(-1.00000000000000))*(x4682)*(x4692)*(x4693)))+(((r11)*(x4687)*(x4689)))+(((IkReal(-1.00000000000000))*(r21)*(x4681)*(x4690)*(x4691)))+(((r11)*(r20)*(x4680)*(x4690)))+(((IkReal(-1.00000000000000))*(r12)*(x4685)*(x4687)))+(((IkReal(-1.00000000000000))*(x4684)*(x4687)*(x4691)))+(((r12)*(x4687)*(x4688)))+(((IkReal(-1.00000000000000))*(r21)*(x4680)*(x4690)*(x4691)))+(((x4681)*(x4686)*(x4692)))+(((r02)*(x4683)*(x4685)))+(((IkReal(-1.00000000000000))*(r20)*(x4682)*(x4694))))); +IkReal x4695=(cj6)*(cj6); +IkReal x4696=(sj6)*(sj6); +IkReal x4697=((IkReal(1.00000000000000))*(r01)); +IkReal x4698=((sj0)*(sj5)); +IkReal x4699=((cj6)*(r22)); +IkReal x4700=((r21)*(sj6)); +IkReal x4701=((r00)*(r21)); +IkReal x4702=((cj0)*(sj5)); +IkReal x4703=((cj6)*(r20)); +IkReal x4704=((r22)*(sj6)); +IkReal x4705=((cj0)*(cj5)); +IkReal x4706=((IkReal(1.00000000000000))*(r10)); +IkReal x4707=((cj5)*(sj0)); +IkReal x4708=((r20)*(x4696)); +IkReal x4709=((x4695)*(x4707)); +dummyeval[0]=((((r11)*(x4705)*(x4708)))+(((IkReal(-1.00000000000000))*(x4697)*(x4698)*(x4704)))+(((IkReal(-1.00000000000000))*(r20)*(x4697)*(x4709)))+(((r11)*(x4702)*(x4704)))+(((IkReal(-1.00000000000000))*(r21)*(x4696)*(x4705)*(x4706)))+(((IkReal(-1.00000000000000))*(r21)*(x4695)*(x4705)*(x4706)))+(((r00)*(x4698)*(x4699)))+(((r11)*(r20)*(x4695)*(x4705)))+(((IkReal(-1.00000000000000))*(r12)*(x4700)*(x4702)))+(((r12)*(x4702)*(x4703)))+(((r02)*(x4698)*(x4700)))+(((IkReal(-1.00000000000000))*(x4699)*(x4702)*(x4706)))+(((x4701)*(x4709)))+(((x4696)*(x4701)*(x4707)))+(((IkReal(-1.00000000000000))*(x4697)*(x4707)*(x4708)))+(((IkReal(-1.00000000000000))*(r02)*(x4698)*(x4703)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst27; +IkReal x4710=(cj6)*(cj6); +IkReal x4711=(sj6)*(sj6); +IkReal x4712=((sj5)*(sj6)); +IkReal x4713=((IkReal(1.00000000000000))*(cj0)); +IkReal x4714=((cj6)*(sj5)); +IkReal x4715=((r20)*(sj0)); +IkReal x4716=((cj0)*(r20)); +IkReal x4717=((r00)*(r21)); +IkReal x4718=((r22)*(sj0)); +IkReal x4719=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x4720=((cj5)*(x4711)); +IkReal x4721=((cj5)*(x4710)); +gconst27=IKsign(((((IkReal(-1.00000000000000))*(r10)*(x4719)*(x4721)))+(((r11)*(x4715)*(x4720)))+(((r01)*(x4716)*(x4720)))+(((r11)*(x4712)*(x4718)))+(((IkReal(-1.00000000000000))*(x4713)*(x4717)*(x4721)))+(((r01)*(x4716)*(x4721)))+(((IkReal(-1.00000000000000))*(r10)*(x4719)*(x4720)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x4713)*(x4714)))+(((r12)*(x4714)*(x4715)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x4712)*(x4713)))+(((cj0)*(r01)*(r22)*(x4712)))+(((r11)*(x4715)*(x4721)))+(((r02)*(x4714)*(x4716)))+(((IkReal(-1.00000000000000))*(x4713)*(x4717)*(x4720)))+(((IkReal(-1.00000000000000))*(r12)*(x4712)*(x4719)))+(((IkReal(-1.00000000000000))*(r10)*(x4714)*(x4718))))); +IkReal x4722=(cj6)*(cj6); +IkReal x4723=(sj6)*(sj6); +IkReal x4724=((sj5)*(sj6)); +IkReal x4725=((IkReal(1.00000000000000))*(cj0)); +IkReal x4726=((cj6)*(sj5)); +IkReal x4727=((r20)*(sj0)); +IkReal x4728=((cj0)*(r20)); +IkReal x4729=((r00)*(r21)); +IkReal x4730=((r22)*(sj0)); +IkReal x4731=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x4732=((cj5)*(x4723)); +IkReal x4733=((cj5)*(x4722)); +dummyeval[0]=((((cj0)*(r01)*(r22)*(x4724)))+(((IkReal(-1.00000000000000))*(r12)*(x4724)*(x4731)))+(((r02)*(x4726)*(x4728)))+(((IkReal(-1.00000000000000))*(r10)*(x4731)*(x4733)))+(((IkReal(-1.00000000000000))*(x4725)*(x4729)*(x4733)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x4724)*(x4725)))+(((r01)*(x4728)*(x4733)))+(((IkReal(-1.00000000000000))*(r10)*(x4731)*(x4732)))+(((r11)*(x4727)*(x4732)))+(((r01)*(x4728)*(x4732)))+(((IkReal(-1.00000000000000))*(r10)*(x4726)*(x4730)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x4725)*(x4726)))+(((r11)*(x4724)*(x4730)))+(((r12)*(x4726)*(x4727)))+(((r11)*(x4727)*(x4733)))+(((IkReal(-1.00000000000000))*(x4725)*(x4729)*(x4732)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x4734=((cj5)*(r22)); +IkReal x4735=((IkReal(0.374290000000000))*(sj5)); +IkReal x4736=((cj0)*(sj6)); +IkReal x4737=((cj6)*(r21)); +IkReal x4738=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4739=((cj0)*(r02)); +IkReal x4740=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4741=((IkReal(1.00000000000000))*(py)); +IkReal x4742=((r01)*(sj0)); +IkReal x4743=((r20)*(sj6)); +IkReal x4744=((r11)*(sj0)); +IkReal x4745=((IkReal(0.374290000000000))*(cj5)); +IkReal x4746=((cj0)*(r12)); +IkReal x4747=((sj0)*(x4745)); +IkReal x4748=((cj6)*(x4740)); +IkReal x4749=((r10)*(sj0)*(sj6)); +IkReal x4750=((r00)*(sj0)*(sj6)); +IkReal x4751=((cj0)*(cj6)*(x4735)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4734)))+(((sj5)*(x4737)))+(((sj5)*(x4743)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x4738)))+(((x4735)*(x4737)))+(pz)+(((IkReal(-1.00000000000000))*(x4740)*(x4743)))+(((IkReal(-0.374290000000000))*(x4734)))+(((IkReal(-1.00000000000000))*(x4737)*(x4740)))+(((x4735)*(x4743)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((x4738)*(x4746)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4738)))+(((x4735)*(x4750)))+(((IkReal(-1.00000000000000))*(x4742)*(x4748)))+(((r10)*(x4736)*(x4740)))+(((cj0)*(r11)*(x4748)))+(((IkReal(-1.00000000000000))*(r11)*(x4751)))+(((IkReal(-1.00000000000000))*(r10)*(x4735)*(x4736)))+(((x4745)*(x4746)))+(((IkReal(-1.00000000000000))*(x4740)*(x4750)))+(((IkReal(-1.00000000000000))*(r02)*(x4747)))+(((cj6)*(x4735)*(x4742)))+(((IkReal(-1.00000000000000))*(cj0)*(x4741)))+(((px)*(sj0)))); +evalcond[4]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((IkReal(-1.00000000000000))*(r01)*(x4751)))+(((IkReal(-1.00000000000000))*(x4735)*(x4749)))+(((r12)*(x4747)))+(((cj0)*(r01)*(x4748)))+(((r00)*(x4736)*(x4740)))+(((IkReal(-1.00000000000000))*(sj0)*(x4741)))+(((IkReal(-1.00000000000000))*(r00)*(x4735)*(x4736)))+(((x4738)*(x4739)))+(((x4739)*(x4745)))+(((r12)*(sj0)*(x4738)))+(((IkReal(-1.00000000000000))*(cj6)*(x4735)*(x4744)))+(((x4744)*(x4748)))+(((x4740)*(x4749)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4752=((cj5)*(r02)); +IkReal x4753=((cj0)*(sj5)); +IkReal x4754=((r10)*(sj6)); +IkReal x4755=((IkReal(1.00000000000000))*(cj6)); +IkReal x4756=((sj0)*(sj5)); +IkReal x4757=((cj5)*(r12)); +IkReal x4758=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x4757)))+(((IkReal(-1.00000000000000))*(r01)*(x4755)*(x4756)))+(((x4753)*(x4754)))+(((IkReal(-1.00000000000000))*(x4756)*(x4758)))+(((cj6)*(r11)*(x4753)))+(((sj0)*(x4752))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj0)*(x4757)))+(((cj0)*(x4752)))+(((IkReal(-1.00000000000000))*(x4754)*(x4756)))+(((IkReal(-1.00000000000000))*(x4753)*(x4758)))+(((IkReal(-1.00000000000000))*(r11)*(x4755)*(x4756)))+(((IkReal(-1.00000000000000))*(r01)*(x4753)*(x4755))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x4757)))+(((IkReal(-1.00000000000000))*(r01)*(x4755)*(x4756)))+(((x4753)*(x4754)))+(((IkReal(-1.00000000000000))*(x4756)*(x4758)))+(((cj6)*(r11)*(x4753)))+(((sj0)*(x4752)))))+IKsqr(((((sj0)*(x4757)))+(((cj0)*(x4752)))+(((IkReal(-1.00000000000000))*(x4754)*(x4756)))+(((IkReal(-1.00000000000000))*(x4753)*(x4758)))+(((IkReal(-1.00000000000000))*(r11)*(x4755)*(x4756)))+(((IkReal(-1.00000000000000))*(r01)*(x4753)*(x4755)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x4757)))+(((IkReal(-1.00000000000000))*(r01)*(x4755)*(x4756)))+(((x4753)*(x4754)))+(((IkReal(-1.00000000000000))*(x4756)*(x4758)))+(((cj6)*(r11)*(x4753)))+(((sj0)*(x4752)))), ((((sj0)*(x4757)))+(((cj0)*(x4752)))+(((IkReal(-1.00000000000000))*(x4754)*(x4756)))+(((IkReal(-1.00000000000000))*(x4753)*(x4758)))+(((IkReal(-1.00000000000000))*(r11)*(x4755)*(x4756)))+(((IkReal(-1.00000000000000))*(r01)*(x4753)*(x4755))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x4759=((cj0)*(cj5)); +IkReal x4760=((IkReal(1.00000000000000))*(cj0)); +IkReal x4761=((cj6)*(r11)); +IkReal x4762=((r10)*(sj6)); +IkReal x4763=((cj5)*(sj0)); +IkReal x4764=((r00)*(sj5)*(sj6)); +IkReal x4765=((cj6)*(r01)*(sj5)); +IkReal x4766=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x4763)))+(((sj0)*(x4765)))+(((r12)*(x4759)))+(((sj0)*(x4764)))+(((IkReal(-1.00000000000000))*(sj5)*(x4760)*(x4761)))+(IKsin(j3))+(((IkReal(-1.00000000000000))*(sj5)*(x4760)*(x4762)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4760)*(x4765)))+(((IkReal(-1.00000000000000))*(x4761)*(x4766)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((r02)*(x4759)))+(((IkReal(-1.00000000000000))*(x4760)*(x4764)))+(((r12)*(x4763)))+(((IkReal(-1.00000000000000))*(x4762)*(x4766)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst33; +IkReal x4767=(r21)*(r21); +IkReal x4768=(cj5)*(cj5); +IkReal x4769=(sj6)*(sj6); +IkReal x4770=(cj6)*(cj6); +IkReal x4771=(r20)*(r20); +IkReal x4772=((cj6)*(r21)); +IkReal x4773=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x4774=((cj5)*(r22)*(sj5)); +IkReal x4775=((IkReal(1.00000000000000))*(x4769)); +IkReal x4776=((IkReal(1.00000000000000))*(x4770)); +gconst33=IKsign(((((IkReal(-1.00000000000000))*(x4771)*(x4776)))+(((IkReal(-1.00000000000000))*(x4767)*(x4775)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x4767)*(x4768)*(x4776)))+(((IkReal(-1.00000000000000))*(x4768)*(x4771)*(x4775)))+(((IkReal(-1.00000000000000))*(x4768)*(x4772)*(x4773)))+(((x4772)*(x4773)))+(((IkReal(-1.00000000000000))*(x4773)*(x4774)))+(((IkReal(-2.00000000000000))*(x4772)*(x4774))))); +IkReal x4777=(r21)*(r21); +IkReal x4778=(cj5)*(cj5); +IkReal x4779=(sj6)*(sj6); +IkReal x4780=(cj6)*(cj6); +IkReal x4781=(r20)*(r20); +IkReal x4782=((cj6)*(r21)); +IkReal x4783=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x4784=((cj5)*(r22)*(sj5)); +IkReal x4785=((IkReal(1.00000000000000))*(x4779)); +IkReal x4786=((IkReal(1.00000000000000))*(x4780)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x4777)*(x4785)))+(((IkReal(-1.00000000000000))*(x4783)*(x4784)))+(((IkReal(-1.00000000000000))*(x4778)*(x4782)*(x4783)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x4777)*(x4778)*(x4786)))+(((x4782)*(x4783)))+(((IkReal(-1.00000000000000))*(x4781)*(x4786)))+(((IkReal(-1.00000000000000))*(x4778)*(x4781)*(x4785)))+(((IkReal(-2.00000000000000))*(x4782)*(x4784)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst34; +IkReal x4787=(cj6)*(cj6); +IkReal x4788=(sj6)*(sj6); +IkReal x4789=((IkReal(1.00000000000000))*(r01)); +IkReal x4790=((sj0)*(sj5)); +IkReal x4791=((cj6)*(r22)); +IkReal x4792=((r21)*(sj6)); +IkReal x4793=((r00)*(r21)); +IkReal x4794=((cj0)*(sj5)); +IkReal x4795=((cj6)*(r20)); +IkReal x4796=((r22)*(sj6)); +IkReal x4797=((cj0)*(cj5)); +IkReal x4798=((IkReal(1.00000000000000))*(r10)); +IkReal x4799=((cj5)*(sj0)); +IkReal x4800=((r20)*(x4788)); +IkReal x4801=((x4787)*(x4799)); +gconst34=IKsign(((((r02)*(x4790)*(x4792)))+(((IkReal(-1.00000000000000))*(r20)*(x4789)*(x4801)))+(((r12)*(x4794)*(x4795)))+(((r11)*(x4794)*(x4796)))+(((IkReal(-1.00000000000000))*(x4789)*(x4799)*(x4800)))+(((x4788)*(x4793)*(x4799)))+(((x4793)*(x4801)))+(((IkReal(-1.00000000000000))*(r21)*(x4787)*(x4797)*(x4798)))+(((r11)*(r20)*(x4787)*(x4797)))+(((IkReal(-1.00000000000000))*(r21)*(x4788)*(x4797)*(x4798)))+(((r00)*(x4790)*(x4791)))+(((IkReal(-1.00000000000000))*(r02)*(x4790)*(x4795)))+(((IkReal(-1.00000000000000))*(x4791)*(x4794)*(x4798)))+(((IkReal(-1.00000000000000))*(x4789)*(x4790)*(x4796)))+(((r11)*(x4797)*(x4800)))+(((IkReal(-1.00000000000000))*(r12)*(x4792)*(x4794))))); +IkReal x4802=(cj6)*(cj6); +IkReal x4803=(sj6)*(sj6); +IkReal x4804=((IkReal(1.00000000000000))*(r01)); +IkReal x4805=((sj0)*(sj5)); +IkReal x4806=((cj6)*(r22)); +IkReal x4807=((r21)*(sj6)); +IkReal x4808=((r00)*(r21)); +IkReal x4809=((cj0)*(sj5)); +IkReal x4810=((cj6)*(r20)); +IkReal x4811=((r22)*(sj6)); +IkReal x4812=((cj0)*(cj5)); +IkReal x4813=((IkReal(1.00000000000000))*(r10)); +IkReal x4814=((cj5)*(sj0)); +IkReal x4815=((r20)*(x4803)); +IkReal x4816=((x4802)*(x4814)); +dummyeval[0]=((((r11)*(r20)*(x4802)*(x4812)))+(((IkReal(-1.00000000000000))*(r21)*(x4803)*(x4812)*(x4813)))+(((r12)*(x4809)*(x4810)))+(((IkReal(-1.00000000000000))*(x4804)*(x4805)*(x4811)))+(((IkReal(-1.00000000000000))*(r21)*(x4802)*(x4812)*(x4813)))+(((IkReal(-1.00000000000000))*(r20)*(x4804)*(x4816)))+(((x4803)*(x4808)*(x4814)))+(((IkReal(-1.00000000000000))*(x4806)*(x4809)*(x4813)))+(((IkReal(-1.00000000000000))*(r12)*(x4807)*(x4809)))+(((r00)*(x4805)*(x4806)))+(((r11)*(x4809)*(x4811)))+(((IkReal(-1.00000000000000))*(r02)*(x4805)*(x4810)))+(((x4808)*(x4816)))+(((r11)*(x4812)*(x4815)))+(((IkReal(-1.00000000000000))*(x4804)*(x4814)*(x4815)))+(((r02)*(x4805)*(x4807)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4817=((sj0)*(sj6)); +IkReal x4818=((cj0)*(r10)); +IkReal x4819=((IkReal(1.00000000000000))*(cj5)); +IkReal x4820=((cj6)*(sj0)); +IkReal x4821=((cj0)*(r11)); +if( IKabs(((gconst34)*(((((r01)*(x4817)))+(((IkReal(-1.00000000000000))*(r00)*(x4820)))+(((cj6)*(x4818)))+(((IkReal(-1.00000000000000))*(sj6)*(x4821))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst34)*(((((IkReal(-1.00000000000000))*(r00)*(x4817)*(x4819)))+(((cj0)*(r12)*(sj5)))+(((cj5)*(cj6)*(x4821)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r01)*(x4819)*(x4820)))+(((cj5)*(sj6)*(x4818))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst34)*(((((r01)*(x4817)))+(((IkReal(-1.00000000000000))*(r00)*(x4820)))+(((cj6)*(x4818)))+(((IkReal(-1.00000000000000))*(sj6)*(x4821)))))), ((gconst34)*(((((IkReal(-1.00000000000000))*(r00)*(x4817)*(x4819)))+(((cj0)*(r12)*(sj5)))+(((cj5)*(cj6)*(x4821)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r01)*(x4819)*(x4820)))+(((cj5)*(sj6)*(x4818))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4822=IKsin(j4); +IkReal x4823=IKcos(j4); +IkReal x4824=((r22)*(sj5)); +IkReal x4825=((IkReal(1.00000000000000))*(cj6)); +IkReal x4826=((IkReal(1.00000000000000))*(cj0)); +IkReal x4827=((cj5)*(r11)); +IkReal x4828=((cj5)*(cj6)); +IkReal x4829=((r11)*(sj6)); +IkReal x4830=((IkReal(1.00000000000000))*(sj6)); +IkReal x4831=((cj6)*(r00)); +IkReal x4832=((r12)*(sj5)); +IkReal x4833=((r02)*(sj5)); +IkReal x4834=((cj6)*(r10)); +IkReal x4835=((cj5)*(sj6)); +IkReal x4836=((cj5)*(r01)); +IkReal x4837=((sj0)*(x4822)); +IkReal x4838=((r00)*(x4835)); +IkReal x4839=((cj0)*(x4822)); +IkReal x4840=((sj0)*(x4823)); +IkReal x4841=((r20)*(x4823)); +IkReal x4842=((cj0)*(x4823)); +IkReal x4843=((r21)*(x4822)); +IkReal x4844=((r21)*(x4823)); +IkReal x4845=((r20)*(x4822)); +IkReal x4846=((x4823)*(x4832)); +IkReal x4847=((r01)*(sj6)*(x4823)); +IkReal x4848=((cj5)*(r10)*(x4830)); +evalcond[0]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x4825)*(x4841)))+(((x4835)*(x4845)))+(((sj6)*(x4844)))+(((x4828)*(x4843)))+(((x4822)*(x4824)))); +evalcond[1]=((((x4828)*(x4844)))+(((x4835)*(x4841)))+(((cj6)*(x4845)))+(((IkReal(-1.00000000000000))*(x4830)*(x4843)))+(((x4823)*(x4824)))); +evalcond[2]=((((r01)*(x4828)*(x4837)))+(((IkReal(-1.00000000000000))*(r10)*(x4822)*(x4826)*(x4835)))+(((IkReal(-1.00000000000000))*(x4822)*(x4826)*(x4832)))+(((IkReal(-1.00000000000000))*(x4825)*(x4827)*(x4839)))+(((IkReal(-1.00000000000000))*(r00)*(x4825)*(x4840)))+(((x4833)*(x4837)))+(((x4837)*(x4838)))+(((IkReal(-1.00000000000000))*(x4823)*(x4826)*(x4829)))+(((r01)*(sj6)*(x4840)))+(((x4834)*(x4842)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x4825)*(x4839)))+(((IkReal(-1.00000000000000))*(r01)*(x4830)*(x4837)))+(((IkReal(-1.00000000000000))*(x4825)*(x4827)*(x4842)))+(((x4838)*(x4840)))+(((x4829)*(x4839)))+(((IkReal(-1.00000000000000))*(r10)*(x4823)*(x4826)*(x4835)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x4831)*(x4837)))+(((r01)*(x4828)*(x4840)))+(((x4833)*(x4840)))+(((IkReal(-1.00000000000000))*(x4826)*(x4846)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x4837)*(x4848)))+(((x4831)*(x4842)))+(((IkReal(-1.00000000000000))*(x4822)*(x4826)*(x4838)))+(((IkReal(-1.00000000000000))*(x4822)*(x4826)*(x4833)))+(((IkReal(-1.00000000000000))*(x4829)*(x4840)))+(((x4834)*(x4840)))+(((IkReal(-1.00000000000000))*(x4825)*(x4827)*(x4837)))+(((IkReal(-1.00000000000000))*(x4826)*(x4847)))+(((IkReal(-1.00000000000000))*(x4825)*(x4836)*(x4839)))+(((IkReal(-1.00000000000000))*(x4832)*(x4837)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x4825)*(x4837)))+(((r01)*(sj6)*(x4839)))+(((IkReal(-1.00000000000000))*(x4825)*(x4836)*(x4842)))+(((x4829)*(x4837)))+(((IkReal(-1.00000000000000))*(x4825)*(x4827)*(x4840)))+(((IkReal(-1.00000000000000))*(x4840)*(x4848)))+(((IkReal(-1.00000000000000))*(x4832)*(x4840)))+(((IkReal(-1.00000000000000))*(x4823)*(x4826)*(x4833)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r00)*(x4825)*(x4839)))+(((IkReal(-1.00000000000000))*(x4823)*(x4826)*(x4838)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst33)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst33)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst33)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst33)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4849=IKsin(j4); +IkReal x4850=IKcos(j4); +IkReal x4851=((r22)*(sj5)); +IkReal x4852=((IkReal(1.00000000000000))*(cj6)); +IkReal x4853=((IkReal(1.00000000000000))*(cj0)); +IkReal x4854=((cj5)*(r11)); +IkReal x4855=((cj5)*(cj6)); +IkReal x4856=((r11)*(sj6)); +IkReal x4857=((IkReal(1.00000000000000))*(sj6)); +IkReal x4858=((cj6)*(r00)); +IkReal x4859=((r12)*(sj5)); +IkReal x4860=((r02)*(sj5)); +IkReal x4861=((cj6)*(r10)); +IkReal x4862=((cj5)*(sj6)); +IkReal x4863=((cj5)*(r01)); +IkReal x4864=((sj0)*(x4849)); +IkReal x4865=((r00)*(x4862)); +IkReal x4866=((cj0)*(x4849)); +IkReal x4867=((sj0)*(x4850)); +IkReal x4868=((r20)*(x4850)); +IkReal x4869=((cj0)*(x4850)); +IkReal x4870=((r21)*(x4849)); +IkReal x4871=((r21)*(x4850)); +IkReal x4872=((r20)*(x4849)); +IkReal x4873=((x4850)*(x4859)); +IkReal x4874=((r01)*(sj6)*(x4850)); +IkReal x4875=((cj5)*(r10)*(x4857)); +evalcond[0]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x4852)*(x4868)))+(((sj6)*(x4871)))+(((x4849)*(x4851)))+(((x4855)*(x4870)))+(((x4862)*(x4872)))); +evalcond[1]=((((x4850)*(x4851)))+(((IkReal(-1.00000000000000))*(x4857)*(x4870)))+(((x4862)*(x4868)))+(((cj6)*(x4872)))+(((x4855)*(x4871)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x4852)*(x4867)))+(((IkReal(-1.00000000000000))*(x4852)*(x4854)*(x4866)))+(((x4861)*(x4869)))+(((x4864)*(x4865)))+(((IkReal(-1.00000000000000))*(r10)*(x4849)*(x4853)*(x4862)))+(((IkReal(-1.00000000000000))*(x4849)*(x4853)*(x4859)))+(((IkReal(-1.00000000000000))*(x4850)*(x4853)*(x4856)))+(((x4860)*(x4864)))+(((r01)*(x4855)*(x4864)))+(((r01)*(sj6)*(x4867)))); +evalcond[3]=((((x4858)*(x4864)))+(((IkReal(-1.00000000000000))*(r10)*(x4852)*(x4866)))+(((x4856)*(x4866)))+(((IkReal(-1.00000000000000))*(r10)*(x4850)*(x4853)*(x4862)))+(((r01)*(x4855)*(x4867)))+(((IkReal(-1.00000000000000))*(r01)*(x4857)*(x4864)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x4853)*(x4873)))+(((x4865)*(x4867)))+(((IkReal(-1.00000000000000))*(x4852)*(x4854)*(x4869)))+(((x4860)*(x4867)))); +evalcond[4]=((((x4858)*(x4869)))+(((IkReal(-1.00000000000000))*(x4849)*(x4853)*(x4865)))+(((IkReal(-1.00000000000000))*(x4864)*(x4875)))+(((IkReal(-1.00000000000000))*(x4852)*(x4863)*(x4866)))+(((IkReal(-1.00000000000000))*(x4859)*(x4864)))+(((IkReal(-1.00000000000000))*(x4853)*(x4874)))+(((IkReal(-1.00000000000000))*(x4849)*(x4853)*(x4860)))+(((IkReal(-1.00000000000000))*(x4856)*(x4867)))+(((x4861)*(x4867)))+(((IkReal(-1.00000000000000))*(x4852)*(x4854)*(x4864)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x4850)*(x4853)*(x4860)))+(((IkReal(-1.00000000000000))*(r00)*(x4852)*(x4866)))+(((x4856)*(x4864)))+(((IkReal(-1.00000000000000))*(x4852)*(x4854)*(x4867)))+(((r01)*(sj6)*(x4866)))+(((IkReal(-1.00000000000000))*(x4852)*(x4863)*(x4869)))+(((IkReal(-1.00000000000000))*(x4867)*(x4875)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r10)*(x4852)*(x4864)))+(((IkReal(-1.00000000000000))*(x4859)*(x4867)))+(((IkReal(-1.00000000000000))*(x4850)*(x4853)*(x4865)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x4876=((cj5)*(r22)); +IkReal x4877=((IkReal(0.374290000000000))*(sj5)); +IkReal x4878=((cj0)*(sj6)); +IkReal x4879=((cj6)*(r21)); +IkReal x4880=((IkReal(0.0100000000000000))*(sj5)); +IkReal x4881=((cj0)*(r02)); +IkReal x4882=((IkReal(0.0100000000000000))*(cj5)); +IkReal x4883=((IkReal(1.00000000000000))*(py)); +IkReal x4884=((r01)*(sj0)); +IkReal x4885=((r20)*(sj6)); +IkReal x4886=((r11)*(sj0)); +IkReal x4887=((IkReal(0.374290000000000))*(cj5)); +IkReal x4888=((cj0)*(r12)); +IkReal x4889=((sj0)*(x4887)); +IkReal x4890=((cj6)*(x4882)); +IkReal x4891=((r10)*(sj0)*(sj6)); +IkReal x4892=((r00)*(sj0)*(sj6)); +IkReal x4893=((cj0)*(cj6)*(x4877)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x4876)))+(((sj5)*(x4879)))+(((sj5)*(x4885)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x4879)*(x4882)))+(((IkReal(-0.374290000000000))*(x4876)))+(((x4877)*(x4879)))+(((IkReal(-1.00000000000000))*(r22)*(x4880)))+(((IkReal(-1.00000000000000))*(x4882)*(x4885)))+(pz)+(((x4877)*(x4885)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((cj0)*(r11)*(x4890)))+(((x4880)*(x4888)))+(((IkReal(-1.00000000000000))*(x4884)*(x4890)))+(((x4877)*(x4892)))+(((r10)*(x4878)*(x4882)))+(((IkReal(-1.00000000000000))*(r10)*(x4877)*(x4878)))+(((IkReal(-1.00000000000000))*(r02)*(x4889)))+(((cj6)*(x4877)*(x4884)))+(((x4887)*(x4888)))+(((IkReal(-1.00000000000000))*(x4882)*(x4892)))+(((IkReal(-1.00000000000000))*(cj0)*(x4883)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x4880)))+(((IkReal(-1.00000000000000))*(r11)*(x4893)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((cj0)*(r01)*(x4890)))+(((IkReal(-1.00000000000000))*(r00)*(x4877)*(x4878)))+(((r12)*(x4889)))+(((IkReal(-1.00000000000000))*(cj6)*(x4877)*(x4886)))+(((x4882)*(x4891)))+(((r12)*(sj0)*(x4880)))+(((IkReal(-1.00000000000000))*(x4877)*(x4891)))+(((x4881)*(x4887)))+(((IkReal(-1.00000000000000))*(sj0)*(x4883)))+(((r00)*(x4878)*(x4882)))+(((x4880)*(x4881)))+(((IkReal(-1.00000000000000))*(r01)*(x4893)))+(((x4886)*(x4890)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x4894=((IkReal(1.00000000000000))*(cj5)); +IkReal x4895=((r10)*(sj5)*(sj6)); +IkReal x4896=((cj6)*(sj0)*(sj5)); +IkReal x4897=((r00)*(sj5)*(sj6)); +IkReal x4898=((cj0)*(cj6)*(sj5)); +if( IKabs(((((r11)*(x4898)))+(((cj0)*(x4895)))+(((IkReal(-1.00000000000000))*(sj0)*(x4897)))+(((IkReal(-1.00000000000000))*(r01)*(x4896)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x4894)))+(((cj5)*(r02)*(sj0))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r01)*(x4898)))+(((cj0)*(x4897)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4894)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4894)))+(((r11)*(x4896)))+(((sj0)*(x4895))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r11)*(x4898)))+(((cj0)*(x4895)))+(((IkReal(-1.00000000000000))*(sj0)*(x4897)))+(((IkReal(-1.00000000000000))*(r01)*(x4896)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x4894)))+(((cj5)*(r02)*(sj0)))))+IKsqr(((((r01)*(x4898)))+(((cj0)*(x4897)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4894)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4894)))+(((r11)*(x4896)))+(((sj0)*(x4895)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r11)*(x4898)))+(((cj0)*(x4895)))+(((IkReal(-1.00000000000000))*(sj0)*(x4897)))+(((IkReal(-1.00000000000000))*(r01)*(x4896)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x4894)))+(((cj5)*(r02)*(sj0)))), ((((r01)*(x4898)))+(((cj0)*(x4897)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x4894)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x4894)))+(((r11)*(x4896)))+(((sj0)*(x4895))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x4899=((cj0)*(cj5)); +IkReal x4900=((IkReal(1.00000000000000))*(cj0)); +IkReal x4901=((cj6)*(r11)); +IkReal x4902=((r10)*(sj6)); +IkReal x4903=((cj5)*(sj0)); +IkReal x4904=((r00)*(sj5)*(sj6)); +IkReal x4905=((cj6)*(r01)*(sj5)); +IkReal x4906=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((sj0)*(x4904)))+(((r12)*(x4899)))+(IKsin(j3))+(((IkReal(-1.00000000000000))*(sj5)*(x4900)*(x4901)))+(((IkReal(-1.00000000000000))*(sj5)*(x4900)*(x4902)))+(((sj0)*(x4905)))+(((IkReal(-1.00000000000000))*(r02)*(x4903)))); +evalcond[1]=((((r02)*(x4899)))+(((IkReal(-1.00000000000000))*(x4902)*(x4906)))+(((IkReal(-1.00000000000000))*(x4900)*(x4905)))+(((IkReal(-1.00000000000000))*(x4900)*(x4904)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x4901)*(x4906)))+(((r12)*(x4903)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst37; +IkReal x4907=(cj5)*(cj5); +IkReal x4908=(r20)*(r20); +IkReal x4909=(sj6)*(sj6); +IkReal x4910=(cj6)*(cj6); +IkReal x4911=(r21)*(r21); +IkReal x4912=((cj6)*(r21)); +IkReal x4913=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x4914=((cj5)*(r22)*(sj5)); +gconst37=IKsign(((((x4907)*(x4910)*(x4911)))+(((x4907)*(x4908)*(x4909)))+(((x4913)*(x4914)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x4907)*(x4912)*(x4913)))+(((IkReal(-1.00000000000000))*(x4912)*(x4913)))+(((IkReal(2.00000000000000))*(x4912)*(x4914)))+(((x4908)*(x4910)))+(((x4909)*(x4911))))); +IkReal x4915=(cj5)*(cj5); +IkReal x4916=(r20)*(r20); +IkReal x4917=(sj6)*(sj6); +IkReal x4918=(cj6)*(cj6); +IkReal x4919=(r21)*(r21); +IkReal x4920=((cj6)*(r21)); +IkReal x4921=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x4922=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((IkReal(2.00000000000000))*(x4920)*(x4922)))+(((x4915)*(x4916)*(x4917)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x4917)*(x4919)))+(((IkReal(-1.00000000000000))*(x4920)*(x4921)))+(((x4915)*(x4920)*(x4921)))+(((x4921)*(x4922)))+(((x4915)*(x4918)*(x4919)))+(((x4916)*(x4918)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst38; +IkReal x4923=(cj6)*(cj6); +IkReal x4924=(sj6)*(sj6); +IkReal x4925=((IkReal(1.00000000000000))*(r21)); +IkReal x4926=((cj6)*(r20)); +IkReal x4927=((r22)*(sj5)); +IkReal x4928=((r01)*(sj0)); +IkReal x4929=((r00)*(sj0)); +IkReal x4930=((cj0)*(r10)); +IkReal x4931=((r02)*(sj0)*(sj5)); +IkReal x4932=((cj5)*(x4923)); +IkReal x4933=((cj0)*(r12)*(sj5)); +IkReal x4934=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x4935=((cj5)*(x4924)); +IkReal x4936=((r20)*(x4935)); +gconst38=IKsign(((((x4928)*(x4936)))+(((IkReal(-1.00000000000000))*(cj6)*(x4927)*(x4929)))+(((IkReal(-1.00000000000000))*(sj6)*(x4927)*(x4934)))+(((IkReal(-1.00000000000000))*(sj6)*(x4925)*(x4931)))+(((r21)*(sj6)*(x4933)))+(((r21)*(x4930)*(x4935)))+(((IkReal(-1.00000000000000))*(x4925)*(x4929)*(x4935)))+(((x4926)*(x4931)))+(((IkReal(-1.00000000000000))*(r20)*(x4932)*(x4934)))+(((IkReal(-1.00000000000000))*(x4925)*(x4929)*(x4932)))+(((IkReal(-1.00000000000000))*(x4926)*(x4933)))+(((r21)*(x4930)*(x4932)))+(((IkReal(-1.00000000000000))*(x4934)*(x4936)))+(((r20)*(x4928)*(x4932)))+(((cj6)*(x4927)*(x4930)))+(((sj6)*(x4927)*(x4928))))); +IkReal x4937=(cj6)*(cj6); +IkReal x4938=(sj6)*(sj6); +IkReal x4939=((IkReal(1.00000000000000))*(r21)); +IkReal x4940=((cj6)*(r20)); +IkReal x4941=((r22)*(sj5)); +IkReal x4942=((r01)*(sj0)); +IkReal x4943=((r00)*(sj0)); +IkReal x4944=((cj0)*(r10)); +IkReal x4945=((r02)*(sj0)*(sj5)); +IkReal x4946=((cj5)*(x4937)); +IkReal x4947=((cj0)*(r12)*(sj5)); +IkReal x4948=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x4949=((cj5)*(x4938)); +IkReal x4950=((r20)*(x4949)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x4939)*(x4943)*(x4946)))+(((r21)*(x4944)*(x4949)))+(((r21)*(x4944)*(x4946)))+(((r20)*(x4942)*(x4946)))+(((IkReal(-1.00000000000000))*(cj6)*(x4941)*(x4943)))+(((sj6)*(x4941)*(x4942)))+(((IkReal(-1.00000000000000))*(sj6)*(x4939)*(x4945)))+(((x4940)*(x4945)))+(((IkReal(-1.00000000000000))*(x4940)*(x4947)))+(((IkReal(-1.00000000000000))*(x4948)*(x4950)))+(((IkReal(-1.00000000000000))*(x4939)*(x4943)*(x4949)))+(((IkReal(-1.00000000000000))*(sj6)*(x4941)*(x4948)))+(((x4942)*(x4950)))+(((cj6)*(x4941)*(x4944)))+(((r21)*(sj6)*(x4947)))+(((IkReal(-1.00000000000000))*(r20)*(x4946)*(x4948)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x4951=((sj0)*(sj6)); +IkReal x4952=((cj0)*(r10)); +IkReal x4953=((IkReal(1.00000000000000))*(cj5)); +IkReal x4954=((cj6)*(sj0)); +IkReal x4955=((cj0)*(r11)); +if( IKabs(((gconst38)*(((((cj6)*(x4952)))+(((r01)*(x4951)))+(((IkReal(-1.00000000000000))*(r00)*(x4954)))+(((IkReal(-1.00000000000000))*(sj6)*(x4955))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst38)*(((((cj5)*(sj6)*(x4952)))+(((IkReal(-1.00000000000000))*(r01)*(x4953)*(x4954)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x4951)*(x4953)))+(((cj5)*(cj6)*(x4955))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst38)*(((((cj6)*(x4952)))+(((r01)*(x4951)))+(((IkReal(-1.00000000000000))*(r00)*(x4954)))+(((IkReal(-1.00000000000000))*(sj6)*(x4955)))))), ((gconst38)*(((((cj5)*(sj6)*(x4952)))+(((IkReal(-1.00000000000000))*(r01)*(x4953)*(x4954)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r00)*(x4951)*(x4953)))+(((cj5)*(cj6)*(x4955))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4956=IKsin(j4); +IkReal x4957=IKcos(j4); +IkReal x4958=((r22)*(sj5)); +IkReal x4959=((IkReal(1.00000000000000))*(cj6)); +IkReal x4960=((IkReal(1.00000000000000))*(cj0)); +IkReal x4961=((cj5)*(r11)); +IkReal x4962=((cj5)*(cj6)); +IkReal x4963=((r11)*(sj6)); +IkReal x4964=((IkReal(1.00000000000000))*(sj6)); +IkReal x4965=((cj6)*(r00)); +IkReal x4966=((r12)*(sj5)); +IkReal x4967=((r02)*(sj5)); +IkReal x4968=((cj6)*(r10)); +IkReal x4969=((cj5)*(sj6)); +IkReal x4970=((cj5)*(r01)); +IkReal x4971=((sj0)*(x4956)); +IkReal x4972=((r00)*(x4969)); +IkReal x4973=((cj0)*(x4956)); +IkReal x4974=((sj0)*(x4957)); +IkReal x4975=((r20)*(x4957)); +IkReal x4976=((cj0)*(x4957)); +IkReal x4977=((r21)*(x4956)); +IkReal x4978=((r21)*(x4957)); +IkReal x4979=((r20)*(x4956)); +IkReal x4980=((x4957)*(x4966)); +IkReal x4981=((r01)*(sj6)*(x4957)); +IkReal x4982=((cj5)*(r10)*(x4964)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x4959)*(x4975)))+(((x4969)*(x4979)))+(((sj6)*(x4978)))+(((x4956)*(x4958)))+(((x4962)*(x4977)))); +evalcond[1]=((((x4969)*(x4975)))+(((IkReal(-1.00000000000000))*(x4964)*(x4977)))+(((x4962)*(x4978)))+(((x4957)*(x4958)))+(((cj6)*(x4979)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x4956)*(x4960)*(x4969)))+(((x4967)*(x4971)))+(((IkReal(-1.00000000000000))*(x4956)*(x4960)*(x4966)))+(((IkReal(-1.00000000000000))*(x4957)*(x4960)*(x4963)))+(((r01)*(x4962)*(x4971)))+(((r01)*(sj6)*(x4974)))+(((x4971)*(x4972)))+(((IkReal(-1.00000000000000))*(r00)*(x4959)*(x4974)))+(((x4968)*(x4976)))+(((IkReal(-1.00000000000000))*(x4959)*(x4961)*(x4973)))); +evalcond[3]=((((r01)*(x4962)*(x4974)))+(((x4965)*(x4971)))+(((IkReal(-1.00000000000000))*(r10)*(x4959)*(x4973)))+(((x4963)*(x4973)))+(((IkReal(-1.00000000000000))*(r01)*(x4964)*(x4971)))+(((IkReal(-1.00000000000000))*(r10)*(x4957)*(x4960)*(x4969)))+(((IkReal(-1.00000000000000))*(x4959)*(x4961)*(x4976)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x4972)*(x4974)))+(((x4967)*(x4974)))+(((IkReal(-1.00000000000000))*(x4960)*(x4980)))); +evalcond[4]=((((x4968)*(x4974)))+(((IkReal(-1.00000000000000))*(x4956)*(x4960)*(x4967)))+(((IkReal(-1.00000000000000))*(x4959)*(x4970)*(x4973)))+(((IkReal(-1.00000000000000))*(x4956)*(x4960)*(x4972)))+(((IkReal(-1.00000000000000))*(x4960)*(x4981)))+(((IkReal(-1.00000000000000))*(x4963)*(x4974)))+(((IkReal(-1.00000000000000))*(x4959)*(x4961)*(x4971)))+(((IkReal(-1.00000000000000))*(x4966)*(x4971)))+(((x4965)*(x4976)))+(((IkReal(-1.00000000000000))*(x4971)*(x4982)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x4959)*(x4970)*(x4976)))+(sj3)+(((IkReal(-1.00000000000000))*(r00)*(x4959)*(x4973)))+(((IkReal(-1.00000000000000))*(x4959)*(x4961)*(x4974)))+(((r01)*(sj6)*(x4973)))+(((IkReal(-1.00000000000000))*(x4966)*(x4974)))+(((x4963)*(x4971)))+(((IkReal(-1.00000000000000))*(x4957)*(x4960)*(x4972)))+(((IkReal(-1.00000000000000))*(r10)*(x4959)*(x4971)))+(((IkReal(-1.00000000000000))*(x4974)*(x4982)))+(((IkReal(-1.00000000000000))*(x4957)*(x4960)*(x4967)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst37)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst37)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst37)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst37)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x4983=IKsin(j4); +IkReal x4984=IKcos(j4); +IkReal x4985=((r22)*(sj5)); +IkReal x4986=((IkReal(1.00000000000000))*(cj6)); +IkReal x4987=((IkReal(1.00000000000000))*(cj0)); +IkReal x4988=((cj5)*(r11)); +IkReal x4989=((cj5)*(cj6)); +IkReal x4990=((r11)*(sj6)); +IkReal x4991=((IkReal(1.00000000000000))*(sj6)); +IkReal x4992=((cj6)*(r00)); +IkReal x4993=((r12)*(sj5)); +IkReal x4994=((r02)*(sj5)); +IkReal x4995=((cj6)*(r10)); +IkReal x4996=((cj5)*(sj6)); +IkReal x4997=((cj5)*(r01)); +IkReal x4998=((sj0)*(x4983)); +IkReal x4999=((r00)*(x4996)); +IkReal x5000=((cj0)*(x4983)); +IkReal x5001=((sj0)*(x4984)); +IkReal x5002=((r20)*(x4984)); +IkReal x5003=((cj0)*(x4984)); +IkReal x5004=((r21)*(x4983)); +IkReal x5005=((r21)*(x4984)); +IkReal x5006=((r20)*(x4983)); +IkReal x5007=((x4984)*(x4993)); +IkReal x5008=((r01)*(sj6)*(x4984)); +IkReal x5009=((cj5)*(r10)*(x4991)); +evalcond[0]=((IkReal(-1.00000000000000))+(((sj6)*(x5005)))+(((x4996)*(x5006)))+(((x4983)*(x4985)))+(((x4989)*(x5004)))+(((IkReal(-1.00000000000000))*(x4986)*(x5002)))); +evalcond[1]=((((x4989)*(x5005)))+(((x4984)*(x4985)))+(((IkReal(-1.00000000000000))*(x4991)*(x5004)))+(((cj6)*(x5006)))+(((x4996)*(x5002)))); +evalcond[2]=((((r01)*(x4989)*(x4998)))+(((IkReal(-1.00000000000000))*(x4986)*(x4988)*(x5000)))+(((x4994)*(x4998)))+(((x4998)*(x4999)))+(((IkReal(-1.00000000000000))*(r10)*(x4983)*(x4987)*(x4996)))+(((IkReal(-1.00000000000000))*(x4984)*(x4987)*(x4990)))+(((IkReal(-1.00000000000000))*(x4983)*(x4987)*(x4993)))+(((x4995)*(x5003)))+(((IkReal(-1.00000000000000))*(r00)*(x4986)*(x5001)))+(((r01)*(sj6)*(x5001)))); +evalcond[3]=((((x4994)*(x5001)))+(((IkReal(-1.00000000000000))*(r10)*(x4986)*(x5000)))+(((IkReal(-1.00000000000000))*(r10)*(x4984)*(x4987)*(x4996)))+(((IkReal(-1.00000000000000))*(x4987)*(x5007)))+(((x4990)*(x5000)))+(((r01)*(x4989)*(x5001)))+(((IkReal(-1.00000000000000))*(r01)*(x4991)*(x4998)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(x4986)*(x4988)*(x5003)))+(((x4999)*(x5001)))+(((x4992)*(x4998)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x4993)*(x4998)))+(((IkReal(-1.00000000000000))*(x4983)*(x4987)*(x4999)))+(((IkReal(-1.00000000000000))*(x4987)*(x5008)))+(((IkReal(-1.00000000000000))*(x4986)*(x4988)*(x4998)))+(((IkReal(-1.00000000000000))*(x4990)*(x5001)))+(((IkReal(-1.00000000000000))*(x4983)*(x4987)*(x4994)))+(((x4992)*(x5003)))+(((IkReal(-1.00000000000000))*(x4998)*(x5009)))+(((x4995)*(x5001)))+(((IkReal(-1.00000000000000))*(x4986)*(x4997)*(x5000)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x4984)*(x4987)*(x4999)))+(sj3)+(((IkReal(-1.00000000000000))*(x5001)*(x5009)))+(((r01)*(sj6)*(x5000)))+(((IkReal(-1.00000000000000))*(x4993)*(x5001)))+(((IkReal(-1.00000000000000))*(x4986)*(x4997)*(x5003)))+(((IkReal(-1.00000000000000))*(x4984)*(x4987)*(x4994)))+(((IkReal(-1.00000000000000))*(x4986)*(x4988)*(x5001)))+(((IkReal(-1.00000000000000))*(r10)*(x4986)*(x4998)))+(((x4990)*(x4998)))+(((IkReal(-1.00000000000000))*(r00)*(x4986)*(x5000)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5010=((sj5)*(sj6)); +IkReal x5011=((IkReal(1.00000000000000))*(sj0)); +IkReal x5012=((cj6)*(sj5)); +IkReal x5013=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r01)*(x5011)*(x5012)))+(((IkReal(-1.00000000000000))*(r00)*(x5010)*(x5011)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5013)))+(((cj0)*(r11)*(x5012)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x5010))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5012)))+(((IkReal(-1.00000000000000))*(r22)*(x5013)))+(((r20)*(x5010))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x5011)*(x5012)))+(((IkReal(-1.00000000000000))*(r00)*(x5010)*(x5011)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5013)))+(((cj0)*(r11)*(x5012)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x5010)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5012)))+(((IkReal(-1.00000000000000))*(r22)*(x5013)))+(((r20)*(x5010)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r01)*(x5011)*(x5012)))+(((IkReal(-1.00000000000000))*(r00)*(x5010)*(x5011)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5013)))+(((cj0)*(r11)*(x5012)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x5010)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5012)))+(((IkReal(-1.00000000000000))*(r22)*(x5013)))+(((r20)*(x5010))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x5014=IKcos(j3); +IkReal x5015=((sj5)*(sj6)); +IkReal x5016=((cj0)*(cj5)); +IkReal x5017=((IkReal(1.00000000000000))*(cj0)); +IkReal x5018=((IkReal(1.00000000000000))*(sj0)); +IkReal x5019=((IkReal(1.00000000000000))*(x5014)); +IkReal x5020=((cj6)*(r01)*(sj5)); +IkReal x5021=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x5019)))+(((r20)*(x5015)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((sj0)*(x5020)))+(((IkReal(-1.00000000000000))*(x5017)*(x5021)))+(((r12)*(x5016)))+(((r00)*(sj0)*(x5015)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x5018)))+(((IkReal(-1.00000000000000))*(r10)*(x5015)*(x5017)))+(IKsin(j3))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x5015)*(x5017)))+(((cj5)*(r12)*(sj0)))+(((r02)*(x5016)))+(((IkReal(-1.00000000000000))*(x5018)*(x5021)))+(((IkReal(-1.00000000000000))*(cj1)*(x5019)))+(((IkReal(-1.00000000000000))*(r10)*(x5015)*(x5018)))+(((IkReal(-1.00000000000000))*(x5017)*(x5020)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst28; +IkReal x5022=(r21)*(r21); +IkReal x5023=(cj5)*(cj5); +IkReal x5024=(sj6)*(sj6); +IkReal x5025=(cj6)*(cj6); +IkReal x5026=(r20)*(r20); +IkReal x5027=((cj6)*(r21)); +IkReal x5028=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x5029=((cj5)*(r22)*(sj5)); +IkReal x5030=((IkReal(1.00000000000000))*(x5024)); +IkReal x5031=((IkReal(1.00000000000000))*(x5025)); +gconst28=IKsign(((((IkReal(-1.00000000000000))*(x5026)*(x5031)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x5022)*(x5030)))+(((IkReal(-1.00000000000000))*(x5023)*(x5026)*(x5030)))+(((IkReal(-2.00000000000000))*(x5027)*(x5029)))+(((x5027)*(x5028)))+(((IkReal(-1.00000000000000))*(x5022)*(x5023)*(x5031)))+(((IkReal(-1.00000000000000))*(x5023)*(x5027)*(x5028)))+(((IkReal(-1.00000000000000))*(x5028)*(x5029))))); +IkReal x5032=(r21)*(r21); +IkReal x5033=(cj5)*(cj5); +IkReal x5034=(sj6)*(sj6); +IkReal x5035=(cj6)*(cj6); +IkReal x5036=(r20)*(r20); +IkReal x5037=((cj6)*(r21)); +IkReal x5038=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x5039=((cj5)*(r22)*(sj5)); +IkReal x5040=((IkReal(1.00000000000000))*(x5034)); +IkReal x5041=((IkReal(1.00000000000000))*(x5035)); +dummyeval[0]=((((x5037)*(x5038)))+(((IkReal(-1.00000000000000))*(x5038)*(x5039)))+(((IkReal(-1.00000000000000))*(x5036)*(x5041)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x5032)*(x5033)*(x5041)))+(((IkReal(-1.00000000000000))*(x5033)*(x5037)*(x5038)))+(((IkReal(-2.00000000000000))*(x5037)*(x5039)))+(((IkReal(-1.00000000000000))*(x5032)*(x5040)))+(((IkReal(-1.00000000000000))*(x5033)*(x5036)*(x5040)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst29; +IkReal x5042=(cj6)*(cj6); +IkReal x5043=(sj6)*(sj6); +IkReal x5044=((IkReal(1.00000000000000))*(r01)); +IkReal x5045=((sj0)*(sj5)); +IkReal x5046=((cj6)*(r22)); +IkReal x5047=((r21)*(sj6)); +IkReal x5048=((r00)*(r21)); +IkReal x5049=((cj0)*(sj5)); +IkReal x5050=((cj6)*(r20)); +IkReal x5051=((r22)*(sj6)); +IkReal x5052=((cj0)*(cj5)); +IkReal x5053=((IkReal(1.00000000000000))*(r10)); +IkReal x5054=((cj5)*(sj0)); +IkReal x5055=((r20)*(x5043)); +IkReal x5056=((x5042)*(x5054)); +gconst29=IKsign(((((r11)*(r20)*(x5042)*(x5052)))+(((r00)*(x5045)*(x5046)))+(((IkReal(-1.00000000000000))*(x5046)*(x5049)*(x5053)))+(((IkReal(-1.00000000000000))*(r12)*(x5047)*(x5049)))+(((r11)*(x5052)*(x5055)))+(((IkReal(-1.00000000000000))*(r20)*(x5044)*(x5056)))+(((r02)*(x5045)*(x5047)))+(((IkReal(-1.00000000000000))*(r21)*(x5042)*(x5052)*(x5053)))+(((IkReal(-1.00000000000000))*(x5044)*(x5045)*(x5051)))+(((IkReal(-1.00000000000000))*(r21)*(x5043)*(x5052)*(x5053)))+(((r12)*(x5049)*(x5050)))+(((IkReal(-1.00000000000000))*(r02)*(x5045)*(x5050)))+(((x5043)*(x5048)*(x5054)))+(((x5048)*(x5056)))+(((IkReal(-1.00000000000000))*(x5044)*(x5054)*(x5055)))+(((r11)*(x5049)*(x5051))))); +IkReal x5057=(cj6)*(cj6); +IkReal x5058=(sj6)*(sj6); +IkReal x5059=((IkReal(1.00000000000000))*(r01)); +IkReal x5060=((sj0)*(sj5)); +IkReal x5061=((cj6)*(r22)); +IkReal x5062=((r21)*(sj6)); +IkReal x5063=((r00)*(r21)); +IkReal x5064=((cj0)*(sj5)); +IkReal x5065=((cj6)*(r20)); +IkReal x5066=((r22)*(sj6)); +IkReal x5067=((cj0)*(cj5)); +IkReal x5068=((IkReal(1.00000000000000))*(r10)); +IkReal x5069=((cj5)*(sj0)); +IkReal x5070=((r20)*(x5058)); +IkReal x5071=((x5057)*(x5069)); +dummyeval[0]=((((r02)*(x5060)*(x5062)))+(((x5058)*(x5063)*(x5069)))+(((IkReal(-1.00000000000000))*(x5061)*(x5064)*(x5068)))+(((r11)*(r20)*(x5057)*(x5067)))+(((IkReal(-1.00000000000000))*(r12)*(x5062)*(x5064)))+(((r11)*(x5064)*(x5066)))+(((r11)*(x5067)*(x5070)))+(((IkReal(-1.00000000000000))*(r02)*(x5060)*(x5065)))+(((x5063)*(x5071)))+(((r00)*(x5060)*(x5061)))+(((r12)*(x5064)*(x5065)))+(((IkReal(-1.00000000000000))*(r21)*(x5058)*(x5067)*(x5068)))+(((IkReal(-1.00000000000000))*(x5059)*(x5069)*(x5070)))+(((IkReal(-1.00000000000000))*(x5059)*(x5060)*(x5066)))+(((IkReal(-1.00000000000000))*(r21)*(x5057)*(x5067)*(x5068)))+(((IkReal(-1.00000000000000))*(r20)*(x5059)*(x5071)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5072=((cj1)*(cj6)); +IkReal x5073=((IkReal(1.00000000000000))*(sj0)); +IkReal x5074=((cj0)*(r10)); +IkReal x5075=((cj1)*(sj5)); +IkReal x5076=((cj1)*(sj6)); +IkReal x5077=((cj0)*(r11)); +if( IKabs(((gconst29)*(((((IkReal(-1.00000000000000))*(x5076)*(x5077)))+(((x5072)*(x5074)))+(((r01)*(sj0)*(x5076)))+(((IkReal(-1.00000000000000))*(r00)*(x5072)*(x5073))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst29)*(((((cj5)*(x5074)*(x5076)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5073)*(x5076)))+(((cj5)*(x5072)*(x5077)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5072)*(x5073)))+(((IkReal(-1.00000000000000))*(r02)*(x5073)*(x5075)))+(((cj0)*(r12)*(x5075))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst29)*(((((IkReal(-1.00000000000000))*(x5076)*(x5077)))+(((x5072)*(x5074)))+(((r01)*(sj0)*(x5076)))+(((IkReal(-1.00000000000000))*(r00)*(x5072)*(x5073)))))), ((gconst29)*(((((cj5)*(x5074)*(x5076)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5073)*(x5076)))+(((cj5)*(x5072)*(x5077)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5072)*(x5073)))+(((IkReal(-1.00000000000000))*(r02)*(x5073)*(x5075)))+(((cj0)*(r12)*(x5075))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x5078=IKsin(j4); +IkReal x5079=IKcos(j4); +IkReal x5080=((r22)*(sj5)); +IkReal x5081=((IkReal(1.00000000000000))*(cj6)); +IkReal x5082=((IkReal(1.00000000000000))*(cj0)); +IkReal x5083=((IkReal(1.00000000000000))*(sj1)); +IkReal x5084=((cj5)*(r11)); +IkReal x5085=((cj5)*(cj6)); +IkReal x5086=((r11)*(sj6)); +IkReal x5087=((IkReal(1.00000000000000))*(sj6)); +IkReal x5088=((cj6)*(r00)); +IkReal x5089=((r12)*(sj5)); +IkReal x5090=((r02)*(sj5)); +IkReal x5091=((cj6)*(r10)); +IkReal x5092=((cj5)*(sj6)); +IkReal x5093=((cj5)*(r01)); +IkReal x5094=((sj0)*(x5078)); +IkReal x5095=((r00)*(x5092)); +IkReal x5096=((cj0)*(x5078)); +IkReal x5097=((sj0)*(x5079)); +IkReal x5098=((r20)*(x5079)); +IkReal x5099=((cj0)*(x5079)); +IkReal x5100=((r21)*(x5078)); +IkReal x5101=((r21)*(x5079)); +IkReal x5102=((r20)*(x5078)); +IkReal x5103=((x5079)*(x5089)); +IkReal x5104=((r01)*(sj6)*(x5079)); +IkReal x5105=((cj5)*(r10)*(x5087)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x5081)*(x5098)))+(((x5085)*(x5100)))+(((x5092)*(x5102)))+(cj1)+(((sj6)*(x5101)))+(((x5078)*(x5080)))); +evalcond[1]=((((x5085)*(x5101)))+(((x5079)*(x5080)))+(((x5092)*(x5098)))+(((IkReal(-1.00000000000000))*(sj3)*(x5083)))+(((IkReal(-1.00000000000000))*(x5087)*(x5100)))+(((cj6)*(x5102)))); +evalcond[2]=((((x5090)*(x5094)))+(((x5091)*(x5099)))+(((r01)*(sj6)*(x5097)))+(((IkReal(-1.00000000000000))*(x5078)*(x5082)*(x5089)))+(((IkReal(-1.00000000000000))*(x5079)*(x5082)*(x5086)))+(((IkReal(-1.00000000000000))*(r00)*(x5081)*(x5097)))+(((r01)*(x5085)*(x5094)))+(((IkReal(-1.00000000000000))*(r10)*(x5078)*(x5082)*(x5092)))+(((IkReal(-1.00000000000000))*(x5081)*(x5084)*(x5096)))+(((x5094)*(x5095)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5082)*(x5103)))+(((IkReal(-1.00000000000000))*(r10)*(x5081)*(x5096)))+(((IkReal(-1.00000000000000))*(x5081)*(x5084)*(x5099)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x5095)*(x5097)))+(((x5086)*(x5096)))+(((IkReal(-1.00000000000000))*(r01)*(x5087)*(x5094)))+(((r01)*(x5085)*(x5097)))+(((x5090)*(x5097)))+(((x5088)*(x5094)))+(((IkReal(-1.00000000000000))*(r10)*(x5079)*(x5082)*(x5092)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5094)*(x5105)))+(((IkReal(-1.00000000000000))*(x5082)*(x5104)))+(((IkReal(-1.00000000000000))*(x5086)*(x5097)))+(((IkReal(-1.00000000000000))*(x5081)*(x5093)*(x5096)))+(((IkReal(-1.00000000000000))*(x5089)*(x5094)))+(((IkReal(-1.00000000000000))*(x5081)*(x5084)*(x5094)))+(((x5091)*(x5097)))+(((x5088)*(x5099)))+(((IkReal(-1.00000000000000))*(x5078)*(x5082)*(x5090)))+(((IkReal(-1.00000000000000))*(x5078)*(x5082)*(x5095)))+(((IkReal(-1.00000000000000))*(x5083)))); +evalcond[5]=((((x5086)*(x5094)))+(((IkReal(-1.00000000000000))*(r00)*(x5081)*(x5096)))+(((IkReal(-1.00000000000000))*(r10)*(x5081)*(x5094)))+(((r01)*(sj6)*(x5096)))+(((IkReal(-1.00000000000000))*(cj1)*(sj3)))+(((IkReal(-1.00000000000000))*(x5081)*(x5093)*(x5099)))+(((IkReal(-1.00000000000000))*(x5079)*(x5082)*(x5090)))+(((IkReal(-1.00000000000000))*(x5079)*(x5082)*(x5095)))+(((IkReal(-1.00000000000000))*(x5081)*(x5084)*(x5097)))+(((IkReal(-1.00000000000000))*(x5097)*(x5105)))+(((IkReal(-1.00000000000000))*(x5089)*(x5097)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5106=((cj1)*(r20)); +IkReal x5107=((cj5)*(sj6)); +IkReal x5108=((sj1)*(sj3)); +IkReal x5109=((r21)*(sj6)); +IkReal x5110=((r22)*(sj5)); +IkReal x5111=((IkReal(1.00000000000000))*(cj6)); +IkReal x5112=((cj5)*(r21)); +if( IKabs(((gconst28)*(((((cj1)*(x5110)))+(((x5106)*(x5107)))+(((IkReal(-1.00000000000000))*(r20)*(x5108)*(x5111)))+(((x5108)*(x5109)))+(((cj1)*(cj6)*(x5112))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst28)*(((((IkReal(-1.00000000000000))*(r20)*(x5107)*(x5108)))+(((IkReal(-1.00000000000000))*(x5108)*(x5111)*(x5112)))+(((IkReal(-1.00000000000000))*(x5108)*(x5110)))+(((cj1)*(x5109)))+(((IkReal(-1.00000000000000))*(x5106)*(x5111))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst28)*(((((cj1)*(x5110)))+(((x5106)*(x5107)))+(((IkReal(-1.00000000000000))*(r20)*(x5108)*(x5111)))+(((x5108)*(x5109)))+(((cj1)*(cj6)*(x5112)))))), ((gconst28)*(((((IkReal(-1.00000000000000))*(r20)*(x5107)*(x5108)))+(((IkReal(-1.00000000000000))*(x5108)*(x5111)*(x5112)))+(((IkReal(-1.00000000000000))*(x5108)*(x5110)))+(((cj1)*(x5109)))+(((IkReal(-1.00000000000000))*(x5106)*(x5111))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x5113=IKsin(j4); +IkReal x5114=IKcos(j4); +IkReal x5115=((r22)*(sj5)); +IkReal x5116=((IkReal(1.00000000000000))*(cj6)); +IkReal x5117=((IkReal(1.00000000000000))*(cj0)); +IkReal x5118=((IkReal(1.00000000000000))*(sj1)); +IkReal x5119=((cj5)*(r11)); +IkReal x5120=((cj5)*(cj6)); +IkReal x5121=((r11)*(sj6)); +IkReal x5122=((IkReal(1.00000000000000))*(sj6)); +IkReal x5123=((cj6)*(r00)); +IkReal x5124=((r12)*(sj5)); +IkReal x5125=((r02)*(sj5)); +IkReal x5126=((cj6)*(r10)); +IkReal x5127=((cj5)*(sj6)); +IkReal x5128=((cj5)*(r01)); +IkReal x5129=((sj0)*(x5113)); +IkReal x5130=((r00)*(x5127)); +IkReal x5131=((cj0)*(x5113)); +IkReal x5132=((sj0)*(x5114)); +IkReal x5133=((r20)*(x5114)); +IkReal x5134=((cj0)*(x5114)); +IkReal x5135=((r21)*(x5113)); +IkReal x5136=((r21)*(x5114)); +IkReal x5137=((r20)*(x5113)); +IkReal x5138=((x5114)*(x5124)); +IkReal x5139=((r01)*(sj6)*(x5114)); +IkReal x5140=((cj5)*(r10)*(x5122)); +evalcond[0]=((((x5127)*(x5137)))+(((x5113)*(x5115)))+(((x5120)*(x5135)))+(cj1)+(((IkReal(-1.00000000000000))*(x5116)*(x5133)))+(((sj6)*(x5136)))); +evalcond[1]=((((cj6)*(x5137)))+(((x5114)*(x5115)))+(((x5127)*(x5133)))+(((IkReal(-1.00000000000000))*(x5122)*(x5135)))+(((x5120)*(x5136)))+(((IkReal(-1.00000000000000))*(sj3)*(x5118)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5113)*(x5117)*(x5124)))+(((IkReal(-1.00000000000000))*(x5116)*(x5119)*(x5131)))+(((x5125)*(x5129)))+(((x5129)*(x5130)))+(((IkReal(-1.00000000000000))*(x5114)*(x5117)*(x5121)))+(((x5126)*(x5134)))+(((r01)*(sj6)*(x5132)))+(((IkReal(-1.00000000000000))*(r10)*(x5113)*(x5117)*(x5127)))+(((r01)*(x5120)*(x5129)))+(((IkReal(-1.00000000000000))*(r00)*(x5116)*(x5132)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x5116)*(x5131)))+(((IkReal(-1.00000000000000))*(r10)*(x5114)*(x5117)*(x5127)))+(((x5130)*(x5132)))+(((IkReal(-1.00000000000000))*(x5117)*(x5138)))+(((IkReal(-1.00000000000000))*(x5116)*(x5119)*(x5134)))+(((x5123)*(x5129)))+(((r01)*(x5120)*(x5132)))+(((x5121)*(x5131)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(r01)*(x5122)*(x5129)))+(((x5125)*(x5132)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5116)*(x5119)*(x5129)))+(((IkReal(-1.00000000000000))*(x5129)*(x5140)))+(((IkReal(-1.00000000000000))*(x5113)*(x5117)*(x5125)))+(((x5126)*(x5132)))+(((IkReal(-1.00000000000000))*(x5117)*(x5139)))+(((IkReal(-1.00000000000000))*(x5113)*(x5117)*(x5130)))+(((IkReal(-1.00000000000000))*(x5124)*(x5129)))+(((IkReal(-1.00000000000000))*(x5121)*(x5132)))+(((IkReal(-1.00000000000000))*(x5118)))+(((x5123)*(x5134)))+(((IkReal(-1.00000000000000))*(x5116)*(x5128)*(x5131)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5116)*(x5128)*(x5134)))+(((IkReal(-1.00000000000000))*(x5114)*(x5117)*(x5125)))+(((IkReal(-1.00000000000000))*(x5114)*(x5117)*(x5130)))+(((IkReal(-1.00000000000000))*(x5116)*(x5119)*(x5132)))+(((IkReal(-1.00000000000000))*(r00)*(x5116)*(x5131)))+(((x5121)*(x5129)))+(((IkReal(-1.00000000000000))*(r10)*(x5116)*(x5129)))+(((IkReal(-1.00000000000000))*(cj1)*(sj3)))+(((IkReal(-1.00000000000000))*(x5132)*(x5140)))+(((r01)*(sj6)*(x5131)))+(((IkReal(-1.00000000000000))*(x5124)*(x5132)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5141=((IkReal(1.00000000000000))*(sj1)); +IkReal x5142=((cj0)*(cj1)); +IkReal x5143=((cj1)*(sj0)); +IkReal x5144=((cj5)*(sj6)); +IkReal x5145=((cj5)*(cj6)); +IkReal x5146=((sj6)*(x5142)); +IkReal x5147=((cj6)*(x5143)); +if( IKabs(((gconst27)*(((((IkReal(-1.00000000000000))*(r11)*(sj6)*(x5143)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(x5141)))+(((r10)*(x5147)))+(((IkReal(-1.00000000000000))*(r01)*(x5146)))+(((cj6)*(r00)*(x5142)))+(((r21)*(sj1)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst27)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x5141)))+(((r01)*(x5142)*(x5145)))+(((r12)*(sj5)*(x5143)))+(((IkReal(-1.00000000000000))*(r20)*(x5141)*(x5144)))+(((r11)*(x5143)*(x5145)))+(((r00)*(x5142)*(x5144)))+(((r02)*(sj5)*(x5142)))+(((IkReal(-1.00000000000000))*(r21)*(x5141)*(x5145)))+(((r10)*(x5143)*(x5144))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst27)*(((((IkReal(-1.00000000000000))*(r11)*(sj6)*(x5143)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(x5141)))+(((r10)*(x5147)))+(((IkReal(-1.00000000000000))*(r01)*(x5146)))+(((cj6)*(r00)*(x5142)))+(((r21)*(sj1)*(sj6)))))), ((gconst27)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x5141)))+(((r01)*(x5142)*(x5145)))+(((r12)*(sj5)*(x5143)))+(((IkReal(-1.00000000000000))*(r20)*(x5141)*(x5144)))+(((r11)*(x5143)*(x5145)))+(((r00)*(x5142)*(x5144)))+(((r02)*(sj5)*(x5142)))+(((IkReal(-1.00000000000000))*(r21)*(x5141)*(x5145)))+(((r10)*(x5143)*(x5144))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x5148=IKsin(j4); +IkReal x5149=IKcos(j4); +IkReal x5150=((r00)*(sj6)); +IkReal x5151=((cj6)*(r01)); +IkReal x5152=((IkReal(1.00000000000000))*(cj0)); +IkReal x5153=((IkReal(1.00000000000000))*(sj0)); +IkReal x5154=((r10)*(sj6)); +IkReal x5155=((sj5)*(x5148)); +IkReal x5156=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x5157=((cj5)*(x5148)); +IkReal x5158=((cj6)*(x5149)); +IkReal x5159=((sj0)*(x5157)); +IkReal x5160=((r01)*(sj6)*(x5149)); +IkReal x5161=((r11)*(sj6)*(x5149)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r20)*(x5158)))+(((r21)*(sj6)*(x5149)))+(((r20)*(sj6)*(x5157)))+(cj1)+(((r22)*(x5155)))+(((cj6)*(r21)*(x5157)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r00)*(x5153)*(x5158)))+(((IkReal(-1.00000000000000))*(r12)*(x5152)*(x5155)))+(((IkReal(-1.00000000000000))*(x5152)*(x5154)*(x5157)))+(((x5150)*(x5159)))+(((x5151)*(x5159)))+(((cj0)*(r10)*(x5158)))+(((r02)*(sj0)*(x5155)))+(((sj0)*(x5160)))+(((IkReal(-1.00000000000000))*(x5152)*(x5161)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5152)*(x5157)))); +evalcond[2]=((((r10)*(sj0)*(x5158)))+(((cj0)*(r00)*(x5158)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5153)*(x5157)))+(((IkReal(-1.00000000000000))*(x5151)*(x5152)*(x5157)))+(((IkReal(-1.00000000000000))*(x5152)*(x5160)))+(((IkReal(-1.00000000000000))*(x5153)*(x5154)*(x5157)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(x5150)*(x5152)*(x5157)))+(((IkReal(-1.00000000000000))*(r02)*(x5152)*(x5155)))+(((IkReal(-1.00000000000000))*(r12)*(x5153)*(x5155)))+(((IkReal(-1.00000000000000))*(x5153)*(x5161)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst30; +gconst30=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x5162=((IkReal(1.00000000000000))*(cj0)); +IkReal x5163=((cj4)*(sj6)); +IkReal x5164=((sj0)*(sj6)); +IkReal x5165=((cj5)*(sj4)); +IkReal x5166=((IkReal(0.374290000000000))*(sj5)); +IkReal x5167=((sj4)*(sj5)); +IkReal x5168=((cj0)*(cj6)); +IkReal x5169=((IkReal(0.0100000000000000))*(cj5)); +IkReal x5170=((cj4)*(sj5)); +IkReal x5171=((cj5)*(sj0)); +IkReal x5172=((IkReal(0.374290000000000))*(r02)); +IkReal x5173=((r20)*(sj6)); +IkReal x5174=((cj6)*(r21)); +IkReal x5175=((IkReal(1.00000000000000))*(sj0)); +IkReal x5176=((cj0)*(sj6)); +IkReal x5177=((cj4)*(cj6)); +IkReal x5178=((IkReal(0.374290000000000))*(r12)); +IkReal x5179=((cj0)*(cj5)); +IkReal x5180=((cj6)*(sj5)); +IkReal x5181=((cj6)*(r01)); +IkReal x5182=((r00)*(sj6)); +IkReal x5183=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5184=((cj6)*(r11)); +IkReal x5185=((IkReal(1.00000000000000))*(r10)); +IkReal x5186=((r02)*(sj0)); +IkReal x5187=((cj6)*(sj4)); +IkReal x5188=((r12)*(x5175)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x5177)))+(((r21)*(x5163)))+(((x5165)*(x5173)))+(((r22)*(x5167)))+(((x5165)*(x5174)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x5166)*(x5174)))+(((IkReal(-1.00000000000000))*(x5169)*(x5174)))+(((IkReal(-1.00000000000000))*(x5169)*(x5173)))+(((IkReal(-1.00000000000000))*(r22)*(x5183)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x5166)*(x5173)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x5164)*(x5185)))+(((IkReal(-1.00000000000000))*(sj5)*(x5162)*(x5182)))+(((r02)*(x5179)))+(((IkReal(-1.00000000000000))*(r01)*(x5162)*(x5180)))+(((IkReal(-1.00000000000000))*(r11)*(x5175)*(x5180)))+(((r12)*(x5171)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r11)*(x5162)*(x5163)))+(((cj4)*(r10)*(x5168)))+(((x5167)*(x5186)))+(((IkReal(-1.00000000000000))*(x5162)*(x5165)*(x5184)))+(((r00)*(x5164)*(x5165)))+(((IkReal(-1.00000000000000))*(r00)*(x5175)*(x5177)))+(((r01)*(sj0)*(x5163)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x5162)*(x5165)))+(((sj0)*(x5165)*(x5181)))+(((IkReal(-1.00000000000000))*(r12)*(x5162)*(x5167)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x5162)*(x5163)))+(((IkReal(-1.00000000000000))*(x5162)*(x5165)*(x5181)))+(((IkReal(-1.00000000000000))*(r02)*(x5162)*(x5167)))+(((r10)*(sj0)*(x5177)))+(((IkReal(-1.00000000000000))*(x5165)*(x5175)*(x5184)))+(((IkReal(-1.00000000000000))*(x5167)*(x5188)))+(((IkReal(-1.00000000000000))*(x5162)*(x5165)*(x5182)))+(((cj4)*(r00)*(x5168)))+(((IkReal(-1.00000000000000))*(r11)*(x5163)*(x5175)))+(((IkReal(-1.00000000000000))*(x5164)*(x5165)*(x5185)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r11)*(x5168)*(x5169)))+(((r10)*(x5169)*(x5176)))+(((IkReal(-1.00000000000000))*(py)*(x5162)))+(((IkReal(-1.00000000000000))*(r10)*(x5166)*(x5176)))+(((r00)*(x5164)*(x5166)))+(((x5178)*(x5179)))+(((IkReal(-1.00000000000000))*(x5171)*(x5172)))+(((cj0)*(r12)*(x5183)))+(((IkReal(-1.00000000000000))*(r11)*(x5166)*(x5168)))+(((IkReal(-1.00000000000000))*(r00)*(x5164)*(x5169)))+(((IkReal(-1.00000000000000))*(x5183)*(x5186)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x5169)*(x5181)))+(((sj0)*(x5166)*(x5181)))); +evalcond[7]=((((r01)*(sj4)*(x5176)))+(((IkReal(-1.00000000000000))*(r10)*(x5175)*(x5187)))+(((IkReal(-1.00000000000000))*(x5170)*(x5188)))+(((IkReal(-1.00000000000000))*(r11)*(x5171)*(x5177)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5162)*(x5163)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5162)*(x5177)))+(((IkReal(-1.00000000000000))*(x5163)*(x5171)*(x5185)))+(((IkReal(-1.00000000000000))*(r00)*(x5162)*(x5187)))+(((r11)*(sj4)*(x5164)))+(((IkReal(-1.00000000000000))*(r02)*(x5162)*(x5170)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x5166)*(x5168)))+(((r12)*(sj0)*(x5183)))+(((IkReal(-1.00000000000000))*(r00)*(x5166)*(x5176)))+(((r00)*(x5169)*(x5176)))+(((r01)*(x5168)*(x5169)))+(((r10)*(x5164)*(x5169)))+(((IkReal(-1.00000000000000))*(px)*(x5162)))+(((sj0)*(x5169)*(x5184)))+(((cj0)*(r02)*(x5183)))+(((IkReal(-1.00000000000000))*(r10)*(x5164)*(x5166)))+(((IkReal(-1.00000000000000))*(py)*(x5175)))+(((IkReal(-1.00000000000000))*(sj0)*(x5166)*(x5184)))+(((x5172)*(x5179)))+(((x5171)*(x5178)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5189=((r20)*(sj6)); +IkReal x5190=((cj4)*(cj5)); +IkReal x5191=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5189)*(x5190)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5190)*(x5191))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x5189)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5191))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5189)*(x5190)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5190)*(x5191)))))+IKsqr(((((sj5)*(x5189)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5191)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5189)*(x5190)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5190)*(x5191)))), ((((sj5)*(x5189)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5191))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5192=IKsin(j3); +IkReal x5193=((sj0)*(sj5)); +IkReal x5194=((r00)*(sj6)); +IkReal x5195=((cj6)*(r01)); +IkReal x5196=((cj5)*(sj0)); +IkReal x5197=((cj0)*(cj5)); +IkReal x5198=((cj6)*(sj4)); +IkReal x5199=((sj4)*(sj6)); +IkReal x5200=((cj0)*(r11)); +IkReal x5201=((cj4)*(cj6)); +IkReal x5202=((cj4)*(sj6)); +IkReal x5203=((IkReal(1.00000000000000))*(cj0)); +IkReal x5204=((cj4)*(sj5)); +IkReal x5205=((sj5)*(sj6)); +IkReal x5206=((cj6)*(sj5)); +IkReal x5207=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(x5207)))+(((r21)*(x5206)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x5205)))); +evalcond[1]=((((cj5)*(r21)*(x5201)))+(((cj5)*(r20)*(x5202)))+(((IkReal(-1.00000000000000))*(r21)*(x5199)))+(((r22)*(x5204)))+(((IkReal(-1.00000000000000))*(x5192)))+(((r20)*(x5198)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5200)*(x5206)))+(x5192)+(((r12)*(x5197)))+(((IkReal(-1.00000000000000))*(r10)*(x5203)*(x5205)))+(((x5193)*(x5194)))+(((IkReal(-1.00000000000000))*(r02)*(x5196)))+(((x5193)*(x5195)))); +evalcond[3]=((((x5199)*(x5200)))+(((cj4)*(x5195)*(x5196)))+(((IkReal(-1.00000000000000))*(r11)*(x5197)*(x5201)))+(((IkReal(-1.00000000000000))*(r10)*(x5197)*(x5202)))+(((IkReal(-1.00000000000000))*(x5207)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x5199)))+(((IkReal(-1.00000000000000))*(r10)*(x5198)*(x5203)))+(((cj4)*(r02)*(x5193)))+(((IkReal(-1.00000000000000))*(r12)*(x5203)*(x5204)))+(((cj4)*(x5194)*(x5196)))+(((r00)*(sj0)*(x5198)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5208=((IkReal(1.00000000000000))*(cj0)); +IkReal x5209=((cj4)*(sj6)); +IkReal x5210=((sj0)*(sj6)); +IkReal x5211=((cj5)*(sj4)); +IkReal x5212=((IkReal(0.374290000000000))*(sj5)); +IkReal x5213=((sj4)*(sj5)); +IkReal x5214=((cj0)*(cj6)); +IkReal x5215=((IkReal(0.0100000000000000))*(cj5)); +IkReal x5216=((cj4)*(sj5)); +IkReal x5217=((cj5)*(sj0)); +IkReal x5218=((IkReal(0.374290000000000))*(r02)); +IkReal x5219=((r20)*(sj6)); +IkReal x5220=((cj6)*(r21)); +IkReal x5221=((IkReal(1.00000000000000))*(sj0)); +IkReal x5222=((cj0)*(sj6)); +IkReal x5223=((cj4)*(cj6)); +IkReal x5224=((IkReal(0.374290000000000))*(r12)); +IkReal x5225=((cj0)*(cj5)); +IkReal x5226=((cj6)*(sj5)); +IkReal x5227=((cj6)*(r01)); +IkReal x5228=((r00)*(sj6)); +IkReal x5229=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5230=((cj6)*(r11)); +IkReal x5231=((IkReal(1.00000000000000))*(r10)); +IkReal x5232=((r02)*(sj0)); +IkReal x5233=((cj6)*(sj4)); +IkReal x5234=((r12)*(x5221)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x5223)))+(((x5211)*(x5220)))+(((r22)*(x5213)))+(((r21)*(x5209)))+(((x5211)*(x5219)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(r22)*(x5229)))+(((IkReal(-1.00000000000000))*(x5215)*(x5220)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x5215)*(x5219)))+(pz)+(((x5212)*(x5219)))+(((x5212)*(x5220)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x5210)*(x5231)))+(((IkReal(-1.00000000000000))*(r01)*(x5208)*(x5226)))+(((IkReal(-1.00000000000000))*(r11)*(x5221)*(x5226)))+(((r12)*(x5217)))+(((r02)*(x5225)))+(((IkReal(-1.00000000000000))*(sj5)*(x5208)*(x5228)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x5208)*(x5213)))+(((r01)*(sj0)*(x5209)))+(((IkReal(-1.00000000000000))*(x5208)*(x5211)*(x5230)))+(((sj0)*(x5211)*(x5227)))+(((IkReal(-1.00000000000000))*(r00)*(x5221)*(x5223)))+(((IkReal(-1.00000000000000))*(r11)*(x5208)*(x5209)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x5208)*(x5211)))+(((cj4)*(r10)*(x5214)))+(((r00)*(x5210)*(x5211)))+(((x5213)*(x5232)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x5208)*(x5211)*(x5228)))+(((IkReal(-1.00000000000000))*(r01)*(x5208)*(x5209)))+(((IkReal(-1.00000000000000))*(r02)*(x5208)*(x5213)))+(((IkReal(-1.00000000000000))*(r11)*(x5209)*(x5221)))+(((IkReal(-1.00000000000000))*(x5210)*(x5211)*(x5231)))+(((IkReal(-1.00000000000000))*(x5208)*(x5211)*(x5227)))+(((IkReal(-1.00000000000000))*(x5211)*(x5221)*(x5230)))+(((r10)*(sj0)*(x5223)))+(((cj4)*(r00)*(x5214)))+(((IkReal(-1.00000000000000))*(x5213)*(x5234)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x5208)))+(((r11)*(x5214)*(x5215)))+(((IkReal(-1.00000000000000))*(r00)*(x5210)*(x5215)))+(((IkReal(-1.00000000000000))*(x5229)*(x5232)))+(((IkReal(-1.00000000000000))*(x5217)*(x5218)))+(((IkReal(-1.00000000000000))*(sj0)*(x5215)*(x5227)))+(((r00)*(x5210)*(x5212)))+(((cj0)*(r12)*(x5229)))+(((IkReal(-1.00000000000000))*(r11)*(x5212)*(x5214)))+(((IkReal(-1.00000000000000))*(r10)*(x5212)*(x5222)))+(((x5224)*(x5225)))+(((px)*(sj0)))+(((sj0)*(x5212)*(x5227)))+(((r10)*(x5215)*(x5222)))); +evalcond[7]=((((r11)*(sj4)*(x5210)))+(((IkReal(-1.00000000000000))*(r11)*(x5217)*(x5223)))+(((IkReal(-1.00000000000000))*(r10)*(x5221)*(x5233)))+(((IkReal(-1.00000000000000))*(r02)*(x5208)*(x5216)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5208)*(x5223)))+(((r01)*(sj4)*(x5222)))+(((IkReal(-1.00000000000000))*(x5216)*(x5234)))+(((IkReal(-1.00000000000000))*(x5209)*(x5217)*(x5231)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5208)*(x5209)))+(((IkReal(-1.00000000000000))*(r00)*(x5208)*(x5233)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r01)*(x5214)*(x5215)))+(((IkReal(-1.00000000000000))*(r01)*(x5212)*(x5214)))+(((sj0)*(x5215)*(x5230)))+(((r10)*(x5210)*(x5215)))+(((IkReal(-1.00000000000000))*(px)*(x5208)))+(((IkReal(-1.00000000000000))*(sj0)*(x5212)*(x5230)))+(((r00)*(x5215)*(x5222)))+(((IkReal(-1.00000000000000))*(r00)*(x5212)*(x5222)))+(((cj0)*(r02)*(x5229)))+(((r12)*(sj0)*(x5229)))+(((IkReal(-1.00000000000000))*(py)*(x5221)))+(((x5217)*(x5224)))+(((IkReal(-1.00000000000000))*(r10)*(x5210)*(x5212)))+(((x5218)*(x5225)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5235=((IkReal(1.00000000000000))*(sj5)); +IkReal x5236=((cj6)*(r21)); +IkReal x5237=((r20)*(sj6)); +IkReal x5238=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5235)))+(((IkReal(-1.00000000000000))*(x5237)*(x5238)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5236)*(x5238)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x5235)*(x5236)))+(((IkReal(-1.00000000000000))*(x5235)*(x5237)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5235)))+(((IkReal(-1.00000000000000))*(x5237)*(x5238)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5236)*(x5238)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x5235)*(x5236)))+(((IkReal(-1.00000000000000))*(x5235)*(x5237)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5235)))+(((IkReal(-1.00000000000000))*(x5237)*(x5238)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5236)*(x5238)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x5235)*(x5236)))+(((IkReal(-1.00000000000000))*(x5235)*(x5237)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5239=IKsin(j3); +IkReal x5240=IKcos(j3); +IkReal x5241=((sj0)*(sj5)); +IkReal x5242=((r00)*(sj6)); +IkReal x5243=((cj6)*(r01)); +IkReal x5244=((cj0)*(cj5)); +IkReal x5245=((IkReal(1.00000000000000))*(cj5)); +IkReal x5246=((cj4)*(cj5)); +IkReal x5247=((cj6)*(sj4)); +IkReal x5248=((sj4)*(sj6)); +IkReal x5249=((cj0)*(r11)); +IkReal x5250=((IkReal(1.00000000000000))*(cj4)); +IkReal x5251=((cj6)*(r21)); +IkReal x5252=((r20)*(sj6)); +IkReal x5253=((cj0)*(sj5)); +IkReal x5254=((r10)*(sj6)); +evalcond[0]=((x5240)+(((IkReal(-1.00000000000000))*(r22)*(x5245)))+(((sj5)*(x5251)))+(((sj5)*(x5252)))); +evalcond[1]=((((x5246)*(x5252)))+(x5239)+(((cj4)*(r22)*(sj5)))+(((r20)*(x5247)))+(((x5246)*(x5251)))+(((IkReal(-1.00000000000000))*(r21)*(x5248)))); +evalcond[2]=((x5239)+(((r12)*(x5244)))+(((IkReal(-1.00000000000000))*(x5253)*(x5254)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x5249)))+(((x5241)*(x5242)))+(((x5241)*(x5243)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x5245)))); +evalcond[3]=((((sj0)*(x5242)*(x5246)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x5248)))+(((r00)*(sj0)*(x5247)))+(((IkReal(-1.00000000000000))*(x5244)*(x5250)*(x5254)))+(((sj0)*(x5243)*(x5246)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x5247)))+(((IkReal(-1.00000000000000))*(r12)*(x5250)*(x5253)))+(((x5248)*(x5249)))+(((IkReal(-1.00000000000000))*(x5240)))+(((cj4)*(r02)*(x5241)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5244)*(x5250)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5255=((IkReal(1.00000000000000))*(cj0)); +IkReal x5256=((cj4)*(sj6)); +IkReal x5257=((sj0)*(sj4)); +IkReal x5258=((cj5)*(sj6)); +IkReal x5259=((sj4)*(sj5)); +IkReal x5260=((r12)*(sj5)); +IkReal x5261=((IkReal(0.374290000000000))*(cj5)); +IkReal x5262=((r02)*(sj0)); +IkReal x5263=((r20)*(sj4)); +IkReal x5264=((IkReal(1.00000000000000))*(sj0)); +IkReal x5265=((IkReal(1.00000000000000))*(cj5)); +IkReal x5266=((cj0)*(r10)); +IkReal x5267=((cj4)*(cj6)); +IkReal x5268=((r00)*(sj0)); +IkReal x5269=((cj6)*(r21)); +IkReal x5270=((IkReal(0.374290000000000))*(sj5)); +IkReal x5271=((cj0)*(r00)); +IkReal x5272=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5273=((cj0)*(r02)); +IkReal x5274=((cj5)*(sj4)); +IkReal x5275=((cj6)*(r01)); +IkReal x5276=((cj6)*(r11)); +IkReal x5277=((r01)*(sj0)); +IkReal x5278=((r10)*(sj0)); +IkReal x5279=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x5280=((sj6)*(x5270)); +IkReal x5281=((cj0)*(cj6)*(x5270)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x5269)))+(((r20)*(sj5)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(x5265)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x5258)*(x5263)))+(((IkReal(-1.00000000000000))*(r20)*(x5267)))+(((x5269)*(x5274)))+(((r21)*(x5256)))+(((r22)*(x5259)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x5272)))+(((r20)*(x5280)))+(((IkReal(-0.0100000000000000))*(r20)*(x5258)))+(((IkReal(-0.0100000000000000))*(cj5)*(x5269)))+(pz)+(((x5269)*(x5270)))+(((IkReal(-1.00000000000000))*(r22)*(x5261)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x5263)))+(((cj5)*(r21)*(x5267)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x5256)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x5255)*(x5259)))+(((r02)*(sj5)*(x5257)))+(((x5266)*(x5267)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x5255)*(x5258)))+(((r00)*(x5257)*(x5258)))+(((IkReal(-1.00000000000000))*(r11)*(x5255)*(x5256)))+(((cj5)*(x5257)*(x5275)))+(((x5256)*(x5277)))+(((IkReal(-1.00000000000000))*(r00)*(x5264)*(x5267)))+(((IkReal(-1.00000000000000))*(x5255)*(x5274)*(x5276)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r11)*(x5256)*(x5264)))+(((IkReal(-1.00000000000000))*(r10)*(x5257)*(x5258)))+(((IkReal(-1.00000000000000))*(x5257)*(x5260)))+(((IkReal(-1.00000000000000))*(r02)*(x5255)*(x5259)))+(((IkReal(-1.00000000000000))*(x5257)*(x5265)*(x5276)))+(((x5267)*(x5271)))+(((IkReal(-1.00000000000000))*(x5255)*(x5274)*(x5275)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x5255)*(x5258)))+(((IkReal(-1.00000000000000))*(r01)*(x5255)*(x5256)))+(((x5267)*(x5278)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((cj0)*(r12)*(x5261)))+(((IkReal(-0.0100000000000000))*(x5258)*(x5268)))+(((IkReal(-1.00000000000000))*(x5266)*(x5280)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5276)))+(((x5268)*(x5280)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x5275)))+(((sj0)*(x5270)*(x5275)))+(((IkReal(0.0100000000000000))*(x5258)*(x5266)))+(((IkReal(-1.00000000000000))*(py)*(x5255)))+(((IkReal(-1.00000000000000))*(cj0)*(x5270)*(x5276)))+(((IkReal(-1.00000000000000))*(x5262)*(x5272)))+(((IkReal(0.0100000000000000))*(cj0)*(x5260)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x5261)*(x5262)))); +evalcond[8]=((IkReal(0.433420000000000))+(((r12)*(sj0)*(x5261)))+(((IkReal(0.0100000000000000))*(x5258)*(x5278)))+(((IkReal(-1.00000000000000))*(sj0)*(x5270)*(x5276)))+(((IkReal(-1.00000000000000))*(py)*(x5264)))+(((IkReal(-1.00000000000000))*(px)*(x5255)))+(((x5272)*(x5273)))+(((IkReal(-1.00000000000000))*(x5271)*(x5280)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x5276)))+(((x5261)*(x5273)))+(((IkReal(-1.00000000000000))*(x5278)*(x5280)))+(((IkReal(-1.00000000000000))*(cj0)*(x5270)*(x5275)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5275)))+(((IkReal(0.0100000000000000))*(sj0)*(x5260)))+(((IkReal(0.0100000000000000))*(x5258)*(x5271)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5282=((cj5)*(r02)); +IkReal x5283=((cj0)*(sj5)); +IkReal x5284=((r10)*(sj6)); +IkReal x5285=((IkReal(1.00000000000000))*(cj6)); +IkReal x5286=((sj0)*(sj5)); +IkReal x5287=((cj5)*(r12)); +IkReal x5288=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(x5286)*(x5288)))+(((IkReal(-1.00000000000000))*(cj0)*(x5287)))+(((sj0)*(x5282)))+(((IkReal(-1.00000000000000))*(r01)*(x5285)*(x5286)))+(((cj6)*(r11)*(x5283)))+(((x5283)*(x5284))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x5283)*(x5288)))+(((sj0)*(x5287)))+(((IkReal(-1.00000000000000))*(r11)*(x5285)*(x5286)))+(((IkReal(-1.00000000000000))*(r01)*(x5283)*(x5285)))+(((cj0)*(x5282)))+(((IkReal(-1.00000000000000))*(x5284)*(x5286))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x5286)*(x5288)))+(((IkReal(-1.00000000000000))*(cj0)*(x5287)))+(((sj0)*(x5282)))+(((IkReal(-1.00000000000000))*(r01)*(x5285)*(x5286)))+(((cj6)*(r11)*(x5283)))+(((x5283)*(x5284)))))+IKsqr(((((IkReal(-1.00000000000000))*(x5283)*(x5288)))+(((sj0)*(x5287)))+(((IkReal(-1.00000000000000))*(r11)*(x5285)*(x5286)))+(((IkReal(-1.00000000000000))*(r01)*(x5283)*(x5285)))+(((cj0)*(x5282)))+(((IkReal(-1.00000000000000))*(x5284)*(x5286)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x5286)*(x5288)))+(((IkReal(-1.00000000000000))*(cj0)*(x5287)))+(((sj0)*(x5282)))+(((IkReal(-1.00000000000000))*(r01)*(x5285)*(x5286)))+(((cj6)*(r11)*(x5283)))+(((x5283)*(x5284)))), ((((IkReal(-1.00000000000000))*(x5283)*(x5288)))+(((sj0)*(x5287)))+(((IkReal(-1.00000000000000))*(r11)*(x5285)*(x5286)))+(((IkReal(-1.00000000000000))*(r01)*(x5283)*(x5285)))+(((cj0)*(x5282)))+(((IkReal(-1.00000000000000))*(x5284)*(x5286))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5289=IKsin(j3); +IkReal x5290=((sj0)*(sj5)); +IkReal x5291=((r00)*(sj6)); +IkReal x5292=((IkReal(1.00000000000000))*(cj4)); +IkReal x5293=((cj6)*(sj0)); +IkReal x5294=((r00)*(sj4)); +IkReal x5295=((cj0)*(cj5)); +IkReal x5296=((cj6)*(r01)); +IkReal x5297=((cj5)*(sj0)); +IkReal x5298=((cj0)*(sj5)); +IkReal x5299=((cj6)*(r11)); +IkReal x5300=((r10)*(sj6)); +IkReal x5301=((r10)*(sj4)); +IkReal x5302=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x5303=((cj0)*(sj4)*(sj6)); +IkReal x5304=((sj0)*(sj4)*(sj6)); +IkReal x5305=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((x5289)+(((r12)*(x5295)))+(((x5290)*(x5296)))+(((IkReal(-1.00000000000000))*(r02)*(x5297)))+(((IkReal(-1.00000000000000))*(x5298)*(x5299)))+(((IkReal(-1.00000000000000))*(x5298)*(x5300)))+(((x5290)*(x5291)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5296)*(x5298)))+(((r12)*(x5297)))+(((IkReal(-1.00000000000000))*(x5290)*(x5300)))+(((IkReal(-1.00000000000000))*(x5290)*(x5299)))+(((IkReal(-1.00000000000000))*(x5302)))+(((IkReal(-1.00000000000000))*(x5291)*(x5298)))+(((r02)*(x5295)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x5292)*(x5298)))+(((cj4)*(cj5)*(r01)*(x5293)))+(((IkReal(-1.00000000000000))*(x5301)*(x5305)))+(((cj4)*(r02)*(x5290)))+(((cj4)*(x5291)*(x5297)))+(((x5293)*(x5294)))+(((IkReal(-1.00000000000000))*(x5302)))+(((r11)*(x5303)))+(((IkReal(-1.00000000000000))*(x5292)*(x5295)*(x5300)))+(((IkReal(-1.00000000000000))*(r01)*(x5304)))+(((IkReal(-1.00000000000000))*(x5292)*(x5295)*(x5299)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5292)*(x5297)*(x5300)))+(((IkReal(-1.00000000000000))*(x5291)*(x5292)*(x5295)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x5292)*(x5293)))+(((r11)*(x5304)))+(((r01)*(x5303)))+(((IkReal(-1.00000000000000))*(x5294)*(x5305)))+(((IkReal(-1.00000000000000))*(x5293)*(x5301)))+(((IkReal(-1.00000000000000))*(r12)*(x5290)*(x5292)))+(((IkReal(-1.00000000000000))*(x5289)))+(((IkReal(-1.00000000000000))*(x5292)*(x5295)*(x5296)))+(((IkReal(-1.00000000000000))*(r02)*(x5292)*(x5298)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5306=((IkReal(1.00000000000000))*(cj0)); +IkReal x5307=((cj4)*(sj6)); +IkReal x5308=((sj0)*(sj4)); +IkReal x5309=((cj5)*(sj6)); +IkReal x5310=((sj4)*(sj5)); +IkReal x5311=((r12)*(sj5)); +IkReal x5312=((IkReal(0.374290000000000))*(cj5)); +IkReal x5313=((r02)*(sj0)); +IkReal x5314=((r20)*(sj4)); +IkReal x5315=((IkReal(1.00000000000000))*(sj0)); +IkReal x5316=((IkReal(1.00000000000000))*(cj5)); +IkReal x5317=((cj0)*(r10)); +IkReal x5318=((cj4)*(cj6)); +IkReal x5319=((r00)*(sj0)); +IkReal x5320=((cj6)*(r21)); +IkReal x5321=((IkReal(0.374290000000000))*(sj5)); +IkReal x5322=((cj0)*(r00)); +IkReal x5323=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5324=((cj0)*(r02)); +IkReal x5325=((cj5)*(sj4)); +IkReal x5326=((cj6)*(r01)); +IkReal x5327=((cj6)*(r11)); +IkReal x5328=((r01)*(sj0)); +IkReal x5329=((r10)*(sj0)); +IkReal x5330=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x5331=((sj6)*(x5321)); +IkReal x5332=((cj0)*(cj6)*(x5321)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x5316)))+(((sj5)*(x5320)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x5318)))+(((r21)*(x5307)))+(((x5320)*(x5325)))+(((r22)*(x5310)))+(((x5309)*(x5314)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x5323)))+(((IkReal(-1.00000000000000))*(r22)*(x5312)))+(((IkReal(-0.0100000000000000))*(r20)*(x5309)))+(((IkReal(-0.0100000000000000))*(cj5)*(x5320)))+(((x5320)*(x5321)))+(pz)+(((r20)*(x5331)))); +evalcond[4]=((((cj5)*(r20)*(x5307)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x5314)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x5318)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x5306)*(x5310)))+(((IkReal(-1.00000000000000))*(r11)*(x5306)*(x5307)))+(((r02)*(sj5)*(x5308)))+(((IkReal(-1.00000000000000))*(r00)*(x5315)*(x5318)))+(((x5307)*(x5328)))+(((r00)*(x5308)*(x5309)))+(((IkReal(-1.00000000000000))*(x5306)*(x5325)*(x5327)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x5306)*(x5309)))+(((x5317)*(x5318)))+(((cj5)*(x5308)*(x5326)))); +evalcond[6]=((((x5318)*(x5322)))+(((IkReal(-1.00000000000000))*(x5308)*(x5311)))+(((IkReal(-1.00000000000000))*(x5308)*(x5316)*(x5327)))+(((IkReal(-1.00000000000000))*(r10)*(x5308)*(x5309)))+(((IkReal(-1.00000000000000))*(r02)*(x5306)*(x5310)))+(((IkReal(-1.00000000000000))*(x5306)*(x5325)*(x5326)))+(((IkReal(-1.00000000000000))*(r11)*(x5307)*(x5315)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x5306)*(x5309)))+(((IkReal(-1.00000000000000))*(r01)*(x5306)*(x5307)))+(((x5318)*(x5329)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((sj0)*(x5321)*(x5326)))+(((x5319)*(x5331)))+(((cj0)*(r12)*(x5312)))+(((IkReal(-1.00000000000000))*(x5312)*(x5313)))+(((IkReal(0.0100000000000000))*(x5309)*(x5317)))+(((IkReal(-1.00000000000000))*(x5313)*(x5323)))+(((IkReal(-0.0100000000000000))*(x5309)*(x5319)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5327)))+(((IkReal(-1.00000000000000))*(py)*(x5306)))+(((IkReal(0.0100000000000000))*(cj0)*(x5311)))+(((IkReal(-1.00000000000000))*(x5317)*(x5331)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x5326)))+(((IkReal(-1.00000000000000))*(cj0)*(x5321)*(x5327)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(x5309)*(x5322)))+(((IkReal(-1.00000000000000))*(cj0)*(x5321)*(x5326)))+(((x5312)*(x5324)))+(((IkReal(-1.00000000000000))*(py)*(x5315)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x5327)))+(((IkReal(-1.00000000000000))*(sj0)*(x5321)*(x5327)))+(((IkReal(-1.00000000000000))*(x5329)*(x5331)))+(((x5323)*(x5324)))+(((IkReal(-1.00000000000000))*(x5322)*(x5331)))+(((IkReal(0.0100000000000000))*(sj0)*(x5311)))+(((IkReal(-1.00000000000000))*(px)*(x5306)))+(((r12)*(sj0)*(x5312)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5326)))+(((IkReal(0.0100000000000000))*(x5309)*(x5329)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5333=((IkReal(1.00000000000000))*(cj5)); +IkReal x5334=((r10)*(sj5)*(sj6)); +IkReal x5335=((cj6)*(sj0)*(sj5)); +IkReal x5336=((r00)*(sj5)*(sj6)); +IkReal x5337=((cj0)*(cj6)*(sj5)); +if( IKabs(((((cj0)*(x5334)))+(((IkReal(-1.00000000000000))*(sj0)*(x5336)))+(((IkReal(-1.00000000000000))*(r01)*(x5335)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5333)))+(((r11)*(x5337))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj0)*(x5334)))+(((cj0)*(x5336)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5333)))+(((r01)*(x5337)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5333)))+(((r11)*(x5335))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(x5334)))+(((IkReal(-1.00000000000000))*(sj0)*(x5336)))+(((IkReal(-1.00000000000000))*(r01)*(x5335)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5333)))+(((r11)*(x5337)))))+IKsqr(((((sj0)*(x5334)))+(((cj0)*(x5336)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5333)))+(((r01)*(x5337)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5333)))+(((r11)*(x5335)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(x5334)))+(((IkReal(-1.00000000000000))*(sj0)*(x5336)))+(((IkReal(-1.00000000000000))*(r01)*(x5335)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5333)))+(((r11)*(x5337)))), ((((sj0)*(x5334)))+(((cj0)*(x5336)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5333)))+(((r01)*(x5337)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5333)))+(((r11)*(x5335))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5338=IKcos(j3); +IkReal x5339=IKsin(j3); +IkReal x5340=((sj0)*(sj5)); +IkReal x5341=((r00)*(sj6)); +IkReal x5342=((IkReal(1.00000000000000))*(cj4)); +IkReal x5343=((cj6)*(sj0)); +IkReal x5344=((r00)*(sj4)); +IkReal x5345=((cj0)*(cj5)); +IkReal x5346=((cj6)*(r01)); +IkReal x5347=((cj5)*(sj0)); +IkReal x5348=((cj0)*(sj5)); +IkReal x5349=((cj6)*(r11)); +IkReal x5350=((r10)*(sj6)); +IkReal x5351=((r10)*(sj4)); +IkReal x5352=((cj0)*(sj4)*(sj6)); +IkReal x5353=((sj0)*(sj4)*(sj6)); +IkReal x5354=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((r12)*(x5345)))+(((IkReal(-1.00000000000000))*(x5348)*(x5350)))+(((IkReal(-1.00000000000000))*(x5348)*(x5349)))+(((IkReal(-1.00000000000000))*(r02)*(x5347)))+(((x5340)*(x5346)))+(((x5340)*(x5341)))+(x5339)); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5340)*(x5349)))+(((IkReal(-1.00000000000000))*(x5340)*(x5350)))+(((IkReal(-1.00000000000000))*(x5346)*(x5348)))+(((r02)*(x5345)))+(((IkReal(-1.00000000000000))*(x5341)*(x5348)))+(((r12)*(x5347)))+(x5338)); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x5353)))+(((IkReal(-1.00000000000000))*(r12)*(x5342)*(x5348)))+(((IkReal(-1.00000000000000))*(x5342)*(x5345)*(x5350)))+(((cj4)*(x5341)*(x5347)))+(((IkReal(-1.00000000000000))*(x5342)*(x5345)*(x5349)))+(((cj4)*(cj5)*(r01)*(x5343)))+(((IkReal(-1.00000000000000))*(x5338)))+(((x5343)*(x5344)))+(((r11)*(x5352)))+(((IkReal(-1.00000000000000))*(x5351)*(x5354)))+(((cj4)*(r02)*(x5340)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x5340)*(x5342)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x5342)*(x5343)))+(((IkReal(-1.00000000000000))*(x5343)*(x5351)))+(((IkReal(-1.00000000000000))*(x5341)*(x5342)*(x5345)))+(((IkReal(-1.00000000000000))*(x5342)*(x5345)*(x5346)))+(((IkReal(-1.00000000000000))*(x5344)*(x5354)))+(((IkReal(-1.00000000000000))*(r02)*(x5342)*(x5348)))+(((r11)*(x5353)))+(((r01)*(x5352)))+(((IkReal(-1.00000000000000))*(x5342)*(x5347)*(x5350)))+(x5339)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5355=((cj5)*(r02)); +IkReal x5356=((cj0)*(sj5)); +IkReal x5357=((r10)*(sj6)); +IkReal x5358=((IkReal(1.00000000000000))*(cj6)); +IkReal x5359=((sj0)*(sj5)); +IkReal x5360=((cj5)*(r12)); +IkReal x5361=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((x5356)*(x5357)))+(((cj6)*(r11)*(x5356)))+(((IkReal(-1.00000000000000))*(r01)*(x5358)*(x5359)))+(((sj0)*(x5355)))+(((IkReal(-1.00000000000000))*(x5359)*(x5361)))+(((IkReal(-1.00000000000000))*(cj0)*(x5360))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x5357)*(x5359)))+(((sj0)*(x5360)))+(((IkReal(-1.00000000000000))*(r01)*(x5356)*(x5358)))+(((IkReal(-1.00000000000000))*(r11)*(x5358)*(x5359)))+(((IkReal(-1.00000000000000))*(x5356)*(x5361)))+(((cj0)*(x5355))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x5356)*(x5357)))+(((cj6)*(r11)*(x5356)))+(((IkReal(-1.00000000000000))*(r01)*(x5358)*(x5359)))+(((sj0)*(x5355)))+(((IkReal(-1.00000000000000))*(x5359)*(x5361)))+(((IkReal(-1.00000000000000))*(cj0)*(x5360)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x5357)*(x5359)))+(((sj0)*(x5360)))+(((IkReal(-1.00000000000000))*(r01)*(x5356)*(x5358)))+(((IkReal(-1.00000000000000))*(r11)*(x5358)*(x5359)))+(((IkReal(-1.00000000000000))*(x5356)*(x5361)))+(((cj0)*(x5355)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x5356)*(x5357)))+(((cj6)*(r11)*(x5356)))+(((IkReal(-1.00000000000000))*(r01)*(x5358)*(x5359)))+(((sj0)*(x5355)))+(((IkReal(-1.00000000000000))*(x5359)*(x5361)))+(((IkReal(-1.00000000000000))*(cj0)*(x5360)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x5357)*(x5359)))+(((sj0)*(x5360)))+(((IkReal(-1.00000000000000))*(r01)*(x5356)*(x5358)))+(((IkReal(-1.00000000000000))*(r11)*(x5358)*(x5359)))+(((IkReal(-1.00000000000000))*(x5356)*(x5361)))+(((cj0)*(x5355))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5362=IKsin(j3); +IkReal x5363=IKcos(j3); +IkReal x5364=((sj0)*(sj5)); +IkReal x5365=((r00)*(sj6)); +IkReal x5366=((IkReal(1.00000000000000))*(cj4)); +IkReal x5367=((cj6)*(r01)); +IkReal x5368=((cj0)*(cj5)); +IkReal x5369=((cj5)*(sj0)); +IkReal x5370=((cj6)*(r11)); +IkReal x5371=((cj0)*(sj5)); +IkReal x5372=((IkReal(1.00000000000000))*(cj1)); +IkReal x5373=((cj6)*(sj4)); +IkReal x5374=((IkReal(1.00000000000000))*(sj1)); +IkReal x5375=((cj4)*(cj5)); +IkReal x5376=((cj6)*(r21)); +IkReal x5377=((r20)*(sj6)); +IkReal x5378=((r10)*(sj6)); +IkReal x5379=((IkReal(1.00000000000000))*(cj0)); +IkReal x5380=((cj0)*(sj4)*(sj6)); +IkReal x5381=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x5377)))+(((sj5)*(x5376)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x5363)*(x5374)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5362)*(x5374)))+(((cj4)*(r22)*(sj5)))+(((x5375)*(x5376)))+(((r20)*(x5373)))+(((x5375)*(x5377)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5371)*(x5378)))+(((x5364)*(x5367)))+(((r12)*(x5368)))+(((IkReal(-1.00000000000000))*(x5370)*(x5371)))+(((IkReal(-1.00000000000000))*(r02)*(x5369)))+(x5362)+(((x5364)*(x5365)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5363)*(x5372)))+(((r12)*(x5369)))+(((IkReal(-1.00000000000000))*(x5365)*(x5371)))+(((IkReal(-1.00000000000000))*(x5364)*(x5378)))+(((r02)*(x5368)))+(((IkReal(-1.00000000000000))*(x5367)*(x5371)))+(((IkReal(-1.00000000000000))*(x5364)*(x5370)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x5366)*(x5371)))+(((cj4)*(x5367)*(x5369)))+(((r00)*(sj0)*(x5373)))+(((IkReal(-1.00000000000000))*(r01)*(x5381)))+(((IkReal(-1.00000000000000))*(r10)*(x5373)*(x5379)))+(((IkReal(-1.00000000000000))*(x5363)))+(((r11)*(x5380)))+(((cj4)*(x5365)*(x5369)))+(((IkReal(-1.00000000000000))*(x5366)*(x5368)*(x5370)))+(((cj4)*(r02)*(x5364)))+(((IkReal(-1.00000000000000))*(x5366)*(x5368)*(x5378)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5362)*(x5372)))+(((IkReal(-1.00000000000000))*(r02)*(x5366)*(x5371)))+(((IkReal(-1.00000000000000))*(x5366)*(x5367)*(x5368)))+(((IkReal(-1.00000000000000))*(x5366)*(x5369)*(x5378)))+(((r01)*(x5380)))+(((r11)*(x5381)))+(((IkReal(-1.00000000000000))*(x5365)*(x5366)*(x5368)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5373)))+(((IkReal(-1.00000000000000))*(r12)*(x5364)*(x5366)))+(((IkReal(-1.00000000000000))*(x5366)*(x5369)*(x5370)))+(((IkReal(-1.00000000000000))*(r00)*(x5373)*(x5379)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5382=((sj5)*(sj6)); +IkReal x5383=((IkReal(1.00000000000000))*(sj0)); +IkReal x5384=((cj6)*(sj5)); +IkReal x5385=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r10)*(x5382)))+(((cj0)*(r11)*(x5384)))+(((IkReal(-1.00000000000000))*(r01)*(x5383)*(x5384)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x5382)*(x5383)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5385))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x5385)))+(((r21)*(x5384)))+(((r20)*(x5382))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r10)*(x5382)))+(((cj0)*(r11)*(x5384)))+(((IkReal(-1.00000000000000))*(r01)*(x5383)*(x5384)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x5382)*(x5383)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5385)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x5385)))+(((r21)*(x5384)))+(((r20)*(x5382)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r10)*(x5382)))+(((cj0)*(r11)*(x5384)))+(((IkReal(-1.00000000000000))*(r01)*(x5383)*(x5384)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x5382)*(x5383)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5385)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x5385)))+(((r21)*(x5384)))+(((r20)*(x5382))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5386=IKsin(j3); +IkReal x5387=IKcos(j3); +IkReal x5388=((sj0)*(sj5)); +IkReal x5389=((r00)*(sj6)); +IkReal x5390=((IkReal(1.00000000000000))*(cj4)); +IkReal x5391=((cj6)*(r01)); +IkReal x5392=((cj0)*(cj5)); +IkReal x5393=((cj5)*(sj0)); +IkReal x5394=((cj6)*(r11)); +IkReal x5395=((cj0)*(sj5)); +IkReal x5396=((IkReal(1.00000000000000))*(cj1)); +IkReal x5397=((cj6)*(sj4)); +IkReal x5398=((IkReal(1.00000000000000))*(sj1)); +IkReal x5399=((cj4)*(cj5)); +IkReal x5400=((cj6)*(r21)); +IkReal x5401=((r20)*(sj6)); +IkReal x5402=((r10)*(sj6)); +IkReal x5403=((IkReal(1.00000000000000))*(cj0)); +IkReal x5404=((cj0)*(sj4)*(sj6)); +IkReal x5405=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x5387)*(x5398)))+(((sj5)*(x5400)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5401)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x5399)*(x5400)))+(((IkReal(-1.00000000000000))*(x5386)*(x5398)))+(((x5399)*(x5401)))+(((r20)*(x5397)))); +evalcond[2]=((((r12)*(x5392)))+(((IkReal(-1.00000000000000))*(r02)*(x5393)))+(((IkReal(-1.00000000000000))*(x5395)*(x5402)))+(((x5388)*(x5391)))+(((x5388)*(x5389)))+(x5386)+(((IkReal(-1.00000000000000))*(x5394)*(x5395)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5388)*(x5402)))+(((IkReal(-1.00000000000000))*(x5391)*(x5395)))+(((IkReal(-1.00000000000000))*(x5388)*(x5394)))+(((IkReal(-1.00000000000000))*(x5389)*(x5395)))+(((IkReal(-1.00000000000000))*(x5387)*(x5396)))+(((r02)*(x5392)))+(((r12)*(x5393)))); +evalcond[4]=((((cj4)*(x5391)*(x5393)))+(((IkReal(-1.00000000000000))*(x5390)*(x5392)*(x5402)))+(((IkReal(-1.00000000000000))*(x5387)))+(((r11)*(x5404)))+(((IkReal(-1.00000000000000))*(r10)*(x5397)*(x5403)))+(((r00)*(sj0)*(x5397)))+(((IkReal(-1.00000000000000))*(r12)*(x5390)*(x5395)))+(((IkReal(-1.00000000000000))*(x5390)*(x5392)*(x5394)))+(((cj4)*(x5389)*(x5393)))+(((IkReal(-1.00000000000000))*(r01)*(x5405)))+(((cj4)*(r02)*(x5388)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5386)*(x5396)))+(((IkReal(-1.00000000000000))*(r12)*(x5388)*(x5390)))+(((r11)*(x5405)))+(((IkReal(-1.00000000000000))*(x5390)*(x5393)*(x5402)))+(((IkReal(-1.00000000000000))*(x5390)*(x5393)*(x5394)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5397)))+(((IkReal(-1.00000000000000))*(r02)*(x5390)*(x5395)))+(((IkReal(-1.00000000000000))*(r00)*(x5397)*(x5403)))+(((r01)*(x5404)))+(((IkReal(-1.00000000000000))*(x5389)*(x5390)*(x5392)))+(((IkReal(-1.00000000000000))*(x5390)*(x5391)*(x5392)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5406=((r20)*(sj6)); +IkReal x5407=((cj4)*(cj5)); +IkReal x5408=((cj6)*(r21)); +if( IKabs(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5406)*(x5407)))+(((x5407)*(x5408))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst30)*(((((sj5)*(x5408)))+(((sj5)*(x5406)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5406)*(x5407)))+(((x5407)*(x5408)))))), ((gconst30)*(((((sj5)*(x5408)))+(((sj5)*(x5406)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5409=IKsin(j3); +IkReal x5410=IKcos(j3); +IkReal x5411=((sj0)*(sj5)); +IkReal x5412=((r00)*(sj6)); +IkReal x5413=((IkReal(1.00000000000000))*(cj4)); +IkReal x5414=((cj6)*(r01)); +IkReal x5415=((cj0)*(cj5)); +IkReal x5416=((cj5)*(sj0)); +IkReal x5417=((cj6)*(r11)); +IkReal x5418=((cj0)*(sj5)); +IkReal x5419=((IkReal(1.00000000000000))*(cj1)); +IkReal x5420=((cj6)*(sj4)); +IkReal x5421=((IkReal(1.00000000000000))*(sj1)); +IkReal x5422=((cj4)*(cj5)); +IkReal x5423=((cj6)*(r21)); +IkReal x5424=((r20)*(sj6)); +IkReal x5425=((r10)*(sj6)); +IkReal x5426=((IkReal(1.00000000000000))*(cj0)); +IkReal x5427=((cj0)*(sj4)*(sj6)); +IkReal x5428=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x5424)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x5410)*(x5421)))+(((sj5)*(x5423)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5422)*(x5424)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x5420)))+(((x5422)*(x5423)))+(((IkReal(-1.00000000000000))*(x5409)*(x5421)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5418)*(x5425)))+(((r12)*(x5415)))+(((x5411)*(x5412)))+(((x5411)*(x5414)))+(((IkReal(-1.00000000000000))*(r02)*(x5416)))+(((IkReal(-1.00000000000000))*(x5417)*(x5418)))+(x5409)); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5411)*(x5417)))+(((r02)*(x5415)))+(((IkReal(-1.00000000000000))*(x5414)*(x5418)))+(((IkReal(-1.00000000000000))*(x5412)*(x5418)))+(((IkReal(-1.00000000000000))*(x5410)*(x5419)))+(((r12)*(x5416)))+(((IkReal(-1.00000000000000))*(x5411)*(x5425)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5413)*(x5415)*(x5425)))+(((cj4)*(x5414)*(x5416)))+(((IkReal(-1.00000000000000))*(r01)*(x5428)))+(((cj4)*(x5412)*(x5416)))+(((IkReal(-1.00000000000000))*(r12)*(x5413)*(x5418)))+(((IkReal(-1.00000000000000))*(r10)*(x5420)*(x5426)))+(((cj4)*(r02)*(x5411)))+(((r11)*(x5427)))+(((IkReal(-1.00000000000000))*(x5413)*(x5415)*(x5417)))+(((IkReal(-1.00000000000000))*(x5410)))+(((r00)*(sj0)*(x5420)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5409)*(x5419)))+(((r01)*(x5427)))+(((IkReal(-1.00000000000000))*(x5412)*(x5413)*(x5415)))+(((IkReal(-1.00000000000000))*(x5413)*(x5414)*(x5415)))+(((IkReal(-1.00000000000000))*(r00)*(x5420)*(x5426)))+(((r11)*(x5428)))+(((IkReal(-1.00000000000000))*(x5413)*(x5416)*(x5425)))+(((IkReal(-1.00000000000000))*(r12)*(x5411)*(x5413)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5420)))+(((IkReal(-1.00000000000000))*(r02)*(x5413)*(x5418)))+(((IkReal(-1.00000000000000))*(x5413)*(x5416)*(x5417)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5429=((cj1)*(sj6)); +IkReal x5430=((r01)*(sj0)); +IkReal x5431=((cj0)*(r11)); +IkReal x5432=((cj1)*(cj6)); +IkReal x5433=((cj0)*(r10)); +IkReal x5434=((IkReal(1.00000000000000))*(sj0)); +IkReal x5435=((cj1)*(sj5)); +if( IKabs(((gconst26)*(((((IkReal(-1.00000000000000))*(r00)*(x5432)*(x5434)))+(((IkReal(-1.00000000000000))*(x5429)*(x5431)))+(((x5432)*(x5433)))+(((x5429)*(x5430))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst26)*(((((cj5)*(x5431)*(x5432)))+(((IkReal(-1.00000000000000))*(r02)*(x5434)*(x5435)))+(((IkReal(-1.00000000000000))*(cj5)*(x5430)*(x5432)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5429)*(x5434)))+(((cj0)*(r12)*(x5435)))+(((cj5)*(x5429)*(x5433))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst26)*(((((IkReal(-1.00000000000000))*(r00)*(x5432)*(x5434)))+(((IkReal(-1.00000000000000))*(x5429)*(x5431)))+(((x5432)*(x5433)))+(((x5429)*(x5430)))))), ((gconst26)*(((((cj5)*(x5431)*(x5432)))+(((IkReal(-1.00000000000000))*(r02)*(x5434)*(x5435)))+(((IkReal(-1.00000000000000))*(cj5)*(x5430)*(x5432)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5429)*(x5434)))+(((cj0)*(r12)*(x5435)))+(((cj5)*(x5429)*(x5433))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x5436=IKsin(j4); +IkReal x5437=IKcos(j4); +IkReal x5438=((r00)*(sj6)); +IkReal x5439=((cj6)*(r01)); +IkReal x5440=((IkReal(1.00000000000000))*(cj0)); +IkReal x5441=((IkReal(1.00000000000000))*(sj0)); +IkReal x5442=((r10)*(sj6)); +IkReal x5443=((sj5)*(x5436)); +IkReal x5444=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x5445=((cj5)*(x5436)); +IkReal x5446=((cj6)*(x5437)); +IkReal x5447=((sj0)*(x5445)); +IkReal x5448=((r01)*(sj6)*(x5437)); +IkReal x5449=((r11)*(sj6)*(x5437)); +evalcond[0]=((((r20)*(sj6)*(x5445)))+(((r22)*(x5443)))+(((r21)*(sj6)*(x5437)))+(cj1)+(((cj6)*(r21)*(x5445)))+(((IkReal(-1.00000000000000))*(r20)*(x5446)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5440)*(x5442)*(x5445)))+(((x5439)*(x5447)))+(((r02)*(sj0)*(x5443)))+(((IkReal(-1.00000000000000))*(r12)*(x5440)*(x5443)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5440)*(x5445)))+(((cj0)*(r10)*(x5446)))+(((x5438)*(x5447)))+(((IkReal(-1.00000000000000))*(x5440)*(x5449)))+(((IkReal(-1.00000000000000))*(r00)*(x5441)*(x5446)))+(((sj0)*(x5448)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5438)*(x5440)*(x5445)))+(((IkReal(-1.00000000000000))*(x5441)*(x5449)))+(((IkReal(-1.00000000000000))*(x5439)*(x5440)*(x5445)))+(((IkReal(-1.00000000000000))*(r12)*(x5441)*(x5443)))+(((IkReal(-1.00000000000000))*(r02)*(x5440)*(x5443)))+(((IkReal(-1.00000000000000))*(sj1)))+(((r10)*(sj0)*(x5446)))+(((IkReal(-1.00000000000000))*(x5441)*(x5442)*(x5445)))+(((IkReal(-1.00000000000000))*(x5440)*(x5448)))+(((cj0)*(r00)*(x5446)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5441)*(x5445)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst30; +gconst30=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x5450=((IkReal(1.00000000000000))*(cj0)); +IkReal x5451=((cj4)*(sj6)); +IkReal x5452=((sj0)*(sj6)); +IkReal x5453=((cj5)*(sj4)); +IkReal x5454=((IkReal(0.374290000000000))*(sj5)); +IkReal x5455=((sj4)*(sj5)); +IkReal x5456=((cj0)*(cj6)); +IkReal x5457=((IkReal(0.0100000000000000))*(cj5)); +IkReal x5458=((cj4)*(sj5)); +IkReal x5459=((cj5)*(sj0)); +IkReal x5460=((IkReal(0.374290000000000))*(r02)); +IkReal x5461=((r20)*(sj6)); +IkReal x5462=((cj6)*(r21)); +IkReal x5463=((IkReal(1.00000000000000))*(sj0)); +IkReal x5464=((cj0)*(sj6)); +IkReal x5465=((cj4)*(cj6)); +IkReal x5466=((IkReal(0.374290000000000))*(r12)); +IkReal x5467=((cj0)*(cj5)); +IkReal x5468=((cj6)*(sj5)); +IkReal x5469=((cj6)*(r01)); +IkReal x5470=((r00)*(sj6)); +IkReal x5471=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5472=((cj6)*(r11)); +IkReal x5473=((IkReal(1.00000000000000))*(r10)); +IkReal x5474=((r02)*(sj0)); +IkReal x5475=((cj6)*(sj4)); +IkReal x5476=((r12)*(x5463)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x5465)))+(((x5453)*(x5461)))+(((r22)*(x5455)))+(((x5453)*(x5462)))+(((r21)*(x5451)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x5454)*(x5461)))+(((IkReal(-1.00000000000000))*(x5457)*(x5461)))+(((IkReal(-1.00000000000000))*(x5457)*(x5462)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x5471)))+(pz)+(((x5454)*(x5462)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x5463)*(x5468)))+(((r02)*(x5467)))+(((IkReal(-1.00000000000000))*(r01)*(x5450)*(x5468)))+(((IkReal(-1.00000000000000))*(sj5)*(x5450)*(x5470)))+(((r12)*(x5459)))+(((IkReal(-1.00000000000000))*(sj5)*(x5452)*(x5473)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x5450)*(x5455)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x5450)*(x5453)))+(((IkReal(-1.00000000000000))*(x5450)*(x5453)*(x5472)))+(((IkReal(-1.00000000000000))*(r11)*(x5450)*(x5451)))+(((sj0)*(x5453)*(x5469)))+(((x5455)*(x5474)))+(((r01)*(sj0)*(x5451)))+(((IkReal(-1.00000000000000))*(r00)*(x5463)*(x5465)))+(((cj4)*(r10)*(x5456)))+(((r00)*(x5452)*(x5453)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((r10)*(sj0)*(x5465)))+(((IkReal(-1.00000000000000))*(r01)*(x5450)*(x5451)))+(((cj4)*(r00)*(x5456)))+(((IkReal(-1.00000000000000))*(x5452)*(x5453)*(x5473)))+(((IkReal(-1.00000000000000))*(x5450)*(x5453)*(x5470)))+(((IkReal(-1.00000000000000))*(r02)*(x5450)*(x5455)))+(((IkReal(-1.00000000000000))*(x5450)*(x5453)*(x5469)))+(((IkReal(-1.00000000000000))*(r11)*(x5451)*(x5463)))+(((IkReal(-1.00000000000000))*(x5453)*(x5463)*(x5472)))+(((IkReal(-1.00000000000000))*(x5455)*(x5476)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x5454)*(x5456)))+(((cj0)*(r12)*(x5471)))+(((r10)*(x5457)*(x5464)))+(((IkReal(-1.00000000000000))*(x5459)*(x5460)))+(((IkReal(-1.00000000000000))*(py)*(x5450)))+(((IkReal(-1.00000000000000))*(sj0)*(x5457)*(x5469)))+(((IkReal(-1.00000000000000))*(x5471)*(x5474)))+(((IkReal(-1.00000000000000))*(r00)*(x5452)*(x5457)))+(((r11)*(x5456)*(x5457)))+(((r00)*(x5452)*(x5454)))+(((px)*(sj0)))+(((x5466)*(x5467)))+(((sj0)*(x5454)*(x5469)))+(((IkReal(-1.00000000000000))*(r10)*(x5454)*(x5464)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x5450)*(x5475)))+(((IkReal(-1.00000000000000))*(x5451)*(x5459)*(x5473)))+(((IkReal(-1.00000000000000))*(x5458)*(x5476)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5450)*(x5451)))+(((IkReal(-1.00000000000000))*(r11)*(x5459)*(x5465)))+(((r11)*(sj4)*(x5452)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5450)*(x5465)))+(((IkReal(-1.00000000000000))*(r02)*(x5450)*(x5458)))+(((r01)*(sj4)*(x5464)))+(((IkReal(-1.00000000000000))*(r10)*(x5463)*(x5475)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x5452)*(x5454)))+(((cj0)*(r02)*(x5471)))+(((r01)*(x5456)*(x5457)))+(((x5460)*(x5467)))+(((r12)*(sj0)*(x5471)))+(((IkReal(-1.00000000000000))*(px)*(x5450)))+(((IkReal(-1.00000000000000))*(r01)*(x5454)*(x5456)))+(((x5459)*(x5466)))+(((IkReal(-1.00000000000000))*(py)*(x5463)))+(((r00)*(x5457)*(x5464)))+(((r10)*(x5452)*(x5457)))+(((IkReal(-1.00000000000000))*(sj0)*(x5454)*(x5472)))+(((IkReal(-1.00000000000000))*(r00)*(x5454)*(x5464)))+(((sj0)*(x5457)*(x5472)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5477=((r20)*(sj6)); +IkReal x5478=((cj4)*(cj5)); +IkReal x5479=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5477)*(x5478)))+(((x5478)*(x5479))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5477)))+(((sj5)*(x5479))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5477)*(x5478)))+(((x5478)*(x5479)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5477)))+(((sj5)*(x5479)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5477)*(x5478)))+(((x5478)*(x5479)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5477)))+(((sj5)*(x5479))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5480=IKsin(j3); +IkReal x5481=((sj0)*(sj5)); +IkReal x5482=((r00)*(sj6)); +IkReal x5483=((cj6)*(r01)); +IkReal x5484=((cj5)*(sj0)); +IkReal x5485=((cj0)*(cj5)); +IkReal x5486=((cj6)*(sj4)); +IkReal x5487=((sj4)*(sj6)); +IkReal x5488=((cj0)*(r11)); +IkReal x5489=((cj4)*(cj6)); +IkReal x5490=((cj4)*(sj6)); +IkReal x5491=((IkReal(1.00000000000000))*(cj0)); +IkReal x5492=((cj4)*(sj5)); +IkReal x5493=((sj5)*(sj6)); +IkReal x5494=((cj6)*(sj5)); +IkReal x5495=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r21)*(x5494)))+(((r20)*(x5493)))+(((IkReal(-1.00000000000000))*(x5495)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x5487)))+(((cj5)*(r20)*(x5490)))+(((IkReal(-1.00000000000000))*(x5480)))+(((r20)*(x5486)))+(((cj5)*(r21)*(x5489)))+(((r22)*(x5492)))); +evalcond[2]=((x5480)+(((IkReal(-1.00000000000000))*(r10)*(x5491)*(x5493)))+(((r12)*(x5485)))+(((IkReal(-1.00000000000000))*(r02)*(x5484)))+(((x5481)*(x5482)))+(((IkReal(-1.00000000000000))*(x5488)*(x5494)))+(((x5481)*(x5483)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x5485)*(x5489)))+(((cj4)*(x5482)*(x5484)))+(((IkReal(-1.00000000000000))*(r12)*(x5491)*(x5492)))+(((IkReal(-1.00000000000000))*(r10)*(x5485)*(x5490)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x5487)))+(((cj4)*(x5483)*(x5484)))+(((r00)*(sj0)*(x5486)))+(((cj4)*(r02)*(x5481)))+(((x5487)*(x5488)))+(((IkReal(-1.00000000000000))*(r10)*(x5486)*(x5491)))+(((IkReal(-1.00000000000000))*(x5495)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5496=((IkReal(1.00000000000000))*(cj0)); +IkReal x5497=((cj4)*(sj6)); +IkReal x5498=((sj0)*(sj6)); +IkReal x5499=((cj5)*(sj4)); +IkReal x5500=((IkReal(0.374290000000000))*(sj5)); +IkReal x5501=((sj4)*(sj5)); +IkReal x5502=((cj0)*(cj6)); +IkReal x5503=((IkReal(0.0100000000000000))*(cj5)); +IkReal x5504=((cj4)*(sj5)); +IkReal x5505=((cj5)*(sj0)); +IkReal x5506=((IkReal(0.374290000000000))*(r02)); +IkReal x5507=((r20)*(sj6)); +IkReal x5508=((cj6)*(r21)); +IkReal x5509=((IkReal(1.00000000000000))*(sj0)); +IkReal x5510=((cj0)*(sj6)); +IkReal x5511=((cj4)*(cj6)); +IkReal x5512=((IkReal(0.374290000000000))*(r12)); +IkReal x5513=((cj0)*(cj5)); +IkReal x5514=((cj6)*(sj5)); +IkReal x5515=((cj6)*(r01)); +IkReal x5516=((r00)*(sj6)); +IkReal x5517=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5518=((cj6)*(r11)); +IkReal x5519=((IkReal(1.00000000000000))*(r10)); +IkReal x5520=((r02)*(sj0)); +IkReal x5521=((cj6)*(sj4)); +IkReal x5522=((r12)*(x5509)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x5497)))+(((x5499)*(x5508)))+(((x5499)*(x5507)))+(((r22)*(x5501)))+(((IkReal(-1.00000000000000))*(r20)*(x5511)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(r22)*(x5517)))+(((x5500)*(x5508)))+(((x5500)*(x5507)))+(((IkReal(-1.00000000000000))*(x5503)*(x5508)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x5503)*(x5507)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x5509)*(x5514)))+(((r12)*(x5505)))+(((IkReal(-1.00000000000000))*(sj5)*(x5496)*(x5516)))+(((IkReal(-1.00000000000000))*(r01)*(x5496)*(x5514)))+(((IkReal(-1.00000000000000))*(sj5)*(x5498)*(x5519)))+(((r02)*(x5513)))); +evalcond[4]=((((r00)*(x5498)*(x5499)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x5496)*(x5499)))+(((cj4)*(r10)*(x5502)))+(((sj0)*(x5499)*(x5515)))+(((r01)*(sj0)*(x5497)))+(((IkReal(-1.00000000000000))*(r11)*(x5496)*(x5497)))+(((IkReal(-1.00000000000000))*(r12)*(x5496)*(x5501)))+(((IkReal(-1.00000000000000))*(x5496)*(x5499)*(x5518)))+(((IkReal(-1.00000000000000))*(r00)*(x5509)*(x5511)))+(((x5501)*(x5520)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x5499)*(x5509)*(x5518)))+(((IkReal(-1.00000000000000))*(r02)*(x5496)*(x5501)))+(((IkReal(-1.00000000000000))*(x5496)*(x5499)*(x5516)))+(((IkReal(-1.00000000000000))*(r11)*(x5497)*(x5509)))+(((IkReal(-1.00000000000000))*(x5501)*(x5522)))+(((r10)*(sj0)*(x5511)))+(((cj4)*(r00)*(x5502)))+(((IkReal(-1.00000000000000))*(x5498)*(x5499)*(x5519)))+(((IkReal(-1.00000000000000))*(r01)*(x5496)*(x5497)))+(((IkReal(-1.00000000000000))*(x5496)*(x5499)*(x5515)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x5500)*(x5510)))+(((IkReal(-1.00000000000000))*(x5505)*(x5506)))+(((IkReal(-1.00000000000000))*(sj0)*(x5503)*(x5515)))+(((cj0)*(r12)*(x5517)))+(((r10)*(x5503)*(x5510)))+(((r11)*(x5502)*(x5503)))+(((IkReal(-1.00000000000000))*(r00)*(x5498)*(x5503)))+(((IkReal(-1.00000000000000))*(py)*(x5496)))+(((r00)*(x5498)*(x5500)))+(((sj0)*(x5500)*(x5515)))+(((IkReal(-1.00000000000000))*(x5517)*(x5520)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x5500)*(x5502)))+(((x5512)*(x5513)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x5496)*(x5497)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x5496)*(x5511)))+(((IkReal(-1.00000000000000))*(x5504)*(x5522)))+(((IkReal(-1.00000000000000))*(r02)*(x5496)*(x5504)))+(((r01)*(sj4)*(x5510)))+(((IkReal(-1.00000000000000))*(x5497)*(x5505)*(x5519)))+(((IkReal(-1.00000000000000))*(r10)*(x5509)*(x5521)))+(((r11)*(sj4)*(x5498)))+(((IkReal(-1.00000000000000))*(r11)*(x5505)*(x5511)))+(((IkReal(-1.00000000000000))*(r00)*(x5496)*(x5521)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x5509)))+(((r00)*(x5503)*(x5510)))+(((IkReal(-1.00000000000000))*(sj0)*(x5500)*(x5518)))+(((IkReal(-1.00000000000000))*(px)*(x5496)))+(((IkReal(-1.00000000000000))*(r10)*(x5498)*(x5500)))+(((r01)*(x5502)*(x5503)))+(((r10)*(x5498)*(x5503)))+(((IkReal(-1.00000000000000))*(r01)*(x5500)*(x5502)))+(((sj0)*(x5503)*(x5518)))+(((x5505)*(x5512)))+(((r12)*(sj0)*(x5517)))+(((x5506)*(x5513)))+(((IkReal(-1.00000000000000))*(r00)*(x5500)*(x5510)))+(((cj0)*(r02)*(x5517)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5523=((IkReal(1.00000000000000))*(sj5)); +IkReal x5524=((cj6)*(r21)); +IkReal x5525=((r20)*(sj6)); +IkReal x5526=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x5524)*(x5526)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5525)*(x5526)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5523)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x5523)*(x5525)))+(((IkReal(-1.00000000000000))*(x5523)*(x5524)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x5524)*(x5526)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5525)*(x5526)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5523)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x5523)*(x5525)))+(((IkReal(-1.00000000000000))*(x5523)*(x5524)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x5524)*(x5526)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x5525)*(x5526)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x5523)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x5523)*(x5525)))+(((IkReal(-1.00000000000000))*(x5523)*(x5524)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5527=IKsin(j3); +IkReal x5528=IKcos(j3); +IkReal x5529=((sj0)*(sj5)); +IkReal x5530=((r00)*(sj6)); +IkReal x5531=((cj6)*(r01)); +IkReal x5532=((cj0)*(cj5)); +IkReal x5533=((IkReal(1.00000000000000))*(cj5)); +IkReal x5534=((cj4)*(cj5)); +IkReal x5535=((cj6)*(sj4)); +IkReal x5536=((sj4)*(sj6)); +IkReal x5537=((cj0)*(r11)); +IkReal x5538=((IkReal(1.00000000000000))*(cj4)); +IkReal x5539=((cj6)*(r21)); +IkReal x5540=((r20)*(sj6)); +IkReal x5541=((cj0)*(sj5)); +IkReal x5542=((r10)*(sj6)); +evalcond[0]=((((sj5)*(x5540)))+(((IkReal(-1.00000000000000))*(r22)*(x5533)))+(x5528)+(((sj5)*(x5539)))); +evalcond[1]=((((x5534)*(x5540)))+(((cj4)*(r22)*(sj5)))+(((x5534)*(x5539)))+(x5527)+(((r20)*(x5535)))+(((IkReal(-1.00000000000000))*(r21)*(x5536)))); +evalcond[2]=((((x5529)*(x5531)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x5537)))+(((r12)*(x5532)))+(x5527)+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x5533)))+(((x5529)*(x5530)))+(((IkReal(-1.00000000000000))*(x5541)*(x5542)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x5538)*(x5541)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5532)*(x5538)))+(((r00)*(sj0)*(x5535)))+(((x5536)*(x5537)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x5535)))+(((IkReal(-1.00000000000000))*(x5528)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x5536)))+(((IkReal(-1.00000000000000))*(x5532)*(x5538)*(x5542)))+(((sj0)*(x5531)*(x5534)))+(((cj4)*(r02)*(x5529)))+(((sj0)*(x5530)*(x5534)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5543=((IkReal(1.00000000000000))*(cj0)); +IkReal x5544=((cj4)*(sj6)); +IkReal x5545=((sj0)*(sj4)); +IkReal x5546=((cj5)*(sj6)); +IkReal x5547=((sj4)*(sj5)); +IkReal x5548=((r12)*(sj5)); +IkReal x5549=((IkReal(0.374290000000000))*(cj5)); +IkReal x5550=((r02)*(sj0)); +IkReal x5551=((r20)*(sj4)); +IkReal x5552=((IkReal(1.00000000000000))*(sj0)); +IkReal x5553=((IkReal(1.00000000000000))*(cj5)); +IkReal x5554=((cj0)*(r10)); +IkReal x5555=((cj4)*(cj6)); +IkReal x5556=((r00)*(sj0)); +IkReal x5557=((cj6)*(r21)); +IkReal x5558=((IkReal(0.374290000000000))*(sj5)); +IkReal x5559=((cj0)*(r00)); +IkReal x5560=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5561=((cj0)*(r02)); +IkReal x5562=((cj5)*(sj4)); +IkReal x5563=((cj6)*(r01)); +IkReal x5564=((cj6)*(r11)); +IkReal x5565=((r01)*(sj0)); +IkReal x5566=((r10)*(sj0)); +IkReal x5567=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x5568=((sj6)*(x5558)); +IkReal x5569=((cj0)*(cj6)*(x5558)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x5553)))+(((sj5)*(x5557)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x5546)*(x5551)))+(((x5557)*(x5562)))+(((r22)*(x5547)))+(((IkReal(-1.00000000000000))*(r20)*(x5555)))+(((r21)*(x5544)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x5560)))+(((x5557)*(x5558)))+(((IkReal(-0.0100000000000000))*(cj5)*(x5557)))+(((r20)*(x5568)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x5549)))+(((IkReal(-0.0100000000000000))*(r20)*(x5546)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x5551)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x5555)))+(((cj5)*(r20)*(x5544)))); +evalcond[5]=((((r02)*(sj5)*(x5545)))+(((cj5)*(x5545)*(x5563)))+(((r00)*(x5545)*(x5546)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x5543)*(x5546)))+(((IkReal(-1.00000000000000))*(x5543)*(x5562)*(x5564)))+(((IkReal(-1.00000000000000))*(r00)*(x5552)*(x5555)))+(((x5544)*(x5565)))+(((IkReal(-1.00000000000000))*(r11)*(x5543)*(x5544)))+(((IkReal(-1.00000000000000))*(r12)*(x5543)*(x5547)))+(((x5554)*(x5555)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r02)*(x5543)*(x5547)))+(((IkReal(-1.00000000000000))*(r10)*(x5545)*(x5546)))+(((IkReal(-1.00000000000000))*(x5545)*(x5548)))+(((x5555)*(x5566)))+(((IkReal(-1.00000000000000))*(x5545)*(x5553)*(x5564)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x5543)*(x5546)))+(((IkReal(-1.00000000000000))*(x5543)*(x5562)*(x5563)))+(((IkReal(-1.00000000000000))*(r11)*(x5544)*(x5552)))+(((IkReal(-1.00000000000000))*(r01)*(x5543)*(x5544)))+(((x5555)*(x5559)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x5554)*(x5568)))+(((IkReal(-1.00000000000000))*(cj0)*(x5558)*(x5564)))+(((IkReal(0.0100000000000000))*(x5546)*(x5554)))+(((IkReal(-1.00000000000000))*(x5549)*(x5550)))+(((sj0)*(x5558)*(x5563)))+(((x5556)*(x5568)))+(((cj0)*(r12)*(x5549)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x5563)))+(((IkReal(0.0100000000000000))*(cj0)*(x5548)))+(((IkReal(-1.00000000000000))*(py)*(x5543)))+(((IkReal(-1.00000000000000))*(x5550)*(x5560)))+(((IkReal(-0.0100000000000000))*(x5546)*(x5556)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5564)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(x5546)*(x5559)))+(((r12)*(sj0)*(x5549)))+(((x5549)*(x5561)))+(((IkReal(-1.00000000000000))*(x5566)*(x5568)))+(((IkReal(-1.00000000000000))*(py)*(x5552)))+(((IkReal(0.0100000000000000))*(x5546)*(x5566)))+(((IkReal(0.0100000000000000))*(sj0)*(x5548)))+(((x5560)*(x5561)))+(((IkReal(-1.00000000000000))*(sj0)*(x5558)*(x5564)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x5564)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5563)))+(((IkReal(-1.00000000000000))*(cj0)*(x5558)*(x5563)))+(((IkReal(-1.00000000000000))*(x5559)*(x5568)))+(((IkReal(-1.00000000000000))*(px)*(x5543)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5570=((cj5)*(r02)); +IkReal x5571=((cj0)*(sj5)); +IkReal x5572=((r10)*(sj6)); +IkReal x5573=((IkReal(1.00000000000000))*(cj6)); +IkReal x5574=((sj0)*(sj5)); +IkReal x5575=((cj5)*(r12)); +IkReal x5576=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((cj6)*(r11)*(x5571)))+(((IkReal(-1.00000000000000))*(cj0)*(x5575)))+(((x5571)*(x5572)))+(((IkReal(-1.00000000000000))*(x5574)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5573)*(x5574)))+(((sj0)*(x5570))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r11)*(x5573)*(x5574)))+(((IkReal(-1.00000000000000))*(x5571)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5571)*(x5573)))+(((cj0)*(x5570)))+(((IkReal(-1.00000000000000))*(x5572)*(x5574)))+(((sj0)*(x5575))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj6)*(r11)*(x5571)))+(((IkReal(-1.00000000000000))*(cj0)*(x5575)))+(((x5571)*(x5572)))+(((IkReal(-1.00000000000000))*(x5574)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5573)*(x5574)))+(((sj0)*(x5570)))))+IKsqr(((((IkReal(-1.00000000000000))*(r11)*(x5573)*(x5574)))+(((IkReal(-1.00000000000000))*(x5571)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5571)*(x5573)))+(((cj0)*(x5570)))+(((IkReal(-1.00000000000000))*(x5572)*(x5574)))+(((sj0)*(x5575)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj6)*(r11)*(x5571)))+(((IkReal(-1.00000000000000))*(cj0)*(x5575)))+(((x5571)*(x5572)))+(((IkReal(-1.00000000000000))*(x5574)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5573)*(x5574)))+(((sj0)*(x5570)))), ((((IkReal(-1.00000000000000))*(r11)*(x5573)*(x5574)))+(((IkReal(-1.00000000000000))*(x5571)*(x5576)))+(((IkReal(-1.00000000000000))*(r01)*(x5571)*(x5573)))+(((cj0)*(x5570)))+(((IkReal(-1.00000000000000))*(x5572)*(x5574)))+(((sj0)*(x5575))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5577=IKsin(j3); +IkReal x5578=((sj0)*(sj5)); +IkReal x5579=((r00)*(sj6)); +IkReal x5580=((IkReal(1.00000000000000))*(cj4)); +IkReal x5581=((cj6)*(sj0)); +IkReal x5582=((r00)*(sj4)); +IkReal x5583=((cj0)*(cj5)); +IkReal x5584=((cj6)*(r01)); +IkReal x5585=((cj5)*(sj0)); +IkReal x5586=((cj0)*(sj5)); +IkReal x5587=((cj6)*(r11)); +IkReal x5588=((r10)*(sj6)); +IkReal x5589=((r10)*(sj4)); +IkReal x5590=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x5591=((cj0)*(sj4)*(sj6)); +IkReal x5592=((sj0)*(sj4)*(sj6)); +IkReal x5593=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((x5578)*(x5584)))+(((r12)*(x5583)))+(((IkReal(-1.00000000000000))*(x5586)*(x5587)))+(((x5578)*(x5579)))+(((IkReal(-1.00000000000000))*(x5586)*(x5588)))+(((IkReal(-1.00000000000000))*(r02)*(x5585)))+(x5577)); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5578)*(x5588)))+(((r02)*(x5583)))+(((r12)*(x5585)))+(((IkReal(-1.00000000000000))*(x5579)*(x5586)))+(((IkReal(-1.00000000000000))*(x5578)*(x5587)))+(((IkReal(-1.00000000000000))*(x5584)*(x5586)))+(((IkReal(-1.00000000000000))*(x5590)))); +evalcond[2]=((((cj4)*(cj5)*(r01)*(x5581)))+(((cj4)*(r02)*(x5578)))+(((IkReal(-1.00000000000000))*(x5589)*(x5593)))+(((IkReal(-1.00000000000000))*(x5580)*(x5583)*(x5587)))+(((IkReal(-1.00000000000000))*(r12)*(x5580)*(x5586)))+(((cj4)*(x5579)*(x5585)))+(((r11)*(x5591)))+(((IkReal(-1.00000000000000))*(x5590)))+(((x5581)*(x5582)))+(((IkReal(-1.00000000000000))*(x5580)*(x5583)*(x5588)))+(((IkReal(-1.00000000000000))*(r01)*(x5592)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x5578)*(x5580)))+(((IkReal(-1.00000000000000))*(x5577)))+(((IkReal(-1.00000000000000))*(x5580)*(x5585)*(x5588)))+(((IkReal(-1.00000000000000))*(x5580)*(x5583)*(x5584)))+(((r01)*(x5591)))+(((IkReal(-1.00000000000000))*(x5579)*(x5580)*(x5583)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x5580)*(x5581)))+(((IkReal(-1.00000000000000))*(r02)*(x5580)*(x5586)))+(((IkReal(-1.00000000000000))*(x5582)*(x5593)))+(((IkReal(-1.00000000000000))*(x5581)*(x5589)))+(((r11)*(x5592)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x5594=((IkReal(1.00000000000000))*(cj0)); +IkReal x5595=((cj4)*(sj6)); +IkReal x5596=((sj0)*(sj4)); +IkReal x5597=((cj5)*(sj6)); +IkReal x5598=((sj4)*(sj5)); +IkReal x5599=((r12)*(sj5)); +IkReal x5600=((IkReal(0.374290000000000))*(cj5)); +IkReal x5601=((r02)*(sj0)); +IkReal x5602=((r20)*(sj4)); +IkReal x5603=((IkReal(1.00000000000000))*(sj0)); +IkReal x5604=((IkReal(1.00000000000000))*(cj5)); +IkReal x5605=((cj0)*(r10)); +IkReal x5606=((cj4)*(cj6)); +IkReal x5607=((r00)*(sj0)); +IkReal x5608=((cj6)*(r21)); +IkReal x5609=((IkReal(0.374290000000000))*(sj5)); +IkReal x5610=((cj0)*(r00)); +IkReal x5611=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5612=((cj0)*(r02)); +IkReal x5613=((cj5)*(sj4)); +IkReal x5614=((cj6)*(r01)); +IkReal x5615=((cj6)*(r11)); +IkReal x5616=((r01)*(sj0)); +IkReal x5617=((r10)*(sj0)); +IkReal x5618=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x5619=((sj6)*(x5609)); +IkReal x5620=((cj0)*(cj6)*(x5609)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x5608)))+(((IkReal(-1.00000000000000))*(r22)*(x5604)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x5597)*(x5602)))+(((x5608)*(x5613)))+(((r22)*(x5598)))+(((IkReal(-1.00000000000000))*(r20)*(x5606)))+(((r21)*(x5595)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x5597)))+(((IkReal(-0.0100000000000000))*(cj5)*(x5608)))+(((IkReal(-1.00000000000000))*(r22)*(x5611)))+(((x5608)*(x5609)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x5600)))+(((r20)*(x5619)))); +evalcond[4]=((((cj5)*(r21)*(x5606)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x5595)))+(((cj6)*(x5602)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5594)*(x5613)*(x5615)))+(((x5595)*(x5616)))+(((IkReal(-1.00000000000000))*(r00)*(x5603)*(x5606)))+(((IkReal(-1.00000000000000))*(r11)*(x5594)*(x5595)))+(((cj5)*(x5596)*(x5614)))+(((IkReal(-1.00000000000000))*(r12)*(x5594)*(x5598)))+(((r02)*(sj5)*(x5596)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x5594)*(x5597)))+(((r00)*(x5596)*(x5597)))+(((x5605)*(x5606)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r00)*(sj4)*(x5594)*(x5597)))+(((x5606)*(x5617)))+(((IkReal(-1.00000000000000))*(r02)*(x5594)*(x5598)))+(((IkReal(-1.00000000000000))*(x5596)*(x5604)*(x5615)))+(((IkReal(-1.00000000000000))*(x5596)*(x5599)))+(((IkReal(-1.00000000000000))*(r01)*(x5594)*(x5595)))+(((IkReal(-1.00000000000000))*(x5594)*(x5613)*(x5614)))+(((IkReal(-1.00000000000000))*(r11)*(x5595)*(x5603)))+(((x5606)*(x5610)))+(((IkReal(-1.00000000000000))*(r10)*(x5596)*(x5597)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((cj0)*(r12)*(x5600)))+(((IkReal(-1.00000000000000))*(x5601)*(x5611)))+(((sj0)*(x5609)*(x5614)))+(((IkReal(-1.00000000000000))*(x5600)*(x5601)))+(((IkReal(0.0100000000000000))*(cj0)*(x5599)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x5614)))+(((IkReal(-0.0100000000000000))*(x5597)*(x5607)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5615)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x5594)))+(((IkReal(0.0100000000000000))*(x5597)*(x5605)))+(((x5607)*(x5619)))+(((IkReal(-1.00000000000000))*(x5605)*(x5619)))+(((IkReal(-1.00000000000000))*(cj0)*(x5609)*(x5615)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x5614)))+(((IkReal(-1.00000000000000))*(cj0)*(x5609)*(x5614)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x5615)))+(((IkReal(0.0100000000000000))*(sj0)*(x5599)))+(((IkReal(-1.00000000000000))*(x5617)*(x5619)))+(((IkReal(-1.00000000000000))*(sj0)*(x5609)*(x5615)))+(((IkReal(0.0100000000000000))*(x5597)*(x5617)))+(((IkReal(-1.00000000000000))*(py)*(x5603)))+(((r12)*(sj0)*(x5600)))+(((IkReal(0.0100000000000000))*(x5597)*(x5610)))+(((x5611)*(x5612)))+(((x5600)*(x5612)))+(((IkReal(-1.00000000000000))*(x5610)*(x5619)))+(((IkReal(-1.00000000000000))*(px)*(x5594)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5621=((IkReal(1.00000000000000))*(cj5)); +IkReal x5622=((r10)*(sj5)*(sj6)); +IkReal x5623=((cj6)*(sj0)*(sj5)); +IkReal x5624=((r00)*(sj5)*(sj6)); +IkReal x5625=((cj0)*(cj6)*(sj5)); +if( IKabs(((((r11)*(x5625)))+(((cj0)*(x5622)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x5624)))+(((IkReal(-1.00000000000000))*(r01)*(x5623)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5621))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5621)))+(((r11)*(x5623)))+(((sj0)*(x5622)))+(((cj0)*(x5624)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5621)))+(((r01)*(x5625))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r11)*(x5625)))+(((cj0)*(x5622)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x5624)))+(((IkReal(-1.00000000000000))*(r01)*(x5623)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5621)))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5621)))+(((r11)*(x5623)))+(((sj0)*(x5622)))+(((cj0)*(x5624)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5621)))+(((r01)*(x5625)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r11)*(x5625)))+(((cj0)*(x5622)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x5624)))+(((IkReal(-1.00000000000000))*(r01)*(x5623)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5621)))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5621)))+(((r11)*(x5623)))+(((sj0)*(x5622)))+(((cj0)*(x5624)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5621)))+(((r01)*(x5625))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5626=IKcos(j3); +IkReal x5627=IKsin(j3); +IkReal x5628=((sj0)*(sj5)); +IkReal x5629=((r00)*(sj6)); +IkReal x5630=((IkReal(1.00000000000000))*(cj4)); +IkReal x5631=((cj6)*(sj0)); +IkReal x5632=((r00)*(sj4)); +IkReal x5633=((cj0)*(cj5)); +IkReal x5634=((cj6)*(r01)); +IkReal x5635=((cj5)*(sj0)); +IkReal x5636=((cj0)*(sj5)); +IkReal x5637=((cj6)*(r11)); +IkReal x5638=((r10)*(sj6)); +IkReal x5639=((r10)*(sj4)); +IkReal x5640=((cj0)*(sj4)*(sj6)); +IkReal x5641=((sj0)*(sj4)*(sj6)); +IkReal x5642=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x5635)))+(((x5628)*(x5629)))+(((IkReal(-1.00000000000000))*(x5636)*(x5638)))+(((r12)*(x5633)))+(((x5628)*(x5634)))+(x5627)+(((IkReal(-1.00000000000000))*(x5636)*(x5637)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5628)*(x5637)))+(((IkReal(-1.00000000000000))*(x5629)*(x5636)))+(((IkReal(-1.00000000000000))*(x5634)*(x5636)))+(((IkReal(-1.00000000000000))*(x5628)*(x5638)))+(((r02)*(x5633)))+(((r12)*(x5635)))+(x5626)); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x5641)))+(((IkReal(-1.00000000000000))*(r12)*(x5630)*(x5636)))+(((cj4)*(r02)*(x5628)))+(((IkReal(-1.00000000000000))*(x5630)*(x5633)*(x5638)))+(((cj4)*(cj5)*(r01)*(x5631)))+(((IkReal(-1.00000000000000))*(x5630)*(x5633)*(x5637)))+(((r11)*(x5640)))+(((cj4)*(x5629)*(x5635)))+(((x5631)*(x5632)))+(((IkReal(-1.00000000000000))*(x5639)*(x5642)))+(((IkReal(-1.00000000000000))*(x5626)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5630)*(x5635)*(x5638)))+(((r11)*(x5641)))+(((IkReal(-1.00000000000000))*(x5629)*(x5630)*(x5633)))+(((IkReal(-1.00000000000000))*(x5631)*(x5639)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x5630)*(x5631)))+(((IkReal(-1.00000000000000))*(x5630)*(x5633)*(x5634)))+(((r01)*(x5640)))+(((IkReal(-1.00000000000000))*(r12)*(x5628)*(x5630)))+(((IkReal(-1.00000000000000))*(x5632)*(x5642)))+(x5627)+(((IkReal(-1.00000000000000))*(r02)*(x5630)*(x5636)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5643=((cj5)*(r02)); +IkReal x5644=((cj0)*(sj5)); +IkReal x5645=((r10)*(sj6)); +IkReal x5646=((IkReal(1.00000000000000))*(cj6)); +IkReal x5647=((sj0)*(sj5)); +IkReal x5648=((cj5)*(r12)); +IkReal x5649=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((cj6)*(r11)*(x5644)))+(((x5644)*(x5645)))+(((IkReal(-1.00000000000000))*(cj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5647)*(x5649)))+(((IkReal(-1.00000000000000))*(r01)*(x5646)*(x5647)))+(((sj0)*(x5643))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5645)*(x5647)))+(((cj0)*(x5643)))+(((IkReal(-1.00000000000000))*(x5644)*(x5649)))+(((IkReal(-1.00000000000000))*(r11)*(x5646)*(x5647)))+(((IkReal(-1.00000000000000))*(r01)*(x5644)*(x5646))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj6)*(r11)*(x5644)))+(((x5644)*(x5645)))+(((IkReal(-1.00000000000000))*(cj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5647)*(x5649)))+(((IkReal(-1.00000000000000))*(r01)*(x5646)*(x5647)))+(((sj0)*(x5643)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5645)*(x5647)))+(((cj0)*(x5643)))+(((IkReal(-1.00000000000000))*(x5644)*(x5649)))+(((IkReal(-1.00000000000000))*(r11)*(x5646)*(x5647)))+(((IkReal(-1.00000000000000))*(r01)*(x5644)*(x5646)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj6)*(r11)*(x5644)))+(((x5644)*(x5645)))+(((IkReal(-1.00000000000000))*(cj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5647)*(x5649)))+(((IkReal(-1.00000000000000))*(r01)*(x5646)*(x5647)))+(((sj0)*(x5643)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x5648)))+(((IkReal(-1.00000000000000))*(x5645)*(x5647)))+(((cj0)*(x5643)))+(((IkReal(-1.00000000000000))*(x5644)*(x5649)))+(((IkReal(-1.00000000000000))*(r11)*(x5646)*(x5647)))+(((IkReal(-1.00000000000000))*(r01)*(x5644)*(x5646))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5650=IKsin(j3); +IkReal x5651=IKcos(j3); +IkReal x5652=((sj0)*(sj5)); +IkReal x5653=((r00)*(sj6)); +IkReal x5654=((IkReal(1.00000000000000))*(cj4)); +IkReal x5655=((cj6)*(r01)); +IkReal x5656=((cj0)*(cj5)); +IkReal x5657=((cj5)*(sj0)); +IkReal x5658=((cj6)*(r11)); +IkReal x5659=((cj0)*(sj5)); +IkReal x5660=((IkReal(1.00000000000000))*(cj1)); +IkReal x5661=((cj6)*(sj4)); +IkReal x5662=((IkReal(1.00000000000000))*(sj1)); +IkReal x5663=((cj4)*(cj5)); +IkReal x5664=((cj6)*(r21)); +IkReal x5665=((r20)*(sj6)); +IkReal x5666=((r10)*(sj6)); +IkReal x5667=((IkReal(1.00000000000000))*(cj0)); +IkReal x5668=((cj0)*(sj4)*(sj6)); +IkReal x5669=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x5664)))+(((IkReal(-1.00000000000000))*(x5651)*(x5662)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5665)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x5661)))+(((x5663)*(x5665)))+(((IkReal(-1.00000000000000))*(x5650)*(x5662)))+(((x5663)*(x5664)))); +evalcond[2]=((((x5652)*(x5653)))+(((r12)*(x5656)))+(((x5652)*(x5655)))+(((IkReal(-1.00000000000000))*(x5659)*(x5666)))+(((IkReal(-1.00000000000000))*(x5658)*(x5659)))+(x5650)+(((IkReal(-1.00000000000000))*(r02)*(x5657)))); +evalcond[3]=((((r12)*(x5657)))+(((IkReal(-1.00000000000000))*(x5651)*(x5660)))+(((r02)*(x5656)))+(((IkReal(-1.00000000000000))*(x5655)*(x5659)))+(((IkReal(-1.00000000000000))*(x5652)*(x5666)))+(((IkReal(-1.00000000000000))*(x5652)*(x5658)))+(((IkReal(-1.00000000000000))*(x5653)*(x5659)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x5669)))+(((cj4)*(x5655)*(x5657)))+(((IkReal(-1.00000000000000))*(x5654)*(x5656)*(x5658)))+(((r11)*(x5668)))+(((cj4)*(r02)*(x5652)))+(((IkReal(-1.00000000000000))*(x5654)*(x5656)*(x5666)))+(((IkReal(-1.00000000000000))*(r10)*(x5661)*(x5667)))+(((r00)*(sj0)*(x5661)))+(((cj4)*(x5653)*(x5657)))+(((IkReal(-1.00000000000000))*(r12)*(x5654)*(x5659)))+(((IkReal(-1.00000000000000))*(x5651)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x5654)*(x5659)))+(((IkReal(-1.00000000000000))*(x5650)*(x5660)))+(((r11)*(x5669)))+(((IkReal(-1.00000000000000))*(x5653)*(x5654)*(x5656)))+(((IkReal(-1.00000000000000))*(r12)*(x5652)*(x5654)))+(((IkReal(-1.00000000000000))*(r00)*(x5661)*(x5667)))+(((IkReal(-1.00000000000000))*(x5654)*(x5657)*(x5658)))+(((IkReal(-1.00000000000000))*(x5654)*(x5655)*(x5656)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5661)))+(((IkReal(-1.00000000000000))*(x5654)*(x5657)*(x5666)))+(((r01)*(x5668)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5670=((sj5)*(sj6)); +IkReal x5671=((IkReal(1.00000000000000))*(sj0)); +IkReal x5672=((cj6)*(sj5)); +IkReal x5673=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r00)*(x5670)*(x5671)))+(((cj0)*(r10)*(x5670)))+(((cj0)*(r11)*(x5672)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x5671)*(x5672)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5673))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5672)))+(((r20)*(x5670)))+(((IkReal(-1.00000000000000))*(r22)*(x5673))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r00)*(x5670)*(x5671)))+(((cj0)*(r10)*(x5670)))+(((cj0)*(r11)*(x5672)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x5671)*(x5672)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5673)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5672)))+(((r20)*(x5670)))+(((IkReal(-1.00000000000000))*(r22)*(x5673)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r00)*(x5670)*(x5671)))+(((cj0)*(r10)*(x5670)))+(((cj0)*(r11)*(x5672)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x5671)*(x5672)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x5673)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x5672)))+(((r20)*(x5670)))+(((IkReal(-1.00000000000000))*(r22)*(x5673))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5674=IKsin(j3); +IkReal x5675=IKcos(j3); +IkReal x5676=((sj0)*(sj5)); +IkReal x5677=((r00)*(sj6)); +IkReal x5678=((IkReal(1.00000000000000))*(cj4)); +IkReal x5679=((cj6)*(r01)); +IkReal x5680=((cj0)*(cj5)); +IkReal x5681=((cj5)*(sj0)); +IkReal x5682=((cj6)*(r11)); +IkReal x5683=((cj0)*(sj5)); +IkReal x5684=((IkReal(1.00000000000000))*(cj1)); +IkReal x5685=((cj6)*(sj4)); +IkReal x5686=((IkReal(1.00000000000000))*(sj1)); +IkReal x5687=((cj4)*(cj5)); +IkReal x5688=((cj6)*(r21)); +IkReal x5689=((r20)*(sj6)); +IkReal x5690=((r10)*(sj6)); +IkReal x5691=((IkReal(1.00000000000000))*(cj0)); +IkReal x5692=((cj0)*(sj4)*(sj6)); +IkReal x5693=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x5675)*(x5686)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5689)))+(((sj5)*(x5688)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5687)*(x5689)))+(((IkReal(-1.00000000000000))*(x5674)*(x5686)))+(((r20)*(x5685)))+(((cj4)*(r22)*(sj5)))+(((x5687)*(x5688)))); +evalcond[2]=((x5674)+(((IkReal(-1.00000000000000))*(x5682)*(x5683)))+(((IkReal(-1.00000000000000))*(r02)*(x5681)))+(((x5676)*(x5677)))+(((IkReal(-1.00000000000000))*(x5683)*(x5690)))+(((x5676)*(x5679)))+(((r12)*(x5680)))); +evalcond[3]=((((r02)*(x5680)))+(((IkReal(-1.00000000000000))*(x5675)*(x5684)))+(((IkReal(-1.00000000000000))*(x5679)*(x5683)))+(((IkReal(-1.00000000000000))*(x5676)*(x5690)))+(((r12)*(x5681)))+(((IkReal(-1.00000000000000))*(x5677)*(x5683)))+(((IkReal(-1.00000000000000))*(x5676)*(x5682)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5675)))+(((cj4)*(x5677)*(x5681)))+(((IkReal(-1.00000000000000))*(r01)*(x5693)))+(((r00)*(sj0)*(x5685)))+(((cj4)*(x5679)*(x5681)))+(((IkReal(-1.00000000000000))*(x5678)*(x5680)*(x5682)))+(((cj4)*(r02)*(x5676)))+(((IkReal(-1.00000000000000))*(r12)*(x5678)*(x5683)))+(((IkReal(-1.00000000000000))*(r10)*(x5685)*(x5691)))+(((r11)*(x5692)))+(((IkReal(-1.00000000000000))*(x5678)*(x5680)*(x5690)))); +evalcond[5]=((((r01)*(x5692)))+(((IkReal(-1.00000000000000))*(x5674)*(x5684)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5685)))+(((r11)*(x5693)))+(((IkReal(-1.00000000000000))*(r02)*(x5678)*(x5683)))+(((IkReal(-1.00000000000000))*(x5678)*(x5681)*(x5690)))+(((IkReal(-1.00000000000000))*(r12)*(x5676)*(x5678)))+(((IkReal(-1.00000000000000))*(x5677)*(x5678)*(x5680)))+(((IkReal(-1.00000000000000))*(x5678)*(x5681)*(x5682)))+(((IkReal(-1.00000000000000))*(x5678)*(x5679)*(x5680)))+(((IkReal(-1.00000000000000))*(r00)*(x5685)*(x5691)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5694=((r20)*(sj6)); +IkReal x5695=((cj4)*(cj5)); +IkReal x5696=((cj6)*(r21)); +if( IKabs(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5695)*(x5696)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5694)*(x5695))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst30)*(((((sj5)*(x5694)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5696))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x5695)*(x5696)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x5694)*(x5695)))))), ((gconst30)*(((((sj5)*(x5694)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5696))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x5697=IKsin(j3); +IkReal x5698=IKcos(j3); +IkReal x5699=((sj0)*(sj5)); +IkReal x5700=((r00)*(sj6)); +IkReal x5701=((IkReal(1.00000000000000))*(cj4)); +IkReal x5702=((cj6)*(r01)); +IkReal x5703=((cj0)*(cj5)); +IkReal x5704=((cj5)*(sj0)); +IkReal x5705=((cj6)*(r11)); +IkReal x5706=((cj0)*(sj5)); +IkReal x5707=((IkReal(1.00000000000000))*(cj1)); +IkReal x5708=((cj6)*(sj4)); +IkReal x5709=((IkReal(1.00000000000000))*(sj1)); +IkReal x5710=((cj4)*(cj5)); +IkReal x5711=((cj6)*(r21)); +IkReal x5712=((r20)*(sj6)); +IkReal x5713=((r10)*(sj6)); +IkReal x5714=((IkReal(1.00000000000000))*(cj0)); +IkReal x5715=((cj0)*(sj4)*(sj6)); +IkReal x5716=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x5711)))+(((IkReal(-1.00000000000000))*(x5698)*(x5709)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5712)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x5710)*(x5711)))+(((r20)*(x5708)))+(((IkReal(-1.00000000000000))*(x5697)*(x5709)))+(((x5710)*(x5712)))); +evalcond[2]=((x5697)+(((x5699)*(x5702)))+(((x5699)*(x5700)))+(((IkReal(-1.00000000000000))*(r02)*(x5704)))+(((IkReal(-1.00000000000000))*(x5706)*(x5713)))+(((IkReal(-1.00000000000000))*(x5705)*(x5706)))+(((r12)*(x5703)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5702)*(x5706)))+(((r02)*(x5703)))+(((IkReal(-1.00000000000000))*(x5700)*(x5706)))+(((IkReal(-1.00000000000000))*(x5699)*(x5705)))+(((IkReal(-1.00000000000000))*(x5698)*(x5707)))+(((r12)*(x5704)))+(((IkReal(-1.00000000000000))*(x5699)*(x5713)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5701)*(x5703)*(x5713)))+(((IkReal(-1.00000000000000))*(r01)*(x5716)))+(((IkReal(-1.00000000000000))*(x5698)))+(((IkReal(-1.00000000000000))*(r12)*(x5701)*(x5706)))+(((IkReal(-1.00000000000000))*(r10)*(x5708)*(x5714)))+(((r00)*(sj0)*(x5708)))+(((r11)*(x5715)))+(((cj4)*(x5702)*(x5704)))+(((cj4)*(x5700)*(x5704)))+(((IkReal(-1.00000000000000))*(x5701)*(x5703)*(x5705)))+(((cj4)*(r02)*(x5699)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5701)*(x5702)*(x5703)))+(((r01)*(x5715)))+(((IkReal(-1.00000000000000))*(x5700)*(x5701)*(x5703)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5708)))+(((IkReal(-1.00000000000000))*(r00)*(x5708)*(x5714)))+(((IkReal(-1.00000000000000))*(x5697)*(x5707)))+(((IkReal(-1.00000000000000))*(r12)*(x5699)*(x5701)))+(((r11)*(x5716)))+(((IkReal(-1.00000000000000))*(x5701)*(x5704)*(x5705)))+(((IkReal(-1.00000000000000))*(x5701)*(x5704)*(x5713)))+(((IkReal(-1.00000000000000))*(r02)*(x5701)*(x5706)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5717=(cj1)*(cj1); +IkReal x5718=(sj1)*(sj1); +IkReal x5719=((r00)*(sj6)); +IkReal x5720=((cj6)*(r01)); +IkReal x5721=((IkReal(1.00000000000000))*(cj1)); +IkReal x5722=((cj5)*(r22)); +IkReal x5723=((sj5)*(sj6)); +IkReal x5724=((r10)*(sj0)); +IkReal x5725=((cj1)*(cj5)); +IkReal x5726=((cj0)*(r02)); +IkReal x5727=((r12)*(sj0)); +IkReal x5728=((IkReal(1.00000000000000))*(sj1)); +IkReal x5729=((cj6)*(sj5)); +IkReal x5730=((cj0)*(sj5)); +IkReal x5731=((r11)*(sj0)); +IkReal x5732=((sj1)*(x5730)); +if( IKabs(((((IKabs(((((cj2)*(x5717)))+(((cj2)*(x5718))))) != 0)?((IkReal)1/(((((cj2)*(x5717)))+(((cj2)*(x5718)))))):(IkReal)1.0e30))*(((((x5720)*(x5732)))+(((sj1)*(x5729)*(x5731)))+(((IkReal(-1.00000000000000))*(cj5)*(x5726)*(x5728)))+(((IkReal(-1.00000000000000))*(cj5)*(x5727)*(x5728)))+(((cj1)*(r21)*(x5729)))+(((cj1)*(r20)*(x5723)))+(((x5719)*(x5732)))+(((sj1)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5721)*(x5722))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x5718)+(x5717))) != 0)?((IkReal)1/(((x5718)+(x5717)))):(IkReal)1.0e30))*(((((x5725)*(x5726)))+(((IkReal(-1.00000000000000))*(x5721)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5719)*(x5721)*(x5730)))+(((x5725)*(x5727)))+(((IkReal(-1.00000000000000))*(x5722)*(x5728)))+(((r20)*(sj1)*(x5723)))+(((r21)*(sj1)*(x5729)))+(((IkReal(-1.00000000000000))*(x5720)*(x5721)*(x5730)))+(((IkReal(-1.00000000000000))*(x5721)*(x5729)*(x5731))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x5717)))+(((cj2)*(x5718))))) != 0)?((IkReal)1/(((((cj2)*(x5717)))+(((cj2)*(x5718)))))):(IkReal)1.0e30))*(((((x5720)*(x5732)))+(((sj1)*(x5729)*(x5731)))+(((IkReal(-1.00000000000000))*(cj5)*(x5726)*(x5728)))+(((IkReal(-1.00000000000000))*(cj5)*(x5727)*(x5728)))+(((cj1)*(r21)*(x5729)))+(((cj1)*(r20)*(x5723)))+(((x5719)*(x5732)))+(((sj1)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5721)*(x5722)))))))+IKsqr(((((IKabs(((x5718)+(x5717))) != 0)?((IkReal)1/(((x5718)+(x5717)))):(IkReal)1.0e30))*(((((x5725)*(x5726)))+(((IkReal(-1.00000000000000))*(x5721)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5719)*(x5721)*(x5730)))+(((x5725)*(x5727)))+(((IkReal(-1.00000000000000))*(x5722)*(x5728)))+(((r20)*(sj1)*(x5723)))+(((r21)*(sj1)*(x5729)))+(((IkReal(-1.00000000000000))*(x5720)*(x5721)*(x5730)))+(((IkReal(-1.00000000000000))*(x5721)*(x5729)*(x5731)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x5717)))+(((cj2)*(x5718))))) != 0)?((IkReal)1/(((((cj2)*(x5717)))+(((cj2)*(x5718)))))):(IkReal)1.0e30))*(((((x5720)*(x5732)))+(((sj1)*(x5729)*(x5731)))+(((IkReal(-1.00000000000000))*(cj5)*(x5726)*(x5728)))+(((IkReal(-1.00000000000000))*(cj5)*(x5727)*(x5728)))+(((cj1)*(r21)*(x5729)))+(((cj1)*(r20)*(x5723)))+(((x5719)*(x5732)))+(((sj1)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5721)*(x5722)))))), ((((IKabs(((x5718)+(x5717))) != 0)?((IkReal)1/(((x5718)+(x5717)))):(IkReal)1.0e30))*(((((x5725)*(x5726)))+(((IkReal(-1.00000000000000))*(x5721)*(x5723)*(x5724)))+(((IkReal(-1.00000000000000))*(x5719)*(x5721)*(x5730)))+(((x5725)*(x5727)))+(((IkReal(-1.00000000000000))*(x5722)*(x5728)))+(((r20)*(sj1)*(x5723)))+(((r21)*(sj1)*(x5729)))+(((IkReal(-1.00000000000000))*(x5720)*(x5721)*(x5730)))+(((IkReal(-1.00000000000000))*(x5721)*(x5729)*(x5731))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x5733=IKsin(j3); +IkReal x5734=IKcos(j3); +IkReal x5735=((sj5)*(sj6)); +IkReal x5736=((cj0)*(cj5)); +IkReal x5737=((IkReal(1.00000000000000))*(cj0)); +IkReal x5738=((IkReal(1.00000000000000))*(sj0)); +IkReal x5739=((IkReal(1.00000000000000))*(x5734)); +IkReal x5740=((IkReal(1.00000000000000))*(x5733)); +IkReal x5741=((cj6)*(r01)*(sj5)); +IkReal x5742=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x5739)))+(((IkReal(-1.00000000000000))*(cj1)*(cj2)*(x5740)))+(((r20)*(x5735)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x5737)*(x5742)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x5738)))+(((r12)*(x5736)))+(((IkReal(-1.00000000000000))*(r10)*(x5735)*(x5737)))+(((sj0)*(x5741)))+(((IkReal(-1.00000000000000))*(sj2)*(x5740)))+(((r00)*(sj0)*(x5735)))); +evalcond[2]=((((cj2)*(sj1)*(x5733)))+(((IkReal(-1.00000000000000))*(r00)*(x5735)*(x5737)))+(((IkReal(-1.00000000000000))*(x5738)*(x5742)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(x5737)*(x5741)))+(((r02)*(x5736)))+(((IkReal(-1.00000000000000))*(r10)*(x5735)*(x5738)))+(((IkReal(-1.00000000000000))*(cj1)*(x5739)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst2; +IkReal x5743=(r21)*(r21); +IkReal x5744=(cj5)*(cj5); +IkReal x5745=(sj6)*(sj6); +IkReal x5746=(cj6)*(cj6); +IkReal x5747=(r20)*(r20); +IkReal x5748=((cj6)*(r21)); +IkReal x5749=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x5750=((cj5)*(r22)*(sj5)); +IkReal x5751=((IkReal(1.00000000000000))*(x5745)); +IkReal x5752=((IkReal(1.00000000000000))*(x5746)); +gconst2=IKsign(((((x5748)*(x5749)))+(((IkReal(-1.00000000000000))*(x5749)*(x5750)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-2.00000000000000))*(x5748)*(x5750)))+(((IkReal(-1.00000000000000))*(x5744)*(x5747)*(x5751)))+(((IkReal(-1.00000000000000))*(x5743)*(x5744)*(x5752)))+(((IkReal(-1.00000000000000))*(x5743)*(x5751)))+(((IkReal(-1.00000000000000))*(x5747)*(x5752)))+(((IkReal(-1.00000000000000))*(x5744)*(x5748)*(x5749))))); +IkReal x5753=(r21)*(r21); +IkReal x5754=(cj5)*(cj5); +IkReal x5755=(sj6)*(sj6); +IkReal x5756=(cj6)*(cj6); +IkReal x5757=(r20)*(r20); +IkReal x5758=((cj6)*(r21)); +IkReal x5759=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x5760=((cj5)*(r22)*(sj5)); +IkReal x5761=((IkReal(1.00000000000000))*(x5755)); +IkReal x5762=((IkReal(1.00000000000000))*(x5756)); +dummyeval[0]=((((IkReal(-2.00000000000000))*(x5758)*(x5760)))+(((IkReal(-1.00000000000000))*(x5753)*(x5761)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x5754)*(x5758)*(x5759)))+(((IkReal(-1.00000000000000))*(x5754)*(x5757)*(x5761)))+(((IkReal(-1.00000000000000))*(x5759)*(x5760)))+(((x5758)*(x5759)))+(((IkReal(-1.00000000000000))*(x5753)*(x5754)*(x5762)))+(((IkReal(-1.00000000000000))*(x5757)*(x5762)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst3; +IkReal x5763=(cj6)*(cj6); +IkReal x5764=(sj6)*(sj6); +IkReal x5765=((IkReal(1.00000000000000))*(r21)); +IkReal x5766=((cj6)*(r20)); +IkReal x5767=((r22)*(sj5)); +IkReal x5768=((r01)*(sj0)); +IkReal x5769=((r00)*(sj0)); +IkReal x5770=((cj0)*(r10)); +IkReal x5771=((r02)*(sj0)*(sj5)); +IkReal x5772=((cj5)*(x5763)); +IkReal x5773=((cj0)*(r12)*(sj5)); +IkReal x5774=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x5775=((cj5)*(x5764)); +IkReal x5776=((r20)*(x5775)); +gconst3=IKsign(((((IkReal(-1.00000000000000))*(x5765)*(x5769)*(x5775)))+(((sj6)*(x5767)*(x5768)))+(((IkReal(-1.00000000000000))*(x5774)*(x5776)))+(((x5768)*(x5776)))+(((r21)*(x5770)*(x5775)))+(((cj6)*(x5767)*(x5770)))+(((r21)*(x5770)*(x5772)))+(((IkReal(-1.00000000000000))*(r20)*(x5772)*(x5774)))+(((r21)*(sj6)*(x5773)))+(((IkReal(-1.00000000000000))*(x5766)*(x5773)))+(((IkReal(-1.00000000000000))*(sj6)*(x5767)*(x5774)))+(((IkReal(-1.00000000000000))*(cj6)*(x5767)*(x5769)))+(((IkReal(-1.00000000000000))*(x5765)*(x5769)*(x5772)))+(((r20)*(x5768)*(x5772)))+(((IkReal(-1.00000000000000))*(sj6)*(x5765)*(x5771)))+(((x5766)*(x5771))))); +IkReal x5777=(cj6)*(cj6); +IkReal x5778=(sj6)*(sj6); +IkReal x5779=((IkReal(1.00000000000000))*(r21)); +IkReal x5780=((cj6)*(r20)); +IkReal x5781=((r22)*(sj5)); +IkReal x5782=((r01)*(sj0)); +IkReal x5783=((r00)*(sj0)); +IkReal x5784=((cj0)*(r10)); +IkReal x5785=((r02)*(sj0)*(sj5)); +IkReal x5786=((cj5)*(x5777)); +IkReal x5787=((cj0)*(r12)*(sj5)); +IkReal x5788=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x5789=((cj5)*(x5778)); +IkReal x5790=((r20)*(x5789)); +dummyeval[0]=((((x5780)*(x5785)))+(((r20)*(x5782)*(x5786)))+(((sj6)*(x5781)*(x5782)))+(((x5782)*(x5790)))+(((IkReal(-1.00000000000000))*(cj6)*(x5781)*(x5783)))+(((r21)*(x5784)*(x5789)))+(((r21)*(sj6)*(x5787)))+(((IkReal(-1.00000000000000))*(r20)*(x5786)*(x5788)))+(((IkReal(-1.00000000000000))*(sj6)*(x5779)*(x5785)))+(((IkReal(-1.00000000000000))*(x5788)*(x5790)))+(((r21)*(x5784)*(x5786)))+(((IkReal(-1.00000000000000))*(sj6)*(x5781)*(x5788)))+(((IkReal(-1.00000000000000))*(x5779)*(x5783)*(x5786)))+(((IkReal(-1.00000000000000))*(x5780)*(x5787)))+(((cj6)*(x5781)*(x5784)))+(((IkReal(-1.00000000000000))*(x5779)*(x5783)*(x5789)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5791=((cj5)*(sj6)); +IkReal x5792=((cj2)*(r21)); +IkReal x5793=((cj5)*(cj6)); +IkReal x5794=((IkReal(1.00000000000000))*(cj2)*(r20)); +IkReal x5795=((cj0)*(cj1)*(sj2)); +IkReal x5796=((IkReal(1.00000000000000))*(cj1)*(sj0)*(sj2)); +IkReal x5797=((r10)*(x5795)); +if( IKabs(((gconst3)*(((((IkReal(-1.00000000000000))*(r11)*(sj6)*(x5795)))+(((sj6)*(x5792)))+(((IkReal(-1.00000000000000))*(cj6)*(x5794)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x5796)))+(((cj1)*(r01)*(sj0)*(sj2)*(sj6)))+(((cj6)*(x5797))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst3)*(((((IkReal(-1.00000000000000))*(x5792)*(x5793)))+(((r11)*(x5793)*(x5795)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x5796)))+(((x5791)*(x5797)))+(((IkReal(-1.00000000000000))*(r01)*(x5793)*(x5796)))+(((IkReal(-1.00000000000000))*(r00)*(x5791)*(x5796)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x5791)*(x5794)))+(((r12)*(sj5)*(x5795))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst3)*(((((IkReal(-1.00000000000000))*(r11)*(sj6)*(x5795)))+(((sj6)*(x5792)))+(((IkReal(-1.00000000000000))*(cj6)*(x5794)))+(((IkReal(-1.00000000000000))*(cj6)*(r00)*(x5796)))+(((cj1)*(r01)*(sj0)*(sj2)*(sj6)))+(((cj6)*(x5797)))))), ((gconst3)*(((((IkReal(-1.00000000000000))*(x5792)*(x5793)))+(((r11)*(x5793)*(x5795)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x5796)))+(((x5791)*(x5797)))+(((IkReal(-1.00000000000000))*(r01)*(x5793)*(x5796)))+(((IkReal(-1.00000000000000))*(r00)*(x5791)*(x5796)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x5791)*(x5794)))+(((r12)*(sj5)*(x5795))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x5798=IKsin(j4); +IkReal x5799=IKcos(j4); +IkReal x5800=((r00)*(sj6)); +IkReal x5801=((IkReal(1.00000000000000))*(r12)); +IkReal x5802=((IkReal(1.00000000000000))*(cj6)); +IkReal x5803=((cj6)*(r01)); +IkReal x5804=((IkReal(1.00000000000000))*(cj1)); +IkReal x5805=((cj2)*(cj3)); +IkReal x5806=((IkReal(1.00000000000000))*(sj1)); +IkReal x5807=((r11)*(sj6)); +IkReal x5808=((r01)*(sj6)); +IkReal x5809=((IkReal(1.00000000000000))*(cj5)); +IkReal x5810=((r10)*(sj6)); +IkReal x5811=((cj5)*(r11)); +IkReal x5812=((cj6)*(r00)); +IkReal x5813=((r21)*(sj6)); +IkReal x5814=((r02)*(sj5)); +IkReal x5815=((cj6)*(r10)); +IkReal x5816=((cj5)*(sj6)); +IkReal x5817=((cj5)*(r01)); +IkReal x5818=((sj5)*(x5798)); +IkReal x5819=((cj0)*(x5799)); +IkReal x5820=((cj0)*(x5798)); +IkReal x5821=((sj0)*(x5799)); +IkReal x5822=((sj0)*(x5798)); +IkReal x5823=((r20)*(x5799)); +IkReal x5824=((cj5)*(cj6)*(r21)); +IkReal x5825=((r20)*(x5798)); +IkReal x5826=((cj5)*(x5822)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj2)*(x5804)))+(((x5816)*(x5825)))+(((r22)*(x5818)))+(((IkReal(-1.00000000000000))*(x5802)*(x5823)))+(((x5798)*(x5824)))+(((x5799)*(x5813)))); +evalcond[1]=((((x5799)*(x5824)))+(((IkReal(-1.00000000000000))*(sj3)*(x5806)))+(((cj1)*(x5805)))+(((r22)*(sj5)*(x5799)))+(((IkReal(-1.00000000000000))*(x5798)*(x5813)))+(((x5816)*(x5823)))+(((cj6)*(x5825)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r00)*(x5802)*(x5821)))+(((IkReal(-1.00000000000000))*(cj0)*(x5801)*(x5818)))+(((IkReal(-1.00000000000000))*(x5802)*(x5811)*(x5820)))+(((x5808)*(x5821)))+(cj2)+(((x5803)*(x5826)))+(((IkReal(-1.00000000000000))*(x5809)*(x5810)*(x5820)))+(((x5800)*(x5826)))+(((x5815)*(x5819)))+(((IkReal(-1.00000000000000))*(x5807)*(x5819)))+(((x5814)*(x5822)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x5802)*(x5820)))+(((cj5)*(x5803)*(x5821)))+(((IkReal(-1.00000000000000))*(sj5)*(x5801)*(x5819)))+(((x5807)*(x5820)))+(((IkReal(-1.00000000000000))*(x5808)*(x5822)))+(((x5814)*(x5821)))+(((x5812)*(x5822)))+(((IkReal(-1.00000000000000))*(x5809)*(x5810)*(x5819)))+(((cj3)*(sj2)))+(((cj5)*(x5800)*(x5821)))+(((IkReal(-1.00000000000000))*(x5802)*(x5811)*(x5819)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5809)*(x5810)*(x5822)))+(((x5815)*(x5821)))+(((IkReal(-1.00000000000000))*(x5814)*(x5820)))+(((IkReal(-1.00000000000000))*(x5808)*(x5819)))+(((x5812)*(x5819)))+(((IkReal(-1.00000000000000))*(sj0)*(x5801)*(x5818)))+(((IkReal(-1.00000000000000))*(x5807)*(x5821)))+(((IkReal(-1.00000000000000))*(x5800)*(x5809)*(x5820)))+(((sj1)*(sj2)))+(((IkReal(-1.00000000000000))*(x5802)*(x5811)*(x5822)))+(((IkReal(-1.00000000000000))*(x5802)*(x5817)*(x5820)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x5801)*(x5821)))+(((IkReal(-1.00000000000000))*(x5802)*(x5817)*(x5819)))+(((IkReal(-1.00000000000000))*(x5805)*(x5806)))+(((IkReal(-1.00000000000000))*(x5814)*(x5819)))+(((IkReal(-1.00000000000000))*(r10)*(x5802)*(x5822)))+(((IkReal(-1.00000000000000))*(x5809)*(x5810)*(x5821)))+(((IkReal(-1.00000000000000))*(x5802)*(x5811)*(x5821)))+(((x5808)*(x5820)))+(((IkReal(-1.00000000000000))*(r00)*(x5802)*(x5820)))+(((x5807)*(x5822)))+(((IkReal(-1.00000000000000))*(sj3)*(x5804)))+(((IkReal(-1.00000000000000))*(x5800)*(x5809)*(x5819)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5827=((cj1)*(sj2)); +IkReal x5828=((cj6)*(r20)); +IkReal x5829=((sj1)*(sj3)); +IkReal x5830=((r21)*(sj6)); +IkReal x5831=((IkReal(1.00000000000000))*(cj5)); +IkReal x5832=((cj6)*(r21)); +IkReal x5833=((r20)*(sj6)); +IkReal x5834=((IkReal(1.00000000000000))*(r22)*(sj5)); +IkReal x5835=((cj1)*(cj2)*(cj3)); +if( IKabs(((gconst2)*(((((IkReal(-1.00000000000000))*(x5827)*(x5831)*(x5832)))+(((x5828)*(x5835)))+(((IkReal(-1.00000000000000))*(x5827)*(x5831)*(x5833)))+(((IkReal(-1.00000000000000))*(x5830)*(x5835)))+(((x5829)*(x5830)))+(((IkReal(-1.00000000000000))*(x5827)*(x5834)))+(((IkReal(-1.00000000000000))*(x5828)*(x5829))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst2)*(((((IkReal(-1.00000000000000))*(x5829)*(x5831)*(x5832)))+(((IkReal(-1.00000000000000))*(x5829)*(x5834)))+(((cj5)*(x5833)*(x5835)))+(((IkReal(-1.00000000000000))*(x5827)*(x5830)))+(((x5827)*(x5828)))+(((r22)*(sj5)*(x5835)))+(((cj5)*(x5832)*(x5835)))+(((IkReal(-1.00000000000000))*(x5829)*(x5831)*(x5833))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst2)*(((((IkReal(-1.00000000000000))*(x5827)*(x5831)*(x5832)))+(((x5828)*(x5835)))+(((IkReal(-1.00000000000000))*(x5827)*(x5831)*(x5833)))+(((IkReal(-1.00000000000000))*(x5830)*(x5835)))+(((x5829)*(x5830)))+(((IkReal(-1.00000000000000))*(x5827)*(x5834)))+(((IkReal(-1.00000000000000))*(x5828)*(x5829)))))), ((gconst2)*(((((IkReal(-1.00000000000000))*(x5829)*(x5831)*(x5832)))+(((IkReal(-1.00000000000000))*(x5829)*(x5834)))+(((cj5)*(x5833)*(x5835)))+(((IkReal(-1.00000000000000))*(x5827)*(x5830)))+(((x5827)*(x5828)))+(((r22)*(sj5)*(x5835)))+(((cj5)*(x5832)*(x5835)))+(((IkReal(-1.00000000000000))*(x5829)*(x5831)*(x5833))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x5836=IKsin(j4); +IkReal x5837=IKcos(j4); +IkReal x5838=((r00)*(sj6)); +IkReal x5839=((IkReal(1.00000000000000))*(r12)); +IkReal x5840=((IkReal(1.00000000000000))*(cj6)); +IkReal x5841=((cj6)*(r01)); +IkReal x5842=((IkReal(1.00000000000000))*(cj1)); +IkReal x5843=((cj2)*(cj3)); +IkReal x5844=((IkReal(1.00000000000000))*(sj1)); +IkReal x5845=((r11)*(sj6)); +IkReal x5846=((r01)*(sj6)); +IkReal x5847=((IkReal(1.00000000000000))*(cj5)); +IkReal x5848=((r10)*(sj6)); +IkReal x5849=((cj5)*(r11)); +IkReal x5850=((cj6)*(r00)); +IkReal x5851=((r21)*(sj6)); +IkReal x5852=((r02)*(sj5)); +IkReal x5853=((cj6)*(r10)); +IkReal x5854=((cj5)*(sj6)); +IkReal x5855=((cj5)*(r01)); +IkReal x5856=((sj5)*(x5836)); +IkReal x5857=((cj0)*(x5837)); +IkReal x5858=((cj0)*(x5836)); +IkReal x5859=((sj0)*(x5837)); +IkReal x5860=((sj0)*(x5836)); +IkReal x5861=((r20)*(x5837)); +IkReal x5862=((cj5)*(cj6)*(r21)); +IkReal x5863=((r20)*(x5836)); +IkReal x5864=((cj5)*(x5860)); +evalcond[0]=((((x5837)*(x5851)))+(((r22)*(x5856)))+(((x5836)*(x5862)))+(((IkReal(-1.00000000000000))*(x5840)*(x5861)))+(((x5854)*(x5863)))+(((IkReal(-1.00000000000000))*(sj2)*(x5842)))); +evalcond[1]=((((x5837)*(x5862)))+(((IkReal(-1.00000000000000))*(sj3)*(x5844)))+(((IkReal(-1.00000000000000))*(x5836)*(x5851)))+(((x5854)*(x5861)))+(((cj1)*(x5843)))+(((cj6)*(x5863)))+(((r22)*(sj5)*(x5837)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj0)*(x5839)*(x5856)))+(((IkReal(-1.00000000000000))*(x5840)*(x5849)*(x5858)))+(((x5853)*(x5857)))+(((IkReal(-1.00000000000000))*(r00)*(x5840)*(x5859)))+(((IkReal(-1.00000000000000))*(x5845)*(x5857)))+(cj2)+(((IkReal(-1.00000000000000))*(x5847)*(x5848)*(x5858)))+(((x5846)*(x5859)))+(((x5841)*(x5864)))+(((x5838)*(x5864)))+(((x5852)*(x5860)))); +evalcond[3]=((((cj5)*(x5838)*(x5859)))+(((cj5)*(x5841)*(x5859)))+(((x5852)*(x5859)))+(((x5850)*(x5860)))+(((IkReal(-1.00000000000000))*(sj5)*(x5839)*(x5857)))+(((x5845)*(x5858)))+(((IkReal(-1.00000000000000))*(x5840)*(x5849)*(x5857)))+(((IkReal(-1.00000000000000))*(r10)*(x5840)*(x5858)))+(((IkReal(-1.00000000000000))*(x5847)*(x5848)*(x5857)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(x5846)*(x5860)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x5852)*(x5858)))+(((IkReal(-1.00000000000000))*(x5840)*(x5855)*(x5858)))+(((IkReal(-1.00000000000000))*(x5847)*(x5848)*(x5860)))+(((IkReal(-1.00000000000000))*(x5840)*(x5849)*(x5860)))+(((IkReal(-1.00000000000000))*(sj0)*(x5839)*(x5856)))+(((x5853)*(x5859)))+(((IkReal(-1.00000000000000))*(x5838)*(x5847)*(x5858)))+(((x5850)*(x5857)))+(((IkReal(-1.00000000000000))*(x5845)*(x5859)))+(((sj1)*(sj2)))+(((IkReal(-1.00000000000000))*(x5846)*(x5857)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x5840)*(x5855)*(x5857)))+(((IkReal(-1.00000000000000))*(x5852)*(x5857)))+(((IkReal(-1.00000000000000))*(x5838)*(x5847)*(x5857)))+(((IkReal(-1.00000000000000))*(r10)*(x5840)*(x5860)))+(((IkReal(-1.00000000000000))*(x5847)*(x5848)*(x5859)))+(((x5845)*(x5860)))+(((IkReal(-1.00000000000000))*(x5840)*(x5849)*(x5859)))+(((IkReal(-1.00000000000000))*(r00)*(x5840)*(x5858)))+(((x5846)*(x5858)))+(((IkReal(-1.00000000000000))*(x5843)*(x5844)))+(((IkReal(-1.00000000000000))*(sj3)*(x5842)))+(((IkReal(-1.00000000000000))*(sj5)*(x5839)*(x5859)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x5865=((cj0)*(r00)); +IkReal x5866=((r10)*(sj0)); +IkReal x5867=((cj0)*(r01)); +IkReal x5868=((IkReal(1.00000000000000))*(cj5)); +IkReal x5869=((r11)*(sj0)); +IkReal x5870=((sj2)*(sj5)); +IkReal x5871=((IkReal(1.00000000000000))*(cj1)); +IkReal x5872=((r20)*(sj1)*(sj2)); +IkReal x5873=((cj1)*(sj2)*(sj6)); +IkReal x5874=((r21)*(sj1)*(sj2)); +IkReal x5875=((cj6)*(sj2)*(x5871)); +if( IKabs(((gconst1)*(((((IkReal(-1.00000000000000))*(sj6)*(x5874)))+(((IkReal(-1.00000000000000))*(x5865)*(x5875)))+(((x5867)*(x5873)))+(((x5869)*(x5873)))+(((cj6)*(x5872)))+(((IkReal(-1.00000000000000))*(x5866)*(x5875))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst1)*(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5870)*(x5871)))+(((cj5)*(sj6)*(x5872)))+(((IkReal(-1.00000000000000))*(x5866)*(x5868)*(x5873)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5870)*(x5871)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x5868)*(x5869)))+(((r22)*(sj1)*(x5870)))+(((cj5)*(cj6)*(x5874)))+(((IkReal(-1.00000000000000))*(x5865)*(x5868)*(x5873)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x5867)*(x5868))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst1)*(((((IkReal(-1.00000000000000))*(sj6)*(x5874)))+(((IkReal(-1.00000000000000))*(x5865)*(x5875)))+(((x5867)*(x5873)))+(((x5869)*(x5873)))+(((cj6)*(x5872)))+(((IkReal(-1.00000000000000))*(x5866)*(x5875)))))), ((gconst1)*(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x5870)*(x5871)))+(((cj5)*(sj6)*(x5872)))+(((IkReal(-1.00000000000000))*(x5866)*(x5868)*(x5873)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x5870)*(x5871)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x5868)*(x5869)))+(((r22)*(sj1)*(x5870)))+(((cj5)*(cj6)*(x5874)))+(((IkReal(-1.00000000000000))*(x5865)*(x5868)*(x5873)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x5867)*(x5868))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x5876=IKsin(j4); +IkReal x5877=IKcos(j4); +IkReal x5878=((r00)*(sj6)); +IkReal x5879=((cj6)*(r01)); +IkReal x5880=((IkReal(1.00000000000000))*(cj0)); +IkReal x5881=((IkReal(1.00000000000000))*(sj0)); +IkReal x5882=((r10)*(sj6)); +IkReal x5883=((sj5)*(x5876)); +IkReal x5884=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x5885=((cj5)*(x5876)); +IkReal x5886=((cj6)*(x5877)); +IkReal x5887=((sj0)*(x5885)); +IkReal x5888=((r01)*(sj6)*(x5877)); +IkReal x5889=((r11)*(sj6)*(x5877)); +evalcond[0]=((((cj6)*(r21)*(x5885)))+(((r22)*(x5883)))+(((IkReal(-1.00000000000000))*(cj1)*(sj2)))+(((r20)*(sj6)*(x5885)))+(((r21)*(sj6)*(x5877)))+(((IkReal(-1.00000000000000))*(r20)*(x5886)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5880)*(x5885)))+(((IkReal(-1.00000000000000))*(x5880)*(x5889)))+(((r02)*(sj0)*(x5883)))+(((IkReal(-1.00000000000000))*(r00)*(x5881)*(x5886)))+(((IkReal(-1.00000000000000))*(r12)*(x5880)*(x5883)))+(((IkReal(-1.00000000000000))*(x5880)*(x5882)*(x5885)))+(cj2)+(((x5878)*(x5887)))+(((x5879)*(x5887)))+(((sj0)*(x5888)))+(((cj0)*(r10)*(x5886)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5878)*(x5880)*(x5885)))+(((IkReal(-1.00000000000000))*(x5880)*(x5888)))+(((IkReal(-1.00000000000000))*(x5879)*(x5880)*(x5885)))+(((IkReal(-1.00000000000000))*(x5881)*(x5882)*(x5885)))+(((r10)*(sj0)*(x5886)))+(((cj0)*(r00)*(x5886)))+(((IkReal(-1.00000000000000))*(x5881)*(x5889)))+(((IkReal(-1.00000000000000))*(r02)*(x5880)*(x5883)))+(((sj1)*(sj2)))+(((IkReal(-1.00000000000000))*(r12)*(x5881)*(x5883)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x5881)*(x5885)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst4; +gconst4=IKsign((((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2)))))); +dummyeval[0]=(((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2))))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x5890=(cj1)*(cj1); +IkReal x5891=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x5890)))+(((cj2)*(x5891)))); +dummyeval[1]=((x5890)+(x5891)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +dummyeval[0]=sj2; +dummyeval[1]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x5892=((cj5)*(sj4)); +IkReal x5893=((IkReal(1.00000000000000))*(sj6)); +IkReal x5894=((r10)*(sj0)); +IkReal x5895=((sj4)*(sj5)); +IkReal x5896=((cj4)*(cj5)); +IkReal x5897=((IkReal(1.00000000000000))*(r02)); +IkReal x5898=((IkReal(0.374290000000000))*(cj0)); +IkReal x5899=((cj5)*(r12)); +IkReal x5900=((cj6)*(sj5)); +IkReal x5901=((cj0)*(r11)); +IkReal x5902=((cj5)*(sj0)); +IkReal x5903=((r20)*(sj6)); +IkReal x5904=((IkReal(1.00000000000000))*(sj0)); +IkReal x5905=((IkReal(1.00000000000000))*(cj6)); +IkReal x5906=((IkReal(0.0100000000000000))*(cj5)); +IkReal x5907=((IkReal(0.0100000000000000))*(sj5)); +IkReal x5908=((sj5)*(sj6)); +IkReal x5909=((cj0)*(r10)); +IkReal x5910=((cj4)*(cj6)); +IkReal x5911=((cj0)*(r01)); +IkReal x5912=((cj0)*(r00)); +IkReal x5913=((cj6)*(r21)); +IkReal x5914=((IkReal(0.374290000000000))*(sj0)); +IkReal x5915=((IkReal(0.374290000000000))*(sj5)); +IkReal x5916=((cj6)*(r11)); +IkReal x5917=((sj0)*(sj4)); +IkReal x5918=((cj4)*(sj5)); +IkReal x5919=((cj4)*(sj6)); +IkReal x5920=((IkReal(1.00000000000000))*(cj0)); +IkReal x5921=((r02)*(sj0)); +IkReal x5922=((r00)*(sj0)*(sj6)); +IkReal x5923=((cj6)*(r01)*(sj0)); +IkReal x5924=((r00)*(x5910)); +IkReal x5925=((r12)*(x5920)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x5892)*(x5913)))+(((x5892)*(x5903)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x5905)))+(((r21)*(x5919)))+(((r22)*(x5895)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5906)*(x5913)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(0.374290000000000))*(r21)*(x5900)))+(((IkReal(-1.00000000000000))*(r22)*(x5907)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x5903)*(x5915)))+(((IkReal(-1.00000000000000))*(x5903)*(x5906)))+(((IkReal(0.0690000000000000))*(cj1)))); +evalcond[3]=((((r01)*(sj0)*(x5900)))+(((IkReal(-1.00000000000000))*(x5900)*(x5901)))+(((r00)*(sj0)*(x5908)))+(((IkReal(-1.00000000000000))*(sj5)*(x5893)*(x5909)))+(((cj0)*(x5899)))+(((IkReal(-1.00000000000000))*(x5897)*(x5902)))); +evalcond[4]=((IkReal(1.00000000000000))+(((x5892)*(x5922)))+(((IkReal(-1.00000000000000))*(x5892)*(x5901)*(x5905)))+(((IkReal(-1.00000000000000))*(x5904)*(x5924)))+(((x5895)*(x5921)))+(((x5909)*(x5910)))+(((IkReal(-1.00000000000000))*(cj4)*(x5893)*(x5901)))+(((r01)*(sj0)*(x5919)))+(((x5892)*(x5923)))+(((IkReal(-1.00000000000000))*(x5895)*(x5925)))+(((IkReal(-1.00000000000000))*(x5892)*(x5893)*(x5909)))); +evalcond[5]=((((sj4)*(sj6)*(x5901)))+(((IkReal(-1.00000000000000))*(sj4)*(x5905)*(x5909)))+(((IkReal(-1.00000000000000))*(x5918)*(x5925)))+(((x5896)*(x5922)))+(((IkReal(-1.00000000000000))*(x5896)*(x5901)*(x5905)))+(((x5918)*(x5921)))+(((IkReal(-1.00000000000000))*(r01)*(x5893)*(x5917)))+(((cj6)*(r00)*(x5917)))+(((x5896)*(x5923)))+(((IkReal(-1.00000000000000))*(x5893)*(x5896)*(x5909)))); +evalcond[6]=((((x5894)*(x5910)))+(((IkReal(-1.00000000000000))*(r12)*(x5895)*(x5904)))+(((IkReal(-1.00000000000000))*(x5892)*(x5893)*(x5894)))+(((IkReal(-1.00000000000000))*(x5892)*(x5905)*(x5911)))+(((IkReal(-1.00000000000000))*(x5892)*(x5893)*(x5912)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x5893)))+(((IkReal(-1.00000000000000))*(x5892)*(x5904)*(x5916)))+(((x5910)*(x5912)))+(((IkReal(-1.00000000000000))*(cj0)*(x5895)*(x5897)))+(((IkReal(-1.00000000000000))*(cj4)*(x5893)*(x5911)))); +evalcond[7]=((((cj6)*(x5901)*(x5906)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x5902)))+(((IkReal(-1.00000000000000))*(r10)*(x5898)*(x5908)))+(((IkReal(-1.00000000000000))*(x5907)*(x5921)))+(((sj6)*(x5906)*(x5909)))+(((IkReal(-1.00000000000000))*(r11)*(x5898)*(x5900)))+(((IkReal(-0.374290000000000))*(r02)*(x5902)))+(((r01)*(x5900)*(x5914)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x5902)))+(((x5898)*(x5899)))+(((px)*(sj0)))+(((cj0)*(r12)*(x5907)))+(((IkReal(-1.00000000000000))*(py)*(x5920)))+(((r00)*(x5908)*(x5914)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-0.0690000000000000))*(sj1)))+(((sj6)*(x5906)*(x5912)))+(((r12)*(sj0)*(x5907)))+(((IkReal(-1.00000000000000))*(r01)*(x5898)*(x5900)))+(((IkReal(0.0100000000000000))*(x5902)*(x5916)))+(((cj5)*(r02)*(x5898)))+(((IkReal(-1.00000000000000))*(r00)*(x5898)*(x5908)))+(((x5899)*(x5914)))+(((cj6)*(x5906)*(x5911)))+(((IkReal(-1.00000000000000))*(px)*(x5920)))+(((IkReal(-1.00000000000000))*(py)*(x5904)))+(((IkReal(-0.374290000000000))*(x5894)*(x5908)))+(((IkReal(-1.00000000000000))*(r11)*(x5900)*(x5914)))+(((sj6)*(x5894)*(x5906)))+(((IkReal(0.364420000000000))*(cj1)))+(((cj0)*(r02)*(x5907)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst5; +gconst5=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst6; +gconst6=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5926=((sj5)*(sj6)); +IkReal x5927=((IkReal(1.00000000000000))*(sj0)); +IkReal x5928=((cj5)*(r12)); +IkReal x5929=((cj0)*(r00)); +IkReal x5930=((cj0)*(cj1)); +IkReal x5931=((cj6)*(sj5)); +IkReal x5932=((cj5)*(r02)); +IkReal x5933=((IkReal(1.00000000000000))*(cj1)); +IkReal x5934=((sj0)*(sj1)); +IkReal x5935=((cj0)*(sj1)); +IkReal x5936=((cj5)*(r22)); +if( IKabs(((gconst6)*(((((r10)*(x5926)*(x5934)))+(((IkReal(-1.00000000000000))*(x5932)*(x5935)))+(((IkReal(-1.00000000000000))*(sj1)*(x5927)*(x5928)))+(((r11)*(x5931)*(x5934)))+(((IkReal(-1.00000000000000))*(x5933)*(x5936)))+(((cj1)*(r20)*(x5926)))+(((r01)*(x5931)*(x5935)))+(((cj1)*(r21)*(x5931)))+(((sj1)*(x5926)*(x5929))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst6)*(((((IkReal(-1.00000000000000))*(sj1)*(x5936)))+(((x5930)*(x5932)))+(((r20)*(sj1)*(x5926)))+(((IkReal(-1.00000000000000))*(r01)*(x5930)*(x5931)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x5926)*(x5927)))+(((r21)*(sj1)*(x5931)))+(((cj1)*(sj0)*(x5928)))+(((IkReal(-1.00000000000000))*(x5926)*(x5929)*(x5933)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x5927)*(x5931))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst6)*(((((r10)*(x5926)*(x5934)))+(((IkReal(-1.00000000000000))*(x5932)*(x5935)))+(((IkReal(-1.00000000000000))*(sj1)*(x5927)*(x5928)))+(((r11)*(x5931)*(x5934)))+(((IkReal(-1.00000000000000))*(x5933)*(x5936)))+(((cj1)*(r20)*(x5926)))+(((r01)*(x5931)*(x5935)))+(((cj1)*(r21)*(x5931)))+(((sj1)*(x5926)*(x5929)))))), ((gconst6)*(((((IkReal(-1.00000000000000))*(sj1)*(x5936)))+(((x5930)*(x5932)))+(((r20)*(sj1)*(x5926)))+(((IkReal(-1.00000000000000))*(r01)*(x5930)*(x5931)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x5926)*(x5927)))+(((r21)*(sj1)*(x5931)))+(((cj1)*(sj0)*(x5928)))+(((IkReal(-1.00000000000000))*(x5926)*(x5929)*(x5933)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x5927)*(x5931))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5937=IKcos(j3); +IkReal x5938=IKsin(j3); +IkReal x5939=((IkReal(1.00000000000000))*(cj4)); +IkReal x5940=((sj0)*(sj5)); +IkReal x5941=((cj0)*(cj5)); +IkReal x5942=((cj6)*(r01)); +IkReal x5943=((r00)*(sj6)); +IkReal x5944=((cj6)*(r11)); +IkReal x5945=((cj5)*(sj0)); +IkReal x5946=((cj6)*(sj4)); +IkReal x5947=((sj4)*(sj6)); +IkReal x5948=((cj4)*(cj5)); +IkReal x5949=((cj6)*(r21)); +IkReal x5950=((r20)*(sj6)); +IkReal x5951=((r10)*(sj6)); +IkReal x5952=((cj1)*(x5937)); +IkReal x5953=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x5954=((IkReal(1.00000000000000))*(x5938)); +IkReal x5955=((IkReal(1.00000000000000))*(sj1)*(x5937)); +IkReal x5956=((cj1)*(x5954)); +IkReal x5957=((x5955)+(x5956)); +evalcond[0]=((((sj5)*(x5950)))+(((IkReal(-1.00000000000000))*(x5957)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5949)))); +evalcond[1]=((((r20)*(x5946)))+(((IkReal(-1.00000000000000))*(sj1)*(x5954)))+(((cj4)*(r22)*(sj5)))+(x5952)+(((x5948)*(x5950)))+(((x5948)*(x5949)))+(((IkReal(-1.00000000000000))*(r21)*(x5947)))); +evalcond[2]=((((sj1)*(x5938)))+(((r12)*(x5945)))+(((IkReal(-1.00000000000000))*(x5940)*(x5944)))+(((IkReal(-1.00000000000000))*(x5942)*(x5953)))+(((r02)*(x5941)))+(((IkReal(-1.00000000000000))*(x5943)*(x5953)))+(((IkReal(-1.00000000000000))*(x5952)))+(((IkReal(-1.00000000000000))*(x5940)*(x5951)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x5939)*(x5940)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x5939)))+(((r11)*(sj0)*(x5947)))+(((cj0)*(r01)*(x5947)))+(((IkReal(-1.00000000000000))*(x5957)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x5946)))+(((IkReal(-1.00000000000000))*(x5939)*(x5945)*(x5951)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5946)))+(((IkReal(-1.00000000000000))*(x5939)*(x5941)*(x5943)))+(((IkReal(-1.00000000000000))*(x5939)*(x5941)*(x5942)))+(((IkReal(-1.00000000000000))*(x5939)*(x5944)*(x5945)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x5958=((sj1)*(sj5)); +IkReal x5959=((r20)*(sj6)); +IkReal x5960=((cj4)*(r22)); +IkReal x5961=((IkReal(1.00000000000000))*(cj1)); +IkReal x5962=((cj5)*(sj1)); +IkReal x5963=((cj6)*(r21)); +IkReal x5964=((cj1)*(sj5)); +IkReal x5965=((cj4)*(cj5)); +IkReal x5966=((cj6)*(r20)*(sj4)); +IkReal x5967=((r21)*(sj4)*(sj6)); +if( IKabs(((gconst5)*(((((x5963)*(x5964)))+(((IkReal(-1.00000000000000))*(sj1)*(x5967)))+(((cj4)*(x5962)*(x5963)))+(((cj4)*(x5959)*(x5962)))+(((x5959)*(x5964)))+(((x5958)*(x5960)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x5961)))+(((sj1)*(x5966))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst5)*(((((x5958)*(x5963)))+(((IkReal(-1.00000000000000))*(x5961)*(x5963)*(x5965)))+(((cj1)*(x5967)))+(((IkReal(-1.00000000000000))*(x5961)*(x5966)))+(((x5958)*(x5959)))+(((IkReal(-1.00000000000000))*(r22)*(x5962)))+(((IkReal(-1.00000000000000))*(sj5)*(x5960)*(x5961)))+(((IkReal(-1.00000000000000))*(x5959)*(x5961)*(x5965))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst5)*(((((x5963)*(x5964)))+(((IkReal(-1.00000000000000))*(sj1)*(x5967)))+(((cj4)*(x5962)*(x5963)))+(((cj4)*(x5959)*(x5962)))+(((x5959)*(x5964)))+(((x5958)*(x5960)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x5961)))+(((sj1)*(x5966)))))), ((gconst5)*(((((x5958)*(x5963)))+(((IkReal(-1.00000000000000))*(x5961)*(x5963)*(x5965)))+(((cj1)*(x5967)))+(((IkReal(-1.00000000000000))*(x5961)*(x5966)))+(((x5958)*(x5959)))+(((IkReal(-1.00000000000000))*(r22)*(x5962)))+(((IkReal(-1.00000000000000))*(sj5)*(x5960)*(x5961)))+(((IkReal(-1.00000000000000))*(x5959)*(x5961)*(x5965))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x5968=IKcos(j3); +IkReal x5969=IKsin(j3); +IkReal x5970=((IkReal(1.00000000000000))*(cj4)); +IkReal x5971=((sj0)*(sj5)); +IkReal x5972=((cj0)*(cj5)); +IkReal x5973=((cj6)*(r01)); +IkReal x5974=((r00)*(sj6)); +IkReal x5975=((cj6)*(r11)); +IkReal x5976=((cj5)*(sj0)); +IkReal x5977=((cj6)*(sj4)); +IkReal x5978=((sj4)*(sj6)); +IkReal x5979=((cj4)*(cj5)); +IkReal x5980=((cj6)*(r21)); +IkReal x5981=((r20)*(sj6)); +IkReal x5982=((r10)*(sj6)); +IkReal x5983=((cj1)*(x5968)); +IkReal x5984=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x5985=((IkReal(1.00000000000000))*(x5969)); +IkReal x5986=((IkReal(1.00000000000000))*(sj1)*(x5968)); +IkReal x5987=((cj1)*(x5985)); +IkReal x5988=((x5986)+(x5987)); +evalcond[0]=((((sj5)*(x5980)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x5981)))+(((IkReal(-1.00000000000000))*(x5988)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x5978)))+(((IkReal(-1.00000000000000))*(sj1)*(x5985)))+(x5983)+(((x5979)*(x5980)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x5977)))+(((x5979)*(x5981)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x5983)))+(((IkReal(-1.00000000000000))*(x5973)*(x5984)))+(((IkReal(-1.00000000000000))*(x5971)*(x5975)))+(((IkReal(-1.00000000000000))*(x5971)*(x5982)))+(((r12)*(x5976)))+(((IkReal(-1.00000000000000))*(x5974)*(x5984)))+(((sj1)*(x5969)))+(((r02)*(x5972)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x5970)*(x5972)*(x5974)))+(((r11)*(sj0)*(x5978)))+(((IkReal(-1.00000000000000))*(r12)*(x5970)*(x5971)))+(((cj0)*(r01)*(x5978)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x5977)))+(((IkReal(-1.00000000000000))*(x5970)*(x5976)*(x5982)))+(((IkReal(-1.00000000000000))*(x5970)*(x5972)*(x5973)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x5970)))+(((IkReal(-1.00000000000000))*(x5988)))+(((IkReal(-1.00000000000000))*(x5970)*(x5975)*(x5976)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x5977)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x5989=((cj5)*(sj4)); +IkReal x5990=((IkReal(1.00000000000000))*(sj6)); +IkReal x5991=((r10)*(sj0)); +IkReal x5992=((sj4)*(sj5)); +IkReal x5993=((cj4)*(cj5)); +IkReal x5994=((IkReal(1.00000000000000))*(r02)); +IkReal x5995=((IkReal(0.374290000000000))*(cj0)); +IkReal x5996=((cj5)*(r12)); +IkReal x5997=((cj6)*(sj5)); +IkReal x5998=((cj0)*(r11)); +IkReal x5999=((cj5)*(sj0)); +IkReal x6000=((r20)*(sj6)); +IkReal x6001=((IkReal(1.00000000000000))*(sj0)); +IkReal x6002=((IkReal(1.00000000000000))*(cj6)); +IkReal x6003=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6004=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6005=((sj5)*(sj6)); +IkReal x6006=((cj0)*(r10)); +IkReal x6007=((cj4)*(cj6)); +IkReal x6008=((cj0)*(r01)); +IkReal x6009=((cj0)*(r00)); +IkReal x6010=((cj6)*(r21)); +IkReal x6011=((IkReal(0.374290000000000))*(sj0)); +IkReal x6012=((IkReal(0.374290000000000))*(sj5)); +IkReal x6013=((cj6)*(r11)); +IkReal x6014=((sj0)*(sj4)); +IkReal x6015=((cj4)*(sj5)); +IkReal x6016=((cj4)*(sj6)); +IkReal x6017=((IkReal(1.00000000000000))*(cj0)); +IkReal x6018=((r02)*(sj0)); +IkReal x6019=((r00)*(sj0)*(sj6)); +IkReal x6020=((cj6)*(r01)*(sj0)); +IkReal x6021=((r00)*(x6007)); +IkReal x6022=((r12)*(x6017)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x5992)))+(((x5989)*(x6000)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x6002)))+(((x5989)*(x6010)))+(((r21)*(x6016)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6000)*(x6003)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.0690000000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(x6003)*(x6010)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x6000)*(x6012)))+(((IkReal(0.374290000000000))*(r21)*(x5997)))+(((IkReal(-1.00000000000000))*(r22)*(x6004)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x5990)*(x6006)))+(((cj0)*(x5996)))+(((IkReal(-1.00000000000000))*(x5994)*(x5999)))+(((r01)*(sj0)*(x5997)))+(((r00)*(sj0)*(x6005)))+(((IkReal(-1.00000000000000))*(x5997)*(x5998)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x5989)*(x6020)))+(((x5992)*(x6018)))+(((r01)*(sj0)*(x6016)))+(((IkReal(-1.00000000000000))*(cj4)*(x5990)*(x5998)))+(((x6006)*(x6007)))+(((IkReal(-1.00000000000000))*(x5992)*(x6022)))+(((x5989)*(x6019)))+(((IkReal(-1.00000000000000))*(x6001)*(x6021)))+(((IkReal(-1.00000000000000))*(x5989)*(x5990)*(x6006)))+(((IkReal(-1.00000000000000))*(x5989)*(x5998)*(x6002)))); +evalcond[5]=((((sj4)*(sj6)*(x5998)))+(((x5993)*(x6020)))+(((x5993)*(x6019)))+(((IkReal(-1.00000000000000))*(x5990)*(x5993)*(x6006)))+(((IkReal(-1.00000000000000))*(x5993)*(x5998)*(x6002)))+(((x6015)*(x6018)))+(((cj6)*(r00)*(x6014)))+(((IkReal(-1.00000000000000))*(x6015)*(x6022)))+(((IkReal(-1.00000000000000))*(r01)*(x5990)*(x6014)))+(((IkReal(-1.00000000000000))*(sj4)*(x6002)*(x6006)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x5989)*(x6002)*(x6008)))+(((x5991)*(x6007)))+(((IkReal(-1.00000000000000))*(r12)*(x5992)*(x6001)))+(((IkReal(-1.00000000000000))*(x5989)*(x6001)*(x6013)))+(((IkReal(-1.00000000000000))*(cj4)*(x5990)*(x6008)))+(((x6007)*(x6009)))+(((IkReal(-1.00000000000000))*(x5989)*(x5990)*(x6009)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x5990)))+(((IkReal(-1.00000000000000))*(x5989)*(x5990)*(x5991)))+(((IkReal(-1.00000000000000))*(cj0)*(x5992)*(x5994)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(py)*(x6017)))+(((r01)*(x5997)*(x6011)))+(((IkReal(-1.00000000000000))*(x6004)*(x6018)))+(((IkReal(-1.00000000000000))*(r11)*(x5995)*(x5997)))+(((x5995)*(x5996)))+(((sj6)*(x6003)*(x6006)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x5999)))+(((cj0)*(r12)*(x6004)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x5999)))+(((IkReal(-0.374290000000000))*(r02)*(x5999)))+(((IkReal(-1.00000000000000))*(r10)*(x5995)*(x6005)))+(((r00)*(x6005)*(x6011)))+(((cj6)*(x5998)*(x6003)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((x5996)*(x6011)))+(((IkReal(-1.00000000000000))*(r01)*(x5995)*(x5997)))+(((IkReal(-1.00000000000000))*(r11)*(x5997)*(x6011)))+(((cj0)*(r02)*(x6004)))+(((cj6)*(x6003)*(x6008)))+(((IkReal(0.0690000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r00)*(x5995)*(x6005)))+(((sj6)*(x6003)*(x6009)))+(((cj5)*(r02)*(x5995)))+(((IkReal(-0.374290000000000))*(x5991)*(x6005)))+(((IkReal(-1.00000000000000))*(px)*(x6017)))+(((IkReal(-1.00000000000000))*(py)*(x6001)))+(((IkReal(0.0100000000000000))*(x5999)*(x6013)))+(((r12)*(sj0)*(x6004)))+(((IkReal(0.364420000000000))*(cj1)))+(((sj6)*(x5991)*(x6003)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst7; +gconst7=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst8; +gconst8=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6023=((IkReal(1.00000000000000))*(sj0)); +IkReal x6024=((cj6)*(r21)); +IkReal x6025=((cj0)*(r00)); +IkReal x6026=((cj5)*(sj1)); +IkReal x6027=((r12)*(sj0)); +IkReal x6028=((cj1)*(cj5)); +IkReal x6029=((cj0)*(r02)); +IkReal x6030=((sj1)*(sj5)); +IkReal x6031=((cj6)*(r11)); +IkReal x6032=((cj1)*(sj5)); +IkReal x6033=((sj6)*(x6030)); +IkReal x6034=((IkReal(1.00000000000000))*(x6032)); +IkReal x6035=((cj0)*(cj6)*(r01)); +if( IKabs(((gconst8)*(((((x6026)*(x6029)))+(((IkReal(-1.00000000000000))*(x6023)*(x6030)*(x6031)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x6034)))+(((IkReal(-1.00000000000000))*(x6025)*(x6033)))+(((IkReal(-1.00000000000000))*(x6024)*(x6034)))+(((x6026)*(x6027)))+(((IkReal(-1.00000000000000))*(x6030)*(x6035)))+(((r22)*(x6028)))+(((IkReal(-1.00000000000000))*(r10)*(x6023)*(x6033))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst8)*(((((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6023)*(x6032)))+(((x6028)*(x6029)))+(((IkReal(-1.00000000000000))*(x6023)*(x6031)*(x6032)))+(((IkReal(-1.00000000000000))*(x6034)*(x6035)))+(((x6027)*(x6028)))+(((IkReal(-1.00000000000000))*(sj6)*(x6025)*(x6034)))+(((IkReal(-1.00000000000000))*(r22)*(x6026)))+(((r20)*(x6033)))+(((x6024)*(x6030))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst8)*(((((x6026)*(x6029)))+(((IkReal(-1.00000000000000))*(x6023)*(x6030)*(x6031)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x6034)))+(((IkReal(-1.00000000000000))*(x6025)*(x6033)))+(((IkReal(-1.00000000000000))*(x6024)*(x6034)))+(((x6026)*(x6027)))+(((IkReal(-1.00000000000000))*(x6030)*(x6035)))+(((r22)*(x6028)))+(((IkReal(-1.00000000000000))*(r10)*(x6023)*(x6033)))))), ((gconst8)*(((((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6023)*(x6032)))+(((x6028)*(x6029)))+(((IkReal(-1.00000000000000))*(x6023)*(x6031)*(x6032)))+(((IkReal(-1.00000000000000))*(x6034)*(x6035)))+(((x6027)*(x6028)))+(((IkReal(-1.00000000000000))*(sj6)*(x6025)*(x6034)))+(((IkReal(-1.00000000000000))*(r22)*(x6026)))+(((r20)*(x6033)))+(((x6024)*(x6030))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6036=IKsin(j3); +IkReal x6037=IKcos(j3); +IkReal x6038=((IkReal(1.00000000000000))*(cj4)); +IkReal x6039=((sj0)*(sj5)); +IkReal x6040=((cj0)*(cj5)); +IkReal x6041=((cj6)*(r01)); +IkReal x6042=((r00)*(sj6)); +IkReal x6043=((cj6)*(r11)); +IkReal x6044=((cj5)*(sj0)); +IkReal x6045=((cj6)*(sj4)); +IkReal x6046=((sj4)*(sj6)); +IkReal x6047=((cj4)*(cj5)); +IkReal x6048=((cj6)*(r21)); +IkReal x6049=((r20)*(sj6)); +IkReal x6050=((r10)*(sj6)); +IkReal x6051=((cj1)*(x6036)); +IkReal x6052=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x6053=((IkReal(1.00000000000000))*(x6037)); +IkReal x6054=((IkReal(1.00000000000000))*(sj1)*(x6036)); +IkReal x6055=((cj1)*(x6053)); +IkReal x6056=((x6055)+(x6054)); +evalcond[0]=((((sj5)*(x6049)))+(((IkReal(-1.00000000000000))*(sj1)*(x6053)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x6051)+(((sj5)*(x6048)))); +evalcond[1]=((((x6047)*(x6048)))+(((IkReal(-1.00000000000000))*(r21)*(x6046)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x6045)))+(((x6047)*(x6049)))+(((IkReal(-1.00000000000000))*(x6056)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6039)*(x6043)))+(((IkReal(-1.00000000000000))*(x6042)*(x6052)))+(((r02)*(x6040)))+(((IkReal(-1.00000000000000))*(x6041)*(x6052)))+(((IkReal(-1.00000000000000))*(x6039)*(x6050)))+(((IkReal(-1.00000000000000))*(x6056)))+(((r12)*(x6044)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x6038)*(x6039)))+(((IkReal(-1.00000000000000))*(x6038)*(x6040)*(x6042)))+(((IkReal(-1.00000000000000))*(x6051)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6045)))+(((sj1)*(x6037)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6045)))+(((IkReal(-1.00000000000000))*(x6038)*(x6043)*(x6044)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6038)))+(((IkReal(-1.00000000000000))*(x6038)*(x6040)*(x6041)))+(((IkReal(-1.00000000000000))*(x6038)*(x6044)*(x6050)))+(((r11)*(sj0)*(x6046)))+(((cj0)*(r01)*(x6046)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6057=((sj1)*(sj6)); +IkReal x6058=((r20)*(sj5)); +IkReal x6059=((IkReal(1.00000000000000))*(r21)); +IkReal x6060=((cj1)*(cj6)); +IkReal x6061=((r20)*(sj4)); +IkReal x6062=((cj6)*(sj1)); +IkReal x6063=((cj4)*(cj5)); +IkReal x6064=((cj1)*(sj6)); +IkReal x6065=((cj5)*(r22)); +IkReal x6066=((cj4)*(r22)*(sj5)); +if( IKabs(((gconst7)*(((((IkReal(-1.00000000000000))*(sj5)*(x6059)*(x6060)))+(((r21)*(x6062)*(x6063)))+(((cj1)*(x6065)))+(((x6061)*(x6062)))+(((IkReal(-1.00000000000000))*(sj4)*(x6057)*(x6059)))+(((sj1)*(x6066)))+(((r20)*(x6057)*(x6063)))+(((IkReal(-1.00000000000000))*(x6058)*(x6064))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst7)*(((((IkReal(-1.00000000000000))*(sj1)*(x6065)))+(((r20)*(x6063)*(x6064)))+(((cj1)*(x6066)))+(((IkReal(-1.00000000000000))*(sj4)*(x6059)*(x6064)))+(((x6057)*(x6058)))+(((r21)*(sj5)*(x6062)))+(((x6060)*(x6061)))+(((r21)*(x6060)*(x6063))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst7)*(((((IkReal(-1.00000000000000))*(sj5)*(x6059)*(x6060)))+(((r21)*(x6062)*(x6063)))+(((cj1)*(x6065)))+(((x6061)*(x6062)))+(((IkReal(-1.00000000000000))*(sj4)*(x6057)*(x6059)))+(((sj1)*(x6066)))+(((r20)*(x6057)*(x6063)))+(((IkReal(-1.00000000000000))*(x6058)*(x6064)))))), ((gconst7)*(((((IkReal(-1.00000000000000))*(sj1)*(x6065)))+(((r20)*(x6063)*(x6064)))+(((cj1)*(x6066)))+(((IkReal(-1.00000000000000))*(sj4)*(x6059)*(x6064)))+(((x6057)*(x6058)))+(((r21)*(sj5)*(x6062)))+(((x6060)*(x6061)))+(((r21)*(x6060)*(x6063))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6067=IKsin(j3); +IkReal x6068=IKcos(j3); +IkReal x6069=((IkReal(1.00000000000000))*(cj4)); +IkReal x6070=((sj0)*(sj5)); +IkReal x6071=((cj0)*(cj5)); +IkReal x6072=((cj6)*(r01)); +IkReal x6073=((r00)*(sj6)); +IkReal x6074=((cj6)*(r11)); +IkReal x6075=((cj5)*(sj0)); +IkReal x6076=((cj6)*(sj4)); +IkReal x6077=((sj4)*(sj6)); +IkReal x6078=((cj4)*(cj5)); +IkReal x6079=((cj6)*(r21)); +IkReal x6080=((r20)*(sj6)); +IkReal x6081=((r10)*(sj6)); +IkReal x6082=((cj1)*(x6067)); +IkReal x6083=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x6084=((IkReal(1.00000000000000))*(x6068)); +IkReal x6085=((IkReal(1.00000000000000))*(sj1)*(x6067)); +IkReal x6086=((cj1)*(x6084)); +IkReal x6087=((x6086)+(x6085)); +evalcond[0]=((((sj5)*(x6080)))+(((IkReal(-1.00000000000000))*(sj1)*(x6084)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x6082)+(((sj5)*(x6079)))); +evalcond[1]=((((x6078)*(x6080)))+(((IkReal(-1.00000000000000))*(r21)*(x6077)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x6087)))+(((x6078)*(x6079)))+(((r20)*(x6076)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6070)*(x6074)))+(((IkReal(-1.00000000000000))*(x6072)*(x6083)))+(((IkReal(-1.00000000000000))*(x6073)*(x6083)))+(((r12)*(x6075)))+(((r02)*(x6071)))+(((IkReal(-1.00000000000000))*(x6087)))+(((IkReal(-1.00000000000000))*(x6070)*(x6081)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6069)*(x6071)*(x6073)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6076)))+(((sj1)*(x6068)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6069)))+(((IkReal(-1.00000000000000))*(r12)*(x6069)*(x6070)))+(((IkReal(-1.00000000000000))*(x6069)*(x6075)*(x6081)))+(((IkReal(-1.00000000000000))*(x6069)*(x6074)*(x6075)))+(((r11)*(sj0)*(x6077)))+(((IkReal(-1.00000000000000))*(x6069)*(x6071)*(x6072)))+(((cj0)*(r01)*(x6077)))+(((IkReal(-1.00000000000000))*(x6082)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6076)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x6088=((IkReal(1.00000000000000))*(cj0)); +IkReal x6089=((cj4)*(sj6)); +IkReal x6090=((sj0)*(sj4)); +IkReal x6091=((cj5)*(sj6)); +IkReal x6092=((sj4)*(sj5)); +IkReal x6093=((r12)*(sj5)); +IkReal x6094=((IkReal(0.374290000000000))*(cj5)); +IkReal x6095=((r02)*(sj0)); +IkReal x6096=((cj6)*(r21)); +IkReal x6097=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6098=((IkReal(1.00000000000000))*(sj0)); +IkReal x6099=((cj0)*(r10)); +IkReal x6100=((cj4)*(cj6)); +IkReal x6101=((r00)*(sj0)); +IkReal x6102=((IkReal(0.374290000000000))*(sj5)); +IkReal x6103=((cj0)*(r00)); +IkReal x6104=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6105=((cj0)*(r02)); +IkReal x6106=((cj5)*(sj4)); +IkReal x6107=((cj6)*(r01)); +IkReal x6108=((cj6)*(r11)); +IkReal x6109=((r10)*(sj0)); +IkReal x6110=((sj6)*(x6102)); +IkReal x6111=((cj0)*(cj6)*(x6102)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(r20)*(x6100)))+(((r22)*(x6092)))+(((r20)*(sj4)*(x6091)))+(((x6096)*(x6106)))+(((r21)*(x6089)))); +evalcond[2]=((((IkReal(-0.0100000000000000))*(r20)*(x6091)))+(((IkReal(-1.00000000000000))*(r22)*(x6094)))+(((IkReal(-1.00000000000000))*(r22)*(x6104)))+(pz)+(((r20)*(x6110)))+(((IkReal(-1.00000000000000))*(x6096)*(x6097)))+(((x6096)*(x6102)))+(((IkReal(0.0690000000000000))*(cj2)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x6088)*(x6089)))+(((x6099)*(x6100)))+(((IkReal(-1.00000000000000))*(x6088)*(x6106)*(x6108)))+(((r01)*(sj0)*(x6089)))+(((cj5)*(x6090)*(x6107)))+(((r00)*(x6090)*(x6091)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x6098)*(x6100)))+(((r02)*(sj5)*(x6090)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6088)*(x6091)))+(((IkReal(-1.00000000000000))*(r12)*(x6088)*(x6092)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x6090)*(x6093)))+(((IkReal(-1.00000000000000))*(r11)*(x6089)*(x6098)))+(((IkReal(-1.00000000000000))*(r01)*(x6088)*(x6089)))+(((IkReal(-1.00000000000000))*(r10)*(x6090)*(x6091)))+(((x6100)*(x6109)))+(((x6100)*(x6103)))+(((IkReal(-1.00000000000000))*(x6088)*(x6106)*(x6107)))+(((IkReal(-1.00000000000000))*(cj5)*(x6090)*(x6108)))+(((IkReal(-1.00000000000000))*(r02)*(x6088)*(x6092)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6088)*(x6091)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6099)*(x6110)))+(((x6101)*(x6110)))+(((IkReal(-1.00000000000000))*(sj0)*(x6097)*(x6107)))+(((IkReal(-1.00000000000000))*(py)*(x6088)))+(((IkReal(-0.0100000000000000))*(x6091)*(x6101)))+(((IkReal(-1.00000000000000))*(cj0)*(x6102)*(x6108)))+(((IkReal(0.0690000000000000))*(sj2)))+(((cj0)*(x6097)*(x6108)))+(((IkReal(0.0100000000000000))*(cj0)*(x6093)))+(((IkReal(0.0100000000000000))*(x6091)*(x6099)))+(((px)*(sj0)))+(((cj0)*(r12)*(x6094)))+(((sj0)*(x6102)*(x6107)))+(((IkReal(-1.00000000000000))*(x6095)*(x6104)))+(((IkReal(-1.00000000000000))*(x6094)*(x6095)))); +evalcond[6]=((IkReal(0.433420000000000))+(((x6094)*(x6105)))+(((IkReal(-1.00000000000000))*(px)*(x6088)))+(((IkReal(-1.00000000000000))*(py)*(x6098)))+(((sj0)*(x6097)*(x6108)))+(((IkReal(-1.00000000000000))*(x6103)*(x6110)))+(((IkReal(0.0100000000000000))*(x6091)*(x6109)))+(((r12)*(sj0)*(x6094)))+(((IkReal(-1.00000000000000))*(sj0)*(x6102)*(x6108)))+(((IkReal(-1.00000000000000))*(cj0)*(x6102)*(x6107)))+(((x6104)*(x6105)))+(((cj0)*(x6097)*(x6107)))+(((IkReal(-1.00000000000000))*(x6109)*(x6110)))+(((IkReal(0.0100000000000000))*(x6091)*(x6103)))+(((IkReal(0.0100000000000000))*(sj0)*(x6093)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst9; +gconst9=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x6112=((cj5)*(sj4)); +IkReal x6113=((IkReal(1.00000000000000))*(sj6)); +IkReal x6114=((r10)*(sj0)); +IkReal x6115=((sj4)*(sj5)); +IkReal x6116=((cj5)*(cj6)); +IkReal x6117=((r01)*(sj0)); +IkReal x6118=((IkReal(1.00000000000000))*(r02)); +IkReal x6119=((IkReal(0.374290000000000))*(cj0)); +IkReal x6120=((cj5)*(r12)); +IkReal x6121=((cj6)*(sj5)); +IkReal x6122=((cj0)*(r11)); +IkReal x6123=((cj5)*(sj0)); +IkReal x6124=((r20)*(sj6)); +IkReal x6125=((IkReal(1.00000000000000))*(sj0)); +IkReal x6126=((cj4)*(cj5)); +IkReal x6127=((IkReal(1.00000000000000))*(cj6)); +IkReal x6128=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6129=((sj5)*(sj6)); +IkReal x6130=((cj0)*(r10)); +IkReal x6131=((cj4)*(cj6)); +IkReal x6132=((cj0)*(r01)); +IkReal x6133=((IkReal(1.00000000000000))*(cj4)); +IkReal x6134=((cj0)*(r00)); +IkReal x6135=((IkReal(0.374290000000000))*(sj0)); +IkReal x6136=((cj0)*(r12)); +IkReal x6137=((IkReal(0.374290000000000))*(sj5)); +IkReal x6138=((cj4)*(sj6)); +IkReal x6139=((IkReal(1.00000000000000))*(cj0)); +IkReal x6140=((r02)*(sj0)); +IkReal x6141=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6142=((r11)*(sj0)); +IkReal x6143=((r00)*(sj0)*(sj6)); +IkReal x6144=((r00)*(x6131)); +IkReal x6145=((sj6)*(x6141)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj4)*(r20)*(x6127)))+(((cj6)*(r21)*(x6112)))+(((x6112)*(x6124)))+(((r21)*(x6138)))+(((r22)*(x6115)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x6128)))+(((IkReal(-1.00000000000000))*(x6124)*(x6141)))+(((IkReal(0.374290000000000))*(r21)*(x6121)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x6124)*(x6137)))+(pz)+(((IkReal(-0.0100000000000000))*(r21)*(x6116)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6121)*(x6122)))+(((x6117)*(x6121)))+(((r00)*(sj0)*(x6129)))+(((cj0)*(x6120)))+(((IkReal(-1.00000000000000))*(sj5)*(x6113)*(x6130)))+(((IkReal(-1.00000000000000))*(x6118)*(x6123)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x6115)*(x6136)))+(((IkReal(-1.00000000000000))*(x6125)*(x6144)))+(((cj6)*(x6112)*(x6117)))+(((x6112)*(x6143)))+(((x6115)*(x6140)))+(((IkReal(-1.00000000000000))*(x6112)*(x6122)*(x6127)))+(((x6130)*(x6131)))+(((IkReal(-1.00000000000000))*(cj4)*(x6113)*(x6122)))+(((x6117)*(x6138)))+(((IkReal(-1.00000000000000))*(x6112)*(x6113)*(x6130)))); +evalcond[5]=((((sj4)*(sj6)*(x6122)))+(((cj4)*(sj5)*(x6140)))+(((r00)*(x6123)*(x6138)))+(((IkReal(-1.00000000000000))*(x6116)*(x6122)*(x6133)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(x6127)*(x6130)))+(((cj4)*(x6116)*(x6117)))+(((IkReal(-1.00000000000000))*(sj4)*(x6113)*(x6117)))+(((IkReal(-1.00000000000000))*(sj5)*(x6133)*(x6136)))+(((IkReal(-1.00000000000000))*(x6113)*(x6126)*(x6130)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x6113)*(x6132)))+(((IkReal(-1.00000000000000))*(x6112)*(x6113)*(x6114)))+(((IkReal(-1.00000000000000))*(cj4)*(x6113)*(x6142)))+(((IkReal(-1.00000000000000))*(r12)*(x6115)*(x6125)))+(((IkReal(-1.00000000000000))*(cj0)*(x6115)*(x6118)))+(((x6114)*(x6131)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x6112)*(x6125)))+(((x6131)*(x6134)))+(((IkReal(-1.00000000000000))*(x6112)*(x6113)*(x6134)))+(((IkReal(-1.00000000000000))*(x6112)*(x6127)*(x6132)))); +evalcond[7]=((((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x6123)))+(((x6128)*(x6136)))+(((IkReal(-0.0100000000000000))*(x6116)*(x6117)))+(((x6119)*(x6120)))+(((IkReal(0.0100000000000000))*(x6116)*(x6122)))+(((IkReal(-0.374290000000000))*(r02)*(x6123)))+(((IkReal(-1.00000000000000))*(py)*(x6139)))+(((IkReal(-1.00000000000000))*(r10)*(x6119)*(x6129)))+(((IkReal(-1.00000000000000))*(r11)*(x6119)*(x6121)))+(((px)*(sj0)))+(((x6130)*(x6145)))+(((IkReal(0.374290000000000))*(x6117)*(x6121)))+(((r00)*(x6129)*(x6135)))+(((IkReal(-1.00000000000000))*(x6128)*(x6140)))); +evalcond[8]=((IkReal(0.433420000000000))+(((cj5)*(r02)*(x6119)))+(((r12)*(sj0)*(x6128)))+(((IkReal(0.0100000000000000))*(x6116)*(x6142)))+(((IkReal(-1.00000000000000))*(px)*(x6139)))+(((IkReal(-1.00000000000000))*(r00)*(x6119)*(x6129)))+(((cj0)*(r02)*(x6128)))+(((IkReal(-1.00000000000000))*(py)*(x6125)))+(((x6134)*(x6145)))+(((IkReal(-1.00000000000000))*(r11)*(x6121)*(x6135)))+(((IkReal(-0.374290000000000))*(x6114)*(x6129)))+(((IkReal(0.0100000000000000))*(x6116)*(x6132)))+(((x6114)*(x6145)))+(((x6120)*(x6135)))+(((IkReal(-1.00000000000000))*(r01)*(x6119)*(x6121)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6146=((IkReal(1.00000000000000))*(cj4)); +IkReal x6147=((cj6)*(r21)); +IkReal x6148=((r20)*(sj6)); +if( IKabs(((((sj5)*(x6147)))+(((sj5)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6147)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6146)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x6147)))+(((sj5)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6147)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6146)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x6147)))+(((sj5)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6148)))+(((IkReal(-1.00000000000000))*(cj5)*(x6146)*(x6147)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6146)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6149=IKcos(j3); +IkReal x6150=((IkReal(1.00000000000000))*(cj4)); +IkReal x6151=((sj0)*(sj5)); +IkReal x6152=((cj0)*(cj5)); +IkReal x6153=((cj6)*(r01)); +IkReal x6154=((r00)*(sj6)); +IkReal x6155=((cj6)*(r11)); +IkReal x6156=((cj5)*(sj0)); +IkReal x6157=((cj6)*(sj4)); +IkReal x6158=((sj4)*(sj6)); +IkReal x6159=((cj4)*(cj5)); +IkReal x6160=((cj6)*(r21)); +IkReal x6161=((r20)*(sj6)); +IkReal x6162=((r10)*(sj6)); +IkReal x6163=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x6164=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x6163)))+(((sj5)*(x6160)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6161)))); +evalcond[1]=((((x6159)*(x6160)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x6157)))+(((IkReal(-1.00000000000000))*(r21)*(x6158)))+(x6149)+(((x6159)*(x6161)))); +evalcond[2]=((((r02)*(x6152)))+(((r12)*(x6156)))+(((IkReal(-1.00000000000000))*(x6151)*(x6155)))+(((IkReal(-1.00000000000000))*(x6154)*(x6164)))+(((IkReal(-1.00000000000000))*(x6153)*(x6164)))+(((IkReal(-1.00000000000000))*(x6149)))+(((IkReal(-1.00000000000000))*(x6151)*(x6162)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6150)*(x6155)*(x6156)))+(((IkReal(-1.00000000000000))*(x6163)))+(((cj0)*(r01)*(x6158)))+(((r11)*(sj0)*(x6158)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6157)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6150)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6157)))+(((IkReal(-1.00000000000000))*(x6150)*(x6156)*(x6162)))+(((IkReal(-1.00000000000000))*(x6150)*(x6152)*(x6154)))+(((IkReal(-1.00000000000000))*(r12)*(x6150)*(x6151)))+(((IkReal(-1.00000000000000))*(x6150)*(x6152)*(x6153)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6165=((cj5)*(sj4)); +IkReal x6166=((IkReal(1.00000000000000))*(sj6)); +IkReal x6167=((r10)*(sj0)); +IkReal x6168=((sj4)*(sj5)); +IkReal x6169=((cj5)*(cj6)); +IkReal x6170=((r01)*(sj0)); +IkReal x6171=((IkReal(1.00000000000000))*(r02)); +IkReal x6172=((IkReal(0.374290000000000))*(cj0)); +IkReal x6173=((cj5)*(r12)); +IkReal x6174=((cj6)*(sj5)); +IkReal x6175=((cj0)*(r11)); +IkReal x6176=((cj5)*(sj0)); +IkReal x6177=((r20)*(sj6)); +IkReal x6178=((IkReal(1.00000000000000))*(sj0)); +IkReal x6179=((cj4)*(cj5)); +IkReal x6180=((IkReal(1.00000000000000))*(cj6)); +IkReal x6181=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6182=((sj5)*(sj6)); +IkReal x6183=((cj0)*(r10)); +IkReal x6184=((cj4)*(cj6)); +IkReal x6185=((cj0)*(r01)); +IkReal x6186=((IkReal(1.00000000000000))*(cj4)); +IkReal x6187=((cj0)*(r00)); +IkReal x6188=((IkReal(0.374290000000000))*(sj0)); +IkReal x6189=((cj0)*(r12)); +IkReal x6190=((IkReal(0.374290000000000))*(sj5)); +IkReal x6191=((cj4)*(sj6)); +IkReal x6192=((IkReal(1.00000000000000))*(cj0)); +IkReal x6193=((r02)*(sj0)); +IkReal x6194=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6195=((r11)*(sj0)); +IkReal x6196=((r00)*(sj0)*(sj6)); +IkReal x6197=((r00)*(x6184)); +IkReal x6198=((sj6)*(x6194)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((cj6)*(r21)*(x6165)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x6180)))+(((x6165)*(x6177)))+(((r21)*(x6191)))+(((r22)*(x6168)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x6181)))+(((IkReal(-1.00000000000000))*(x6177)*(x6194)))+(((IkReal(0.374290000000000))*(r21)*(x6174)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x6169)))+(pz)+(((x6177)*(x6190)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x6166)*(x6183)))+(((IkReal(-1.00000000000000))*(x6174)*(x6175)))+(((r00)*(sj0)*(x6182)))+(((IkReal(-1.00000000000000))*(x6171)*(x6176)))+(((x6170)*(x6174)))+(((cj0)*(x6173)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x6183)*(x6184)))+(((IkReal(-1.00000000000000))*(x6168)*(x6189)))+(((x6168)*(x6193)))+(((x6170)*(x6191)))+(((IkReal(-1.00000000000000))*(x6165)*(x6166)*(x6183)))+(((cj6)*(x6165)*(x6170)))+(((x6165)*(x6196)))+(((IkReal(-1.00000000000000))*(x6178)*(x6197)))+(((IkReal(-1.00000000000000))*(cj4)*(x6166)*(x6175)))+(((IkReal(-1.00000000000000))*(x6165)*(x6175)*(x6180)))); +evalcond[5]=((((sj4)*(sj6)*(x6175)))+(((IkReal(-1.00000000000000))*(x6169)*(x6175)*(x6186)))+(((IkReal(-1.00000000000000))*(x6166)*(x6179)*(x6183)))+(((IkReal(-1.00000000000000))*(sj5)*(x6186)*(x6189)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(x6169)*(x6170)))+(((IkReal(-1.00000000000000))*(sj4)*(x6166)*(x6170)))+(((IkReal(-1.00000000000000))*(sj4)*(x6180)*(x6183)))+(((r00)*(x6176)*(x6191)))+(((cj4)*(sj5)*(x6193)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x6165)*(x6178)))+(((x6167)*(x6184)))+(((x6184)*(x6187)))+(((IkReal(-1.00000000000000))*(x6165)*(x6180)*(x6185)))+(((IkReal(-1.00000000000000))*(cj4)*(x6166)*(x6185)))+(((IkReal(-1.00000000000000))*(x6165)*(x6166)*(x6167)))+(((IkReal(-1.00000000000000))*(r12)*(x6168)*(x6178)))+(((IkReal(-1.00000000000000))*(cj4)*(x6166)*(x6195)))+(((IkReal(-1.00000000000000))*(cj0)*(x6168)*(x6171)))+(((IkReal(-1.00000000000000))*(x6165)*(x6166)*(x6187)))); +evalcond[7]=((((x6181)*(x6189)))+(((x6172)*(x6173)))+(((IkReal(0.374290000000000))*(x6170)*(x6174)))+(((IkReal(-1.00000000000000))*(r11)*(x6172)*(x6174)))+(((IkReal(-0.0100000000000000))*(x6169)*(x6170)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x6176)))+(((r00)*(x6182)*(x6188)))+(((IkReal(-1.00000000000000))*(x6181)*(x6193)))+(((IkReal(0.0100000000000000))*(x6169)*(x6175)))+(((IkReal(-1.00000000000000))*(py)*(x6192)))+(((IkReal(-1.00000000000000))*(r10)*(x6172)*(x6182)))+(((IkReal(-0.374290000000000))*(r02)*(x6176)))+(((px)*(sj0)))+(((x6183)*(x6198)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x6173)*(x6188)))+(((IkReal(-1.00000000000000))*(py)*(x6178)))+(((cj0)*(r02)*(x6181)))+(((cj5)*(r02)*(x6172)))+(((IkReal(0.0100000000000000))*(x6169)*(x6185)))+(((IkReal(-1.00000000000000))*(px)*(x6192)))+(((IkReal(-1.00000000000000))*(r01)*(x6172)*(x6174)))+(((IkReal(-1.00000000000000))*(r11)*(x6174)*(x6188)))+(((r12)*(sj0)*(x6181)))+(((IkReal(-0.374290000000000))*(x6167)*(x6182)))+(((x6187)*(x6198)))+(((x6167)*(x6198)))+(((IkReal(-1.00000000000000))*(r00)*(x6172)*(x6182)))+(((IkReal(0.0100000000000000))*(x6169)*(x6195)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6199=((IkReal(1.00000000000000))*(r21)); +IkReal x6200=((cj4)*(cj5)); +IkReal x6201=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x6201)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6199)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r21)*(x6200)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6199)))+(((x6200)*(x6201))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x6201)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6199)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r21)*(x6200)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6199)))+(((x6200)*(x6201)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x6201)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6199)))+(((cj5)*(r22)))), ((((cj6)*(r21)*(x6200)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6199)))+(((x6200)*(x6201))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6202=IKsin(j3); +IkReal x6203=((IkReal(1.00000000000000))*(cj4)); +IkReal x6204=((sj0)*(sj5)); +IkReal x6205=((cj0)*(cj5)); +IkReal x6206=((cj6)*(r01)); +IkReal x6207=((r00)*(sj6)); +IkReal x6208=((cj6)*(r11)); +IkReal x6209=((cj5)*(sj0)); +IkReal x6210=((cj6)*(sj4)); +IkReal x6211=((sj4)*(sj6)); +IkReal x6212=((cj4)*(cj5)); +IkReal x6213=((cj6)*(r21)); +IkReal x6214=((r20)*(sj6)); +IkReal x6215=((r10)*(sj6)); +IkReal x6216=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x6217=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x6213)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x6202)+(((sj5)*(x6214)))); +evalcond[1]=((((x6212)*(x6214)))+(((cj4)*(r22)*(sj5)))+(((x6212)*(x6213)))+(((IkReal(-1.00000000000000))*(r21)*(x6211)))+(((IkReal(-1.00000000000000))*(x6216)))+(((r20)*(x6210)))); +evalcond[2]=((((r02)*(x6205)))+(((IkReal(-1.00000000000000))*(x6204)*(x6208)))+(((IkReal(-1.00000000000000))*(x6207)*(x6217)))+(((IkReal(-1.00000000000000))*(x6206)*(x6217)))+(((r12)*(x6209)))+(((IkReal(-1.00000000000000))*(x6216)))+(((IkReal(-1.00000000000000))*(x6204)*(x6215)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6210)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6203)))+(((r11)*(sj0)*(x6211)))+(((IkReal(-1.00000000000000))*(x6203)*(x6205)*(x6207)))+(((IkReal(-1.00000000000000))*(x6203)*(x6205)*(x6206)))+(((IkReal(-1.00000000000000))*(x6203)*(x6208)*(x6209)))+(((IkReal(-1.00000000000000))*(x6203)*(x6209)*(x6215)))+(((IkReal(-1.00000000000000))*(x6202)))+(((IkReal(-1.00000000000000))*(r12)*(x6203)*(x6204)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6210)))+(((cj0)*(r01)*(x6211)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6218=((IkReal(1.00000000000000))*(cj0)); +IkReal x6219=((cj4)*(sj6)); +IkReal x6220=((sj0)*(sj4)); +IkReal x6221=((cj5)*(sj6)); +IkReal x6222=((sj4)*(sj5)); +IkReal x6223=((r12)*(sj5)); +IkReal x6224=((IkReal(0.374290000000000))*(cj5)); +IkReal x6225=((r02)*(sj0)); +IkReal x6226=((r20)*(sj4)); +IkReal x6227=((IkReal(1.00000000000000))*(sj0)); +IkReal x6228=((IkReal(1.00000000000000))*(cj5)); +IkReal x6229=((cj0)*(r10)); +IkReal x6230=((cj4)*(cj6)); +IkReal x6231=((r00)*(sj0)); +IkReal x6232=((cj6)*(r21)); +IkReal x6233=((IkReal(0.374290000000000))*(sj5)); +IkReal x6234=((cj0)*(r00)); +IkReal x6235=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6236=((cj0)*(r02)); +IkReal x6237=((cj5)*(sj4)); +IkReal x6238=((cj6)*(r01)); +IkReal x6239=((cj6)*(r11)); +IkReal x6240=((r01)*(sj0)); +IkReal x6241=((r10)*(sj0)); +IkReal x6242=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6243=((sj6)*(x6233)); +IkReal x6244=((cj0)*(cj6)*(x6233)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x6232)))+(((IkReal(-1.00000000000000))*(r22)*(x6228)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r21)*(x6219)))+(((IkReal(-1.00000000000000))*(r20)*(x6230)))+(((x6232)*(x6237)))+(((r22)*(x6222)))+(((x6221)*(x6226)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x6221)))+(((x6232)*(x6233)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x6224)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6232)))+(((r20)*(x6243)))+(((IkReal(-1.00000000000000))*(r22)*(x6235)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x6219)))+(((cj6)*(x6226)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x6230)))); +evalcond[5]=((((r00)*(x6220)*(x6221)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6218)*(x6221)))+(((cj5)*(x6220)*(x6238)))+(((IkReal(-1.00000000000000))*(x6218)*(x6237)*(x6239)))+(((IkReal(-1.00000000000000))*(r12)*(x6218)*(x6222)))+(((x6219)*(x6240)))+(((IkReal(-1.00000000000000))*(r00)*(x6227)*(x6230)))+(((IkReal(-1.00000000000000))*(r11)*(x6218)*(x6219)))+(((x6229)*(x6230)))+(((r02)*(sj5)*(x6220)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r10)*(x6220)*(x6221)))+(((x6230)*(x6241)))+(((IkReal(-1.00000000000000))*(x6220)*(x6223)))+(((x6230)*(x6234)))+(((IkReal(-1.00000000000000))*(r02)*(x6218)*(x6222)))+(((IkReal(-1.00000000000000))*(r01)*(x6218)*(x6219)))+(((IkReal(-1.00000000000000))*(r11)*(x6219)*(x6227)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6218)*(x6221)))+(((IkReal(-1.00000000000000))*(x6218)*(x6237)*(x6238)))+(((IkReal(-1.00000000000000))*(x6220)*(x6228)*(x6239)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(x6223)))+(((IkReal(-1.00000000000000))*(py)*(x6218)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6238)))+(((IkReal(-1.00000000000000))*(x6225)*(x6235)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6239)))+(((cj0)*(r12)*(x6224)))+(((x6231)*(x6243)))+(((IkReal(-1.00000000000000))*(cj0)*(x6233)*(x6239)))+(((IkReal(0.0100000000000000))*(x6221)*(x6229)))+(((sj0)*(x6233)*(x6238)))+(((IkReal(-0.0100000000000000))*(x6221)*(x6231)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x6229)*(x6243)))+(((IkReal(-1.00000000000000))*(x6224)*(x6225)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(x6221)*(x6234)))+(((IkReal(0.0100000000000000))*(sj0)*(x6223)))+(((IkReal(0.0100000000000000))*(x6221)*(x6241)))+(((IkReal(-1.00000000000000))*(x6241)*(x6243)))+(((r12)*(sj0)*(x6224)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6239)))+(((IkReal(-1.00000000000000))*(x6234)*(x6243)))+(((IkReal(-1.00000000000000))*(sj0)*(x6233)*(x6239)))+(((IkReal(-1.00000000000000))*(px)*(x6218)))+(((x6224)*(x6236)))+(((IkReal(-1.00000000000000))*(py)*(x6227)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6238)))+(((IkReal(-1.00000000000000))*(cj0)*(x6233)*(x6238)))+(((x6235)*(x6236)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6245=((cj0)*(cj5)); +IkReal x6246=((IkReal(1.00000000000000))*(cj0)); +IkReal x6247=((cj6)*(r11)); +IkReal x6248=((r10)*(sj6)); +IkReal x6249=((cj5)*(sj0)); +IkReal x6250=((r00)*(sj5)*(sj6)); +IkReal x6251=((cj6)*(r01)*(sj5)); +IkReal x6252=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6247)))+(((IkReal(-1.00000000000000))*(r02)*(x6249)))+(((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6248)))+(((sj0)*(x6251)))+(((sj0)*(x6250)))+(((r12)*(x6245))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x6247)*(x6252)))+(((r02)*(x6245)))+(((IkReal(-1.00000000000000))*(x6246)*(x6251)))+(((r12)*(x6249)))+(((IkReal(-1.00000000000000))*(x6246)*(x6250)))+(((IkReal(-1.00000000000000))*(x6248)*(x6252))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6247)))+(((IkReal(-1.00000000000000))*(r02)*(x6249)))+(((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6248)))+(((sj0)*(x6251)))+(((sj0)*(x6250)))+(((r12)*(x6245)))))+IKsqr(((((IkReal(-1.00000000000000))*(x6247)*(x6252)))+(((r02)*(x6245)))+(((IkReal(-1.00000000000000))*(x6246)*(x6251)))+(((r12)*(x6249)))+(((IkReal(-1.00000000000000))*(x6246)*(x6250)))+(((IkReal(-1.00000000000000))*(x6248)*(x6252)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6247)))+(((IkReal(-1.00000000000000))*(r02)*(x6249)))+(((IkReal(-1.00000000000000))*(sj5)*(x6246)*(x6248)))+(((sj0)*(x6251)))+(((sj0)*(x6250)))+(((r12)*(x6245)))), ((((IkReal(-1.00000000000000))*(x6247)*(x6252)))+(((r02)*(x6245)))+(((IkReal(-1.00000000000000))*(x6246)*(x6251)))+(((r12)*(x6249)))+(((IkReal(-1.00000000000000))*(x6246)*(x6250)))+(((IkReal(-1.00000000000000))*(x6248)*(x6252))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6253=IKcos(j3); +IkReal x6254=((sj0)*(sj5)); +IkReal x6255=((r00)*(sj6)); +IkReal x6256=((cj6)*(sj0)); +IkReal x6257=((IkReal(1.00000000000000))*(cj4)); +IkReal x6258=((r00)*(sj4)); +IkReal x6259=((cj0)*(cj5)); +IkReal x6260=((cj5)*(sj0)); +IkReal x6261=((cj6)*(r11)); +IkReal x6262=((r10)*(sj6)); +IkReal x6263=((cj0)*(sj5)); +IkReal x6264=((r10)*(sj4)); +IkReal x6265=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x6266=((cj4)*(cj5)*(r01)); +IkReal x6267=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x6268=((cj0)*(sj4)*(sj6)); +IkReal x6269=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x6261)*(x6263)))+(((IkReal(-1.00000000000000))*(r02)*(x6260)))+(((cj6)*(r01)*(x6254)))+(((IkReal(-1.00000000000000))*(x6262)*(x6263)))+(((r12)*(x6259)))+(((IkReal(-1.00000000000000))*(x6265)))+(((x6254)*(x6255)))); +evalcond[1]=((((r12)*(x6260)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x6263)))+(((r02)*(x6259)))+(((IkReal(-1.00000000000000))*(x6253)))+(((IkReal(-1.00000000000000))*(x6254)*(x6262)))+(((IkReal(-1.00000000000000))*(x6255)*(x6263)))+(((IkReal(-1.00000000000000))*(x6254)*(x6261)))); +evalcond[2]=((((r11)*(x6268)))+(x6253)+(((IkReal(-1.00000000000000))*(r01)*(x6269)))+(((cj4)*(r02)*(x6254)))+(((IkReal(-1.00000000000000))*(r12)*(x6257)*(x6263)))+(((x6256)*(x6266)))+(((cj4)*(x6255)*(x6260)))+(((IkReal(-1.00000000000000))*(x6264)*(x6267)))+(((x6256)*(x6258)))+(((IkReal(-1.00000000000000))*(x6257)*(x6259)*(x6261)))+(((IkReal(-1.00000000000000))*(x6257)*(x6259)*(x6262)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x6257)*(x6259)))+(((IkReal(-1.00000000000000))*(x6257)*(x6260)*(x6262)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x6256)*(x6257)))+(((IkReal(-1.00000000000000))*(x6256)*(x6264)))+(((IkReal(-1.00000000000000))*(x6258)*(x6267)))+(((r01)*(x6268)))+(((IkReal(-1.00000000000000))*(x6265)))+(((IkReal(-1.00000000000000))*(r02)*(x6257)*(x6263)))+(((IkReal(-1.00000000000000))*(r12)*(x6254)*(x6257)))+(((r11)*(x6269)))+(((IkReal(-1.00000000000000))*(x6255)*(x6257)*(x6259)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6270=((IkReal(1.00000000000000))*(cj0)); +IkReal x6271=((cj4)*(sj6)); +IkReal x6272=((sj0)*(sj4)); +IkReal x6273=((cj5)*(sj6)); +IkReal x6274=((sj4)*(sj5)); +IkReal x6275=((r12)*(sj5)); +IkReal x6276=((IkReal(0.374290000000000))*(cj5)); +IkReal x6277=((r02)*(sj0)); +IkReal x6278=((r20)*(sj4)); +IkReal x6279=((IkReal(1.00000000000000))*(sj0)); +IkReal x6280=((IkReal(1.00000000000000))*(cj5)); +IkReal x6281=((cj0)*(r10)); +IkReal x6282=((cj4)*(cj6)); +IkReal x6283=((r00)*(sj0)); +IkReal x6284=((cj6)*(r21)); +IkReal x6285=((IkReal(0.374290000000000))*(sj5)); +IkReal x6286=((cj0)*(r00)); +IkReal x6287=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6288=((cj0)*(r02)); +IkReal x6289=((cj5)*(sj4)); +IkReal x6290=((cj6)*(r01)); +IkReal x6291=((cj6)*(r11)); +IkReal x6292=((r01)*(sj0)); +IkReal x6293=((r10)*(sj0)); +IkReal x6294=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6295=((sj6)*(x6285)); +IkReal x6296=((cj0)*(cj6)*(x6285)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x6280)))+(((sj5)*(x6284)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x6273)*(x6278)))+(((x6284)*(x6289)))+(((r21)*(x6271)))+(((r22)*(x6274)))+(((IkReal(-1.00000000000000))*(r20)*(x6282)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x6273)))+(((r20)*(x6295)))+(((IkReal(-1.00000000000000))*(r22)*(x6276)))+(((x6284)*(x6285)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x6287)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6284)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x6282)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x6271)))+(((cj6)*(x6278)))); +evalcond[5]=((((r00)*(x6272)*(x6273)))+(((IkReal(-1.00000000000000))*(r11)*(x6270)*(x6271)))+(((r02)*(sj5)*(x6272)))+(((IkReal(-1.00000000000000))*(r12)*(x6270)*(x6274)))+(((x6281)*(x6282)))+(((IkReal(-1.00000000000000))*(x6270)*(x6289)*(x6291)))+(((x6271)*(x6292)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6270)*(x6273)))+(((cj5)*(x6272)*(x6290)))+(((IkReal(-1.00000000000000))*(r00)*(x6279)*(x6282)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r11)*(x6271)*(x6279)))+(((IkReal(-1.00000000000000))*(x6272)*(x6275)))+(((x6282)*(x6293)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6270)*(x6273)))+(((x6282)*(x6286)))+(((IkReal(-1.00000000000000))*(x6270)*(x6289)*(x6290)))+(((IkReal(-1.00000000000000))*(r10)*(x6272)*(x6273)))+(((IkReal(-1.00000000000000))*(x6272)*(x6280)*(x6291)))+(((IkReal(-1.00000000000000))*(r02)*(x6270)*(x6274)))+(((IkReal(-1.00000000000000))*(r01)*(x6270)*(x6271)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x6276)*(x6277)))+(((IkReal(0.0100000000000000))*(x6273)*(x6281)))+(((sj0)*(x6285)*(x6290)))+(((cj0)*(r12)*(x6276)))+(((IkReal(-1.00000000000000))*(py)*(x6270)))+(((x6283)*(x6295)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6291)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6290)))+(((IkReal(-1.00000000000000))*(cj0)*(x6285)*(x6291)))+(((IkReal(-1.00000000000000))*(x6281)*(x6295)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x6277)*(x6287)))+(((IkReal(-0.0100000000000000))*(x6273)*(x6283)))+(((IkReal(0.0100000000000000))*(cj0)*(x6275)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(x6273)*(x6293)))+(((IkReal(0.0100000000000000))*(x6273)*(x6286)))+(((IkReal(-1.00000000000000))*(py)*(x6279)))+(((IkReal(-1.00000000000000))*(x6286)*(x6295)))+(((x6276)*(x6288)))+(((IkReal(-1.00000000000000))*(px)*(x6270)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6291)))+(((x6287)*(x6288)))+(((r12)*(sj0)*(x6276)))+(((IkReal(-1.00000000000000))*(sj0)*(x6285)*(x6291)))+(((IkReal(-1.00000000000000))*(x6293)*(x6295)))+(((IkReal(0.0100000000000000))*(sj0)*(x6275)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6290)))+(((IkReal(-1.00000000000000))*(cj0)*(x6285)*(x6290)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6297=((cj5)*(r02)); +IkReal x6298=((cj0)*(sj5)); +IkReal x6299=((r10)*(sj6)); +IkReal x6300=((IkReal(1.00000000000000))*(cj6)); +IkReal x6301=((sj0)*(sj5)); +IkReal x6302=((cj5)*(r12)); +IkReal x6303=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((sj0)*(x6297)))+(((IkReal(-1.00000000000000))*(x6301)*(x6303)))+(((cj6)*(r11)*(x6298)))+(((x6298)*(x6299)))+(((IkReal(-1.00000000000000))*(r01)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(cj0)*(x6302))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x6299)*(x6301)))+(((cj0)*(x6297)))+(((IkReal(-1.00000000000000))*(r11)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(x6298)*(x6303)))+(((sj0)*(x6302)))+(((IkReal(-1.00000000000000))*(r01)*(x6298)*(x6300))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x6297)))+(((IkReal(-1.00000000000000))*(x6301)*(x6303)))+(((cj6)*(r11)*(x6298)))+(((x6298)*(x6299)))+(((IkReal(-1.00000000000000))*(r01)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(cj0)*(x6302)))))+IKsqr(((((IkReal(-1.00000000000000))*(x6299)*(x6301)))+(((cj0)*(x6297)))+(((IkReal(-1.00000000000000))*(r11)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(x6298)*(x6303)))+(((sj0)*(x6302)))+(((IkReal(-1.00000000000000))*(r01)*(x6298)*(x6300)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x6297)))+(((IkReal(-1.00000000000000))*(x6301)*(x6303)))+(((cj6)*(r11)*(x6298)))+(((x6298)*(x6299)))+(((IkReal(-1.00000000000000))*(r01)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(cj0)*(x6302)))), ((((IkReal(-1.00000000000000))*(x6299)*(x6301)))+(((cj0)*(x6297)))+(((IkReal(-1.00000000000000))*(r11)*(x6300)*(x6301)))+(((IkReal(-1.00000000000000))*(x6298)*(x6303)))+(((sj0)*(x6302)))+(((IkReal(-1.00000000000000))*(r01)*(x6298)*(x6300))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6304=IKsin(j3); +IkReal x6305=((sj0)*(sj5)); +IkReal x6306=((r00)*(sj6)); +IkReal x6307=((IkReal(1.00000000000000))*(cj4)); +IkReal x6308=((cj6)*(sj0)); +IkReal x6309=((r00)*(sj4)); +IkReal x6310=((cj0)*(cj5)); +IkReal x6311=((cj6)*(r01)); +IkReal x6312=((cj5)*(sj0)); +IkReal x6313=((cj0)*(sj5)); +IkReal x6314=((cj6)*(r11)); +IkReal x6315=((r10)*(sj6)); +IkReal x6316=((r10)*(sj4)); +IkReal x6317=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x6318=((cj0)*(sj4)*(sj6)); +IkReal x6319=((sj0)*(sj4)*(sj6)); +IkReal x6320=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((x6305)*(x6311)))+(x6304)+(((IkReal(-1.00000000000000))*(x6313)*(x6314)))+(((x6305)*(x6306)))+(((IkReal(-1.00000000000000))*(x6313)*(x6315)))+(((r12)*(x6310)))+(((IkReal(-1.00000000000000))*(r02)*(x6312)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x6311)*(x6313)))+(((IkReal(-1.00000000000000))*(x6317)))+(((IkReal(-1.00000000000000))*(x6305)*(x6315)))+(((IkReal(-1.00000000000000))*(x6306)*(x6313)))+(((IkReal(-1.00000000000000))*(x6305)*(x6314)))+(((r02)*(x6310)))+(((r12)*(x6312)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x6319)))+(((cj4)*(cj5)*(r01)*(x6308)))+(((cj4)*(r02)*(x6305)))+(((IkReal(-1.00000000000000))*(x6317)))+(((IkReal(-1.00000000000000))*(x6307)*(x6310)*(x6315)))+(((IkReal(-1.00000000000000))*(x6316)*(x6320)))+(((IkReal(-1.00000000000000))*(x6307)*(x6310)*(x6314)))+(((IkReal(-1.00000000000000))*(r12)*(x6307)*(x6313)))+(((x6308)*(x6309)))+(((cj4)*(x6306)*(x6312)))+(((r11)*(x6318)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6309)*(x6320)))+(((r11)*(x6319)))+(((IkReal(-1.00000000000000))*(x6307)*(x6310)*(x6311)))+(((IkReal(-1.00000000000000))*(x6304)))+(((IkReal(-1.00000000000000))*(x6307)*(x6312)*(x6315)))+(((IkReal(-1.00000000000000))*(r12)*(x6305)*(x6307)))+(((IkReal(-1.00000000000000))*(x6308)*(x6316)))+(((IkReal(-1.00000000000000))*(r02)*(x6307)*(x6313)))+(((r01)*(x6318)))+(((IkReal(-1.00000000000000))*(x6306)*(x6307)*(x6310)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x6307)*(x6308)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6321=((cj0)*(cj5)); +IkReal x6322=((IkReal(1.00000000000000))*(cj0)); +IkReal x6323=((cj6)*(r11)); +IkReal x6324=((r10)*(sj6)); +IkReal x6325=((cj5)*(sj0)); +IkReal x6326=((r00)*(sj5)*(sj6)); +IkReal x6327=((cj6)*(r01)*(sj5)); +IkReal x6328=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6324)))+(((sj0)*(x6327)))+(((r12)*(x6321)))+(((sj0)*(x6326)))+(((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6323)))+(((IkReal(-1.00000000000000))*(r02)*(x6325))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x6323)*(x6328)))+(((IkReal(-1.00000000000000))*(x6324)*(x6328)))+(((r02)*(x6321)))+(((IkReal(-1.00000000000000))*(x6322)*(x6327)))+(((IkReal(-1.00000000000000))*(x6322)*(x6326)))+(((r12)*(x6325))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6324)))+(((sj0)*(x6327)))+(((r12)*(x6321)))+(((sj0)*(x6326)))+(((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6323)))+(((IkReal(-1.00000000000000))*(r02)*(x6325)))))))+IKsqr(((((IkReal(-1.00000000000000))*(x6323)*(x6328)))+(((IkReal(-1.00000000000000))*(x6324)*(x6328)))+(((r02)*(x6321)))+(((IkReal(-1.00000000000000))*(x6322)*(x6327)))+(((IkReal(-1.00000000000000))*(x6322)*(x6326)))+(((r12)*(x6325)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6324)))+(((sj0)*(x6327)))+(((r12)*(x6321)))+(((sj0)*(x6326)))+(((IkReal(-1.00000000000000))*(sj5)*(x6322)*(x6323)))+(((IkReal(-1.00000000000000))*(r02)*(x6325)))))), ((((IkReal(-1.00000000000000))*(x6323)*(x6328)))+(((IkReal(-1.00000000000000))*(x6324)*(x6328)))+(((r02)*(x6321)))+(((IkReal(-1.00000000000000))*(x6322)*(x6327)))+(((IkReal(-1.00000000000000))*(x6322)*(x6326)))+(((r12)*(x6325))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6329=IKsin(j3); +IkReal x6330=IKcos(j3); +IkReal x6331=((sj0)*(sj5)); +IkReal x6332=((r00)*(sj6)); +IkReal x6333=((IkReal(1.00000000000000))*(cj4)); +IkReal x6334=((cj6)*(r01)); +IkReal x6335=((cj0)*(cj5)); +IkReal x6336=((cj5)*(sj0)); +IkReal x6337=((cj6)*(r11)); +IkReal x6338=((cj0)*(sj5)); +IkReal x6339=((cj6)*(sj4)); +IkReal x6340=((cj4)*(cj5)); +IkReal x6341=((cj6)*(r21)); +IkReal x6342=((r20)*(sj6)); +IkReal x6343=((r10)*(sj6)); +IkReal x6344=((IkReal(1.00000000000000))*(cj0)); +IkReal x6345=((IkReal(1.00000000000000))*(x6329)); +IkReal x6346=((cj0)*(sj4)*(sj6)); +IkReal x6347=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x6341)))+(((sj5)*(x6342)))+(((IkReal(-1.00000000000000))*(cj2)*(x6345)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x6339)))+(((x6340)*(x6342)))+(((x6340)*(x6341)))+(((cj2)*(x6330)))+(((cj4)*(r22)*(sj5)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6338)*(x6343)))+(((r12)*(x6335)))+(((IkReal(-1.00000000000000))*(sj2)*(x6345)))+(((x6331)*(x6332)))+(((IkReal(-1.00000000000000))*(r02)*(x6336)))+(((IkReal(-1.00000000000000))*(x6337)*(x6338)))+(((x6331)*(x6334)))); +evalcond[3]=((((r02)*(x6335)))+(((IkReal(-1.00000000000000))*(x6331)*(x6343)))+(((IkReal(-1.00000000000000))*(x6332)*(x6338)))+(((IkReal(-1.00000000000000))*(x6334)*(x6338)))+(((r12)*(x6336)))+(((IkReal(-1.00000000000000))*(x6330)))+(((IkReal(-1.00000000000000))*(x6331)*(x6337)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x6339)*(x6344)))+(((cj4)*(x6334)*(x6336)))+(((cj4)*(r02)*(x6331)))+(((IkReal(-1.00000000000000))*(x6333)*(x6335)*(x6337)))+(((IkReal(-1.00000000000000))*(r01)*(x6347)))+(((r11)*(x6346)))+(((IkReal(-1.00000000000000))*(x6333)*(x6335)*(x6343)))+(((IkReal(-1.00000000000000))*(r12)*(x6333)*(x6338)))+(((cj4)*(x6332)*(x6336)))+(((r00)*(sj0)*(x6339)))+(((sj2)*(x6330)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6333)*(x6336)*(x6337)))+(((IkReal(-1.00000000000000))*(x6332)*(x6333)*(x6335)))+(((IkReal(-1.00000000000000))*(r02)*(x6333)*(x6338)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6339)))+(((IkReal(-1.00000000000000))*(r12)*(x6331)*(x6333)))+(((IkReal(-1.00000000000000))*(x6333)*(x6336)*(x6343)))+(((IkReal(-1.00000000000000))*(x6333)*(x6334)*(x6335)))+(((r11)*(x6347)))+(((r01)*(x6346)))+(((IkReal(-1.00000000000000))*(r00)*(x6339)*(x6344)))+(((IkReal(-1.00000000000000))*(x6345)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6348=((sj5)*(sj6)); +IkReal x6349=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x6348)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x6349)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6348)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6348)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x6349))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x6348)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x6349)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6348)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6348)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x6349)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((r20)*(x6348)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x6349)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6348)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6348)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x6349))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6350=IKsin(j3); +IkReal x6351=IKcos(j3); +IkReal x6352=((sj0)*(sj5)); +IkReal x6353=((r00)*(sj6)); +IkReal x6354=((IkReal(1.00000000000000))*(cj4)); +IkReal x6355=((cj6)*(r01)); +IkReal x6356=((cj0)*(cj5)); +IkReal x6357=((cj5)*(sj0)); +IkReal x6358=((cj6)*(r11)); +IkReal x6359=((cj0)*(sj5)); +IkReal x6360=((cj6)*(sj4)); +IkReal x6361=((cj4)*(cj5)); +IkReal x6362=((cj6)*(r21)); +IkReal x6363=((r20)*(sj6)); +IkReal x6364=((r10)*(sj6)); +IkReal x6365=((IkReal(1.00000000000000))*(cj0)); +IkReal x6366=((IkReal(1.00000000000000))*(x6350)); +IkReal x6367=((cj0)*(sj4)*(sj6)); +IkReal x6368=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x6363)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6362)))+(((IkReal(-1.00000000000000))*(cj2)*(x6366)))); +evalcond[1]=((((x6361)*(x6363)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x6360)))+(((x6361)*(x6362)))+(((cj2)*(x6351)))+(((cj4)*(r22)*(sj5)))); +evalcond[2]=((((x6352)*(x6353)))+(((IkReal(-1.00000000000000))*(sj2)*(x6366)))+(((r12)*(x6356)))+(((x6352)*(x6355)))+(((IkReal(-1.00000000000000))*(x6358)*(x6359)))+(((IkReal(-1.00000000000000))*(r02)*(x6357)))+(((IkReal(-1.00000000000000))*(x6359)*(x6364)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6353)*(x6359)))+(((IkReal(-1.00000000000000))*(x6351)))+(((IkReal(-1.00000000000000))*(x6352)*(x6364)))+(((IkReal(-1.00000000000000))*(x6352)*(x6358)))+(((r02)*(x6356)))+(((r12)*(x6357)))+(((IkReal(-1.00000000000000))*(x6355)*(x6359)))); +evalcond[4]=((((cj4)*(r02)*(x6352)))+(((r11)*(x6367)))+(((sj2)*(x6351)))+(((cj4)*(x6353)*(x6357)))+(((IkReal(-1.00000000000000))*(r10)*(x6360)*(x6365)))+(((IkReal(-1.00000000000000))*(x6354)*(x6356)*(x6358)))+(((IkReal(-1.00000000000000))*(x6354)*(x6356)*(x6364)))+(((cj4)*(x6355)*(x6357)))+(((IkReal(-1.00000000000000))*(r12)*(x6354)*(x6359)))+(((IkReal(-1.00000000000000))*(r01)*(x6368)))+(((r00)*(sj0)*(x6360)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6354)*(x6357)*(x6364)))+(((IkReal(-1.00000000000000))*(r12)*(x6352)*(x6354)))+(((r01)*(x6367)))+(((r11)*(x6368)))+(((IkReal(-1.00000000000000))*(x6366)))+(((IkReal(-1.00000000000000))*(x6354)*(x6355)*(x6356)))+(((IkReal(-1.00000000000000))*(r00)*(x6360)*(x6365)))+(((IkReal(-1.00000000000000))*(r02)*(x6354)*(x6359)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6360)))+(((IkReal(-1.00000000000000))*(x6354)*(x6357)*(x6358)))+(((IkReal(-1.00000000000000))*(x6353)*(x6354)*(x6356)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6369=((IkReal(1.00000000000000))*(cj4)); +IkReal x6370=((cj6)*(r21)); +IkReal x6371=((r20)*(sj6)); +if( IKabs(((gconst9)*(((((sj5)*(x6371)))+(((sj5)*(x6370)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x6369)*(x6370)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6369)))+(((IkReal(-1.00000000000000))*(cj5)*(x6369)*(x6371)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst9)*(((((sj5)*(x6371)))+(((sj5)*(x6370)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x6369)*(x6370)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6369)))+(((IkReal(-1.00000000000000))*(cj5)*(x6369)*(x6371)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6372=IKsin(j3); +IkReal x6373=IKcos(j3); +IkReal x6374=((sj0)*(sj5)); +IkReal x6375=((r00)*(sj6)); +IkReal x6376=((IkReal(1.00000000000000))*(cj4)); +IkReal x6377=((cj6)*(r01)); +IkReal x6378=((cj0)*(cj5)); +IkReal x6379=((cj5)*(sj0)); +IkReal x6380=((cj6)*(r11)); +IkReal x6381=((cj0)*(sj5)); +IkReal x6382=((cj6)*(sj4)); +IkReal x6383=((cj4)*(cj5)); +IkReal x6384=((cj6)*(r21)); +IkReal x6385=((r20)*(sj6)); +IkReal x6386=((r10)*(sj6)); +IkReal x6387=((IkReal(1.00000000000000))*(cj0)); +IkReal x6388=((IkReal(1.00000000000000))*(x6372)); +IkReal x6389=((cj0)*(sj4)*(sj6)); +IkReal x6390=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x6384)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6385)))+(((IkReal(-1.00000000000000))*(cj2)*(x6388)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x6373)))+(((r20)*(x6382)))+(((cj4)*(r22)*(sj5)))+(((x6383)*(x6384)))+(((x6383)*(x6385)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x6388)))+(((x6374)*(x6377)))+(((IkReal(-1.00000000000000))*(x6380)*(x6381)))+(((x6374)*(x6375)))+(((IkReal(-1.00000000000000))*(x6381)*(x6386)))+(((IkReal(-1.00000000000000))*(r02)*(x6379)))+(((r12)*(x6378)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6377)*(x6381)))+(((IkReal(-1.00000000000000))*(x6373)))+(((IkReal(-1.00000000000000))*(x6374)*(x6380)))+(((IkReal(-1.00000000000000))*(x6375)*(x6381)))+(((r12)*(x6379)))+(((IkReal(-1.00000000000000))*(x6374)*(x6386)))+(((r02)*(x6378)))); +evalcond[4]=((((sj2)*(x6373)))+(((IkReal(-1.00000000000000))*(r12)*(x6376)*(x6381)))+(((IkReal(-1.00000000000000))*(r10)*(x6382)*(x6387)))+(((r11)*(x6389)))+(((r00)*(sj0)*(x6382)))+(((IkReal(-1.00000000000000))*(r01)*(x6390)))+(((cj4)*(x6375)*(x6379)))+(((cj4)*(r02)*(x6374)))+(((IkReal(-1.00000000000000))*(x6376)*(x6378)*(x6386)))+(((cj4)*(x6377)*(x6379)))+(((IkReal(-1.00000000000000))*(x6376)*(x6378)*(x6380)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x6376)*(x6381)))+(((IkReal(-1.00000000000000))*(r00)*(x6382)*(x6387)))+(((r11)*(x6390)))+(((IkReal(-1.00000000000000))*(x6376)*(x6377)*(x6378)))+(((r01)*(x6389)))+(((IkReal(-1.00000000000000))*(x6376)*(x6379)*(x6380)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6382)))+(((IkReal(-1.00000000000000))*(x6375)*(x6376)*(x6378)))+(((IkReal(-1.00000000000000))*(r12)*(x6374)*(x6376)))+(((IkReal(-1.00000000000000))*(x6388)))+(((IkReal(-1.00000000000000))*(x6376)*(x6379)*(x6386)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x6391=((IkReal(1.00000000000000))*(cj0)); +IkReal x6392=((cj4)*(sj6)); +IkReal x6393=((sj0)*(sj4)); +IkReal x6394=((cj5)*(sj6)); +IkReal x6395=((sj4)*(sj5)); +IkReal x6396=((r12)*(sj5)); +IkReal x6397=((IkReal(0.374290000000000))*(cj5)); +IkReal x6398=((r02)*(sj0)); +IkReal x6399=((IkReal(1.00000000000000))*(sj0)); +IkReal x6400=((cj0)*(r10)); +IkReal x6401=((cj4)*(cj6)); +IkReal x6402=((r00)*(sj0)); +IkReal x6403=((cj6)*(r21)); +IkReal x6404=((IkReal(0.374290000000000))*(sj5)); +IkReal x6405=((cj0)*(r00)); +IkReal x6406=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6407=((cj0)*(r02)); +IkReal x6408=((cj5)*(sj4)); +IkReal x6409=((cj6)*(r01)); +IkReal x6410=((cj6)*(r11)); +IkReal x6411=((r01)*(sj0)); +IkReal x6412=((r10)*(sj0)); +IkReal x6413=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6414=((sj6)*(x6404)); +IkReal x6415=((cj0)*(cj6)*(x6404)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((r20)*(sj4)*(x6394)))+(((x6403)*(x6408)))+(sj2)+(((r22)*(x6395)))+(((r21)*(x6392)))+(((IkReal(-1.00000000000000))*(r20)*(x6401)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x6397)))+(((r20)*(x6414)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6403)))+(((IkReal(-0.0690000000000000))*(cj2)))+(pz)+(((x6403)*(x6404)))+(((IkReal(-1.00000000000000))*(r22)*(x6406)))+(((IkReal(-0.0100000000000000))*(r20)*(x6394)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x6391)*(x6395)))+(((x6392)*(x6411)))+(((IkReal(-1.00000000000000))*(r11)*(x6391)*(x6392)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6391)*(x6394)))+(((r00)*(x6393)*(x6394)))+(((x6400)*(x6401)))+(cj2)+(((cj5)*(x6393)*(x6409)))+(((r02)*(sj5)*(x6393)))+(((IkReal(-1.00000000000000))*(r00)*(x6399)*(x6401)))+(((IkReal(-1.00000000000000))*(x6391)*(x6408)*(x6410)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj5)*(x6393)*(x6410)))+(((IkReal(-1.00000000000000))*(r02)*(x6391)*(x6395)))+(((IkReal(-1.00000000000000))*(x6393)*(x6396)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6391)*(x6394)))+(((IkReal(-1.00000000000000))*(x6391)*(x6408)*(x6409)))+(((x6401)*(x6405)))+(((IkReal(-1.00000000000000))*(r11)*(x6392)*(x6399)))+(((IkReal(-1.00000000000000))*(r01)*(x6391)*(x6392)))+(((IkReal(-1.00000000000000))*(r10)*(x6393)*(x6394)))+(((x6401)*(x6412)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(cj0)*(x6404)*(x6410)))+(((IkReal(-0.0100000000000000))*(x6394)*(x6402)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(0.0100000000000000))*(cj0)*(x6396)))+(((IkReal(-1.00000000000000))*(x6397)*(x6398)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6409)))+(((IkReal(0.0100000000000000))*(x6394)*(x6400)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6410)))+(((x6402)*(x6414)))+(((cj0)*(r12)*(x6397)))+(((IkReal(-1.00000000000000))*(x6400)*(x6414)))+(((sj0)*(x6404)*(x6409)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x6398)*(x6406)))+(((IkReal(-1.00000000000000))*(py)*(x6391)))); +evalcond[6]=((IkReal(-0.295420000000000))+(((x6406)*(x6407)))+(((IkReal(-1.00000000000000))*(px)*(x6391)))+(((IkReal(-1.00000000000000))*(x6405)*(x6414)))+(((IkReal(0.0100000000000000))*(x6394)*(x6405)))+(((IkReal(-1.00000000000000))*(x6412)*(x6414)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6410)))+(((IkReal(0.0100000000000000))*(x6394)*(x6412)))+(((r12)*(sj0)*(x6397)))+(((IkReal(-1.00000000000000))*(sj0)*(x6404)*(x6410)))+(((IkReal(-1.00000000000000))*(py)*(x6399)))+(((x6397)*(x6407)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6409)))+(((IkReal(0.0100000000000000))*(sj0)*(x6396)))+(((IkReal(-1.00000000000000))*(cj0)*(x6404)*(x6409)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst10; +gconst10=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x6416=((cj5)*(sj4)); +IkReal x6417=((IkReal(1.00000000000000))*(sj6)); +IkReal x6418=((r10)*(sj0)); +IkReal x6419=((sj4)*(sj5)); +IkReal x6420=((cj5)*(cj6)); +IkReal x6421=((r01)*(sj0)); +IkReal x6422=((IkReal(1.00000000000000))*(r02)); +IkReal x6423=((IkReal(0.374290000000000))*(cj0)); +IkReal x6424=((cj5)*(r12)); +IkReal x6425=((cj6)*(sj5)); +IkReal x6426=((cj0)*(r11)); +IkReal x6427=((cj5)*(sj0)); +IkReal x6428=((r20)*(sj6)); +IkReal x6429=((IkReal(1.00000000000000))*(sj0)); +IkReal x6430=((cj4)*(cj5)); +IkReal x6431=((IkReal(1.00000000000000))*(cj6)); +IkReal x6432=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6433=((sj5)*(sj6)); +IkReal x6434=((cj0)*(r10)); +IkReal x6435=((cj4)*(cj6)); +IkReal x6436=((cj0)*(r01)); +IkReal x6437=((IkReal(1.00000000000000))*(cj4)); +IkReal x6438=((cj0)*(r00)); +IkReal x6439=((IkReal(0.374290000000000))*(sj0)); +IkReal x6440=((cj0)*(r12)); +IkReal x6441=((IkReal(0.374290000000000))*(sj5)); +IkReal x6442=((cj4)*(sj6)); +IkReal x6443=((IkReal(1.00000000000000))*(cj0)); +IkReal x6444=((r02)*(sj0)); +IkReal x6445=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6446=((r11)*(sj0)); +IkReal x6447=((r00)*(sj0)*(sj6)); +IkReal x6448=((r00)*(x6435)); +IkReal x6449=((sj6)*(x6445)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj4)*(r20)*(x6431)))+(((r22)*(x6419)))+(((cj6)*(r21)*(x6416)))+(((x6416)*(x6428)))+(((r21)*(x6442)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x6425)))+(((x6428)*(x6441)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x6432)))+(((IkReal(-1.00000000000000))*(x6428)*(x6445)))+(((IkReal(-0.0100000000000000))*(r21)*(x6420)))); +evalcond[3]=((((r00)*(sj0)*(x6433)))+(((IkReal(-1.00000000000000))*(sj5)*(x6417)*(x6434)))+(((IkReal(-1.00000000000000))*(x6422)*(x6427)))+(((x6421)*(x6425)))+(((cj0)*(x6424)))+(((IkReal(-1.00000000000000))*(x6425)*(x6426)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x6416)*(x6426)*(x6431)))+(((x6416)*(x6447)))+(((cj6)*(x6416)*(x6421)))+(((IkReal(-1.00000000000000))*(x6419)*(x6440)))+(((x6434)*(x6435)))+(((IkReal(-1.00000000000000))*(cj4)*(x6417)*(x6426)))+(((IkReal(-1.00000000000000))*(x6416)*(x6417)*(x6434)))+(((x6419)*(x6444)))+(((x6421)*(x6442)))+(((IkReal(-1.00000000000000))*(x6429)*(x6448)))); +evalcond[5]=((((cj4)*(x6420)*(x6421)))+(((IkReal(-1.00000000000000))*(x6417)*(x6430)*(x6434)))+(((r00)*(x6427)*(x6442)))+(((sj4)*(sj6)*(x6426)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(sj5)*(x6444)))+(((IkReal(-1.00000000000000))*(sj4)*(x6417)*(x6421)))+(((IkReal(-1.00000000000000))*(sj4)*(x6431)*(x6434)))+(((IkReal(-1.00000000000000))*(x6420)*(x6426)*(x6437)))+(((IkReal(-1.00000000000000))*(sj5)*(x6437)*(x6440)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x6417)*(x6436)))+(((IkReal(-1.00000000000000))*(r12)*(x6419)*(x6429)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x6416)*(x6429)))+(((IkReal(-1.00000000000000))*(cj0)*(x6419)*(x6422)))+(((x6435)*(x6438)))+(((x6418)*(x6435)))+(((IkReal(-1.00000000000000))*(x6416)*(x6431)*(x6436)))+(((IkReal(-1.00000000000000))*(cj4)*(x6417)*(x6446)))+(((IkReal(-1.00000000000000))*(x6416)*(x6417)*(x6438)))+(((IkReal(-1.00000000000000))*(x6416)*(x6417)*(x6418)))); +evalcond[7]=((((IkReal(-0.0100000000000000))*(x6420)*(x6421)))+(((IkReal(-1.00000000000000))*(py)*(x6443)))+(((IkReal(-1.00000000000000))*(r11)*(x6423)*(x6425)))+(((IkReal(0.374290000000000))*(x6421)*(x6425)))+(((x6434)*(x6449)))+(((x6432)*(x6440)))+(((x6423)*(x6424)))+(((IkReal(-1.00000000000000))*(r10)*(x6423)*(x6433)))+(((IkReal(-0.374290000000000))*(r02)*(x6427)))+(((IkReal(-1.00000000000000))*(x6432)*(x6444)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x6427)))+(((IkReal(0.0100000000000000))*(x6420)*(x6426)))+(((px)*(sj0)))+(((r00)*(x6433)*(x6439)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((cj0)*(r02)*(x6432)))+(((IkReal(0.0100000000000000))*(x6420)*(x6436)))+(((x6424)*(x6439)))+(((r12)*(sj0)*(x6432)))+(((IkReal(-1.00000000000000))*(r00)*(x6423)*(x6433)))+(((IkReal(-1.00000000000000))*(r11)*(x6425)*(x6439)))+(((IkReal(-0.374290000000000))*(x6418)*(x6433)))+(((IkReal(-1.00000000000000))*(py)*(x6429)))+(((IkReal(-1.00000000000000))*(r01)*(x6423)*(x6425)))+(((IkReal(-1.00000000000000))*(px)*(x6443)))+(((x6438)*(x6449)))+(((x6418)*(x6449)))+(((IkReal(0.0100000000000000))*(x6420)*(x6446)))+(((cj5)*(r02)*(x6423)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6450=((IkReal(1.00000000000000))*(r21)); +IkReal x6451=((cj4)*(cj5)); +IkReal x6452=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x6452)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6450)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6450)))+(((x6451)*(x6452)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x6451))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x6452)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6450)))+(((cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6450)))+(((x6451)*(x6452)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x6451)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x6452)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6450)))+(((cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6450)))+(((x6451)*(x6452)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x6451))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6453=IKcos(j3); +IkReal x6454=IKsin(j3); +IkReal x6455=((IkReal(1.00000000000000))*(cj4)); +IkReal x6456=((sj0)*(sj5)); +IkReal x6457=((cj0)*(cj5)); +IkReal x6458=((cj6)*(r01)); +IkReal x6459=((r00)*(sj6)); +IkReal x6460=((cj6)*(r11)); +IkReal x6461=((cj5)*(sj0)); +IkReal x6462=((cj6)*(sj4)); +IkReal x6463=((sj4)*(sj6)); +IkReal x6464=((cj4)*(cj5)); +IkReal x6465=((cj6)*(r21)); +IkReal x6466=((r20)*(sj6)); +IkReal x6467=((r10)*(sj6)); +IkReal x6468=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x6465)))+(((sj5)*(x6466)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x6454)); +evalcond[1]=((((x6464)*(x6466)))+(((IkReal(-1.00000000000000))*(x6453)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x6462)))+(((x6464)*(x6465)))+(((IkReal(-1.00000000000000))*(r21)*(x6463)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6456)*(x6460)))+(((IkReal(-1.00000000000000))*(x6458)*(x6468)))+(((IkReal(-1.00000000000000))*(x6459)*(x6468)))+(((r12)*(x6461)))+(((r02)*(x6457)))+(((IkReal(-1.00000000000000))*(x6456)*(x6467)))+(x6453)); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6455)))+(((IkReal(-1.00000000000000))*(x6455)*(x6460)*(x6461)))+(((IkReal(-1.00000000000000))*(x6455)*(x6461)*(x6467)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6462)))+(((IkReal(-1.00000000000000))*(x6455)*(x6457)*(x6458)))+(((r11)*(sj0)*(x6463)))+(((IkReal(-1.00000000000000))*(x6455)*(x6457)*(x6459)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6462)))+(((cj0)*(r01)*(x6463)))+(x6454)+(((IkReal(-1.00000000000000))*(r12)*(x6455)*(x6456)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6469=((cj5)*(sj4)); +IkReal x6470=((IkReal(1.00000000000000))*(sj6)); +IkReal x6471=((r10)*(sj0)); +IkReal x6472=((sj4)*(sj5)); +IkReal x6473=((cj5)*(cj6)); +IkReal x6474=((r01)*(sj0)); +IkReal x6475=((IkReal(1.00000000000000))*(r02)); +IkReal x6476=((IkReal(0.374290000000000))*(cj0)); +IkReal x6477=((cj5)*(r12)); +IkReal x6478=((cj6)*(sj5)); +IkReal x6479=((cj0)*(r11)); +IkReal x6480=((cj5)*(sj0)); +IkReal x6481=((r20)*(sj6)); +IkReal x6482=((IkReal(1.00000000000000))*(sj0)); +IkReal x6483=((cj4)*(cj5)); +IkReal x6484=((IkReal(1.00000000000000))*(cj6)); +IkReal x6485=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6486=((sj5)*(sj6)); +IkReal x6487=((cj0)*(r10)); +IkReal x6488=((cj4)*(cj6)); +IkReal x6489=((cj0)*(r01)); +IkReal x6490=((IkReal(1.00000000000000))*(cj4)); +IkReal x6491=((cj0)*(r00)); +IkReal x6492=((IkReal(0.374290000000000))*(sj0)); +IkReal x6493=((cj0)*(r12)); +IkReal x6494=((IkReal(0.374290000000000))*(sj5)); +IkReal x6495=((cj4)*(sj6)); +IkReal x6496=((IkReal(1.00000000000000))*(cj0)); +IkReal x6497=((r02)*(sj0)); +IkReal x6498=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6499=((r11)*(sj0)); +IkReal x6500=((r00)*(sj0)*(sj6)); +IkReal x6501=((r00)*(x6488)); +IkReal x6502=((sj6)*(x6498)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x6472)))+(((x6469)*(x6481)))+(((cj6)*(r21)*(x6469)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x6484)))+(((r21)*(x6495)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x6473)))+(((IkReal(-1.00000000000000))*(r22)*(x6485)))+(((x6481)*(x6494)))+(pz)+(((IkReal(0.374290000000000))*(r21)*(x6478)))+(((IkReal(-1.00000000000000))*(x6481)*(x6498)))); +evalcond[3]=((((r00)*(sj0)*(x6486)))+(((IkReal(-1.00000000000000))*(x6478)*(x6479)))+(((x6474)*(x6478)))+(((IkReal(-1.00000000000000))*(x6475)*(x6480)))+(((cj0)*(x6477)))+(((IkReal(-1.00000000000000))*(sj5)*(x6470)*(x6487)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x6487)*(x6488)))+(((IkReal(-1.00000000000000))*(x6482)*(x6501)))+(((IkReal(-1.00000000000000))*(x6469)*(x6470)*(x6487)))+(((x6469)*(x6500)))+(((x6474)*(x6495)))+(((cj6)*(x6469)*(x6474)))+(((x6472)*(x6497)))+(((IkReal(-1.00000000000000))*(cj4)*(x6470)*(x6479)))+(((IkReal(-1.00000000000000))*(x6472)*(x6493)))+(((IkReal(-1.00000000000000))*(x6469)*(x6479)*(x6484)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x6490)*(x6493)))+(((IkReal(-1.00000000000000))*(x6470)*(x6483)*(x6487)))+(((IkReal(-1.00000000000000))*(sj4)*(x6470)*(x6474)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x6473)*(x6479)*(x6490)))+(((IkReal(-1.00000000000000))*(sj4)*(x6484)*(x6487)))+(((sj4)*(sj6)*(x6479)))+(((cj4)*(sj5)*(x6497)))+(((cj4)*(x6473)*(x6474)))+(((r00)*(x6480)*(x6495)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x6470)*(x6499)))+(((x6488)*(x6491)))+(((x6471)*(x6488)))+(((IkReal(-1.00000000000000))*(x6469)*(x6470)*(x6491)))+(((IkReal(-1.00000000000000))*(r12)*(x6472)*(x6482)))+(((IkReal(-1.00000000000000))*(x6469)*(x6484)*(x6489)))+(((IkReal(-1.00000000000000))*(x6469)*(x6470)*(x6471)))+(((IkReal(-1.00000000000000))*(cj0)*(x6472)*(x6475)))+(((IkReal(-1.00000000000000))*(cj4)*(x6470)*(x6489)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x6469)*(x6482)))); +evalcond[7]=((((x6487)*(x6502)))+(((IkReal(0.374290000000000))*(x6474)*(x6478)))+(((IkReal(-0.0100000000000000))*(x6473)*(x6474)))+(((x6476)*(x6477)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x6480)))+(((IkReal(-1.00000000000000))*(x6485)*(x6497)))+(((px)*(sj0)))+(((IkReal(-0.374290000000000))*(r02)*(x6480)))+(((IkReal(-1.00000000000000))*(r10)*(x6476)*(x6486)))+(((IkReal(-1.00000000000000))*(py)*(x6496)))+(((IkReal(-1.00000000000000))*(r11)*(x6476)*(x6478)))+(((x6485)*(x6493)))+(((r00)*(x6486)*(x6492)))+(((IkReal(0.0100000000000000))*(x6473)*(x6479)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(r00)*(x6476)*(x6486)))+(((IkReal(-1.00000000000000))*(px)*(x6496)))+(((cj0)*(r02)*(x6485)))+(((r12)*(sj0)*(x6485)))+(((IkReal(-0.374290000000000))*(x6471)*(x6486)))+(((cj5)*(r02)*(x6476)))+(((x6477)*(x6492)))+(((IkReal(-1.00000000000000))*(r01)*(x6476)*(x6478)))+(((x6471)*(x6502)))+(((IkReal(0.0100000000000000))*(x6473)*(x6499)))+(((IkReal(-1.00000000000000))*(py)*(x6482)))+(((IkReal(0.0100000000000000))*(x6473)*(x6489)))+(((IkReal(-1.00000000000000))*(r11)*(x6478)*(x6492)))+(((x6491)*(x6502)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6503=((IkReal(1.00000000000000))*(cj4)); +IkReal x6504=((cj6)*(r21)); +IkReal x6505=((r20)*(sj6)); +if( IKabs(((((sj5)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6504))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6504)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6503)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6504)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6504)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6503)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6504)))), ((((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6505)))+(((IkReal(-1.00000000000000))*(cj5)*(x6503)*(x6504)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x6503)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6506=IKcos(j3); +IkReal x6507=IKsin(j3); +IkReal x6508=((IkReal(1.00000000000000))*(cj4)); +IkReal x6509=((sj0)*(sj5)); +IkReal x6510=((cj0)*(cj5)); +IkReal x6511=((cj6)*(r01)); +IkReal x6512=((r00)*(sj6)); +IkReal x6513=((cj6)*(r11)); +IkReal x6514=((cj5)*(sj0)); +IkReal x6515=((cj6)*(sj4)); +IkReal x6516=((sj4)*(sj6)); +IkReal x6517=((cj4)*(cj5)); +IkReal x6518=((cj6)*(r21)); +IkReal x6519=((r20)*(sj6)); +IkReal x6520=((r10)*(sj6)); +IkReal x6521=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x6518)))+(((IkReal(-1.00000000000000))*(x6507)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6519)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x6516)))+(((x6517)*(x6518)))+(((x6517)*(x6519)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x6515)))+(x6506)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6509)*(x6513)))+(((IkReal(-1.00000000000000))*(x6511)*(x6521)))+(((r02)*(x6510)))+(((IkReal(-1.00000000000000))*(x6509)*(x6520)))+(x6506)+(((r12)*(x6514)))+(((IkReal(-1.00000000000000))*(x6512)*(x6521)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6508)*(x6510)*(x6511)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6515)))+(((IkReal(-1.00000000000000))*(x6508)*(x6514)*(x6520)))+(((IkReal(-1.00000000000000))*(x6508)*(x6510)*(x6512)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x6515)))+(((cj0)*(r01)*(x6516)))+(((IkReal(-1.00000000000000))*(x6508)*(x6513)*(x6514)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x6508)))+(((r11)*(sj0)*(x6516)))+(((IkReal(-1.00000000000000))*(r12)*(x6508)*(x6509)))+(x6507)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6522=((IkReal(1.00000000000000))*(cj0)); +IkReal x6523=((cj4)*(sj6)); +IkReal x6524=((sj0)*(sj4)); +IkReal x6525=((cj5)*(sj6)); +IkReal x6526=((sj4)*(sj5)); +IkReal x6527=((r12)*(sj5)); +IkReal x6528=((IkReal(0.374290000000000))*(cj5)); +IkReal x6529=((r02)*(sj0)); +IkReal x6530=((r20)*(sj4)); +IkReal x6531=((IkReal(1.00000000000000))*(sj0)); +IkReal x6532=((IkReal(1.00000000000000))*(cj5)); +IkReal x6533=((cj0)*(r10)); +IkReal x6534=((cj4)*(cj6)); +IkReal x6535=((r00)*(sj0)); +IkReal x6536=((cj6)*(r21)); +IkReal x6537=((IkReal(0.374290000000000))*(sj5)); +IkReal x6538=((cj0)*(r00)); +IkReal x6539=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6540=((cj0)*(r02)); +IkReal x6541=((cj5)*(sj4)); +IkReal x6542=((cj6)*(r01)); +IkReal x6543=((cj6)*(r11)); +IkReal x6544=((r01)*(sj0)); +IkReal x6545=((r10)*(sj0)); +IkReal x6546=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6547=((sj6)*(x6537)); +IkReal x6548=((cj0)*(cj6)*(x6537)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x6536)))+(((IkReal(-1.00000000000000))*(r22)*(x6532)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x6536)*(x6541)))+(((r21)*(x6523)))+(((r22)*(x6526)))+(((IkReal(-1.00000000000000))*(r20)*(x6534)))+(((x6525)*(x6530)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x6536)))+(((x6536)*(x6537)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x6539)))+(((IkReal(-0.0100000000000000))*(r20)*(x6525)))+(((r20)*(x6547)))+(((IkReal(-1.00000000000000))*(r22)*(x6528)))); +evalcond[4]=((((cj6)*(x6530)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x6534)))+(((cj5)*(r20)*(x6523)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x6522)*(x6526)))+(((r02)*(sj5)*(x6524)))+(((IkReal(-1.00000000000000))*(x6522)*(x6541)*(x6543)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6522)*(x6525)))+(((x6523)*(x6544)))+(((x6533)*(x6534)))+(((IkReal(-1.00000000000000))*(r11)*(x6522)*(x6523)))+(((r00)*(x6524)*(x6525)))+(((cj5)*(x6524)*(x6542)))+(((IkReal(-1.00000000000000))*(r00)*(x6531)*(x6534)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r01)*(x6522)*(x6523)))+(((IkReal(-1.00000000000000))*(x6524)*(x6532)*(x6543)))+(((IkReal(-1.00000000000000))*(r02)*(x6522)*(x6526)))+(((x6534)*(x6538)))+(((IkReal(-1.00000000000000))*(x6524)*(x6527)))+(((IkReal(-1.00000000000000))*(r11)*(x6523)*(x6531)))+(((IkReal(-1.00000000000000))*(x6522)*(x6541)*(x6542)))+(((IkReal(-1.00000000000000))*(r10)*(x6524)*(x6525)))+(((x6534)*(x6545)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6522)*(x6525)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x6537)*(x6543)))+(((IkReal(0.0100000000000000))*(x6525)*(x6533)))+(((IkReal(-1.00000000000000))*(x6533)*(x6547)))+(((cj0)*(r12)*(x6528)))+(((IkReal(-1.00000000000000))*(py)*(x6522)))+(((IkReal(-1.00000000000000))*(x6529)*(x6539)))+(((IkReal(-0.0100000000000000))*(x6525)*(x6535)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6543)))+(((IkReal(0.0100000000000000))*(cj0)*(x6527)))+(((IkReal(-1.00000000000000))*(x6528)*(x6529)))+(((sj0)*(x6537)*(x6542)))+(((x6535)*(x6547)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6542)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(x6525)*(x6538)))+(((IkReal(-1.00000000000000))*(sj0)*(x6537)*(x6543)))+(((IkReal(-1.00000000000000))*(py)*(x6531)))+(((IkReal(-1.00000000000000))*(x6538)*(x6547)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6543)))+(((IkReal(-1.00000000000000))*(x6545)*(x6547)))+(((x6528)*(x6540)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6542)))+(((x6539)*(x6540)))+(((IkReal(-1.00000000000000))*(px)*(x6522)))+(((IkReal(0.0100000000000000))*(x6525)*(x6545)))+(((r12)*(sj0)*(x6528)))+(((IkReal(0.0100000000000000))*(sj0)*(x6527)))+(((IkReal(-1.00000000000000))*(cj0)*(x6537)*(x6542)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6549=((sj0)*(sj5)); +IkReal x6550=((r00)*(sj6)); +IkReal x6551=((IkReal(1.00000000000000))*(cj5)); +IkReal x6552=((cj6)*(r11)); +IkReal x6553=((cj6)*(r01)); +IkReal x6554=((r10)*(sj6)); +IkReal x6555=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x6552)*(x6555)))+(((IkReal(-1.00000000000000))*(x6554)*(x6555)))+(((x6549)*(x6550)))+(((x6549)*(x6553)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6551))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x6553)*(x6555)))+(((x6549)*(x6554)))+(((x6549)*(x6552)))+(((x6550)*(x6555)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6551)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6551))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x6552)*(x6555)))+(((IkReal(-1.00000000000000))*(x6554)*(x6555)))+(((x6549)*(x6550)))+(((x6549)*(x6553)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6551)))))+IKsqr(((((x6553)*(x6555)))+(((x6549)*(x6554)))+(((x6549)*(x6552)))+(((x6550)*(x6555)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6551)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6551)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x6552)*(x6555)))+(((IkReal(-1.00000000000000))*(x6554)*(x6555)))+(((x6549)*(x6550)))+(((x6549)*(x6553)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6551)))), ((((x6553)*(x6555)))+(((x6549)*(x6554)))+(((x6549)*(x6552)))+(((x6550)*(x6555)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6551)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6551))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6556=IKcos(j3); +IkReal x6557=IKsin(j3); +IkReal x6558=((sj0)*(sj5)); +IkReal x6559=((r00)*(sj6)); +IkReal x6560=((cj6)*(sj0)); +IkReal x6561=((IkReal(1.00000000000000))*(cj4)); +IkReal x6562=((r00)*(sj4)); +IkReal x6563=((cj0)*(cj5)); +IkReal x6564=((cj5)*(sj0)); +IkReal x6565=((cj6)*(r11)); +IkReal x6566=((r10)*(sj6)); +IkReal x6567=((cj0)*(sj5)); +IkReal x6568=((r10)*(sj4)); +IkReal x6569=((cj4)*(cj5)*(r01)); +IkReal x6570=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x6571=((cj0)*(sj4)*(sj6)); +IkReal x6572=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((r12)*(x6563)))+(((IkReal(-1.00000000000000))*(r02)*(x6564)))+(((IkReal(-1.00000000000000))*(x6566)*(x6567)))+(((cj6)*(r01)*(x6558)))+(((x6558)*(x6559)))+(((IkReal(-1.00000000000000))*(x6557)))+(((IkReal(-1.00000000000000))*(x6565)*(x6567)))); +evalcond[1]=((((r12)*(x6564)))+(((IkReal(-1.00000000000000))*(x6559)*(x6567)))+(((r02)*(x6563)))+(((IkReal(-1.00000000000000))*(x6558)*(x6565)))+(((IkReal(-1.00000000000000))*(x6558)*(x6566)))+(x6556)+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x6567)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6568)*(x6570)))+(((cj4)*(x6559)*(x6564)))+(((IkReal(-1.00000000000000))*(x6561)*(x6563)*(x6566)))+(((r11)*(x6571)))+(((x6560)*(x6562)))+(((IkReal(-1.00000000000000))*(r01)*(x6572)))+(((cj4)*(r02)*(x6558)))+(x6556)+(((IkReal(-1.00000000000000))*(r12)*(x6561)*(x6567)))+(((x6560)*(x6569)))+(((IkReal(-1.00000000000000))*(x6561)*(x6563)*(x6565)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x6561)*(x6563)))+(((IkReal(-1.00000000000000))*(x6560)*(x6568)))+(((r01)*(x6571)))+(((r11)*(x6572)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x6560)*(x6561)))+(x6557)+(((IkReal(-1.00000000000000))*(r02)*(x6561)*(x6567)))+(((IkReal(-1.00000000000000))*(x6562)*(x6570)))+(((IkReal(-1.00000000000000))*(x6559)*(x6561)*(x6563)))+(((IkReal(-1.00000000000000))*(r12)*(x6558)*(x6561)))+(((IkReal(-1.00000000000000))*(x6561)*(x6564)*(x6566)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6573=((IkReal(1.00000000000000))*(cj0)); +IkReal x6574=((cj4)*(sj6)); +IkReal x6575=((sj0)*(sj4)); +IkReal x6576=((cj5)*(sj6)); +IkReal x6577=((sj4)*(sj5)); +IkReal x6578=((r12)*(sj5)); +IkReal x6579=((IkReal(0.374290000000000))*(cj5)); +IkReal x6580=((r02)*(sj0)); +IkReal x6581=((r20)*(sj4)); +IkReal x6582=((IkReal(1.00000000000000))*(sj0)); +IkReal x6583=((IkReal(1.00000000000000))*(cj5)); +IkReal x6584=((cj0)*(r10)); +IkReal x6585=((cj4)*(cj6)); +IkReal x6586=((r00)*(sj0)); +IkReal x6587=((cj6)*(r21)); +IkReal x6588=((IkReal(0.374290000000000))*(sj5)); +IkReal x6589=((cj0)*(r00)); +IkReal x6590=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6591=((cj0)*(r02)); +IkReal x6592=((cj5)*(sj4)); +IkReal x6593=((cj6)*(r01)); +IkReal x6594=((cj6)*(r11)); +IkReal x6595=((r01)*(sj0)); +IkReal x6596=((r10)*(sj0)); +IkReal x6597=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6598=((sj6)*(x6588)); +IkReal x6599=((cj0)*(cj6)*(x6588)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x6587)))+(((IkReal(-1.00000000000000))*(r22)*(x6583)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x6587)*(x6592)))+(((r22)*(x6577)))+(((x6576)*(x6581)))+(((r21)*(x6574)))+(((IkReal(-1.00000000000000))*(r20)*(x6585)))); +evalcond[3]=((((r20)*(x6598)))+(((IkReal(-1.00000000000000))*(r22)*(x6579)))+(((x6587)*(x6588)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6587)))+(((IkReal(-1.00000000000000))*(r22)*(x6590)))+(((IkReal(-0.0100000000000000))*(r20)*(x6576)))+(pz)); +evalcond[4]=((((cj6)*(x6581)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x6585)))+(((cj5)*(r20)*(x6574)))); +evalcond[5]=((((r00)*(x6575)*(x6576)))+(((IkReal(-1.00000000000000))*(r00)*(x6582)*(x6585)))+(((IkReal(-1.00000000000000))*(r11)*(x6573)*(x6574)))+(((x6584)*(x6585)))+(((IkReal(-1.00000000000000))*(x6573)*(x6592)*(x6594)))+(((cj5)*(x6575)*(x6593)))+(((IkReal(-1.00000000000000))*(r12)*(x6573)*(x6577)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6573)*(x6576)))+(((r02)*(sj5)*(x6575)))+(((x6574)*(x6595)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r01)*(x6573)*(x6574)))+(((IkReal(-1.00000000000000))*(x6575)*(x6583)*(x6594)))+(((IkReal(-1.00000000000000))*(r10)*(x6575)*(x6576)))+(((x6585)*(x6589)))+(((IkReal(-1.00000000000000))*(r02)*(x6573)*(x6577)))+(((IkReal(-1.00000000000000))*(r11)*(x6574)*(x6582)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6573)*(x6576)))+(((IkReal(-1.00000000000000))*(x6575)*(x6578)))+(((x6585)*(x6596)))+(((IkReal(-1.00000000000000))*(x6573)*(x6592)*(x6593)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(0.0100000000000000))*(x6576)*(x6584)))+(((IkReal(-0.0100000000000000))*(x6576)*(x6586)))+(((IkReal(0.0100000000000000))*(cj0)*(x6578)))+(((sj0)*(x6588)*(x6593)))+(((IkReal(-1.00000000000000))*(x6579)*(x6580)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6593)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6594)))+(((x6586)*(x6598)))+(((cj0)*(r12)*(x6579)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(x6588)*(x6594)))+(((IkReal(-1.00000000000000))*(py)*(x6573)))+(((IkReal(-1.00000000000000))*(x6584)*(x6598)))+(((IkReal(-1.00000000000000))*(x6580)*(x6590)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(sj0)*(x6578)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6593)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6594)))+(((IkReal(-1.00000000000000))*(cj0)*(x6588)*(x6593)))+(((r12)*(sj0)*(x6579)))+(((IkReal(-1.00000000000000))*(x6596)*(x6598)))+(((IkReal(0.0100000000000000))*(x6576)*(x6596)))+(((x6590)*(x6591)))+(((x6579)*(x6591)))+(((IkReal(-1.00000000000000))*(py)*(x6582)))+(((IkReal(-1.00000000000000))*(x6589)*(x6598)))+(((IkReal(0.0100000000000000))*(x6576)*(x6589)))+(((IkReal(-1.00000000000000))*(px)*(x6573)))+(((IkReal(-1.00000000000000))*(sj0)*(x6588)*(x6594)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6600=((IkReal(1.00000000000000))*(cj5)); +IkReal x6601=((r10)*(sj5)*(sj6)); +IkReal x6602=((cj6)*(sj0)*(sj5)); +IkReal x6603=((r00)*(sj5)*(sj6)); +IkReal x6604=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r01)*(x6602)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x6600)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x6601)))+(((r11)*(x6604))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj0)*(x6601)))+(((cj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6600)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6600)))+(((r01)*(x6604)))+(((r11)*(x6602))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r01)*(x6602)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x6600)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x6601)))+(((r11)*(x6604)))))+IKsqr(((((sj0)*(x6601)))+(((cj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6600)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6600)))+(((r01)*(x6604)))+(((r11)*(x6602)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r01)*(x6602)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x6600)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(x6601)))+(((r11)*(x6604)))), ((((sj0)*(x6601)))+(((cj0)*(x6603)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6600)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6600)))+(((r01)*(x6604)))+(((r11)*(x6602))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6605=IKcos(j3); +IkReal x6606=IKsin(j3); +IkReal x6607=((sj0)*(sj5)); +IkReal x6608=((r00)*(sj6)); +IkReal x6609=((IkReal(1.00000000000000))*(cj4)); +IkReal x6610=((cj6)*(sj0)); +IkReal x6611=((r00)*(sj4)); +IkReal x6612=((cj0)*(cj5)); +IkReal x6613=((cj6)*(r01)); +IkReal x6614=((cj5)*(sj0)); +IkReal x6615=((cj0)*(sj5)); +IkReal x6616=((cj6)*(r11)); +IkReal x6617=((r10)*(sj6)); +IkReal x6618=((r10)*(sj4)); +IkReal x6619=((cj0)*(sj4)*(sj6)); +IkReal x6620=((sj0)*(sj4)*(sj6)); +IkReal x6621=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x6615)*(x6617)))+(x6606)+(((r12)*(x6612)))+(((x6607)*(x6608)))+(((IkReal(-1.00000000000000))*(x6615)*(x6616)))+(((x6607)*(x6613)))+(((IkReal(-1.00000000000000))*(r02)*(x6614)))); +evalcond[1]=((x6605)+(((IkReal(-1.00000000000000))*(x6613)*(x6615)))+(((r12)*(x6614)))+(((IkReal(-1.00000000000000))*(x6608)*(x6615)))+(((IkReal(-1.00000000000000))*(x6607)*(x6616)))+(((r02)*(x6612)))+(((IkReal(-1.00000000000000))*(x6607)*(x6617)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6605)))+(((r11)*(x6619)))+(((cj4)*(r02)*(x6607)))+(((IkReal(-1.00000000000000))*(r12)*(x6609)*(x6615)))+(((IkReal(-1.00000000000000))*(r01)*(x6620)))+(((IkReal(-1.00000000000000))*(x6609)*(x6612)*(x6617)))+(((IkReal(-1.00000000000000))*(x6609)*(x6612)*(x6616)))+(((IkReal(-1.00000000000000))*(x6618)*(x6621)))+(((cj4)*(x6608)*(x6614)))+(((cj4)*(cj5)*(r01)*(x6610)))+(((x6610)*(x6611)))); +evalcond[3]=((x6606)+(((IkReal(-1.00000000000000))*(r02)*(x6609)*(x6615)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x6609)*(x6610)))+(((IkReal(-1.00000000000000))*(x6609)*(x6614)*(x6617)))+(((IkReal(-1.00000000000000))*(x6608)*(x6609)*(x6612)))+(((IkReal(-1.00000000000000))*(x6610)*(x6618)))+(((r01)*(x6619)))+(((IkReal(-1.00000000000000))*(x6609)*(x6612)*(x6613)))+(((IkReal(-1.00000000000000))*(x6611)*(x6621)))+(((r11)*(x6620)))+(((IkReal(-1.00000000000000))*(r12)*(x6607)*(x6609)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6622=((sj0)*(sj5)); +IkReal x6623=((r00)*(sj6)); +IkReal x6624=((IkReal(1.00000000000000))*(cj5)); +IkReal x6625=((cj6)*(r11)); +IkReal x6626=((cj6)*(r01)); +IkReal x6627=((cj0)*(sj5)); +IkReal x6628=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x6622)*(x6623)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6624)))+(((IkReal(-1.00000000000000))*(x6625)*(x6627)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x6627)*(x6628)))+(((x6622)*(x6626))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6624)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6624)))+(((x6623)*(x6627)))+(((x6622)*(x6625)))+(((x6622)*(x6628)))+(((x6626)*(x6627))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x6622)*(x6623)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6624)))+(((IkReal(-1.00000000000000))*(x6625)*(x6627)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x6627)*(x6628)))+(((x6622)*(x6626)))))))+IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6624)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6624)))+(((x6623)*(x6627)))+(((x6622)*(x6625)))+(((x6622)*(x6628)))+(((x6626)*(x6627)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((x6622)*(x6623)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6624)))+(((IkReal(-1.00000000000000))*(x6625)*(x6627)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x6627)*(x6628)))+(((x6622)*(x6626)))))), ((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6624)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6624)))+(((x6623)*(x6627)))+(((x6622)*(x6625)))+(((x6622)*(x6628)))+(((x6626)*(x6627))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6629=IKsin(j3); +IkReal x6630=IKcos(j3); +IkReal x6631=((sj0)*(sj5)); +IkReal x6632=((r00)*(sj6)); +IkReal x6633=((IkReal(1.00000000000000))*(cj4)); +IkReal x6634=((cj6)*(r01)); +IkReal x6635=((cj0)*(cj5)); +IkReal x6636=((cj5)*(sj0)); +IkReal x6637=((cj6)*(r11)); +IkReal x6638=((cj6)*(sj4)); +IkReal x6639=((cj0)*(sj5)); +IkReal x6640=((cj4)*(cj5)); +IkReal x6641=((cj6)*(r21)); +IkReal x6642=((r20)*(sj6)); +IkReal x6643=((r10)*(sj6)); +IkReal x6644=((IkReal(1.00000000000000))*(cj0)); +IkReal x6645=((cj0)*(sj4)*(sj6)); +IkReal x6646=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6641)))+(((sj5)*(x6642)))+(((cj2)*(x6629)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x6640)*(x6642)))+(((IkReal(-1.00000000000000))*(cj2)*(x6630)))+(((r20)*(x6638)))+(((cj4)*(r22)*(sj5)))+(((x6640)*(x6641)))); +evalcond[2]=((((x6631)*(x6632)))+(((r12)*(x6635)))+(((x6631)*(x6634)))+(((IkReal(-1.00000000000000))*(r02)*(x6636)))+(((IkReal(-1.00000000000000))*(x6639)*(x6643)))+(((IkReal(-1.00000000000000))*(sj2)*(x6629)))+(((IkReal(-1.00000000000000))*(x6637)*(x6639)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6631)*(x6643)))+(x6630)+(((r02)*(x6635)))+(((r12)*(x6636)))+(((IkReal(-1.00000000000000))*(x6634)*(x6639)))+(((IkReal(-1.00000000000000))*(x6631)*(x6637)))+(((IkReal(-1.00000000000000))*(x6632)*(x6639)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x6638)*(x6644)))+(((cj4)*(r02)*(x6631)))+(((sj2)*(x6630)))+(((cj4)*(x6632)*(x6636)))+(((IkReal(-1.00000000000000))*(x6633)*(x6635)*(x6643)))+(((IkReal(-1.00000000000000))*(r12)*(x6633)*(x6639)))+(((r11)*(x6645)))+(((IkReal(-1.00000000000000))*(r01)*(x6646)))+(((cj4)*(x6634)*(x6636)))+(((r00)*(sj0)*(x6638)))+(((IkReal(-1.00000000000000))*(x6633)*(x6635)*(x6637)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6632)*(x6633)*(x6635)))+(((IkReal(-1.00000000000000))*(r12)*(x6631)*(x6633)))+(((r11)*(x6646)))+(x6629)+(((IkReal(-1.00000000000000))*(x6633)*(x6636)*(x6643)))+(((IkReal(-1.00000000000000))*(r00)*(x6638)*(x6644)))+(((IkReal(-1.00000000000000))*(x6633)*(x6634)*(x6635)))+(((IkReal(-1.00000000000000))*(x6633)*(x6636)*(x6637)))+(((IkReal(-1.00000000000000))*(r02)*(x6633)*(x6639)))+(((r01)*(x6645)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6638)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6647=((cj6)*(sj5)); +IkReal x6648=((IkReal(1.00000000000000))*(cj5)); +IkReal x6649=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x6649)))+(((IkReal(-1.00000000000000))*(r21)*(x6647)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(r00)*(x6649)))+(((r10)*(sj0)*(x6649)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6648)))+(((cj0)*(r01)*(x6647)))+(((r11)*(sj0)*(x6647)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6648))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x6649)))+(((IkReal(-1.00000000000000))*(r21)*(x6647)))+(((cj5)*(r22)))))))+IKsqr(((((cj0)*(r00)*(x6649)))+(((r10)*(sj0)*(x6649)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6648)))+(((cj0)*(r01)*(x6647)))+(((r11)*(sj0)*(x6647)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6648)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x6649)))+(((IkReal(-1.00000000000000))*(r21)*(x6647)))+(((cj5)*(r22)))))), ((((cj0)*(r00)*(x6649)))+(((r10)*(sj0)*(x6649)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x6648)))+(((cj0)*(r01)*(x6647)))+(((r11)*(sj0)*(x6647)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x6648))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6650=IKsin(j3); +IkReal x6651=IKcos(j3); +IkReal x6652=((sj0)*(sj5)); +IkReal x6653=((r00)*(sj6)); +IkReal x6654=((IkReal(1.00000000000000))*(cj4)); +IkReal x6655=((cj6)*(r01)); +IkReal x6656=((cj0)*(cj5)); +IkReal x6657=((cj5)*(sj0)); +IkReal x6658=((cj6)*(r11)); +IkReal x6659=((cj6)*(sj4)); +IkReal x6660=((cj0)*(sj5)); +IkReal x6661=((cj4)*(cj5)); +IkReal x6662=((cj6)*(r21)); +IkReal x6663=((r20)*(sj6)); +IkReal x6664=((r10)*(sj6)); +IkReal x6665=((IkReal(1.00000000000000))*(cj0)); +IkReal x6666=((cj0)*(sj4)*(sj6)); +IkReal x6667=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x6663)))+(((sj5)*(x6662)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x6650)))); +evalcond[1]=((((r20)*(x6659)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj2)*(x6651)))+(((cj4)*(r22)*(sj5)))+(((x6661)*(x6662)))+(((x6661)*(x6663)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x6657)))+(((IkReal(-1.00000000000000))*(x6658)*(x6660)))+(((IkReal(-1.00000000000000))*(x6660)*(x6664)))+(((x6652)*(x6655)))+(((r12)*(x6656)))+(((IkReal(-1.00000000000000))*(sj2)*(x6650)))+(((x6652)*(x6653)))); +evalcond[3]=((((r12)*(x6657)))+(((IkReal(-1.00000000000000))*(x6653)*(x6660)))+(((IkReal(-1.00000000000000))*(x6655)*(x6660)))+(((r02)*(x6656)))+(x6651)+(((IkReal(-1.00000000000000))*(x6652)*(x6664)))+(((IkReal(-1.00000000000000))*(x6652)*(x6658)))); +evalcond[4]=((((r11)*(x6666)))+(((IkReal(-1.00000000000000))*(r10)*(x6659)*(x6665)))+(((r00)*(sj0)*(x6659)))+(((cj4)*(x6653)*(x6657)))+(((IkReal(-1.00000000000000))*(x6654)*(x6656)*(x6658)))+(((cj4)*(r02)*(x6652)))+(((IkReal(-1.00000000000000))*(r12)*(x6654)*(x6660)))+(((sj2)*(x6651)))+(((IkReal(-1.00000000000000))*(r01)*(x6667)))+(((cj4)*(x6655)*(x6657)))+(((IkReal(-1.00000000000000))*(x6654)*(x6656)*(x6664)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6654)*(x6657)*(x6664)))+(((IkReal(-1.00000000000000))*(x6653)*(x6654)*(x6656)))+(((IkReal(-1.00000000000000))*(r02)*(x6654)*(x6660)))+(((IkReal(-1.00000000000000))*(x6654)*(x6655)*(x6656)))+(((IkReal(-1.00000000000000))*(r12)*(x6652)*(x6654)))+(((IkReal(-1.00000000000000))*(r00)*(x6659)*(x6665)))+(x6650)+(((r11)*(x6667)))+(((r01)*(x6666)))+(((IkReal(-1.00000000000000))*(x6654)*(x6657)*(x6658)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6659)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6668=((IkReal(1.00000000000000))*(r21)); +IkReal x6669=((cj4)*(cj5)); +IkReal x6670=((r20)*(sj6)); +if( IKabs(((gconst10)*(((((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6668)))+(((IkReal(-1.00000000000000))*(sj5)*(x6670))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst10)*(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6668)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x6669)))+(((x6669)*(x6670))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst10)*(((((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6668)))+(((IkReal(-1.00000000000000))*(sj5)*(x6670)))))), ((gconst10)*(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x6668)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x6669)))+(((x6669)*(x6670))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6671=IKsin(j3); +IkReal x6672=IKcos(j3); +IkReal x6673=((sj0)*(sj5)); +IkReal x6674=((r00)*(sj6)); +IkReal x6675=((IkReal(1.00000000000000))*(cj4)); +IkReal x6676=((cj6)*(r01)); +IkReal x6677=((cj0)*(cj5)); +IkReal x6678=((cj5)*(sj0)); +IkReal x6679=((cj6)*(r11)); +IkReal x6680=((cj6)*(sj4)); +IkReal x6681=((cj0)*(sj5)); +IkReal x6682=((cj4)*(cj5)); +IkReal x6683=((cj6)*(r21)); +IkReal x6684=((r20)*(sj6)); +IkReal x6685=((r10)*(sj6)); +IkReal x6686=((IkReal(1.00000000000000))*(cj0)); +IkReal x6687=((cj0)*(sj4)*(sj6)); +IkReal x6688=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x6684)))+(((sj5)*(x6683)))+(((cj2)*(x6671)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((x6682)*(x6683)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x6682)*(x6684)))+(((r20)*(x6680)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj2)*(x6672)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x6671)))+(((IkReal(-1.00000000000000))*(x6681)*(x6685)))+(((r12)*(x6677)))+(((x6673)*(x6676)))+(((IkReal(-1.00000000000000))*(r02)*(x6678)))+(((x6673)*(x6674)))+(((IkReal(-1.00000000000000))*(x6679)*(x6681)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6673)*(x6679)))+(((IkReal(-1.00000000000000))*(x6673)*(x6685)))+(((r12)*(x6678)))+(((IkReal(-1.00000000000000))*(x6674)*(x6681)))+(((IkReal(-1.00000000000000))*(x6676)*(x6681)))+(x6672)+(((r02)*(x6677)))); +evalcond[4]=((((r00)*(sj0)*(x6680)))+(((IkReal(-1.00000000000000))*(r01)*(x6688)))+(((sj2)*(x6672)))+(((IkReal(-1.00000000000000))*(r10)*(x6680)*(x6686)))+(((cj4)*(x6674)*(x6678)))+(((IkReal(-1.00000000000000))*(r12)*(x6675)*(x6681)))+(((IkReal(-1.00000000000000))*(x6675)*(x6677)*(x6679)))+(((cj4)*(x6676)*(x6678)))+(((cj4)*(r02)*(x6673)))+(((IkReal(-1.00000000000000))*(x6675)*(x6677)*(x6685)))+(((r11)*(x6687)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6675)*(x6678)*(x6679)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x6680)))+(((IkReal(-1.00000000000000))*(x6675)*(x6676)*(x6677)))+(((r11)*(x6688)))+(((IkReal(-1.00000000000000))*(r00)*(x6680)*(x6686)))+(((IkReal(-1.00000000000000))*(x6674)*(x6675)*(x6677)))+(((IkReal(-1.00000000000000))*(r02)*(x6675)*(x6681)))+(x6671)+(((IkReal(-1.00000000000000))*(x6675)*(x6678)*(x6685)))+(((IkReal(-1.00000000000000))*(r12)*(x6673)*(x6675)))+(((r01)*(x6687)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x6689=((IkReal(1.00000000000000))*(cj0)); +IkReal x6690=((cj4)*(sj6)); +IkReal x6691=((sj0)*(sj4)); +IkReal x6692=((cj5)*(sj6)); +IkReal x6693=((sj4)*(sj5)); +IkReal x6694=((r12)*(sj5)); +IkReal x6695=((IkReal(0.374290000000000))*(cj5)); +IkReal x6696=((r02)*(sj0)); +IkReal x6697=((IkReal(1.00000000000000))*(sj0)); +IkReal x6698=((cj0)*(r10)); +IkReal x6699=((cj4)*(cj6)); +IkReal x6700=((r00)*(sj0)); +IkReal x6701=((cj6)*(r21)); +IkReal x6702=((IkReal(0.374290000000000))*(sj5)); +IkReal x6703=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6704=((cj0)*(r02)); +IkReal x6705=((cj5)*(sj4)); +IkReal x6706=((cj6)*(r01)); +IkReal x6707=((cj0)*(r00)); +IkReal x6708=((cj6)*(r11)); +IkReal x6709=((r01)*(sj0)); +IkReal x6710=((r10)*(sj0)); +IkReal x6711=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6712=((sj6)*(x6702)); +IkReal x6713=((cj0)*(cj6)*(x6702)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x6699)))+(((r21)*(x6690)))+(((r20)*(sj4)*(x6692)))+(((IkReal(-1.00000000000000))*(cj1)))+(((x6701)*(x6705)))+(((r22)*(x6693)))); +evalcond[2]=((((IkReal(-0.0100000000000000))*(r20)*(x6692)))+(((IkReal(0.364420000000000))*(sj1)))+(((r20)*(x6712)))+(((IkReal(-1.00000000000000))*(r22)*(x6703)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6701)))+(pz)+(((x6701)*(x6702)))+(((IkReal(-1.00000000000000))*(r22)*(x6695)))); +evalcond[3]=((((cj5)*(x6691)*(x6706)))+(((IkReal(-1.00000000000000))*(x6689)*(x6705)*(x6708)))+(((IkReal(-1.00000000000000))*(r11)*(x6689)*(x6690)))+(((r02)*(sj5)*(x6691)))+(((r00)*(x6691)*(x6692)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6689)*(x6692)))+(((IkReal(-1.00000000000000))*(r12)*(x6689)*(x6693)))+(((IkReal(-1.00000000000000))*(r00)*(x6697)*(x6699)))+(((x6690)*(x6709)))+(((x6698)*(x6699)))); +evalcond[4]=((((x6699)*(x6707)))+(((IkReal(-1.00000000000000))*(r01)*(x6689)*(x6690)))+(((IkReal(-1.00000000000000))*(cj5)*(x6691)*(x6708)))+(sj1)+(((IkReal(-1.00000000000000))*(x6691)*(x6694)))+(((IkReal(-1.00000000000000))*(x6689)*(x6705)*(x6706)))+(((x6699)*(x6710)))+(((IkReal(-1.00000000000000))*(r02)*(x6689)*(x6693)))+(((IkReal(-1.00000000000000))*(r11)*(x6690)*(x6697)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6689)*(x6692)))+(((IkReal(-1.00000000000000))*(r10)*(x6691)*(x6692)))); +evalcond[5]=((IkReal(0.0690000000000000))+(((x6700)*(x6712)))+(((IkReal(-1.00000000000000))*(x6698)*(x6712)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6708)))+(((IkReal(-1.00000000000000))*(py)*(x6689)))+(((IkReal(0.0100000000000000))*(cj0)*(x6694)))+(((cj0)*(r12)*(x6695)))+(((IkReal(0.0100000000000000))*(x6692)*(x6698)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6706)))+(((sj0)*(x6702)*(x6706)))+(((IkReal(-1.00000000000000))*(cj0)*(x6702)*(x6708)))+(((IkReal(-1.00000000000000))*(x6696)*(x6703)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x6695)*(x6696)))+(((IkReal(-0.0100000000000000))*(x6692)*(x6700)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r12)*(sj0)*(x6695)))+(((x6703)*(x6704)))+(((IkReal(-1.00000000000000))*(cj0)*(x6702)*(x6706)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6706)))+(((IkReal(-1.00000000000000))*(x6707)*(x6712)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6708)))+(((IkReal(0.0100000000000000))*(x6692)*(x6707)))+(((x6695)*(x6704)))+(((IkReal(0.0100000000000000))*(x6692)*(x6710)))+(((IkReal(-1.00000000000000))*(py)*(x6697)))+(((IkReal(-1.00000000000000))*(px)*(x6689)))+(((IkReal(0.0100000000000000))*(sj0)*(x6694)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(x6710)*(x6712)))+(((IkReal(-1.00000000000000))*(sj0)*(x6702)*(x6708)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst11; +gconst11=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x6714=((IkReal(1.00000000000000))*(cj0)); +IkReal x6715=((cj4)*(sj6)); +IkReal x6716=((sj0)*(sj6)); +IkReal x6717=((cj5)*(sj4)); +IkReal x6718=((IkReal(0.374290000000000))*(sj5)); +IkReal x6719=((sj4)*(sj5)); +IkReal x6720=((cj0)*(cj6)); +IkReal x6721=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6722=((cj4)*(sj5)); +IkReal x6723=((cj5)*(sj0)); +IkReal x6724=((IkReal(0.374290000000000))*(r02)); +IkReal x6725=((r20)*(sj6)); +IkReal x6726=((cj6)*(r21)); +IkReal x6727=((IkReal(1.00000000000000))*(sj0)); +IkReal x6728=((cj0)*(sj6)); +IkReal x6729=((cj4)*(cj6)); +IkReal x6730=((IkReal(0.374290000000000))*(r12)); +IkReal x6731=((cj0)*(cj5)); +IkReal x6732=((cj6)*(sj5)); +IkReal x6733=((cj6)*(r01)); +IkReal x6734=((r00)*(sj6)); +IkReal x6735=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6736=((cj6)*(r11)); +IkReal x6737=((IkReal(1.00000000000000))*(r10)); +IkReal x6738=((r02)*(sj0)); +IkReal x6739=((cj6)*(sj4)); +IkReal x6740=((r12)*(x6727)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x6717)*(x6726)))+(((r22)*(x6719)))+(((r21)*(x6715)))+(((x6717)*(x6725)))+(((IkReal(-1.00000000000000))*(r20)*(x6729)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x6718)*(x6725)))+(((x6718)*(x6726)))+(((IkReal(-1.00000000000000))*(x6721)*(x6726)))+(((IkReal(-1.00000000000000))*(r22)*(x6735)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x6721)*(x6725)))); +evalcond[3]=((((r02)*(x6731)))+(((IkReal(-1.00000000000000))*(r01)*(x6714)*(x6732)))+(((IkReal(-1.00000000000000))*(sj5)*(x6714)*(x6734)))+(((IkReal(-1.00000000000000))*(r11)*(x6727)*(x6732)))+(((IkReal(-1.00000000000000))*(sj5)*(x6716)*(x6737)))+(((r12)*(x6723)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x6714)*(x6717)*(x6736)))+(((IkReal(-1.00000000000000))*(r11)*(x6714)*(x6715)))+(((sj0)*(x6717)*(x6733)))+(((r00)*(x6716)*(x6717)))+(((cj4)*(r10)*(x6720)))+(((r01)*(sj0)*(x6715)))+(((x6719)*(x6738)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6714)*(x6717)))+(((IkReal(-1.00000000000000))*(r12)*(x6714)*(x6719)))+(((IkReal(-1.00000000000000))*(r00)*(x6727)*(x6729)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x6717)*(x6727)*(x6736)))+(((IkReal(-1.00000000000000))*(r11)*(x6715)*(x6727)))+(((IkReal(-1.00000000000000))*(r02)*(x6714)*(x6719)))+(((IkReal(-1.00000000000000))*(r01)*(x6714)*(x6715)))+(((IkReal(-1.00000000000000))*(x6716)*(x6717)*(x6737)))+(((IkReal(-1.00000000000000))*(x6714)*(x6717)*(x6734)))+(((IkReal(-1.00000000000000))*(x6714)*(x6717)*(x6733)))+(((r10)*(sj0)*(x6729)))+(((cj4)*(r00)*(x6720)))+(((IkReal(-1.00000000000000))*(x6719)*(x6740)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((sj0)*(x6718)*(x6733)))+(((x6730)*(x6731)))+(((IkReal(-1.00000000000000))*(r11)*(x6718)*(x6720)))+(((IkReal(-1.00000000000000))*(py)*(x6714)))+(((r10)*(x6721)*(x6728)))+(((r11)*(x6720)*(x6721)))+(((IkReal(-1.00000000000000))*(x6723)*(x6724)))+(((IkReal(-1.00000000000000))*(sj0)*(x6721)*(x6733)))+(((IkReal(-1.00000000000000))*(r00)*(x6716)*(x6721)))+(((r00)*(x6716)*(x6718)))+(((cj0)*(r12)*(x6735)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x6735)*(x6738)))+(((IkReal(-1.00000000000000))*(r10)*(x6718)*(x6728)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x6715)*(x6723)*(x6737)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x6714)*(x6715)))+(((IkReal(-1.00000000000000))*(r02)*(x6714)*(x6722)))+(((IkReal(-1.00000000000000))*(x6722)*(x6740)))+(((r01)*(sj4)*(x6728)))+(((IkReal(-1.00000000000000))*(r10)*(x6727)*(x6739)))+(((r11)*(sj4)*(x6716)))+(((IkReal(-1.00000000000000))*(r11)*(x6723)*(x6729)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x6714)*(x6729)))+(((IkReal(-1.00000000000000))*(r00)*(x6714)*(x6739)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r00)*(x6721)*(x6728)))+(((IkReal(-1.00000000000000))*(r00)*(x6718)*(x6728)))+(((cj0)*(r02)*(x6735)))+(((IkReal(-1.00000000000000))*(py)*(x6727)))+(((x6723)*(x6730)))+(((IkReal(-1.00000000000000))*(px)*(x6714)))+(((r12)*(sj0)*(x6735)))+(((IkReal(-1.00000000000000))*(r10)*(x6716)*(x6718)))+(((r01)*(x6720)*(x6721)))+(((IkReal(-1.00000000000000))*(sj0)*(x6718)*(x6736)))+(((sj0)*(x6721)*(x6736)))+(((r10)*(x6716)*(x6721)))+(((IkReal(-1.00000000000000))*(r01)*(x6718)*(x6720)))+(((x6724)*(x6731)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6741=((r20)*(sj6)); +IkReal x6742=((cj4)*(cj5)); +IkReal x6743=((cj6)*(r21)); +if( IKabs(((((x6742)*(x6743)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6741)*(x6742))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6741)))+(((sj5)*(x6743))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x6742)*(x6743)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6741)*(x6742)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6741)))+(((sj5)*(x6743)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x6742)*(x6743)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6741)*(x6742)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6741)))+(((sj5)*(x6743))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6744=IKcos(j3); +IkReal x6745=((sj0)*(sj5)); +IkReal x6746=((r00)*(sj6)); +IkReal x6747=((cj6)*(r01)); +IkReal x6748=((cj5)*(sj0)); +IkReal x6749=((cj0)*(cj5)); +IkReal x6750=((cj6)*(sj4)); +IkReal x6751=((sj4)*(sj6)); +IkReal x6752=((cj0)*(r11)); +IkReal x6753=((cj4)*(cj6)); +IkReal x6754=((cj4)*(sj6)); +IkReal x6755=((IkReal(1.00000000000000))*(cj0)); +IkReal x6756=((cj4)*(sj5)); +IkReal x6757=((sj5)*(sj6)); +IkReal x6758=((cj6)*(sj5)); +IkReal x6759=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r21)*(x6758)))+(((IkReal(-1.00000000000000))*(x6744)))+(((r20)*(x6757)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((cj5)*(r20)*(x6754)))+(((r22)*(x6756)))+(((cj5)*(r21)*(x6753)))+(((IkReal(-1.00000000000000))*(r21)*(x6751)))+(((r20)*(x6750)))+(((IkReal(-1.00000000000000))*(x6759)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x6755)*(x6757)))+(((IkReal(-1.00000000000000))*(r02)*(x6748)))+(((r12)*(x6749)))+(((x6745)*(x6747)))+(((IkReal(-1.00000000000000))*(x6759)))+(((x6745)*(x6746)))+(((IkReal(-1.00000000000000))*(x6752)*(x6758)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x6755)*(x6756)))+(((IkReal(-1.00000000000000))*(r10)*(x6750)*(x6755)))+(((cj4)*(x6747)*(x6748)))+(((IkReal(-1.00000000000000))*(r10)*(x6749)*(x6754)))+(((cj4)*(r02)*(x6745)))+(((r00)*(sj0)*(x6750)))+(((IkReal(-1.00000000000000))*(r11)*(x6749)*(x6753)))+(((cj4)*(x6746)*(x6748)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x6751)))+(x6744)+(((x6751)*(x6752)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6760=((IkReal(1.00000000000000))*(cj0)); +IkReal x6761=((cj4)*(sj6)); +IkReal x6762=((sj0)*(sj6)); +IkReal x6763=((cj5)*(sj4)); +IkReal x6764=((IkReal(0.374290000000000))*(sj5)); +IkReal x6765=((sj4)*(sj5)); +IkReal x6766=((cj0)*(cj6)); +IkReal x6767=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6768=((cj4)*(sj5)); +IkReal x6769=((cj5)*(sj0)); +IkReal x6770=((IkReal(0.374290000000000))*(r02)); +IkReal x6771=((r20)*(sj6)); +IkReal x6772=((cj6)*(r21)); +IkReal x6773=((IkReal(1.00000000000000))*(sj0)); +IkReal x6774=((cj0)*(sj6)); +IkReal x6775=((cj4)*(cj6)); +IkReal x6776=((IkReal(0.374290000000000))*(r12)); +IkReal x6777=((cj0)*(cj5)); +IkReal x6778=((cj6)*(sj5)); +IkReal x6779=((cj6)*(r01)); +IkReal x6780=((r00)*(sj6)); +IkReal x6781=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6782=((cj6)*(r11)); +IkReal x6783=((IkReal(1.00000000000000))*(r10)); +IkReal x6784=((r02)*(sj0)); +IkReal x6785=((cj6)*(sj4)); +IkReal x6786=((r12)*(x6773)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x6765)))+(((x6763)*(x6772)))+(((r21)*(x6761)))+(((x6763)*(x6771)))+(((IkReal(-1.00000000000000))*(r20)*(x6775)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x6767)*(x6772)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x6781)))+(((x6764)*(x6771)))+(((x6764)*(x6772)))+(pz)+(((IkReal(-1.00000000000000))*(x6767)*(x6771)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x6773)*(x6778)))+(((r02)*(x6777)))+(((IkReal(-1.00000000000000))*(sj5)*(x6762)*(x6783)))+(((IkReal(-1.00000000000000))*(r01)*(x6760)*(x6778)))+(((r12)*(x6769)))+(((IkReal(-1.00000000000000))*(sj5)*(x6760)*(x6780)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r00)*(x6773)*(x6775)))+(((IkReal(-1.00000000000000))*(r12)*(x6760)*(x6765)))+(((cj4)*(r10)*(x6766)))+(((r00)*(x6762)*(x6763)))+(((sj0)*(x6763)*(x6779)))+(((r01)*(sj0)*(x6761)))+(((x6765)*(x6784)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6760)*(x6763)))+(((IkReal(-1.00000000000000))*(x6760)*(x6763)*(x6782)))+(((IkReal(-1.00000000000000))*(r11)*(x6760)*(x6761)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x6760)*(x6763)*(x6780)))+(((IkReal(-1.00000000000000))*(r02)*(x6760)*(x6765)))+(((r10)*(sj0)*(x6775)))+(((IkReal(-1.00000000000000))*(x6760)*(x6763)*(x6779)))+(((IkReal(-1.00000000000000))*(x6762)*(x6763)*(x6783)))+(((IkReal(-1.00000000000000))*(r11)*(x6761)*(x6773)))+(((IkReal(-1.00000000000000))*(x6763)*(x6773)*(x6782)))+(((IkReal(-1.00000000000000))*(x6765)*(x6786)))+(((cj4)*(r00)*(x6766)))+(((IkReal(-1.00000000000000))*(r01)*(x6760)*(x6761)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r10)*(x6767)*(x6774)))+(((IkReal(-1.00000000000000))*(r11)*(x6764)*(x6766)))+(((IkReal(-1.00000000000000))*(x6769)*(x6770)))+(((r11)*(x6766)*(x6767)))+(((cj0)*(r12)*(x6781)))+(((IkReal(-1.00000000000000))*(r00)*(x6762)*(x6767)))+(((r00)*(x6762)*(x6764)))+(((IkReal(-1.00000000000000))*(r10)*(x6764)*(x6774)))+(((IkReal(-1.00000000000000))*(x6781)*(x6784)))+(((sj0)*(x6764)*(x6779)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x6767)*(x6779)))+(((IkReal(-1.00000000000000))*(py)*(x6760)))+(((x6776)*(x6777)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x6760)*(x6785)))+(((IkReal(-1.00000000000000))*(r10)*(x6773)*(x6785)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x6760)*(x6761)))+(((IkReal(-1.00000000000000))*(r02)*(x6760)*(x6768)))+(((IkReal(-1.00000000000000))*(r11)*(x6769)*(x6775)))+(((IkReal(-1.00000000000000))*(x6761)*(x6769)*(x6783)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x6760)*(x6775)))+(((IkReal(-1.00000000000000))*(x6768)*(x6786)))+(((r01)*(sj4)*(x6774)))+(((r11)*(sj4)*(x6762)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r00)*(x6767)*(x6774)))+(((x6770)*(x6777)))+(((IkReal(-1.00000000000000))*(py)*(x6773)))+(((IkReal(-1.00000000000000))*(r10)*(x6762)*(x6764)))+(((r01)*(x6766)*(x6767)))+(((cj0)*(r02)*(x6781)))+(((IkReal(-1.00000000000000))*(r01)*(x6764)*(x6766)))+(((x6769)*(x6776)))+(((IkReal(-1.00000000000000))*(px)*(x6760)))+(((sj0)*(x6767)*(x6782)))+(((r10)*(x6762)*(x6767)))+(((IkReal(-1.00000000000000))*(r00)*(x6764)*(x6774)))+(((IkReal(-1.00000000000000))*(sj0)*(x6764)*(x6782)))+(((r12)*(sj0)*(x6781)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6787=((IkReal(1.00000000000000))*(sj5)); +IkReal x6788=((cj6)*(r21)); +IkReal x6789=((r20)*(sj6)); +IkReal x6790=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x6788)*(x6790)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6787)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x6789)*(x6790)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x6787)*(x6788)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x6787)*(x6789))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x6788)*(x6790)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6787)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x6789)*(x6790)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x6787)*(x6788)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x6787)*(x6789)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x6788)*(x6790)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6787)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x6789)*(x6790)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x6787)*(x6788)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x6787)*(x6789))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6791=IKsin(j3); +IkReal x6792=IKcos(j3); +IkReal x6793=((sj0)*(sj5)); +IkReal x6794=((r00)*(sj6)); +IkReal x6795=((cj6)*(r01)); +IkReal x6796=((cj5)*(sj0)); +IkReal x6797=((cj0)*(cj5)); +IkReal x6798=((cj6)*(sj4)); +IkReal x6799=((sj4)*(sj6)); +IkReal x6800=((cj0)*(r11)); +IkReal x6801=((cj4)*(cj6)); +IkReal x6802=((cj4)*(sj6)); +IkReal x6803=((IkReal(1.00000000000000))*(cj0)); +IkReal x6804=((cj4)*(sj5)); +IkReal x6805=((sj5)*(sj6)); +IkReal x6806=((cj6)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x6792)+(((r21)*(x6806)))+(((r20)*(x6805)))); +evalcond[1]=((((cj5)*(r21)*(x6801)))+(((IkReal(-1.00000000000000))*(r21)*(x6799)))+(((r20)*(x6798)))+(((cj5)*(r20)*(x6802)))+(((r22)*(x6804)))+(x6791)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6791)))+(((r12)*(x6797)))+(((x6793)*(x6794)))+(((IkReal(-1.00000000000000))*(x6800)*(x6806)))+(((IkReal(-1.00000000000000))*(r02)*(x6796)))+(((x6793)*(x6795)))+(((IkReal(-1.00000000000000))*(r10)*(x6803)*(x6805)))); +evalcond[3]=((((cj4)*(x6794)*(x6796)))+(((IkReal(-1.00000000000000))*(r10)*(x6797)*(x6802)))+(((cj4)*(x6795)*(x6796)))+(((x6799)*(x6800)))+(((IkReal(-1.00000000000000))*(r12)*(x6803)*(x6804)))+(((r00)*(sj0)*(x6798)))+(((cj4)*(r02)*(x6793)))+(x6792)+(((IkReal(-1.00000000000000))*(r11)*(x6797)*(x6801)))+(((IkReal(-1.00000000000000))*(r10)*(x6798)*(x6803)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x6799)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6807=((cj0)*(cj5)); +IkReal x6808=((IkReal(1.00000000000000))*(cj0)); +IkReal x6809=((cj6)*(r11)); +IkReal x6810=((r10)*(sj6)); +IkReal x6811=((cj5)*(sj0)); +IkReal x6812=((r00)*(sj5)*(sj6)); +IkReal x6813=((cj6)*(r01)*(sj5)); +IkReal x6814=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x6813)))+(((sj0)*(x6812)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6810)))+(((r12)*(x6807)))+(((IkReal(-1.00000000000000))*(r02)*(x6811)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6809))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x6810)*(x6814)))+(((IkReal(-1.00000000000000))*(x6808)*(x6813)))+(((IkReal(-1.00000000000000))*(x6809)*(x6814)))+(((r12)*(x6811)))+(((IkReal(-1.00000000000000))*(x6808)*(x6812)))+(((r02)*(x6807))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x6813)))+(((sj0)*(x6812)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6810)))+(((r12)*(x6807)))+(((IkReal(-1.00000000000000))*(r02)*(x6811)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6809)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x6810)*(x6814)))+(((IkReal(-1.00000000000000))*(x6808)*(x6813)))+(((IkReal(-1.00000000000000))*(x6809)*(x6814)))+(((r12)*(x6811)))+(((IkReal(-1.00000000000000))*(x6808)*(x6812)))+(((r02)*(x6807)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x6813)))+(((sj0)*(x6812)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6810)))+(((r12)*(x6807)))+(((IkReal(-1.00000000000000))*(r02)*(x6811)))+(((IkReal(-1.00000000000000))*(sj5)*(x6808)*(x6809)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x6810)*(x6814)))+(((IkReal(-1.00000000000000))*(x6808)*(x6813)))+(((IkReal(-1.00000000000000))*(x6809)*(x6814)))+(((r12)*(x6811)))+(((IkReal(-1.00000000000000))*(x6808)*(x6812)))+(((r02)*(x6807))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6815=IKsin(j3); +IkReal x6816=IKcos(j3); +IkReal x6817=((sj0)*(sj5)); +IkReal x6818=((r00)*(sj6)); +IkReal x6819=((cj6)*(r01)); +IkReal x6820=((cj4)*(cj5)); +IkReal x6821=((IkReal(1.00000000000000))*(cj0)); +IkReal x6822=((cj5)*(r12)); +IkReal x6823=((IkReal(1.00000000000000))*(sj0)); +IkReal x6824=((cj6)*(r11)); +IkReal x6825=((cj5)*(r02)); +IkReal x6826=((IkReal(1.00000000000000))*(cj1)); +IkReal x6827=((cj6)*(sj4)); +IkReal x6828=((cj6)*(r21)); +IkReal x6829=((r20)*(sj6)); +IkReal x6830=((r10)*(sj6)); +IkReal x6831=((sj4)*(sj6)); +IkReal x6832=((cj4)*(r02)); +IkReal x6833=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x6834=((IkReal(1.00000000000000))*(x6815)); +IkReal x6835=((cj0)*(x6831)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x6816)))+(((sj5)*(x6829)))+(((sj5)*(x6828)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x6834)))+(((r20)*(x6827)))+(((x6820)*(x6829)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x6831)))+(((x6820)*(x6828)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x6821)*(x6824)))+(((cj0)*(x6822)))+(((IkReal(-1.00000000000000))*(sj5)*(x6821)*(x6830)))+(((x6817)*(x6819)))+(((IkReal(-1.00000000000000))*(x6834)))+(((x6817)*(x6818)))+(((IkReal(-1.00000000000000))*(x6823)*(x6825)))); +evalcond[3]=((((sj0)*(x6822)))+(((IkReal(-1.00000000000000))*(x6817)*(x6830)))+(((IkReal(-1.00000000000000))*(sj5)*(x6818)*(x6821)))+(((cj0)*(x6825)))+(((IkReal(-1.00000000000000))*(x6817)*(x6824)))+(((IkReal(-1.00000000000000))*(sj5)*(x6819)*(x6821)))+(((IkReal(-1.00000000000000))*(x6816)*(x6826)))); +evalcond[4]=((((x6817)*(x6832)))+(((IkReal(-1.00000000000000))*(x6820)*(x6821)*(x6830)))+(((sj0)*(x6819)*(x6820)))+(((IkReal(-1.00000000000000))*(r01)*(x6823)*(x6831)))+(((IkReal(-1.00000000000000))*(x6820)*(x6821)*(x6824)))+(((r00)*(sj0)*(x6827)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x6821)))+(((r11)*(x6835)))+(((sj0)*(x6818)*(x6820)))+(((IkReal(-1.00000000000000))*(r10)*(x6821)*(x6827)))+(x6816)); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x6823)*(x6827)))+(((IkReal(-1.00000000000000))*(x6819)*(x6820)*(x6821)))+(((IkReal(-1.00000000000000))*(sj5)*(x6821)*(x6832)))+(((IkReal(-1.00000000000000))*(x6817)*(x6833)))+(((IkReal(-1.00000000000000))*(x6820)*(x6823)*(x6824)))+(((IkReal(-1.00000000000000))*(x6818)*(x6820)*(x6821)))+(((IkReal(-1.00000000000000))*(x6815)*(x6826)))+(((r11)*(sj0)*(x6831)))+(((IkReal(-1.00000000000000))*(r00)*(x6821)*(x6827)))+(((r01)*(x6835)))+(((IkReal(-1.00000000000000))*(x6820)*(x6823)*(x6830)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6836=((sj5)*(sj6)); +IkReal x6837=((cj6)*(sj5)); +IkReal x6838=((IkReal(1.00000000000000))*(cj0)); +IkReal x6839=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r01)*(sj0)*(x6837)))+(((IkReal(-1.00000000000000))*(r11)*(x6837)*(x6838)))+(((r00)*(sj0)*(x6836)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6839)))+(((IkReal(-1.00000000000000))*(r10)*(x6836)*(x6838))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x6839)))+(((r21)*(x6837)))+(((r20)*(x6836))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r01)*(sj0)*(x6837)))+(((IkReal(-1.00000000000000))*(r11)*(x6837)*(x6838)))+(((r00)*(sj0)*(x6836)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6839)))+(((IkReal(-1.00000000000000))*(r10)*(x6836)*(x6838)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x6839)))+(((r21)*(x6837)))+(((r20)*(x6836)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r01)*(sj0)*(x6837)))+(((IkReal(-1.00000000000000))*(r11)*(x6837)*(x6838)))+(((r00)*(sj0)*(x6836)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6839)))+(((IkReal(-1.00000000000000))*(r10)*(x6836)*(x6838)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x6839)))+(((r21)*(x6837)))+(((r20)*(x6836))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6840=IKsin(j3); +IkReal x6841=IKcos(j3); +IkReal x6842=((sj0)*(sj5)); +IkReal x6843=((r00)*(sj6)); +IkReal x6844=((cj6)*(r01)); +IkReal x6845=((cj4)*(cj5)); +IkReal x6846=((IkReal(1.00000000000000))*(cj0)); +IkReal x6847=((cj5)*(r12)); +IkReal x6848=((IkReal(1.00000000000000))*(sj0)); +IkReal x6849=((cj6)*(r11)); +IkReal x6850=((cj5)*(r02)); +IkReal x6851=((IkReal(1.00000000000000))*(cj1)); +IkReal x6852=((cj6)*(sj4)); +IkReal x6853=((cj6)*(r21)); +IkReal x6854=((r20)*(sj6)); +IkReal x6855=((r10)*(sj6)); +IkReal x6856=((sj4)*(sj6)); +IkReal x6857=((cj4)*(r02)); +IkReal x6858=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x6859=((IkReal(1.00000000000000))*(x6840)); +IkReal x6860=((cj0)*(x6856)); +evalcond[0]=((((sj5)*(x6853)))+(((sj5)*(x6854)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x6841)))); +evalcond[1]=((((x6845)*(x6853)))+(((IkReal(-1.00000000000000))*(sj1)*(x6859)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x6852)))+(((IkReal(-1.00000000000000))*(r21)*(x6856)))+(((x6845)*(x6854)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x6848)*(x6850)))+(((x6842)*(x6844)))+(((IkReal(-1.00000000000000))*(sj5)*(x6846)*(x6849)))+(((x6842)*(x6843)))+(((IkReal(-1.00000000000000))*(sj5)*(x6846)*(x6855)))+(((IkReal(-1.00000000000000))*(x6859)))+(((cj0)*(x6847)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6842)*(x6849)))+(((IkReal(-1.00000000000000))*(sj5)*(x6843)*(x6846)))+(((IkReal(-1.00000000000000))*(x6841)*(x6851)))+(((IkReal(-1.00000000000000))*(x6842)*(x6855)))+(((cj0)*(x6850)))+(((IkReal(-1.00000000000000))*(sj5)*(x6844)*(x6846)))+(((sj0)*(x6847)))); +evalcond[4]=((((r11)*(x6860)))+(((r00)*(sj0)*(x6852)))+(((x6842)*(x6857)))+(x6841)+(((IkReal(-1.00000000000000))*(r10)*(x6846)*(x6852)))+(((IkReal(-1.00000000000000))*(r01)*(x6848)*(x6856)))+(((IkReal(-1.00000000000000))*(x6845)*(x6846)*(x6855)))+(((IkReal(-1.00000000000000))*(x6845)*(x6846)*(x6849)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x6846)))+(((sj0)*(x6843)*(x6845)))+(((sj0)*(x6844)*(x6845)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6842)*(x6858)))+(((IkReal(-1.00000000000000))*(x6840)*(x6851)))+(((IkReal(-1.00000000000000))*(x6844)*(x6845)*(x6846)))+(((r01)*(x6860)))+(((IkReal(-1.00000000000000))*(x6845)*(x6848)*(x6849)))+(((IkReal(-1.00000000000000))*(x6845)*(x6848)*(x6855)))+(((IkReal(-1.00000000000000))*(sj5)*(x6846)*(x6857)))+(((IkReal(-1.00000000000000))*(r10)*(x6848)*(x6852)))+(((r11)*(sj0)*(x6856)))+(((IkReal(-1.00000000000000))*(r00)*(x6846)*(x6852)))+(((IkReal(-1.00000000000000))*(x6843)*(x6845)*(x6846)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6861=((r20)*(sj6)); +IkReal x6862=((cj4)*(cj5)); +IkReal x6863=((cj6)*(r21)); +if( IKabs(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6861)*(x6862)))+(((x6862)*(x6863))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst11)*(((((sj5)*(x6863)))+(((sj5)*(x6861)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6861)*(x6862)))+(((x6862)*(x6863)))))), ((gconst11)*(((((sj5)*(x6863)))+(((sj5)*(x6861)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x6864=IKsin(j3); +IkReal x6865=IKcos(j3); +IkReal x6866=((sj0)*(sj5)); +IkReal x6867=((r00)*(sj6)); +IkReal x6868=((cj6)*(r01)); +IkReal x6869=((cj4)*(cj5)); +IkReal x6870=((IkReal(1.00000000000000))*(cj0)); +IkReal x6871=((cj5)*(r12)); +IkReal x6872=((IkReal(1.00000000000000))*(sj0)); +IkReal x6873=((cj6)*(r11)); +IkReal x6874=((cj5)*(r02)); +IkReal x6875=((IkReal(1.00000000000000))*(cj1)); +IkReal x6876=((cj6)*(sj4)); +IkReal x6877=((cj6)*(r21)); +IkReal x6878=((r20)*(sj6)); +IkReal x6879=((r10)*(sj6)); +IkReal x6880=((sj4)*(sj6)); +IkReal x6881=((cj4)*(r02)); +IkReal x6882=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x6883=((IkReal(1.00000000000000))*(x6864)); +IkReal x6884=((cj0)*(x6880)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x6865)))+(((sj5)*(x6878)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6877)))); +evalcond[1]=((((r20)*(x6876)))+(((x6869)*(x6878)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x6880)))+(((IkReal(-1.00000000000000))*(sj1)*(x6883)))+(((x6869)*(x6877)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x6870)*(x6879)))+(((x6866)*(x6867)))+(((IkReal(-1.00000000000000))*(sj5)*(x6870)*(x6873)))+(((IkReal(-1.00000000000000))*(x6872)*(x6874)))+(((cj0)*(x6871)))+(((IkReal(-1.00000000000000))*(x6883)))+(((x6866)*(x6868)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6866)*(x6873)))+(((cj0)*(x6874)))+(((IkReal(-1.00000000000000))*(x6866)*(x6879)))+(((IkReal(-1.00000000000000))*(sj5)*(x6868)*(x6870)))+(((IkReal(-1.00000000000000))*(x6865)*(x6875)))+(((IkReal(-1.00000000000000))*(sj5)*(x6867)*(x6870)))+(((sj0)*(x6871)))); +evalcond[4]=((((sj0)*(x6867)*(x6869)))+(((IkReal(-1.00000000000000))*(x6869)*(x6870)*(x6873)))+(((IkReal(-1.00000000000000))*(r10)*(x6870)*(x6876)))+(((r11)*(x6884)))+(((IkReal(-1.00000000000000))*(x6869)*(x6870)*(x6879)))+(x6865)+(((r00)*(sj0)*(x6876)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x6870)))+(((sj0)*(x6868)*(x6869)))+(((IkReal(-1.00000000000000))*(r01)*(x6872)*(x6880)))+(((x6866)*(x6881)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x6868)*(x6869)*(x6870)))+(((r01)*(x6884)))+(((IkReal(-1.00000000000000))*(sj5)*(x6870)*(x6881)))+(((IkReal(-1.00000000000000))*(x6866)*(x6882)))+(((r11)*(sj0)*(x6880)))+(((IkReal(-1.00000000000000))*(x6869)*(x6872)*(x6873)))+(((IkReal(-1.00000000000000))*(x6869)*(x6872)*(x6879)))+(((IkReal(-1.00000000000000))*(r10)*(x6872)*(x6876)))+(((IkReal(-1.00000000000000))*(x6864)*(x6875)))+(((IkReal(-1.00000000000000))*(r00)*(x6870)*(x6876)))+(((IkReal(-1.00000000000000))*(x6867)*(x6869)*(x6870)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x6885=((IkReal(1.00000000000000))*(cj0)); +IkReal x6886=((cj4)*(sj6)); +IkReal x6887=((sj0)*(sj4)); +IkReal x6888=((cj5)*(sj6)); +IkReal x6889=((sj4)*(sj5)); +IkReal x6890=((r12)*(sj5)); +IkReal x6891=((IkReal(0.374290000000000))*(cj5)); +IkReal x6892=((r02)*(sj0)); +IkReal x6893=((IkReal(1.00000000000000))*(sj0)); +IkReal x6894=((cj0)*(r10)); +IkReal x6895=((cj4)*(cj6)); +IkReal x6896=((r00)*(sj0)); +IkReal x6897=((cj6)*(r21)); +IkReal x6898=((IkReal(0.374290000000000))*(sj5)); +IkReal x6899=((cj0)*(r00)); +IkReal x6900=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6901=((cj0)*(r02)); +IkReal x6902=((cj5)*(sj4)); +IkReal x6903=((cj6)*(r01)); +IkReal x6904=((cj6)*(r11)); +IkReal x6905=((r01)*(sj0)); +IkReal x6906=((r10)*(sj0)); +IkReal x6907=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x6908=((sj6)*(x6898)); +IkReal x6909=((cj0)*(cj6)*(x6898)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x6895)))+(((r21)*(x6886)))+(cj1)+(((r20)*(sj4)*(x6888)))+(((r22)*(x6889)))+(((x6897)*(x6902)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x6891)))+(((IkReal(0.364420000000000))*(sj1)))+(((x6897)*(x6898)))+(((r20)*(x6908)))+(((IkReal(-1.00000000000000))*(r22)*(x6900)))+(((IkReal(-0.0100000000000000))*(r20)*(x6888)))+(((IkReal(-0.0100000000000000))*(cj5)*(x6897)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x6885)*(x6886)))+(((x6886)*(x6905)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x6885)*(x6888)))+(((IkReal(-1.00000000000000))*(r00)*(x6893)*(x6895)))+(((x6894)*(x6895)))+(((r00)*(x6887)*(x6888)))+(((IkReal(-1.00000000000000))*(x6885)*(x6902)*(x6904)))+(((IkReal(-1.00000000000000))*(r12)*(x6885)*(x6889)))+(((cj5)*(x6887)*(x6903)))+(((r02)*(sj5)*(x6887)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj5)*(x6887)*(x6904)))+(((x6895)*(x6906)))+(((IkReal(-1.00000000000000))*(x6885)*(x6902)*(x6903)))+(((IkReal(-1.00000000000000))*(r11)*(x6886)*(x6893)))+(((IkReal(-1.00000000000000))*(r10)*(x6887)*(x6888)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x6885)*(x6888)))+(((x6895)*(x6899)))+(((IkReal(-1.00000000000000))*(r02)*(x6885)*(x6889)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r01)*(x6885)*(x6886)))+(((IkReal(-1.00000000000000))*(x6887)*(x6890)))); +evalcond[5]=((IkReal(-0.0690000000000000))+(((sj0)*(x6898)*(x6903)))+(((IkReal(0.0100000000000000))*(cj0)*(x6890)))+(((IkReal(-1.00000000000000))*(x6891)*(x6892)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6904)))+(((IkReal(-0.0100000000000000))*(x6888)*(x6896)))+(((IkReal(-1.00000000000000))*(py)*(x6885)))+(((IkReal(-1.00000000000000))*(x6894)*(x6908)))+(((IkReal(-1.00000000000000))*(x6892)*(x6900)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x6903)))+(((cj0)*(r12)*(x6891)))+(((IkReal(0.0100000000000000))*(x6888)*(x6894)))+(((x6896)*(x6908)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(x6898)*(x6904)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((x6891)*(x6901)))+(((IkReal(0.0100000000000000))*(x6888)*(x6899)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x6904)))+(((IkReal(0.0100000000000000))*(x6888)*(x6906)))+(((r12)*(sj0)*(x6891)))+(((IkReal(-1.00000000000000))*(x6906)*(x6908)))+(((IkReal(-1.00000000000000))*(py)*(x6893)))+(((IkReal(-1.00000000000000))*(sj0)*(x6898)*(x6904)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x6903)))+(((x6900)*(x6901)))+(((IkReal(-1.00000000000000))*(px)*(x6885)))+(((IkReal(-1.00000000000000))*(cj0)*(x6898)*(x6903)))+(((IkReal(-1.00000000000000))*(x6899)*(x6908)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(0.0100000000000000))*(sj0)*(x6890)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst12; +gconst12=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x6910=((IkReal(1.00000000000000))*(cj0)); +IkReal x6911=((cj4)*(sj6)); +IkReal x6912=((sj0)*(sj6)); +IkReal x6913=((cj5)*(sj4)); +IkReal x6914=((IkReal(0.374290000000000))*(sj5)); +IkReal x6915=((sj4)*(sj5)); +IkReal x6916=((cj0)*(cj6)); +IkReal x6917=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6918=((cj4)*(sj5)); +IkReal x6919=((cj5)*(sj0)); +IkReal x6920=((IkReal(0.374290000000000))*(r02)); +IkReal x6921=((r20)*(sj6)); +IkReal x6922=((cj6)*(r21)); +IkReal x6923=((IkReal(1.00000000000000))*(sj0)); +IkReal x6924=((cj0)*(sj6)); +IkReal x6925=((cj4)*(cj6)); +IkReal x6926=((IkReal(0.374290000000000))*(r12)); +IkReal x6927=((cj0)*(cj5)); +IkReal x6928=((cj6)*(sj5)); +IkReal x6929=((cj6)*(r01)); +IkReal x6930=((r00)*(sj6)); +IkReal x6931=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6932=((cj6)*(r11)); +IkReal x6933=((IkReal(1.00000000000000))*(r10)); +IkReal x6934=((r02)*(sj0)); +IkReal x6935=((cj6)*(sj4)); +IkReal x6936=((r12)*(x6923)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x6911)))+(((IkReal(-1.00000000000000))*(r20)*(x6925)))+(((x6913)*(x6921)))+(((r22)*(x6915)))+(((x6913)*(x6922)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x6914)*(x6922)))+(((IkReal(-1.00000000000000))*(x6917)*(x6922)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x6931)))+(((x6914)*(x6921)))+(((IkReal(-1.00000000000000))*(x6917)*(x6921)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x6912)*(x6933)))+(((IkReal(-1.00000000000000))*(sj5)*(x6910)*(x6930)))+(((r12)*(x6919)))+(((r02)*(x6927)))+(((IkReal(-1.00000000000000))*(r01)*(x6910)*(x6928)))+(((IkReal(-1.00000000000000))*(r11)*(x6923)*(x6928)))); +evalcond[4]=((((r00)*(x6912)*(x6913)))+(((x6915)*(x6934)))+(((cj4)*(r10)*(x6916)))+(((r01)*(sj0)*(x6911)))+(((IkReal(-1.00000000000000))*(r12)*(x6910)*(x6915)))+(((sj0)*(x6913)*(x6929)))+(((IkReal(-1.00000000000000))*(r11)*(x6910)*(x6911)))+(((IkReal(-1.00000000000000))*(r00)*(x6923)*(x6925)))+(((IkReal(-1.00000000000000))*(x6910)*(x6913)*(x6932)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6910)*(x6913)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x6910)*(x6911)))+(((IkReal(-1.00000000000000))*(r11)*(x6911)*(x6923)))+(((IkReal(-1.00000000000000))*(x6913)*(x6923)*(x6932)))+(((IkReal(-1.00000000000000))*(x6915)*(x6936)))+(((r10)*(sj0)*(x6925)))+(((IkReal(-1.00000000000000))*(r02)*(x6910)*(x6915)))+(((IkReal(-1.00000000000000))*(x6910)*(x6913)*(x6930)))+(((cj4)*(r00)*(x6916)))+(((IkReal(-1.00000000000000))*(x6910)*(x6913)*(x6929)))+(((IkReal(-1.00000000000000))*(x6912)*(x6913)*(x6933)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x6914)*(x6916)))+(((cj0)*(r12)*(x6931)))+(((IkReal(-1.00000000000000))*(sj0)*(x6917)*(x6929)))+(((r11)*(x6916)*(x6917)))+(((IkReal(-1.00000000000000))*(r00)*(x6912)*(x6917)))+(((r00)*(x6912)*(x6914)))+(((x6926)*(x6927)))+(((IkReal(-1.00000000000000))*(x6919)*(x6920)))+(((IkReal(-1.00000000000000))*(r10)*(x6914)*(x6924)))+(((IkReal(-1.00000000000000))*(x6931)*(x6934)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x6910)))+(((sj0)*(x6914)*(x6929)))+(((r10)*(x6917)*(x6924)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r01)*(x6910)*(x6925)))+(((IkReal(-1.00000000000000))*(r02)*(x6910)*(x6918)))+(((IkReal(-1.00000000000000))*(r11)*(x6919)*(x6925)))+(((IkReal(-1.00000000000000))*(r00)*(x6910)*(x6935)))+(((IkReal(-1.00000000000000))*(x6918)*(x6936)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x6910)*(x6911)))+(((IkReal(-1.00000000000000))*(r10)*(x6923)*(x6935)))+(((IkReal(-1.00000000000000))*(x6911)*(x6919)*(x6933)))+(((r11)*(sj4)*(x6912)))+(((r01)*(sj4)*(x6924)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj0)*(r02)*(x6931)))+(((sj0)*(x6917)*(x6932)))+(((r10)*(x6912)*(x6917)))+(((IkReal(-1.00000000000000))*(r10)*(x6912)*(x6914)))+(((IkReal(-1.00000000000000))*(py)*(x6923)))+(((IkReal(-1.00000000000000))*(r01)*(x6914)*(x6916)))+(((x6920)*(x6927)))+(((r12)*(sj0)*(x6931)))+(((IkReal(-1.00000000000000))*(px)*(x6910)))+(((IkReal(-1.00000000000000))*(sj0)*(x6914)*(x6932)))+(((r01)*(x6916)*(x6917)))+(((r00)*(x6917)*(x6924)))+(((x6919)*(x6926)))+(((IkReal(-1.00000000000000))*(r00)*(x6914)*(x6924)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6937=((r20)*(sj6)); +IkReal x6938=((cj4)*(cj5)); +IkReal x6939=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6937)*(x6938)))+(((x6938)*(x6939))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6939)))+(((sj5)*(x6937))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6937)*(x6938)))+(((x6938)*(x6939)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6939)))+(((sj5)*(x6937)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x6937)*(x6938)))+(((x6938)*(x6939)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x6939)))+(((sj5)*(x6937))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6940=IKsin(j3); +IkReal x6941=((sj0)*(sj5)); +IkReal x6942=((r00)*(sj6)); +IkReal x6943=((cj6)*(r01)); +IkReal x6944=((cj5)*(sj0)); +IkReal x6945=((cj0)*(cj5)); +IkReal x6946=((cj6)*(sj4)); +IkReal x6947=((sj4)*(sj6)); +IkReal x6948=((cj0)*(r11)); +IkReal x6949=((cj4)*(cj6)); +IkReal x6950=((cj4)*(sj6)); +IkReal x6951=((IkReal(1.00000000000000))*(cj0)); +IkReal x6952=((cj4)*(sj5)); +IkReal x6953=((sj5)*(sj6)); +IkReal x6954=((cj6)*(sj5)); +IkReal x6955=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(x6955)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x6953)))+(((r21)*(x6954)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x6940)))+(((r20)*(x6946)))+(((IkReal(-1.00000000000000))*(r21)*(x6947)))+(((r22)*(x6952)))+(((cj5)*(r20)*(x6950)))+(((cj5)*(r21)*(x6949)))); +evalcond[2]=((((x6941)*(x6942)))+(x6940)+(((x6941)*(x6943)))+(((r12)*(x6945)))+(((IkReal(-1.00000000000000))*(x6948)*(x6954)))+(((IkReal(-1.00000000000000))*(r02)*(x6944)))+(((IkReal(-1.00000000000000))*(r10)*(x6951)*(x6953)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6955)))+(((cj4)*(x6942)*(x6944)))+(((IkReal(-1.00000000000000))*(r10)*(x6945)*(x6950)))+(((x6947)*(x6948)))+(((IkReal(-1.00000000000000))*(r10)*(x6946)*(x6951)))+(((r00)*(sj0)*(x6946)))+(((IkReal(-1.00000000000000))*(r12)*(x6951)*(x6952)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x6947)))+(((cj4)*(r02)*(x6941)))+(((IkReal(-1.00000000000000))*(r11)*(x6945)*(x6949)))+(((cj4)*(x6943)*(x6944)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x6956=((IkReal(1.00000000000000))*(cj0)); +IkReal x6957=((cj4)*(sj6)); +IkReal x6958=((sj0)*(sj6)); +IkReal x6959=((cj5)*(sj4)); +IkReal x6960=((IkReal(0.374290000000000))*(sj5)); +IkReal x6961=((sj4)*(sj5)); +IkReal x6962=((cj0)*(cj6)); +IkReal x6963=((IkReal(0.0100000000000000))*(cj5)); +IkReal x6964=((cj4)*(sj5)); +IkReal x6965=((cj5)*(sj0)); +IkReal x6966=((IkReal(0.374290000000000))*(r02)); +IkReal x6967=((r20)*(sj6)); +IkReal x6968=((cj6)*(r21)); +IkReal x6969=((IkReal(1.00000000000000))*(sj0)); +IkReal x6970=((cj0)*(sj6)); +IkReal x6971=((cj4)*(cj6)); +IkReal x6972=((IkReal(0.374290000000000))*(r12)); +IkReal x6973=((cj0)*(cj5)); +IkReal x6974=((cj6)*(sj5)); +IkReal x6975=((cj6)*(r01)); +IkReal x6976=((r00)*(sj6)); +IkReal x6977=((IkReal(0.0100000000000000))*(sj5)); +IkReal x6978=((cj6)*(r11)); +IkReal x6979=((IkReal(1.00000000000000))*(r10)); +IkReal x6980=((r02)*(sj0)); +IkReal x6981=((cj6)*(sj4)); +IkReal x6982=((r12)*(x6969)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x6971)))+(((r21)*(x6957)))+(((x6959)*(x6968)))+(((r22)*(x6961)))+(((x6959)*(x6967)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(r22)*(x6977)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x6963)*(x6968)))+(((IkReal(-1.00000000000000))*(x6963)*(x6967)))+(((x6960)*(x6967)))+(((x6960)*(x6968)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(x6956)*(x6974)))+(((IkReal(-1.00000000000000))*(r11)*(x6969)*(x6974)))+(((IkReal(-1.00000000000000))*(sj5)*(x6958)*(x6979)))+(((r02)*(x6973)))+(((r12)*(x6965)))+(((IkReal(-1.00000000000000))*(sj5)*(x6956)*(x6976)))); +evalcond[4]=((((r00)*(x6958)*(x6959)))+(((IkReal(-1.00000000000000))*(r11)*(x6956)*(x6957)))+(((cj4)*(r10)*(x6962)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x6956)*(x6959)))+(((IkReal(-1.00000000000000))*(r12)*(x6956)*(x6961)))+(((IkReal(-1.00000000000000))*(r00)*(x6969)*(x6971)))+(((r01)*(sj0)*(x6957)))+(((IkReal(-1.00000000000000))*(x6956)*(x6959)*(x6978)))+(((sj0)*(x6959)*(x6975)))+(((x6961)*(x6980)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x6956)*(x6957)))+(((cj4)*(r00)*(x6962)))+(((r10)*(sj0)*(x6971)))+(((IkReal(-1.00000000000000))*(r11)*(x6957)*(x6969)))+(((IkReal(-1.00000000000000))*(x6958)*(x6959)*(x6979)))+(((IkReal(-1.00000000000000))*(x6956)*(x6959)*(x6975)))+(((IkReal(-1.00000000000000))*(x6959)*(x6969)*(x6978)))+(((IkReal(-1.00000000000000))*(r02)*(x6956)*(x6961)))+(((IkReal(-1.00000000000000))*(x6961)*(x6982)))+(((IkReal(-1.00000000000000))*(x6956)*(x6959)*(x6976)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r11)*(x6962)*(x6963)))+(((r10)*(x6963)*(x6970)))+(((IkReal(-1.00000000000000))*(sj0)*(x6963)*(x6975)))+(((sj0)*(x6960)*(x6975)))+(((IkReal(-1.00000000000000))*(r10)*(x6960)*(x6970)))+(((IkReal(-1.00000000000000))*(x6977)*(x6980)))+(((IkReal(-1.00000000000000))*(py)*(x6956)))+(((IkReal(-1.00000000000000))*(x6965)*(x6966)))+(((x6972)*(x6973)))+(((cj0)*(r12)*(x6977)))+(((IkReal(-1.00000000000000))*(r00)*(x6958)*(x6963)))+(((r00)*(x6958)*(x6960)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x6960)*(x6962)))); +evalcond[7]=((((r01)*(sj4)*(x6970)))+(((IkReal(-1.00000000000000))*(r10)*(x6969)*(x6981)))+(((IkReal(-1.00000000000000))*(r00)*(x6956)*(x6981)))+(((IkReal(-1.00000000000000))*(r11)*(x6965)*(x6971)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x6956)*(x6957)))+(((r11)*(sj4)*(x6958)))+(((IkReal(-1.00000000000000))*(r02)*(x6956)*(x6964)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x6956)*(x6971)))+(((IkReal(-1.00000000000000))*(x6964)*(x6982)))+(((IkReal(-1.00000000000000))*(x6957)*(x6965)*(x6979)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x6960)*(x6962)))+(((x6966)*(x6973)))+(((sj0)*(x6963)*(x6978)))+(((cj0)*(r02)*(x6977)))+(((r00)*(x6963)*(x6970)))+(((x6965)*(x6972)))+(((r12)*(sj0)*(x6977)))+(((IkReal(-1.00000000000000))*(r10)*(x6958)*(x6960)))+(((IkReal(-1.00000000000000))*(px)*(x6956)))+(((IkReal(-1.00000000000000))*(r00)*(x6960)*(x6970)))+(((IkReal(-1.00000000000000))*(py)*(x6969)))+(((IkReal(-1.00000000000000))*(sj0)*(x6960)*(x6978)))+(((r01)*(x6962)*(x6963)))+(((r10)*(x6958)*(x6963)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x6983=((IkReal(1.00000000000000))*(sj5)); +IkReal x6984=((cj6)*(r21)); +IkReal x6985=((r20)*(sj6)); +IkReal x6986=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x6984)*(x6986)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6983)))+(((IkReal(-1.00000000000000))*(x6985)*(x6986)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x6983)*(x6984)))+(((IkReal(-1.00000000000000))*(x6983)*(x6985)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x6984)*(x6986)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6983)))+(((IkReal(-1.00000000000000))*(x6985)*(x6986)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x6983)*(x6984)))+(((IkReal(-1.00000000000000))*(x6983)*(x6985)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x6984)*(x6986)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x6983)))+(((IkReal(-1.00000000000000))*(x6985)*(x6986)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x6983)*(x6984)))+(((IkReal(-1.00000000000000))*(x6983)*(x6985)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x6987=IKsin(j3); +IkReal x6988=IKcos(j3); +IkReal x6989=((sj0)*(sj5)); +IkReal x6990=((r00)*(sj6)); +IkReal x6991=((cj6)*(r01)); +IkReal x6992=((cj0)*(cj5)); +IkReal x6993=((IkReal(1.00000000000000))*(cj5)); +IkReal x6994=((cj4)*(cj5)); +IkReal x6995=((cj6)*(sj4)); +IkReal x6996=((sj4)*(sj6)); +IkReal x6997=((cj0)*(r11)); +IkReal x6998=((IkReal(1.00000000000000))*(cj4)); +IkReal x6999=((cj6)*(r21)); +IkReal x7000=((r20)*(sj6)); +IkReal x7001=((cj0)*(sj5)); +IkReal x7002=((r10)*(sj6)); +evalcond[0]=((((sj5)*(x7000)))+(x6988)+(((sj5)*(x6999)))+(((IkReal(-1.00000000000000))*(r22)*(x6993)))); +evalcond[1]=((((x6994)*(x6999)))+(((r20)*(x6995)))+(((IkReal(-1.00000000000000))*(r21)*(x6996)))+(((cj4)*(r22)*(sj5)))+(x6987)+(((x6994)*(x7000)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x6997)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x6993)))+(((r12)*(x6992)))+(x6987)+(((IkReal(-1.00000000000000))*(x7001)*(x7002)))+(((x6989)*(x6990)))+(((x6989)*(x6991)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x6992)*(x6998)*(x7002)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x6996)))+(((x6996)*(x6997)))+(((cj4)*(r02)*(x6989)))+(((IkReal(-1.00000000000000))*(x6988)))+(((r00)*(sj0)*(x6995)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x6995)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x6992)*(x6998)))+(((sj0)*(x6990)*(x6994)))+(((IkReal(-1.00000000000000))*(r12)*(x6998)*(x7001)))+(((sj0)*(x6991)*(x6994)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7003=((cj5)*(r02)); +IkReal x7004=((cj0)*(sj5)); +IkReal x7005=((r10)*(sj6)); +IkReal x7006=((IkReal(1.00000000000000))*(cj6)); +IkReal x7007=((sj0)*(sj5)); +IkReal x7008=((cj5)*(r12)); +IkReal x7009=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x7008)))+(((x7004)*(x7005)))+(((IkReal(-1.00000000000000))*(r01)*(x7006)*(x7007)))+(((cj6)*(r11)*(x7004)))+(((sj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7007)*(x7009))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x7004)*(x7006)))+(((cj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7005)*(x7007)))+(((sj0)*(x7008)))+(((IkReal(-1.00000000000000))*(r11)*(x7006)*(x7007)))+(((IkReal(-1.00000000000000))*(x7004)*(x7009))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x7008)))+(((x7004)*(x7005)))+(((IkReal(-1.00000000000000))*(r01)*(x7006)*(x7007)))+(((cj6)*(r11)*(x7004)))+(((sj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7007)*(x7009)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x7004)*(x7006)))+(((cj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7005)*(x7007)))+(((sj0)*(x7008)))+(((IkReal(-1.00000000000000))*(r11)*(x7006)*(x7007)))+(((IkReal(-1.00000000000000))*(x7004)*(x7009)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x7008)))+(((x7004)*(x7005)))+(((IkReal(-1.00000000000000))*(r01)*(x7006)*(x7007)))+(((cj6)*(r11)*(x7004)))+(((sj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7007)*(x7009)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x7004)*(x7006)))+(((cj0)*(x7003)))+(((IkReal(-1.00000000000000))*(x7005)*(x7007)))+(((sj0)*(x7008)))+(((IkReal(-1.00000000000000))*(r11)*(x7006)*(x7007)))+(((IkReal(-1.00000000000000))*(x7004)*(x7009))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7010=IKsin(j3); +IkReal x7011=IKcos(j3); +IkReal x7012=((sj0)*(sj5)); +IkReal x7013=((r00)*(sj6)); +IkReal x7014=((IkReal(1.00000000000000))*(cj4)); +IkReal x7015=((cj6)*(r01)); +IkReal x7016=((cj0)*(cj5)); +IkReal x7017=((cj5)*(sj0)); +IkReal x7018=((cj6)*(r11)); +IkReal x7019=((cj0)*(sj5)); +IkReal x7020=((IkReal(1.00000000000000))*(cj1)); +IkReal x7021=((cj6)*(sj4)); +IkReal x7022=((IkReal(1.00000000000000))*(sj1)); +IkReal x7023=((cj4)*(cj5)); +IkReal x7024=((cj6)*(r21)); +IkReal x7025=((r20)*(sj6)); +IkReal x7026=((r10)*(sj6)); +IkReal x7027=((IkReal(1.00000000000000))*(cj0)); +IkReal x7028=((cj0)*(sj4)*(sj6)); +IkReal x7029=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x7011)*(x7022)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7024)))+(((sj5)*(x7025)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x7021)))+(((x7023)*(x7024)))+(((x7023)*(x7025)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x7010)*(x7022)))); +evalcond[2]=((((x7012)*(x7015)))+(((r12)*(x7016)))+(x7010)+(((x7012)*(x7013)))+(((IkReal(-1.00000000000000))*(x7019)*(x7026)))+(((IkReal(-1.00000000000000))*(r02)*(x7017)))+(((IkReal(-1.00000000000000))*(x7018)*(x7019)))); +evalcond[3]=((((r12)*(x7017)))+(((IkReal(-1.00000000000000))*(x7015)*(x7019)))+(((IkReal(-1.00000000000000))*(x7012)*(x7018)))+(((r02)*(x7016)))+(((IkReal(-1.00000000000000))*(x7013)*(x7019)))+(((IkReal(-1.00000000000000))*(x7011)*(x7020)))+(((IkReal(-1.00000000000000))*(x7012)*(x7026)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x7021)*(x7027)))+(((r00)*(sj0)*(x7021)))+(((cj4)*(x7015)*(x7017)))+(((IkReal(-1.00000000000000))*(r01)*(x7029)))+(((cj4)*(r02)*(x7012)))+(((cj4)*(x7013)*(x7017)))+(((IkReal(-1.00000000000000))*(x7011)))+(((IkReal(-1.00000000000000))*(x7014)*(x7016)*(x7026)))+(((IkReal(-1.00000000000000))*(x7014)*(x7016)*(x7018)))+(((r11)*(x7028)))+(((IkReal(-1.00000000000000))*(r12)*(x7014)*(x7019)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7014)*(x7017)*(x7026)))+(((IkReal(-1.00000000000000))*(x7013)*(x7014)*(x7016)))+(((IkReal(-1.00000000000000))*(r02)*(x7014)*(x7019)))+(((IkReal(-1.00000000000000))*(x7014)*(x7017)*(x7018)))+(((IkReal(-1.00000000000000))*(x7014)*(x7015)*(x7016)))+(((r01)*(x7028)))+(((IkReal(-1.00000000000000))*(r00)*(x7021)*(x7027)))+(((IkReal(-1.00000000000000))*(x7010)*(x7020)))+(((IkReal(-1.00000000000000))*(r12)*(x7012)*(x7014)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7021)))+(((r11)*(x7029)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7030=((sj5)*(sj6)); +IkReal x7031=((IkReal(1.00000000000000))*(sj0)); +IkReal x7032=((cj6)*(sj5)); +IkReal x7033=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r00)*(x7030)*(x7031)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7033)))+(((cj0)*(r11)*(x7032)))+(((cj0)*(r10)*(x7030)))+(((IkReal(-1.00000000000000))*(r01)*(x7031)*(x7032))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x7033)))+(((r21)*(x7032)))+(((r20)*(x7030))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r00)*(x7030)*(x7031)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7033)))+(((cj0)*(r11)*(x7032)))+(((cj0)*(r10)*(x7030)))+(((IkReal(-1.00000000000000))*(r01)*(x7031)*(x7032)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x7033)))+(((r21)*(x7032)))+(((r20)*(x7030)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r00)*(x7030)*(x7031)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7033)))+(((cj0)*(r11)*(x7032)))+(((cj0)*(r10)*(x7030)))+(((IkReal(-1.00000000000000))*(r01)*(x7031)*(x7032)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x7033)))+(((r21)*(x7032)))+(((r20)*(x7030))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7034=IKsin(j3); +IkReal x7035=IKcos(j3); +IkReal x7036=((sj0)*(sj5)); +IkReal x7037=((r00)*(sj6)); +IkReal x7038=((IkReal(1.00000000000000))*(cj4)); +IkReal x7039=((cj6)*(r01)); +IkReal x7040=((cj0)*(cj5)); +IkReal x7041=((cj5)*(sj0)); +IkReal x7042=((cj6)*(r11)); +IkReal x7043=((cj0)*(sj5)); +IkReal x7044=((IkReal(1.00000000000000))*(cj1)); +IkReal x7045=((cj6)*(sj4)); +IkReal x7046=((IkReal(1.00000000000000))*(sj1)); +IkReal x7047=((cj4)*(cj5)); +IkReal x7048=((cj6)*(r21)); +IkReal x7049=((r20)*(sj6)); +IkReal x7050=((r10)*(sj6)); +IkReal x7051=((IkReal(1.00000000000000))*(cj0)); +IkReal x7052=((cj0)*(sj4)*(sj6)); +IkReal x7053=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x7035)*(x7046)))+(((sj5)*(x7049)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7048)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x7034)*(x7046)))+(((x7047)*(x7048)))+(((r20)*(x7045)))+(((x7047)*(x7049)))); +evalcond[2]=((((x7036)*(x7037)))+(((IkReal(-1.00000000000000))*(x7043)*(x7050)))+(((IkReal(-1.00000000000000))*(r02)*(x7041)))+(x7034)+(((r12)*(x7040)))+(((x7036)*(x7039)))+(((IkReal(-1.00000000000000))*(x7042)*(x7043)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7039)*(x7043)))+(((IkReal(-1.00000000000000))*(x7037)*(x7043)))+(((IkReal(-1.00000000000000))*(x7035)*(x7044)))+(((IkReal(-1.00000000000000))*(x7036)*(x7042)))+(((IkReal(-1.00000000000000))*(x7036)*(x7050)))+(((r12)*(x7041)))+(((r02)*(x7040)))); +evalcond[4]=((((cj4)*(r02)*(x7036)))+(((IkReal(-1.00000000000000))*(r10)*(x7045)*(x7051)))+(((cj4)*(x7039)*(x7041)))+(((r11)*(x7052)))+(((IkReal(-1.00000000000000))*(x7038)*(x7040)*(x7042)))+(((IkReal(-1.00000000000000))*(x7038)*(x7040)*(x7050)))+(((IkReal(-1.00000000000000))*(x7035)))+(((IkReal(-1.00000000000000))*(r01)*(x7053)))+(((r00)*(sj0)*(x7045)))+(((cj4)*(x7037)*(x7041)))+(((IkReal(-1.00000000000000))*(r12)*(x7038)*(x7043)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x7036)*(x7038)))+(((IkReal(-1.00000000000000))*(x7034)*(x7044)))+(((IkReal(-1.00000000000000))*(x7038)*(x7041)*(x7042)))+(((IkReal(-1.00000000000000))*(x7038)*(x7039)*(x7040)))+(((IkReal(-1.00000000000000))*(x7038)*(x7041)*(x7050)))+(((r01)*(x7052)))+(((IkReal(-1.00000000000000))*(r00)*(x7045)*(x7051)))+(((r11)*(x7053)))+(((IkReal(-1.00000000000000))*(x7037)*(x7038)*(x7040)))+(((IkReal(-1.00000000000000))*(r02)*(x7038)*(x7043)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7045)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7054=((r20)*(sj6)); +IkReal x7055=((cj4)*(cj5)); +IkReal x7056=((cj6)*(r21)); +if( IKabs(((gconst12)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x7055)*(x7056)))+(((x7054)*(x7055))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst12)*(((((sj5)*(x7054)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7056))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst12)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x7055)*(x7056)))+(((x7054)*(x7055)))))), ((gconst12)*(((((sj5)*(x7054)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7056))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7057=IKsin(j3); +IkReal x7058=IKcos(j3); +IkReal x7059=((sj0)*(sj5)); +IkReal x7060=((r00)*(sj6)); +IkReal x7061=((IkReal(1.00000000000000))*(cj4)); +IkReal x7062=((cj6)*(r01)); +IkReal x7063=((cj0)*(cj5)); +IkReal x7064=((cj5)*(sj0)); +IkReal x7065=((cj6)*(r11)); +IkReal x7066=((cj0)*(sj5)); +IkReal x7067=((IkReal(1.00000000000000))*(cj1)); +IkReal x7068=((cj6)*(sj4)); +IkReal x7069=((IkReal(1.00000000000000))*(sj1)); +IkReal x7070=((cj4)*(cj5)); +IkReal x7071=((cj6)*(r21)); +IkReal x7072=((r20)*(sj6)); +IkReal x7073=((r10)*(sj6)); +IkReal x7074=((IkReal(1.00000000000000))*(cj0)); +IkReal x7075=((cj0)*(sj4)*(sj6)); +IkReal x7076=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x7072)))+(((IkReal(-1.00000000000000))*(x7058)*(x7069)))+(((sj5)*(x7071)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7068)))+(((x7070)*(x7071)))+(((IkReal(-1.00000000000000))*(x7057)*(x7069)))+(((x7070)*(x7072)))); +evalcond[2]=((((x7059)*(x7062)))+(((x7059)*(x7060)))+(((r12)*(x7063)))+(x7057)+(((IkReal(-1.00000000000000))*(r02)*(x7064)))+(((IkReal(-1.00000000000000))*(x7066)*(x7073)))+(((IkReal(-1.00000000000000))*(x7065)*(x7066)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7060)*(x7066)))+(((IkReal(-1.00000000000000))*(x7059)*(x7073)))+(((r12)*(x7064)))+(((IkReal(-1.00000000000000))*(x7059)*(x7065)))+(((IkReal(-1.00000000000000))*(x7058)*(x7067)))+(((r02)*(x7063)))+(((IkReal(-1.00000000000000))*(x7062)*(x7066)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x7061)*(x7066)))+(((IkReal(-1.00000000000000))*(x7061)*(x7063)*(x7065)))+(((r00)*(sj0)*(x7068)))+(((r11)*(x7075)))+(((IkReal(-1.00000000000000))*(x7058)))+(((cj4)*(x7062)*(x7064)))+(((IkReal(-1.00000000000000))*(x7061)*(x7063)*(x7073)))+(((IkReal(-1.00000000000000))*(r10)*(x7068)*(x7074)))+(((cj4)*(r02)*(x7059)))+(((IkReal(-1.00000000000000))*(r01)*(x7076)))+(((cj4)*(x7060)*(x7064)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7061)*(x7062)*(x7063)))+(((IkReal(-1.00000000000000))*(r02)*(x7061)*(x7066)))+(((IkReal(-1.00000000000000))*(x7060)*(x7061)*(x7063)))+(((IkReal(-1.00000000000000))*(x7061)*(x7064)*(x7073)))+(((r01)*(x7075)))+(((IkReal(-1.00000000000000))*(r00)*(x7068)*(x7074)))+(((IkReal(-1.00000000000000))*(r12)*(x7059)*(x7061)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7068)))+(((IkReal(-1.00000000000000))*(x7057)*(x7067)))+(((IkReal(-1.00000000000000))*(x7061)*(x7064)*(x7065)))+(((r11)*(x7076)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7077=((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30); +IkReal x7078=((sj5)*(sj6)); +IkReal x7079=((r00)*(sj0)); +IkReal x7080=((cj1)*(cj2)); +IkReal x7081=((cj0)*(r10)); +IkReal x7082=((cj6)*(sj5)); +IkReal x7083=((r01)*(sj0)); +IkReal x7084=((IkReal(1.00000000000000))*(cj0)); +IkReal x7085=((cj5)*(r12)); +IkReal x7086=((IkReal(1.00000000000000))*(cj5)); +IkReal x7087=((r02)*(sj0)); +if( IKabs(((x7077)*(((((cj0)*(x7085)))+(((IkReal(-1.00000000000000))*(x7086)*(x7087)))+(((IkReal(-1.00000000000000))*(r11)*(x7082)*(x7084)))+(((IkReal(-1.00000000000000))*(x7078)*(x7081)))+(((x7078)*(x7079)))+(((x7082)*(x7083))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((x7077)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((cj5)*(x7080)*(x7087)))+(((cj0)*(r11)*(x7080)*(x7082)))+(((IkReal(-1.00000000000000))*(x7078)*(x7079)*(x7080)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x7086)))+(((r21)*(sj2)*(x7082)))+(((r20)*(sj2)*(x7078)))+(((IkReal(-1.00000000000000))*(x7080)*(x7082)*(x7083)))+(((x7078)*(x7080)*(x7081)))+(((IkReal(-1.00000000000000))*(x7080)*(x7084)*(x7085))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((x7077)*(((((cj0)*(x7085)))+(((IkReal(-1.00000000000000))*(x7086)*(x7087)))+(((IkReal(-1.00000000000000))*(r11)*(x7082)*(x7084)))+(((IkReal(-1.00000000000000))*(x7078)*(x7081)))+(((x7078)*(x7079)))+(((x7082)*(x7083)))))))+IKsqr(((x7077)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((cj5)*(x7080)*(x7087)))+(((cj0)*(r11)*(x7080)*(x7082)))+(((IkReal(-1.00000000000000))*(x7078)*(x7079)*(x7080)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x7086)))+(((r21)*(sj2)*(x7082)))+(((r20)*(sj2)*(x7078)))+(((IkReal(-1.00000000000000))*(x7080)*(x7082)*(x7083)))+(((x7078)*(x7080)*(x7081)))+(((IkReal(-1.00000000000000))*(x7080)*(x7084)*(x7085)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((x7077)*(((((cj0)*(x7085)))+(((IkReal(-1.00000000000000))*(x7086)*(x7087)))+(((IkReal(-1.00000000000000))*(r11)*(x7082)*(x7084)))+(((IkReal(-1.00000000000000))*(x7078)*(x7081)))+(((x7078)*(x7079)))+(((x7082)*(x7083)))))), ((x7077)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((cj5)*(x7080)*(x7087)))+(((cj0)*(r11)*(x7080)*(x7082)))+(((IkReal(-1.00000000000000))*(x7078)*(x7079)*(x7080)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x7086)))+(((r21)*(sj2)*(x7082)))+(((r20)*(sj2)*(x7078)))+(((IkReal(-1.00000000000000))*(x7080)*(x7082)*(x7083)))+(((x7078)*(x7080)*(x7081)))+(((IkReal(-1.00000000000000))*(x7080)*(x7084)*(x7085))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7088=IKcos(j3); +IkReal x7089=IKsin(j3); +IkReal x7090=((sj0)*(sj5)); +IkReal x7091=((r00)*(sj6)); +IkReal x7092=((IkReal(1.00000000000000))*(cj4)); +IkReal x7093=((cj6)*(r01)); +IkReal x7094=((cj0)*(cj5)); +IkReal x7095=((cj5)*(sj0)); +IkReal x7096=((cj6)*(r11)); +IkReal x7097=((cj6)*(sj4)); +IkReal x7098=((IkReal(1.00000000000000))*(cj1)); +IkReal x7099=((cj4)*(cj5)); +IkReal x7100=((cj6)*(r21)); +IkReal x7101=((r20)*(sj6)); +IkReal x7102=((r10)*(sj6)); +IkReal x7103=((cj0)*(sj5)); +IkReal x7104=((IkReal(1.00000000000000))*(cj0)); +IkReal x7105=((IkReal(1.00000000000000))*(x7103)); +IkReal x7106=((IkReal(1.00000000000000))*(x7089)); +IkReal x7107=((cj0)*(sj4)*(sj6)); +IkReal x7108=((cj2)*(x7089)); +IkReal x7109=((sj0)*(sj4)*(sj6)); +IkReal x7110=((IkReal(1.00000000000000))*(sj1)*(x7088)); +evalcond[0]=((((sj5)*(x7101)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x7110)))+(((IkReal(-1.00000000000000))*(x7098)*(x7108)))+(((sj5)*(x7100)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(sj1)*(x7106)))+(((cj1)*(cj2)*(x7088)))+(((cj4)*(r22)*(sj5)))+(((x7099)*(x7100)))+(((x7099)*(x7101)))+(((r20)*(x7097)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7096)*(x7105)))+(((r12)*(x7094)))+(((IkReal(-1.00000000000000))*(x7102)*(x7105)))+(((x7090)*(x7091)))+(((x7090)*(x7093)))+(((IkReal(-1.00000000000000))*(sj2)*(x7106)))+(((IkReal(-1.00000000000000))*(r02)*(x7095)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7088)*(x7098)))+(((IkReal(-1.00000000000000))*(x7090)*(x7096)))+(((r12)*(x7095)))+(((sj1)*(x7108)))+(((IkReal(-1.00000000000000))*(x7091)*(x7105)))+(((IkReal(-1.00000000000000))*(x7090)*(x7102)))+(((r02)*(x7094)))+(((IkReal(-1.00000000000000))*(x7093)*(x7105)))); +evalcond[4]=((((cj4)*(r02)*(x7090)))+(((sj2)*(x7088)))+(((r11)*(x7107)))+(((r00)*(sj0)*(x7097)))+(((IkReal(-1.00000000000000))*(r10)*(x7097)*(x7104)))+(((cj4)*(x7093)*(x7095)))+(((IkReal(-1.00000000000000))*(x7092)*(x7094)*(x7096)))+(((cj4)*(x7091)*(x7095)))+(((IkReal(-1.00000000000000))*(x7092)*(x7094)*(x7102)))+(((IkReal(-1.00000000000000))*(r12)*(x7092)*(x7103)))+(((IkReal(-1.00000000000000))*(r01)*(x7109)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(cj2)*(x7110)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7097)))+(((IkReal(-1.00000000000000))*(r00)*(x7097)*(x7104)))+(((IkReal(-1.00000000000000))*(x7089)*(x7098)))+(((IkReal(-1.00000000000000))*(x7092)*(x7095)*(x7102)))+(((IkReal(-1.00000000000000))*(x7091)*(x7092)*(x7094)))+(((IkReal(-1.00000000000000))*(x7092)*(x7095)*(x7096)))+(((IkReal(-1.00000000000000))*(r12)*(x7090)*(x7092)))+(((r11)*(x7109)))+(((r01)*(x7107)))+(((IkReal(-1.00000000000000))*(x7092)*(x7093)*(x7094)))+(((IkReal(-1.00000000000000))*(r02)*(x7092)*(x7103)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7111=(cj1)*(cj1); +IkReal x7112=(sj1)*(sj1); +IkReal x7113=((r00)*(sj6)); +IkReal x7114=((cj6)*(r01)); +IkReal x7115=((IkReal(1.00000000000000))*(cj1)); +IkReal x7116=((cj5)*(r22)); +IkReal x7117=((sj5)*(sj6)); +IkReal x7118=((r10)*(sj0)); +IkReal x7119=((cj1)*(cj5)); +IkReal x7120=((cj0)*(r02)); +IkReal x7121=((r12)*(sj0)); +IkReal x7122=((IkReal(1.00000000000000))*(sj1)); +IkReal x7123=((cj6)*(sj5)); +IkReal x7124=((cj0)*(sj5)); +IkReal x7125=((r11)*(sj0)); +IkReal x7126=((sj1)*(x7124)); +if( IKabs(((((IKabs(((((cj2)*(x7111)))+(((cj2)*(x7112))))) != 0)?((IkReal)1/(((((cj2)*(x7111)))+(((cj2)*(x7112)))))):(IkReal)1.0e30))*(((((sj1)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7116)))+(((IkReal(-1.00000000000000))*(cj5)*(x7121)*(x7122)))+(((sj1)*(x7117)*(x7118)))+(((cj1)*(r21)*(x7123)))+(((x7113)*(x7126)))+(((x7114)*(x7126)))+(((IkReal(-1.00000000000000))*(cj5)*(x7120)*(x7122)))+(((cj1)*(r20)*(x7117))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x7112)+(x7111))) != 0)?((IkReal)1/(((x7112)+(x7111)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x7123)))+(((IkReal(-1.00000000000000))*(x7114)*(x7115)*(x7124)))+(((r20)*(sj1)*(x7117)))+(((IkReal(-1.00000000000000))*(x7113)*(x7115)*(x7124)))+(((x7119)*(x7121)))+(((IkReal(-1.00000000000000))*(x7116)*(x7122)))+(((IkReal(-1.00000000000000))*(x7115)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7117)*(x7118)))+(((x7119)*(x7120))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x7111)))+(((cj2)*(x7112))))) != 0)?((IkReal)1/(((((cj2)*(x7111)))+(((cj2)*(x7112)))))):(IkReal)1.0e30))*(((((sj1)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7116)))+(((IkReal(-1.00000000000000))*(cj5)*(x7121)*(x7122)))+(((sj1)*(x7117)*(x7118)))+(((cj1)*(r21)*(x7123)))+(((x7113)*(x7126)))+(((x7114)*(x7126)))+(((IkReal(-1.00000000000000))*(cj5)*(x7120)*(x7122)))+(((cj1)*(r20)*(x7117)))))))+IKsqr(((((IKabs(((x7112)+(x7111))) != 0)?((IkReal)1/(((x7112)+(x7111)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x7123)))+(((IkReal(-1.00000000000000))*(x7114)*(x7115)*(x7124)))+(((r20)*(sj1)*(x7117)))+(((IkReal(-1.00000000000000))*(x7113)*(x7115)*(x7124)))+(((x7119)*(x7121)))+(((IkReal(-1.00000000000000))*(x7116)*(x7122)))+(((IkReal(-1.00000000000000))*(x7115)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7117)*(x7118)))+(((x7119)*(x7120)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x7111)))+(((cj2)*(x7112))))) != 0)?((IkReal)1/(((((cj2)*(x7111)))+(((cj2)*(x7112)))))):(IkReal)1.0e30))*(((((sj1)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7116)))+(((IkReal(-1.00000000000000))*(cj5)*(x7121)*(x7122)))+(((sj1)*(x7117)*(x7118)))+(((cj1)*(r21)*(x7123)))+(((x7113)*(x7126)))+(((x7114)*(x7126)))+(((IkReal(-1.00000000000000))*(cj5)*(x7120)*(x7122)))+(((cj1)*(r20)*(x7117)))))), ((((IKabs(((x7112)+(x7111))) != 0)?((IkReal)1/(((x7112)+(x7111)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x7123)))+(((IkReal(-1.00000000000000))*(x7114)*(x7115)*(x7124)))+(((r20)*(sj1)*(x7117)))+(((IkReal(-1.00000000000000))*(x7113)*(x7115)*(x7124)))+(((x7119)*(x7121)))+(((IkReal(-1.00000000000000))*(x7116)*(x7122)))+(((IkReal(-1.00000000000000))*(x7115)*(x7123)*(x7125)))+(((IkReal(-1.00000000000000))*(x7115)*(x7117)*(x7118)))+(((x7119)*(x7120))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7127=IKcos(j3); +IkReal x7128=IKsin(j3); +IkReal x7129=((sj0)*(sj5)); +IkReal x7130=((r00)*(sj6)); +IkReal x7131=((IkReal(1.00000000000000))*(cj4)); +IkReal x7132=((cj6)*(r01)); +IkReal x7133=((cj0)*(cj5)); +IkReal x7134=((cj5)*(sj0)); +IkReal x7135=((cj6)*(r11)); +IkReal x7136=((cj6)*(sj4)); +IkReal x7137=((IkReal(1.00000000000000))*(cj1)); +IkReal x7138=((cj4)*(cj5)); +IkReal x7139=((cj6)*(r21)); +IkReal x7140=((r20)*(sj6)); +IkReal x7141=((r10)*(sj6)); +IkReal x7142=((cj0)*(sj5)); +IkReal x7143=((IkReal(1.00000000000000))*(cj0)); +IkReal x7144=((IkReal(1.00000000000000))*(x7142)); +IkReal x7145=((IkReal(1.00000000000000))*(x7128)); +IkReal x7146=((cj0)*(sj4)*(sj6)); +IkReal x7147=((cj2)*(x7128)); +IkReal x7148=((sj0)*(sj4)*(sj6)); +IkReal x7149=((IkReal(1.00000000000000))*(sj1)*(x7127)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x7137)*(x7147)))+(((sj5)*(x7139)))+(((IkReal(-1.00000000000000))*(x7149)))+(((sj5)*(x7140)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x7138)*(x7140)))+(((r20)*(x7136)))+(((cj4)*(r22)*(sj5)))+(((x7138)*(x7139)))+(((cj1)*(cj2)*(x7127)))+(((IkReal(-1.00000000000000))*(sj1)*(x7145)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7141)*(x7144)))+(((IkReal(-1.00000000000000))*(sj2)*(x7145)))+(((r12)*(x7133)))+(((IkReal(-1.00000000000000))*(r02)*(x7134)))+(((x7129)*(x7132)))+(((IkReal(-1.00000000000000))*(x7135)*(x7144)))+(((x7129)*(x7130)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7129)*(x7135)))+(((IkReal(-1.00000000000000))*(x7127)*(x7137)))+(((IkReal(-1.00000000000000))*(x7129)*(x7141)))+(((IkReal(-1.00000000000000))*(x7132)*(x7144)))+(((IkReal(-1.00000000000000))*(x7130)*(x7144)))+(((sj1)*(x7147)))+(((r02)*(x7133)))+(((r12)*(x7134)))); +evalcond[4]=((((r11)*(x7146)))+(((cj4)*(x7132)*(x7134)))+(((IkReal(-1.00000000000000))*(r12)*(x7131)*(x7142)))+(((IkReal(-1.00000000000000))*(r10)*(x7136)*(x7143)))+(((r00)*(sj0)*(x7136)))+(((sj2)*(x7127)))+(((IkReal(-1.00000000000000))*(x7131)*(x7133)*(x7141)))+(((cj4)*(r02)*(x7129)))+(((IkReal(-1.00000000000000))*(r01)*(x7148)))+(((IkReal(-1.00000000000000))*(x7131)*(x7133)*(x7135)))+(((cj4)*(x7130)*(x7134)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(cj2)*(x7149)))+(((IkReal(-1.00000000000000))*(x7128)*(x7137)))+(((IkReal(-1.00000000000000))*(r00)*(x7136)*(x7143)))+(((r01)*(x7146)))+(((r11)*(x7148)))+(((IkReal(-1.00000000000000))*(x7131)*(x7134)*(x7141)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7136)))+(((IkReal(-1.00000000000000))*(x7131)*(x7134)*(x7135)))+(((IkReal(-1.00000000000000))*(r12)*(x7129)*(x7131)))+(((IkReal(-1.00000000000000))*(x7130)*(x7131)*(x7133)))+(((IkReal(-1.00000000000000))*(r02)*(x7131)*(x7142)))+(((IkReal(-1.00000000000000))*(x7131)*(x7132)*(x7133)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7150=((sj1)*(sj6)); +IkReal x7151=((r20)*(sj5)); +IkReal x7152=((IkReal(1.00000000000000))*(r21)); +IkReal x7153=((cj5)*(cj6)); +IkReal x7154=((r22)*(sj5)); +IkReal x7155=((cj4)*(sj1)); +IkReal x7156=((cj1)*(cj2)); +IkReal x7157=((cj5)*(r20)); +IkReal x7158=((cj4)*(x7156)); +IkReal x7159=((IkReal(1.00000000000000))*(cj5)*(r22)); +IkReal x7160=((cj6)*(r20)*(sj4)); +IkReal x7161=((cj6)*(r21)*(sj5)); +if( IKabs(((gconst4)*(((((cj4)*(x7150)*(x7157)))+(((r21)*(x7153)*(x7155)))+(((IkReal(-1.00000000000000))*(x7156)*(x7159)))+(((sj6)*(x7151)*(x7156)))+(((sj1)*(x7160)))+(((x7154)*(x7155)))+(((IkReal(-1.00000000000000))*(sj4)*(x7150)*(x7152)))+(((x7156)*(x7161))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst4)*(((((IkReal(-1.00000000000000))*(x7152)*(x7153)*(x7158)))+(((x7150)*(x7151)))+(((IkReal(-1.00000000000000))*(sj1)*(x7159)))+(((IkReal(-1.00000000000000))*(x7156)*(x7160)))+(((IkReal(-1.00000000000000))*(sj6)*(x7157)*(x7158)))+(((IkReal(-1.00000000000000))*(x7154)*(x7158)))+(((sj1)*(x7161)))+(((r21)*(sj4)*(sj6)*(x7156))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst4)*(((((cj4)*(x7150)*(x7157)))+(((r21)*(x7153)*(x7155)))+(((IkReal(-1.00000000000000))*(x7156)*(x7159)))+(((sj6)*(x7151)*(x7156)))+(((sj1)*(x7160)))+(((x7154)*(x7155)))+(((IkReal(-1.00000000000000))*(sj4)*(x7150)*(x7152)))+(((x7156)*(x7161)))))), ((gconst4)*(((((IkReal(-1.00000000000000))*(x7152)*(x7153)*(x7158)))+(((x7150)*(x7151)))+(((IkReal(-1.00000000000000))*(sj1)*(x7159)))+(((IkReal(-1.00000000000000))*(x7156)*(x7160)))+(((IkReal(-1.00000000000000))*(sj6)*(x7157)*(x7158)))+(((IkReal(-1.00000000000000))*(x7154)*(x7158)))+(((sj1)*(x7161)))+(((r21)*(sj4)*(sj6)*(x7156))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7162=IKcos(j3); +IkReal x7163=IKsin(j3); +IkReal x7164=((sj0)*(sj5)); +IkReal x7165=((r00)*(sj6)); +IkReal x7166=((IkReal(1.00000000000000))*(cj4)); +IkReal x7167=((cj6)*(r01)); +IkReal x7168=((cj0)*(cj5)); +IkReal x7169=((cj5)*(sj0)); +IkReal x7170=((cj6)*(r11)); +IkReal x7171=((cj6)*(sj4)); +IkReal x7172=((IkReal(1.00000000000000))*(cj1)); +IkReal x7173=((cj4)*(cj5)); +IkReal x7174=((cj6)*(r21)); +IkReal x7175=((r20)*(sj6)); +IkReal x7176=((r10)*(sj6)); +IkReal x7177=((cj0)*(sj5)); +IkReal x7178=((IkReal(1.00000000000000))*(cj0)); +IkReal x7179=((IkReal(1.00000000000000))*(x7177)); +IkReal x7180=((IkReal(1.00000000000000))*(x7163)); +IkReal x7181=((cj0)*(sj4)*(sj6)); +IkReal x7182=((cj2)*(x7163)); +IkReal x7183=((sj0)*(sj4)*(sj6)); +IkReal x7184=((IkReal(1.00000000000000))*(sj1)*(x7162)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x7184)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7174)))+(((IkReal(-1.00000000000000))*(x7172)*(x7182)))+(((sj5)*(x7175)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj1)*(cj2)*(x7162)))+(((x7173)*(x7175)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7171)))+(((x7173)*(x7174)))+(((IkReal(-1.00000000000000))*(sj1)*(x7180)))); +evalcond[2]=((((x7164)*(x7167)))+(((x7164)*(x7165)))+(((IkReal(-1.00000000000000))*(x7176)*(x7179)))+(((IkReal(-1.00000000000000))*(sj2)*(x7180)))+(((r12)*(x7168)))+(((IkReal(-1.00000000000000))*(x7170)*(x7179)))+(((IkReal(-1.00000000000000))*(r02)*(x7169)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7165)*(x7179)))+(((r12)*(x7169)))+(((IkReal(-1.00000000000000))*(x7162)*(x7172)))+(((sj1)*(x7182)))+(((r02)*(x7168)))+(((IkReal(-1.00000000000000))*(x7164)*(x7170)))+(((IkReal(-1.00000000000000))*(x7164)*(x7176)))+(((IkReal(-1.00000000000000))*(x7167)*(x7179)))); +evalcond[4]=((((cj4)*(r02)*(x7164)))+(((IkReal(-1.00000000000000))*(x7166)*(x7168)*(x7176)))+(((IkReal(-1.00000000000000))*(r12)*(x7166)*(x7177)))+(((r00)*(sj0)*(x7171)))+(((IkReal(-1.00000000000000))*(r10)*(x7171)*(x7178)))+(((sj2)*(x7162)))+(((cj4)*(x7167)*(x7169)))+(((IkReal(-1.00000000000000))*(x7166)*(x7168)*(x7170)))+(((IkReal(-1.00000000000000))*(r01)*(x7183)))+(((cj4)*(x7165)*(x7169)))+(((r11)*(x7181)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7171)))+(((IkReal(-1.00000000000000))*(x7166)*(x7169)*(x7176)))+(((IkReal(-1.00000000000000))*(r02)*(x7166)*(x7177)))+(((IkReal(-1.00000000000000))*(r00)*(x7171)*(x7178)))+(((IkReal(-1.00000000000000))*(x7166)*(x7167)*(x7168)))+(((IkReal(-1.00000000000000))*(r12)*(x7164)*(x7166)))+(((IkReal(-1.00000000000000))*(x7165)*(x7166)*(x7168)))+(((r11)*(x7183)))+(((IkReal(-1.00000000000000))*(cj2)*(x7184)))+(((IkReal(-1.00000000000000))*(x7166)*(x7169)*(x7170)))+(((r01)*(x7181)))+(((IkReal(-1.00000000000000))*(x7163)*(x7172)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x7185=((cj5)*(sj0)); +IkReal x7186=((cj2)*(sj6)); +IkReal x7187=((IkReal(1.00000000000000))*(cj0)); +IkReal x7188=((cj2)*(cj6)); +IkReal x7189=((cj1)*(cj6)*(sj2)); +IkReal x7190=((r10)*(x7187)); +IkReal x7191=((cj1)*(sj2)*(sj6)); +IkReal x7192=((cj1)*(sj2)*(sj5)); +if( IKabs(((gconst0)*(((((r00)*(sj0)*(x7189)))+(((IkReal(-1.00000000000000))*(x7189)*(x7190)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x7191)))+(((r20)*(x7188)))+(((cj0)*(r11)*(x7191)))+(((IkReal(-1.00000000000000))*(r21)*(x7186))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst0)*(((((IkReal(-1.00000000000000))*(cj5)*(x7190)*(x7191)))+(((cj2)*(r22)*(sj5)))+(((cj5)*(r20)*(x7186)))+(((cj5)*(r21)*(x7188)))+(((r02)*(sj0)*(x7192)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7187)*(x7189)))+(((IkReal(-1.00000000000000))*(r12)*(x7187)*(x7192)))+(((r00)*(x7185)*(x7191)))+(((r01)*(x7185)*(x7189))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst0)*(((((r00)*(sj0)*(x7189)))+(((IkReal(-1.00000000000000))*(x7189)*(x7190)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x7191)))+(((r20)*(x7188)))+(((cj0)*(r11)*(x7191)))+(((IkReal(-1.00000000000000))*(r21)*(x7186)))))), ((gconst0)*(((((IkReal(-1.00000000000000))*(cj5)*(x7190)*(x7191)))+(((cj2)*(r22)*(sj5)))+(((cj5)*(r20)*(x7186)))+(((cj5)*(r21)*(x7188)))+(((r02)*(sj0)*(x7192)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7187)*(x7189)))+(((IkReal(-1.00000000000000))*(r12)*(x7187)*(x7192)))+(((r00)*(x7185)*(x7191)))+(((r01)*(x7185)*(x7189))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x7193=IKsin(j4); +IkReal x7194=IKcos(j4); +IkReal x7195=((r00)*(sj6)); +IkReal x7196=((cj6)*(r01)); +IkReal x7197=((IkReal(1.00000000000000))*(cj0)); +IkReal x7198=((IkReal(1.00000000000000))*(sj0)); +IkReal x7199=((r10)*(sj6)); +IkReal x7200=((sj5)*(x7193)); +IkReal x7201=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x7202=((cj5)*(x7193)); +IkReal x7203=((cj6)*(x7194)); +IkReal x7204=((sj0)*(x7202)); +IkReal x7205=((r01)*(sj6)*(x7194)); +IkReal x7206=((r11)*(sj6)*(x7194)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r20)*(x7203)))+(((IkReal(-1.00000000000000))*(cj1)*(sj2)))+(((cj6)*(r21)*(x7202)))+(((r21)*(sj6)*(x7194)))+(((r22)*(x7200)))+(((r20)*(sj6)*(x7202)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x7197)*(x7199)*(x7202)))+(((sj0)*(x7205)))+(((IkReal(-1.00000000000000))*(x7197)*(x7206)))+(((IkReal(-1.00000000000000))*(r00)*(x7198)*(x7203)))+(((x7195)*(x7204)))+(((IkReal(-1.00000000000000))*(r12)*(x7197)*(x7200)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7197)*(x7202)))+(((r02)*(sj0)*(x7200)))+(cj2)+(((x7196)*(x7204)))+(((cj0)*(r10)*(x7203)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7196)*(x7197)*(x7202)))+(((IkReal(-1.00000000000000))*(x7195)*(x7197)*(x7202)))+(((IkReal(-1.00000000000000))*(r12)*(x7198)*(x7200)))+(((IkReal(-1.00000000000000))*(x7198)*(x7199)*(x7202)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7198)*(x7202)))+(((IkReal(-1.00000000000000))*(r02)*(x7197)*(x7200)))+(((cj0)*(r00)*(x7203)))+(((IkReal(-1.00000000000000))*(x7198)*(x7206)))+(((r10)*(sj0)*(x7203)))+(((sj1)*(sj2)))+(((IkReal(-1.00000000000000))*(x7197)*(x7205)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst4; +gconst4=IKsign((((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2)))))); +dummyeval[0]=(((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2))))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x7207=(cj1)*(cj1); +IkReal x7208=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x7207)))+(((cj2)*(x7208)))); +dummyeval[1]=((x7208)+(x7207)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +dummyeval[0]=sj2; +dummyeval[1]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x7209=((cj5)*(sj4)); +IkReal x7210=((IkReal(1.00000000000000))*(sj6)); +IkReal x7211=((r10)*(sj0)); +IkReal x7212=((sj4)*(sj5)); +IkReal x7213=((cj4)*(cj5)); +IkReal x7214=((IkReal(1.00000000000000))*(r02)); +IkReal x7215=((IkReal(0.374290000000000))*(cj0)); +IkReal x7216=((cj5)*(r12)); +IkReal x7217=((cj6)*(sj5)); +IkReal x7218=((cj0)*(r11)); +IkReal x7219=((cj5)*(sj0)); +IkReal x7220=((r20)*(sj6)); +IkReal x7221=((IkReal(1.00000000000000))*(sj0)); +IkReal x7222=((IkReal(1.00000000000000))*(cj6)); +IkReal x7223=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7224=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7225=((sj5)*(sj6)); +IkReal x7226=((cj0)*(r10)); +IkReal x7227=((cj4)*(cj6)); +IkReal x7228=((cj0)*(r01)); +IkReal x7229=((cj0)*(r00)); +IkReal x7230=((cj6)*(r21)); +IkReal x7231=((IkReal(0.374290000000000))*(sj0)); +IkReal x7232=((IkReal(0.374290000000000))*(sj5)); +IkReal x7233=((cj6)*(r11)); +IkReal x7234=((sj0)*(sj4)); +IkReal x7235=((cj4)*(sj5)); +IkReal x7236=((cj4)*(sj6)); +IkReal x7237=((IkReal(1.00000000000000))*(cj0)); +IkReal x7238=((r02)*(sj0)); +IkReal x7239=((r00)*(sj0)*(sj6)); +IkReal x7240=((cj6)*(r01)*(sj0)); +IkReal x7241=((r00)*(x7227)); +IkReal x7242=((r12)*(x7237)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x7209)*(x7230)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7222)))+(((r22)*(x7212)))+(((r21)*(x7236)))+(((x7209)*(x7220)))); +evalcond[2]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(0.374290000000000))*(r21)*(x7217)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x7220)*(x7232)))+(((IkReal(-1.00000000000000))*(x7223)*(x7230)))+(((IkReal(-1.00000000000000))*(x7220)*(x7223)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x7224)))+(((IkReal(0.0690000000000000))*(cj1)))); +evalcond[3]=((((r01)*(sj0)*(x7217)))+(((cj0)*(x7216)))+(((IkReal(-1.00000000000000))*(x7214)*(x7219)))+(((IkReal(-1.00000000000000))*(x7217)*(x7218)))+(((r00)*(sj0)*(x7225)))+(((IkReal(-1.00000000000000))*(sj5)*(x7210)*(x7226)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x7209)*(x7210)*(x7226)))+(((x7209)*(x7239)))+(((x7226)*(x7227)))+(((IkReal(-1.00000000000000))*(x7221)*(x7241)))+(((x7212)*(x7238)))+(((x7209)*(x7240)))+(((IkReal(-1.00000000000000))*(cj4)*(x7210)*(x7218)))+(((IkReal(-1.00000000000000))*(x7212)*(x7242)))+(((r01)*(sj0)*(x7236)))+(((IkReal(-1.00000000000000))*(x7209)*(x7218)*(x7222)))); +evalcond[5]=((((x7235)*(x7238)))+(((IkReal(-1.00000000000000))*(x7210)*(x7213)*(x7226)))+(((x7213)*(x7239)))+(((IkReal(-1.00000000000000))*(r01)*(x7210)*(x7234)))+(((x7213)*(x7240)))+(((sj4)*(sj6)*(x7218)))+(((IkReal(-1.00000000000000))*(x7235)*(x7242)))+(((IkReal(-1.00000000000000))*(sj4)*(x7222)*(x7226)))+(((IkReal(-1.00000000000000))*(x7213)*(x7218)*(x7222)))+(((cj6)*(r00)*(x7234)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x7209)*(x7210)*(x7211)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x7210)))+(((IkReal(-1.00000000000000))*(x7209)*(x7210)*(x7229)))+(((IkReal(-1.00000000000000))*(x7209)*(x7221)*(x7233)))+(((x7227)*(x7229)))+(((IkReal(-1.00000000000000))*(cj0)*(x7212)*(x7214)))+(((x7211)*(x7227)))+(((IkReal(-1.00000000000000))*(r12)*(x7212)*(x7221)))+(((IkReal(-1.00000000000000))*(cj4)*(x7210)*(x7228)))+(((IkReal(-1.00000000000000))*(x7209)*(x7222)*(x7228)))); +evalcond[7]=((((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x7219)))+(((IkReal(-1.00000000000000))*(x7224)*(x7238)))+(((IkReal(-1.00000000000000))*(py)*(x7237)))+(((cj0)*(r12)*(x7224)))+(((r01)*(x7217)*(x7231)))+(((IkReal(-0.374290000000000))*(r02)*(x7219)))+(((sj6)*(x7223)*(x7226)))+(((IkReal(-1.00000000000000))*(r11)*(x7215)*(x7217)))+(((cj6)*(x7218)*(x7223)))+(((r00)*(x7225)*(x7231)))+(((x7215)*(x7216)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7219)))+(((IkReal(-1.00000000000000))*(r10)*(x7215)*(x7225)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-0.0690000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(py)*(x7221)))+(((IkReal(-1.00000000000000))*(px)*(x7237)))+(((IkReal(-1.00000000000000))*(r11)*(x7217)*(x7231)))+(((cj5)*(r02)*(x7215)))+(((cj0)*(r02)*(x7224)))+(((sj6)*(x7211)*(x7223)))+(((IkReal(-0.374290000000000))*(x7211)*(x7225)))+(((IkReal(-1.00000000000000))*(r01)*(x7215)*(x7217)))+(((x7216)*(x7231)))+(((IkReal(0.0100000000000000))*(x7219)*(x7233)))+(((IkReal(-1.00000000000000))*(r00)*(x7215)*(x7225)))+(((r12)*(sj0)*(x7224)))+(((cj6)*(x7223)*(x7228)))+(((IkReal(0.364420000000000))*(cj1)))+(((sj6)*(x7223)*(x7229)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst5; +gconst5=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst6; +gconst6=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7243=((sj5)*(sj6)); +IkReal x7244=((IkReal(1.00000000000000))*(sj0)); +IkReal x7245=((cj5)*(r12)); +IkReal x7246=((cj0)*(r00)); +IkReal x7247=((cj0)*(cj1)); +IkReal x7248=((cj6)*(sj5)); +IkReal x7249=((cj5)*(r02)); +IkReal x7250=((IkReal(1.00000000000000))*(cj1)); +IkReal x7251=((sj0)*(sj1)); +IkReal x7252=((cj0)*(sj1)); +IkReal x7253=((cj5)*(r22)); +if( IKabs(((gconst6)*(((((cj1)*(r20)*(x7243)))+(((IkReal(-1.00000000000000))*(x7249)*(x7252)))+(((IkReal(-1.00000000000000))*(x7250)*(x7253)))+(((r11)*(x7248)*(x7251)))+(((sj1)*(x7243)*(x7246)))+(((r01)*(x7248)*(x7252)))+(((cj1)*(r21)*(x7248)))+(((r10)*(x7243)*(x7251)))+(((IkReal(-1.00000000000000))*(sj1)*(x7244)*(x7245))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst6)*(((((IkReal(-1.00000000000000))*(sj1)*(x7253)))+(((r21)*(sj1)*(x7248)))+(((r20)*(sj1)*(x7243)))+(((x7247)*(x7249)))+(((IkReal(-1.00000000000000))*(r01)*(x7247)*(x7248)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x7244)*(x7248)))+(((cj1)*(sj0)*(x7245)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x7243)*(x7244)))+(((IkReal(-1.00000000000000))*(x7243)*(x7246)*(x7250))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst6)*(((((cj1)*(r20)*(x7243)))+(((IkReal(-1.00000000000000))*(x7249)*(x7252)))+(((IkReal(-1.00000000000000))*(x7250)*(x7253)))+(((r11)*(x7248)*(x7251)))+(((sj1)*(x7243)*(x7246)))+(((r01)*(x7248)*(x7252)))+(((cj1)*(r21)*(x7248)))+(((r10)*(x7243)*(x7251)))+(((IkReal(-1.00000000000000))*(sj1)*(x7244)*(x7245)))))), ((gconst6)*(((((IkReal(-1.00000000000000))*(sj1)*(x7253)))+(((r21)*(sj1)*(x7248)))+(((r20)*(sj1)*(x7243)))+(((x7247)*(x7249)))+(((IkReal(-1.00000000000000))*(r01)*(x7247)*(x7248)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x7244)*(x7248)))+(((cj1)*(sj0)*(x7245)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x7243)*(x7244)))+(((IkReal(-1.00000000000000))*(x7243)*(x7246)*(x7250))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7254=IKcos(j3); +IkReal x7255=IKsin(j3); +IkReal x7256=((IkReal(1.00000000000000))*(cj4)); +IkReal x7257=((sj0)*(sj5)); +IkReal x7258=((cj0)*(cj5)); +IkReal x7259=((cj6)*(r01)); +IkReal x7260=((r00)*(sj6)); +IkReal x7261=((cj6)*(r11)); +IkReal x7262=((cj5)*(sj0)); +IkReal x7263=((cj6)*(sj4)); +IkReal x7264=((sj4)*(sj6)); +IkReal x7265=((cj4)*(cj5)); +IkReal x7266=((cj6)*(r21)); +IkReal x7267=((r20)*(sj6)); +IkReal x7268=((r10)*(sj6)); +IkReal x7269=((cj1)*(x7254)); +IkReal x7270=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x7271=((IkReal(1.00000000000000))*(x7255)); +IkReal x7272=((IkReal(1.00000000000000))*(sj1)*(x7254)); +IkReal x7273=((cj1)*(x7271)); +IkReal x7274=((x7272)+(x7273)); +evalcond[0]=((((sj5)*(x7267)))+(((sj5)*(x7266)))+(((IkReal(-1.00000000000000))*(x7274)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((x7265)*(x7266)))+(((IkReal(-1.00000000000000))*(sj1)*(x7271)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7263)))+(x7269)+(((x7265)*(x7267)))+(((IkReal(-1.00000000000000))*(r21)*(x7264)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7269)))+(((sj1)*(x7255)))+(((r02)*(x7258)))+(((r12)*(x7262)))+(((IkReal(-1.00000000000000))*(x7259)*(x7270)))+(((IkReal(-1.00000000000000))*(x7260)*(x7270)))+(((IkReal(-1.00000000000000))*(x7257)*(x7268)))+(((IkReal(-1.00000000000000))*(x7257)*(x7261)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7263)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7263)))+(((IkReal(-1.00000000000000))*(x7256)*(x7261)*(x7262)))+(((IkReal(-1.00000000000000))*(x7256)*(x7258)*(x7259)))+(((IkReal(-1.00000000000000))*(x7256)*(x7262)*(x7268)))+(((IkReal(-1.00000000000000))*(x7274)))+(((cj0)*(r01)*(x7264)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7256)))+(((IkReal(-1.00000000000000))*(x7256)*(x7258)*(x7260)))+(((IkReal(-1.00000000000000))*(r12)*(x7256)*(x7257)))+(((r11)*(sj0)*(x7264)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7275=((sj1)*(sj5)); +IkReal x7276=((r20)*(sj6)); +IkReal x7277=((cj4)*(r22)); +IkReal x7278=((IkReal(1.00000000000000))*(cj1)); +IkReal x7279=((cj5)*(sj1)); +IkReal x7280=((cj6)*(r21)); +IkReal x7281=((cj1)*(sj5)); +IkReal x7282=((cj4)*(cj5)); +IkReal x7283=((cj6)*(r20)*(sj4)); +IkReal x7284=((r21)*(sj4)*(sj6)); +if( IKabs(((gconst5)*(((((x7276)*(x7281)))+(((x7280)*(x7281)))+(((x7275)*(x7277)))+(((sj1)*(x7283)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x7278)))+(((cj4)*(x7279)*(x7280)))+(((cj4)*(x7276)*(x7279)))+(((IkReal(-1.00000000000000))*(sj1)*(x7284))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst5)*(((((IkReal(-1.00000000000000))*(r22)*(x7279)))+(((IkReal(-1.00000000000000))*(x7278)*(x7280)*(x7282)))+(((cj1)*(x7284)))+(((x7275)*(x7280)))+(((IkReal(-1.00000000000000))*(sj5)*(x7277)*(x7278)))+(((IkReal(-1.00000000000000))*(x7276)*(x7278)*(x7282)))+(((x7275)*(x7276)))+(((IkReal(-1.00000000000000))*(x7278)*(x7283))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst5)*(((((x7276)*(x7281)))+(((x7280)*(x7281)))+(((x7275)*(x7277)))+(((sj1)*(x7283)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x7278)))+(((cj4)*(x7279)*(x7280)))+(((cj4)*(x7276)*(x7279)))+(((IkReal(-1.00000000000000))*(sj1)*(x7284)))))), ((gconst5)*(((((IkReal(-1.00000000000000))*(r22)*(x7279)))+(((IkReal(-1.00000000000000))*(x7278)*(x7280)*(x7282)))+(((cj1)*(x7284)))+(((x7275)*(x7280)))+(((IkReal(-1.00000000000000))*(sj5)*(x7277)*(x7278)))+(((IkReal(-1.00000000000000))*(x7276)*(x7278)*(x7282)))+(((x7275)*(x7276)))+(((IkReal(-1.00000000000000))*(x7278)*(x7283))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7285=IKcos(j3); +IkReal x7286=IKsin(j3); +IkReal x7287=((IkReal(1.00000000000000))*(cj4)); +IkReal x7288=((sj0)*(sj5)); +IkReal x7289=((cj0)*(cj5)); +IkReal x7290=((cj6)*(r01)); +IkReal x7291=((r00)*(sj6)); +IkReal x7292=((cj6)*(r11)); +IkReal x7293=((cj5)*(sj0)); +IkReal x7294=((cj6)*(sj4)); +IkReal x7295=((sj4)*(sj6)); +IkReal x7296=((cj4)*(cj5)); +IkReal x7297=((cj6)*(r21)); +IkReal x7298=((r20)*(sj6)); +IkReal x7299=((r10)*(sj6)); +IkReal x7300=((cj1)*(x7285)); +IkReal x7301=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x7302=((IkReal(1.00000000000000))*(x7286)); +IkReal x7303=((IkReal(1.00000000000000))*(sj1)*(x7285)); +IkReal x7304=((cj1)*(x7302)); +IkReal x7305=((x7303)+(x7304)); +evalcond[0]=((((sj5)*(x7298)))+(((sj5)*(x7297)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x7305)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x7302)))+(((IkReal(-1.00000000000000))*(r21)*(x7295)))+(((cj4)*(r22)*(sj5)))+(x7300)+(((x7296)*(x7297)))+(((r20)*(x7294)))+(((x7296)*(x7298)))); +evalcond[2]=((((sj1)*(x7286)))+(((IkReal(-1.00000000000000))*(x7288)*(x7292)))+(((IkReal(-1.00000000000000))*(x7290)*(x7301)))+(((r02)*(x7289)))+(((r12)*(x7293)))+(((IkReal(-1.00000000000000))*(x7300)))+(((IkReal(-1.00000000000000))*(x7291)*(x7301)))+(((IkReal(-1.00000000000000))*(x7288)*(x7299)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7287)*(x7292)*(x7293)))+(((IkReal(-1.00000000000000))*(x7287)*(x7293)*(x7299)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7294)))+(((IkReal(-1.00000000000000))*(x7287)*(x7289)*(x7290)))+(((IkReal(-1.00000000000000))*(r12)*(x7287)*(x7288)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7294)))+(((cj0)*(r01)*(x7295)))+(((r11)*(sj0)*(x7295)))+(((IkReal(-1.00000000000000))*(x7305)))+(((IkReal(-1.00000000000000))*(x7287)*(x7289)*(x7291)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7287)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x7306=((cj5)*(sj4)); +IkReal x7307=((IkReal(1.00000000000000))*(sj6)); +IkReal x7308=((r10)*(sj0)); +IkReal x7309=((sj4)*(sj5)); +IkReal x7310=((cj4)*(cj5)); +IkReal x7311=((IkReal(1.00000000000000))*(r02)); +IkReal x7312=((IkReal(0.374290000000000))*(cj0)); +IkReal x7313=((cj5)*(r12)); +IkReal x7314=((cj6)*(sj5)); +IkReal x7315=((cj0)*(r11)); +IkReal x7316=((cj5)*(sj0)); +IkReal x7317=((r20)*(sj6)); +IkReal x7318=((IkReal(1.00000000000000))*(sj0)); +IkReal x7319=((IkReal(1.00000000000000))*(cj6)); +IkReal x7320=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7321=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7322=((sj5)*(sj6)); +IkReal x7323=((cj0)*(r10)); +IkReal x7324=((cj4)*(cj6)); +IkReal x7325=((cj0)*(r01)); +IkReal x7326=((cj0)*(r00)); +IkReal x7327=((cj6)*(r21)); +IkReal x7328=((IkReal(0.374290000000000))*(sj0)); +IkReal x7329=((IkReal(0.374290000000000))*(sj5)); +IkReal x7330=((cj6)*(r11)); +IkReal x7331=((sj0)*(sj4)); +IkReal x7332=((cj4)*(sj5)); +IkReal x7333=((cj4)*(sj6)); +IkReal x7334=((IkReal(1.00000000000000))*(cj0)); +IkReal x7335=((r02)*(sj0)); +IkReal x7336=((r00)*(sj0)*(sj6)); +IkReal x7337=((cj6)*(r01)*(sj0)); +IkReal x7338=((r00)*(x7324)); +IkReal x7339=((r12)*(x7334)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((x7306)*(x7317)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7319)))+(((x7306)*(x7327)))+(((r22)*(x7309)))+(((r21)*(x7333)))); +evalcond[2]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.0690000000000000))*(cj1)))+(((IkReal(0.374290000000000))*(r21)*(x7314)))+(((IkReal(-1.00000000000000))*(x7317)*(x7320)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x7321)))+(pz)+(((IkReal(-1.00000000000000))*(x7320)*(x7327)))+(((x7317)*(x7329)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x7307)*(x7323)))+(((IkReal(-1.00000000000000))*(x7311)*(x7316)))+(((r00)*(sj0)*(x7322)))+(((r01)*(sj0)*(x7314)))+(((cj0)*(x7313)))+(((IkReal(-1.00000000000000))*(x7314)*(x7315)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x7306)*(x7315)*(x7319)))+(((x7323)*(x7324)))+(((r01)*(sj0)*(x7333)))+(((x7306)*(x7337)))+(((IkReal(-1.00000000000000))*(cj4)*(x7307)*(x7315)))+(((x7309)*(x7335)))+(((IkReal(-1.00000000000000))*(x7309)*(x7339)))+(((x7306)*(x7336)))+(((IkReal(-1.00000000000000))*(x7318)*(x7338)))+(((IkReal(-1.00000000000000))*(x7306)*(x7307)*(x7323)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7307)*(x7310)*(x7323)))+(((sj4)*(sj6)*(x7315)))+(((x7310)*(x7337)))+(((cj6)*(r00)*(x7331)))+(((IkReal(-1.00000000000000))*(x7332)*(x7339)))+(((x7332)*(x7335)))+(((IkReal(-1.00000000000000))*(x7310)*(x7315)*(x7319)))+(((IkReal(-1.00000000000000))*(sj4)*(x7319)*(x7323)))+(((x7310)*(x7336)))+(((IkReal(-1.00000000000000))*(r01)*(x7307)*(x7331)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x7307)*(x7325)))+(((x7324)*(x7326)))+(((x7308)*(x7324)))+(((IkReal(-1.00000000000000))*(x7306)*(x7307)*(x7326)))+(((IkReal(-1.00000000000000))*(r12)*(x7309)*(x7318)))+(((IkReal(-1.00000000000000))*(x7306)*(x7307)*(x7308)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x7307)))+(((IkReal(-1.00000000000000))*(x7306)*(x7318)*(x7330)))+(((IkReal(-1.00000000000000))*(cj0)*(x7309)*(x7311)))+(((IkReal(-1.00000000000000))*(x7306)*(x7319)*(x7325)))); +evalcond[7]=((((sj6)*(x7320)*(x7323)))+(((IkReal(-1.00000000000000))*(x7321)*(x7335)))+(((IkReal(-1.00000000000000))*(r11)*(x7312)*(x7314)))+(((cj0)*(r12)*(x7321)))+(((r01)*(x7314)*(x7328)))+(((x7312)*(x7313)))+(((r00)*(x7322)*(x7328)))+(((IkReal(-1.00000000000000))*(r10)*(x7312)*(x7322)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x7316)))+(((IkReal(-1.00000000000000))*(py)*(x7334)))+(((px)*(sj0)))+(((cj6)*(x7315)*(x7320)))+(((IkReal(-0.374290000000000))*(r02)*(x7316)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7316)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-0.374290000000000))*(x7308)*(x7322)))+(((cj5)*(r02)*(x7312)))+(((sj6)*(x7308)*(x7320)))+(((IkReal(0.0690000000000000))*(sj1)))+(((x7313)*(x7328)))+(((sj6)*(x7320)*(x7326)))+(((IkReal(-1.00000000000000))*(r11)*(x7314)*(x7328)))+(((r12)*(sj0)*(x7321)))+(((IkReal(-1.00000000000000))*(r00)*(x7312)*(x7322)))+(((IkReal(-1.00000000000000))*(py)*(x7318)))+(((IkReal(-1.00000000000000))*(px)*(x7334)))+(((cj0)*(r02)*(x7321)))+(((IkReal(-1.00000000000000))*(r01)*(x7312)*(x7314)))+(((IkReal(0.0100000000000000))*(x7316)*(x7330)))+(((cj6)*(x7320)*(x7325)))+(((IkReal(0.364420000000000))*(cj1)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst7; +gconst7=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst8; +gconst8=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7340=((IkReal(1.00000000000000))*(sj0)); +IkReal x7341=((cj6)*(r21)); +IkReal x7342=((cj0)*(r00)); +IkReal x7343=((cj5)*(sj1)); +IkReal x7344=((r12)*(sj0)); +IkReal x7345=((cj1)*(cj5)); +IkReal x7346=((cj0)*(r02)); +IkReal x7347=((sj1)*(sj5)); +IkReal x7348=((cj6)*(r11)); +IkReal x7349=((cj1)*(sj5)); +IkReal x7350=((sj6)*(x7347)); +IkReal x7351=((IkReal(1.00000000000000))*(x7349)); +IkReal x7352=((cj0)*(cj6)*(r01)); +if( IKabs(((gconst8)*(((((x7343)*(x7344)))+(((IkReal(-1.00000000000000))*(x7342)*(x7350)))+(((IkReal(-1.00000000000000))*(x7341)*(x7351)))+(((IkReal(-1.00000000000000))*(x7340)*(x7347)*(x7348)))+(((x7343)*(x7346)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x7351)))+(((r22)*(x7345)))+(((IkReal(-1.00000000000000))*(x7347)*(x7352)))+(((IkReal(-1.00000000000000))*(r10)*(x7340)*(x7350))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst8)*(((((x7341)*(x7347)))+(((r20)*(x7350)))+(((x7344)*(x7345)))+(((IkReal(-1.00000000000000))*(sj6)*(x7342)*(x7351)))+(((IkReal(-1.00000000000000))*(x7340)*(x7348)*(x7349)))+(((x7345)*(x7346)))+(((IkReal(-1.00000000000000))*(r22)*(x7343)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x7340)*(x7349)))+(((IkReal(-1.00000000000000))*(x7351)*(x7352))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst8)*(((((x7343)*(x7344)))+(((IkReal(-1.00000000000000))*(x7342)*(x7350)))+(((IkReal(-1.00000000000000))*(x7341)*(x7351)))+(((IkReal(-1.00000000000000))*(x7340)*(x7347)*(x7348)))+(((x7343)*(x7346)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x7351)))+(((r22)*(x7345)))+(((IkReal(-1.00000000000000))*(x7347)*(x7352)))+(((IkReal(-1.00000000000000))*(r10)*(x7340)*(x7350)))))), ((gconst8)*(((((x7341)*(x7347)))+(((r20)*(x7350)))+(((x7344)*(x7345)))+(((IkReal(-1.00000000000000))*(sj6)*(x7342)*(x7351)))+(((IkReal(-1.00000000000000))*(x7340)*(x7348)*(x7349)))+(((x7345)*(x7346)))+(((IkReal(-1.00000000000000))*(r22)*(x7343)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x7340)*(x7349)))+(((IkReal(-1.00000000000000))*(x7351)*(x7352))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7353=IKsin(j3); +IkReal x7354=IKcos(j3); +IkReal x7355=((IkReal(1.00000000000000))*(cj4)); +IkReal x7356=((sj0)*(sj5)); +IkReal x7357=((cj0)*(cj5)); +IkReal x7358=((cj6)*(r01)); +IkReal x7359=((r00)*(sj6)); +IkReal x7360=((cj6)*(r11)); +IkReal x7361=((cj5)*(sj0)); +IkReal x7362=((cj6)*(sj4)); +IkReal x7363=((sj4)*(sj6)); +IkReal x7364=((cj4)*(cj5)); +IkReal x7365=((cj6)*(r21)); +IkReal x7366=((r20)*(sj6)); +IkReal x7367=((r10)*(sj6)); +IkReal x7368=((cj1)*(x7353)); +IkReal x7369=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x7370=((IkReal(1.00000000000000))*(x7354)); +IkReal x7371=((IkReal(1.00000000000000))*(sj1)*(x7353)); +IkReal x7372=((cj1)*(x7370)); +IkReal x7373=((x7372)+(x7371)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x7370)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7365)))+(((sj5)*(x7366)))+(x7368)); +evalcond[1]=((((IkReal(-1.00000000000000))*(x7373)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7362)))+(((x7364)*(x7365)))+(((IkReal(-1.00000000000000))*(r21)*(x7363)))+(((x7364)*(x7366)))); +evalcond[2]=((((r12)*(x7361)))+(((IkReal(-1.00000000000000))*(x7356)*(x7367)))+(((IkReal(-1.00000000000000))*(x7373)))+(((IkReal(-1.00000000000000))*(x7359)*(x7369)))+(((IkReal(-1.00000000000000))*(x7358)*(x7369)))+(((r02)*(x7357)))+(((IkReal(-1.00000000000000))*(x7356)*(x7360)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7355)*(x7357)*(x7358)))+(((r11)*(sj0)*(x7363)))+(((IkReal(-1.00000000000000))*(x7355)*(x7357)*(x7359)))+(((IkReal(-1.00000000000000))*(r12)*(x7355)*(x7356)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7355)))+(((IkReal(-1.00000000000000))*(x7355)*(x7360)*(x7361)))+(((cj0)*(r01)*(x7363)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7362)))+(((IkReal(-1.00000000000000))*(x7355)*(x7361)*(x7367)))+(((sj1)*(x7354)))+(((IkReal(-1.00000000000000))*(x7368)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7362)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7374=((sj1)*(sj6)); +IkReal x7375=((r20)*(sj5)); +IkReal x7376=((IkReal(1.00000000000000))*(r21)); +IkReal x7377=((cj1)*(cj6)); +IkReal x7378=((r20)*(sj4)); +IkReal x7379=((cj6)*(sj1)); +IkReal x7380=((cj4)*(cj5)); +IkReal x7381=((cj1)*(sj6)); +IkReal x7382=((cj5)*(r22)); +IkReal x7383=((cj4)*(r22)*(sj5)); +if( IKabs(((gconst7)*(((((cj1)*(x7382)))+(((IkReal(-1.00000000000000))*(sj4)*(x7374)*(x7376)))+(((IkReal(-1.00000000000000))*(x7375)*(x7381)))+(((r20)*(x7374)*(x7380)))+(((x7378)*(x7379)))+(((sj1)*(x7383)))+(((r21)*(x7379)*(x7380)))+(((IkReal(-1.00000000000000))*(sj5)*(x7376)*(x7377))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst7)*(((((r21)*(x7377)*(x7380)))+(((cj1)*(x7383)))+(((x7374)*(x7375)))+(((x7377)*(x7378)))+(((r20)*(x7380)*(x7381)))+(((r21)*(sj5)*(x7379)))+(((IkReal(-1.00000000000000))*(sj1)*(x7382)))+(((IkReal(-1.00000000000000))*(sj4)*(x7376)*(x7381))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst7)*(((((cj1)*(x7382)))+(((IkReal(-1.00000000000000))*(sj4)*(x7374)*(x7376)))+(((IkReal(-1.00000000000000))*(x7375)*(x7381)))+(((r20)*(x7374)*(x7380)))+(((x7378)*(x7379)))+(((sj1)*(x7383)))+(((r21)*(x7379)*(x7380)))+(((IkReal(-1.00000000000000))*(sj5)*(x7376)*(x7377)))))), ((gconst7)*(((((r21)*(x7377)*(x7380)))+(((cj1)*(x7383)))+(((x7374)*(x7375)))+(((x7377)*(x7378)))+(((r20)*(x7380)*(x7381)))+(((r21)*(sj5)*(x7379)))+(((IkReal(-1.00000000000000))*(sj1)*(x7382)))+(((IkReal(-1.00000000000000))*(sj4)*(x7376)*(x7381))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7384=IKsin(j3); +IkReal x7385=IKcos(j3); +IkReal x7386=((IkReal(1.00000000000000))*(cj4)); +IkReal x7387=((sj0)*(sj5)); +IkReal x7388=((cj0)*(cj5)); +IkReal x7389=((cj6)*(r01)); +IkReal x7390=((r00)*(sj6)); +IkReal x7391=((cj6)*(r11)); +IkReal x7392=((cj5)*(sj0)); +IkReal x7393=((cj6)*(sj4)); +IkReal x7394=((sj4)*(sj6)); +IkReal x7395=((cj4)*(cj5)); +IkReal x7396=((cj6)*(r21)); +IkReal x7397=((r20)*(sj6)); +IkReal x7398=((r10)*(sj6)); +IkReal x7399=((cj1)*(x7384)); +IkReal x7400=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x7401=((IkReal(1.00000000000000))*(x7385)); +IkReal x7402=((IkReal(1.00000000000000))*(sj1)*(x7384)); +IkReal x7403=((cj1)*(x7401)); +IkReal x7404=((x7403)+(x7402)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x7401)))+(((sj5)*(x7396)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x7399)+(((sj5)*(x7397)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x7394)))+(((x7395)*(x7396)))+(((r20)*(x7393)))+(((IkReal(-1.00000000000000))*(x7404)))+(((cj4)*(r22)*(sj5)))+(((x7395)*(x7397)))); +evalcond[2]=((((r02)*(x7388)))+(((IkReal(-1.00000000000000))*(x7404)))+(((r12)*(x7392)))+(((IkReal(-1.00000000000000))*(x7390)*(x7400)))+(((IkReal(-1.00000000000000))*(x7389)*(x7400)))+(((IkReal(-1.00000000000000))*(x7387)*(x7398)))+(((IkReal(-1.00000000000000))*(x7387)*(x7391)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7386)*(x7391)*(x7392)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7393)))+(((IkReal(-1.00000000000000))*(x7386)*(x7388)*(x7389)))+(((IkReal(-1.00000000000000))*(x7386)*(x7388)*(x7390)))+(((sj1)*(x7385)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7386)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7393)))+(((cj0)*(r01)*(x7394)))+(((r11)*(sj0)*(x7394)))+(((IkReal(-1.00000000000000))*(x7386)*(x7392)*(x7398)))+(((IkReal(-1.00000000000000))*(x7399)))+(((IkReal(-1.00000000000000))*(r12)*(x7386)*(x7387)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x7405=((IkReal(1.00000000000000))*(cj0)); +IkReal x7406=((cj4)*(sj6)); +IkReal x7407=((sj0)*(sj4)); +IkReal x7408=((cj5)*(sj6)); +IkReal x7409=((sj4)*(sj5)); +IkReal x7410=((r12)*(sj5)); +IkReal x7411=((IkReal(0.374290000000000))*(cj5)); +IkReal x7412=((r02)*(sj0)); +IkReal x7413=((cj6)*(r21)); +IkReal x7414=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7415=((IkReal(1.00000000000000))*(sj0)); +IkReal x7416=((cj0)*(r10)); +IkReal x7417=((cj4)*(cj6)); +IkReal x7418=((r00)*(sj0)); +IkReal x7419=((IkReal(0.374290000000000))*(sj5)); +IkReal x7420=((cj0)*(r00)); +IkReal x7421=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7422=((cj0)*(r02)); +IkReal x7423=((cj5)*(sj4)); +IkReal x7424=((cj6)*(r01)); +IkReal x7425=((cj6)*(r11)); +IkReal x7426=((r10)*(sj0)); +IkReal x7427=((sj6)*(x7419)); +IkReal x7428=((cj0)*(cj6)*(x7419)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj2)))+(((x7413)*(x7423)))+(((r20)*(sj4)*(x7408)))+(((r21)*(x7406)))+(((r22)*(x7409)))+(((IkReal(-1.00000000000000))*(r20)*(x7417)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x7421)))+(((IkReal(-1.00000000000000))*(x7413)*(x7414)))+(pz)+(((r20)*(x7427)))+(((x7413)*(x7419)))+(((IkReal(0.0690000000000000))*(cj2)))+(((IkReal(-0.0100000000000000))*(r20)*(x7408)))+(((IkReal(-1.00000000000000))*(r22)*(x7411)))); +evalcond[3]=((((r01)*(sj0)*(x7406)))+(((r00)*(x7407)*(x7408)))+(((cj5)*(x7407)*(x7424)))+(((x7416)*(x7417)))+(((IkReal(-1.00000000000000))*(r11)*(x7405)*(x7406)))+(cj2)+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7405)*(x7408)))+(((IkReal(-1.00000000000000))*(r00)*(x7415)*(x7417)))+(((r02)*(sj5)*(x7407)))+(((IkReal(-1.00000000000000))*(r12)*(x7405)*(x7409)))+(((IkReal(-1.00000000000000))*(x7405)*(x7423)*(x7425)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r11)*(x7406)*(x7415)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7405)*(x7408)))+(((IkReal(-1.00000000000000))*(r02)*(x7405)*(x7409)))+(((x7417)*(x7420)))+(((IkReal(-1.00000000000000))*(r10)*(x7407)*(x7408)))+(((IkReal(-1.00000000000000))*(x7405)*(x7423)*(x7424)))+(((IkReal(-1.00000000000000))*(x7407)*(x7410)))+(((x7417)*(x7426)))+(((IkReal(-1.00000000000000))*(cj5)*(x7407)*(x7425)))+(((IkReal(-1.00000000000000))*(r01)*(x7405)*(x7406)))); +evalcond[5]=((((IkReal(-0.0100000000000000))*(x7408)*(x7418)))+(((IkReal(0.0100000000000000))*(x7408)*(x7416)))+(((IkReal(0.0100000000000000))*(cj0)*(x7410)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(py)*(x7405)))+(((cj0)*(r12)*(x7411)))+(((IkReal(-1.00000000000000))*(cj0)*(x7419)*(x7425)))+(((IkReal(-1.00000000000000))*(x7412)*(x7421)))+(((sj0)*(x7419)*(x7424)))+(((x7418)*(x7427)))+(((IkReal(-1.00000000000000))*(sj0)*(x7414)*(x7424)))+(((IkReal(-1.00000000000000))*(x7416)*(x7427)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x7411)*(x7412)))+(((cj0)*(x7414)*(x7425)))); +evalcond[6]=((IkReal(0.433420000000000))+(((cj0)*(x7414)*(x7424)))+(((IkReal(0.0100000000000000))*(x7408)*(x7420)))+(((IkReal(0.0100000000000000))*(sj0)*(x7410)))+(((IkReal(-1.00000000000000))*(x7420)*(x7427)))+(((x7421)*(x7422)))+(((IkReal(-1.00000000000000))*(px)*(x7405)))+(((IkReal(-1.00000000000000))*(py)*(x7415)))+(((IkReal(-1.00000000000000))*(x7426)*(x7427)))+(((IkReal(-1.00000000000000))*(cj0)*(x7419)*(x7424)))+(((IkReal(-1.00000000000000))*(sj0)*(x7419)*(x7425)))+(((x7411)*(x7422)))+(((IkReal(0.0100000000000000))*(x7408)*(x7426)))+(((sj0)*(x7414)*(x7425)))+(((r12)*(sj0)*(x7411)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst9; +gconst9=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x7429=((cj5)*(sj4)); +IkReal x7430=((IkReal(1.00000000000000))*(sj6)); +IkReal x7431=((r10)*(sj0)); +IkReal x7432=((sj4)*(sj5)); +IkReal x7433=((cj5)*(cj6)); +IkReal x7434=((r01)*(sj0)); +IkReal x7435=((IkReal(1.00000000000000))*(r02)); +IkReal x7436=((IkReal(0.374290000000000))*(cj0)); +IkReal x7437=((cj5)*(r12)); +IkReal x7438=((cj6)*(sj5)); +IkReal x7439=((cj0)*(r11)); +IkReal x7440=((cj5)*(sj0)); +IkReal x7441=((r20)*(sj6)); +IkReal x7442=((IkReal(1.00000000000000))*(sj0)); +IkReal x7443=((cj4)*(cj5)); +IkReal x7444=((IkReal(1.00000000000000))*(cj6)); +IkReal x7445=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7446=((sj5)*(sj6)); +IkReal x7447=((cj0)*(r10)); +IkReal x7448=((cj4)*(cj6)); +IkReal x7449=((cj0)*(r01)); +IkReal x7450=((IkReal(1.00000000000000))*(cj4)); +IkReal x7451=((cj0)*(r00)); +IkReal x7452=((IkReal(0.374290000000000))*(sj0)); +IkReal x7453=((cj0)*(r12)); +IkReal x7454=((IkReal(0.374290000000000))*(sj5)); +IkReal x7455=((cj4)*(sj6)); +IkReal x7456=((IkReal(1.00000000000000))*(cj0)); +IkReal x7457=((r02)*(sj0)); +IkReal x7458=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7459=((r11)*(sj0)); +IkReal x7460=((r00)*(sj0)*(sj6)); +IkReal x7461=((r00)*(x7448)); +IkReal x7462=((sj6)*(x7458)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x7429)*(x7441)))+(((r21)*(x7455)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7444)))+(((r22)*(x7432)))+(((cj6)*(r21)*(x7429)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x7438)))+(((IkReal(-1.00000000000000))*(x7441)*(x7458)))+(((IkReal(-0.0100000000000000))*(r21)*(x7433)))+(((x7441)*(x7454)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x7445)))); +evalcond[3]=((((r00)*(sj0)*(x7446)))+(((IkReal(-1.00000000000000))*(x7438)*(x7439)))+(((x7434)*(x7438)))+(((IkReal(-1.00000000000000))*(sj5)*(x7430)*(x7447)))+(((cj0)*(x7437)))+(((IkReal(-1.00000000000000))*(x7435)*(x7440)))); +evalcond[4]=((IkReal(1.00000000000000))+(((x7447)*(x7448)))+(((IkReal(-1.00000000000000))*(x7429)*(x7430)*(x7447)))+(((x7434)*(x7455)))+(((IkReal(-1.00000000000000))*(x7442)*(x7461)))+(((IkReal(-1.00000000000000))*(x7432)*(x7453)))+(((cj6)*(x7429)*(x7434)))+(((x7432)*(x7457)))+(((IkReal(-1.00000000000000))*(cj4)*(x7430)*(x7439)))+(((IkReal(-1.00000000000000))*(x7429)*(x7439)*(x7444)))+(((x7429)*(x7460)))); +evalcond[5]=((((cj4)*(sj5)*(x7457)))+(((cj4)*(x7433)*(x7434)))+(((IkReal(-1.00000000000000))*(sj5)*(x7450)*(x7453)))+(((r00)*(x7440)*(x7455)))+(((IkReal(-1.00000000000000))*(sj4)*(x7430)*(x7434)))+(((IkReal(-1.00000000000000))*(x7430)*(x7443)*(x7447)))+(((IkReal(-1.00000000000000))*(sj4)*(x7444)*(x7447)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x7433)*(x7439)*(x7450)))+(((sj4)*(sj6)*(x7439)))); +evalcond[6]=((((x7431)*(x7448)))+(((IkReal(-1.00000000000000))*(x7429)*(x7430)*(x7451)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7429)*(x7442)))+(((IkReal(-1.00000000000000))*(r12)*(x7432)*(x7442)))+(((IkReal(-1.00000000000000))*(cj4)*(x7430)*(x7459)))+(((IkReal(-1.00000000000000))*(x7429)*(x7444)*(x7449)))+(((x7448)*(x7451)))+(((IkReal(-1.00000000000000))*(cj0)*(x7432)*(x7435)))+(((IkReal(-1.00000000000000))*(x7429)*(x7430)*(x7431)))+(((IkReal(-1.00000000000000))*(cj4)*(x7430)*(x7449)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(py)*(x7456)))+(((IkReal(-1.00000000000000))*(r11)*(x7436)*(x7438)))+(((IkReal(-0.374290000000000))*(r02)*(x7440)))+(((IkReal(0.0100000000000000))*(x7433)*(x7439)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7440)))+(((IkReal(-0.0100000000000000))*(x7433)*(x7434)))+(((x7436)*(x7437)))+(((r00)*(x7446)*(x7452)))+(((x7447)*(x7462)))+(((px)*(sj0)))+(((IkReal(0.374290000000000))*(x7434)*(x7438)))+(((IkReal(-1.00000000000000))*(x7445)*(x7457)))+(((IkReal(-1.00000000000000))*(r10)*(x7436)*(x7446)))+(((x7445)*(x7453)))); +evalcond[8]=((IkReal(0.433420000000000))+(((cj5)*(r02)*(x7436)))+(((IkReal(-1.00000000000000))*(py)*(x7442)))+(((IkReal(-0.374290000000000))*(x7431)*(x7446)))+(((x7431)*(x7462)))+(((x7451)*(x7462)))+(((IkReal(-1.00000000000000))*(r01)*(x7436)*(x7438)))+(((IkReal(-1.00000000000000))*(r00)*(x7436)*(x7446)))+(((IkReal(0.0100000000000000))*(x7433)*(x7449)))+(((IkReal(0.0100000000000000))*(x7433)*(x7459)))+(((IkReal(-1.00000000000000))*(r11)*(x7438)*(x7452)))+(((x7437)*(x7452)))+(((cj0)*(r02)*(x7445)))+(((IkReal(-1.00000000000000))*(px)*(x7456)))+(((r12)*(sj0)*(x7445)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7463=((IkReal(1.00000000000000))*(cj4)); +IkReal x7464=((cj6)*(r21)); +IkReal x7465=((r20)*(sj6)); +if( IKabs(((((sj5)*(x7465)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7464))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7464)))+(((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7465)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x7465)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7464)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7464)))+(((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7465)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x7465)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7464)))), ((((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7464)))+(((IkReal(-1.00000000000000))*(cj5)*(x7463)*(x7465)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7463)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7466=IKcos(j3); +IkReal x7467=((IkReal(1.00000000000000))*(cj4)); +IkReal x7468=((sj0)*(sj5)); +IkReal x7469=((cj0)*(cj5)); +IkReal x7470=((cj6)*(r01)); +IkReal x7471=((r00)*(sj6)); +IkReal x7472=((cj6)*(r11)); +IkReal x7473=((cj5)*(sj0)); +IkReal x7474=((cj6)*(sj4)); +IkReal x7475=((sj4)*(sj6)); +IkReal x7476=((cj4)*(cj5)); +IkReal x7477=((cj6)*(r21)); +IkReal x7478=((r20)*(sj6)); +IkReal x7479=((r10)*(sj6)); +IkReal x7480=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x7481=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x7477)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7478)))+(((IkReal(-1.00000000000000))*(x7480)))); +evalcond[1]=((((x7476)*(x7477)))+(((x7476)*(x7478)))+(((IkReal(-1.00000000000000))*(r21)*(x7475)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7474)))+(x7466)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7471)*(x7481)))+(((IkReal(-1.00000000000000))*(x7468)*(x7472)))+(((IkReal(-1.00000000000000))*(x7468)*(x7479)))+(((IkReal(-1.00000000000000))*(x7470)*(x7481)))+(((IkReal(-1.00000000000000))*(x7466)))+(((r12)*(x7473)))+(((r02)*(x7469)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x7467)*(x7468)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7467)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7474)))+(((IkReal(-1.00000000000000))*(x7467)*(x7469)*(x7470)))+(((r11)*(sj0)*(x7475)))+(((IkReal(-1.00000000000000))*(x7467)*(x7472)*(x7473)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7474)))+(((IkReal(-1.00000000000000))*(x7480)))+(((cj0)*(r01)*(x7475)))+(((IkReal(-1.00000000000000))*(x7467)*(x7473)*(x7479)))+(((IkReal(-1.00000000000000))*(x7467)*(x7469)*(x7471)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7482=((cj5)*(sj4)); +IkReal x7483=((IkReal(1.00000000000000))*(sj6)); +IkReal x7484=((r10)*(sj0)); +IkReal x7485=((sj4)*(sj5)); +IkReal x7486=((cj5)*(cj6)); +IkReal x7487=((r01)*(sj0)); +IkReal x7488=((IkReal(1.00000000000000))*(r02)); +IkReal x7489=((IkReal(0.374290000000000))*(cj0)); +IkReal x7490=((cj5)*(r12)); +IkReal x7491=((cj6)*(sj5)); +IkReal x7492=((cj0)*(r11)); +IkReal x7493=((cj5)*(sj0)); +IkReal x7494=((r20)*(sj6)); +IkReal x7495=((IkReal(1.00000000000000))*(sj0)); +IkReal x7496=((cj4)*(cj5)); +IkReal x7497=((IkReal(1.00000000000000))*(cj6)); +IkReal x7498=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7499=((sj5)*(sj6)); +IkReal x7500=((cj0)*(r10)); +IkReal x7501=((cj4)*(cj6)); +IkReal x7502=((cj0)*(r01)); +IkReal x7503=((IkReal(1.00000000000000))*(cj4)); +IkReal x7504=((cj0)*(r00)); +IkReal x7505=((IkReal(0.374290000000000))*(sj0)); +IkReal x7506=((cj0)*(r12)); +IkReal x7507=((IkReal(0.374290000000000))*(sj5)); +IkReal x7508=((cj4)*(sj6)); +IkReal x7509=((IkReal(1.00000000000000))*(cj0)); +IkReal x7510=((r02)*(sj0)); +IkReal x7511=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7512=((r11)*(sj0)); +IkReal x7513=((r00)*(sj0)*(sj6)); +IkReal x7514=((r00)*(x7501)); +IkReal x7515=((sj6)*(x7511)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x7508)))+(((r22)*(x7485)))+(((x7482)*(x7494)))+(((cj6)*(r21)*(x7482)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7497)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((x7494)*(x7507)))+(((IkReal(0.374290000000000))*(r21)*(x7491)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x7498)))+(pz)+(((IkReal(-1.00000000000000))*(x7494)*(x7511)))+(((IkReal(-0.0100000000000000))*(r21)*(x7486)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7491)*(x7492)))+(((x7487)*(x7491)))+(((IkReal(-1.00000000000000))*(x7488)*(x7493)))+(((r00)*(sj0)*(x7499)))+(((cj0)*(x7490)))+(((IkReal(-1.00000000000000))*(sj5)*(x7483)*(x7500)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x7482)*(x7492)*(x7497)))+(((x7485)*(x7510)))+(((IkReal(-1.00000000000000))*(cj4)*(x7483)*(x7492)))+(((cj6)*(x7482)*(x7487)))+(((x7500)*(x7501)))+(((x7482)*(x7513)))+(((IkReal(-1.00000000000000))*(x7485)*(x7506)))+(((IkReal(-1.00000000000000))*(x7482)*(x7483)*(x7500)))+(((IkReal(-1.00000000000000))*(x7495)*(x7514)))+(((x7487)*(x7508)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7483)*(x7496)*(x7500)))+(((r00)*(x7493)*(x7508)))+(((cj4)*(sj5)*(x7510)))+(((cj4)*(x7486)*(x7487)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((sj4)*(sj6)*(x7492)))+(((IkReal(-1.00000000000000))*(sj4)*(x7497)*(x7500)))+(((IkReal(-1.00000000000000))*(x7486)*(x7492)*(x7503)))+(((IkReal(-1.00000000000000))*(sj5)*(x7503)*(x7506)))+(((IkReal(-1.00000000000000))*(sj4)*(x7483)*(x7487)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x7483)*(x7512)))+(((x7484)*(x7501)))+(((IkReal(-1.00000000000000))*(cj4)*(x7483)*(x7502)))+(((IkReal(-1.00000000000000))*(x7482)*(x7483)*(x7504)))+(((x7501)*(x7504)))+(((IkReal(-1.00000000000000))*(x7482)*(x7483)*(x7484)))+(((IkReal(-1.00000000000000))*(r12)*(x7485)*(x7495)))+(((IkReal(-1.00000000000000))*(cj0)*(x7485)*(x7488)))+(((IkReal(-1.00000000000000))*(x7482)*(x7497)*(x7502)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7482)*(x7495)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x7498)*(x7510)))+(((IkReal(-1.00000000000000))*(r10)*(x7489)*(x7499)))+(((x7489)*(x7490)))+(((IkReal(-0.374290000000000))*(r02)*(x7493)))+(((IkReal(-1.00000000000000))*(py)*(x7509)))+(((x7500)*(x7515)))+(((IkReal(-0.0100000000000000))*(x7486)*(x7487)))+(((IkReal(-1.00000000000000))*(r11)*(x7489)*(x7491)))+(((IkReal(0.374290000000000))*(x7487)*(x7491)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7493)))+(((x7498)*(x7506)))+(((r00)*(x7499)*(x7505)))+(((IkReal(0.0100000000000000))*(x7486)*(x7492)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x7490)*(x7505)))+(((r12)*(sj0)*(x7498)))+(((x7504)*(x7515)))+(((IkReal(-1.00000000000000))*(r11)*(x7491)*(x7505)))+(((cj0)*(r02)*(x7498)))+(((IkReal(-1.00000000000000))*(r00)*(x7489)*(x7499)))+(((IkReal(-1.00000000000000))*(py)*(x7495)))+(((IkReal(-1.00000000000000))*(r01)*(x7489)*(x7491)))+(((IkReal(-0.374290000000000))*(x7484)*(x7499)))+(((x7484)*(x7515)))+(((cj5)*(r02)*(x7489)))+(((IkReal(0.0100000000000000))*(x7486)*(x7502)))+(((IkReal(0.0100000000000000))*(x7486)*(x7512)))+(((IkReal(-1.00000000000000))*(px)*(x7509)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7516=((IkReal(1.00000000000000))*(r21)); +IkReal x7517=((cj4)*(cj5)); +IkReal x7518=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7516)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj5)*(x7518))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r21)*(x7517)))+(((x7517)*(x7518)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7516))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7516)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj5)*(x7518)))))+IKsqr(((((cj6)*(r21)*(x7517)))+(((x7517)*(x7518)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7516)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7516)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj5)*(x7518)))), ((((cj6)*(r21)*(x7517)))+(((x7517)*(x7518)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7516))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7519=IKsin(j3); +IkReal x7520=((IkReal(1.00000000000000))*(cj4)); +IkReal x7521=((sj0)*(sj5)); +IkReal x7522=((cj0)*(cj5)); +IkReal x7523=((cj6)*(r01)); +IkReal x7524=((r00)*(sj6)); +IkReal x7525=((cj6)*(r11)); +IkReal x7526=((cj5)*(sj0)); +IkReal x7527=((cj6)*(sj4)); +IkReal x7528=((sj4)*(sj6)); +IkReal x7529=((cj4)*(cj5)); +IkReal x7530=((cj6)*(r21)); +IkReal x7531=((r20)*(sj6)); +IkReal x7532=((r10)*(sj6)); +IkReal x7533=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x7534=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((x7519)+(((sj5)*(x7530)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7531)))); +evalcond[1]=((((r20)*(x7527)))+(((x7529)*(x7531)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x7528)))+(((x7529)*(x7530)))+(((IkReal(-1.00000000000000))*(x7533)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7521)*(x7532)))+(((IkReal(-1.00000000000000))*(x7524)*(x7534)))+(((r02)*(x7522)))+(((IkReal(-1.00000000000000))*(x7521)*(x7525)))+(((IkReal(-1.00000000000000))*(x7523)*(x7534)))+(((r12)*(x7526)))+(((IkReal(-1.00000000000000))*(x7533)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x7520)*(x7521)))+(((IkReal(-1.00000000000000))*(x7520)*(x7526)*(x7532)))+(((IkReal(-1.00000000000000))*(x7519)))+(((IkReal(-1.00000000000000))*(x7520)*(x7522)*(x7523)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7527)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7527)))+(((r11)*(sj0)*(x7528)))+(((IkReal(-1.00000000000000))*(x7520)*(x7525)*(x7526)))+(((IkReal(-1.00000000000000))*(x7520)*(x7522)*(x7524)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7520)))+(((cj0)*(r01)*(x7528)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7535=((IkReal(1.00000000000000))*(cj0)); +IkReal x7536=((cj4)*(sj6)); +IkReal x7537=((sj0)*(sj4)); +IkReal x7538=((cj5)*(sj6)); +IkReal x7539=((sj4)*(sj5)); +IkReal x7540=((r12)*(sj5)); +IkReal x7541=((IkReal(0.374290000000000))*(cj5)); +IkReal x7542=((r02)*(sj0)); +IkReal x7543=((r20)*(sj4)); +IkReal x7544=((IkReal(1.00000000000000))*(sj0)); +IkReal x7545=((IkReal(1.00000000000000))*(cj5)); +IkReal x7546=((cj0)*(r10)); +IkReal x7547=((cj4)*(cj6)); +IkReal x7548=((r00)*(sj0)); +IkReal x7549=((cj6)*(r21)); +IkReal x7550=((IkReal(0.374290000000000))*(sj5)); +IkReal x7551=((cj0)*(r00)); +IkReal x7552=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7553=((cj0)*(r02)); +IkReal x7554=((cj5)*(sj4)); +IkReal x7555=((cj6)*(r01)); +IkReal x7556=((cj6)*(r11)); +IkReal x7557=((r01)*(sj0)); +IkReal x7558=((r10)*(sj0)); +IkReal x7559=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x7560=((sj6)*(x7550)); +IkReal x7561=((cj0)*(cj6)*(x7550)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x7545)))+(((r20)*(sj5)*(sj6)))+(((sj5)*(x7549)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x7549)*(x7554)))+(((r22)*(x7539)))+(((r21)*(x7536)))+(((x7538)*(x7543)))+(((IkReal(-1.00000000000000))*(r20)*(x7547)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x7538)))+(((IkReal(-0.0100000000000000))*(cj5)*(x7549)))+(((x7549)*(x7550)))+(((IkReal(-1.00000000000000))*(r22)*(x7552)))+(((IkReal(-1.00000000000000))*(r22)*(x7541)))+(pz)+(((r20)*(x7560)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x7547)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x7536)))+(((cj6)*(x7543)))); +evalcond[5]=((((r00)*(x7537)*(x7538)))+(((IkReal(-1.00000000000000))*(x7535)*(x7554)*(x7556)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7535)*(x7538)))+(((cj5)*(x7537)*(x7555)))+(((IkReal(-1.00000000000000))*(r12)*(x7535)*(x7539)))+(((IkReal(-1.00000000000000))*(r11)*(x7535)*(x7536)))+(((x7546)*(x7547)))+(((IkReal(-1.00000000000000))*(r00)*(x7544)*(x7547)))+(((r02)*(sj5)*(x7537)))+(((x7536)*(x7557)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r10)*(x7537)*(x7538)))+(((IkReal(-1.00000000000000))*(r01)*(x7535)*(x7536)))+(((IkReal(-1.00000000000000))*(x7535)*(x7554)*(x7555)))+(((x7547)*(x7551)))+(((IkReal(-1.00000000000000))*(x7537)*(x7540)))+(((x7547)*(x7558)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7535)*(x7538)))+(((IkReal(-1.00000000000000))*(r02)*(x7535)*(x7539)))+(((IkReal(-1.00000000000000))*(x7537)*(x7545)*(x7556)))+(((IkReal(-1.00000000000000))*(r11)*(x7536)*(x7544)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x7546)*(x7560)))+(((cj0)*(r12)*(x7541)))+(((IkReal(-0.0100000000000000))*(x7538)*(x7548)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7556)))+(((IkReal(-1.00000000000000))*(py)*(x7535)))+(((sj0)*(x7550)*(x7555)))+(((IkReal(-1.00000000000000))*(x7541)*(x7542)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x7555)))+(((x7548)*(x7560)))+(((IkReal(0.0100000000000000))*(x7538)*(x7546)))+(((IkReal(0.0100000000000000))*(cj0)*(x7540)))+(((IkReal(-1.00000000000000))*(x7542)*(x7552)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(x7550)*(x7556)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x7541)*(x7553)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7555)))+(((IkReal(-1.00000000000000))*(x7551)*(x7560)))+(((IkReal(0.0100000000000000))*(sj0)*(x7540)))+(((r12)*(sj0)*(x7541)))+(((IkReal(0.0100000000000000))*(x7538)*(x7558)))+(((IkReal(-1.00000000000000))*(cj0)*(x7550)*(x7555)))+(((x7552)*(x7553)))+(((IkReal(-1.00000000000000))*(py)*(x7544)))+(((IkReal(-1.00000000000000))*(x7558)*(x7560)))+(((IkReal(-1.00000000000000))*(sj0)*(x7550)*(x7556)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x7556)))+(((IkReal(-1.00000000000000))*(px)*(x7535)))+(((IkReal(0.0100000000000000))*(x7538)*(x7551)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7562=((cj0)*(cj5)); +IkReal x7563=((IkReal(1.00000000000000))*(cj0)); +IkReal x7564=((cj6)*(r11)); +IkReal x7565=((r10)*(sj6)); +IkReal x7566=((cj5)*(sj0)); +IkReal x7567=((r00)*(sj5)*(sj6)); +IkReal x7568=((cj6)*(r01)*(sj5)); +IkReal x7569=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7565)))+(((r12)*(x7562)))+(((sj0)*(x7567)))+(((sj0)*(x7568)))+(((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7564)))+(((IkReal(-1.00000000000000))*(r02)*(x7566))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x7563)*(x7567)))+(((IkReal(-1.00000000000000))*(x7564)*(x7569)))+(((r12)*(x7566)))+(((r02)*(x7562)))+(((IkReal(-1.00000000000000))*(x7565)*(x7569)))+(((IkReal(-1.00000000000000))*(x7563)*(x7568))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7565)))+(((r12)*(x7562)))+(((sj0)*(x7567)))+(((sj0)*(x7568)))+(((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7564)))+(((IkReal(-1.00000000000000))*(r02)*(x7566)))))+IKsqr(((((IkReal(-1.00000000000000))*(x7563)*(x7567)))+(((IkReal(-1.00000000000000))*(x7564)*(x7569)))+(((r12)*(x7566)))+(((r02)*(x7562)))+(((IkReal(-1.00000000000000))*(x7565)*(x7569)))+(((IkReal(-1.00000000000000))*(x7563)*(x7568)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7565)))+(((r12)*(x7562)))+(((sj0)*(x7567)))+(((sj0)*(x7568)))+(((IkReal(-1.00000000000000))*(sj5)*(x7563)*(x7564)))+(((IkReal(-1.00000000000000))*(r02)*(x7566)))), ((((IkReal(-1.00000000000000))*(x7563)*(x7567)))+(((IkReal(-1.00000000000000))*(x7564)*(x7569)))+(((r12)*(x7566)))+(((r02)*(x7562)))+(((IkReal(-1.00000000000000))*(x7565)*(x7569)))+(((IkReal(-1.00000000000000))*(x7563)*(x7568))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7570=IKcos(j3); +IkReal x7571=((sj0)*(sj5)); +IkReal x7572=((r00)*(sj6)); +IkReal x7573=((cj6)*(sj0)); +IkReal x7574=((IkReal(1.00000000000000))*(cj4)); +IkReal x7575=((r00)*(sj4)); +IkReal x7576=((cj0)*(cj5)); +IkReal x7577=((cj5)*(sj0)); +IkReal x7578=((cj6)*(r11)); +IkReal x7579=((r10)*(sj6)); +IkReal x7580=((cj0)*(sj5)); +IkReal x7581=((r10)*(sj4)); +IkReal x7582=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x7583=((cj4)*(cj5)*(r01)); +IkReal x7584=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x7585=((cj0)*(sj4)*(sj6)); +IkReal x7586=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x7582)))+(((IkReal(-1.00000000000000))*(r02)*(x7577)))+(((IkReal(-1.00000000000000))*(x7578)*(x7580)))+(((cj6)*(r01)*(x7571)))+(((IkReal(-1.00000000000000))*(x7579)*(x7580)))+(((x7571)*(x7572)))+(((r12)*(x7576)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x7580)))+(((IkReal(-1.00000000000000))*(x7571)*(x7578)))+(((IkReal(-1.00000000000000))*(x7571)*(x7579)))+(((IkReal(-1.00000000000000))*(x7570)))+(((r12)*(x7577)))+(((r02)*(x7576)))+(((IkReal(-1.00000000000000))*(x7572)*(x7580)))); +evalcond[2]=((((cj4)*(r02)*(x7571)))+(((IkReal(-1.00000000000000))*(x7574)*(x7576)*(x7579)))+(((r11)*(x7585)))+(((IkReal(-1.00000000000000))*(x7581)*(x7584)))+(((IkReal(-1.00000000000000))*(x7574)*(x7576)*(x7578)))+(((IkReal(-1.00000000000000))*(r01)*(x7586)))+(((x7573)*(x7575)))+(((IkReal(-1.00000000000000))*(r12)*(x7574)*(x7580)))+(((x7573)*(x7583)))+(((cj4)*(x7572)*(x7577)))+(x7570)); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x7571)*(x7574)))+(((IkReal(-1.00000000000000))*(x7582)))+(((IkReal(-1.00000000000000))*(r02)*(x7574)*(x7580)))+(((IkReal(-1.00000000000000))*(x7574)*(x7577)*(x7579)))+(((IkReal(-1.00000000000000))*(x7572)*(x7574)*(x7576)))+(((r11)*(x7586)))+(((r01)*(x7585)))+(((IkReal(-1.00000000000000))*(x7573)*(x7581)))+(((IkReal(-1.00000000000000))*(x7575)*(x7584)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x7574)*(x7576)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7573)*(x7574)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7587=((IkReal(1.00000000000000))*(cj0)); +IkReal x7588=((cj4)*(sj6)); +IkReal x7589=((sj0)*(sj4)); +IkReal x7590=((cj5)*(sj6)); +IkReal x7591=((sj4)*(sj5)); +IkReal x7592=((r12)*(sj5)); +IkReal x7593=((IkReal(0.374290000000000))*(cj5)); +IkReal x7594=((r02)*(sj0)); +IkReal x7595=((r20)*(sj4)); +IkReal x7596=((IkReal(1.00000000000000))*(sj0)); +IkReal x7597=((IkReal(1.00000000000000))*(cj5)); +IkReal x7598=((cj0)*(r10)); +IkReal x7599=((cj4)*(cj6)); +IkReal x7600=((r00)*(sj0)); +IkReal x7601=((cj6)*(r21)); +IkReal x7602=((IkReal(0.374290000000000))*(sj5)); +IkReal x7603=((cj0)*(r00)); +IkReal x7604=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7605=((cj0)*(r02)); +IkReal x7606=((cj5)*(sj4)); +IkReal x7607=((cj6)*(r01)); +IkReal x7608=((cj6)*(r11)); +IkReal x7609=((r01)*(sj0)); +IkReal x7610=((r10)*(sj0)); +IkReal x7611=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x7612=((sj6)*(x7602)); +IkReal x7613=((cj0)*(cj6)*(x7602)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x7601)))+(((IkReal(-1.00000000000000))*(r22)*(x7597)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x7599)))+(((x7601)*(x7606)))+(((r21)*(x7588)))+(((r22)*(x7591)))+(((x7590)*(x7595)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x7601)))+(((x7601)*(x7602)))+(((IkReal(-0.0100000000000000))*(r20)*(x7590)))+(((IkReal(-1.00000000000000))*(r22)*(x7604)))+(pz)+(((r20)*(x7612)))+(((IkReal(-1.00000000000000))*(r22)*(x7593)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x7599)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x7595)))+(((cj5)*(r20)*(x7588)))); +evalcond[5]=((((cj5)*(x7589)*(x7607)))+(((IkReal(-1.00000000000000))*(r11)*(x7587)*(x7588)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7587)*(x7590)))+(((IkReal(-1.00000000000000))*(r12)*(x7587)*(x7591)))+(((r02)*(sj5)*(x7589)))+(((x7588)*(x7609)))+(((IkReal(-1.00000000000000))*(x7587)*(x7606)*(x7608)))+(((x7598)*(x7599)))+(((r00)*(x7589)*(x7590)))+(((IkReal(-1.00000000000000))*(r00)*(x7596)*(x7599)))); +evalcond[6]=((((x7599)*(x7603)))+(((IkReal(-1.00000000000000))*(r01)*(x7587)*(x7588)))+(((IkReal(-1.00000000000000))*(r10)*(x7589)*(x7590)))+(((IkReal(-1.00000000000000))*(x7587)*(x7606)*(x7607)))+(((IkReal(-1.00000000000000))*(x7589)*(x7592)))+(((x7599)*(x7610)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7587)*(x7590)))+(((IkReal(-1.00000000000000))*(r11)*(x7588)*(x7596)))+(((IkReal(-1.00000000000000))*(r02)*(x7587)*(x7591)))+(((IkReal(-1.00000000000000))*(x7589)*(x7597)*(x7608)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((sj0)*(x7602)*(x7607)))+(((IkReal(-0.0100000000000000))*(x7590)*(x7600)))+(((IkReal(-1.00000000000000))*(py)*(x7587)))+(((IkReal(-1.00000000000000))*(x7594)*(x7604)))+(((IkReal(0.0100000000000000))*(cj0)*(x7592)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x7607)))+(((x7600)*(x7612)))+(((IkReal(0.0100000000000000))*(x7590)*(x7598)))+(((cj0)*(r12)*(x7593)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7608)))+(((IkReal(-1.00000000000000))*(cj0)*(x7602)*(x7608)))+(((IkReal(-1.00000000000000))*(x7598)*(x7612)))+(((IkReal(-1.00000000000000))*(x7593)*(x7594)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(x7610)*(x7612)))+(((x7593)*(x7605)))+(((IkReal(-1.00000000000000))*(cj0)*(x7602)*(x7607)))+(((IkReal(0.0100000000000000))*(sj0)*(x7592)))+(((IkReal(-1.00000000000000))*(px)*(x7587)))+(((r12)*(sj0)*(x7593)))+(((IkReal(-1.00000000000000))*(x7603)*(x7612)))+(((IkReal(-1.00000000000000))*(sj0)*(x7602)*(x7608)))+(((IkReal(0.0100000000000000))*(x7590)*(x7603)))+(((IkReal(-1.00000000000000))*(py)*(x7596)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7607)))+(((IkReal(0.0100000000000000))*(x7590)*(x7610)))+(((x7604)*(x7605)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x7608)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7614=((cj5)*(r02)); +IkReal x7615=((cj0)*(sj5)); +IkReal x7616=((r10)*(sj6)); +IkReal x7617=((IkReal(1.00000000000000))*(cj6)); +IkReal x7618=((sj0)*(sj5)); +IkReal x7619=((cj5)*(r12)); +IkReal x7620=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(r01)*(x7617)*(x7618)))+(((sj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7618)*(x7620)))+(((x7615)*(x7616)))+(((IkReal(-1.00000000000000))*(cj0)*(x7619)))+(((cj6)*(r11)*(x7615))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r01)*(x7615)*(x7617)))+(((IkReal(-1.00000000000000))*(x7615)*(x7620)))+(((sj0)*(x7619)))+(((cj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7616)*(x7618)))+(((IkReal(-1.00000000000000))*(r11)*(x7617)*(x7618))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x7617)*(x7618)))+(((sj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7618)*(x7620)))+(((x7615)*(x7616)))+(((IkReal(-1.00000000000000))*(cj0)*(x7619)))+(((cj6)*(r11)*(x7615)))))+IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x7615)*(x7617)))+(((IkReal(-1.00000000000000))*(x7615)*(x7620)))+(((sj0)*(x7619)))+(((cj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7616)*(x7618)))+(((IkReal(-1.00000000000000))*(r11)*(x7617)*(x7618)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r01)*(x7617)*(x7618)))+(((sj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7618)*(x7620)))+(((x7615)*(x7616)))+(((IkReal(-1.00000000000000))*(cj0)*(x7619)))+(((cj6)*(r11)*(x7615)))), ((((IkReal(-1.00000000000000))*(r01)*(x7615)*(x7617)))+(((IkReal(-1.00000000000000))*(x7615)*(x7620)))+(((sj0)*(x7619)))+(((cj0)*(x7614)))+(((IkReal(-1.00000000000000))*(x7616)*(x7618)))+(((IkReal(-1.00000000000000))*(r11)*(x7617)*(x7618))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7621=IKsin(j3); +IkReal x7622=((sj0)*(sj5)); +IkReal x7623=((r00)*(sj6)); +IkReal x7624=((IkReal(1.00000000000000))*(cj4)); +IkReal x7625=((cj6)*(sj0)); +IkReal x7626=((r00)*(sj4)); +IkReal x7627=((cj0)*(cj5)); +IkReal x7628=((cj6)*(r01)); +IkReal x7629=((cj5)*(sj0)); +IkReal x7630=((cj0)*(sj5)); +IkReal x7631=((cj6)*(r11)); +IkReal x7632=((r10)*(sj6)); +IkReal x7633=((r10)*(sj4)); +IkReal x7634=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x7635=((cj0)*(sj4)*(sj6)); +IkReal x7636=((sj0)*(sj4)*(sj6)); +IkReal x7637=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x7629)))+(((x7622)*(x7628)))+(((r12)*(x7627)))+(((x7622)*(x7623)))+(x7621)+(((IkReal(-1.00000000000000))*(x7630)*(x7631)))+(((IkReal(-1.00000000000000))*(x7630)*(x7632)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x7628)*(x7630)))+(((IkReal(-1.00000000000000))*(x7634)))+(((IkReal(-1.00000000000000))*(x7622)*(x7632)))+(((IkReal(-1.00000000000000))*(x7623)*(x7630)))+(((r12)*(x7629)))+(((IkReal(-1.00000000000000))*(x7622)*(x7631)))+(((r02)*(x7627)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7624)*(x7627)*(x7632)))+(((IkReal(-1.00000000000000))*(x7624)*(x7627)*(x7631)))+(((cj4)*(r02)*(x7622)))+(((x7625)*(x7626)))+(((IkReal(-1.00000000000000))*(x7634)))+(((cj4)*(x7623)*(x7629)))+(((r11)*(x7635)))+(((IkReal(-1.00000000000000))*(r01)*(x7636)))+(((IkReal(-1.00000000000000))*(x7633)*(x7637)))+(((IkReal(-1.00000000000000))*(r12)*(x7624)*(x7630)))+(((cj4)*(cj5)*(r01)*(x7625)))); +evalcond[3]=((((r11)*(x7636)))+(((IkReal(-1.00000000000000))*(x7626)*(x7637)))+(((IkReal(-1.00000000000000))*(x7624)*(x7627)*(x7628)))+(((IkReal(-1.00000000000000))*(r02)*(x7624)*(x7630)))+(((IkReal(-1.00000000000000))*(x7625)*(x7633)))+(((r01)*(x7635)))+(((IkReal(-1.00000000000000))*(r12)*(x7622)*(x7624)))+(((IkReal(-1.00000000000000))*(x7624)*(x7629)*(x7632)))+(((IkReal(-1.00000000000000))*(x7621)))+(((IkReal(-1.00000000000000))*(x7623)*(x7624)*(x7627)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7624)*(x7625)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7638=((cj0)*(cj5)); +IkReal x7639=((IkReal(1.00000000000000))*(cj0)); +IkReal x7640=((cj6)*(r11)); +IkReal x7641=((r10)*(sj6)); +IkReal x7642=((cj5)*(sj0)); +IkReal x7643=((r00)*(sj5)*(sj6)); +IkReal x7644=((cj6)*(r01)*(sj5)); +IkReal x7645=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(x7642)))+(((sj0)*(x7644)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7640)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7641)))+(((r12)*(x7638)))+(((sj0)*(x7643))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r02)*(x7638)))+(((IkReal(-1.00000000000000))*(x7640)*(x7645)))+(((r12)*(x7642)))+(((IkReal(-1.00000000000000))*(x7639)*(x7643)))+(((IkReal(-1.00000000000000))*(x7639)*(x7644)))+(((IkReal(-1.00000000000000))*(x7641)*(x7645))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(x7642)))+(((sj0)*(x7644)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7640)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7641)))+(((r12)*(x7638)))+(((sj0)*(x7643)))))))+IKsqr(((((r02)*(x7638)))+(((IkReal(-1.00000000000000))*(x7640)*(x7645)))+(((r12)*(x7642)))+(((IkReal(-1.00000000000000))*(x7639)*(x7643)))+(((IkReal(-1.00000000000000))*(x7639)*(x7644)))+(((IkReal(-1.00000000000000))*(x7641)*(x7645)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(x7642)))+(((sj0)*(x7644)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7640)))+(((IkReal(-1.00000000000000))*(sj5)*(x7639)*(x7641)))+(((r12)*(x7638)))+(((sj0)*(x7643)))))), ((((r02)*(x7638)))+(((IkReal(-1.00000000000000))*(x7640)*(x7645)))+(((r12)*(x7642)))+(((IkReal(-1.00000000000000))*(x7639)*(x7643)))+(((IkReal(-1.00000000000000))*(x7639)*(x7644)))+(((IkReal(-1.00000000000000))*(x7641)*(x7645))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7646=IKsin(j3); +IkReal x7647=IKcos(j3); +IkReal x7648=((sj0)*(sj5)); +IkReal x7649=((r00)*(sj6)); +IkReal x7650=((IkReal(1.00000000000000))*(cj4)); +IkReal x7651=((cj6)*(r01)); +IkReal x7652=((cj0)*(cj5)); +IkReal x7653=((cj5)*(sj0)); +IkReal x7654=((cj6)*(r11)); +IkReal x7655=((cj0)*(sj5)); +IkReal x7656=((cj6)*(sj4)); +IkReal x7657=((cj4)*(cj5)); +IkReal x7658=((cj6)*(r21)); +IkReal x7659=((r20)*(sj6)); +IkReal x7660=((r10)*(sj6)); +IkReal x7661=((IkReal(1.00000000000000))*(cj0)); +IkReal x7662=((IkReal(1.00000000000000))*(x7646)); +IkReal x7663=((cj0)*(sj4)*(sj6)); +IkReal x7664=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj2)*(x7662)))+(((sj5)*(x7659)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7658)))); +evalcond[1]=((((x7657)*(x7658)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x7657)*(x7659)))+(((r20)*(x7656)))+(((cj4)*(r22)*(sj5)))+(((cj2)*(x7647)))); +evalcond[2]=((((x7648)*(x7649)))+(((IkReal(-1.00000000000000))*(x7655)*(x7660)))+(((x7648)*(x7651)))+(((IkReal(-1.00000000000000))*(r02)*(x7653)))+(((r12)*(x7652)))+(((IkReal(-1.00000000000000))*(sj2)*(x7662)))+(((IkReal(-1.00000000000000))*(x7654)*(x7655)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7647)))+(((IkReal(-1.00000000000000))*(x7648)*(x7654)))+(((IkReal(-1.00000000000000))*(x7648)*(x7660)))+(((r12)*(x7653)))+(((IkReal(-1.00000000000000))*(x7651)*(x7655)))+(((IkReal(-1.00000000000000))*(x7649)*(x7655)))+(((r02)*(x7652)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x7650)*(x7655)))+(((r00)*(sj0)*(x7656)))+(((IkReal(-1.00000000000000))*(x7650)*(x7652)*(x7660)))+(((IkReal(-1.00000000000000))*(r01)*(x7664)))+(((cj4)*(r02)*(x7648)))+(((sj2)*(x7647)))+(((IkReal(-1.00000000000000))*(x7650)*(x7652)*(x7654)))+(((cj4)*(x7649)*(x7653)))+(((cj4)*(x7651)*(x7653)))+(((IkReal(-1.00000000000000))*(r10)*(x7656)*(x7661)))+(((r11)*(x7663)))); +evalcond[5]=((((r11)*(x7664)))+(((IkReal(-1.00000000000000))*(x7650)*(x7653)*(x7660)))+(((IkReal(-1.00000000000000))*(x7650)*(x7651)*(x7652)))+(((IkReal(-1.00000000000000))*(x7650)*(x7653)*(x7654)))+(((IkReal(-1.00000000000000))*(r12)*(x7648)*(x7650)))+(((r01)*(x7663)))+(((IkReal(-1.00000000000000))*(x7649)*(x7650)*(x7652)))+(((IkReal(-1.00000000000000))*(r02)*(x7650)*(x7655)))+(((IkReal(-1.00000000000000))*(x7662)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7656)))+(((IkReal(-1.00000000000000))*(r00)*(x7656)*(x7661)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7665=((sj5)*(sj6)); +IkReal x7666=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x7665))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x7666)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7665)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7665)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x7666))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x7665)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x7666)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7665)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7665)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x7666)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x7665)))))), ((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x7666)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7665)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7665)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x7666))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7667=IKsin(j3); +IkReal x7668=IKcos(j3); +IkReal x7669=((sj0)*(sj5)); +IkReal x7670=((r00)*(sj6)); +IkReal x7671=((IkReal(1.00000000000000))*(cj4)); +IkReal x7672=((cj6)*(r01)); +IkReal x7673=((cj0)*(cj5)); +IkReal x7674=((cj5)*(sj0)); +IkReal x7675=((cj6)*(r11)); +IkReal x7676=((cj0)*(sj5)); +IkReal x7677=((cj6)*(sj4)); +IkReal x7678=((cj4)*(cj5)); +IkReal x7679=((cj6)*(r21)); +IkReal x7680=((r20)*(sj6)); +IkReal x7681=((r10)*(sj6)); +IkReal x7682=((IkReal(1.00000000000000))*(cj0)); +IkReal x7683=((IkReal(1.00000000000000))*(x7667)); +IkReal x7684=((cj0)*(sj4)*(sj6)); +IkReal x7685=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x7679)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x7683)))+(((sj5)*(x7680)))); +evalcond[1]=((((r20)*(x7677)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x7668)))+(((cj4)*(r22)*(sj5)))+(((x7678)*(x7680)))+(((x7678)*(x7679)))); +evalcond[2]=((((x7669)*(x7672)))+(((IkReal(-1.00000000000000))*(x7675)*(x7676)))+(((IkReal(-1.00000000000000))*(r02)*(x7674)))+(((IkReal(-1.00000000000000))*(sj2)*(x7683)))+(((x7669)*(x7670)))+(((r12)*(x7673)))+(((IkReal(-1.00000000000000))*(x7676)*(x7681)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7672)*(x7676)))+(((r12)*(x7674)))+(((IkReal(-1.00000000000000))*(x7670)*(x7676)))+(((IkReal(-1.00000000000000))*(x7669)*(x7681)))+(((IkReal(-1.00000000000000))*(x7669)*(x7675)))+(((IkReal(-1.00000000000000))*(x7668)))+(((r02)*(x7673)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x7671)*(x7673)*(x7681)))+(((IkReal(-1.00000000000000))*(r12)*(x7671)*(x7676)))+(((sj2)*(x7668)))+(((cj4)*(x7670)*(x7674)))+(((cj4)*(x7672)*(x7674)))+(((r00)*(sj0)*(x7677)))+(((IkReal(-1.00000000000000))*(r01)*(x7685)))+(((cj4)*(r02)*(x7669)))+(((r11)*(x7684)))+(((IkReal(-1.00000000000000))*(r10)*(x7677)*(x7682)))+(((IkReal(-1.00000000000000))*(x7671)*(x7673)*(x7675)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7671)*(x7672)*(x7673)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7677)))+(((IkReal(-1.00000000000000))*(x7683)))+(((IkReal(-1.00000000000000))*(x7671)*(x7674)*(x7681)))+(((IkReal(-1.00000000000000))*(r02)*(x7671)*(x7676)))+(((IkReal(-1.00000000000000))*(x7671)*(x7674)*(x7675)))+(((IkReal(-1.00000000000000))*(x7670)*(x7671)*(x7673)))+(((IkReal(-1.00000000000000))*(r12)*(x7669)*(x7671)))+(((r01)*(x7684)))+(((IkReal(-1.00000000000000))*(r00)*(x7677)*(x7682)))+(((r11)*(x7685)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7686=((IkReal(1.00000000000000))*(cj4)); +IkReal x7687=((cj6)*(r21)); +IkReal x7688=((r20)*(sj6)); +if( IKabs(((gconst9)*(((((sj5)*(x7687)))+(((sj5)*(x7688)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst9)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7686)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x7686)*(x7688)))+(((IkReal(-1.00000000000000))*(cj5)*(x7686)*(x7687)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst9)*(((((sj5)*(x7687)))+(((sj5)*(x7688)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((gconst9)*(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7686)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x7686)*(x7688)))+(((IkReal(-1.00000000000000))*(cj5)*(x7686)*(x7687)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7689=IKsin(j3); +IkReal x7690=IKcos(j3); +IkReal x7691=((sj0)*(sj5)); +IkReal x7692=((r00)*(sj6)); +IkReal x7693=((IkReal(1.00000000000000))*(cj4)); +IkReal x7694=((cj6)*(r01)); +IkReal x7695=((cj0)*(cj5)); +IkReal x7696=((cj5)*(sj0)); +IkReal x7697=((cj6)*(r11)); +IkReal x7698=((cj0)*(sj5)); +IkReal x7699=((cj6)*(sj4)); +IkReal x7700=((cj4)*(cj5)); +IkReal x7701=((cj6)*(r21)); +IkReal x7702=((r20)*(sj6)); +IkReal x7703=((r10)*(sj6)); +IkReal x7704=((IkReal(1.00000000000000))*(cj0)); +IkReal x7705=((IkReal(1.00000000000000))*(x7689)); +IkReal x7706=((cj0)*(sj4)*(sj6)); +IkReal x7707=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x7702)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x7705)))+(((sj5)*(x7701)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x7690)))+(((x7700)*(x7701)))+(((r20)*(x7699)))+(((cj4)*(r22)*(sj5)))+(((x7700)*(x7702)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x7705)))+(((x7691)*(x7694)))+(((IkReal(-1.00000000000000))*(x7698)*(x7703)))+(((x7691)*(x7692)))+(((r12)*(x7695)))+(((IkReal(-1.00000000000000))*(r02)*(x7696)))+(((IkReal(-1.00000000000000))*(x7697)*(x7698)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7694)*(x7698)))+(((r12)*(x7696)))+(((IkReal(-1.00000000000000))*(x7691)*(x7703)))+(((IkReal(-1.00000000000000))*(x7690)))+(((r02)*(x7695)))+(((IkReal(-1.00000000000000))*(x7691)*(x7697)))+(((IkReal(-1.00000000000000))*(x7692)*(x7698)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x7707)))+(((IkReal(-1.00000000000000))*(x7693)*(x7695)*(x7703)))+(((r00)*(sj0)*(x7699)))+(((IkReal(-1.00000000000000))*(r10)*(x7699)*(x7704)))+(((IkReal(-1.00000000000000))*(r12)*(x7693)*(x7698)))+(((sj2)*(x7690)))+(((cj4)*(x7694)*(x7696)))+(((r11)*(x7706)))+(((IkReal(-1.00000000000000))*(x7693)*(x7695)*(x7697)))+(((cj4)*(x7692)*(x7696)))+(((cj4)*(r02)*(x7691)))); +evalcond[5]=((((r01)*(x7706)))+(((r11)*(x7707)))+(((IkReal(-1.00000000000000))*(x7705)))+(((IkReal(-1.00000000000000))*(x7693)*(x7696)*(x7703)))+(((IkReal(-1.00000000000000))*(r00)*(x7699)*(x7704)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7699)))+(((IkReal(-1.00000000000000))*(r02)*(x7693)*(x7698)))+(((IkReal(-1.00000000000000))*(x7693)*(x7696)*(x7697)))+(((IkReal(-1.00000000000000))*(r12)*(x7691)*(x7693)))+(((IkReal(-1.00000000000000))*(x7693)*(x7694)*(x7695)))+(((IkReal(-1.00000000000000))*(x7692)*(x7693)*(x7695)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x7708=((IkReal(1.00000000000000))*(cj0)); +IkReal x7709=((cj4)*(sj6)); +IkReal x7710=((sj0)*(sj4)); +IkReal x7711=((cj5)*(sj6)); +IkReal x7712=((sj4)*(sj5)); +IkReal x7713=((r12)*(sj5)); +IkReal x7714=((IkReal(0.374290000000000))*(cj5)); +IkReal x7715=((r02)*(sj0)); +IkReal x7716=((IkReal(1.00000000000000))*(sj0)); +IkReal x7717=((cj0)*(r10)); +IkReal x7718=((cj4)*(cj6)); +IkReal x7719=((r00)*(sj0)); +IkReal x7720=((cj6)*(r21)); +IkReal x7721=((IkReal(0.374290000000000))*(sj5)); +IkReal x7722=((cj0)*(r00)); +IkReal x7723=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7724=((cj0)*(r02)); +IkReal x7725=((cj5)*(sj4)); +IkReal x7726=((cj6)*(r01)); +IkReal x7727=((cj6)*(r11)); +IkReal x7728=((r01)*(sj0)); +IkReal x7729=((r10)*(sj0)); +IkReal x7730=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x7731=((sj6)*(x7721)); +IkReal x7732=((cj0)*(cj6)*(x7721)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((sj2)+(((x7720)*(x7725)))+(((r20)*(sj4)*(x7711)))+(((IkReal(-1.00000000000000))*(r20)*(x7718)))+(((r22)*(x7712)))+(((r21)*(x7709)))); +evalcond[2]=((((IkReal(-0.0100000000000000))*(r20)*(x7711)))+(((IkReal(-0.0690000000000000))*(cj2)))+(((x7720)*(x7721)))+(((IkReal(-0.0100000000000000))*(cj5)*(x7720)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x7723)))+(((r20)*(x7731)))+(((IkReal(-1.00000000000000))*(r22)*(x7714)))); +evalcond[3]=((((x7709)*(x7728)))+(((IkReal(-1.00000000000000))*(r12)*(x7708)*(x7712)))+(((IkReal(-1.00000000000000))*(x7708)*(x7725)*(x7727)))+(cj2)+(((cj5)*(x7710)*(x7726)))+(((r00)*(x7710)*(x7711)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7708)*(x7711)))+(((x7717)*(x7718)))+(((r02)*(sj5)*(x7710)))+(((IkReal(-1.00000000000000))*(r11)*(x7708)*(x7709)))+(((IkReal(-1.00000000000000))*(r00)*(x7716)*(x7718)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x7708)*(x7725)*(x7726)))+(((IkReal(-1.00000000000000))*(r10)*(x7710)*(x7711)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7708)*(x7711)))+(((x7718)*(x7729)))+(((IkReal(-1.00000000000000))*(r02)*(x7708)*(x7712)))+(((IkReal(-1.00000000000000))*(r11)*(x7709)*(x7716)))+(((IkReal(-1.00000000000000))*(r01)*(x7708)*(x7709)))+(((x7718)*(x7722)))+(((IkReal(-1.00000000000000))*(x7710)*(x7713)))+(((IkReal(-1.00000000000000))*(cj5)*(x7710)*(x7727)))); +evalcond[5]=((((IkReal(0.0100000000000000))*(cj0)*(x7713)))+(((IkReal(-1.00000000000000))*(x7714)*(x7715)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x7726)))+(((IkReal(0.0100000000000000))*(x7711)*(x7717)))+(((IkReal(-1.00000000000000))*(x7717)*(x7731)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7727)))+(((x7719)*(x7731)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(py)*(x7708)))+(((IkReal(-1.00000000000000))*(x7715)*(x7723)))+(((IkReal(-1.00000000000000))*(cj0)*(x7721)*(x7727)))+(((cj0)*(r12)*(x7714)))+(((IkReal(-0.0100000000000000))*(x7711)*(x7719)))+(((px)*(sj0)))+(((sj0)*(x7721)*(x7726)))); +evalcond[6]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(x7722)*(x7731)))+(((IkReal(0.0100000000000000))*(x7711)*(x7729)))+(((IkReal(-1.00000000000000))*(py)*(x7716)))+(((IkReal(0.0100000000000000))*(x7711)*(x7722)))+(((IkReal(0.0100000000000000))*(sj0)*(x7713)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x7727)))+(((IkReal(-1.00000000000000))*(px)*(x7708)))+(((r12)*(sj0)*(x7714)))+(((IkReal(-1.00000000000000))*(cj0)*(x7721)*(x7726)))+(((IkReal(-1.00000000000000))*(sj0)*(x7721)*(x7727)))+(((x7723)*(x7724)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7726)))+(((IkReal(-1.00000000000000))*(x7729)*(x7731)))+(((x7714)*(x7724)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst10; +gconst10=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x7733=((cj5)*(sj4)); +IkReal x7734=((IkReal(1.00000000000000))*(sj6)); +IkReal x7735=((r10)*(sj0)); +IkReal x7736=((sj4)*(sj5)); +IkReal x7737=((cj5)*(cj6)); +IkReal x7738=((r01)*(sj0)); +IkReal x7739=((IkReal(1.00000000000000))*(r02)); +IkReal x7740=((IkReal(0.374290000000000))*(cj0)); +IkReal x7741=((cj5)*(r12)); +IkReal x7742=((cj6)*(sj5)); +IkReal x7743=((cj0)*(r11)); +IkReal x7744=((cj5)*(sj0)); +IkReal x7745=((r20)*(sj6)); +IkReal x7746=((IkReal(1.00000000000000))*(sj0)); +IkReal x7747=((cj4)*(cj5)); +IkReal x7748=((IkReal(1.00000000000000))*(cj6)); +IkReal x7749=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7750=((sj5)*(sj6)); +IkReal x7751=((cj0)*(r10)); +IkReal x7752=((cj4)*(cj6)); +IkReal x7753=((cj0)*(r01)); +IkReal x7754=((IkReal(1.00000000000000))*(cj4)); +IkReal x7755=((cj0)*(r00)); +IkReal x7756=((IkReal(0.374290000000000))*(sj0)); +IkReal x7757=((cj0)*(r12)); +IkReal x7758=((IkReal(0.374290000000000))*(sj5)); +IkReal x7759=((cj4)*(sj6)); +IkReal x7760=((IkReal(1.00000000000000))*(cj0)); +IkReal x7761=((r02)*(sj0)); +IkReal x7762=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7763=((r11)*(sj0)); +IkReal x7764=((r00)*(sj0)*(sj6)); +IkReal x7765=((r00)*(x7752)); +IkReal x7766=((sj6)*(x7762)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x7736)))+(((x7733)*(x7745)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7748)))+(((cj6)*(r21)*(x7733)))+(((r21)*(x7759)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x7737)))+(((x7745)*(x7758)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x7749)))+(((IkReal(0.374290000000000))*(r21)*(x7742)))+(((IkReal(-1.00000000000000))*(x7745)*(x7762)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7742)*(x7743)))+(((IkReal(-1.00000000000000))*(sj5)*(x7734)*(x7751)))+(((IkReal(-1.00000000000000))*(x7739)*(x7744)))+(((x7738)*(x7742)))+(((cj0)*(x7741)))+(((r00)*(sj0)*(x7750)))); +evalcond[4]=((IkReal(1.00000000000000))+(((x7736)*(x7761)))+(((IkReal(-1.00000000000000))*(x7733)*(x7734)*(x7751)))+(((IkReal(-1.00000000000000))*(x7736)*(x7757)))+(((x7733)*(x7764)))+(((x7751)*(x7752)))+(((cj6)*(x7733)*(x7738)))+(((IkReal(-1.00000000000000))*(x7733)*(x7743)*(x7748)))+(((IkReal(-1.00000000000000))*(cj4)*(x7734)*(x7743)))+(((x7738)*(x7759)))+(((IkReal(-1.00000000000000))*(x7746)*(x7765)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7734)*(x7747)*(x7751)))+(((IkReal(-1.00000000000000))*(x7737)*(x7743)*(x7754)))+(((IkReal(-1.00000000000000))*(sj4)*(x7734)*(x7738)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(sj5)*(x7761)))+(((r00)*(x7744)*(x7759)))+(((IkReal(-1.00000000000000))*(sj5)*(x7754)*(x7757)))+(((sj4)*(sj6)*(x7743)))+(((IkReal(-1.00000000000000))*(sj4)*(x7748)*(x7751)))+(((cj4)*(x7737)*(x7738)))); +evalcond[6]=((((x7735)*(x7752)))+(((x7752)*(x7755)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7733)*(x7746)))+(((IkReal(-1.00000000000000))*(r12)*(x7736)*(x7746)))+(((IkReal(-1.00000000000000))*(x7733)*(x7734)*(x7755)))+(((IkReal(-1.00000000000000))*(cj4)*(x7734)*(x7753)))+(((IkReal(-1.00000000000000))*(cj4)*(x7734)*(x7763)))+(((IkReal(-1.00000000000000))*(cj0)*(x7736)*(x7739)))+(((IkReal(-1.00000000000000))*(x7733)*(x7734)*(x7735)))+(((IkReal(-1.00000000000000))*(x7733)*(x7748)*(x7753)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x7740)*(x7742)))+(((IkReal(-0.374290000000000))*(r02)*(x7744)))+(((x7740)*(x7741)))+(((IkReal(0.0100000000000000))*(x7737)*(x7743)))+(((IkReal(-1.00000000000000))*(py)*(x7760)))+(((IkReal(-1.00000000000000))*(x7749)*(x7761)))+(((IkReal(0.374290000000000))*(x7738)*(x7742)))+(((IkReal(-1.00000000000000))*(r10)*(x7740)*(x7750)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7744)))+(((x7751)*(x7766)))+(((px)*(sj0)))+(((r00)*(x7750)*(x7756)))+(((x7749)*(x7757)))+(((IkReal(-0.0100000000000000))*(x7737)*(x7738)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((r12)*(sj0)*(x7749)))+(((x7735)*(x7766)))+(((IkReal(0.0100000000000000))*(x7737)*(x7763)))+(((IkReal(-1.00000000000000))*(r11)*(x7742)*(x7756)))+(((x7741)*(x7756)))+(((IkReal(-1.00000000000000))*(r00)*(x7740)*(x7750)))+(((IkReal(-1.00000000000000))*(py)*(x7746)))+(((cj0)*(r02)*(x7749)))+(((IkReal(0.0100000000000000))*(x7737)*(x7753)))+(((IkReal(-0.374290000000000))*(x7735)*(x7750)))+(((IkReal(-1.00000000000000))*(px)*(x7760)))+(((x7755)*(x7766)))+(((cj5)*(r02)*(x7740)))+(((IkReal(-1.00000000000000))*(r01)*(x7740)*(x7742)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7767=((IkReal(1.00000000000000))*(r21)); +IkReal x7768=((cj4)*(cj5)); +IkReal x7769=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7767)))+(((IkReal(-1.00000000000000))*(sj5)*(x7769)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7767)))+(((x7768)*(x7769)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x7768))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7767)))+(((IkReal(-1.00000000000000))*(sj5)*(x7769)))+(((cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7767)))+(((x7768)*(x7769)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x7768)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7767)))+(((IkReal(-1.00000000000000))*(sj5)*(x7769)))+(((cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7767)))+(((x7768)*(x7769)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x7768))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7770=IKcos(j3); +IkReal x7771=IKsin(j3); +IkReal x7772=((IkReal(1.00000000000000))*(cj4)); +IkReal x7773=((sj0)*(sj5)); +IkReal x7774=((cj0)*(cj5)); +IkReal x7775=((cj6)*(r01)); +IkReal x7776=((r00)*(sj6)); +IkReal x7777=((cj6)*(r11)); +IkReal x7778=((cj5)*(sj0)); +IkReal x7779=((cj6)*(sj4)); +IkReal x7780=((sj4)*(sj6)); +IkReal x7781=((cj4)*(cj5)); +IkReal x7782=((cj6)*(r21)); +IkReal x7783=((r20)*(sj6)); +IkReal x7784=((r10)*(sj6)); +IkReal x7785=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x7771)+(((sj5)*(x7782)))+(((sj5)*(x7783)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x7780)))+(((x7781)*(x7782)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x7779)))+(((IkReal(-1.00000000000000))*(x7770)))+(((x7781)*(x7783)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7773)*(x7777)))+(((IkReal(-1.00000000000000))*(x7773)*(x7784)))+(((IkReal(-1.00000000000000))*(x7776)*(x7785)))+(((IkReal(-1.00000000000000))*(x7775)*(x7785)))+(x7770)+(((r12)*(x7778)))+(((r02)*(x7774)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7772)*(x7778)*(x7784)))+(((IkReal(-1.00000000000000))*(x7772)*(x7774)*(x7776)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7779)))+(((IkReal(-1.00000000000000))*(x7772)*(x7774)*(x7775)))+(((r11)*(sj0)*(x7780)))+(x7771)+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7779)))+(((cj0)*(r01)*(x7780)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7772)))+(((IkReal(-1.00000000000000))*(r12)*(x7772)*(x7773)))+(((IkReal(-1.00000000000000))*(x7772)*(x7777)*(x7778)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7786=((cj5)*(sj4)); +IkReal x7787=((IkReal(1.00000000000000))*(sj6)); +IkReal x7788=((r10)*(sj0)); +IkReal x7789=((sj4)*(sj5)); +IkReal x7790=((cj5)*(cj6)); +IkReal x7791=((r01)*(sj0)); +IkReal x7792=((IkReal(1.00000000000000))*(r02)); +IkReal x7793=((IkReal(0.374290000000000))*(cj0)); +IkReal x7794=((cj5)*(r12)); +IkReal x7795=((cj6)*(sj5)); +IkReal x7796=((cj0)*(r11)); +IkReal x7797=((cj5)*(sj0)); +IkReal x7798=((r20)*(sj6)); +IkReal x7799=((IkReal(1.00000000000000))*(sj0)); +IkReal x7800=((cj4)*(cj5)); +IkReal x7801=((IkReal(1.00000000000000))*(cj6)); +IkReal x7802=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7803=((sj5)*(sj6)); +IkReal x7804=((cj0)*(r10)); +IkReal x7805=((cj4)*(cj6)); +IkReal x7806=((cj0)*(r01)); +IkReal x7807=((IkReal(1.00000000000000))*(cj4)); +IkReal x7808=((cj0)*(r00)); +IkReal x7809=((IkReal(0.374290000000000))*(sj0)); +IkReal x7810=((cj0)*(r12)); +IkReal x7811=((IkReal(0.374290000000000))*(sj5)); +IkReal x7812=((cj4)*(sj6)); +IkReal x7813=((IkReal(1.00000000000000))*(cj0)); +IkReal x7814=((r02)*(sj0)); +IkReal x7815=((IkReal(0.0100000000000000))*(cj5)); +IkReal x7816=((r11)*(sj0)); +IkReal x7817=((r00)*(sj0)*(sj6)); +IkReal x7818=((r00)*(x7805)); +IkReal x7819=((sj6)*(x7815)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x7812)))+(((x7786)*(x7798)))+(((cj6)*(r21)*(x7786)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x7801)))+(((r22)*(x7789)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x7802)))+(((IkReal(0.374290000000000))*(r21)*(x7795)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x7798)*(x7811)))+(pz)+(((IkReal(-0.0100000000000000))*(r21)*(x7790)))+(((IkReal(-1.00000000000000))*(x7798)*(x7815)))); +evalcond[3]=((((r00)*(sj0)*(x7803)))+(((x7791)*(x7795)))+(((cj0)*(x7794)))+(((IkReal(-1.00000000000000))*(x7792)*(x7797)))+(((IkReal(-1.00000000000000))*(x7795)*(x7796)))+(((IkReal(-1.00000000000000))*(sj5)*(x7787)*(x7804)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x7789)*(x7810)))+(((x7786)*(x7817)))+(((cj6)*(x7786)*(x7791)))+(((IkReal(-1.00000000000000))*(x7786)*(x7787)*(x7804)))+(((x7789)*(x7814)))+(((x7791)*(x7812)))+(((IkReal(-1.00000000000000))*(x7799)*(x7818)))+(((IkReal(-1.00000000000000))*(x7786)*(x7796)*(x7801)))+(((x7804)*(x7805)))+(((IkReal(-1.00000000000000))*(cj4)*(x7787)*(x7796)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x7790)*(x7796)*(x7807)))+(((r00)*(x7797)*(x7812)))+(((sj4)*(sj6)*(x7796)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x7787)*(x7800)*(x7804)))+(((IkReal(-1.00000000000000))*(sj5)*(x7807)*(x7810)))+(((IkReal(-1.00000000000000))*(sj4)*(x7787)*(x7791)))+(((cj4)*(x7790)*(x7791)))+(((IkReal(-1.00000000000000))*(sj4)*(x7801)*(x7804)))+(((cj4)*(sj5)*(x7814)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x7787)*(x7806)))+(((IkReal(-1.00000000000000))*(cj4)*(x7787)*(x7816)))+(((x7805)*(x7808)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x7786)*(x7799)))+(((IkReal(-1.00000000000000))*(x7786)*(x7787)*(x7788)))+(((x7788)*(x7805)))+(((IkReal(-1.00000000000000))*(cj0)*(x7789)*(x7792)))+(((IkReal(-1.00000000000000))*(x7786)*(x7787)*(x7808)))+(((IkReal(-1.00000000000000))*(x7786)*(x7801)*(x7806)))+(((IkReal(-1.00000000000000))*(r12)*(x7789)*(x7799)))); +evalcond[7]=((((r00)*(x7803)*(x7809)))+(((IkReal(-0.0100000000000000))*(x7790)*(x7791)))+(((IkReal(-1.00000000000000))*(x7802)*(x7814)))+(((x7793)*(x7794)))+(((IkReal(-1.00000000000000))*(py)*(x7813)))+(((x7804)*(x7819)))+(((IkReal(-0.374290000000000))*(r02)*(x7797)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x7797)))+(((IkReal(0.0100000000000000))*(x7790)*(x7796)))+(((IkReal(0.374290000000000))*(x7791)*(x7795)))+(((IkReal(-1.00000000000000))*(r10)*(x7793)*(x7803)))+(((x7802)*(x7810)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x7793)*(x7795)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(py)*(x7799)))+(((cj5)*(r02)*(x7793)))+(((cj0)*(r02)*(x7802)))+(((r12)*(sj0)*(x7802)))+(((x7788)*(x7819)))+(((x7794)*(x7809)))+(((IkReal(-1.00000000000000))*(r11)*(x7795)*(x7809)))+(((IkReal(-0.374290000000000))*(x7788)*(x7803)))+(((x7808)*(x7819)))+(((IkReal(-1.00000000000000))*(px)*(x7813)))+(((IkReal(-1.00000000000000))*(r01)*(x7793)*(x7795)))+(((IkReal(0.0100000000000000))*(x7790)*(x7806)))+(((IkReal(0.0100000000000000))*(x7790)*(x7816)))+(((IkReal(-1.00000000000000))*(r00)*(x7793)*(x7803)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7820=((IkReal(1.00000000000000))*(cj4)); +IkReal x7821=((cj6)*(r21)); +IkReal x7822=((r20)*(sj6)); +if( IKabs(((((sj5)*(x7821)))+(((sj5)*(x7822)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7822)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7820)))+(((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7821)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x7821)))+(((sj5)*(x7822)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7822)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7820)))+(((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7821)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x7821)))+(((sj5)*(x7822)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7822)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x7820)))+(((IkReal(-1.00000000000000))*(cj5)*(x7820)*(x7821)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7823=IKcos(j3); +IkReal x7824=IKsin(j3); +IkReal x7825=((IkReal(1.00000000000000))*(cj4)); +IkReal x7826=((sj0)*(sj5)); +IkReal x7827=((cj0)*(cj5)); +IkReal x7828=((cj6)*(r01)); +IkReal x7829=((r00)*(sj6)); +IkReal x7830=((cj6)*(r11)); +IkReal x7831=((cj5)*(sj0)); +IkReal x7832=((cj6)*(sj4)); +IkReal x7833=((sj4)*(sj6)); +IkReal x7834=((cj4)*(cj5)); +IkReal x7835=((cj6)*(r21)); +IkReal x7836=((r20)*(sj6)); +IkReal x7837=((r10)*(sj6)); +IkReal x7838=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x7836)))+(((sj5)*(x7835)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x7824)))); +evalcond[1]=((x7823)+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x7833)))+(((x7834)*(x7836)))+(((x7834)*(x7835)))+(((r20)*(x7832)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7829)*(x7838)))+(((IkReal(-1.00000000000000))*(x7828)*(x7838)))+(((IkReal(-1.00000000000000))*(x7826)*(x7830)))+(x7823)+(((IkReal(-1.00000000000000))*(x7826)*(x7837)))+(((r12)*(x7831)))+(((r02)*(x7827)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r00)*(x7832)))+(((IkReal(-1.00000000000000))*(r12)*(x7825)*(x7826)))+(x7824)+(((r11)*(sj0)*(x7833)))+(((IkReal(-1.00000000000000))*(x7825)*(x7827)*(x7829)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x7825)))+(((IkReal(-1.00000000000000))*(x7825)*(x7831)*(x7837)))+(((IkReal(-1.00000000000000))*(x7825)*(x7827)*(x7828)))+(((cj0)*(r01)*(x7833)))+(((IkReal(-1.00000000000000))*(x7825)*(x7830)*(x7831)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7832)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7839=((IkReal(1.00000000000000))*(cj0)); +IkReal x7840=((cj4)*(sj6)); +IkReal x7841=((sj0)*(sj4)); +IkReal x7842=((cj5)*(sj6)); +IkReal x7843=((sj4)*(sj5)); +IkReal x7844=((r12)*(sj5)); +IkReal x7845=((IkReal(0.374290000000000))*(cj5)); +IkReal x7846=((r02)*(sj0)); +IkReal x7847=((r20)*(sj4)); +IkReal x7848=((IkReal(1.00000000000000))*(sj0)); +IkReal x7849=((IkReal(1.00000000000000))*(cj5)); +IkReal x7850=((cj0)*(r10)); +IkReal x7851=((cj4)*(cj6)); +IkReal x7852=((r00)*(sj0)); +IkReal x7853=((cj6)*(r21)); +IkReal x7854=((IkReal(0.374290000000000))*(sj5)); +IkReal x7855=((cj0)*(r00)); +IkReal x7856=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7857=((cj0)*(r02)); +IkReal x7858=((cj5)*(sj4)); +IkReal x7859=((cj6)*(r01)); +IkReal x7860=((cj6)*(r11)); +IkReal x7861=((r01)*(sj0)); +IkReal x7862=((r10)*(sj0)); +IkReal x7863=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x7864=((sj6)*(x7854)); +IkReal x7865=((cj0)*(cj6)*(x7854)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x7849)))+(((sj5)*(x7853)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x7851)))+(((x7842)*(x7847)))+(((r22)*(x7843)))+(((r21)*(x7840)))+(((x7853)*(x7858)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x7845)))+(((IkReal(-0.0100000000000000))*(cj5)*(x7853)))+(((IkReal(-0.0100000000000000))*(r20)*(x7842)))+(((r20)*(x7864)))+(((x7853)*(x7854)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x7856)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x7847)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x7840)))+(((cj5)*(r21)*(x7851)))); +evalcond[5]=((((r02)*(sj5)*(x7841)))+(((IkReal(-1.00000000000000))*(r00)*(x7848)*(x7851)))+(((IkReal(-1.00000000000000))*(r11)*(x7839)*(x7840)))+(((IkReal(-1.00000000000000))*(r12)*(x7839)*(x7843)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7839)*(x7842)))+(((IkReal(-1.00000000000000))*(x7839)*(x7858)*(x7860)))+(((cj5)*(x7841)*(x7859)))+(((r00)*(x7841)*(x7842)))+(((x7840)*(x7861)))+(((x7850)*(x7851)))); +evalcond[6]=((((x7851)*(x7862)))+(((IkReal(-1.00000000000000))*(x7841)*(x7849)*(x7860)))+(((IkReal(-1.00000000000000))*(x7841)*(x7844)))+(((IkReal(-1.00000000000000))*(r10)*(x7841)*(x7842)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7839)*(x7842)))+(((IkReal(-1.00000000000000))*(r02)*(x7839)*(x7843)))+(((IkReal(-1.00000000000000))*(r11)*(x7840)*(x7848)))+(((IkReal(-1.00000000000000))*(x7839)*(x7858)*(x7859)))+(((x7851)*(x7855)))+(((IkReal(-1.00000000000000))*(r01)*(x7839)*(x7840)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(x7842)*(x7850)))+(((x7852)*(x7864)))+(((IkReal(-1.00000000000000))*(py)*(x7839)))+(((IkReal(0.0100000000000000))*(cj0)*(x7844)))+(((IkReal(-1.00000000000000))*(x7850)*(x7864)))+(((sj0)*(x7854)*(x7859)))+(((cj0)*(r12)*(x7845)))+(((IkReal(-0.0100000000000000))*(x7842)*(x7852)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7860)))+(((IkReal(-1.00000000000000))*(x7845)*(x7846)))+(((IkReal(-1.00000000000000))*(cj0)*(x7854)*(x7860)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x7846)*(x7856)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x7859)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x7854)*(x7860)))+(((IkReal(0.0100000000000000))*(sj0)*(x7844)))+(((IkReal(-1.00000000000000))*(x7862)*(x7864)))+(((x7845)*(x7857)))+(((IkReal(-1.00000000000000))*(px)*(x7839)))+(((IkReal(-1.00000000000000))*(py)*(x7848)))+(((IkReal(-1.00000000000000))*(cj0)*(x7854)*(x7859)))+(((r12)*(sj0)*(x7845)))+(((x7856)*(x7857)))+(((IkReal(-1.00000000000000))*(x7855)*(x7864)))+(((IkReal(0.0100000000000000))*(x7842)*(x7862)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x7860)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7859)))+(((IkReal(0.0100000000000000))*(x7842)*(x7855)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7866=((sj0)*(sj5)); +IkReal x7867=((r00)*(sj6)); +IkReal x7868=((IkReal(1.00000000000000))*(cj5)); +IkReal x7869=((cj6)*(r11)); +IkReal x7870=((cj6)*(r01)); +IkReal x7871=((r10)*(sj6)); +IkReal x7872=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7868)))+(((x7866)*(x7867)))+(((x7866)*(x7870)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x7869)*(x7872)))+(((IkReal(-1.00000000000000))*(x7871)*(x7872))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x7867)*(x7872)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7868)))+(((x7866)*(x7871)))+(((x7866)*(x7869)))+(((x7870)*(x7872)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7868))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7868)))+(((x7866)*(x7867)))+(((x7866)*(x7870)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x7869)*(x7872)))+(((IkReal(-1.00000000000000))*(x7871)*(x7872)))))+IKsqr(((((x7867)*(x7872)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7868)))+(((x7866)*(x7871)))+(((x7866)*(x7869)))+(((x7870)*(x7872)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7868)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7868)))+(((x7866)*(x7867)))+(((x7866)*(x7870)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x7869)*(x7872)))+(((IkReal(-1.00000000000000))*(x7871)*(x7872)))), ((((x7867)*(x7872)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7868)))+(((x7866)*(x7871)))+(((x7866)*(x7869)))+(((x7870)*(x7872)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7868))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7873=IKcos(j3); +IkReal x7874=IKsin(j3); +IkReal x7875=((sj0)*(sj5)); +IkReal x7876=((r00)*(sj6)); +IkReal x7877=((cj6)*(sj0)); +IkReal x7878=((IkReal(1.00000000000000))*(cj4)); +IkReal x7879=((r00)*(sj4)); +IkReal x7880=((cj0)*(cj5)); +IkReal x7881=((cj5)*(sj0)); +IkReal x7882=((cj6)*(r11)); +IkReal x7883=((r10)*(sj6)); +IkReal x7884=((cj0)*(sj5)); +IkReal x7885=((r10)*(sj4)); +IkReal x7886=((cj4)*(cj5)*(r01)); +IkReal x7887=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x7888=((cj0)*(sj4)*(sj6)); +IkReal x7889=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((x7875)*(x7876)))+(((r12)*(x7880)))+(((cj6)*(r01)*(x7875)))+(((IkReal(-1.00000000000000))*(r02)*(x7881)))+(((IkReal(-1.00000000000000))*(x7883)*(x7884)))+(((IkReal(-1.00000000000000))*(x7874)))+(((IkReal(-1.00000000000000))*(x7882)*(x7884)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x7875)*(x7883)))+(((IkReal(-1.00000000000000))*(x7876)*(x7884)))+(((r02)*(x7880)))+(((r12)*(x7881)))+(((IkReal(-1.00000000000000))*(x7875)*(x7882)))+(x7873)+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x7884)))); +evalcond[2]=((((cj4)*(r02)*(x7875)))+(((IkReal(-1.00000000000000))*(x7885)*(x7887)))+(((r11)*(x7888)))+(((IkReal(-1.00000000000000))*(r01)*(x7889)))+(((IkReal(-1.00000000000000))*(r12)*(x7878)*(x7884)))+(((IkReal(-1.00000000000000))*(x7878)*(x7880)*(x7883)))+(x7873)+(((cj4)*(x7876)*(x7881)))+(((IkReal(-1.00000000000000))*(x7878)*(x7880)*(x7882)))+(((x7877)*(x7879)))+(((x7877)*(x7886)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7877)*(x7885)))+(((r11)*(x7889)))+(((IkReal(-1.00000000000000))*(x7879)*(x7887)))+(((IkReal(-1.00000000000000))*(r12)*(x7875)*(x7878)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x7878)*(x7880)))+(x7874)+(((IkReal(-1.00000000000000))*(r02)*(x7878)*(x7884)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7877)*(x7878)))+(((IkReal(-1.00000000000000))*(x7878)*(x7881)*(x7883)))+(((IkReal(-1.00000000000000))*(x7876)*(x7878)*(x7880)))+(((r01)*(x7888)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x7890=((IkReal(1.00000000000000))*(cj0)); +IkReal x7891=((cj4)*(sj6)); +IkReal x7892=((sj0)*(sj4)); +IkReal x7893=((cj5)*(sj6)); +IkReal x7894=((sj4)*(sj5)); +IkReal x7895=((r12)*(sj5)); +IkReal x7896=((IkReal(0.374290000000000))*(cj5)); +IkReal x7897=((r02)*(sj0)); +IkReal x7898=((r20)*(sj4)); +IkReal x7899=((IkReal(1.00000000000000))*(sj0)); +IkReal x7900=((IkReal(1.00000000000000))*(cj5)); +IkReal x7901=((cj0)*(r10)); +IkReal x7902=((cj4)*(cj6)); +IkReal x7903=((r00)*(sj0)); +IkReal x7904=((cj6)*(r21)); +IkReal x7905=((IkReal(0.374290000000000))*(sj5)); +IkReal x7906=((cj0)*(r00)); +IkReal x7907=((IkReal(0.0100000000000000))*(sj5)); +IkReal x7908=((cj0)*(r02)); +IkReal x7909=((cj5)*(sj4)); +IkReal x7910=((cj6)*(r01)); +IkReal x7911=((cj6)*(r11)); +IkReal x7912=((r01)*(sj0)); +IkReal x7913=((r10)*(sj0)); +IkReal x7914=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x7915=((sj6)*(x7905)); +IkReal x7916=((cj0)*(cj6)*(x7905)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x7904)))+(((IkReal(-1.00000000000000))*(r22)*(x7900)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r21)*(x7891)))+(((x7904)*(x7909)))+(((x7893)*(x7898)))+(((r22)*(x7894)))+(((IkReal(-1.00000000000000))*(r20)*(x7902)))); +evalcond[3]=((((x7904)*(x7905)))+(((IkReal(-0.0100000000000000))*(cj5)*(x7904)))+(((IkReal(-1.00000000000000))*(r22)*(x7896)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x7893)))+(((r20)*(x7915)))+(((IkReal(-1.00000000000000))*(r22)*(x7907)))); +evalcond[4]=((((cj5)*(r20)*(x7891)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x7902)))+(((cj6)*(x7898)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x7890)*(x7894)))+(((cj5)*(x7892)*(x7910)))+(((r02)*(sj5)*(x7892)))+(((IkReal(-1.00000000000000))*(r00)*(x7899)*(x7902)))+(((IkReal(-1.00000000000000))*(r11)*(x7890)*(x7891)))+(((x7901)*(x7902)))+(((r00)*(x7892)*(x7893)))+(((IkReal(-1.00000000000000))*(x7890)*(x7909)*(x7911)))+(((x7891)*(x7912)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x7890)*(x7893)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r01)*(x7890)*(x7891)))+(((IkReal(-1.00000000000000))*(x7892)*(x7900)*(x7911)))+(((IkReal(-1.00000000000000))*(r10)*(x7892)*(x7893)))+(((IkReal(-1.00000000000000))*(r11)*(x7891)*(x7899)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x7890)*(x7893)))+(((IkReal(-1.00000000000000))*(x7890)*(x7909)*(x7910)))+(((IkReal(-1.00000000000000))*(r02)*(x7890)*(x7894)))+(((x7902)*(x7906)))+(((x7902)*(x7913)))+(((IkReal(-1.00000000000000))*(x7892)*(x7895)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-0.0100000000000000))*(x7893)*(x7903)))+(((IkReal(-1.00000000000000))*(x7897)*(x7907)))+(((IkReal(-1.00000000000000))*(x7896)*(x7897)))+(((cj0)*(r12)*(x7896)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x7910)))+(((IkReal(0.0100000000000000))*(x7893)*(x7901)))+(((IkReal(-1.00000000000000))*(py)*(x7890)))+(((IkReal(-1.00000000000000))*(x7901)*(x7915)))+(((IkReal(-1.00000000000000))*(cj0)*(x7905)*(x7911)))+(((sj0)*(x7905)*(x7910)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7911)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(x7895)))+(((x7903)*(x7915)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x7905)*(x7911)))+(((IkReal(-1.00000000000000))*(py)*(x7899)))+(((IkReal(-1.00000000000000))*(x7906)*(x7915)))+(((IkReal(-1.00000000000000))*(cj0)*(x7905)*(x7910)))+(((IkReal(-1.00000000000000))*(x7913)*(x7915)))+(((x7907)*(x7908)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x7910)))+(((IkReal(-1.00000000000000))*(px)*(x7890)))+(((x7896)*(x7908)))+(((IkReal(0.0100000000000000))*(x7893)*(x7913)))+(((IkReal(0.0100000000000000))*(x7893)*(x7906)))+(((IkReal(0.0100000000000000))*(sj0)*(x7895)))+(((r12)*(sj0)*(x7896)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x7911)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7917=((IkReal(1.00000000000000))*(cj5)); +IkReal x7918=((r10)*(sj5)*(sj6)); +IkReal x7919=((cj6)*(sj0)*(sj5)); +IkReal x7920=((r00)*(sj5)*(sj6)); +IkReal x7921=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj0)*(x7920)))+(((r11)*(x7921)))+(((cj0)*(x7918)))+(((IkReal(-1.00000000000000))*(r01)*(x7919)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7917))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(x7920)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7917)))+(((r01)*(x7921)))+(((r11)*(x7919)))+(((sj0)*(x7918)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7917))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj0)*(x7920)))+(((r11)*(x7921)))+(((cj0)*(x7918)))+(((IkReal(-1.00000000000000))*(r01)*(x7919)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7917)))))+IKsqr(((((cj0)*(x7920)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7917)))+(((r01)*(x7921)))+(((r11)*(x7919)))+(((sj0)*(x7918)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7917)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj0)*(x7920)))+(((r11)*(x7921)))+(((cj0)*(x7918)))+(((IkReal(-1.00000000000000))*(r01)*(x7919)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x7917)))), ((((cj0)*(x7920)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7917)))+(((r01)*(x7921)))+(((r11)*(x7919)))+(((sj0)*(x7918)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7917))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x7922=IKcos(j3); +IkReal x7923=IKsin(j3); +IkReal x7924=((sj0)*(sj5)); +IkReal x7925=((r00)*(sj6)); +IkReal x7926=((IkReal(1.00000000000000))*(cj4)); +IkReal x7927=((cj6)*(sj0)); +IkReal x7928=((r00)*(sj4)); +IkReal x7929=((cj0)*(cj5)); +IkReal x7930=((cj6)*(r01)); +IkReal x7931=((cj5)*(sj0)); +IkReal x7932=((cj0)*(sj5)); +IkReal x7933=((cj6)*(r11)); +IkReal x7934=((r10)*(sj6)); +IkReal x7935=((r10)*(sj4)); +IkReal x7936=((cj0)*(sj4)*(sj6)); +IkReal x7937=((sj0)*(sj4)*(sj6)); +IkReal x7938=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x7931)))+(((x7924)*(x7930)))+(((IkReal(-1.00000000000000))*(x7932)*(x7934)))+(((r12)*(x7929)))+(((x7924)*(x7925)))+(x7923)+(((IkReal(-1.00000000000000))*(x7932)*(x7933)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x7924)*(x7934)))+(((r02)*(x7929)))+(((r12)*(x7931)))+(((IkReal(-1.00000000000000))*(x7925)*(x7932)))+(((IkReal(-1.00000000000000))*(x7924)*(x7933)))+(((IkReal(-1.00000000000000))*(x7930)*(x7932)))+(x7922)); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x7926)*(x7932)))+(((IkReal(-1.00000000000000))*(x7926)*(x7929)*(x7933)))+(((cj4)*(r02)*(x7924)))+(((IkReal(-1.00000000000000))*(x7935)*(x7938)))+(((x7927)*(x7928)))+(((IkReal(-1.00000000000000))*(r01)*(x7937)))+(((cj4)*(x7925)*(x7931)))+(((IkReal(-1.00000000000000))*(x7922)))+(((r11)*(x7936)))+(((cj4)*(cj5)*(r01)*(x7927)))+(((IkReal(-1.00000000000000))*(x7926)*(x7929)*(x7934)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7927)*(x7935)))+(((IkReal(-1.00000000000000))*(r12)*(x7924)*(x7926)))+(((r11)*(x7937)))+(((IkReal(-1.00000000000000))*(x7926)*(x7929)*(x7930)))+(((r01)*(x7936)))+(((IkReal(-1.00000000000000))*(r02)*(x7926)*(x7932)))+(((IkReal(-1.00000000000000))*(x7925)*(x7926)*(x7929)))+(x7923)+(((IkReal(-1.00000000000000))*(x7928)*(x7938)))+(((IkReal(-1.00000000000000))*(x7926)*(x7931)*(x7934)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x7926)*(x7927)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7939=((sj0)*(sj5)); +IkReal x7940=((r00)*(sj6)); +IkReal x7941=((IkReal(1.00000000000000))*(cj5)); +IkReal x7942=((cj6)*(r11)); +IkReal x7943=((cj6)*(r01)); +IkReal x7944=((cj0)*(sj5)); +IkReal x7945=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x7942)*(x7944)))+(((x7939)*(x7943)))+(((cj0)*(cj5)*(r12)))+(((x7939)*(x7940)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7941)))+(((IkReal(-1.00000000000000))*(x7944)*(x7945))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7941)))+(((x7939)*(x7942)))+(((x7943)*(x7944)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7941)))+(((x7940)*(x7944)))+(((x7939)*(x7945))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x7942)*(x7944)))+(((x7939)*(x7943)))+(((cj0)*(cj5)*(r12)))+(((x7939)*(x7940)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7941)))+(((IkReal(-1.00000000000000))*(x7944)*(x7945)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7941)))+(((x7939)*(x7942)))+(((x7943)*(x7944)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7941)))+(((x7940)*(x7944)))+(((x7939)*(x7945)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x7942)*(x7944)))+(((x7939)*(x7943)))+(((cj0)*(cj5)*(r12)))+(((x7939)*(x7940)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x7941)))+(((IkReal(-1.00000000000000))*(x7944)*(x7945)))))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7941)))+(((x7939)*(x7942)))+(((x7943)*(x7944)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7941)))+(((x7940)*(x7944)))+(((x7939)*(x7945))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7946=IKsin(j3); +IkReal x7947=IKcos(j3); +IkReal x7948=((sj0)*(sj5)); +IkReal x7949=((r00)*(sj6)); +IkReal x7950=((IkReal(1.00000000000000))*(cj4)); +IkReal x7951=((cj6)*(r01)); +IkReal x7952=((cj0)*(cj5)); +IkReal x7953=((cj5)*(sj0)); +IkReal x7954=((cj6)*(r11)); +IkReal x7955=((cj6)*(sj4)); +IkReal x7956=((cj0)*(sj5)); +IkReal x7957=((cj4)*(cj5)); +IkReal x7958=((cj6)*(r21)); +IkReal x7959=((r20)*(sj6)); +IkReal x7960=((r10)*(sj6)); +IkReal x7961=((IkReal(1.00000000000000))*(cj0)); +IkReal x7962=((cj0)*(sj4)*(sj6)); +IkReal x7963=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7959)))+(((cj2)*(x7946)))+(((sj5)*(x7958)))); +evalcond[1]=((((r20)*(x7955)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj2)*(x7947)))+(((x7957)*(x7959)))+(((x7957)*(x7958)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7956)*(x7960)))+(((x7948)*(x7951)))+(((IkReal(-1.00000000000000))*(x7954)*(x7956)))+(((IkReal(-1.00000000000000))*(sj2)*(x7946)))+(((r12)*(x7952)))+(((x7948)*(x7949)))+(((IkReal(-1.00000000000000))*(r02)*(x7953)))); +evalcond[3]=((((r12)*(x7953)))+(x7947)+(((IkReal(-1.00000000000000))*(x7951)*(x7956)))+(((IkReal(-1.00000000000000))*(x7949)*(x7956)))+(((r02)*(x7952)))+(((IkReal(-1.00000000000000))*(x7948)*(x7960)))+(((IkReal(-1.00000000000000))*(x7948)*(x7954)))); +evalcond[4]=((((cj4)*(r02)*(x7948)))+(((IkReal(-1.00000000000000))*(x7950)*(x7952)*(x7954)))+(((r00)*(sj0)*(x7955)))+(((IkReal(-1.00000000000000))*(r10)*(x7955)*(x7961)))+(((r11)*(x7962)))+(((sj2)*(x7947)))+(((IkReal(-1.00000000000000))*(r12)*(x7950)*(x7956)))+(((IkReal(-1.00000000000000))*(x7950)*(x7952)*(x7960)))+(((cj4)*(x7951)*(x7953)))+(((IkReal(-1.00000000000000))*(r01)*(x7963)))+(((cj4)*(x7949)*(x7953)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x7955)*(x7961)))+(((r01)*(x7962)))+(x7946)+(((IkReal(-1.00000000000000))*(x7950)*(x7953)*(x7954)))+(((IkReal(-1.00000000000000))*(r02)*(x7950)*(x7956)))+(((IkReal(-1.00000000000000))*(x7950)*(x7953)*(x7960)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7955)))+(((r11)*(x7963)))+(((IkReal(-1.00000000000000))*(x7949)*(x7950)*(x7952)))+(((IkReal(-1.00000000000000))*(r12)*(x7948)*(x7950)))+(((IkReal(-1.00000000000000))*(x7950)*(x7951)*(x7952)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7964=((cj6)*(sj5)); +IkReal x7965=((IkReal(1.00000000000000))*(cj5)); +IkReal x7966=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x7966)))+(((IkReal(-1.00000000000000))*(r21)*(x7964)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7965)))+(((r11)*(sj0)*(x7964)))+(((cj0)*(r01)*(x7964)))+(((cj0)*(r00)*(x7966)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7965)))+(((r10)*(sj0)*(x7966))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x7966)))+(((IkReal(-1.00000000000000))*(r21)*(x7964)))+(((cj5)*(r22)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7965)))+(((r11)*(sj0)*(x7964)))+(((cj0)*(r01)*(x7964)))+(((cj0)*(r00)*(x7966)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7965)))+(((r10)*(sj0)*(x7966)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x7966)))+(((IkReal(-1.00000000000000))*(r21)*(x7964)))+(((cj5)*(r22)))))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x7965)))+(((r11)*(sj0)*(x7964)))+(((cj0)*(r01)*(x7964)))+(((cj0)*(r00)*(x7966)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x7965)))+(((r10)*(sj0)*(x7966))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7967=IKsin(j3); +IkReal x7968=IKcos(j3); +IkReal x7969=((sj0)*(sj5)); +IkReal x7970=((r00)*(sj6)); +IkReal x7971=((IkReal(1.00000000000000))*(cj4)); +IkReal x7972=((cj6)*(r01)); +IkReal x7973=((cj0)*(cj5)); +IkReal x7974=((cj5)*(sj0)); +IkReal x7975=((cj6)*(r11)); +IkReal x7976=((cj6)*(sj4)); +IkReal x7977=((cj0)*(sj5)); +IkReal x7978=((cj4)*(cj5)); +IkReal x7979=((cj6)*(r21)); +IkReal x7980=((r20)*(sj6)); +IkReal x7981=((r10)*(sj6)); +IkReal x7982=((IkReal(1.00000000000000))*(cj0)); +IkReal x7983=((cj0)*(sj4)*(sj6)); +IkReal x7984=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x7979)))+(((cj2)*(x7967)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x7980)))); +evalcond[1]=((((r20)*(x7976)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x7978)*(x7979)))+(((IkReal(-1.00000000000000))*(cj2)*(x7968)))+(((x7978)*(x7980)))); +evalcond[2]=((((x7969)*(x7970)))+(((x7969)*(x7972)))+(((r12)*(x7973)))+(((IkReal(-1.00000000000000))*(x7975)*(x7977)))+(((IkReal(-1.00000000000000))*(r02)*(x7974)))+(((IkReal(-1.00000000000000))*(x7977)*(x7981)))+(((IkReal(-1.00000000000000))*(sj2)*(x7967)))); +evalcond[3]=((x7968)+(((r02)*(x7973)))+(((IkReal(-1.00000000000000))*(x7970)*(x7977)))+(((IkReal(-1.00000000000000))*(x7969)*(x7981)))+(((r12)*(x7974)))+(((IkReal(-1.00000000000000))*(x7972)*(x7977)))+(((IkReal(-1.00000000000000))*(x7969)*(x7975)))); +evalcond[4]=((((cj4)*(r02)*(x7969)))+(((r00)*(sj0)*(x7976)))+(((cj4)*(x7970)*(x7974)))+(((sj2)*(x7968)))+(((IkReal(-1.00000000000000))*(r12)*(x7971)*(x7977)))+(((IkReal(-1.00000000000000))*(r10)*(x7976)*(x7982)))+(((IkReal(-1.00000000000000))*(r01)*(x7984)))+(((IkReal(-1.00000000000000))*(x7971)*(x7973)*(x7975)))+(((IkReal(-1.00000000000000))*(x7971)*(x7973)*(x7981)))+(((cj4)*(x7972)*(x7974)))+(((r11)*(x7983)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x7971)*(x7977)))+(x7967)+(((r01)*(x7983)))+(((r11)*(x7984)))+(((IkReal(-1.00000000000000))*(x7970)*(x7971)*(x7973)))+(((IkReal(-1.00000000000000))*(x7971)*(x7974)*(x7981)))+(((IkReal(-1.00000000000000))*(r00)*(x7976)*(x7982)))+(((IkReal(-1.00000000000000))*(x7971)*(x7974)*(x7975)))+(((IkReal(-1.00000000000000))*(x7971)*(x7972)*(x7973)))+(((IkReal(-1.00000000000000))*(r12)*(x7969)*(x7971)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7976)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x7985=((IkReal(1.00000000000000))*(r21)); +IkReal x7986=((cj4)*(cj5)); +IkReal x7987=((r20)*(sj6)); +if( IKabs(((gconst10)*(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7985)))+(((IkReal(-1.00000000000000))*(sj5)*(x7987)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst10)*(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7985)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x7986)*(x7987)))+(((cj6)*(r21)*(x7986))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst10)*(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x7985)))+(((IkReal(-1.00000000000000))*(sj5)*(x7987)))+(((cj5)*(r22)))))), ((gconst10)*(((((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x7985)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x7986)*(x7987)))+(((cj6)*(r21)*(x7986))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x7988=IKsin(j3); +IkReal x7989=IKcos(j3); +IkReal x7990=((sj0)*(sj5)); +IkReal x7991=((r00)*(sj6)); +IkReal x7992=((IkReal(1.00000000000000))*(cj4)); +IkReal x7993=((cj6)*(r01)); +IkReal x7994=((cj0)*(cj5)); +IkReal x7995=((cj5)*(sj0)); +IkReal x7996=((cj6)*(r11)); +IkReal x7997=((cj6)*(sj4)); +IkReal x7998=((cj0)*(sj5)); +IkReal x7999=((cj4)*(cj5)); +IkReal x8000=((cj6)*(r21)); +IkReal x8001=((r20)*(sj6)); +IkReal x8002=((r10)*(sj6)); +IkReal x8003=((IkReal(1.00000000000000))*(cj0)); +IkReal x8004=((cj0)*(sj4)*(sj6)); +IkReal x8005=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj2)*(x7988)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8001)))+(((sj5)*(x8000)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x7999)*(x8001)))+(((IkReal(-1.00000000000000))*(cj2)*(x7989)))+(((x7999)*(x8000)))+(((r20)*(x7997)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x7998)*(x8002)))+(((IkReal(-1.00000000000000))*(sj2)*(x7988)))+(((IkReal(-1.00000000000000))*(r02)*(x7995)))+(((IkReal(-1.00000000000000))*(x7996)*(x7998)))+(((x7990)*(x7993)))+(((x7990)*(x7991)))+(((r12)*(x7994)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x7991)*(x7998)))+(((IkReal(-1.00000000000000))*(x7990)*(x8002)))+(x7989)+(((IkReal(-1.00000000000000))*(x7990)*(x7996)))+(((IkReal(-1.00000000000000))*(x7993)*(x7998)))+(((r12)*(x7995)))+(((r02)*(x7994)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x7992)*(x7994)*(x7996)))+(((sj2)*(x7989)))+(((IkReal(-1.00000000000000))*(r10)*(x7997)*(x8003)))+(((IkReal(-1.00000000000000))*(x7992)*(x7994)*(x8002)))+(((r11)*(x8004)))+(((IkReal(-1.00000000000000))*(r01)*(x8005)))+(((cj4)*(r02)*(x7990)))+(((IkReal(-1.00000000000000))*(r12)*(x7992)*(x7998)))+(((cj4)*(x7991)*(x7995)))+(((r00)*(sj0)*(x7997)))+(((cj4)*(x7993)*(x7995)))); +evalcond[5]=((((r11)*(x8005)))+(((IkReal(-1.00000000000000))*(x7992)*(x7995)*(x7996)))+(((IkReal(-1.00000000000000))*(x7991)*(x7992)*(x7994)))+(x7988)+(((IkReal(-1.00000000000000))*(r00)*(x7997)*(x8003)))+(((IkReal(-1.00000000000000))*(x7992)*(x7995)*(x8002)))+(((IkReal(-1.00000000000000))*(x7992)*(x7993)*(x7994)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x7997)))+(((r01)*(x8004)))+(((IkReal(-1.00000000000000))*(r12)*(x7990)*(x7992)))+(((IkReal(-1.00000000000000))*(r02)*(x7992)*(x7998)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x8006=((IkReal(1.00000000000000))*(cj0)); +IkReal x8007=((cj4)*(sj6)); +IkReal x8008=((sj0)*(sj4)); +IkReal x8009=((cj5)*(sj6)); +IkReal x8010=((sj4)*(sj5)); +IkReal x8011=((r12)*(sj5)); +IkReal x8012=((IkReal(0.374290000000000))*(cj5)); +IkReal x8013=((r02)*(sj0)); +IkReal x8014=((IkReal(1.00000000000000))*(sj0)); +IkReal x8015=((cj0)*(r10)); +IkReal x8016=((cj4)*(cj6)); +IkReal x8017=((r00)*(sj0)); +IkReal x8018=((cj6)*(r21)); +IkReal x8019=((IkReal(0.374290000000000))*(sj5)); +IkReal x8020=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8021=((cj0)*(r02)); +IkReal x8022=((cj5)*(sj4)); +IkReal x8023=((cj6)*(r01)); +IkReal x8024=((cj0)*(r00)); +IkReal x8025=((cj6)*(r11)); +IkReal x8026=((r01)*(sj0)); +IkReal x8027=((r10)*(sj0)); +IkReal x8028=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x8029=((sj6)*(x8019)); +IkReal x8030=((cj0)*(cj6)*(x8019)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x8016)))+(((r21)*(x8007)))+(((x8018)*(x8022)))+(((IkReal(-1.00000000000000))*(cj1)))+(((r20)*(sj4)*(x8009)))+(((r22)*(x8010)))); +evalcond[2]=((((x8018)*(x8019)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x8012)))+(((IkReal(-0.0100000000000000))*(r20)*(x8009)))+(((IkReal(-1.00000000000000))*(r22)*(x8020)))+(((r20)*(x8029)))+(((IkReal(-0.0100000000000000))*(cj5)*(x8018)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x8006)*(x8007)))+(((x8015)*(x8016)))+(((IkReal(-1.00000000000000))*(r00)*(x8014)*(x8016)))+(((IkReal(-1.00000000000000))*(r12)*(x8006)*(x8010)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x8006)*(x8009)))+(((r02)*(sj5)*(x8008)))+(((x8007)*(x8026)))+(((IkReal(-1.00000000000000))*(x8006)*(x8022)*(x8025)))+(((r00)*(x8008)*(x8009)))+(((cj5)*(x8008)*(x8023)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8008)*(x8011)))+(((IkReal(-1.00000000000000))*(r01)*(x8006)*(x8007)))+(((IkReal(-1.00000000000000))*(cj5)*(x8008)*(x8025)))+(sj1)+(((IkReal(-1.00000000000000))*(x8006)*(x8022)*(x8023)))+(((x8016)*(x8024)))+(((IkReal(-1.00000000000000))*(r11)*(x8007)*(x8014)))+(((x8016)*(x8027)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x8006)*(x8009)))+(((IkReal(-1.00000000000000))*(r10)*(x8008)*(x8009)))+(((IkReal(-1.00000000000000))*(r02)*(x8006)*(x8010)))); +evalcond[5]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x8025)))+(((x8017)*(x8029)))+(((IkReal(0.0100000000000000))*(cj0)*(x8011)))+(((IkReal(0.0100000000000000))*(x8009)*(x8015)))+(((IkReal(-1.00000000000000))*(x8015)*(x8029)))+(((IkReal(-1.00000000000000))*(x8013)*(x8020)))+(((IkReal(-0.0100000000000000))*(x8009)*(x8017)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x8023)))+(((IkReal(-1.00000000000000))*(py)*(x8006)))+(((sj0)*(x8019)*(x8023)))+(((IkReal(-1.00000000000000))*(cj0)*(x8019)*(x8025)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x8012)*(x8013)))+(((cj0)*(r12)*(x8012)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((x8012)*(x8021)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x8025)))+(((IkReal(-1.00000000000000))*(px)*(x8006)))+(((r12)*(sj0)*(x8012)))+(((IkReal(-1.00000000000000))*(sj0)*(x8019)*(x8025)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x8023)))+(((IkReal(0.0100000000000000))*(x8009)*(x8027)))+(((IkReal(-1.00000000000000))*(py)*(x8014)))+(((IkReal(0.0100000000000000))*(x8009)*(x8024)))+(((IkReal(0.0100000000000000))*(sj0)*(x8011)))+(((IkReal(-1.00000000000000))*(x8027)*(x8029)))+(((IkReal(-1.00000000000000))*(cj0)*(x8019)*(x8023)))+(((IkReal(-1.00000000000000))*(x8024)*(x8029)))+(((IkReal(0.364420000000000))*(cj1)))+(((x8020)*(x8021)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst11; +gconst11=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x8031=((IkReal(1.00000000000000))*(cj0)); +IkReal x8032=((cj4)*(sj6)); +IkReal x8033=((sj0)*(sj6)); +IkReal x8034=((cj5)*(sj4)); +IkReal x8035=((IkReal(0.374290000000000))*(sj5)); +IkReal x8036=((sj4)*(sj5)); +IkReal x8037=((cj0)*(cj6)); +IkReal x8038=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8039=((cj4)*(sj5)); +IkReal x8040=((cj5)*(sj0)); +IkReal x8041=((IkReal(0.374290000000000))*(r02)); +IkReal x8042=((r20)*(sj6)); +IkReal x8043=((cj6)*(r21)); +IkReal x8044=((IkReal(1.00000000000000))*(sj0)); +IkReal x8045=((cj0)*(sj6)); +IkReal x8046=((cj4)*(cj6)); +IkReal x8047=((IkReal(0.374290000000000))*(r12)); +IkReal x8048=((cj0)*(cj5)); +IkReal x8049=((cj6)*(sj5)); +IkReal x8050=((cj6)*(r01)); +IkReal x8051=((r00)*(sj6)); +IkReal x8052=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8053=((cj6)*(r11)); +IkReal x8054=((IkReal(1.00000000000000))*(r10)); +IkReal x8055=((r02)*(sj0)); +IkReal x8056=((cj6)*(sj4)); +IkReal x8057=((r12)*(x8044)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x8032)))+(((x8034)*(x8043)))+(((IkReal(-1.00000000000000))*(r20)*(x8046)))+(((r22)*(x8036)))+(((x8034)*(x8042)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x8035)*(x8042)))+(pz)+(((IkReal(-1.00000000000000))*(x8038)*(x8043)))+(((IkReal(-1.00000000000000))*(r22)*(x8052)))+(((x8035)*(x8043)))+(((IkReal(-1.00000000000000))*(x8038)*(x8042)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(x8031)*(x8049)))+(((IkReal(-1.00000000000000))*(sj5)*(x8033)*(x8054)))+(((r12)*(x8040)))+(((IkReal(-1.00000000000000))*(r11)*(x8044)*(x8049)))+(((IkReal(-1.00000000000000))*(sj5)*(x8031)*(x8051)))+(((r02)*(x8048)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r00)*(x8044)*(x8046)))+(((r01)*(sj0)*(x8032)))+(((IkReal(-1.00000000000000))*(x8031)*(x8034)*(x8053)))+(((sj0)*(x8034)*(x8050)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x8031)*(x8034)))+(((cj4)*(r10)*(x8037)))+(((r00)*(x8033)*(x8034)))+(((IkReal(-1.00000000000000))*(r11)*(x8031)*(x8032)))+(((IkReal(-1.00000000000000))*(r12)*(x8031)*(x8036)))+(((x8036)*(x8055)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x8036)*(x8057)))+(((IkReal(-1.00000000000000))*(x8031)*(x8034)*(x8051)))+(((cj4)*(r00)*(x8037)))+(((IkReal(-1.00000000000000))*(r02)*(x8031)*(x8036)))+(((IkReal(-1.00000000000000))*(x8033)*(x8034)*(x8054)))+(((r10)*(sj0)*(x8046)))+(((IkReal(-1.00000000000000))*(r01)*(x8031)*(x8032)))+(((IkReal(-1.00000000000000))*(x8031)*(x8034)*(x8050)))+(((IkReal(-1.00000000000000))*(x8034)*(x8044)*(x8053)))+(((IkReal(-1.00000000000000))*(r11)*(x8032)*(x8044)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x8035)*(x8037)))+(((cj0)*(r12)*(x8052)))+(((IkReal(-1.00000000000000))*(sj0)*(x8038)*(x8050)))+(((r00)*(x8033)*(x8035)))+(((IkReal(-1.00000000000000))*(r00)*(x8033)*(x8038)))+(((IkReal(-1.00000000000000))*(r10)*(x8035)*(x8045)))+(((IkReal(-1.00000000000000))*(x8052)*(x8055)))+(((IkReal(-1.00000000000000))*(x8040)*(x8041)))+(((IkReal(-1.00000000000000))*(py)*(x8031)))+(((sj0)*(x8035)*(x8050)))+(((px)*(sj0)))+(((x8047)*(x8048)))+(((r11)*(x8037)*(x8038)))+(((r10)*(x8038)*(x8045)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x8040)*(x8046)))+(((IkReal(-1.00000000000000))*(r10)*(x8044)*(x8056)))+(((IkReal(-1.00000000000000))*(x8032)*(x8040)*(x8054)))+(((r01)*(sj4)*(x8045)))+(((r11)*(sj4)*(x8033)))+(((IkReal(-1.00000000000000))*(r00)*(x8031)*(x8056)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8031)*(x8032)))+(((IkReal(-1.00000000000000))*(r02)*(x8031)*(x8039)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x8031)*(x8046)))+(((IkReal(-1.00000000000000))*(x8039)*(x8057)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r12)*(sj0)*(x8052)))+(((r00)*(x8038)*(x8045)))+(((r01)*(x8037)*(x8038)))+(((IkReal(-1.00000000000000))*(px)*(x8031)))+(((IkReal(-1.00000000000000))*(r01)*(x8035)*(x8037)))+(((x8040)*(x8047)))+(((IkReal(-1.00000000000000))*(sj0)*(x8035)*(x8053)))+(((cj0)*(r02)*(x8052)))+(((IkReal(-1.00000000000000))*(r10)*(x8033)*(x8035)))+(((IkReal(-1.00000000000000))*(py)*(x8044)))+(((sj0)*(x8038)*(x8053)))+(((IkReal(-1.00000000000000))*(r00)*(x8035)*(x8045)))+(((x8041)*(x8048)))+(((r10)*(x8033)*(x8038)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8058=((r20)*(sj6)); +IkReal x8059=((cj4)*(cj5)); +IkReal x8060=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8059)*(x8060)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8058)*(x8059))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x8058)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8060))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8059)*(x8060)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8058)*(x8059)))))+IKsqr(((((sj5)*(x8058)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8060)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8059)*(x8060)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8058)*(x8059)))), ((((sj5)*(x8058)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8060))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x8061=IKcos(j3); +IkReal x8062=((sj0)*(sj5)); +IkReal x8063=((r00)*(sj6)); +IkReal x8064=((cj6)*(r01)); +IkReal x8065=((cj5)*(sj0)); +IkReal x8066=((cj0)*(cj5)); +IkReal x8067=((cj6)*(sj4)); +IkReal x8068=((sj4)*(sj6)); +IkReal x8069=((cj0)*(r11)); +IkReal x8070=((cj4)*(cj6)); +IkReal x8071=((cj4)*(sj6)); +IkReal x8072=((IkReal(1.00000000000000))*(cj0)); +IkReal x8073=((cj4)*(sj5)); +IkReal x8074=((sj5)*(sj6)); +IkReal x8075=((cj6)*(sj5)); +IkReal x8076=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r21)*(x8075)))+(((r20)*(x8074)))+(((IkReal(-1.00000000000000))*(x8061)))); +evalcond[1]=((((cj5)*(r21)*(x8070)))+(((r20)*(x8067)))+(((IkReal(-1.00000000000000))*(x8076)))+(((cj5)*(r20)*(x8071)))+(((IkReal(-1.00000000000000))*(r21)*(x8068)))+(((r22)*(x8073)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x8065)))+(((IkReal(-1.00000000000000))*(x8069)*(x8075)))+(((x8062)*(x8064)))+(((IkReal(-1.00000000000000))*(x8076)))+(((r12)*(x8066)))+(((IkReal(-1.00000000000000))*(r10)*(x8072)*(x8074)))+(((x8062)*(x8063)))); +evalcond[3]=((((x8068)*(x8069)))+(((IkReal(-1.00000000000000))*(r11)*(x8066)*(x8070)))+(((IkReal(-1.00000000000000))*(r12)*(x8072)*(x8073)))+(((cj4)*(x8063)*(x8065)))+(((cj4)*(x8064)*(x8065)))+(x8061)+(((cj4)*(r02)*(x8062)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x8068)))+(((IkReal(-1.00000000000000))*(r10)*(x8066)*(x8071)))+(((r00)*(sj0)*(x8067)))+(((IkReal(-1.00000000000000))*(r10)*(x8067)*(x8072)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x8077=((IkReal(1.00000000000000))*(cj0)); +IkReal x8078=((cj4)*(sj6)); +IkReal x8079=((sj0)*(sj6)); +IkReal x8080=((cj5)*(sj4)); +IkReal x8081=((IkReal(0.374290000000000))*(sj5)); +IkReal x8082=((sj4)*(sj5)); +IkReal x8083=((cj0)*(cj6)); +IkReal x8084=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8085=((cj4)*(sj5)); +IkReal x8086=((cj5)*(sj0)); +IkReal x8087=((IkReal(0.374290000000000))*(r02)); +IkReal x8088=((r20)*(sj6)); +IkReal x8089=((cj6)*(r21)); +IkReal x8090=((IkReal(1.00000000000000))*(sj0)); +IkReal x8091=((cj0)*(sj6)); +IkReal x8092=((cj4)*(cj6)); +IkReal x8093=((IkReal(0.374290000000000))*(r12)); +IkReal x8094=((cj0)*(cj5)); +IkReal x8095=((cj6)*(sj5)); +IkReal x8096=((cj6)*(r01)); +IkReal x8097=((r00)*(sj6)); +IkReal x8098=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8099=((cj6)*(r11)); +IkReal x8100=((IkReal(1.00000000000000))*(r10)); +IkReal x8101=((r02)*(sj0)); +IkReal x8102=((cj6)*(sj4)); +IkReal x8103=((r12)*(x8090)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x8080)*(x8089)))+(((r21)*(x8078)))+(((x8080)*(x8088)))+(((r22)*(x8082)))+(((IkReal(-1.00000000000000))*(r20)*(x8092)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x8084)*(x8089)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x8081)*(x8088)))+(pz)+(((IkReal(-1.00000000000000))*(x8084)*(x8088)))+(((IkReal(-1.00000000000000))*(r22)*(x8098)))+(((x8081)*(x8089)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x8077)*(x8097)))+(((IkReal(-1.00000000000000))*(r11)*(x8090)*(x8095)))+(((r02)*(x8094)))+(((IkReal(-1.00000000000000))*(sj5)*(x8079)*(x8100)))+(((r12)*(x8086)))+(((IkReal(-1.00000000000000))*(r01)*(x8077)*(x8095)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x8077)*(x8082)))+(((r00)*(x8079)*(x8080)))+(((IkReal(-1.00000000000000))*(r11)*(x8077)*(x8078)))+(((IkReal(-1.00000000000000))*(x8077)*(x8080)*(x8099)))+(((IkReal(-1.00000000000000))*(r00)*(x8090)*(x8092)))+(((x8082)*(x8101)))+(((cj4)*(r10)*(x8083)))+(((r01)*(sj0)*(x8078)))+(((sj0)*(x8080)*(x8096)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x8077)*(x8080)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((r10)*(sj0)*(x8092)))+(((IkReal(-1.00000000000000))*(x8077)*(x8080)*(x8097)))+(((IkReal(-1.00000000000000))*(r02)*(x8077)*(x8082)))+(((IkReal(-1.00000000000000))*(x8077)*(x8080)*(x8096)))+(((IkReal(-1.00000000000000))*(x8079)*(x8080)*(x8100)))+(((IkReal(-1.00000000000000))*(r11)*(x8078)*(x8090)))+(((IkReal(-1.00000000000000))*(x8082)*(x8103)))+(((IkReal(-1.00000000000000))*(r01)*(x8077)*(x8078)))+(((IkReal(-1.00000000000000))*(x8080)*(x8090)*(x8099)))+(((cj4)*(r00)*(x8083)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x8079)*(x8084)))+(((IkReal(-1.00000000000000))*(sj0)*(x8084)*(x8096)))+(((cj0)*(r12)*(x8098)))+(((IkReal(-1.00000000000000))*(r10)*(x8081)*(x8091)))+(((sj0)*(x8081)*(x8096)))+(((r10)*(x8084)*(x8091)))+(((r00)*(x8079)*(x8081)))+(((IkReal(-1.00000000000000))*(x8086)*(x8087)))+(((r11)*(x8083)*(x8084)))+(((IkReal(-1.00000000000000))*(py)*(x8077)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x8081)*(x8083)))+(((x8093)*(x8094)))+(((IkReal(-1.00000000000000))*(x8098)*(x8101)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8077)*(x8078)))+(((r01)*(sj4)*(x8091)))+(((IkReal(-1.00000000000000))*(r10)*(x8090)*(x8102)))+(((IkReal(-1.00000000000000))*(r00)*(x8077)*(x8102)))+(((r11)*(sj4)*(x8079)))+(((IkReal(-1.00000000000000))*(r11)*(x8086)*(x8092)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x8077)*(x8092)))+(((IkReal(-1.00000000000000))*(r02)*(x8077)*(x8085)))+(((IkReal(-1.00000000000000))*(x8085)*(x8103)))+(((IkReal(-1.00000000000000))*(x8078)*(x8086)*(x8100)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj0)*(r02)*(x8098)))+(((IkReal(-1.00000000000000))*(r10)*(x8079)*(x8081)))+(((IkReal(-1.00000000000000))*(py)*(x8090)))+(((r12)*(sj0)*(x8098)))+(((r00)*(x8084)*(x8091)))+(((x8086)*(x8093)))+(((IkReal(-1.00000000000000))*(r00)*(x8081)*(x8091)))+(((IkReal(-1.00000000000000))*(px)*(x8077)))+(((r10)*(x8079)*(x8084)))+(((sj0)*(x8084)*(x8099)))+(((IkReal(-1.00000000000000))*(sj0)*(x8081)*(x8099)))+(((IkReal(-1.00000000000000))*(r01)*(x8081)*(x8083)))+(((r01)*(x8083)*(x8084)))+(((x8087)*(x8094)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8104=((IkReal(1.00000000000000))*(sj5)); +IkReal x8105=((cj6)*(r21)); +IkReal x8106=((r20)*(sj6)); +IkReal x8107=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x8105)*(x8107)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8104)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8106)*(x8107)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x8104)*(x8105)))+(((IkReal(-1.00000000000000))*(x8104)*(x8106)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x8105)*(x8107)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8104)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8106)*(x8107)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x8104)*(x8105)))+(((IkReal(-1.00000000000000))*(x8104)*(x8106)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x8105)*(x8107)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8104)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8106)*(x8107)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x8104)*(x8105)))+(((IkReal(-1.00000000000000))*(x8104)*(x8106)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x8108=IKsin(j3); +IkReal x8109=IKcos(j3); +IkReal x8110=((sj0)*(sj5)); +IkReal x8111=((r00)*(sj6)); +IkReal x8112=((cj6)*(r01)); +IkReal x8113=((cj5)*(sj0)); +IkReal x8114=((cj0)*(cj5)); +IkReal x8115=((cj6)*(sj4)); +IkReal x8116=((sj4)*(sj6)); +IkReal x8117=((cj0)*(r11)); +IkReal x8118=((cj4)*(cj6)); +IkReal x8119=((cj4)*(sj6)); +IkReal x8120=((IkReal(1.00000000000000))*(cj0)); +IkReal x8121=((cj4)*(sj5)); +IkReal x8122=((sj5)*(sj6)); +IkReal x8123=((cj6)*(sj5)); +evalcond[0]=((x8109)+(((r21)*(x8123)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x8122)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x8116)))+(((cj5)*(r20)*(x8119)))+(x8108)+(((r20)*(x8115)))+(((r22)*(x8121)))+(((cj5)*(r21)*(x8118)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8108)))+(((r12)*(x8114)))+(((IkReal(-1.00000000000000))*(r10)*(x8120)*(x8122)))+(((x8110)*(x8111)))+(((x8110)*(x8112)))+(((IkReal(-1.00000000000000))*(r02)*(x8113)))+(((IkReal(-1.00000000000000))*(x8117)*(x8123)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x8114)*(x8118)))+(((cj4)*(x8111)*(x8113)))+(((IkReal(-1.00000000000000))*(r10)*(x8115)*(x8120)))+(x8109)+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x8116)))+(((x8116)*(x8117)))+(((cj4)*(x8112)*(x8113)))+(((IkReal(-1.00000000000000))*(r10)*(x8114)*(x8119)))+(((cj4)*(r02)*(x8110)))+(((r00)*(sj0)*(x8115)))+(((IkReal(-1.00000000000000))*(r12)*(x8120)*(x8121)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8124=((cj0)*(cj5)); +IkReal x8125=((IkReal(1.00000000000000))*(cj0)); +IkReal x8126=((cj6)*(r11)); +IkReal x8127=((r10)*(sj6)); +IkReal x8128=((cj5)*(sj0)); +IkReal x8129=((r00)*(sj5)*(sj6)); +IkReal x8130=((cj6)*(r01)*(sj5)); +IkReal x8131=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((r12)*(x8124)))+(((IkReal(-1.00000000000000))*(r02)*(x8128)))+(((sj0)*(x8129)))+(((sj0)*(x8130)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8127)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8126))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x8125)*(x8130)))+(((IkReal(-1.00000000000000))*(x8125)*(x8129)))+(((r12)*(x8128)))+(((IkReal(-1.00000000000000))*(x8127)*(x8131)))+(((IkReal(-1.00000000000000))*(x8126)*(x8131)))+(((r02)*(x8124))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r12)*(x8124)))+(((IkReal(-1.00000000000000))*(r02)*(x8128)))+(((sj0)*(x8129)))+(((sj0)*(x8130)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8127)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8126)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x8125)*(x8130)))+(((IkReal(-1.00000000000000))*(x8125)*(x8129)))+(((r12)*(x8128)))+(((IkReal(-1.00000000000000))*(x8127)*(x8131)))+(((IkReal(-1.00000000000000))*(x8126)*(x8131)))+(((r02)*(x8124)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r12)*(x8124)))+(((IkReal(-1.00000000000000))*(r02)*(x8128)))+(((sj0)*(x8129)))+(((sj0)*(x8130)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8127)))+(((IkReal(-1.00000000000000))*(sj5)*(x8125)*(x8126)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x8125)*(x8130)))+(((IkReal(-1.00000000000000))*(x8125)*(x8129)))+(((r12)*(x8128)))+(((IkReal(-1.00000000000000))*(x8127)*(x8131)))+(((IkReal(-1.00000000000000))*(x8126)*(x8131)))+(((r02)*(x8124))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8132=IKsin(j3); +IkReal x8133=IKcos(j3); +IkReal x8134=((sj0)*(sj5)); +IkReal x8135=((r00)*(sj6)); +IkReal x8136=((cj6)*(r01)); +IkReal x8137=((cj4)*(cj5)); +IkReal x8138=((IkReal(1.00000000000000))*(cj0)); +IkReal x8139=((cj5)*(r12)); +IkReal x8140=((IkReal(1.00000000000000))*(sj0)); +IkReal x8141=((cj6)*(r11)); +IkReal x8142=((cj5)*(r02)); +IkReal x8143=((IkReal(1.00000000000000))*(cj1)); +IkReal x8144=((cj6)*(sj4)); +IkReal x8145=((cj6)*(r21)); +IkReal x8146=((r20)*(sj6)); +IkReal x8147=((r10)*(sj6)); +IkReal x8148=((sj4)*(sj6)); +IkReal x8149=((cj4)*(r02)); +IkReal x8150=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x8151=((IkReal(1.00000000000000))*(x8132)); +IkReal x8152=((cj0)*(x8148)); +evalcond[0]=((((sj5)*(x8146)))+(((IkReal(-1.00000000000000))*(sj1)*(x8133)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8145)))); +evalcond[1]=((((r20)*(x8144)))+(((IkReal(-1.00000000000000))*(r21)*(x8148)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x8151)))+(((x8137)*(x8146)))+(((x8137)*(x8145)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x8138)*(x8147)))+(((IkReal(-1.00000000000000))*(x8151)))+(((IkReal(-1.00000000000000))*(x8140)*(x8142)))+(((x8134)*(x8136)))+(((IkReal(-1.00000000000000))*(sj5)*(x8138)*(x8141)))+(((cj0)*(x8139)))+(((x8134)*(x8135)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8134)*(x8147)))+(((IkReal(-1.00000000000000))*(sj5)*(x8135)*(x8138)))+(((IkReal(-1.00000000000000))*(sj5)*(x8136)*(x8138)))+(((cj0)*(x8142)))+(((IkReal(-1.00000000000000))*(x8134)*(x8141)))+(((sj0)*(x8139)))+(((IkReal(-1.00000000000000))*(x8133)*(x8143)))); +evalcond[4]=((((x8134)*(x8149)))+(x8133)+(((IkReal(-1.00000000000000))*(r10)*(x8138)*(x8144)))+(((r11)*(x8152)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x8138)))+(((r00)*(sj0)*(x8144)))+(((IkReal(-1.00000000000000))*(x8137)*(x8138)*(x8141)))+(((sj0)*(x8135)*(x8137)))+(((sj0)*(x8136)*(x8137)))+(((IkReal(-1.00000000000000))*(x8137)*(x8138)*(x8147)))+(((IkReal(-1.00000000000000))*(r01)*(x8140)*(x8148)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x8138)*(x8144)))+(((IkReal(-1.00000000000000))*(x8137)*(x8140)*(x8141)))+(((IkReal(-1.00000000000000))*(sj5)*(x8138)*(x8149)))+(((IkReal(-1.00000000000000))*(r10)*(x8140)*(x8144)))+(((IkReal(-1.00000000000000))*(x8137)*(x8140)*(x8147)))+(((r11)*(sj0)*(x8148)))+(((IkReal(-1.00000000000000))*(x8134)*(x8150)))+(((r01)*(x8152)))+(((IkReal(-1.00000000000000))*(x8136)*(x8137)*(x8138)))+(((IkReal(-1.00000000000000))*(x8135)*(x8137)*(x8138)))+(((IkReal(-1.00000000000000))*(x8132)*(x8143)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8153=((sj5)*(sj6)); +IkReal x8154=((cj6)*(sj5)); +IkReal x8155=((IkReal(1.00000000000000))*(cj0)); +IkReal x8156=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8156)))+(((r01)*(sj0)*(x8154)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x8153)*(x8155)))+(((r00)*(sj0)*(x8153)))+(((IkReal(-1.00000000000000))*(r11)*(x8154)*(x8155))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8153)))+(((r21)*(x8154)))+(((IkReal(-1.00000000000000))*(r22)*(x8156))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8156)))+(((r01)*(sj0)*(x8154)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x8153)*(x8155)))+(((r00)*(sj0)*(x8153)))+(((IkReal(-1.00000000000000))*(r11)*(x8154)*(x8155)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8153)))+(((r21)*(x8154)))+(((IkReal(-1.00000000000000))*(r22)*(x8156)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8156)))+(((r01)*(sj0)*(x8154)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x8153)*(x8155)))+(((r00)*(sj0)*(x8153)))+(((IkReal(-1.00000000000000))*(r11)*(x8154)*(x8155)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8153)))+(((r21)*(x8154)))+(((IkReal(-1.00000000000000))*(r22)*(x8156))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8157=IKsin(j3); +IkReal x8158=IKcos(j3); +IkReal x8159=((sj0)*(sj5)); +IkReal x8160=((r00)*(sj6)); +IkReal x8161=((cj6)*(r01)); +IkReal x8162=((cj4)*(cj5)); +IkReal x8163=((IkReal(1.00000000000000))*(cj0)); +IkReal x8164=((cj5)*(r12)); +IkReal x8165=((IkReal(1.00000000000000))*(sj0)); +IkReal x8166=((cj6)*(r11)); +IkReal x8167=((cj5)*(r02)); +IkReal x8168=((IkReal(1.00000000000000))*(cj1)); +IkReal x8169=((cj6)*(sj4)); +IkReal x8170=((cj6)*(r21)); +IkReal x8171=((r20)*(sj6)); +IkReal x8172=((r10)*(sj6)); +IkReal x8173=((sj4)*(sj6)); +IkReal x8174=((cj4)*(r02)); +IkReal x8175=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x8176=((IkReal(1.00000000000000))*(x8157)); +IkReal x8177=((cj0)*(x8173)); +evalcond[0]=((((sj5)*(x8171)))+(((IkReal(-1.00000000000000))*(sj1)*(x8158)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8170)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x8176)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x8169)))+(((x8162)*(x8171)))+(((x8162)*(x8170)))+(((IkReal(-1.00000000000000))*(r21)*(x8173)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8176)))+(((x8159)*(x8160)))+(((IkReal(-1.00000000000000))*(sj5)*(x8163)*(x8172)))+(((IkReal(-1.00000000000000))*(sj5)*(x8163)*(x8166)))+(((cj0)*(x8164)))+(((x8159)*(x8161)))+(((IkReal(-1.00000000000000))*(x8165)*(x8167)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8158)*(x8168)))+(((IkReal(-1.00000000000000))*(sj5)*(x8161)*(x8163)))+(((sj0)*(x8164)))+(((IkReal(-1.00000000000000))*(x8159)*(x8172)))+(((IkReal(-1.00000000000000))*(x8159)*(x8166)))+(((cj0)*(x8167)))+(((IkReal(-1.00000000000000))*(sj5)*(x8160)*(x8163)))); +evalcond[4]=((x8158)+(((IkReal(-1.00000000000000))*(x8162)*(x8163)*(x8166)))+(((x8159)*(x8174)))+(((sj0)*(x8161)*(x8162)))+(((r11)*(x8177)))+(((IkReal(-1.00000000000000))*(r01)*(x8165)*(x8173)))+(((IkReal(-1.00000000000000))*(x8162)*(x8163)*(x8172)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x8163)))+(((r00)*(sj0)*(x8169)))+(((sj0)*(x8160)*(x8162)))+(((IkReal(-1.00000000000000))*(r10)*(x8163)*(x8169)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8162)*(x8165)*(x8172)))+(((IkReal(-1.00000000000000))*(r10)*(x8165)*(x8169)))+(((IkReal(-1.00000000000000))*(x8157)*(x8168)))+(((r11)*(sj0)*(x8173)))+(((IkReal(-1.00000000000000))*(x8161)*(x8162)*(x8163)))+(((IkReal(-1.00000000000000))*(sj5)*(x8163)*(x8174)))+(((IkReal(-1.00000000000000))*(x8162)*(x8165)*(x8166)))+(((IkReal(-1.00000000000000))*(x8160)*(x8162)*(x8163)))+(((r01)*(x8177)))+(((IkReal(-1.00000000000000))*(x8159)*(x8175)))+(((IkReal(-1.00000000000000))*(r00)*(x8163)*(x8169)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8178=((r20)*(sj6)); +IkReal x8179=((cj4)*(cj5)); +IkReal x8180=((cj6)*(r21)); +if( IKabs(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8178)*(x8179)))+(((x8179)*(x8180))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst11)*(((((sj5)*(x8180)))+(((sj5)*(x8178)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8178)*(x8179)))+(((x8179)*(x8180)))))), ((gconst11)*(((((sj5)*(x8180)))+(((sj5)*(x8178)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8181=IKsin(j3); +IkReal x8182=IKcos(j3); +IkReal x8183=((sj0)*(sj5)); +IkReal x8184=((r00)*(sj6)); +IkReal x8185=((cj6)*(r01)); +IkReal x8186=((cj4)*(cj5)); +IkReal x8187=((IkReal(1.00000000000000))*(cj0)); +IkReal x8188=((cj5)*(r12)); +IkReal x8189=((IkReal(1.00000000000000))*(sj0)); +IkReal x8190=((cj6)*(r11)); +IkReal x8191=((cj5)*(r02)); +IkReal x8192=((IkReal(1.00000000000000))*(cj1)); +IkReal x8193=((cj6)*(sj4)); +IkReal x8194=((cj6)*(r21)); +IkReal x8195=((r20)*(sj6)); +IkReal x8196=((r10)*(sj6)); +IkReal x8197=((sj4)*(sj6)); +IkReal x8198=((cj4)*(r02)); +IkReal x8199=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x8200=((IkReal(1.00000000000000))*(x8181)); +IkReal x8201=((cj0)*(x8197)); +evalcond[0]=((((sj5)*(x8194)))+(((sj5)*(x8195)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x8182)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x8197)))+(((IkReal(-1.00000000000000))*(sj1)*(x8200)))+(((cj4)*(r22)*(sj5)))+(((x8186)*(x8195)))+(((r20)*(x8193)))+(((x8186)*(x8194)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8200)))+(((cj0)*(x8188)))+(((x8183)*(x8185)))+(((IkReal(-1.00000000000000))*(x8189)*(x8191)))+(((x8183)*(x8184)))+(((IkReal(-1.00000000000000))*(sj5)*(x8187)*(x8196)))+(((IkReal(-1.00000000000000))*(sj5)*(x8187)*(x8190)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x8185)*(x8187)))+(((IkReal(-1.00000000000000))*(x8183)*(x8190)))+(((IkReal(-1.00000000000000))*(x8183)*(x8196)))+(((IkReal(-1.00000000000000))*(sj5)*(x8184)*(x8187)))+(((IkReal(-1.00000000000000))*(x8182)*(x8192)))+(((sj0)*(x8188)))+(((cj0)*(x8191)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8186)*(x8187)*(x8190)))+(((IkReal(-1.00000000000000))*(r01)*(x8189)*(x8197)))+(((IkReal(-1.00000000000000))*(x8186)*(x8187)*(x8196)))+(x8182)+(((sj0)*(x8185)*(x8186)))+(((IkReal(-1.00000000000000))*(r10)*(x8187)*(x8193)))+(((r11)*(x8201)))+(((sj0)*(x8184)*(x8186)))+(((x8183)*(x8198)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x8187)))+(((r00)*(sj0)*(x8193)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x8189)*(x8193)))+(((IkReal(-1.00000000000000))*(x8185)*(x8186)*(x8187)))+(((IkReal(-1.00000000000000))*(x8186)*(x8189)*(x8196)))+(((IkReal(-1.00000000000000))*(x8183)*(x8199)))+(((r01)*(x8201)))+(((IkReal(-1.00000000000000))*(sj5)*(x8187)*(x8198)))+(((IkReal(-1.00000000000000))*(x8181)*(x8192)))+(((IkReal(-1.00000000000000))*(x8184)*(x8186)*(x8187)))+(((r11)*(sj0)*(x8197)))+(((IkReal(-1.00000000000000))*(x8186)*(x8189)*(x8190)))+(((IkReal(-1.00000000000000))*(r00)*(x8187)*(x8193)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x8202=((IkReal(1.00000000000000))*(cj0)); +IkReal x8203=((cj4)*(sj6)); +IkReal x8204=((sj0)*(sj4)); +IkReal x8205=((cj5)*(sj6)); +IkReal x8206=((sj4)*(sj5)); +IkReal x8207=((r12)*(sj5)); +IkReal x8208=((IkReal(0.374290000000000))*(cj5)); +IkReal x8209=((r02)*(sj0)); +IkReal x8210=((IkReal(1.00000000000000))*(sj0)); +IkReal x8211=((cj0)*(r10)); +IkReal x8212=((cj4)*(cj6)); +IkReal x8213=((r00)*(sj0)); +IkReal x8214=((cj6)*(r21)); +IkReal x8215=((IkReal(0.374290000000000))*(sj5)); +IkReal x8216=((cj0)*(r00)); +IkReal x8217=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8218=((cj0)*(r02)); +IkReal x8219=((cj5)*(sj4)); +IkReal x8220=((cj6)*(r01)); +IkReal x8221=((cj6)*(r11)); +IkReal x8222=((r01)*(sj0)); +IkReal x8223=((r10)*(sj0)); +IkReal x8224=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x8225=((sj6)*(x8215)); +IkReal x8226=((cj0)*(cj6)*(x8215)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x8203)))+(((r22)*(x8206)))+(((x8214)*(x8219)))+(cj1)+(((IkReal(-1.00000000000000))*(r20)*(x8212)))+(((r20)*(sj4)*(x8205)))); +evalcond[2]=((((r20)*(x8225)))+(((IkReal(-0.0100000000000000))*(cj5)*(x8214)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x8217)))+(((IkReal(-1.00000000000000))*(r22)*(x8208)))+(pz)+(((x8214)*(x8215)))+(((IkReal(-0.0100000000000000))*(r20)*(x8205)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8202)*(x8219)*(x8221)))+(((IkReal(-1.00000000000000))*(r11)*(x8202)*(x8203)))+(((x8211)*(x8212)))+(((r02)*(sj5)*(x8204)))+(((IkReal(-1.00000000000000))*(r12)*(x8202)*(x8206)))+(((r00)*(x8204)*(x8205)))+(((cj5)*(x8204)*(x8220)))+(((IkReal(-1.00000000000000))*(r00)*(x8210)*(x8212)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x8202)*(x8205)))+(((x8203)*(x8222)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj5)*(x8204)*(x8221)))+(((IkReal(-1.00000000000000))*(r02)*(x8202)*(x8206)))+(((IkReal(-1.00000000000000))*(r01)*(x8202)*(x8203)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x8202)*(x8205)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r11)*(x8203)*(x8210)))+(((IkReal(-1.00000000000000))*(x8202)*(x8219)*(x8220)))+(((IkReal(-1.00000000000000))*(r10)*(x8204)*(x8205)))+(((x8212)*(x8223)))+(((IkReal(-1.00000000000000))*(x8204)*(x8207)))+(((x8212)*(x8216)))); +evalcond[5]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x8202)))+(((IkReal(-1.00000000000000))*(x8211)*(x8225)))+(((IkReal(-0.0100000000000000))*(x8205)*(x8213)))+(((IkReal(-1.00000000000000))*(x8208)*(x8209)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x8221)))+(((IkReal(-1.00000000000000))*(cj0)*(x8215)*(x8221)))+(((IkReal(0.0100000000000000))*(x8205)*(x8211)))+(((IkReal(-1.00000000000000))*(x8209)*(x8217)))+(((sj0)*(x8215)*(x8220)))+(((x8213)*(x8225)))+(((cj0)*(r12)*(x8208)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x8220)))+(((IkReal(0.0100000000000000))*(cj0)*(x8207)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((x8208)*(x8218)))+(((IkReal(0.0100000000000000))*(sj0)*(x8207)))+(((r12)*(sj0)*(x8208)))+(((IkReal(-1.00000000000000))*(x8223)*(x8225)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x8221)))+(((IkReal(-1.00000000000000))*(cj0)*(x8215)*(x8220)))+(((IkReal(-1.00000000000000))*(sj0)*(x8215)*(x8221)))+(((IkReal(-1.00000000000000))*(x8216)*(x8225)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x8220)))+(((IkReal(0.0100000000000000))*(x8205)*(x8223)))+(((IkReal(-1.00000000000000))*(px)*(x8202)))+(((x8217)*(x8218)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(0.0100000000000000))*(x8205)*(x8216)))+(((IkReal(-1.00000000000000))*(py)*(x8210)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst12; +gconst12=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x8227=((IkReal(1.00000000000000))*(cj0)); +IkReal x8228=((cj4)*(sj6)); +IkReal x8229=((sj0)*(sj6)); +IkReal x8230=((cj5)*(sj4)); +IkReal x8231=((IkReal(0.374290000000000))*(sj5)); +IkReal x8232=((sj4)*(sj5)); +IkReal x8233=((cj0)*(cj6)); +IkReal x8234=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8235=((cj4)*(sj5)); +IkReal x8236=((cj5)*(sj0)); +IkReal x8237=((IkReal(0.374290000000000))*(r02)); +IkReal x8238=((r20)*(sj6)); +IkReal x8239=((cj6)*(r21)); +IkReal x8240=((IkReal(1.00000000000000))*(sj0)); +IkReal x8241=((cj0)*(sj6)); +IkReal x8242=((cj4)*(cj6)); +IkReal x8243=((IkReal(0.374290000000000))*(r12)); +IkReal x8244=((cj0)*(cj5)); +IkReal x8245=((cj6)*(sj5)); +IkReal x8246=((cj6)*(r01)); +IkReal x8247=((r00)*(sj6)); +IkReal x8248=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8249=((cj6)*(r11)); +IkReal x8250=((IkReal(1.00000000000000))*(r10)); +IkReal x8251=((r02)*(sj0)); +IkReal x8252=((cj6)*(sj4)); +IkReal x8253=((r12)*(x8240)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x8242)))+(((x8230)*(x8239)))+(((x8230)*(x8238)))+(((r21)*(x8228)))+(((r22)*(x8232)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(x8234)*(x8238)))+(((IkReal(-1.00000000000000))*(x8234)*(x8239)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x8231)*(x8239)))+(((x8231)*(x8238)))+(((IkReal(-1.00000000000000))*(r22)*(x8248)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x8240)*(x8245)))+(((IkReal(-1.00000000000000))*(r01)*(x8227)*(x8245)))+(((IkReal(-1.00000000000000))*(sj5)*(x8229)*(x8250)))+(((IkReal(-1.00000000000000))*(sj5)*(x8227)*(x8247)))+(((r02)*(x8244)))+(((r12)*(x8236)))); +evalcond[4]=((((sj0)*(x8230)*(x8246)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x8227)*(x8230)))+(((IkReal(-1.00000000000000))*(r00)*(x8240)*(x8242)))+(((r00)*(x8229)*(x8230)))+(((IkReal(-1.00000000000000))*(r11)*(x8227)*(x8228)))+(((x8232)*(x8251)))+(((IkReal(-1.00000000000000))*(r12)*(x8227)*(x8232)))+(((IkReal(-1.00000000000000))*(x8227)*(x8230)*(x8249)))+(((r01)*(sj0)*(x8228)))+(((cj4)*(r10)*(x8233)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((cj4)*(r00)*(x8233)))+(((IkReal(-1.00000000000000))*(r11)*(x8228)*(x8240)))+(((IkReal(-1.00000000000000))*(r01)*(x8227)*(x8228)))+(((IkReal(-1.00000000000000))*(r02)*(x8227)*(x8232)))+(((r10)*(sj0)*(x8242)))+(((IkReal(-1.00000000000000))*(x8230)*(x8240)*(x8249)))+(((IkReal(-1.00000000000000))*(x8227)*(x8230)*(x8247)))+(((IkReal(-1.00000000000000))*(x8229)*(x8230)*(x8250)))+(((IkReal(-1.00000000000000))*(x8227)*(x8230)*(x8246)))+(((IkReal(-1.00000000000000))*(x8232)*(x8253)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r10)*(x8234)*(x8241)))+(((IkReal(-1.00000000000000))*(py)*(x8227)))+(((IkReal(-1.00000000000000))*(r00)*(x8229)*(x8234)))+(((IkReal(-1.00000000000000))*(x8248)*(x8251)))+(((r11)*(x8233)*(x8234)))+(((r00)*(x8229)*(x8231)))+(((IkReal(-1.00000000000000))*(r10)*(x8231)*(x8241)))+(((IkReal(-1.00000000000000))*(r11)*(x8231)*(x8233)))+(((sj0)*(x8231)*(x8246)))+(((IkReal(-1.00000000000000))*(sj0)*(x8234)*(x8246)))+(((x8243)*(x8244)))+(((cj0)*(r12)*(x8248)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x8236)*(x8237)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r02)*(x8227)*(x8235)))+(((IkReal(-1.00000000000000))*(x8228)*(x8236)*(x8250)))+(((IkReal(-1.00000000000000))*(r10)*(x8240)*(x8252)))+(((r01)*(sj4)*(x8241)))+(((IkReal(-1.00000000000000))*(r11)*(x8236)*(x8242)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x8227)*(x8242)))+(((IkReal(-1.00000000000000))*(x8235)*(x8253)))+(((IkReal(-1.00000000000000))*(r00)*(x8227)*(x8252)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8227)*(x8228)))+(((r11)*(sj4)*(x8229)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj0)*(r02)*(x8248)))+(((IkReal(-1.00000000000000))*(px)*(x8227)))+(((x8237)*(x8244)))+(((sj0)*(x8234)*(x8249)))+(((r12)*(sj0)*(x8248)))+(((IkReal(-1.00000000000000))*(r01)*(x8231)*(x8233)))+(((IkReal(-1.00000000000000))*(r10)*(x8229)*(x8231)))+(((IkReal(-1.00000000000000))*(sj0)*(x8231)*(x8249)))+(((IkReal(-1.00000000000000))*(r00)*(x8231)*(x8241)))+(((r01)*(x8233)*(x8234)))+(((x8236)*(x8243)))+(((r10)*(x8229)*(x8234)))+(((IkReal(-1.00000000000000))*(py)*(x8240)))+(((r00)*(x8234)*(x8241)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8254=((r20)*(sj6)); +IkReal x8255=((cj4)*(cj5)); +IkReal x8256=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8254)*(x8255)))+(((x8255)*(x8256))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x8256)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8254))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8254)*(x8255)))+(((x8255)*(x8256)))))+IKsqr(((((sj5)*(x8256)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8254)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8254)*(x8255)))+(((x8255)*(x8256)))), ((((sj5)*(x8256)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8254))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x8257=IKsin(j3); +IkReal x8258=((sj0)*(sj5)); +IkReal x8259=((r00)*(sj6)); +IkReal x8260=((cj6)*(r01)); +IkReal x8261=((cj5)*(sj0)); +IkReal x8262=((cj0)*(cj5)); +IkReal x8263=((cj6)*(sj4)); +IkReal x8264=((sj4)*(sj6)); +IkReal x8265=((cj0)*(r11)); +IkReal x8266=((cj4)*(cj6)); +IkReal x8267=((cj4)*(sj6)); +IkReal x8268=((IkReal(1.00000000000000))*(cj0)); +IkReal x8269=((cj4)*(sj5)); +IkReal x8270=((sj5)*(sj6)); +IkReal x8271=((cj6)*(sj5)); +IkReal x8272=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x8272)))+(((r20)*(x8270)))+(((r21)*(x8271)))); +evalcond[1]=((((cj5)*(r20)*(x8267)))+(((r22)*(x8269)))+(((IkReal(-1.00000000000000))*(r21)*(x8264)))+(((cj5)*(r21)*(x8266)))+(((r20)*(x8263)))+(((IkReal(-1.00000000000000))*(x8257)))); +evalcond[2]=((((r12)*(x8262)))+(((IkReal(-1.00000000000000))*(x8265)*(x8271)))+(((x8258)*(x8260)))+(((IkReal(-1.00000000000000))*(r10)*(x8268)*(x8270)))+(((x8258)*(x8259)))+(x8257)+(((IkReal(-1.00000000000000))*(r02)*(x8261)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x8262)*(x8267)))+(((cj4)*(x8259)*(x8261)))+(((r00)*(sj0)*(x8263)))+(((x8264)*(x8265)))+(((IkReal(-1.00000000000000))*(x8272)))+(((IkReal(-1.00000000000000))*(r10)*(x8263)*(x8268)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x8264)))+(((IkReal(-1.00000000000000))*(r12)*(x8268)*(x8269)))+(((cj4)*(r02)*(x8258)))+(((cj4)*(x8260)*(x8261)))+(((IkReal(-1.00000000000000))*(r11)*(x8262)*(x8266)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x8273=((IkReal(1.00000000000000))*(cj0)); +IkReal x8274=((cj4)*(sj6)); +IkReal x8275=((sj0)*(sj6)); +IkReal x8276=((cj5)*(sj4)); +IkReal x8277=((IkReal(0.374290000000000))*(sj5)); +IkReal x8278=((sj4)*(sj5)); +IkReal x8279=((cj0)*(cj6)); +IkReal x8280=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8281=((cj4)*(sj5)); +IkReal x8282=((cj5)*(sj0)); +IkReal x8283=((IkReal(0.374290000000000))*(r02)); +IkReal x8284=((r20)*(sj6)); +IkReal x8285=((cj6)*(r21)); +IkReal x8286=((IkReal(1.00000000000000))*(sj0)); +IkReal x8287=((cj0)*(sj6)); +IkReal x8288=((cj4)*(cj6)); +IkReal x8289=((IkReal(0.374290000000000))*(r12)); +IkReal x8290=((cj0)*(cj5)); +IkReal x8291=((cj6)*(sj5)); +IkReal x8292=((cj6)*(r01)); +IkReal x8293=((r00)*(sj6)); +IkReal x8294=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8295=((cj6)*(r11)); +IkReal x8296=((IkReal(1.00000000000000))*(r10)); +IkReal x8297=((r02)*(sj0)); +IkReal x8298=((cj6)*(sj4)); +IkReal x8299=((r12)*(x8286)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x8276)*(x8285)))+(((r22)*(x8278)))+(((x8276)*(x8284)))+(((IkReal(-1.00000000000000))*(r20)*(x8288)))+(((r21)*(x8274)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(r22)*(x8294)))+(((IkReal(-1.00000000000000))*(x8280)*(x8284)))+(((IkReal(-1.00000000000000))*(x8280)*(x8285)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x8277)*(x8284)))+(((x8277)*(x8285)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x8275)*(x8296)))+(((r12)*(x8282)))+(((r02)*(x8290)))+(((IkReal(-1.00000000000000))*(r11)*(x8286)*(x8291)))+(((IkReal(-1.00000000000000))*(r01)*(x8273)*(x8291)))+(((IkReal(-1.00000000000000))*(sj5)*(x8273)*(x8293)))); +evalcond[4]=((((x8278)*(x8297)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x8273)*(x8276)))+(((r00)*(x8275)*(x8276)))+(((IkReal(-1.00000000000000))*(r12)*(x8273)*(x8278)))+(((IkReal(-1.00000000000000))*(r11)*(x8273)*(x8274)))+(((r01)*(sj0)*(x8274)))+(((IkReal(-1.00000000000000))*(x8273)*(x8276)*(x8295)))+(((IkReal(-1.00000000000000))*(r00)*(x8286)*(x8288)))+(((cj4)*(r10)*(x8279)))+(((sj0)*(x8276)*(x8292)))); +evalcond[5]=((IkReal(1.00000000000000))+(((r10)*(sj0)*(x8288)))+(((cj4)*(r00)*(x8279)))+(((IkReal(-1.00000000000000))*(r01)*(x8273)*(x8274)))+(((IkReal(-1.00000000000000))*(r11)*(x8274)*(x8286)))+(((IkReal(-1.00000000000000))*(x8273)*(x8276)*(x8292)))+(((IkReal(-1.00000000000000))*(x8276)*(x8286)*(x8295)))+(((IkReal(-1.00000000000000))*(r02)*(x8273)*(x8278)))+(((IkReal(-1.00000000000000))*(x8278)*(x8299)))+(((IkReal(-1.00000000000000))*(x8275)*(x8276)*(x8296)))+(((IkReal(-1.00000000000000))*(x8273)*(x8276)*(x8293)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((x8289)*(x8290)))+(((r11)*(x8279)*(x8280)))+(((IkReal(-1.00000000000000))*(r11)*(x8277)*(x8279)))+(((cj0)*(r12)*(x8294)))+(((IkReal(-1.00000000000000))*(r00)*(x8275)*(x8280)))+(((IkReal(-1.00000000000000))*(r10)*(x8277)*(x8287)))+(((IkReal(-1.00000000000000))*(sj0)*(x8280)*(x8292)))+(((IkReal(-1.00000000000000))*(x8282)*(x8283)))+(((IkReal(-1.00000000000000))*(py)*(x8273)))+(((sj0)*(x8277)*(x8292)))+(((px)*(sj0)))+(((r10)*(x8280)*(x8287)))+(((r00)*(x8275)*(x8277)))+(((IkReal(-1.00000000000000))*(x8294)*(x8297)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r10)*(x8286)*(x8298)))+(((IkReal(-1.00000000000000))*(x8281)*(x8299)))+(((IkReal(-1.00000000000000))*(r00)*(x8273)*(x8298)))+(((IkReal(-1.00000000000000))*(r02)*(x8273)*(x8281)))+(((IkReal(-1.00000000000000))*(x8274)*(x8282)*(x8296)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x8273)*(x8288)))+(((r11)*(sj4)*(x8275)))+(((r01)*(sj4)*(x8287)))+(((IkReal(-1.00000000000000))*(r11)*(x8282)*(x8288)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8273)*(x8274)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x8273)))+(((IkReal(-1.00000000000000))*(py)*(x8286)))+(((r12)*(sj0)*(x8294)))+(((x8283)*(x8290)))+(((r10)*(x8275)*(x8280)))+(((r01)*(x8279)*(x8280)))+(((IkReal(-1.00000000000000))*(r00)*(x8277)*(x8287)))+(((IkReal(-1.00000000000000))*(sj0)*(x8277)*(x8295)))+(((cj0)*(r02)*(x8294)))+(((sj0)*(x8280)*(x8295)))+(((IkReal(-1.00000000000000))*(r10)*(x8275)*(x8277)))+(((IkReal(-1.00000000000000))*(r01)*(x8277)*(x8279)))+(((x8282)*(x8289)))+(((r00)*(x8280)*(x8287)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8300=((IkReal(1.00000000000000))*(sj5)); +IkReal x8301=((cj6)*(r21)); +IkReal x8302=((r20)*(sj6)); +IkReal x8303=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x8302)*(x8303)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8300)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8301)*(x8303)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x8300)*(x8301)))+(((IkReal(-1.00000000000000))*(x8300)*(x8302)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x8302)*(x8303)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8300)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8301)*(x8303)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x8300)*(x8301)))+(((IkReal(-1.00000000000000))*(x8300)*(x8302)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x8302)*(x8303)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x8300)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8301)*(x8303)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x8300)*(x8301)))+(((IkReal(-1.00000000000000))*(x8300)*(x8302)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x8304=IKsin(j3); +IkReal x8305=IKcos(j3); +IkReal x8306=((sj0)*(sj5)); +IkReal x8307=((r00)*(sj6)); +IkReal x8308=((cj6)*(r01)); +IkReal x8309=((cj0)*(cj5)); +IkReal x8310=((IkReal(1.00000000000000))*(cj5)); +IkReal x8311=((cj4)*(cj5)); +IkReal x8312=((cj6)*(sj4)); +IkReal x8313=((sj4)*(sj6)); +IkReal x8314=((cj0)*(r11)); +IkReal x8315=((IkReal(1.00000000000000))*(cj4)); +IkReal x8316=((cj6)*(r21)); +IkReal x8317=((r20)*(sj6)); +IkReal x8318=((cj0)*(sj5)); +IkReal x8319=((r10)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r22)*(x8310)))+(x8305)+(((sj5)*(x8316)))+(((sj5)*(x8317)))); +evalcond[1]=((((x8311)*(x8317)))+(((x8311)*(x8316)))+(((r20)*(x8312)))+(((cj4)*(r22)*(sj5)))+(x8304)+(((IkReal(-1.00000000000000))*(r21)*(x8313)))); +evalcond[2]=((((r12)*(x8309)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8310)))+(((x8306)*(x8308)))+(((x8306)*(x8307)))+(((IkReal(-1.00000000000000))*(x8318)*(x8319)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x8314)))+(x8304)); +evalcond[3]=((((sj0)*(x8308)*(x8311)))+(((x8313)*(x8314)))+(((IkReal(-1.00000000000000))*(x8309)*(x8315)*(x8319)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x8313)))+(((sj0)*(x8307)*(x8311)))+(((IkReal(-1.00000000000000))*(x8305)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x8312)))+(((IkReal(-1.00000000000000))*(r12)*(x8315)*(x8318)))+(((cj4)*(r02)*(x8306)))+(((r00)*(sj0)*(x8312)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x8309)*(x8315)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8320=((cj5)*(r02)); +IkReal x8321=((cj0)*(sj5)); +IkReal x8322=((r10)*(sj6)); +IkReal x8323=((IkReal(1.00000000000000))*(cj6)); +IkReal x8324=((sj0)*(sj5)); +IkReal x8325=((cj5)*(r12)); +IkReal x8326=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x8325)))+(((x8321)*(x8322)))+(((sj0)*(x8320)))+(((IkReal(-1.00000000000000))*(x8324)*(x8326)))+(((IkReal(-1.00000000000000))*(r01)*(x8323)*(x8324)))+(((cj6)*(r11)*(x8321))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x8325)))+(((IkReal(-1.00000000000000))*(x8322)*(x8324)))+(((IkReal(-1.00000000000000))*(r11)*(x8323)*(x8324)))+(((IkReal(-1.00000000000000))*(r01)*(x8321)*(x8323)))+(((IkReal(-1.00000000000000))*(x8321)*(x8326)))+(((cj0)*(x8320))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x8325)))+(((x8321)*(x8322)))+(((sj0)*(x8320)))+(((IkReal(-1.00000000000000))*(x8324)*(x8326)))+(((IkReal(-1.00000000000000))*(r01)*(x8323)*(x8324)))+(((cj6)*(r11)*(x8321)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x8325)))+(((IkReal(-1.00000000000000))*(x8322)*(x8324)))+(((IkReal(-1.00000000000000))*(r11)*(x8323)*(x8324)))+(((IkReal(-1.00000000000000))*(r01)*(x8321)*(x8323)))+(((IkReal(-1.00000000000000))*(x8321)*(x8326)))+(((cj0)*(x8320)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x8325)))+(((x8321)*(x8322)))+(((sj0)*(x8320)))+(((IkReal(-1.00000000000000))*(x8324)*(x8326)))+(((IkReal(-1.00000000000000))*(r01)*(x8323)*(x8324)))+(((cj6)*(r11)*(x8321)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x8325)))+(((IkReal(-1.00000000000000))*(x8322)*(x8324)))+(((IkReal(-1.00000000000000))*(r11)*(x8323)*(x8324)))+(((IkReal(-1.00000000000000))*(r01)*(x8321)*(x8323)))+(((IkReal(-1.00000000000000))*(x8321)*(x8326)))+(((cj0)*(x8320))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8327=IKsin(j3); +IkReal x8328=IKcos(j3); +IkReal x8329=((sj0)*(sj5)); +IkReal x8330=((r00)*(sj6)); +IkReal x8331=((IkReal(1.00000000000000))*(cj4)); +IkReal x8332=((cj6)*(r01)); +IkReal x8333=((cj0)*(cj5)); +IkReal x8334=((cj5)*(sj0)); +IkReal x8335=((cj6)*(r11)); +IkReal x8336=((cj0)*(sj5)); +IkReal x8337=((IkReal(1.00000000000000))*(cj1)); +IkReal x8338=((cj6)*(sj4)); +IkReal x8339=((IkReal(1.00000000000000))*(sj1)); +IkReal x8340=((cj4)*(cj5)); +IkReal x8341=((cj6)*(r21)); +IkReal x8342=((r20)*(sj6)); +IkReal x8343=((r10)*(sj6)); +IkReal x8344=((IkReal(1.00000000000000))*(cj0)); +IkReal x8345=((cj0)*(sj4)*(sj6)); +IkReal x8346=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x8342)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x8328)*(x8339)))+(((sj5)*(x8341)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8340)*(x8342)))+(((r20)*(x8338)))+(((x8340)*(x8341)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x8327)*(x8339)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8336)*(x8343)))+(((x8329)*(x8330)))+(((IkReal(-1.00000000000000))*(x8335)*(x8336)))+(x8327)+(((r12)*(x8333)))+(((x8329)*(x8332)))+(((IkReal(-1.00000000000000))*(r02)*(x8334)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8332)*(x8336)))+(((IkReal(-1.00000000000000))*(x8329)*(x8343)))+(((IkReal(-1.00000000000000))*(x8328)*(x8337)))+(((IkReal(-1.00000000000000))*(x8329)*(x8335)))+(((r02)*(x8333)))+(((IkReal(-1.00000000000000))*(x8330)*(x8336)))+(((r12)*(x8334)))); +evalcond[4]=((((cj4)*(r02)*(x8329)))+(((cj4)*(x8332)*(x8334)))+(((IkReal(-1.00000000000000))*(r12)*(x8331)*(x8336)))+(((IkReal(-1.00000000000000))*(r01)*(x8346)))+(((r00)*(sj0)*(x8338)))+(((cj4)*(x8330)*(x8334)))+(((IkReal(-1.00000000000000))*(x8328)))+(((r11)*(x8345)))+(((IkReal(-1.00000000000000))*(r10)*(x8338)*(x8344)))+(((IkReal(-1.00000000000000))*(x8331)*(x8333)*(x8343)))+(((IkReal(-1.00000000000000))*(x8331)*(x8333)*(x8335)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x8329)*(x8331)))+(((IkReal(-1.00000000000000))*(x8331)*(x8334)*(x8343)))+(((IkReal(-1.00000000000000))*(x8331)*(x8332)*(x8333)))+(((IkReal(-1.00000000000000))*(x8330)*(x8331)*(x8333)))+(((IkReal(-1.00000000000000))*(x8327)*(x8337)))+(((r01)*(x8345)))+(((IkReal(-1.00000000000000))*(x8331)*(x8334)*(x8335)))+(((IkReal(-1.00000000000000))*(r02)*(x8331)*(x8336)))+(((r11)*(x8346)))+(((IkReal(-1.00000000000000))*(r00)*(x8338)*(x8344)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8338)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8347=((sj5)*(sj6)); +IkReal x8348=((IkReal(1.00000000000000))*(sj0)); +IkReal x8349=((cj6)*(sj5)); +IkReal x8350=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r10)*(x8347)))+(((IkReal(-1.00000000000000))*(r01)*(x8348)*(x8349)))+(((IkReal(-1.00000000000000))*(r00)*(x8347)*(x8348)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x8349)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x8350))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8347)))+(((IkReal(-1.00000000000000))*(r22)*(x8350)))+(((r21)*(x8349))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r10)*(x8347)))+(((IkReal(-1.00000000000000))*(r01)*(x8348)*(x8349)))+(((IkReal(-1.00000000000000))*(r00)*(x8347)*(x8348)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x8349)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x8350)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8347)))+(((IkReal(-1.00000000000000))*(r22)*(x8350)))+(((r21)*(x8349)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r10)*(x8347)))+(((IkReal(-1.00000000000000))*(r01)*(x8348)*(x8349)))+(((IkReal(-1.00000000000000))*(r00)*(x8347)*(x8348)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x8349)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x8350)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x8347)))+(((IkReal(-1.00000000000000))*(r22)*(x8350)))+(((r21)*(x8349))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8351=IKsin(j3); +IkReal x8352=IKcos(j3); +IkReal x8353=((sj0)*(sj5)); +IkReal x8354=((r00)*(sj6)); +IkReal x8355=((IkReal(1.00000000000000))*(cj4)); +IkReal x8356=((cj6)*(r01)); +IkReal x8357=((cj0)*(cj5)); +IkReal x8358=((cj5)*(sj0)); +IkReal x8359=((cj6)*(r11)); +IkReal x8360=((cj0)*(sj5)); +IkReal x8361=((IkReal(1.00000000000000))*(cj1)); +IkReal x8362=((cj6)*(sj4)); +IkReal x8363=((IkReal(1.00000000000000))*(sj1)); +IkReal x8364=((cj4)*(cj5)); +IkReal x8365=((cj6)*(r21)); +IkReal x8366=((r20)*(sj6)); +IkReal x8367=((r10)*(sj6)); +IkReal x8368=((IkReal(1.00000000000000))*(cj0)); +IkReal x8369=((cj0)*(sj4)*(sj6)); +IkReal x8370=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x8366)))+(((sj5)*(x8365)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x8352)*(x8363)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8364)*(x8365)))+(((r20)*(x8362)))+(((IkReal(-1.00000000000000))*(x8351)*(x8363)))+(((cj4)*(r22)*(sj5)))+(((x8364)*(x8366)))); +evalcond[2]=((((x8353)*(x8356)))+(((IkReal(-1.00000000000000))*(x8360)*(x8367)))+(x8351)+(((IkReal(-1.00000000000000))*(r02)*(x8358)))+(((x8353)*(x8354)))+(((r12)*(x8357)))+(((IkReal(-1.00000000000000))*(x8359)*(x8360)))); +evalcond[3]=((((r12)*(x8358)))+(((IkReal(-1.00000000000000))*(x8353)*(x8359)))+(((IkReal(-1.00000000000000))*(x8353)*(x8367)))+(((IkReal(-1.00000000000000))*(x8356)*(x8360)))+(((IkReal(-1.00000000000000))*(x8352)*(x8361)))+(((IkReal(-1.00000000000000))*(x8354)*(x8360)))+(((r02)*(x8357)))); +evalcond[4]=((((cj4)*(x8356)*(x8358)))+(((r11)*(x8369)))+(((IkReal(-1.00000000000000))*(r01)*(x8370)))+(((IkReal(-1.00000000000000))*(x8355)*(x8357)*(x8367)))+(((r00)*(sj0)*(x8362)))+(((IkReal(-1.00000000000000))*(x8355)*(x8357)*(x8359)))+(((cj4)*(x8354)*(x8358)))+(((IkReal(-1.00000000000000))*(x8352)))+(((IkReal(-1.00000000000000))*(r12)*(x8355)*(x8360)))+(((IkReal(-1.00000000000000))*(r10)*(x8362)*(x8368)))+(((cj4)*(r02)*(x8353)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8354)*(x8355)*(x8357)))+(((IkReal(-1.00000000000000))*(r12)*(x8353)*(x8355)))+(((IkReal(-1.00000000000000))*(x8351)*(x8361)))+(((IkReal(-1.00000000000000))*(x8355)*(x8358)*(x8359)))+(((IkReal(-1.00000000000000))*(r02)*(x8355)*(x8360)))+(((r11)*(x8370)))+(((IkReal(-1.00000000000000))*(x8355)*(x8358)*(x8367)))+(((IkReal(-1.00000000000000))*(r00)*(x8362)*(x8368)))+(((IkReal(-1.00000000000000))*(x8355)*(x8356)*(x8357)))+(((r01)*(x8369)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8362)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8371=((r20)*(sj6)); +IkReal x8372=((cj4)*(cj5)); +IkReal x8373=((cj6)*(r21)); +if( IKabs(((gconst12)*(((((x8371)*(x8372)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8372)*(x8373))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst12)*(((((sj5)*(x8371)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8373))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst12)*(((((x8371)*(x8372)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x8372)*(x8373)))))), ((gconst12)*(((((sj5)*(x8371)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8373))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8374=IKsin(j3); +IkReal x8375=IKcos(j3); +IkReal x8376=((sj0)*(sj5)); +IkReal x8377=((r00)*(sj6)); +IkReal x8378=((IkReal(1.00000000000000))*(cj4)); +IkReal x8379=((cj6)*(r01)); +IkReal x8380=((cj0)*(cj5)); +IkReal x8381=((cj5)*(sj0)); +IkReal x8382=((cj6)*(r11)); +IkReal x8383=((cj0)*(sj5)); +IkReal x8384=((IkReal(1.00000000000000))*(cj1)); +IkReal x8385=((cj6)*(sj4)); +IkReal x8386=((IkReal(1.00000000000000))*(sj1)); +IkReal x8387=((cj4)*(cj5)); +IkReal x8388=((cj6)*(r21)); +IkReal x8389=((r20)*(sj6)); +IkReal x8390=((r10)*(sj6)); +IkReal x8391=((IkReal(1.00000000000000))*(cj0)); +IkReal x8392=((cj0)*(sj4)*(sj6)); +IkReal x8393=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8389)))+(((IkReal(-1.00000000000000))*(x8375)*(x8386)))+(((sj5)*(x8388)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x8374)*(x8386)))+(((x8387)*(x8389)))+(((x8387)*(x8388)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x8385)))); +evalcond[2]=((((r12)*(x8380)))+(((IkReal(-1.00000000000000))*(r02)*(x8381)))+(x8374)+(((x8376)*(x8377)))+(((IkReal(-1.00000000000000))*(x8382)*(x8383)))+(((x8376)*(x8379)))+(((IkReal(-1.00000000000000))*(x8383)*(x8390)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8376)*(x8390)))+(((r02)*(x8380)))+(((r12)*(x8381)))+(((IkReal(-1.00000000000000))*(x8377)*(x8383)))+(((IkReal(-1.00000000000000))*(x8375)*(x8384)))+(((IkReal(-1.00000000000000))*(x8376)*(x8382)))+(((IkReal(-1.00000000000000))*(x8379)*(x8383)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8375)))+(((IkReal(-1.00000000000000))*(r12)*(x8378)*(x8383)))+(((IkReal(-1.00000000000000))*(r10)*(x8385)*(x8391)))+(((cj4)*(r02)*(x8376)))+(((r00)*(sj0)*(x8385)))+(((IkReal(-1.00000000000000))*(x8378)*(x8380)*(x8382)))+(((r11)*(x8392)))+(((IkReal(-1.00000000000000))*(x8378)*(x8380)*(x8390)))+(((IkReal(-1.00000000000000))*(r01)*(x8393)))+(((cj4)*(x8377)*(x8381)))+(((cj4)*(x8379)*(x8381)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8378)*(x8379)*(x8380)))+(((IkReal(-1.00000000000000))*(r12)*(x8376)*(x8378)))+(((IkReal(-1.00000000000000))*(x8377)*(x8378)*(x8380)))+(((IkReal(-1.00000000000000))*(x8378)*(x8381)*(x8390)))+(((r11)*(x8393)))+(((IkReal(-1.00000000000000))*(r02)*(x8378)*(x8383)))+(((IkReal(-1.00000000000000))*(x8378)*(x8381)*(x8382)))+(((IkReal(-1.00000000000000))*(r00)*(x8385)*(x8391)))+(((r01)*(x8392)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8385)))+(((IkReal(-1.00000000000000))*(x8374)*(x8384)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8394=((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30); +IkReal x8395=((sj5)*(sj6)); +IkReal x8396=((r00)*(sj0)); +IkReal x8397=((cj1)*(cj2)); +IkReal x8398=((cj0)*(r10)); +IkReal x8399=((cj6)*(sj5)); +IkReal x8400=((r01)*(sj0)); +IkReal x8401=((IkReal(1.00000000000000))*(cj0)); +IkReal x8402=((cj5)*(r12)); +IkReal x8403=((IkReal(1.00000000000000))*(cj5)); +IkReal x8404=((r02)*(sj0)); +if( IKabs(((x8394)*(((((IkReal(-1.00000000000000))*(x8395)*(x8398)))+(((x8399)*(x8400)))+(((IkReal(-1.00000000000000))*(r11)*(x8399)*(x8401)))+(((cj0)*(x8402)))+(((x8395)*(x8396)))+(((IkReal(-1.00000000000000))*(x8403)*(x8404))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((x8394)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(sj2)*(x8399)))+(((IkReal(-1.00000000000000))*(x8397)*(x8401)*(x8402)))+(((r20)*(sj2)*(x8395)))+(((cj0)*(r11)*(x8397)*(x8399)))+(((IkReal(-1.00000000000000))*(x8395)*(x8396)*(x8397)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x8403)))+(((IkReal(-1.00000000000000))*(x8397)*(x8399)*(x8400)))+(((x8395)*(x8397)*(x8398)))+(((cj5)*(x8397)*(x8404))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((x8394)*(((((IkReal(-1.00000000000000))*(x8395)*(x8398)))+(((x8399)*(x8400)))+(((IkReal(-1.00000000000000))*(r11)*(x8399)*(x8401)))+(((cj0)*(x8402)))+(((x8395)*(x8396)))+(((IkReal(-1.00000000000000))*(x8403)*(x8404)))))))+IKsqr(((x8394)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(sj2)*(x8399)))+(((IkReal(-1.00000000000000))*(x8397)*(x8401)*(x8402)))+(((r20)*(sj2)*(x8395)))+(((cj0)*(r11)*(x8397)*(x8399)))+(((IkReal(-1.00000000000000))*(x8395)*(x8396)*(x8397)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x8403)))+(((IkReal(-1.00000000000000))*(x8397)*(x8399)*(x8400)))+(((x8395)*(x8397)*(x8398)))+(((cj5)*(x8397)*(x8404)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((x8394)*(((((IkReal(-1.00000000000000))*(x8395)*(x8398)))+(((x8399)*(x8400)))+(((IkReal(-1.00000000000000))*(r11)*(x8399)*(x8401)))+(((cj0)*(x8402)))+(((x8395)*(x8396)))+(((IkReal(-1.00000000000000))*(x8403)*(x8404)))))), ((x8394)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(sj2)*(x8399)))+(((IkReal(-1.00000000000000))*(x8397)*(x8401)*(x8402)))+(((r20)*(sj2)*(x8395)))+(((cj0)*(r11)*(x8397)*(x8399)))+(((IkReal(-1.00000000000000))*(x8395)*(x8396)*(x8397)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x8403)))+(((IkReal(-1.00000000000000))*(x8397)*(x8399)*(x8400)))+(((x8395)*(x8397)*(x8398)))+(((cj5)*(x8397)*(x8404))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8405=IKcos(j3); +IkReal x8406=IKsin(j3); +IkReal x8407=((sj0)*(sj5)); +IkReal x8408=((r00)*(sj6)); +IkReal x8409=((IkReal(1.00000000000000))*(cj4)); +IkReal x8410=((cj6)*(r01)); +IkReal x8411=((cj0)*(cj5)); +IkReal x8412=((cj5)*(sj0)); +IkReal x8413=((cj6)*(r11)); +IkReal x8414=((cj6)*(sj4)); +IkReal x8415=((IkReal(1.00000000000000))*(cj1)); +IkReal x8416=((cj4)*(cj5)); +IkReal x8417=((cj6)*(r21)); +IkReal x8418=((r20)*(sj6)); +IkReal x8419=((r10)*(sj6)); +IkReal x8420=((cj0)*(sj5)); +IkReal x8421=((IkReal(1.00000000000000))*(cj0)); +IkReal x8422=((IkReal(1.00000000000000))*(x8420)); +IkReal x8423=((IkReal(1.00000000000000))*(x8406)); +IkReal x8424=((cj0)*(sj4)*(sj6)); +IkReal x8425=((cj2)*(x8406)); +IkReal x8426=((sj0)*(sj4)*(sj6)); +IkReal x8427=((IkReal(1.00000000000000))*(sj1)*(x8405)); +evalcond[0]=((((sj5)*(x8418)))+(((IkReal(-1.00000000000000))*(x8415)*(x8425)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x8427)))+(((sj5)*(x8417)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8416)*(x8418)))+(((r20)*(x8414)))+(((IkReal(-1.00000000000000))*(sj1)*(x8423)))+(((x8416)*(x8417)))+(((cj4)*(r22)*(sj5)))+(((cj1)*(cj2)*(x8405)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8413)*(x8422)))+(((IkReal(-1.00000000000000))*(x8419)*(x8422)))+(((x8407)*(x8410)))+(((x8407)*(x8408)))+(((IkReal(-1.00000000000000))*(sj2)*(x8423)))+(((IkReal(-1.00000000000000))*(r02)*(x8412)))+(((r12)*(x8411)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8410)*(x8422)))+(((sj1)*(x8425)))+(((IkReal(-1.00000000000000))*(x8405)*(x8415)))+(((IkReal(-1.00000000000000))*(x8408)*(x8422)))+(((r12)*(x8412)))+(((IkReal(-1.00000000000000))*(x8407)*(x8413)))+(((IkReal(-1.00000000000000))*(x8407)*(x8419)))+(((r02)*(x8411)))); +evalcond[4]=((((cj4)*(x8408)*(x8412)))+(((IkReal(-1.00000000000000))*(r12)*(x8409)*(x8420)))+(((IkReal(-1.00000000000000))*(x8409)*(x8411)*(x8413)))+(((r00)*(sj0)*(x8414)))+(((IkReal(-1.00000000000000))*(r10)*(x8414)*(x8421)))+(((cj4)*(x8410)*(x8412)))+(((r11)*(x8424)))+(((cj4)*(r02)*(x8407)))+(((sj2)*(x8405)))+(((IkReal(-1.00000000000000))*(r01)*(x8426)))+(((IkReal(-1.00000000000000))*(x8409)*(x8411)*(x8419)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x8407)*(x8409)))+(((IkReal(-1.00000000000000))*(r00)*(x8414)*(x8421)))+(((IkReal(-1.00000000000000))*(x8409)*(x8412)*(x8413)))+(((IkReal(-1.00000000000000))*(r02)*(x8409)*(x8420)))+(((r11)*(x8426)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8414)))+(((IkReal(-1.00000000000000))*(cj2)*(x8427)))+(((IkReal(-1.00000000000000))*(x8408)*(x8409)*(x8411)))+(((IkReal(-1.00000000000000))*(x8409)*(x8412)*(x8419)))+(((IkReal(-1.00000000000000))*(x8409)*(x8410)*(x8411)))+(((r01)*(x8424)))+(((IkReal(-1.00000000000000))*(x8406)*(x8415)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8428=(cj1)*(cj1); +IkReal x8429=(sj1)*(sj1); +IkReal x8430=((r00)*(sj6)); +IkReal x8431=((cj6)*(r01)); +IkReal x8432=((IkReal(1.00000000000000))*(cj1)); +IkReal x8433=((cj5)*(r22)); +IkReal x8434=((sj5)*(sj6)); +IkReal x8435=((r10)*(sj0)); +IkReal x8436=((cj1)*(cj5)); +IkReal x8437=((cj0)*(r02)); +IkReal x8438=((r12)*(sj0)); +IkReal x8439=((IkReal(1.00000000000000))*(sj1)); +IkReal x8440=((cj6)*(sj5)); +IkReal x8441=((cj0)*(sj5)); +IkReal x8442=((r11)*(sj0)); +IkReal x8443=((sj1)*(x8441)); +if( IKabs(((((IKabs(((((cj2)*(x8428)))+(((cj2)*(x8429))))) != 0)?((IkReal)1/(((((cj2)*(x8428)))+(((cj2)*(x8429)))))):(IkReal)1.0e30))*(((((x8431)*(x8443)))+(((IkReal(-1.00000000000000))*(x8432)*(x8433)))+(((IkReal(-1.00000000000000))*(cj5)*(x8438)*(x8439)))+(((cj1)*(r20)*(x8434)))+(((x8430)*(x8443)))+(((sj1)*(x8440)*(x8442)))+(((cj1)*(r21)*(x8440)))+(((IkReal(-1.00000000000000))*(cj5)*(x8437)*(x8439)))+(((sj1)*(x8434)*(x8435))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x8428)+(x8429))) != 0)?((IkReal)1/(((x8428)+(x8429)))):(IkReal)1.0e30))*(((((r20)*(sj1)*(x8434)))+(((IkReal(-1.00000000000000))*(x8431)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8430)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8432)*(x8434)*(x8435)))+(((x8436)*(x8438)))+(((IkReal(-1.00000000000000))*(x8433)*(x8439)))+(((IkReal(-1.00000000000000))*(x8432)*(x8440)*(x8442)))+(((r21)*(sj1)*(x8440)))+(((x8436)*(x8437))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x8428)))+(((cj2)*(x8429))))) != 0)?((IkReal)1/(((((cj2)*(x8428)))+(((cj2)*(x8429)))))):(IkReal)1.0e30))*(((((x8431)*(x8443)))+(((IkReal(-1.00000000000000))*(x8432)*(x8433)))+(((IkReal(-1.00000000000000))*(cj5)*(x8438)*(x8439)))+(((cj1)*(r20)*(x8434)))+(((x8430)*(x8443)))+(((sj1)*(x8440)*(x8442)))+(((cj1)*(r21)*(x8440)))+(((IkReal(-1.00000000000000))*(cj5)*(x8437)*(x8439)))+(((sj1)*(x8434)*(x8435)))))))+IKsqr(((((IKabs(((x8428)+(x8429))) != 0)?((IkReal)1/(((x8428)+(x8429)))):(IkReal)1.0e30))*(((((r20)*(sj1)*(x8434)))+(((IkReal(-1.00000000000000))*(x8431)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8430)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8432)*(x8434)*(x8435)))+(((x8436)*(x8438)))+(((IkReal(-1.00000000000000))*(x8433)*(x8439)))+(((IkReal(-1.00000000000000))*(x8432)*(x8440)*(x8442)))+(((r21)*(sj1)*(x8440)))+(((x8436)*(x8437)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x8428)))+(((cj2)*(x8429))))) != 0)?((IkReal)1/(((((cj2)*(x8428)))+(((cj2)*(x8429)))))):(IkReal)1.0e30))*(((((x8431)*(x8443)))+(((IkReal(-1.00000000000000))*(x8432)*(x8433)))+(((IkReal(-1.00000000000000))*(cj5)*(x8438)*(x8439)))+(((cj1)*(r20)*(x8434)))+(((x8430)*(x8443)))+(((sj1)*(x8440)*(x8442)))+(((cj1)*(r21)*(x8440)))+(((IkReal(-1.00000000000000))*(cj5)*(x8437)*(x8439)))+(((sj1)*(x8434)*(x8435)))))), ((((IKabs(((x8428)+(x8429))) != 0)?((IkReal)1/(((x8428)+(x8429)))):(IkReal)1.0e30))*(((((r20)*(sj1)*(x8434)))+(((IkReal(-1.00000000000000))*(x8431)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8430)*(x8432)*(x8441)))+(((IkReal(-1.00000000000000))*(x8432)*(x8434)*(x8435)))+(((x8436)*(x8438)))+(((IkReal(-1.00000000000000))*(x8433)*(x8439)))+(((IkReal(-1.00000000000000))*(x8432)*(x8440)*(x8442)))+(((r21)*(sj1)*(x8440)))+(((x8436)*(x8437))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8444=IKcos(j3); +IkReal x8445=IKsin(j3); +IkReal x8446=((sj0)*(sj5)); +IkReal x8447=((r00)*(sj6)); +IkReal x8448=((IkReal(1.00000000000000))*(cj4)); +IkReal x8449=((cj6)*(r01)); +IkReal x8450=((cj0)*(cj5)); +IkReal x8451=((cj5)*(sj0)); +IkReal x8452=((cj6)*(r11)); +IkReal x8453=((cj6)*(sj4)); +IkReal x8454=((IkReal(1.00000000000000))*(cj1)); +IkReal x8455=((cj4)*(cj5)); +IkReal x8456=((cj6)*(r21)); +IkReal x8457=((r20)*(sj6)); +IkReal x8458=((r10)*(sj6)); +IkReal x8459=((cj0)*(sj5)); +IkReal x8460=((IkReal(1.00000000000000))*(cj0)); +IkReal x8461=((IkReal(1.00000000000000))*(x8459)); +IkReal x8462=((IkReal(1.00000000000000))*(x8445)); +IkReal x8463=((cj0)*(sj4)*(sj6)); +IkReal x8464=((cj2)*(x8445)); +IkReal x8465=((sj0)*(sj4)*(sj6)); +IkReal x8466=((IkReal(1.00000000000000))*(sj1)*(x8444)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x8466)))+(((sj5)*(x8456)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x8457)))+(((IkReal(-1.00000000000000))*(x8454)*(x8464)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x8455)*(x8457)))+(((IkReal(-1.00000000000000))*(sj1)*(x8462)))+(((cj4)*(r22)*(sj5)))+(((x8455)*(x8456)))+(((r20)*(x8453)))+(((cj1)*(cj2)*(x8444)))); +evalcond[2]=((((x8446)*(x8449)))+(((IkReal(-1.00000000000000))*(sj2)*(x8462)))+(((IkReal(-1.00000000000000))*(x8458)*(x8461)))+(((IkReal(-1.00000000000000))*(r02)*(x8451)))+(((IkReal(-1.00000000000000))*(x8452)*(x8461)))+(((x8446)*(x8447)))+(((r12)*(x8450)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x8446)*(x8458)))+(((r12)*(x8451)))+(((IkReal(-1.00000000000000))*(x8449)*(x8461)))+(((r02)*(x8450)))+(((IkReal(-1.00000000000000))*(x8444)*(x8454)))+(((IkReal(-1.00000000000000))*(x8447)*(x8461)))+(((IkReal(-1.00000000000000))*(x8446)*(x8452)))+(((sj1)*(x8464)))); +evalcond[4]=((((r11)*(x8463)))+(((IkReal(-1.00000000000000))*(x8448)*(x8450)*(x8452)))+(((IkReal(-1.00000000000000))*(r12)*(x8448)*(x8459)))+(((IkReal(-1.00000000000000))*(r01)*(x8465)))+(((IkReal(-1.00000000000000))*(r10)*(x8453)*(x8460)))+(((IkReal(-1.00000000000000))*(x8448)*(x8450)*(x8458)))+(((cj4)*(x8447)*(x8451)))+(((cj4)*(x8449)*(x8451)))+(((sj2)*(x8444)))+(((r00)*(sj0)*(x8453)))+(((cj4)*(r02)*(x8446)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8448)*(x8451)*(x8452)))+(((IkReal(-1.00000000000000))*(x8447)*(x8448)*(x8450)))+(((IkReal(-1.00000000000000))*(x8445)*(x8454)))+(((IkReal(-1.00000000000000))*(cj2)*(x8466)))+(((r01)*(x8463)))+(((IkReal(-1.00000000000000))*(r02)*(x8448)*(x8459)))+(((IkReal(-1.00000000000000))*(x8448)*(x8449)*(x8450)))+(((IkReal(-1.00000000000000))*(r12)*(x8446)*(x8448)))+(((r11)*(x8465)))+(((IkReal(-1.00000000000000))*(x8448)*(x8451)*(x8458)))+(((IkReal(-1.00000000000000))*(r00)*(x8453)*(x8460)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8453)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8467=((sj1)*(sj6)); +IkReal x8468=((r20)*(sj5)); +IkReal x8469=((IkReal(1.00000000000000))*(r21)); +IkReal x8470=((cj5)*(cj6)); +IkReal x8471=((r22)*(sj5)); +IkReal x8472=((cj4)*(sj1)); +IkReal x8473=((cj1)*(cj2)); +IkReal x8474=((cj5)*(r20)); +IkReal x8475=((cj4)*(x8473)); +IkReal x8476=((IkReal(1.00000000000000))*(cj5)*(r22)); +IkReal x8477=((cj6)*(r20)*(sj4)); +IkReal x8478=((cj6)*(r21)*(sj5)); +if( IKabs(((gconst4)*(((((sj1)*(x8477)))+(((cj4)*(x8467)*(x8474)))+(((x8471)*(x8472)))+(((sj6)*(x8468)*(x8473)))+(((x8473)*(x8478)))+(((IkReal(-1.00000000000000))*(x8473)*(x8476)))+(((IkReal(-1.00000000000000))*(sj4)*(x8467)*(x8469)))+(((r21)*(x8470)*(x8472))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst4)*(((((IkReal(-1.00000000000000))*(sj1)*(x8476)))+(((x8467)*(x8468)))+(((r21)*(sj4)*(sj6)*(x8473)))+(((IkReal(-1.00000000000000))*(x8473)*(x8477)))+(((IkReal(-1.00000000000000))*(x8471)*(x8475)))+(((sj1)*(x8478)))+(((IkReal(-1.00000000000000))*(sj6)*(x8474)*(x8475)))+(((IkReal(-1.00000000000000))*(x8469)*(x8470)*(x8475))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst4)*(((((sj1)*(x8477)))+(((cj4)*(x8467)*(x8474)))+(((x8471)*(x8472)))+(((sj6)*(x8468)*(x8473)))+(((x8473)*(x8478)))+(((IkReal(-1.00000000000000))*(x8473)*(x8476)))+(((IkReal(-1.00000000000000))*(sj4)*(x8467)*(x8469)))+(((r21)*(x8470)*(x8472)))))), ((gconst4)*(((((IkReal(-1.00000000000000))*(sj1)*(x8476)))+(((x8467)*(x8468)))+(((r21)*(sj4)*(sj6)*(x8473)))+(((IkReal(-1.00000000000000))*(x8473)*(x8477)))+(((IkReal(-1.00000000000000))*(x8471)*(x8475)))+(((sj1)*(x8478)))+(((IkReal(-1.00000000000000))*(sj6)*(x8474)*(x8475)))+(((IkReal(-1.00000000000000))*(x8469)*(x8470)*(x8475))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x8479=IKcos(j3); +IkReal x8480=IKsin(j3); +IkReal x8481=((sj0)*(sj5)); +IkReal x8482=((r00)*(sj6)); +IkReal x8483=((IkReal(1.00000000000000))*(cj4)); +IkReal x8484=((cj6)*(r01)); +IkReal x8485=((cj0)*(cj5)); +IkReal x8486=((cj5)*(sj0)); +IkReal x8487=((cj6)*(r11)); +IkReal x8488=((cj6)*(sj4)); +IkReal x8489=((IkReal(1.00000000000000))*(cj1)); +IkReal x8490=((cj4)*(cj5)); +IkReal x8491=((cj6)*(r21)); +IkReal x8492=((r20)*(sj6)); +IkReal x8493=((r10)*(sj6)); +IkReal x8494=((cj0)*(sj5)); +IkReal x8495=((IkReal(1.00000000000000))*(cj0)); +IkReal x8496=((IkReal(1.00000000000000))*(x8494)); +IkReal x8497=((IkReal(1.00000000000000))*(x8480)); +IkReal x8498=((cj0)*(sj4)*(sj6)); +IkReal x8499=((cj2)*(x8480)); +IkReal x8500=((sj0)*(sj4)*(sj6)); +IkReal x8501=((IkReal(1.00000000000000))*(sj1)*(x8479)); +evalcond[0]=((((sj5)*(x8491)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x8489)*(x8499)))+(((sj5)*(x8492)))+(((IkReal(-1.00000000000000))*(x8501)))); +evalcond[1]=((((cj1)*(cj2)*(x8479)))+(((x8490)*(x8492)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x8488)))+(((x8490)*(x8491)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x8497)))); +evalcond[2]=((((x8481)*(x8482)))+(((x8481)*(x8484)))+(((IkReal(-1.00000000000000))*(r02)*(x8486)))+(((IkReal(-1.00000000000000))*(x8493)*(x8496)))+(((IkReal(-1.00000000000000))*(sj2)*(x8497)))+(((IkReal(-1.00000000000000))*(x8487)*(x8496)))+(((r12)*(x8485)))); +evalcond[3]=((((sj1)*(x8499)))+(((IkReal(-1.00000000000000))*(x8481)*(x8487)))+(((r02)*(x8485)))+(((IkReal(-1.00000000000000))*(x8484)*(x8496)))+(((IkReal(-1.00000000000000))*(x8481)*(x8493)))+(((IkReal(-1.00000000000000))*(x8482)*(x8496)))+(((IkReal(-1.00000000000000))*(x8479)*(x8489)))+(((r12)*(x8486)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8483)*(x8485)*(x8487)))+(((sj2)*(x8479)))+(((IkReal(-1.00000000000000))*(r12)*(x8483)*(x8494)))+(((IkReal(-1.00000000000000))*(x8483)*(x8485)*(x8493)))+(((IkReal(-1.00000000000000))*(r01)*(x8500)))+(((cj4)*(x8482)*(x8486)))+(((r11)*(x8498)))+(((r00)*(sj0)*(x8488)))+(((IkReal(-1.00000000000000))*(r10)*(x8488)*(x8495)))+(((cj4)*(x8484)*(x8486)))+(((cj4)*(r02)*(x8481)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8483)*(x8484)*(x8485)))+(((IkReal(-1.00000000000000))*(r12)*(x8481)*(x8483)))+(((r01)*(x8498)))+(((IkReal(-1.00000000000000))*(x8480)*(x8489)))+(((r11)*(x8500)))+(((IkReal(-1.00000000000000))*(x8483)*(x8486)*(x8487)))+(((IkReal(-1.00000000000000))*(cj2)*(x8501)))+(((IkReal(-1.00000000000000))*(r02)*(x8483)*(x8494)))+(((IkReal(-1.00000000000000))*(x8482)*(x8483)*(x8485)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x8488)))+(((IkReal(-1.00000000000000))*(x8483)*(x8486)*(x8493)))+(((IkReal(-1.00000000000000))*(r00)*(x8488)*(x8495)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j2array[1], cj2array[1], sj2array[1]; +bool j2valid[1]={false}; +_nj2 = 1; +IkReal x8502=((cj6)*(sj5)); +IkReal x8503=((r01)*(sj0)); +IkReal x8504=((cj5)*(cj6)); +IkReal x8505=((sj5)*(sj6)); +IkReal x8506=((cj0)*(r10)); +IkReal x8507=((IkReal(5.42449275362319))*(sj0)); +IkReal x8508=((IkReal(0.144927536231884))*(cj0)); +IkReal x8509=((IkReal(5.42449275362319))*(cj0)); +IkReal x8510=((IkReal(0.144927536231884))*(cj5)*(sj6)); +if( IKabs(((((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x8506)*(x8510)))+(((IkReal(-1.00000000000000))*(r00)*(x8505)*(x8507)))+(((IkReal(-5.42449275362319))*(x8502)*(x8503)))+(((IkReal(0.144927536231884))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r11)*(x8504)*(x8508)))+(((IkReal(-1.00000000000000))*(r12)*(sj5)*(x8508)))+(((cj5)*(r02)*(x8507)))+(((r00)*(sj0)*(x8510)))+(((IkReal(-1.00000000000000))*(cj5)*(r12)*(x8509)))+(((r11)*(x8502)*(x8509)))+(((IkReal(5.42449275362319))*(x8505)*(x8506)))+(((IkReal(0.144927536231884))*(x8503)*(x8504))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((IkReal(0.0144927536231884))*(((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(374.290000000000))*(cj5)*(r22)))+(((IkReal(10.0000000000000))*(cj5)*(r20)*(sj6)))+(((IkReal(-374.290000000000))*(r20)*(x8505)))+(((IkReal(10.0000000000000))*(r22)*(sj5)))+(((IkReal(10.0000000000000))*(r21)*(x8504)))+(((IkReal(-1000.00000000000))*(pz)))+(((IkReal(-364.420000000000))*(sj1)))+(((IkReal(-374.290000000000))*(r21)*(x8502))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x8506)*(x8510)))+(((IkReal(-1.00000000000000))*(r00)*(x8505)*(x8507)))+(((IkReal(-5.42449275362319))*(x8502)*(x8503)))+(((IkReal(0.144927536231884))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r11)*(x8504)*(x8508)))+(((IkReal(-1.00000000000000))*(r12)*(sj5)*(x8508)))+(((cj5)*(r02)*(x8507)))+(((r00)*(sj0)*(x8510)))+(((IkReal(-1.00000000000000))*(cj5)*(r12)*(x8509)))+(((r11)*(x8502)*(x8509)))+(((IkReal(5.42449275362319))*(x8505)*(x8506)))+(((IkReal(0.144927536231884))*(x8503)*(x8504)))))+IKsqr(((IkReal(0.0144927536231884))*(((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(374.290000000000))*(cj5)*(r22)))+(((IkReal(10.0000000000000))*(cj5)*(r20)*(sj6)))+(((IkReal(-374.290000000000))*(r20)*(x8505)))+(((IkReal(10.0000000000000))*(r22)*(sj5)))+(((IkReal(10.0000000000000))*(r21)*(x8504)))+(((IkReal(-1000.00000000000))*(pz)))+(((IkReal(-364.420000000000))*(sj1)))+(((IkReal(-374.290000000000))*(r21)*(x8502)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j2array[0]=IKatan2(((((IkReal(14.4927536231884))*(cj0)*(py)))+(((IkReal(-14.4927536231884))*(px)*(sj0)))+(((IkReal(-1.00000000000000))*(x8506)*(x8510)))+(((IkReal(-1.00000000000000))*(r00)*(x8505)*(x8507)))+(((IkReal(-5.42449275362319))*(x8502)*(x8503)))+(((IkReal(0.144927536231884))*(r02)*(sj0)*(sj5)))+(((IkReal(-1.00000000000000))*(r11)*(x8504)*(x8508)))+(((IkReal(-1.00000000000000))*(r12)*(sj5)*(x8508)))+(((cj5)*(r02)*(x8507)))+(((r00)*(sj0)*(x8510)))+(((IkReal(-1.00000000000000))*(cj5)*(r12)*(x8509)))+(((r11)*(x8502)*(x8509)))+(((IkReal(5.42449275362319))*(x8505)*(x8506)))+(((IkReal(0.144927536231884))*(x8503)*(x8504)))), ((IkReal(0.0144927536231884))*(((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(374.290000000000))*(cj5)*(r22)))+(((IkReal(10.0000000000000))*(cj5)*(r20)*(sj6)))+(((IkReal(-374.290000000000))*(r20)*(x8505)))+(((IkReal(10.0000000000000))*(r22)*(sj5)))+(((IkReal(10.0000000000000))*(r21)*(x8504)))+(((IkReal(-1000.00000000000))*(pz)))+(((IkReal(-364.420000000000))*(sj1)))+(((IkReal(-374.290000000000))*(r21)*(x8502))))))); +sj2array[0]=IKsin(j2array[0]); +cj2array[0]=IKcos(j2array[0]); +if( j2array[0] > IKPI ) +{ + j2array[0]-=IK2PI; +} +else if( j2array[0] < -IKPI ) +{ j2array[0]+=IK2PI; +} +j2valid[0] = true; +for(int ij2 = 0; ij2 < 1; ++ij2) +{ +if( !j2valid[ij2] ) +{ + continue; +} +_ij2[0] = ij2; _ij2[1] = -1; +for(int iij2 = ij2+1; iij2 < 1; ++iij2) +{ +if( j2valid[iij2] && IKabs(cj2array[ij2]-cj2array[iij2]) < IKFAST_SOLUTION_THRESH && IKabs(sj2array[ij2]-sj2array[iij2]) < IKFAST_SOLUTION_THRESH ) +{ + j2valid[iij2]=false; _ij2[1] = iij2; break; +} +} +j2 = j2array[ij2]; cj2 = cj2array[ij2]; sj2 = sj2array[ij2]; +{ +IkReal evalcond[3]; +IkReal x8511=IKcos(j2); +IkReal x8512=((IkReal(0.374290000000000))*(sj5)); +IkReal x8513=((cj0)*(sj6)); +IkReal x8514=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8515=((cj0)*(r02)); +IkReal x8516=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8517=((IkReal(1.00000000000000))*(py)); +IkReal x8518=((r01)*(sj0)); +IkReal x8519=((r20)*(sj6)); +IkReal x8520=((r11)*(sj0)); +IkReal x8521=((IkReal(0.374290000000000))*(cj5)); +IkReal x8522=((cj0)*(r12)); +IkReal x8523=((sj0)*(x8521)); +IkReal x8524=((cj6)*(x8516)); +IkReal x8525=((IkReal(0.0690000000000000))*(x8511)); +IkReal x8526=((r10)*(sj0)*(sj6)); +IkReal x8527=((r00)*(sj0)*(sj6)); +IkReal x8528=((cj0)*(cj6)*(x8512)); +evalcond[0]=((((cj1)*(x8525)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x8521)))+(((IkReal(-1.00000000000000))*(x8516)*(x8519)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x8514)))+(((cj6)*(r21)*(x8512)))+(((x8512)*(x8519)))+(((IkReal(-1.00000000000000))*(r21)*(x8524)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r10)*(x8512)*(x8513)))+(((IkReal(-1.00000000000000))*(r11)*(x8528)))+(((IkReal(-1.00000000000000))*(x8516)*(x8527)))+(((IkReal(-1.00000000000000))*(r02)*(x8523)))+(((x8512)*(x8527)))+(((x8521)*(x8522)))+(((r10)*(x8513)*(x8516)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8514)))+(((IkReal(0.0690000000000000))*(IKsin(j2))))+(((IkReal(-1.00000000000000))*(x8518)*(x8524)))+(((IkReal(-1.00000000000000))*(cj0)*(x8517)))+(((px)*(sj0)))+(((cj6)*(x8512)*(x8518)))+(((cj0)*(r11)*(x8524)))+(((x8514)*(x8522)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((x8516)*(x8526)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((r12)*(x8523)))+(((IkReal(-1.00000000000000))*(x8512)*(x8526)))+(((IkReal(-1.00000000000000))*(sj0)*(x8517)))+(((IkReal(-1.00000000000000))*(cj6)*(x8512)*(x8520)))+(((IkReal(-1.00000000000000))*(r01)*(x8528)))+(((r00)*(x8513)*(x8516)))+(((x8515)*(x8521)))+(((IkReal(-1.00000000000000))*(sj1)*(x8525)))+(((IkReal(-1.00000000000000))*(r00)*(x8512)*(x8513)))+(((x8514)*(x8515)))+(((cj0)*(r01)*(x8524)))+(((IkReal(0.364420000000000))*(cj1)))+(((r12)*(sj0)*(x8514)))+(((x8520)*(x8524)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst0; +IkReal x8529=(cj6)*(cj6); +IkReal x8530=(sj6)*(sj6); +IkReal x8531=((IkReal(1.00000000000000))*(r01)); +IkReal x8532=((sj0)*(sj5)); +IkReal x8533=((cj6)*(r22)); +IkReal x8534=((r21)*(sj6)); +IkReal x8535=((r00)*(r21)); +IkReal x8536=((cj0)*(sj5)); +IkReal x8537=((cj6)*(r20)); +IkReal x8538=((r22)*(sj6)); +IkReal x8539=((cj0)*(cj5)); +IkReal x8540=((IkReal(1.00000000000000))*(r10)); +IkReal x8541=((cj5)*(sj0)); +IkReal x8542=((r20)*(x8530)); +IkReal x8543=((x8529)*(x8541)); +gconst0=IKsign(((((r00)*(x8532)*(x8533)))+(((x8535)*(x8543)))+(((IkReal(-1.00000000000000))*(x8531)*(x8532)*(x8538)))+(((IkReal(-1.00000000000000))*(r02)*(x8532)*(x8537)))+(((IkReal(-1.00000000000000))*(r21)*(x8530)*(x8539)*(x8540)))+(((r12)*(x8536)*(x8537)))+(((IkReal(-1.00000000000000))*(x8531)*(x8541)*(x8542)))+(((IkReal(-1.00000000000000))*(r20)*(x8531)*(x8543)))+(((r11)*(x8536)*(x8538)))+(((x8530)*(x8535)*(x8541)))+(((IkReal(-1.00000000000000))*(x8533)*(x8536)*(x8540)))+(((r11)*(x8539)*(x8542)))+(((r11)*(r20)*(x8529)*(x8539)))+(((IkReal(-1.00000000000000))*(r21)*(x8529)*(x8539)*(x8540)))+(((r02)*(x8532)*(x8534)))+(((IkReal(-1.00000000000000))*(r12)*(x8534)*(x8536))))); +IkReal x8544=(cj6)*(cj6); +IkReal x8545=(sj6)*(sj6); +IkReal x8546=((IkReal(1.00000000000000))*(r01)); +IkReal x8547=((sj0)*(sj5)); +IkReal x8548=((cj6)*(r22)); +IkReal x8549=((r21)*(sj6)); +IkReal x8550=((r00)*(r21)); +IkReal x8551=((cj0)*(sj5)); +IkReal x8552=((cj6)*(r20)); +IkReal x8553=((r22)*(sj6)); +IkReal x8554=((cj0)*(cj5)); +IkReal x8555=((IkReal(1.00000000000000))*(r10)); +IkReal x8556=((cj5)*(sj0)); +IkReal x8557=((r20)*(x8545)); +IkReal x8558=((x8544)*(x8556)); +dummyeval[0]=((((x8545)*(x8550)*(x8556)))+(((IkReal(-1.00000000000000))*(r21)*(x8544)*(x8554)*(x8555)))+(((r11)*(x8551)*(x8553)))+(((r11)*(r20)*(x8544)*(x8554)))+(((r02)*(x8547)*(x8549)))+(((IkReal(-1.00000000000000))*(x8546)*(x8547)*(x8553)))+(((r11)*(x8554)*(x8557)))+(((IkReal(-1.00000000000000))*(r20)*(x8546)*(x8558)))+(((IkReal(-1.00000000000000))*(r12)*(x8549)*(x8551)))+(((IkReal(-1.00000000000000))*(x8548)*(x8551)*(x8555)))+(((IkReal(-1.00000000000000))*(r02)*(x8547)*(x8552)))+(((r12)*(x8551)*(x8552)))+(((r00)*(x8547)*(x8548)))+(((x8550)*(x8558)))+(((IkReal(-1.00000000000000))*(x8546)*(x8556)*(x8557)))+(((IkReal(-1.00000000000000))*(r21)*(x8545)*(x8554)*(x8555)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst1; +IkReal x8559=(cj6)*(cj6); +IkReal x8560=(sj6)*(sj6); +IkReal x8561=((sj5)*(sj6)); +IkReal x8562=((IkReal(1.00000000000000))*(cj0)); +IkReal x8563=((cj6)*(sj5)); +IkReal x8564=((r20)*(sj0)); +IkReal x8565=((cj0)*(r20)); +IkReal x8566=((r00)*(r21)); +IkReal x8567=((r22)*(sj0)); +IkReal x8568=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x8569=((cj5)*(x8560)); +IkReal x8570=((cj5)*(x8559)); +gconst1=IKsign(((((r12)*(x8563)*(x8564)))+(((r11)*(x8564)*(x8570)))+(((IkReal(-1.00000000000000))*(r10)*(x8568)*(x8570)))+(((IkReal(-1.00000000000000))*(r10)*(x8568)*(x8569)))+(((IkReal(-1.00000000000000))*(r10)*(x8563)*(x8567)))+(((IkReal(-1.00000000000000))*(x8562)*(x8566)*(x8569)))+(((r01)*(x8565)*(x8569)))+(((r02)*(x8563)*(x8565)))+(((cj0)*(r01)*(r22)*(x8561)))+(((r01)*(x8565)*(x8570)))+(((IkReal(-1.00000000000000))*(x8562)*(x8566)*(x8570)))+(((r11)*(x8564)*(x8569)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x8562)*(x8563)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x8561)*(x8562)))+(((r11)*(x8561)*(x8567)))+(((IkReal(-1.00000000000000))*(r12)*(x8561)*(x8568))))); +IkReal x8571=(cj6)*(cj6); +IkReal x8572=(sj6)*(sj6); +IkReal x8573=((sj5)*(sj6)); +IkReal x8574=((IkReal(1.00000000000000))*(cj0)); +IkReal x8575=((cj6)*(sj5)); +IkReal x8576=((r20)*(sj0)); +IkReal x8577=((cj0)*(r20)); +IkReal x8578=((r00)*(r21)); +IkReal x8579=((r22)*(sj0)); +IkReal x8580=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x8581=((cj5)*(x8572)); +IkReal x8582=((cj5)*(x8571)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r12)*(x8573)*(x8580)))+(((cj0)*(r01)*(r22)*(x8573)))+(((r12)*(x8575)*(x8576)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x8574)*(x8575)))+(((r01)*(x8577)*(x8581)))+(((IkReal(-1.00000000000000))*(r10)*(x8575)*(x8579)))+(((IkReal(-1.00000000000000))*(x8574)*(x8578)*(x8582)))+(((r11)*(x8576)*(x8582)))+(((r11)*(x8576)*(x8581)))+(((r11)*(x8573)*(x8579)))+(((r01)*(x8577)*(x8582)))+(((IkReal(-1.00000000000000))*(r10)*(x8580)*(x8581)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x8573)*(x8574)))+(((IkReal(-1.00000000000000))*(x8574)*(x8578)*(x8581)))+(((r02)*(x8575)*(x8577)))+(((IkReal(-1.00000000000000))*(r10)*(x8580)*(x8582)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x8583=(cj1)*(cj1); +IkReal x8584=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x8584)))+(((cj2)*(x8583)))); +dummyeval[1]=((x8583)+(x8584)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[4]; +IkReal x8585=((IkReal(0.374290000000000))*(sj5)); +IkReal x8586=((cj0)*(sj6)); +IkReal x8587=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8588=((cj0)*(r02)); +IkReal x8589=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8590=((IkReal(1.00000000000000))*(py)); +IkReal x8591=((r01)*(sj0)); +IkReal x8592=((r20)*(sj6)); +IkReal x8593=((r11)*(sj0)); +IkReal x8594=((IkReal(0.374290000000000))*(cj5)); +IkReal x8595=((cj0)*(r12)); +IkReal x8596=((sj0)*(x8594)); +IkReal x8597=((cj6)*(x8589)); +IkReal x8598=((r10)*(sj0)*(sj6)); +IkReal x8599=((r00)*(sj0)*(sj6)); +IkReal x8600=((cj0)*(cj6)*(x8585)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x8594)))+(((IkReal(-1.00000000000000))*(r22)*(x8587)))+(((cj6)*(r21)*(x8585)))+(pz)+(((IkReal(-1.00000000000000))*(x8589)*(x8592)))+(((IkReal(-1.00000000000000))*(r21)*(x8597)))+(((x8585)*(x8592)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x8591)*(x8597)))+(((IkReal(-1.00000000000000))*(r10)*(x8585)*(x8586)))+(((IkReal(-1.00000000000000))*(cj0)*(x8590)))+(((IkReal(-1.00000000000000))*(x8589)*(x8599)))+(((cj0)*(r11)*(x8597)))+(((x8587)*(x8595)))+(((x8585)*(x8599)))+(((IkReal(-1.00000000000000))*(r02)*(x8596)))+(((r10)*(x8586)*(x8589)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8587)))+(((px)*(sj0)))+(((cj6)*(x8585)*(x8591)))+(((x8594)*(x8595)))+(((IkReal(-1.00000000000000))*(r11)*(x8600)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x8588)*(x8594)))+(((IkReal(-1.00000000000000))*(cj6)*(x8585)*(x8593)))+(((r00)*(x8586)*(x8589)))+(((x8587)*(x8588)))+(((IkReal(-1.00000000000000))*(r01)*(x8600)))+(((r12)*(sj0)*(x8587)))+(((IkReal(-1.00000000000000))*(r00)*(x8585)*(x8586)))+(((x8589)*(x8598)))+(((r12)*(x8596)))+(((cj0)*(r01)*(x8597)))+(((IkReal(-1.00000000000000))*(x8585)*(x8598)))+(((IkReal(-1.00000000000000))*(sj0)*(x8590)))+(((x8593)*(x8597)))+(((IkReal(0.364420000000000))*(cj1)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst13; +IkReal x8601=(cj6)*(cj6); +IkReal x8602=(sj6)*(sj6); +IkReal x8603=((IkReal(1.00000000000000))*(r21)); +IkReal x8604=((cj6)*(r20)); +IkReal x8605=((r22)*(sj5)); +IkReal x8606=((r01)*(sj0)); +IkReal x8607=((r00)*(sj0)); +IkReal x8608=((cj0)*(r10)); +IkReal x8609=((r02)*(sj0)*(sj5)); +IkReal x8610=((cj5)*(x8601)); +IkReal x8611=((cj0)*(r12)*(sj5)); +IkReal x8612=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8613=((cj5)*(x8602)); +IkReal x8614=((r20)*(x8613)); +gconst13=IKsign(((((IkReal(-1.00000000000000))*(x8612)*(x8614)))+(((r20)*(x8606)*(x8610)))+(((IkReal(-1.00000000000000))*(x8603)*(x8607)*(x8610)))+(((x8604)*(x8609)))+(((IkReal(-1.00000000000000))*(sj6)*(x8603)*(x8609)))+(((IkReal(-1.00000000000000))*(cj6)*(x8605)*(x8607)))+(((IkReal(-1.00000000000000))*(r20)*(x8610)*(x8612)))+(((IkReal(-1.00000000000000))*(x8603)*(x8607)*(x8613)))+(((IkReal(-1.00000000000000))*(x8604)*(x8611)))+(((x8606)*(x8614)))+(((r21)*(x8608)*(x8610)))+(((sj6)*(x8605)*(x8606)))+(((IkReal(-1.00000000000000))*(sj6)*(x8605)*(x8612)))+(((r21)*(sj6)*(x8611)))+(((cj6)*(x8605)*(x8608)))+(((r21)*(x8608)*(x8613))))); +IkReal x8615=(cj6)*(cj6); +IkReal x8616=(sj6)*(sj6); +IkReal x8617=((IkReal(1.00000000000000))*(r21)); +IkReal x8618=((cj6)*(r20)); +IkReal x8619=((r22)*(sj5)); +IkReal x8620=((r01)*(sj0)); +IkReal x8621=((r00)*(sj0)); +IkReal x8622=((cj0)*(r10)); +IkReal x8623=((r02)*(sj0)*(sj5)); +IkReal x8624=((cj5)*(x8615)); +IkReal x8625=((cj0)*(r12)*(sj5)); +IkReal x8626=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8627=((cj5)*(x8616)); +IkReal x8628=((r20)*(x8627)); +dummyeval[0]=((((r21)*(sj6)*(x8625)))+(((r20)*(x8620)*(x8624)))+(((IkReal(-1.00000000000000))*(x8626)*(x8628)))+(((IkReal(-1.00000000000000))*(r20)*(x8624)*(x8626)))+(((r21)*(x8622)*(x8624)))+(((IkReal(-1.00000000000000))*(x8618)*(x8625)))+(((IkReal(-1.00000000000000))*(sj6)*(x8617)*(x8623)))+(((IkReal(-1.00000000000000))*(x8617)*(x8621)*(x8624)))+(((x8620)*(x8628)))+(((cj6)*(x8619)*(x8622)))+(((x8618)*(x8623)))+(((r21)*(x8622)*(x8627)))+(((IkReal(-1.00000000000000))*(sj6)*(x8619)*(x8626)))+(((IkReal(-1.00000000000000))*(x8617)*(x8621)*(x8627)))+(((IkReal(-1.00000000000000))*(cj6)*(x8619)*(x8621)))+(((sj6)*(x8619)*(x8620)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst14; +IkReal x8629=(cj6)*(cj6); +IkReal x8630=(sj6)*(sj6); +IkReal x8631=((sj5)*(sj6)); +IkReal x8632=((IkReal(1.00000000000000))*(cj0)); +IkReal x8633=((cj6)*(sj5)); +IkReal x8634=((r20)*(sj0)); +IkReal x8635=((cj0)*(r20)); +IkReal x8636=((r00)*(r21)); +IkReal x8637=((r22)*(sj0)); +IkReal x8638=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x8639=((cj5)*(x8630)); +IkReal x8640=((cj5)*(x8629)); +gconst14=IKsign(((((IkReal(-1.00000000000000))*(r10)*(x8638)*(x8639)))+(((IkReal(-1.00000000000000))*(r10)*(x8638)*(x8640)))+(((r01)*(x8635)*(x8640)))+(((r11)*(x8634)*(x8639)))+(((r02)*(x8633)*(x8635)))+(((r12)*(x8633)*(x8634)))+(((r11)*(x8634)*(x8640)))+(((IkReal(-1.00000000000000))*(r10)*(x8633)*(x8637)))+(((cj0)*(r01)*(r22)*(x8631)))+(((r01)*(x8635)*(x8639)))+(((IkReal(-1.00000000000000))*(r12)*(x8631)*(x8638)))+(((r11)*(x8631)*(x8637)))+(((IkReal(-1.00000000000000))*(x8632)*(x8636)*(x8639)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x8631)*(x8632)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x8632)*(x8633)))+(((IkReal(-1.00000000000000))*(x8632)*(x8636)*(x8640))))); +IkReal x8641=(cj6)*(cj6); +IkReal x8642=(sj6)*(sj6); +IkReal x8643=((sj5)*(sj6)); +IkReal x8644=((IkReal(1.00000000000000))*(cj0)); +IkReal x8645=((cj6)*(sj5)); +IkReal x8646=((r20)*(sj0)); +IkReal x8647=((cj0)*(r20)); +IkReal x8648=((r00)*(r21)); +IkReal x8649=((r22)*(sj0)); +IkReal x8650=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x8651=((cj5)*(x8642)); +IkReal x8652=((cj5)*(x8641)); +dummyeval[0]=((((cj0)*(r01)*(r22)*(x8643)))+(((r01)*(x8647)*(x8652)))+(((r11)*(x8646)*(x8652)))+(((IkReal(-1.00000000000000))*(r10)*(x8650)*(x8652)))+(((IkReal(-1.00000000000000))*(r10)*(x8645)*(x8649)))+(((r02)*(x8645)*(x8647)))+(((r11)*(x8643)*(x8649)))+(((IkReal(-1.00000000000000))*(r12)*(x8643)*(x8650)))+(((IkReal(-1.00000000000000))*(r10)*(x8650)*(x8651)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x8643)*(x8644)))+(((r01)*(x8647)*(x8651)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x8644)*(x8645)))+(((IkReal(-1.00000000000000))*(x8644)*(x8648)*(x8651)))+(((r12)*(x8645)*(x8646)))+(((r11)*(x8646)*(x8651)))+(((IkReal(-1.00000000000000))*(x8644)*(x8648)*(x8652)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x8653=((cj5)*(r22)); +IkReal x8654=((IkReal(0.374290000000000))*(sj5)); +IkReal x8655=((cj0)*(sj6)); +IkReal x8656=((cj6)*(r21)); +IkReal x8657=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8658=((cj0)*(r02)); +IkReal x8659=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8660=((IkReal(1.00000000000000))*(py)); +IkReal x8661=((r01)*(sj0)); +IkReal x8662=((r20)*(sj6)); +IkReal x8663=((r11)*(sj0)); +IkReal x8664=((IkReal(0.374290000000000))*(cj5)); +IkReal x8665=((cj0)*(r12)); +IkReal x8666=((sj0)*(x8664)); +IkReal x8667=((cj6)*(x8659)); +IkReal x8668=((r10)*(sj0)*(sj6)); +IkReal x8669=((r00)*(sj0)*(sj6)); +IkReal x8670=((cj0)*(cj6)*(x8654)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x8656)))+(((sj5)*(x8662)))+(((IkReal(-1.00000000000000))*(x8653)))); +evalcond[2]=((((x8654)*(x8656)))+(((IkReal(-0.374290000000000))*(x8653)))+(((IkReal(-1.00000000000000))*(x8659)*(x8662)))+(((IkReal(-1.00000000000000))*(x8656)*(x8659)))+(((x8654)*(x8662)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x8657)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x8659)*(x8669)))+(((IkReal(-1.00000000000000))*(r11)*(x8670)))+(((cj6)*(x8654)*(x8661)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8657)))+(((x8657)*(x8665)))+(((IkReal(-1.00000000000000))*(r10)*(x8654)*(x8655)))+(((IkReal(-1.00000000000000))*(x8661)*(x8667)))+(((x8654)*(x8669)))+(((IkReal(-1.00000000000000))*(cj0)*(x8660)))+(((r10)*(x8655)*(x8659)))+(((IkReal(-1.00000000000000))*(r02)*(x8666)))+(((px)*(sj0)))+(((x8664)*(x8665)))+(((cj0)*(r11)*(x8667)))); +evalcond[4]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((r00)*(x8655)*(x8659)))+(((r12)*(sj0)*(x8657)))+(((IkReal(-1.00000000000000))*(r00)*(x8654)*(x8655)))+(((IkReal(-1.00000000000000))*(x8654)*(x8668)))+(((x8657)*(x8658)))+(((IkReal(-1.00000000000000))*(r01)*(x8670)))+(((x8659)*(x8668)))+(((r12)*(x8666)))+(((x8658)*(x8664)))+(((x8663)*(x8667)))+(((cj0)*(r01)*(x8667)))+(((IkReal(-1.00000000000000))*(sj0)*(x8660)))+(((IkReal(-1.00000000000000))*(cj6)*(x8654)*(x8663)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8671=((cj0)*(cj5)); +IkReal x8672=((IkReal(1.00000000000000))*(cj0)); +IkReal x8673=((cj6)*(r11)); +IkReal x8674=((r10)*(sj6)); +IkReal x8675=((cj5)*(sj0)); +IkReal x8676=((r00)*(sj5)*(sj6)); +IkReal x8677=((cj6)*(r01)*(sj5)); +IkReal x8678=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x8677)))+(((r12)*(x8671)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8673)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8674)))+(((sj0)*(x8676)))+(((IkReal(-1.00000000000000))*(r02)*(x8675))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x8672)*(x8677)))+(((r02)*(x8671)))+(((IkReal(-1.00000000000000))*(x8672)*(x8676)))+(((IkReal(-1.00000000000000))*(x8674)*(x8678)))+(((IkReal(-1.00000000000000))*(x8673)*(x8678)))+(((r12)*(x8675))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x8677)))+(((r12)*(x8671)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8673)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8674)))+(((sj0)*(x8676)))+(((IkReal(-1.00000000000000))*(r02)*(x8675)))))+IKsqr(((((IkReal(-1.00000000000000))*(x8672)*(x8677)))+(((r02)*(x8671)))+(((IkReal(-1.00000000000000))*(x8672)*(x8676)))+(((IkReal(-1.00000000000000))*(x8674)*(x8678)))+(((IkReal(-1.00000000000000))*(x8673)*(x8678)))+(((r12)*(x8675)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x8677)))+(((r12)*(x8671)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8673)))+(((IkReal(-1.00000000000000))*(sj5)*(x8672)*(x8674)))+(((sj0)*(x8676)))+(((IkReal(-1.00000000000000))*(r02)*(x8675)))), ((((IkReal(-1.00000000000000))*(x8672)*(x8677)))+(((r02)*(x8671)))+(((IkReal(-1.00000000000000))*(x8672)*(x8676)))+(((IkReal(-1.00000000000000))*(x8674)*(x8678)))+(((IkReal(-1.00000000000000))*(x8673)*(x8678)))+(((r12)*(x8675))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x8679=((cj0)*(cj5)); +IkReal x8680=((IkReal(1.00000000000000))*(cj0)); +IkReal x8681=((cj6)*(r11)); +IkReal x8682=((r10)*(sj6)); +IkReal x8683=((cj5)*(sj0)); +IkReal x8684=((r00)*(sj5)*(sj6)); +IkReal x8685=((cj6)*(r01)*(sj5)); +IkReal x8686=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x8683)))+(((IkReal(-1.00000000000000))*(sj5)*(x8680)*(x8682)))+(((sj0)*(x8684)))+(((r12)*(x8679)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((IkReal(-1.00000000000000))*(sj5)*(x8680)*(x8681)))+(((sj0)*(x8685)))); +evalcond[1]=((((r02)*(x8679)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(x8680)*(x8684)))+(((IkReal(-1.00000000000000))*(x8682)*(x8686)))+(((IkReal(-1.00000000000000))*(x8680)*(x8685)))+(((IkReal(-1.00000000000000))*(x8681)*(x8686)))+(((r12)*(x8683)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst20; +IkReal x8687=(cj5)*(cj5); +IkReal x8688=(r20)*(r20); +IkReal x8689=(sj6)*(sj6); +IkReal x8690=(cj6)*(cj6); +IkReal x8691=(r21)*(r21); +IkReal x8692=((cj6)*(r21)); +IkReal x8693=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8694=((cj5)*(r22)*(sj5)); +gconst20=IKsign(((((x8687)*(x8690)*(x8691)))+(((IkReal(-1.00000000000000))*(x8692)*(x8693)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x8687)*(x8688)*(x8689)))+(((x8689)*(x8691)))+(((x8687)*(x8692)*(x8693)))+(((x8688)*(x8690)))+(((x8693)*(x8694)))+(((IkReal(2.00000000000000))*(x8692)*(x8694))))); +IkReal x8695=(cj5)*(cj5); +IkReal x8696=(r20)*(r20); +IkReal x8697=(sj6)*(sj6); +IkReal x8698=(cj6)*(cj6); +IkReal x8699=(r21)*(r21); +IkReal x8700=((cj6)*(r21)); +IkReal x8701=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8702=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((IkReal(2.00000000000000))*(x8700)*(x8702)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x8695)*(x8700)*(x8701)))+(((x8696)*(x8698)))+(((x8697)*(x8699)))+(((x8695)*(x8698)*(x8699)))+(((IkReal(-1.00000000000000))*(x8700)*(x8701)))+(((x8701)*(x8702)))+(((x8695)*(x8696)*(x8697)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst21; +IkReal x8703=(cj6)*(cj6); +IkReal x8704=(sj6)*(sj6); +IkReal x8705=((IkReal(1.00000000000000))*(r21)); +IkReal x8706=((cj6)*(r20)); +IkReal x8707=((r22)*(sj5)); +IkReal x8708=((r01)*(sj0)); +IkReal x8709=((r00)*(sj0)); +IkReal x8710=((cj0)*(r10)); +IkReal x8711=((r02)*(sj0)*(sj5)); +IkReal x8712=((cj5)*(x8703)); +IkReal x8713=((cj0)*(r12)*(sj5)); +IkReal x8714=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8715=((cj5)*(x8704)); +IkReal x8716=((r20)*(x8715)); +gconst21=IKsign(((((r21)*(x8710)*(x8715)))+(((sj6)*(x8707)*(x8708)))+(((cj6)*(x8707)*(x8710)))+(((IkReal(-1.00000000000000))*(r20)*(x8712)*(x8714)))+(((IkReal(-1.00000000000000))*(cj6)*(x8707)*(x8709)))+(((x8706)*(x8711)))+(((x8708)*(x8716)))+(((IkReal(-1.00000000000000))*(x8706)*(x8713)))+(((r20)*(x8708)*(x8712)))+(((IkReal(-1.00000000000000))*(sj6)*(x8707)*(x8714)))+(((IkReal(-1.00000000000000))*(x8705)*(x8709)*(x8712)))+(((r21)*(sj6)*(x8713)))+(((IkReal(-1.00000000000000))*(x8705)*(x8709)*(x8715)))+(((IkReal(-1.00000000000000))*(sj6)*(x8705)*(x8711)))+(((r21)*(x8710)*(x8712)))+(((IkReal(-1.00000000000000))*(x8714)*(x8716))))); +IkReal x8717=(cj6)*(cj6); +IkReal x8718=(sj6)*(sj6); +IkReal x8719=((IkReal(1.00000000000000))*(r21)); +IkReal x8720=((cj6)*(r20)); +IkReal x8721=((r22)*(sj5)); +IkReal x8722=((r01)*(sj0)); +IkReal x8723=((r00)*(sj0)); +IkReal x8724=((cj0)*(r10)); +IkReal x8725=((r02)*(sj0)*(sj5)); +IkReal x8726=((cj5)*(x8717)); +IkReal x8727=((cj0)*(r12)*(sj5)); +IkReal x8728=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8729=((cj5)*(x8718)); +IkReal x8730=((r20)*(x8729)); +dummyeval[0]=((((x8722)*(x8730)))+(((r21)*(sj6)*(x8727)))+(((IkReal(-1.00000000000000))*(x8728)*(x8730)))+(((r21)*(x8724)*(x8729)))+(((sj6)*(x8721)*(x8722)))+(((x8720)*(x8725)))+(((r21)*(x8724)*(x8726)))+(((IkReal(-1.00000000000000))*(cj6)*(x8721)*(x8723)))+(((IkReal(-1.00000000000000))*(x8719)*(x8723)*(x8726)))+(((IkReal(-1.00000000000000))*(r20)*(x8726)*(x8728)))+(((r20)*(x8722)*(x8726)))+(((IkReal(-1.00000000000000))*(x8720)*(x8727)))+(((cj6)*(x8721)*(x8724)))+(((IkReal(-1.00000000000000))*(x8719)*(x8723)*(x8729)))+(((IkReal(-1.00000000000000))*(sj6)*(x8721)*(x8728)))+(((IkReal(-1.00000000000000))*(sj6)*(x8719)*(x8725)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x8731=((sj0)*(sj6)); +IkReal x8732=((cj0)*(cj6)); +IkReal x8733=((IkReal(1.00000000000000))*(cj5)); +IkReal x8734=((cj6)*(sj0)); +IkReal x8735=((cj0)*(sj6)); +if( IKabs(((gconst21)*(((((r01)*(x8731)))+(((IkReal(-1.00000000000000))*(r11)*(x8735)))+(((r10)*(x8732)))+(((IkReal(-1.00000000000000))*(r00)*(x8734))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst21)*(((((IkReal(-1.00000000000000))*(r00)*(x8731)*(x8733)))+(((IkReal(-1.00000000000000))*(r01)*(x8733)*(x8734)))+(((cj0)*(r12)*(sj5)))+(((cj5)*(r11)*(x8732)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(r10)*(x8735))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst21)*(((((r01)*(x8731)))+(((IkReal(-1.00000000000000))*(r11)*(x8735)))+(((r10)*(x8732)))+(((IkReal(-1.00000000000000))*(r00)*(x8734)))))), ((gconst21)*(((((IkReal(-1.00000000000000))*(r00)*(x8731)*(x8733)))+(((IkReal(-1.00000000000000))*(r01)*(x8733)*(x8734)))+(((cj0)*(r12)*(sj5)))+(((cj5)*(r11)*(x8732)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(r10)*(x8735))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x8736=IKsin(j4); +IkReal x8737=IKcos(j4); +IkReal x8738=((r22)*(sj5)); +IkReal x8739=((IkReal(1.00000000000000))*(cj6)); +IkReal x8740=((IkReal(1.00000000000000))*(cj0)); +IkReal x8741=((cj5)*(r11)); +IkReal x8742=((cj5)*(cj6)); +IkReal x8743=((r11)*(sj6)); +IkReal x8744=((IkReal(1.00000000000000))*(sj6)); +IkReal x8745=((cj6)*(r00)); +IkReal x8746=((r12)*(sj5)); +IkReal x8747=((r02)*(sj5)); +IkReal x8748=((cj6)*(r10)); +IkReal x8749=((cj5)*(sj6)); +IkReal x8750=((cj5)*(r01)); +IkReal x8751=((sj0)*(x8736)); +IkReal x8752=((r00)*(x8749)); +IkReal x8753=((cj0)*(x8736)); +IkReal x8754=((sj0)*(x8737)); +IkReal x8755=((r20)*(x8737)); +IkReal x8756=((cj0)*(x8737)); +IkReal x8757=((r21)*(x8736)); +IkReal x8758=((r21)*(x8737)); +IkReal x8759=((r20)*(x8736)); +IkReal x8760=((x8737)*(x8746)); +IkReal x8761=((r01)*(sj6)*(x8737)); +IkReal x8762=((cj5)*(r10)*(x8744)); +evalcond[0]=((IkReal(-1.00000000000000))+(((x8736)*(x8738)))+(((IkReal(-1.00000000000000))*(x8739)*(x8755)))+(((x8749)*(x8759)))+(((x8742)*(x8757)))+(((sj6)*(x8758)))); +evalcond[1]=((((x8749)*(x8755)))+(((x8742)*(x8758)))+(((IkReal(-1.00000000000000))*(x8744)*(x8757)))+(((cj6)*(x8759)))+(((x8737)*(x8738)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8739)*(x8741)*(x8753)))+(((IkReal(-1.00000000000000))*(x8737)*(x8740)*(x8743)))+(((x8748)*(x8756)))+(((IkReal(-1.00000000000000))*(r10)*(x8736)*(x8740)*(x8749)))+(((IkReal(-1.00000000000000))*(x8736)*(x8740)*(x8746)))+(((x8747)*(x8751)))+(((r01)*(x8742)*(x8751)))+(((x8751)*(x8752)))+(((r01)*(sj6)*(x8754)))+(((IkReal(-1.00000000000000))*(r00)*(x8739)*(x8754)))); +evalcond[3]=((((x8747)*(x8754)))+(((r01)*(x8742)*(x8754)))+(((IkReal(-1.00000000000000))*(r10)*(x8739)*(x8753)))+(((IkReal(-1.00000000000000))*(x8740)*(x8760)))+(((x8752)*(x8754)))+(((IkReal(-1.00000000000000))*(r10)*(x8737)*(x8740)*(x8749)))+(cj3)+(((x8743)*(x8753)))+(((IkReal(-1.00000000000000))*(x8739)*(x8741)*(x8756)))+(((x8745)*(x8751)))+(((IkReal(-1.00000000000000))*(r01)*(x8744)*(x8751)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8743)*(x8754)))+(((IkReal(-1.00000000000000))*(x8739)*(x8750)*(x8753)))+(((IkReal(-1.00000000000000))*(x8736)*(x8740)*(x8752)))+(((IkReal(-1.00000000000000))*(x8736)*(x8740)*(x8747)))+(((x8748)*(x8754)))+(((IkReal(-1.00000000000000))*(x8746)*(x8751)))+(((IkReal(-1.00000000000000))*(x8739)*(x8741)*(x8751)))+(((x8745)*(x8756)))+(((IkReal(-1.00000000000000))*(x8751)*(x8762)))+(((IkReal(-1.00000000000000))*(x8740)*(x8761)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8737)*(x8740)*(x8747)))+(((r01)*(sj6)*(x8753)))+(((IkReal(-1.00000000000000))*(x8746)*(x8754)))+(((x8743)*(x8751)))+(((IkReal(-1.00000000000000))*(x8739)*(x8750)*(x8756)))+(((IkReal(-1.00000000000000))*(r00)*(x8739)*(x8753)))+(((IkReal(-1.00000000000000))*(x8737)*(x8740)*(x8752)))+(((IkReal(-1.00000000000000))*(x8739)*(x8741)*(x8754)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(r10)*(x8739)*(x8751)))+(((IkReal(-1.00000000000000))*(x8754)*(x8762)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst20)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst20)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst20)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst20)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x8763=IKsin(j4); +IkReal x8764=IKcos(j4); +IkReal x8765=((r22)*(sj5)); +IkReal x8766=((IkReal(1.00000000000000))*(cj6)); +IkReal x8767=((IkReal(1.00000000000000))*(cj0)); +IkReal x8768=((cj5)*(r11)); +IkReal x8769=((cj5)*(cj6)); +IkReal x8770=((r11)*(sj6)); +IkReal x8771=((IkReal(1.00000000000000))*(sj6)); +IkReal x8772=((cj6)*(r00)); +IkReal x8773=((r12)*(sj5)); +IkReal x8774=((r02)*(sj5)); +IkReal x8775=((cj6)*(r10)); +IkReal x8776=((cj5)*(sj6)); +IkReal x8777=((cj5)*(r01)); +IkReal x8778=((sj0)*(x8763)); +IkReal x8779=((r00)*(x8776)); +IkReal x8780=((cj0)*(x8763)); +IkReal x8781=((sj0)*(x8764)); +IkReal x8782=((r20)*(x8764)); +IkReal x8783=((cj0)*(x8764)); +IkReal x8784=((r21)*(x8763)); +IkReal x8785=((r21)*(x8764)); +IkReal x8786=((r20)*(x8763)); +IkReal x8787=((x8764)*(x8773)); +IkReal x8788=((r01)*(sj6)*(x8764)); +IkReal x8789=((cj5)*(r10)*(x8771)); +evalcond[0]=((IkReal(-1.00000000000000))+(((x8763)*(x8765)))+(((x8769)*(x8784)))+(((IkReal(-1.00000000000000))*(x8766)*(x8782)))+(((sj6)*(x8785)))+(((x8776)*(x8786)))); +evalcond[1]=((((x8769)*(x8785)))+(((IkReal(-1.00000000000000))*(x8771)*(x8784)))+(((cj6)*(x8786)))+(((x8764)*(x8765)))+(((x8776)*(x8782)))); +evalcond[2]=((((r01)*(sj6)*(x8781)))+(((IkReal(-1.00000000000000))*(r00)*(x8766)*(x8781)))+(((r01)*(x8769)*(x8778)))+(((IkReal(-1.00000000000000))*(r10)*(x8763)*(x8767)*(x8776)))+(((IkReal(-1.00000000000000))*(x8764)*(x8767)*(x8770)))+(((x8774)*(x8778)))+(((IkReal(-1.00000000000000))*(x8766)*(x8768)*(x8780)))+(((IkReal(-1.00000000000000))*(x8763)*(x8767)*(x8773)))+(((x8775)*(x8783)))+(((x8778)*(x8779)))); +evalcond[3]=((((r01)*(x8769)*(x8781)))+(((x8770)*(x8780)))+(((x8779)*(x8781)))+(((IkReal(-1.00000000000000))*(r10)*(x8764)*(x8767)*(x8776)))+(((IkReal(-1.00000000000000))*(x8766)*(x8768)*(x8783)))+(((IkReal(-1.00000000000000))*(r01)*(x8771)*(x8778)))+(((IkReal(-1.00000000000000))*(r10)*(x8766)*(x8780)))+(cj3)+(((IkReal(-1.00000000000000))*(x8767)*(x8787)))+(((x8772)*(x8778)))+(((x8774)*(x8781)))); +evalcond[4]=((((x8775)*(x8781)))+(((IkReal(-1.00000000000000))*(x8763)*(x8767)*(x8774)))+(((x8772)*(x8783)))+(((IkReal(-1.00000000000000))*(x8773)*(x8778)))+(((IkReal(-1.00000000000000))*(x8763)*(x8767)*(x8779)))+(((IkReal(-1.00000000000000))*(x8767)*(x8788)))+(((IkReal(-1.00000000000000))*(x8766)*(x8768)*(x8778)))+(((IkReal(-1.00000000000000))*(x8778)*(x8789)))+(((IkReal(-1.00000000000000))*(x8770)*(x8781)))+(((IkReal(-1.00000000000000))*(x8766)*(x8777)*(x8780)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x8764)*(x8767)*(x8779)))+(((IkReal(-1.00000000000000))*(r00)*(x8766)*(x8780)))+(((IkReal(-1.00000000000000))*(x8764)*(x8767)*(x8774)))+(((IkReal(-1.00000000000000))*(r10)*(x8766)*(x8778)))+(((IkReal(-1.00000000000000))*(x8766)*(x8768)*(x8781)))+(((r01)*(sj6)*(x8780)))+(((IkReal(-1.00000000000000))*(x8766)*(x8777)*(x8783)))+(((IkReal(-1.00000000000000))*(x8773)*(x8781)))+(((IkReal(-1.00000000000000))*(sj3)))+(((x8770)*(x8778)))+(((IkReal(-1.00000000000000))*(x8781)*(x8789)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x8790=((cj5)*(r22)); +IkReal x8791=((IkReal(0.374290000000000))*(sj5)); +IkReal x8792=((cj0)*(sj6)); +IkReal x8793=((cj6)*(r21)); +IkReal x8794=((IkReal(0.0100000000000000))*(sj5)); +IkReal x8795=((cj0)*(r02)); +IkReal x8796=((IkReal(0.0100000000000000))*(cj5)); +IkReal x8797=((IkReal(1.00000000000000))*(py)); +IkReal x8798=((r01)*(sj0)); +IkReal x8799=((r20)*(sj6)); +IkReal x8800=((r11)*(sj0)); +IkReal x8801=((IkReal(0.374290000000000))*(cj5)); +IkReal x8802=((cj0)*(r12)); +IkReal x8803=((sj0)*(x8801)); +IkReal x8804=((cj6)*(x8796)); +IkReal x8805=((r10)*(sj0)*(sj6)); +IkReal x8806=((r00)*(sj0)*(sj6)); +IkReal x8807=((cj0)*(cj6)*(x8791)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x8793)))+(((sj5)*(x8799)))+(((IkReal(-1.00000000000000))*(x8790)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x8793)*(x8796)))+(((x8791)*(x8799)))+(((x8791)*(x8793)))+(((IkReal(-1.00000000000000))*(x8796)*(x8799)))+(((IkReal(-0.374290000000000))*(x8790)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x8794)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((x8794)*(x8802)))+(((cj6)*(x8791)*(x8798)))+(((IkReal(-1.00000000000000))*(x8796)*(x8806)))+(((x8791)*(x8806)))+(((cj0)*(r11)*(x8804)))+(((IkReal(-1.00000000000000))*(r10)*(x8791)*(x8792)))+(((IkReal(-1.00000000000000))*(r11)*(x8807)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8794)))+(((IkReal(-1.00000000000000))*(r02)*(x8803)))+(((px)*(sj0)))+(((x8801)*(x8802)))+(((IkReal(-1.00000000000000))*(x8798)*(x8804)))+(((IkReal(-1.00000000000000))*(cj0)*(x8797)))+(((r10)*(x8792)*(x8796)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x8800)*(x8804)))+(((x8796)*(x8805)))+(((r00)*(x8792)*(x8796)))+(((r12)*(sj0)*(x8794)))+(((IkReal(-1.00000000000000))*(x8791)*(x8805)))+(((x8794)*(x8795)))+(((IkReal(-1.00000000000000))*(cj6)*(x8791)*(x8800)))+(((IkReal(-1.00000000000000))*(r00)*(x8791)*(x8792)))+(((r12)*(x8803)))+(((cj0)*(r01)*(x8804)))+(((IkReal(-1.00000000000000))*(r01)*(x8807)))+(((x8795)*(x8801)))+(((IkReal(-1.00000000000000))*(sj0)*(x8797)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8808=((sj0)*(sj5)); +IkReal x8809=((r00)*(sj6)); +IkReal x8810=((IkReal(1.00000000000000))*(cj5)); +IkReal x8811=((cj6)*(r11)); +IkReal x8812=((cj6)*(r01)); +IkReal x8813=((r10)*(sj6)); +IkReal x8814=((cj0)*(sj5)); +if( IKabs(((((x8808)*(x8812)))+(((IkReal(-1.00000000000000))*(x8813)*(x8814)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8810)))+(((x8808)*(x8809)))+(((IkReal(-1.00000000000000))*(x8811)*(x8814))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x8808)*(x8811)))+(((x8808)*(x8813)))+(((x8809)*(x8814)))+(((x8812)*(x8814)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x8810)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x8810))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x8808)*(x8812)))+(((IkReal(-1.00000000000000))*(x8813)*(x8814)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8810)))+(((x8808)*(x8809)))+(((IkReal(-1.00000000000000))*(x8811)*(x8814)))))+IKsqr(((((x8808)*(x8811)))+(((x8808)*(x8813)))+(((x8809)*(x8814)))+(((x8812)*(x8814)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x8810)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x8810)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x8808)*(x8812)))+(((IkReal(-1.00000000000000))*(x8813)*(x8814)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8810)))+(((x8808)*(x8809)))+(((IkReal(-1.00000000000000))*(x8811)*(x8814)))), ((((x8808)*(x8811)))+(((x8808)*(x8813)))+(((x8809)*(x8814)))+(((x8812)*(x8814)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x8810)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x8810))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x8815=((cj0)*(cj5)); +IkReal x8816=((IkReal(1.00000000000000))*(cj0)); +IkReal x8817=((cj6)*(r11)); +IkReal x8818=((r10)*(sj6)); +IkReal x8819=((cj5)*(sj0)); +IkReal x8820=((r00)*(sj5)*(sj6)); +IkReal x8821=((cj6)*(r01)*(sj5)); +IkReal x8822=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((sj0)*(x8821)))+(((r12)*(x8815)))+(((IkReal(-1.00000000000000))*(r02)*(x8819)))+(((sj0)*(x8820)))+(((IkReal(-1.00000000000000))*(sj5)*(x8816)*(x8817)))+(((IkReal(-1.00000000000000))*(sj5)*(x8816)*(x8818)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x8817)*(x8822)))+(((r12)*(x8819)))+(((IkReal(-1.00000000000000))*(x8816)*(x8820)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x8818)*(x8822)))+(((r02)*(x8815)))+(((IkReal(-1.00000000000000))*(x8816)*(x8821)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst24; +IkReal x8823=(r21)*(r21); +IkReal x8824=(cj5)*(cj5); +IkReal x8825=(sj6)*(sj6); +IkReal x8826=(cj6)*(cj6); +IkReal x8827=(r20)*(r20); +IkReal x8828=((cj6)*(r21)); +IkReal x8829=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8830=((cj5)*(r22)*(sj5)); +IkReal x8831=((IkReal(1.00000000000000))*(x8825)); +IkReal x8832=((IkReal(1.00000000000000))*(x8826)); +gconst24=IKsign(((((IkReal(-1.00000000000000))*(x8823)*(x8824)*(x8832)))+(((IkReal(-2.00000000000000))*(x8828)*(x8830)))+(((IkReal(-1.00000000000000))*(x8823)*(x8831)))+(((IkReal(-1.00000000000000))*(x8824)*(x8828)*(x8829)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x8829)*(x8830)))+(((IkReal(-1.00000000000000))*(x8824)*(x8827)*(x8831)))+(((x8828)*(x8829)))+(((IkReal(-1.00000000000000))*(x8827)*(x8832))))); +IkReal x8833=(r21)*(r21); +IkReal x8834=(cj5)*(cj5); +IkReal x8835=(sj6)*(sj6); +IkReal x8836=(cj6)*(cj6); +IkReal x8837=(r20)*(r20); +IkReal x8838=((cj6)*(r21)); +IkReal x8839=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8840=((cj5)*(r22)*(sj5)); +IkReal x8841=((IkReal(1.00000000000000))*(x8835)); +IkReal x8842=((IkReal(1.00000000000000))*(x8836)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x8833)*(x8834)*(x8842)))+(((IkReal(-1.00000000000000))*(x8834)*(x8837)*(x8841)))+(((x8838)*(x8839)))+(((IkReal(-2.00000000000000))*(x8838)*(x8840)))+(((IkReal(-1.00000000000000))*(x8833)*(x8841)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x8837)*(x8842)))+(((IkReal(-1.00000000000000))*(x8834)*(x8838)*(x8839)))+(((IkReal(-1.00000000000000))*(x8839)*(x8840)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst25; +IkReal x8843=(cj6)*(cj6); +IkReal x8844=(sj6)*(sj6); +IkReal x8845=((IkReal(1.00000000000000))*(r01)); +IkReal x8846=((sj0)*(sj5)); +IkReal x8847=((cj6)*(r22)); +IkReal x8848=((r21)*(sj6)); +IkReal x8849=((r00)*(r21)); +IkReal x8850=((cj0)*(sj5)); +IkReal x8851=((cj6)*(r20)); +IkReal x8852=((r22)*(sj6)); +IkReal x8853=((cj0)*(cj5)); +IkReal x8854=((IkReal(1.00000000000000))*(r10)); +IkReal x8855=((cj5)*(sj0)); +IkReal x8856=((r20)*(x8844)); +IkReal x8857=((x8843)*(x8855)); +gconst25=IKsign(((((IkReal(-1.00000000000000))*(x8845)*(x8855)*(x8856)))+(((IkReal(-1.00000000000000))*(r12)*(x8848)*(x8850)))+(((r02)*(x8846)*(x8848)))+(((IkReal(-1.00000000000000))*(r21)*(x8843)*(x8853)*(x8854)))+(((r11)*(x8853)*(x8856)))+(((x8849)*(x8857)))+(((IkReal(-1.00000000000000))*(r02)*(x8846)*(x8851)))+(((r11)*(r20)*(x8843)*(x8853)))+(((x8844)*(x8849)*(x8855)))+(((r12)*(x8850)*(x8851)))+(((IkReal(-1.00000000000000))*(r20)*(x8845)*(x8857)))+(((IkReal(-1.00000000000000))*(x8845)*(x8846)*(x8852)))+(((r00)*(x8846)*(x8847)))+(((IkReal(-1.00000000000000))*(r21)*(x8844)*(x8853)*(x8854)))+(((r11)*(x8850)*(x8852)))+(((IkReal(-1.00000000000000))*(x8847)*(x8850)*(x8854))))); +IkReal x8858=(cj6)*(cj6); +IkReal x8859=(sj6)*(sj6); +IkReal x8860=((IkReal(1.00000000000000))*(r01)); +IkReal x8861=((sj0)*(sj5)); +IkReal x8862=((cj6)*(r22)); +IkReal x8863=((r21)*(sj6)); +IkReal x8864=((r00)*(r21)); +IkReal x8865=((cj0)*(sj5)); +IkReal x8866=((cj6)*(r20)); +IkReal x8867=((r22)*(sj6)); +IkReal x8868=((cj0)*(cj5)); +IkReal x8869=((IkReal(1.00000000000000))*(r10)); +IkReal x8870=((cj5)*(sj0)); +IkReal x8871=((r20)*(x8859)); +IkReal x8872=((x8858)*(x8870)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x8860)*(x8870)*(x8871)))+(((IkReal(-1.00000000000000))*(r21)*(x8858)*(x8868)*(x8869)))+(((IkReal(-1.00000000000000))*(x8860)*(x8861)*(x8867)))+(((IkReal(-1.00000000000000))*(x8862)*(x8865)*(x8869)))+(((x8864)*(x8872)))+(((r02)*(x8861)*(x8863)))+(((IkReal(-1.00000000000000))*(r21)*(x8859)*(x8868)*(x8869)))+(((IkReal(-1.00000000000000))*(r02)*(x8861)*(x8866)))+(((r11)*(x8865)*(x8867)))+(((r12)*(x8865)*(x8866)))+(((r00)*(x8861)*(x8862)))+(((r11)*(x8868)*(x8871)))+(((x8859)*(x8864)*(x8870)))+(((r11)*(r20)*(x8858)*(x8868)))+(((IkReal(-1.00000000000000))*(r20)*(x8860)*(x8872)))+(((IkReal(-1.00000000000000))*(r12)*(x8863)*(x8865)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x8873=((r01)*(sj0)); +IkReal x8874=((IkReal(1.00000000000000))*(cj5)); +IkReal x8875=((cj0)*(r10)); +IkReal x8876=((r00)*(sj0)); +IkReal x8877=((cj0)*(r11)); +if( IKabs(((gconst25)*(((((cj6)*(x8875)))+(((sj6)*(x8873)))+(((IkReal(-1.00000000000000))*(sj6)*(x8877)))+(((IkReal(-1.00000000000000))*(cj6)*(x8876))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst25)*(((((IkReal(-1.00000000000000))*(sj6)*(x8874)*(x8876)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x8877)))+(((IkReal(-1.00000000000000))*(cj6)*(x8873)*(x8874)))+(((cj5)*(sj6)*(x8875))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst25)*(((((cj6)*(x8875)))+(((sj6)*(x8873)))+(((IkReal(-1.00000000000000))*(sj6)*(x8877)))+(((IkReal(-1.00000000000000))*(cj6)*(x8876)))))), ((gconst25)*(((((IkReal(-1.00000000000000))*(sj6)*(x8874)*(x8876)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x8877)))+(((IkReal(-1.00000000000000))*(cj6)*(x8873)*(x8874)))+(((cj5)*(sj6)*(x8875))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x8878=IKsin(j4); +IkReal x8879=IKcos(j4); +IkReal x8880=((r22)*(sj5)); +IkReal x8881=((IkReal(1.00000000000000))*(cj6)); +IkReal x8882=((IkReal(1.00000000000000))*(cj0)); +IkReal x8883=((cj5)*(r11)); +IkReal x8884=((cj5)*(cj6)); +IkReal x8885=((r11)*(sj6)); +IkReal x8886=((IkReal(1.00000000000000))*(sj6)); +IkReal x8887=((cj6)*(r00)); +IkReal x8888=((r12)*(sj5)); +IkReal x8889=((r02)*(sj5)); +IkReal x8890=((cj6)*(r10)); +IkReal x8891=((cj5)*(sj6)); +IkReal x8892=((cj5)*(r01)); +IkReal x8893=((sj0)*(x8878)); +IkReal x8894=((r00)*(x8891)); +IkReal x8895=((cj0)*(x8878)); +IkReal x8896=((sj0)*(x8879)); +IkReal x8897=((r20)*(x8879)); +IkReal x8898=((cj0)*(x8879)); +IkReal x8899=((r21)*(x8878)); +IkReal x8900=((r21)*(x8879)); +IkReal x8901=((r20)*(x8878)); +IkReal x8902=((x8879)*(x8888)); +IkReal x8903=((r01)*(sj6)*(x8879)); +IkReal x8904=((cj5)*(r10)*(x8886)); +evalcond[0]=((IkReal(1.00000000000000))+(((x8884)*(x8899)))+(((sj6)*(x8900)))+(((x8878)*(x8880)))+(((x8891)*(x8901)))+(((IkReal(-1.00000000000000))*(x8881)*(x8897)))); +evalcond[1]=((((x8879)*(x8880)))+(((x8891)*(x8897)))+(((cj6)*(x8901)))+(((IkReal(-1.00000000000000))*(x8886)*(x8899)))+(((x8884)*(x8900)))); +evalcond[2]=((((r01)*(x8884)*(x8893)))+(((r01)*(sj6)*(x8896)))+(((IkReal(-1.00000000000000))*(x8879)*(x8882)*(x8885)))+(((x8890)*(x8898)))+(((x8889)*(x8893)))+(((IkReal(-1.00000000000000))*(r10)*(x8878)*(x8882)*(x8891)))+(((IkReal(-1.00000000000000))*(x8878)*(x8882)*(x8888)))+(((IkReal(-1.00000000000000))*(x8881)*(x8883)*(x8895)))+(((x8893)*(x8894)))+(((IkReal(-1.00000000000000))*(r00)*(x8881)*(x8896)))); +evalcond[3]=((((r01)*(x8884)*(x8896)))+(((IkReal(-1.00000000000000))*(r10)*(x8881)*(x8895)))+(((IkReal(-1.00000000000000))*(x8881)*(x8883)*(x8898)))+(((IkReal(-1.00000000000000))*(x8882)*(x8902)))+(((IkReal(-1.00000000000000))*(r01)*(x8886)*(x8893)))+(cj3)+(((x8885)*(x8895)))+(((x8887)*(x8893)))+(((IkReal(-1.00000000000000))*(r10)*(x8879)*(x8882)*(x8891)))+(((x8889)*(x8896)))+(((x8894)*(x8896)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8881)*(x8892)*(x8895)))+(((IkReal(-1.00000000000000))*(x8878)*(x8882)*(x8894)))+(((IkReal(-1.00000000000000))*(x8878)*(x8882)*(x8889)))+(((x8890)*(x8896)))+(((IkReal(-1.00000000000000))*(x8888)*(x8893)))+(((IkReal(-1.00000000000000))*(x8893)*(x8904)))+(((IkReal(-1.00000000000000))*(x8881)*(x8883)*(x8893)))+(((IkReal(-1.00000000000000))*(x8885)*(x8896)))+(((x8887)*(x8898)))+(((IkReal(-1.00000000000000))*(x8882)*(x8903)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x8881)*(x8895)))+(sj3)+(((IkReal(-1.00000000000000))*(x8879)*(x8882)*(x8889)))+(((IkReal(-1.00000000000000))*(x8881)*(x8883)*(x8896)))+(((IkReal(-1.00000000000000))*(x8888)*(x8896)))+(((IkReal(-1.00000000000000))*(x8896)*(x8904)))+(((IkReal(-1.00000000000000))*(x8879)*(x8882)*(x8894)))+(((IkReal(-1.00000000000000))*(r10)*(x8881)*(x8893)))+(((r01)*(sj6)*(x8895)))+(((IkReal(-1.00000000000000))*(x8881)*(x8892)*(x8898)))+(((x8885)*(x8893)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst24)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst24)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst24)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst24)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x8905=IKsin(j4); +IkReal x8906=IKcos(j4); +IkReal x8907=((r22)*(sj5)); +IkReal x8908=((IkReal(1.00000000000000))*(cj6)); +IkReal x8909=((IkReal(1.00000000000000))*(cj0)); +IkReal x8910=((cj5)*(r11)); +IkReal x8911=((cj5)*(cj6)); +IkReal x8912=((r11)*(sj6)); +IkReal x8913=((IkReal(1.00000000000000))*(sj6)); +IkReal x8914=((cj6)*(r00)); +IkReal x8915=((r12)*(sj5)); +IkReal x8916=((r02)*(sj5)); +IkReal x8917=((cj6)*(r10)); +IkReal x8918=((cj5)*(sj6)); +IkReal x8919=((cj5)*(r01)); +IkReal x8920=((sj0)*(x8905)); +IkReal x8921=((r00)*(x8918)); +IkReal x8922=((cj0)*(x8905)); +IkReal x8923=((sj0)*(x8906)); +IkReal x8924=((r20)*(x8906)); +IkReal x8925=((cj0)*(x8906)); +IkReal x8926=((r21)*(x8905)); +IkReal x8927=((r21)*(x8906)); +IkReal x8928=((r20)*(x8905)); +IkReal x8929=((x8906)*(x8915)); +IkReal x8930=((r01)*(sj6)*(x8906)); +IkReal x8931=((cj5)*(r10)*(x8913)); +evalcond[0]=((IkReal(1.00000000000000))+(((x8905)*(x8907)))+(((IkReal(-1.00000000000000))*(x8908)*(x8924)))+(((x8918)*(x8928)))+(((sj6)*(x8927)))+(((x8911)*(x8926)))); +evalcond[1]=((((x8906)*(x8907)))+(((cj6)*(x8928)))+(((x8918)*(x8924)))+(((x8911)*(x8927)))+(((IkReal(-1.00000000000000))*(x8913)*(x8926)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x8905)*(x8909)*(x8918)))+(((IkReal(-1.00000000000000))*(x8908)*(x8910)*(x8922)))+(((x8920)*(x8921)))+(((r01)*(x8911)*(x8920)))+(((IkReal(-1.00000000000000))*(x8905)*(x8909)*(x8915)))+(((x8917)*(x8925)))+(((IkReal(-1.00000000000000))*(x8906)*(x8909)*(x8912)))+(((IkReal(-1.00000000000000))*(r00)*(x8908)*(x8923)))+(((r01)*(sj6)*(x8923)))+(((x8916)*(x8920)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x8906)*(x8909)*(x8918)))+(((x8914)*(x8920)))+(((IkReal(-1.00000000000000))*(x8909)*(x8929)))+(((r01)*(x8911)*(x8923)))+(((IkReal(-1.00000000000000))*(r10)*(x8908)*(x8922)))+(((x8921)*(x8923)))+(((IkReal(-1.00000000000000))*(x8908)*(x8910)*(x8925)))+(((x8916)*(x8923)))+(cj3)+(((IkReal(-1.00000000000000))*(r01)*(x8913)*(x8920)))+(((x8912)*(x8922)))); +evalcond[4]=((((x8917)*(x8923)))+(((IkReal(-1.00000000000000))*(x8908)*(x8910)*(x8920)))+(((x8914)*(x8925)))+(((IkReal(-1.00000000000000))*(x8920)*(x8931)))+(((IkReal(-1.00000000000000))*(x8909)*(x8930)))+(((IkReal(-1.00000000000000))*(x8905)*(x8909)*(x8916)))+(((IkReal(-1.00000000000000))*(x8915)*(x8920)))+(((IkReal(-1.00000000000000))*(x8908)*(x8919)*(x8922)))+(((IkReal(-1.00000000000000))*(x8912)*(x8923)))+(((IkReal(-1.00000000000000))*(x8905)*(x8909)*(x8921)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x8908)*(x8920)))+(((IkReal(-1.00000000000000))*(x8906)*(x8909)*(x8921)))+(sj3)+(((IkReal(-1.00000000000000))*(r00)*(x8908)*(x8922)))+(((IkReal(-1.00000000000000))*(x8923)*(x8931)))+(((IkReal(-1.00000000000000))*(x8908)*(x8910)*(x8923)))+(((r01)*(sj6)*(x8922)))+(((IkReal(-1.00000000000000))*(x8906)*(x8909)*(x8916)))+(((IkReal(-1.00000000000000))*(x8908)*(x8919)*(x8925)))+(((IkReal(-1.00000000000000))*(x8915)*(x8923)))+(((x8912)*(x8920)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x8932=((sj5)*(sj6)); +IkReal x8933=((cj6)*(sj5)); +IkReal x8934=((IkReal(1.00000000000000))*(cj0)); +IkReal x8935=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r11)*(x8933)*(x8934)))+(((r01)*(sj0)*(x8933)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x8932)))+(((IkReal(-1.00000000000000))*(r10)*(x8932)*(x8934)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8935))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x8933)))+(((IkReal(-1.00000000000000))*(r22)*(x8935)))+(((r20)*(x8932))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r11)*(x8933)*(x8934)))+(((r01)*(sj0)*(x8933)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x8932)))+(((IkReal(-1.00000000000000))*(r10)*(x8932)*(x8934)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8935)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x8933)))+(((IkReal(-1.00000000000000))*(r22)*(x8935)))+(((r20)*(x8932)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r11)*(x8933)*(x8934)))+(((r01)*(sj0)*(x8933)))+(((cj0)*(cj5)*(r12)))+(((r00)*(sj0)*(x8932)))+(((IkReal(-1.00000000000000))*(r10)*(x8932)*(x8934)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x8935)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x8933)))+(((IkReal(-1.00000000000000))*(r22)*(x8935)))+(((r20)*(x8932))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x8936=IKcos(j3); +IkReal x8937=((sj5)*(sj6)); +IkReal x8938=((cj0)*(cj5)); +IkReal x8939=((IkReal(1.00000000000000))*(cj0)); +IkReal x8940=((IkReal(1.00000000000000))*(sj0)); +IkReal x8941=((IkReal(1.00000000000000))*(x8936)); +IkReal x8942=((cj6)*(r01)*(sj5)); +IkReal x8943=((cj6)*(r11)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x8941)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x8937)))); +evalcond[1]=((((r00)*(sj0)*(x8937)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x8940)))+(((IkReal(-1.00000000000000))*(r10)*(x8937)*(x8939)))+(((IkReal(-1.00000000000000))*(IKsin(j3))))+(((IkReal(-1.00000000000000))*(x8939)*(x8943)))+(((sj0)*(x8942)))+(((r12)*(x8938)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x8937)*(x8940)))+(((IkReal(-1.00000000000000))*(cj1)*(x8941)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x8937)*(x8939)))+(((IkReal(-1.00000000000000))*(x8940)*(x8943)))+(((IkReal(-1.00000000000000))*(x8939)*(x8942)))+(((r02)*(x8938)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst15; +IkReal x8944=(r21)*(r21); +IkReal x8945=(cj5)*(cj5); +IkReal x8946=(sj6)*(sj6); +IkReal x8947=(cj6)*(cj6); +IkReal x8948=(r20)*(r20); +IkReal x8949=((cj6)*(r21)); +IkReal x8950=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8951=((cj5)*(r22)*(sj5)); +IkReal x8952=((IkReal(1.00000000000000))*(x8946)); +IkReal x8953=((IkReal(1.00000000000000))*(x8947)); +gconst15=IKsign(((((IkReal(-1.00000000000000))*(x8945)*(x8948)*(x8952)))+(((IkReal(-1.00000000000000))*(x8944)*(x8952)))+(((x8949)*(x8950)))+(((IkReal(-1.00000000000000))*(x8944)*(x8945)*(x8953)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x8948)*(x8953)))+(((IkReal(-1.00000000000000))*(x8945)*(x8949)*(x8950)))+(((IkReal(-2.00000000000000))*(x8949)*(x8951)))+(((IkReal(-1.00000000000000))*(x8950)*(x8951))))); +IkReal x8954=(r21)*(r21); +IkReal x8955=(cj5)*(cj5); +IkReal x8956=(sj6)*(sj6); +IkReal x8957=(cj6)*(cj6); +IkReal x8958=(r20)*(r20); +IkReal x8959=((cj6)*(r21)); +IkReal x8960=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x8961=((cj5)*(r22)*(sj5)); +IkReal x8962=((IkReal(1.00000000000000))*(x8956)); +IkReal x8963=((IkReal(1.00000000000000))*(x8957)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x8955)*(x8958)*(x8962)))+(((IkReal(-1.00000000000000))*(x8958)*(x8963)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x8960)*(x8961)))+(((IkReal(-1.00000000000000))*(x8954)*(x8962)))+(((IkReal(-1.00000000000000))*(x8955)*(x8959)*(x8960)))+(((IkReal(-2.00000000000000))*(x8959)*(x8961)))+(((x8959)*(x8960)))+(((IkReal(-1.00000000000000))*(x8954)*(x8955)*(x8963)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst16; +IkReal x8964=(cj6)*(cj6); +IkReal x8965=(sj6)*(sj6); +IkReal x8966=((IkReal(1.00000000000000))*(r21)); +IkReal x8967=((cj6)*(r20)); +IkReal x8968=((r22)*(sj5)); +IkReal x8969=((r01)*(sj0)); +IkReal x8970=((r00)*(sj0)); +IkReal x8971=((cj0)*(r10)); +IkReal x8972=((r02)*(sj0)*(sj5)); +IkReal x8973=((cj5)*(x8964)); +IkReal x8974=((cj0)*(r12)*(sj5)); +IkReal x8975=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8976=((cj5)*(x8965)); +IkReal x8977=((r20)*(x8976)); +gconst16=IKsign(((((IkReal(-1.00000000000000))*(sj6)*(x8966)*(x8972)))+(((sj6)*(x8968)*(x8969)))+(((r20)*(x8969)*(x8973)))+(((IkReal(-1.00000000000000))*(x8966)*(x8970)*(x8976)))+(((IkReal(-1.00000000000000))*(r20)*(x8973)*(x8975)))+(((r21)*(sj6)*(x8974)))+(((r21)*(x8971)*(x8976)))+(((IkReal(-1.00000000000000))*(cj6)*(x8968)*(x8970)))+(((IkReal(-1.00000000000000))*(x8975)*(x8977)))+(((IkReal(-1.00000000000000))*(x8966)*(x8970)*(x8973)))+(((cj6)*(x8968)*(x8971)))+(((x8969)*(x8977)))+(((IkReal(-1.00000000000000))*(sj6)*(x8968)*(x8975)))+(((IkReal(-1.00000000000000))*(x8967)*(x8974)))+(((r21)*(x8971)*(x8973)))+(((x8967)*(x8972))))); +IkReal x8978=(cj6)*(cj6); +IkReal x8979=(sj6)*(sj6); +IkReal x8980=((IkReal(1.00000000000000))*(r21)); +IkReal x8981=((cj6)*(r20)); +IkReal x8982=((r22)*(sj5)); +IkReal x8983=((r01)*(sj0)); +IkReal x8984=((r00)*(sj0)); +IkReal x8985=((cj0)*(r10)); +IkReal x8986=((r02)*(sj0)*(sj5)); +IkReal x8987=((cj5)*(x8978)); +IkReal x8988=((cj0)*(r12)*(sj5)); +IkReal x8989=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x8990=((cj5)*(x8979)); +IkReal x8991=((r20)*(x8990)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x8989)*(x8991)))+(((r21)*(x8985)*(x8987)))+(((IkReal(-1.00000000000000))*(sj6)*(x8980)*(x8986)))+(((x8983)*(x8991)))+(((r21)*(x8985)*(x8990)))+(((IkReal(-1.00000000000000))*(x8981)*(x8988)))+(((cj6)*(x8982)*(x8985)))+(((r20)*(x8983)*(x8987)))+(((sj6)*(x8982)*(x8983)))+(((IkReal(-1.00000000000000))*(x8980)*(x8984)*(x8987)))+(((IkReal(-1.00000000000000))*(sj6)*(x8982)*(x8989)))+(((IkReal(-1.00000000000000))*(x8980)*(x8984)*(x8990)))+(((IkReal(-1.00000000000000))*(r20)*(x8987)*(x8989)))+(((r21)*(sj6)*(x8988)))+(((x8981)*(x8986)))+(((IkReal(-1.00000000000000))*(cj6)*(x8982)*(x8984)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x8992=((cj1)*(sj6)); +IkReal x8993=((r01)*(sj0)); +IkReal x8994=((cj0)*(r11)); +IkReal x8995=((cj1)*(cj6)); +IkReal x8996=((cj0)*(r10)); +IkReal x8997=((IkReal(1.00000000000000))*(sj0)); +IkReal x8998=((cj1)*(sj5)); +if( IKabs(((gconst16)*(((((IkReal(-1.00000000000000))*(x8992)*(x8994)))+(((IkReal(-1.00000000000000))*(r00)*(x8995)*(x8997)))+(((x8992)*(x8993)))+(((x8995)*(x8996))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst16)*(((((cj0)*(r12)*(x8998)))+(((IkReal(-1.00000000000000))*(r02)*(x8997)*(x8998)))+(((IkReal(-1.00000000000000))*(cj5)*(x8993)*(x8995)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8992)*(x8997)))+(((cj5)*(x8992)*(x8996)))+(((cj5)*(x8994)*(x8995))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst16)*(((((IkReal(-1.00000000000000))*(x8992)*(x8994)))+(((IkReal(-1.00000000000000))*(r00)*(x8995)*(x8997)))+(((x8992)*(x8993)))+(((x8995)*(x8996)))))), ((gconst16)*(((((cj0)*(r12)*(x8998)))+(((IkReal(-1.00000000000000))*(r02)*(x8997)*(x8998)))+(((IkReal(-1.00000000000000))*(cj5)*(x8993)*(x8995)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x8992)*(x8997)))+(((cj5)*(x8992)*(x8996)))+(((cj5)*(x8994)*(x8995))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x8999=IKsin(j4); +IkReal x9000=IKcos(j4); +IkReal x9001=((r22)*(sj5)); +IkReal x9002=((IkReal(1.00000000000000))*(cj6)); +IkReal x9003=((IkReal(1.00000000000000))*(cj0)); +IkReal x9004=((cj5)*(r11)); +IkReal x9005=((cj5)*(cj6)); +IkReal x9006=((IkReal(1.00000000000000))*(sj3)); +IkReal x9007=((r11)*(sj6)); +IkReal x9008=((IkReal(1.00000000000000))*(sj6)); +IkReal x9009=((cj6)*(r00)); +IkReal x9010=((r12)*(sj5)); +IkReal x9011=((r02)*(sj5)); +IkReal x9012=((cj6)*(r10)); +IkReal x9013=((cj5)*(sj6)); +IkReal x9014=((cj5)*(r01)); +IkReal x9015=((sj0)*(x8999)); +IkReal x9016=((r00)*(x9013)); +IkReal x9017=((cj0)*(x8999)); +IkReal x9018=((sj0)*(x9000)); +IkReal x9019=((r20)*(x9000)); +IkReal x9020=((cj0)*(x9000)); +IkReal x9021=((r21)*(x8999)); +IkReal x9022=((r21)*(x9000)); +IkReal x9023=((r20)*(x8999)); +IkReal x9024=((x9000)*(x9010)); +IkReal x9025=((r01)*(sj6)*(x9000)); +IkReal x9026=((cj5)*(r10)*(x9008)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x9002)*(x9019)))+(((IkReal(-1.00000000000000))*(cj1)))+(((x9005)*(x9021)))+(((x8999)*(x9001)))+(((x9013)*(x9023)))+(((sj6)*(x9022)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj1)*(x9006)))+(((x9000)*(x9001)))+(((x9005)*(x9022)))+(((IkReal(-1.00000000000000))*(x9008)*(x9021)))+(((x9013)*(x9019)))+(((cj6)*(x9023)))); +evalcond[2]=((((x9012)*(x9020)))+(((IkReal(-1.00000000000000))*(r10)*(x8999)*(x9003)*(x9013)))+(((x9011)*(x9015)))+(((IkReal(-1.00000000000000))*(r00)*(x9002)*(x9018)))+(((IkReal(-1.00000000000000))*(x9002)*(x9004)*(x9017)))+(((IkReal(-1.00000000000000))*(x8999)*(x9003)*(x9010)))+(((r01)*(sj6)*(x9018)))+(((r01)*(x9005)*(x9015)))+(((IkReal(-1.00000000000000))*(x9000)*(x9003)*(x9007)))+(((x9015)*(x9016)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9003)*(x9024)))+(((IkReal(-1.00000000000000))*(r10)*(x9002)*(x9017)))+(((x9011)*(x9018)))+(((x9007)*(x9017)))+(cj3)+(((r01)*(x9005)*(x9018)))+(((IkReal(-1.00000000000000))*(x9002)*(x9004)*(x9020)))+(((IkReal(-1.00000000000000))*(r01)*(x9008)*(x9015)))+(((x9009)*(x9015)))+(((x9016)*(x9018)))+(((IkReal(-1.00000000000000))*(r10)*(x9000)*(x9003)*(x9013)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x8999)*(x9003)*(x9011)))+(((IkReal(-1.00000000000000))*(x9010)*(x9015)))+(((x9012)*(x9018)))+(((x9009)*(x9020)))+(sj1)+(((IkReal(-1.00000000000000))*(x9015)*(x9026)))+(((IkReal(-1.00000000000000))*(x9007)*(x9018)))+(((IkReal(-1.00000000000000))*(x9002)*(x9014)*(x9017)))+(((IkReal(-1.00000000000000))*(x8999)*(x9003)*(x9016)))+(((IkReal(-1.00000000000000))*(x9002)*(x9004)*(x9015)))+(((IkReal(-1.00000000000000))*(x9003)*(x9025)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x9002)*(x9017)))+(((IkReal(-1.00000000000000))*(x9002)*(x9014)*(x9020)))+(((IkReal(-1.00000000000000))*(x9000)*(x9003)*(x9011)))+(((IkReal(-1.00000000000000))*(x9010)*(x9018)))+(((IkReal(-1.00000000000000))*(r10)*(x9002)*(x9015)))+(((IkReal(-1.00000000000000))*(x9002)*(x9004)*(x9018)))+(((IkReal(-1.00000000000000))*(x9000)*(x9003)*(x9016)))+(((IkReal(-1.00000000000000))*(cj1)*(x9006)))+(((x9007)*(x9015)))+(((r01)*(sj6)*(x9017)))+(((IkReal(-1.00000000000000))*(x9018)*(x9026)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x9027=((IkReal(1.00000000000000))*(cj1)); +IkReal x9028=((sj1)*(sj3)); +IkReal x9029=((r21)*(sj6)); +IkReal x9030=((r22)*(sj5)); +IkReal x9031=((cj6)*(r20)); +IkReal x9032=((cj5)*(r20)*(sj6)); +IkReal x9033=((cj5)*(cj6)*(r21)); +if( IKabs(((gconst15)*(((((IkReal(-1.00000000000000))*(x9027)*(x9032)))+(((x9028)*(x9029)))+(((IkReal(-1.00000000000000))*(x9027)*(x9030)))+(((IkReal(-1.00000000000000))*(x9028)*(x9031)))+(((IkReal(-1.00000000000000))*(x9027)*(x9033))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst15)*(((((IkReal(-1.00000000000000))*(x9028)*(x9030)))+(((IkReal(-1.00000000000000))*(x9028)*(x9032)))+(((IkReal(-1.00000000000000))*(x9027)*(x9029)))+(((cj1)*(x9031)))+(((IkReal(-1.00000000000000))*(x9028)*(x9033))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst15)*(((((IkReal(-1.00000000000000))*(x9027)*(x9032)))+(((x9028)*(x9029)))+(((IkReal(-1.00000000000000))*(x9027)*(x9030)))+(((IkReal(-1.00000000000000))*(x9028)*(x9031)))+(((IkReal(-1.00000000000000))*(x9027)*(x9033)))))), ((gconst15)*(((((IkReal(-1.00000000000000))*(x9028)*(x9030)))+(((IkReal(-1.00000000000000))*(x9028)*(x9032)))+(((IkReal(-1.00000000000000))*(x9027)*(x9029)))+(((cj1)*(x9031)))+(((IkReal(-1.00000000000000))*(x9028)*(x9033))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x9034=IKsin(j4); +IkReal x9035=IKcos(j4); +IkReal x9036=((r22)*(sj5)); +IkReal x9037=((IkReal(1.00000000000000))*(cj6)); +IkReal x9038=((IkReal(1.00000000000000))*(cj0)); +IkReal x9039=((cj5)*(r11)); +IkReal x9040=((cj5)*(cj6)); +IkReal x9041=((IkReal(1.00000000000000))*(sj3)); +IkReal x9042=((r11)*(sj6)); +IkReal x9043=((IkReal(1.00000000000000))*(sj6)); +IkReal x9044=((cj6)*(r00)); +IkReal x9045=((r12)*(sj5)); +IkReal x9046=((r02)*(sj5)); +IkReal x9047=((cj6)*(r10)); +IkReal x9048=((cj5)*(sj6)); +IkReal x9049=((cj5)*(r01)); +IkReal x9050=((sj0)*(x9034)); +IkReal x9051=((r00)*(x9048)); +IkReal x9052=((cj0)*(x9034)); +IkReal x9053=((sj0)*(x9035)); +IkReal x9054=((r20)*(x9035)); +IkReal x9055=((cj0)*(x9035)); +IkReal x9056=((r21)*(x9034)); +IkReal x9057=((r21)*(x9035)); +IkReal x9058=((r20)*(x9034)); +IkReal x9059=((x9035)*(x9045)); +IkReal x9060=((r01)*(sj6)*(x9035)); +IkReal x9061=((cj5)*(r10)*(x9043)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x9037)*(x9054)))+(((sj6)*(x9057)))+(((x9048)*(x9058)))+(((IkReal(-1.00000000000000))*(cj1)))+(((x9040)*(x9056)))+(((x9034)*(x9036)))); +evalcond[1]=((((x9035)*(x9036)))+(((IkReal(-1.00000000000000))*(sj1)*(x9041)))+(((IkReal(-1.00000000000000))*(x9043)*(x9056)))+(((x9048)*(x9054)))+(((x9040)*(x9057)))+(((cj6)*(x9058)))); +evalcond[2]=((((r01)*(x9040)*(x9050)))+(((IkReal(-1.00000000000000))*(x9037)*(x9039)*(x9052)))+(((x9046)*(x9050)))+(((r01)*(sj6)*(x9053)))+(((x9050)*(x9051)))+(((IkReal(-1.00000000000000))*(x9034)*(x9038)*(x9045)))+(((IkReal(-1.00000000000000))*(x9035)*(x9038)*(x9042)))+(((IkReal(-1.00000000000000))*(r10)*(x9034)*(x9038)*(x9048)))+(((IkReal(-1.00000000000000))*(r00)*(x9037)*(x9053)))+(((x9047)*(x9055)))); +evalcond[3]=((((x9051)*(x9053)))+(((IkReal(-1.00000000000000))*(x9038)*(x9059)))+(((IkReal(-1.00000000000000))*(r10)*(x9035)*(x9038)*(x9048)))+(((IkReal(-1.00000000000000))*(x9037)*(x9039)*(x9055)))+(((x9044)*(x9050)))+(((x9046)*(x9053)))+(cj3)+(((r01)*(x9040)*(x9053)))+(((IkReal(-1.00000000000000))*(r01)*(x9043)*(x9050)))+(((x9042)*(x9052)))+(((IkReal(-1.00000000000000))*(r10)*(x9037)*(x9052)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9050)*(x9061)))+(((x9044)*(x9055)))+(((x9047)*(x9053)))+(((IkReal(-1.00000000000000))*(x9034)*(x9038)*(x9051)))+(sj1)+(((IkReal(-1.00000000000000))*(x9034)*(x9038)*(x9046)))+(((IkReal(-1.00000000000000))*(x9037)*(x9049)*(x9052)))+(((IkReal(-1.00000000000000))*(x9045)*(x9050)))+(((IkReal(-1.00000000000000))*(x9042)*(x9053)))+(((IkReal(-1.00000000000000))*(x9037)*(x9039)*(x9050)))+(((IkReal(-1.00000000000000))*(x9038)*(x9060)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(x9037)*(x9050)))+(((IkReal(-1.00000000000000))*(x9035)*(x9038)*(x9046)))+(((IkReal(-1.00000000000000))*(x9037)*(x9039)*(x9053)))+(((IkReal(-1.00000000000000))*(cj1)*(x9041)))+(((IkReal(-1.00000000000000))*(r00)*(x9037)*(x9052)))+(((x9042)*(x9050)))+(((IkReal(-1.00000000000000))*(x9035)*(x9038)*(x9051)))+(((IkReal(-1.00000000000000))*(x9053)*(x9061)))+(((r01)*(sj6)*(x9052)))+(((IkReal(-1.00000000000000))*(x9045)*(x9053)))+(((IkReal(-1.00000000000000))*(x9037)*(x9049)*(x9055)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x9062=((sj0)*(sj6)); +IkReal x9063=((cj0)*(cj6)); +IkReal x9064=((cj0)*(sj6)); +IkReal x9065=((IkReal(1.00000000000000))*(cj1)); +IkReal x9066=((r20)*(sj1)); +IkReal x9067=((cj6)*(sj0)); +IkReal x9068=((r21)*(sj1)); +IkReal x9069=((cj5)*(x9065)); +if( IKabs(((gconst14)*(((((IkReal(-1.00000000000000))*(r00)*(x9063)*(x9065)))+(((cj6)*(x9066)))+(((cj1)*(r11)*(x9062)))+(((IkReal(-1.00000000000000))*(sj6)*(x9068)))+(((IkReal(-1.00000000000000))*(r10)*(x9065)*(x9067)))+(((cj1)*(r01)*(x9064))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst14)*(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x9065)))+(((IkReal(-1.00000000000000))*(r11)*(x9067)*(x9069)))+(((cj5)*(sj6)*(x9066)))+(((IkReal(-1.00000000000000))*(r00)*(x9064)*(x9069)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(sj5)*(x9065)))+(((IkReal(-1.00000000000000))*(r10)*(x9062)*(x9069)))+(((cj5)*(cj6)*(x9068)))+(((r22)*(sj1)*(sj5)))+(((IkReal(-1.00000000000000))*(r01)*(x9063)*(x9069))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst14)*(((((IkReal(-1.00000000000000))*(r00)*(x9063)*(x9065)))+(((cj6)*(x9066)))+(((cj1)*(r11)*(x9062)))+(((IkReal(-1.00000000000000))*(sj6)*(x9068)))+(((IkReal(-1.00000000000000))*(r10)*(x9065)*(x9067)))+(((cj1)*(r01)*(x9064)))))), ((gconst14)*(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x9065)))+(((IkReal(-1.00000000000000))*(r11)*(x9067)*(x9069)))+(((cj5)*(sj6)*(x9066)))+(((IkReal(-1.00000000000000))*(r00)*(x9064)*(x9069)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(sj5)*(x9065)))+(((IkReal(-1.00000000000000))*(r10)*(x9062)*(x9069)))+(((cj5)*(cj6)*(x9068)))+(((r22)*(sj1)*(sj5)))+(((IkReal(-1.00000000000000))*(r01)*(x9063)*(x9069))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x9070=IKsin(j4); +IkReal x9071=IKcos(j4); +IkReal x9072=((r00)*(sj6)); +IkReal x9073=((cj6)*(r01)); +IkReal x9074=((IkReal(1.00000000000000))*(cj0)); +IkReal x9075=((IkReal(1.00000000000000))*(sj0)); +IkReal x9076=((r10)*(sj6)); +IkReal x9077=((sj5)*(x9070)); +IkReal x9078=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x9079=((cj5)*(x9070)); +IkReal x9080=((cj6)*(x9071)); +IkReal x9081=((sj0)*(x9079)); +IkReal x9082=((r01)*(sj6)*(x9071)); +IkReal x9083=((r11)*(sj6)*(x9071)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r20)*(x9080)))+(((r20)*(sj6)*(x9079)))+(((r21)*(sj6)*(x9071)))+(((cj6)*(r21)*(x9079)))+(((IkReal(-1.00000000000000))*(cj1)))+(((r22)*(x9077)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x9074)*(x9079)))+(((IkReal(-1.00000000000000))*(r12)*(x9074)*(x9077)))+(((r02)*(sj0)*(x9077)))+(((IkReal(-1.00000000000000))*(x9074)*(x9076)*(x9079)))+(((sj0)*(x9082)))+(((IkReal(-1.00000000000000))*(x9074)*(x9083)))+(((x9073)*(x9081)))+(((IkReal(-1.00000000000000))*(r00)*(x9075)*(x9080)))+(((x9072)*(x9081)))+(((cj0)*(r10)*(x9080)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9074)*(x9082)))+(((r10)*(sj0)*(x9080)))+(((IkReal(-1.00000000000000))*(x9072)*(x9074)*(x9079)))+(((IkReal(-1.00000000000000))*(x9073)*(x9074)*(x9079)))+(((IkReal(-1.00000000000000))*(r12)*(x9075)*(x9077)))+(sj1)+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x9075)*(x9079)))+(((IkReal(-1.00000000000000))*(x9075)*(x9076)*(x9079)))+(((IkReal(-1.00000000000000))*(r02)*(x9074)*(x9077)))+(((cj0)*(r00)*(x9080)))+(((IkReal(-1.00000000000000))*(x9075)*(x9083)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst17; +gconst17=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x9084=((IkReal(1.00000000000000))*(cj0)); +IkReal x9085=((cj4)*(sj6)); +IkReal x9086=((sj0)*(sj6)); +IkReal x9087=((cj5)*(sj4)); +IkReal x9088=((IkReal(0.374290000000000))*(sj5)); +IkReal x9089=((sj4)*(sj5)); +IkReal x9090=((cj0)*(cj6)); +IkReal x9091=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9092=((cj4)*(sj5)); +IkReal x9093=((cj5)*(sj0)); +IkReal x9094=((IkReal(0.374290000000000))*(r02)); +IkReal x9095=((r20)*(sj6)); +IkReal x9096=((cj6)*(r21)); +IkReal x9097=((IkReal(1.00000000000000))*(sj0)); +IkReal x9098=((cj0)*(sj6)); +IkReal x9099=((cj4)*(cj6)); +IkReal x9100=((IkReal(0.374290000000000))*(r12)); +IkReal x9101=((cj0)*(cj5)); +IkReal x9102=((cj6)*(sj5)); +IkReal x9103=((cj6)*(r01)); +IkReal x9104=((r00)*(sj6)); +IkReal x9105=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9106=((cj6)*(r11)); +IkReal x9107=((IkReal(1.00000000000000))*(r10)); +IkReal x9108=((r02)*(sj0)); +IkReal x9109=((cj6)*(sj4)); +IkReal x9110=((r12)*(x9097)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x9087)*(x9096)))+(((r21)*(x9085)))+(((IkReal(-1.00000000000000))*(r20)*(x9099)))+(((r22)*(x9089)))+(((x9087)*(x9095)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(x9091)*(x9096)))+(((IkReal(-1.00000000000000))*(r22)*(x9105)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x9088)*(x9095)))+(((IkReal(-1.00000000000000))*(x9091)*(x9095)))+(pz)+(((x9088)*(x9096)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x9086)*(x9107)))+(((r12)*(x9093)))+(((r02)*(x9101)))+(((IkReal(-1.00000000000000))*(r01)*(x9084)*(x9102)))+(((IkReal(-1.00000000000000))*(sj5)*(x9084)*(x9104)))+(((IkReal(-1.00000000000000))*(r11)*(x9097)*(x9102)))); +evalcond[4]=((((sj0)*(x9087)*(x9103)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x9084)*(x9087)))+(((IkReal(-1.00000000000000))*(r11)*(x9084)*(x9085)))+(((x9089)*(x9108)))+(((r01)*(sj0)*(x9085)))+(((IkReal(-1.00000000000000))*(x9084)*(x9087)*(x9106)))+(((r00)*(x9086)*(x9087)))+(((IkReal(-1.00000000000000))*(r12)*(x9084)*(x9089)))+(((IkReal(-1.00000000000000))*(r00)*(x9097)*(x9099)))+(((cj4)*(r10)*(x9090)))); +evalcond[5]=((IkReal(1.00000000000000))+(((r10)*(sj0)*(x9099)))+(((IkReal(-1.00000000000000))*(x9084)*(x9087)*(x9103)))+(((IkReal(-1.00000000000000))*(x9087)*(x9097)*(x9106)))+(((IkReal(-1.00000000000000))*(x9089)*(x9110)))+(((IkReal(-1.00000000000000))*(r01)*(x9084)*(x9085)))+(((IkReal(-1.00000000000000))*(x9084)*(x9087)*(x9104)))+(((IkReal(-1.00000000000000))*(x9086)*(x9087)*(x9107)))+(((IkReal(-1.00000000000000))*(r02)*(x9084)*(x9089)))+(((IkReal(-1.00000000000000))*(r11)*(x9085)*(x9097)))+(((cj4)*(r00)*(x9090)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r10)*(x9091)*(x9098)))+(((x9100)*(x9101)))+(((IkReal(-1.00000000000000))*(py)*(x9084)))+(((IkReal(-1.00000000000000))*(x9093)*(x9094)))+(((cj0)*(r12)*(x9105)))+(((sj0)*(x9088)*(x9103)))+(((r00)*(x9086)*(x9088)))+(((IkReal(-1.00000000000000))*(x9105)*(x9108)))+(((IkReal(-1.00000000000000))*(r00)*(x9086)*(x9091)))+(((IkReal(-1.00000000000000))*(r10)*(x9088)*(x9098)))+(((r11)*(x9090)*(x9091)))+(((IkReal(-1.00000000000000))*(r11)*(x9088)*(x9090)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x9091)*(x9103)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x9085)*(x9093)*(x9107)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9084)*(x9085)))+(((IkReal(-1.00000000000000))*(r11)*(x9093)*(x9099)))+(((IkReal(-1.00000000000000))*(r00)*(x9084)*(x9109)))+(((IkReal(-1.00000000000000))*(r10)*(x9097)*(x9109)))+(((r01)*(sj4)*(x9098)))+(((r11)*(sj4)*(x9086)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x9084)*(x9099)))+(((IkReal(-1.00000000000000))*(x9092)*(x9110)))+(((IkReal(-1.00000000000000))*(r02)*(x9084)*(x9092)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x9088)*(x9098)))+(((IkReal(-1.00000000000000))*(sj0)*(x9088)*(x9106)))+(((IkReal(-1.00000000000000))*(px)*(x9084)))+(((r10)*(x9086)*(x9091)))+(((cj0)*(r02)*(x9105)))+(((IkReal(-1.00000000000000))*(r10)*(x9086)*(x9088)))+(((r00)*(x9091)*(x9098)))+(((x9093)*(x9100)))+(((r12)*(sj0)*(x9105)))+(((r01)*(x9090)*(x9091)))+(((IkReal(-1.00000000000000))*(r01)*(x9088)*(x9090)))+(((x9094)*(x9101)))+(((sj0)*(x9091)*(x9106)))+(((IkReal(-1.00000000000000))*(py)*(x9097)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9111=((r20)*(sj6)); +IkReal x9112=((cj4)*(cj5)); +IkReal x9113=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x9112)*(x9113)))+(((x9111)*(x9112))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9113)))+(((sj5)*(x9111))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x9112)*(x9113)))+(((x9111)*(x9112)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9113)))+(((sj5)*(x9111)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x9112)*(x9113)))+(((x9111)*(x9112)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9113)))+(((sj5)*(x9111))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9114=IKcos(j3); +IkReal x9115=((sj0)*(sj5)); +IkReal x9116=((r00)*(sj6)); +IkReal x9117=((cj6)*(r01)); +IkReal x9118=((cj5)*(sj0)); +IkReal x9119=((cj0)*(cj5)); +IkReal x9120=((cj6)*(sj4)); +IkReal x9121=((sj4)*(sj6)); +IkReal x9122=((cj0)*(r11)); +IkReal x9123=((cj4)*(cj6)); +IkReal x9124=((cj4)*(sj6)); +IkReal x9125=((IkReal(1.00000000000000))*(cj0)); +IkReal x9126=((cj4)*(sj5)); +IkReal x9127=((sj5)*(sj6)); +IkReal x9128=((cj6)*(sj5)); +IkReal x9129=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r21)*(x9128)))+(((r20)*(x9127)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x9114)))); +evalcond[1]=((((cj5)*(r20)*(x9124)))+(((cj5)*(r21)*(x9123)))+(((IkReal(-1.00000000000000))*(x9129)))+(((r22)*(x9126)))+(((IkReal(-1.00000000000000))*(r21)*(x9121)))+(((r20)*(x9120)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9122)*(x9128)))+(((IkReal(-1.00000000000000))*(x9129)))+(((r12)*(x9119)))+(((IkReal(-1.00000000000000))*(r02)*(x9118)))+(((x9115)*(x9116)))+(((x9115)*(x9117)))+(((IkReal(-1.00000000000000))*(r10)*(x9125)*(x9127)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x9120)*(x9125)))+(((IkReal(-1.00000000000000))*(r11)*(x9119)*(x9123)))+(((cj4)*(r02)*(x9115)))+(((r00)*(sj0)*(x9120)))+(((cj4)*(x9117)*(x9118)))+(x9114)+(((cj4)*(x9116)*(x9118)))+(((x9121)*(x9122)))+(((IkReal(-1.00000000000000))*(r12)*(x9125)*(x9126)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x9121)))+(((IkReal(-1.00000000000000))*(r10)*(x9119)*(x9124)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9130=((IkReal(1.00000000000000))*(cj0)); +IkReal x9131=((cj4)*(sj6)); +IkReal x9132=((sj0)*(sj6)); +IkReal x9133=((cj5)*(sj4)); +IkReal x9134=((IkReal(0.374290000000000))*(sj5)); +IkReal x9135=((sj4)*(sj5)); +IkReal x9136=((cj0)*(cj6)); +IkReal x9137=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9138=((cj4)*(sj5)); +IkReal x9139=((cj5)*(sj0)); +IkReal x9140=((IkReal(0.374290000000000))*(r02)); +IkReal x9141=((r20)*(sj6)); +IkReal x9142=((cj6)*(r21)); +IkReal x9143=((IkReal(1.00000000000000))*(sj0)); +IkReal x9144=((cj0)*(sj6)); +IkReal x9145=((cj4)*(cj6)); +IkReal x9146=((IkReal(0.374290000000000))*(r12)); +IkReal x9147=((cj0)*(cj5)); +IkReal x9148=((cj6)*(sj5)); +IkReal x9149=((cj6)*(r01)); +IkReal x9150=((r00)*(sj6)); +IkReal x9151=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9152=((cj6)*(r11)); +IkReal x9153=((IkReal(1.00000000000000))*(r10)); +IkReal x9154=((r02)*(sj0)); +IkReal x9155=((cj6)*(sj4)); +IkReal x9156=((r12)*(x9143)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x9133)*(x9142)))+(((x9133)*(x9141)))+(((r22)*(x9135)))+(((r21)*(x9131)))+(((IkReal(-1.00000000000000))*(r20)*(x9145)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((x9134)*(x9142)))+(((x9134)*(x9141)))+(((IkReal(-1.00000000000000))*(r22)*(x9151)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x9137)*(x9141)))+(((IkReal(-1.00000000000000))*(x9137)*(x9142)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x9132)*(x9153)))+(((r12)*(x9139)))+(((r02)*(x9147)))+(((IkReal(-1.00000000000000))*(sj5)*(x9130)*(x9150)))+(((IkReal(-1.00000000000000))*(r01)*(x9130)*(x9148)))+(((IkReal(-1.00000000000000))*(r11)*(x9143)*(x9148)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(sj6)*(x9130)*(x9133)))+(((x9135)*(x9154)))+(((sj0)*(x9133)*(x9149)))+(((IkReal(-1.00000000000000))*(r12)*(x9130)*(x9135)))+(((IkReal(-1.00000000000000))*(r11)*(x9130)*(x9131)))+(((cj4)*(r10)*(x9136)))+(((r01)*(sj0)*(x9131)))+(((IkReal(-1.00000000000000))*(x9130)*(x9133)*(x9152)))+(((r00)*(x9132)*(x9133)))+(((IkReal(-1.00000000000000))*(r00)*(x9143)*(x9145)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x9130)*(x9133)*(x9150)))+(((cj4)*(r00)*(x9136)))+(((IkReal(-1.00000000000000))*(r01)*(x9130)*(x9131)))+(((IkReal(-1.00000000000000))*(x9133)*(x9143)*(x9152)))+(((IkReal(-1.00000000000000))*(r11)*(x9131)*(x9143)))+(((IkReal(-1.00000000000000))*(x9130)*(x9133)*(x9149)))+(((IkReal(-1.00000000000000))*(x9132)*(x9133)*(x9153)))+(((IkReal(-1.00000000000000))*(x9135)*(x9156)))+(((IkReal(-1.00000000000000))*(r02)*(x9130)*(x9135)))+(((r10)*(sj0)*(x9145)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((x9146)*(x9147)))+(((cj0)*(r12)*(x9151)))+(((IkReal(-1.00000000000000))*(r11)*(x9134)*(x9136)))+(((sj0)*(x9134)*(x9149)))+(((IkReal(-1.00000000000000))*(sj0)*(x9137)*(x9149)))+(((r00)*(x9132)*(x9134)))+(((IkReal(-1.00000000000000))*(x9151)*(x9154)))+(((IkReal(-1.00000000000000))*(r00)*(x9132)*(x9137)))+(((IkReal(-1.00000000000000))*(x9139)*(x9140)))+(((IkReal(-1.00000000000000))*(r10)*(x9134)*(x9144)))+(((IkReal(-1.00000000000000))*(py)*(x9130)))+(((r11)*(x9136)*(x9137)))+(((px)*(sj0)))+(((r10)*(x9137)*(x9144)))); +evalcond[7]=((((r01)*(sj4)*(x9144)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x9130)*(x9145)))+(((IkReal(-1.00000000000000))*(r11)*(x9139)*(x9145)))+(((IkReal(-1.00000000000000))*(r10)*(x9143)*(x9155)))+(((IkReal(-1.00000000000000))*(r00)*(x9130)*(x9155)))+(((IkReal(-1.00000000000000))*(r02)*(x9130)*(x9138)))+(((IkReal(-1.00000000000000))*(x9131)*(x9139)*(x9153)))+(((r11)*(sj4)*(x9132)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9130)*(x9131)))+(((IkReal(-1.00000000000000))*(x9138)*(x9156)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r10)*(x9132)*(x9137)))+(((IkReal(-1.00000000000000))*(px)*(x9130)))+(((r00)*(x9137)*(x9144)))+(((x9139)*(x9146)))+(((r01)*(x9136)*(x9137)))+(((IkReal(-1.00000000000000))*(r10)*(x9132)*(x9134)))+(((IkReal(-1.00000000000000))*(r00)*(x9134)*(x9144)))+(((sj0)*(x9137)*(x9152)))+(((x9140)*(x9147)))+(((IkReal(-1.00000000000000))*(sj0)*(x9134)*(x9152)))+(((IkReal(-1.00000000000000))*(py)*(x9143)))+(((cj0)*(r02)*(x9151)))+(((r12)*(sj0)*(x9151)))+(((IkReal(-1.00000000000000))*(r01)*(x9134)*(x9136)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9157=((IkReal(1.00000000000000))*(sj5)); +IkReal x9158=((cj6)*(r21)); +IkReal x9159=((r20)*(sj6)); +IkReal x9160=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x9158)*(x9160)))+(((IkReal(-1.00000000000000))*(x9159)*(x9160)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9157)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x9157)*(x9159)))+(((IkReal(-1.00000000000000))*(x9157)*(x9158)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x9158)*(x9160)))+(((IkReal(-1.00000000000000))*(x9159)*(x9160)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9157)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x9157)*(x9159)))+(((IkReal(-1.00000000000000))*(x9157)*(x9158)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x9158)*(x9160)))+(((IkReal(-1.00000000000000))*(x9159)*(x9160)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9157)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x9157)*(x9159)))+(((IkReal(-1.00000000000000))*(x9157)*(x9158)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9161=IKsin(j3); +IkReal x9162=IKcos(j3); +IkReal x9163=((sj0)*(sj5)); +IkReal x9164=((r00)*(sj6)); +IkReal x9165=((cj6)*(r01)); +IkReal x9166=((cj5)*(sj0)); +IkReal x9167=((cj0)*(cj5)); +IkReal x9168=((cj6)*(sj4)); +IkReal x9169=((sj4)*(sj6)); +IkReal x9170=((cj0)*(r11)); +IkReal x9171=((cj4)*(cj6)); +IkReal x9172=((cj4)*(sj6)); +IkReal x9173=((IkReal(1.00000000000000))*(cj0)); +IkReal x9174=((cj4)*(sj5)); +IkReal x9175=((sj5)*(sj6)); +IkReal x9176=((cj6)*(sj5)); +evalcond[0]=((((r20)*(x9175)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r21)*(x9176)))+(x9162)); +evalcond[1]=((((cj5)*(r21)*(x9171)))+(((r22)*(x9174)))+(((r20)*(x9168)))+(x9161)+(((cj5)*(r20)*(x9172)))+(((IkReal(-1.00000000000000))*(r21)*(x9169)))); +evalcond[2]=((((x9163)*(x9164)))+(((x9163)*(x9165)))+(((IkReal(-1.00000000000000))*(r10)*(x9173)*(x9175)))+(((r12)*(x9167)))+(((IkReal(-1.00000000000000))*(x9161)))+(((IkReal(-1.00000000000000))*(r02)*(x9166)))+(((IkReal(-1.00000000000000))*(x9170)*(x9176)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(sj0)*(x9169)))+(((IkReal(-1.00000000000000))*(r11)*(x9167)*(x9171)))+(((IkReal(-1.00000000000000))*(r10)*(x9168)*(x9173)))+(((x9169)*(x9170)))+(((cj4)*(x9164)*(x9166)))+(((cj4)*(r02)*(x9163)))+(((r00)*(sj0)*(x9168)))+(((IkReal(-1.00000000000000))*(r12)*(x9173)*(x9174)))+(((IkReal(-1.00000000000000))*(r10)*(x9167)*(x9172)))+(((cj4)*(x9165)*(x9166)))+(x9162)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9177=((IkReal(1.00000000000000))*(cj0)); +IkReal x9178=((cj4)*(sj6)); +IkReal x9179=((sj0)*(sj4)); +IkReal x9180=((cj5)*(sj6)); +IkReal x9181=((sj4)*(sj5)); +IkReal x9182=((r12)*(sj5)); +IkReal x9183=((IkReal(0.374290000000000))*(cj5)); +IkReal x9184=((r02)*(sj0)); +IkReal x9185=((r20)*(sj4)); +IkReal x9186=((IkReal(1.00000000000000))*(sj0)); +IkReal x9187=((IkReal(1.00000000000000))*(cj5)); +IkReal x9188=((cj0)*(r10)); +IkReal x9189=((cj4)*(cj6)); +IkReal x9190=((r00)*(sj0)); +IkReal x9191=((cj6)*(r21)); +IkReal x9192=((IkReal(0.374290000000000))*(sj5)); +IkReal x9193=((cj0)*(r00)); +IkReal x9194=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9195=((cj0)*(r02)); +IkReal x9196=((cj5)*(sj4)); +IkReal x9197=((cj6)*(r01)); +IkReal x9198=((cj6)*(r11)); +IkReal x9199=((r01)*(sj0)); +IkReal x9200=((r10)*(sj0)); +IkReal x9201=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x9202=((sj6)*(x9192)); +IkReal x9203=((cj0)*(cj6)*(x9192)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x9187)))+(((r20)*(sj5)*(sj6)))+(((sj5)*(x9191)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x9181)))+(((r21)*(x9178)))+(((IkReal(-1.00000000000000))*(r20)*(x9189)))+(((x9180)*(x9185)))+(((x9191)*(x9196)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x9183)))+(((IkReal(-0.0100000000000000))*(cj5)*(x9191)))+(((IkReal(-1.00000000000000))*(r22)*(x9194)))+(((IkReal(-0.0100000000000000))*(r20)*(x9180)))+(pz)+(((x9191)*(x9192)))+(((r20)*(x9202)))); +evalcond[4]=((((cj5)*(r21)*(x9189)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x9178)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x9185)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r11)*(x9177)*(x9178)))+(((IkReal(-1.00000000000000))*(r12)*(x9177)*(x9181)))+(((r02)*(sj5)*(x9179)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x9177)*(x9180)))+(((cj5)*(x9179)*(x9197)))+(((x9178)*(x9199)))+(((r00)*(x9179)*(x9180)))+(((x9188)*(x9189)))+(((IkReal(-1.00000000000000))*(x9177)*(x9196)*(x9198)))+(((IkReal(-1.00000000000000))*(r00)*(x9186)*(x9189)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x9179)*(x9182)))+(((IkReal(-1.00000000000000))*(r01)*(x9177)*(x9178)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x9177)*(x9180)))+(((IkReal(-1.00000000000000))*(r10)*(x9179)*(x9180)))+(((IkReal(-1.00000000000000))*(r02)*(x9177)*(x9181)))+(((IkReal(-1.00000000000000))*(x9177)*(x9196)*(x9197)))+(((IkReal(-1.00000000000000))*(x9179)*(x9187)*(x9198)))+(((x9189)*(x9200)))+(((x9189)*(x9193)))+(((IkReal(-1.00000000000000))*(r11)*(x9178)*(x9186)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(x9182)))+(((cj0)*(r12)*(x9183)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9198)))+(((IkReal(-1.00000000000000))*(x9183)*(x9184)))+(((IkReal(-1.00000000000000))*(x9188)*(x9202)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x9197)))+(((IkReal(-1.00000000000000))*(py)*(x9177)))+(((IkReal(-1.00000000000000))*(cj0)*(x9192)*(x9198)))+(((x9190)*(x9202)))+(((IkReal(0.0100000000000000))*(x9180)*(x9188)))+(((sj0)*(x9192)*(x9197)))+(((IkReal(-0.0100000000000000))*(x9180)*(x9190)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x9184)*(x9194)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(x9193)*(x9202)))+(((IkReal(0.0100000000000000))*(x9180)*(x9193)))+(((r12)*(sj0)*(x9183)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x9198)))+(((IkReal(-1.00000000000000))*(cj0)*(x9192)*(x9197)))+(((x9194)*(x9195)))+(((IkReal(-1.00000000000000))*(sj0)*(x9192)*(x9198)))+(((IkReal(-1.00000000000000))*(px)*(x9177)))+(((IkReal(0.0100000000000000))*(sj0)*(x9182)))+(((IkReal(-1.00000000000000))*(x9200)*(x9202)))+(((IkReal(0.0100000000000000))*(x9180)*(x9200)))+(((x9183)*(x9195)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9197)))+(((IkReal(-1.00000000000000))*(py)*(x9186)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9204=((cj0)*(cj5)); +IkReal x9205=((IkReal(1.00000000000000))*(cj0)); +IkReal x9206=((cj6)*(r11)); +IkReal x9207=((r10)*(sj6)); +IkReal x9208=((cj5)*(sj0)); +IkReal x9209=((r00)*(sj5)*(sj6)); +IkReal x9210=((cj6)*(r01)*(sj5)); +IkReal x9211=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((r12)*(x9204)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9206)))+(((IkReal(-1.00000000000000))*(r02)*(x9208)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9207)))+(((sj0)*(x9209)))+(((sj0)*(x9210))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r02)*(x9204)))+(((IkReal(-1.00000000000000))*(x9205)*(x9209)))+(((IkReal(-1.00000000000000))*(x9207)*(x9211)))+(((IkReal(-1.00000000000000))*(x9205)*(x9210)))+(((r12)*(x9208)))+(((IkReal(-1.00000000000000))*(x9206)*(x9211))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r12)*(x9204)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9206)))+(((IkReal(-1.00000000000000))*(r02)*(x9208)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9207)))+(((sj0)*(x9209)))+(((sj0)*(x9210)))))+IKsqr(((((r02)*(x9204)))+(((IkReal(-1.00000000000000))*(x9205)*(x9209)))+(((IkReal(-1.00000000000000))*(x9207)*(x9211)))+(((IkReal(-1.00000000000000))*(x9205)*(x9210)))+(((r12)*(x9208)))+(((IkReal(-1.00000000000000))*(x9206)*(x9211)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r12)*(x9204)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9206)))+(((IkReal(-1.00000000000000))*(r02)*(x9208)))+(((IkReal(-1.00000000000000))*(sj5)*(x9205)*(x9207)))+(((sj0)*(x9209)))+(((sj0)*(x9210)))), ((((r02)*(x9204)))+(((IkReal(-1.00000000000000))*(x9205)*(x9209)))+(((IkReal(-1.00000000000000))*(x9207)*(x9211)))+(((IkReal(-1.00000000000000))*(x9205)*(x9210)))+(((r12)*(x9208)))+(((IkReal(-1.00000000000000))*(x9206)*(x9211))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9212=IKcos(j3); +IkReal x9213=((sj0)*(sj5)); +IkReal x9214=((r00)*(sj6)); +IkReal x9215=((cj6)*(sj0)); +IkReal x9216=((IkReal(1.00000000000000))*(cj4)); +IkReal x9217=((r00)*(sj4)); +IkReal x9218=((cj0)*(cj5)); +IkReal x9219=((cj5)*(sj0)); +IkReal x9220=((cj6)*(r11)); +IkReal x9221=((r10)*(sj6)); +IkReal x9222=((cj0)*(sj5)); +IkReal x9223=((r10)*(sj4)); +IkReal x9224=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x9225=((cj4)*(cj5)*(r01)); +IkReal x9226=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x9227=((cj0)*(sj4)*(sj6)); +IkReal x9228=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x9219)))+(((IkReal(-1.00000000000000))*(x9221)*(x9222)))+(((x9213)*(x9214)))+(((IkReal(-1.00000000000000))*(x9220)*(x9222)))+(((cj6)*(r01)*(x9213)))+(((r12)*(x9218)))+(((IkReal(-1.00000000000000))*(x9224)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9222)))+(((IkReal(-1.00000000000000))*(x9213)*(x9221)))+(((IkReal(-1.00000000000000))*(x9213)*(x9220)))+(((r12)*(x9219)))+(((IkReal(-1.00000000000000))*(x9214)*(x9222)))+(((IkReal(-1.00000000000000))*(x9212)))+(((r02)*(x9218)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x9216)*(x9222)))+(x9212)+(((cj4)*(r02)*(x9213)))+(((IkReal(-1.00000000000000))*(x9223)*(x9226)))+(((x9215)*(x9217)))+(((x9215)*(x9225)))+(((IkReal(-1.00000000000000))*(x9216)*(x9218)*(x9221)))+(((r11)*(x9227)))+(((IkReal(-1.00000000000000))*(r01)*(x9228)))+(((cj4)*(x9214)*(x9219)))+(((IkReal(-1.00000000000000))*(x9216)*(x9218)*(x9220)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9216)*(x9219)*(x9221)))+(((r01)*(x9227)))+(((r11)*(x9228)))+(((IkReal(-1.00000000000000))*(r02)*(x9216)*(x9222)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x9215)*(x9216)))+(((IkReal(-1.00000000000000))*(x9217)*(x9226)))+(((IkReal(-1.00000000000000))*(x9214)*(x9216)*(x9218)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9216)*(x9218)))+(((IkReal(-1.00000000000000))*(r12)*(x9213)*(x9216)))+(((IkReal(-1.00000000000000))*(x9224)))+(((IkReal(-1.00000000000000))*(x9215)*(x9223)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9229=((IkReal(1.00000000000000))*(cj0)); +IkReal x9230=((cj4)*(sj6)); +IkReal x9231=((sj0)*(sj4)); +IkReal x9232=((cj5)*(sj6)); +IkReal x9233=((sj4)*(sj5)); +IkReal x9234=((r12)*(sj5)); +IkReal x9235=((IkReal(0.374290000000000))*(cj5)); +IkReal x9236=((r02)*(sj0)); +IkReal x9237=((r20)*(sj4)); +IkReal x9238=((IkReal(1.00000000000000))*(sj0)); +IkReal x9239=((IkReal(1.00000000000000))*(cj5)); +IkReal x9240=((cj0)*(r10)); +IkReal x9241=((cj4)*(cj6)); +IkReal x9242=((r00)*(sj0)); +IkReal x9243=((cj6)*(r21)); +IkReal x9244=((IkReal(0.374290000000000))*(sj5)); +IkReal x9245=((cj0)*(r00)); +IkReal x9246=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9247=((cj0)*(r02)); +IkReal x9248=((cj5)*(sj4)); +IkReal x9249=((cj6)*(r01)); +IkReal x9250=((cj6)*(r11)); +IkReal x9251=((r01)*(sj0)); +IkReal x9252=((r10)*(sj0)); +IkReal x9253=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x9254=((sj6)*(x9244)); +IkReal x9255=((cj0)*(cj6)*(x9244)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x9243)))+(((IkReal(-1.00000000000000))*(r22)*(x9239)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((r21)*(x9230)))+(((IkReal(-1.00000000000000))*(r20)*(x9241)))+(((x9232)*(x9237)))+(((r22)*(x9233)))+(((x9243)*(x9248)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x9246)))+(((IkReal(-1.00000000000000))*(r22)*(x9235)))+(((IkReal(-0.0100000000000000))*(cj5)*(x9243)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x9232)))+(((r20)*(x9254)))+(((x9243)*(x9244)))); +evalcond[4]=((((cj6)*(x9237)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x9230)))+(((cj5)*(r21)*(x9241)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x9229)*(x9233)))+(((x9230)*(x9251)))+(((cj5)*(x9231)*(x9249)))+(((x9240)*(x9241)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x9229)*(x9232)))+(((IkReal(-1.00000000000000))*(x9229)*(x9248)*(x9250)))+(((r02)*(sj5)*(x9231)))+(((IkReal(-1.00000000000000))*(r00)*(x9238)*(x9241)))+(((r00)*(x9231)*(x9232)))+(((IkReal(-1.00000000000000))*(r11)*(x9229)*(x9230)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r00)*(sj4)*(x9229)*(x9232)))+(((IkReal(-1.00000000000000))*(x9231)*(x9234)))+(((IkReal(-1.00000000000000))*(r10)*(x9231)*(x9232)))+(((x9241)*(x9252)))+(((x9241)*(x9245)))+(((IkReal(-1.00000000000000))*(x9231)*(x9239)*(x9250)))+(((IkReal(-1.00000000000000))*(r01)*(x9229)*(x9230)))+(((IkReal(-1.00000000000000))*(r02)*(x9229)*(x9233)))+(((IkReal(-1.00000000000000))*(r11)*(x9230)*(x9238)))+(((IkReal(-1.00000000000000))*(x9229)*(x9248)*(x9249)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(x9234)))+(((sj0)*(x9244)*(x9249)))+(((cj0)*(r12)*(x9235)))+(((IkReal(-1.00000000000000))*(x9236)*(x9246)))+(((IkReal(-1.00000000000000))*(x9235)*(x9236)))+(((IkReal(0.0100000000000000))*(x9232)*(x9240)))+(((x9242)*(x9254)))+(((IkReal(-0.0100000000000000))*(x9232)*(x9242)))+(((IkReal(-1.00000000000000))*(py)*(x9229)))+(((IkReal(-1.00000000000000))*(cj0)*(x9244)*(x9250)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9250)))+(((IkReal(-1.00000000000000))*(x9240)*(x9254)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x9249)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x9244)*(x9249)))+(((IkReal(0.0100000000000000))*(x9232)*(x9245)))+(((x9235)*(x9247)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x9250)))+(((IkReal(-1.00000000000000))*(px)*(x9229)))+(((IkReal(-1.00000000000000))*(py)*(x9238)))+(((IkReal(-1.00000000000000))*(x9245)*(x9254)))+(((IkReal(-1.00000000000000))*(sj0)*(x9244)*(x9250)))+(((x9246)*(x9247)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9249)))+(((r12)*(sj0)*(x9235)))+(((IkReal(0.0100000000000000))*(x9232)*(x9252)))+(((IkReal(-1.00000000000000))*(x9252)*(x9254)))+(((IkReal(0.0100000000000000))*(sj0)*(x9234)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9256=((sj0)*(sj5)); +IkReal x9257=((r00)*(sj6)); +IkReal x9258=((IkReal(1.00000000000000))*(cj5)); +IkReal x9259=((cj6)*(r11)); +IkReal x9260=((cj6)*(r01)); +IkReal x9261=((r10)*(sj6)); +IkReal x9262=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x9259)*(x9262)))+(((IkReal(-1.00000000000000))*(x9261)*(x9262)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9258)))+(((x9256)*(x9257)))+(((x9256)*(x9260))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9258)))+(((x9256)*(x9259)))+(((x9257)*(x9262)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9258)))+(((x9256)*(x9261)))+(((x9260)*(x9262))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x9259)*(x9262)))+(((IkReal(-1.00000000000000))*(x9261)*(x9262)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9258)))+(((x9256)*(x9257)))+(((x9256)*(x9260)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9258)))+(((x9256)*(x9259)))+(((x9257)*(x9262)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9258)))+(((x9256)*(x9261)))+(((x9260)*(x9262)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x9259)*(x9262)))+(((IkReal(-1.00000000000000))*(x9261)*(x9262)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9258)))+(((x9256)*(x9257)))+(((x9256)*(x9260)))), ((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9258)))+(((x9256)*(x9259)))+(((x9257)*(x9262)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9258)))+(((x9256)*(x9261)))+(((x9260)*(x9262))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9263=IKcos(j3); +IkReal x9264=IKsin(j3); +IkReal x9265=((sj0)*(sj5)); +IkReal x9266=((r00)*(sj6)); +IkReal x9267=((cj6)*(sj0)); +IkReal x9268=((IkReal(1.00000000000000))*(cj4)); +IkReal x9269=((r00)*(sj4)); +IkReal x9270=((cj0)*(cj5)); +IkReal x9271=((cj5)*(sj0)); +IkReal x9272=((cj6)*(r11)); +IkReal x9273=((r10)*(sj6)); +IkReal x9274=((cj0)*(sj5)); +IkReal x9275=((r10)*(sj4)); +IkReal x9276=((cj4)*(cj5)*(r01)); +IkReal x9277=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x9278=((cj0)*(sj4)*(sj6)); +IkReal x9279=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x9273)*(x9274)))+(((cj6)*(r01)*(x9265)))+(((IkReal(-1.00000000000000))*(r02)*(x9271)))+(((IkReal(-1.00000000000000))*(x9264)))+(((IkReal(-1.00000000000000))*(x9272)*(x9274)))+(((x9265)*(x9266)))+(((r12)*(x9270)))); +evalcond[1]=((((r02)*(x9270)))+(((IkReal(-1.00000000000000))*(x9265)*(x9272)))+(x9263)+(((r12)*(x9271)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9274)))+(((IkReal(-1.00000000000000))*(x9266)*(x9274)))+(((IkReal(-1.00000000000000))*(x9265)*(x9273)))); +evalcond[2]=((((cj4)*(r02)*(x9265)))+(((x9267)*(x9269)))+(x9263)+(((r11)*(x9278)))+(((IkReal(-1.00000000000000))*(x9268)*(x9270)*(x9273)))+(((x9267)*(x9276)))+(((IkReal(-1.00000000000000))*(x9268)*(x9270)*(x9272)))+(((IkReal(-1.00000000000000))*(x9275)*(x9277)))+(((cj4)*(x9266)*(x9271)))+(((IkReal(-1.00000000000000))*(r12)*(x9268)*(x9274)))+(((IkReal(-1.00000000000000))*(r01)*(x9279)))); +evalcond[3]=((((r11)*(x9279)))+(((IkReal(-1.00000000000000))*(x9267)*(x9275)))+(x9264)+(((IkReal(-1.00000000000000))*(x9268)*(x9271)*(x9273)))+(((r01)*(x9278)))+(((IkReal(-1.00000000000000))*(x9266)*(x9268)*(x9270)))+(((IkReal(-1.00000000000000))*(x9269)*(x9277)))+(((IkReal(-1.00000000000000))*(r12)*(x9265)*(x9268)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x9267)*(x9268)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9268)*(x9270)))+(((IkReal(-1.00000000000000))*(r02)*(x9268)*(x9274)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9280=((cj0)*(cj5)); +IkReal x9281=((IkReal(1.00000000000000))*(cj0)); +IkReal x9282=((cj6)*(r11)); +IkReal x9283=((r10)*(sj6)); +IkReal x9284=((cj5)*(sj0)); +IkReal x9285=((r00)*(sj5)*(sj6)); +IkReal x9286=((cj6)*(r01)*(sj5)); +IkReal x9287=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x9286)))+(((r12)*(x9280)))+(((IkReal(-1.00000000000000))*(r02)*(x9284)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9283)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9282)))+(((sj0)*(x9285))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x9280)))+(((IkReal(-1.00000000000000))*(x9283)*(x9287)))+(((r12)*(x9284)))+(((IkReal(-1.00000000000000))*(x9281)*(x9286)))+(((IkReal(-1.00000000000000))*(x9281)*(x9285)))+(((IkReal(-1.00000000000000))*(x9282)*(x9287))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x9286)))+(((r12)*(x9280)))+(((IkReal(-1.00000000000000))*(r02)*(x9284)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9283)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9282)))+(((sj0)*(x9285)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x9280)))+(((IkReal(-1.00000000000000))*(x9283)*(x9287)))+(((r12)*(x9284)))+(((IkReal(-1.00000000000000))*(x9281)*(x9286)))+(((IkReal(-1.00000000000000))*(x9281)*(x9285)))+(((IkReal(-1.00000000000000))*(x9282)*(x9287)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x9286)))+(((r12)*(x9280)))+(((IkReal(-1.00000000000000))*(r02)*(x9284)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9283)))+(((IkReal(-1.00000000000000))*(sj5)*(x9281)*(x9282)))+(((sj0)*(x9285)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x9280)))+(((IkReal(-1.00000000000000))*(x9283)*(x9287)))+(((r12)*(x9284)))+(((IkReal(-1.00000000000000))*(x9281)*(x9286)))+(((IkReal(-1.00000000000000))*(x9281)*(x9285)))+(((IkReal(-1.00000000000000))*(x9282)*(x9287))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9288=IKsin(j3); +IkReal x9289=IKcos(j3); +IkReal x9290=((sj0)*(sj5)); +IkReal x9291=((r00)*(sj6)); +IkReal x9292=((cj6)*(r01)); +IkReal x9293=((cj4)*(cj5)); +IkReal x9294=((IkReal(1.00000000000000))*(cj0)); +IkReal x9295=((cj5)*(r12)); +IkReal x9296=((IkReal(1.00000000000000))*(sj0)); +IkReal x9297=((cj6)*(r11)); +IkReal x9298=((cj5)*(r02)); +IkReal x9299=((IkReal(1.00000000000000))*(cj1)); +IkReal x9300=((cj6)*(sj4)); +IkReal x9301=((cj6)*(r21)); +IkReal x9302=((r20)*(sj6)); +IkReal x9303=((r10)*(sj6)); +IkReal x9304=((sj4)*(sj6)); +IkReal x9305=((cj4)*(r02)); +IkReal x9306=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9307=((IkReal(1.00000000000000))*(x9288)); +IkReal x9308=((cj0)*(x9304)); +evalcond[0]=((((sj5)*(x9301)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x9289)))+(((sj5)*(x9302)))); +evalcond[1]=((((x9293)*(x9301)))+(((IkReal(-1.00000000000000))*(sj1)*(x9307)))+(((r20)*(x9300)))+(((x9293)*(x9302)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x9304)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x9294)*(x9297)))+(((IkReal(-1.00000000000000))*(x9296)*(x9298)))+(((cj0)*(x9295)))+(((x9290)*(x9291)))+(((IkReal(-1.00000000000000))*(sj5)*(x9294)*(x9303)))+(((x9290)*(x9292)))+(((IkReal(-1.00000000000000))*(x9307)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9289)*(x9299)))+(((cj0)*(x9298)))+(((sj0)*(x9295)))+(((IkReal(-1.00000000000000))*(sj5)*(x9292)*(x9294)))+(((IkReal(-1.00000000000000))*(x9290)*(x9303)))+(((IkReal(-1.00000000000000))*(x9290)*(x9297)))+(((IkReal(-1.00000000000000))*(sj5)*(x9291)*(x9294)))); +evalcond[4]=((((sj0)*(x9291)*(x9293)))+(((IkReal(-1.00000000000000))*(x9293)*(x9294)*(x9297)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9294)))+(((r00)*(sj0)*(x9300)))+(((sj0)*(x9292)*(x9293)))+(((IkReal(-1.00000000000000))*(r10)*(x9294)*(x9300)))+(((x9290)*(x9305)))+(((r11)*(x9308)))+(((IkReal(-1.00000000000000))*(x9293)*(x9294)*(x9303)))+(x9289)+(((IkReal(-1.00000000000000))*(r01)*(x9296)*(x9304)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9291)*(x9293)*(x9294)))+(((r11)*(sj0)*(x9304)))+(((IkReal(-1.00000000000000))*(x9288)*(x9299)))+(((IkReal(-1.00000000000000))*(x9293)*(x9296)*(x9303)))+(((IkReal(-1.00000000000000))*(x9293)*(x9296)*(x9297)))+(((IkReal(-1.00000000000000))*(x9290)*(x9306)))+(((IkReal(-1.00000000000000))*(sj5)*(x9294)*(x9305)))+(((IkReal(-1.00000000000000))*(x9292)*(x9293)*(x9294)))+(((IkReal(-1.00000000000000))*(r00)*(x9294)*(x9300)))+(((IkReal(-1.00000000000000))*(r10)*(x9296)*(x9300)))+(((r01)*(x9308)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9309=((sj5)*(sj6)); +IkReal x9310=((cj6)*(sj5)); +IkReal x9311=((IkReal(1.00000000000000))*(cj0)); +IkReal x9312=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r01)*(sj0)*(x9310)))+(((IkReal(-1.00000000000000))*(r11)*(x9310)*(x9311)))+(((r00)*(sj0)*(x9309)))+(((IkReal(-1.00000000000000))*(r10)*(x9309)*(x9311)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9312))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x9310)))+(((IkReal(-1.00000000000000))*(r22)*(x9312)))+(((r20)*(x9309))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r01)*(sj0)*(x9310)))+(((IkReal(-1.00000000000000))*(r11)*(x9310)*(x9311)))+(((r00)*(sj0)*(x9309)))+(((IkReal(-1.00000000000000))*(r10)*(x9309)*(x9311)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9312)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x9310)))+(((IkReal(-1.00000000000000))*(r22)*(x9312)))+(((r20)*(x9309)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r01)*(sj0)*(x9310)))+(((IkReal(-1.00000000000000))*(r11)*(x9310)*(x9311)))+(((r00)*(sj0)*(x9309)))+(((IkReal(-1.00000000000000))*(r10)*(x9309)*(x9311)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9312)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x9310)))+(((IkReal(-1.00000000000000))*(r22)*(x9312)))+(((r20)*(x9309))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9313=IKsin(j3); +IkReal x9314=IKcos(j3); +IkReal x9315=((sj0)*(sj5)); +IkReal x9316=((r00)*(sj6)); +IkReal x9317=((cj6)*(r01)); +IkReal x9318=((cj4)*(cj5)); +IkReal x9319=((IkReal(1.00000000000000))*(cj0)); +IkReal x9320=((cj5)*(r12)); +IkReal x9321=((IkReal(1.00000000000000))*(sj0)); +IkReal x9322=((cj6)*(r11)); +IkReal x9323=((cj5)*(r02)); +IkReal x9324=((IkReal(1.00000000000000))*(cj1)); +IkReal x9325=((cj6)*(sj4)); +IkReal x9326=((cj6)*(r21)); +IkReal x9327=((r20)*(sj6)); +IkReal x9328=((r10)*(sj6)); +IkReal x9329=((sj4)*(sj6)); +IkReal x9330=((cj4)*(r02)); +IkReal x9331=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9332=((IkReal(1.00000000000000))*(x9313)); +IkReal x9333=((cj0)*(x9329)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x9314)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9326)))+(((sj5)*(x9327)))); +evalcond[1]=((((x9318)*(x9327)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x9329)))+(((r20)*(x9325)))+(((x9318)*(x9326)))+(((IkReal(-1.00000000000000))*(sj1)*(x9332)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9332)))+(((x9315)*(x9317)))+(((IkReal(-1.00000000000000))*(sj5)*(x9319)*(x9322)))+(((x9315)*(x9316)))+(((IkReal(-1.00000000000000))*(sj5)*(x9319)*(x9328)))+(((IkReal(-1.00000000000000))*(x9321)*(x9323)))+(((cj0)*(x9320)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9314)*(x9324)))+(((IkReal(-1.00000000000000))*(sj5)*(x9316)*(x9319)))+(((IkReal(-1.00000000000000))*(x9315)*(x9322)))+(((IkReal(-1.00000000000000))*(x9315)*(x9328)))+(((sj0)*(x9320)))+(((IkReal(-1.00000000000000))*(sj5)*(x9317)*(x9319)))+(((cj0)*(x9323)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x9321)*(x9329)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9319)))+(((r11)*(x9333)))+(((sj0)*(x9316)*(x9318)))+(((IkReal(-1.00000000000000))*(x9318)*(x9319)*(x9322)))+(((IkReal(-1.00000000000000))*(x9318)*(x9319)*(x9328)))+(((IkReal(-1.00000000000000))*(r10)*(x9319)*(x9325)))+(((sj0)*(x9317)*(x9318)))+(((r00)*(sj0)*(x9325)))+(((x9315)*(x9330)))+(x9314)); +evalcond[5]=((((r11)*(sj0)*(x9329)))+(((IkReal(-1.00000000000000))*(x9318)*(x9321)*(x9322)))+(((IkReal(-1.00000000000000))*(r10)*(x9321)*(x9325)))+(((IkReal(-1.00000000000000))*(x9317)*(x9318)*(x9319)))+(((IkReal(-1.00000000000000))*(sj5)*(x9319)*(x9330)))+(((IkReal(-1.00000000000000))*(x9315)*(x9331)))+(((IkReal(-1.00000000000000))*(r00)*(x9319)*(x9325)))+(((IkReal(-1.00000000000000))*(x9313)*(x9324)))+(((IkReal(-1.00000000000000))*(x9316)*(x9318)*(x9319)))+(((r01)*(x9333)))+(((IkReal(-1.00000000000000))*(x9318)*(x9321)*(x9328)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9334=((r20)*(sj6)); +IkReal x9335=((cj4)*(cj5)); +IkReal x9336=((cj6)*(r21)); +if( IKabs(((gconst17)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x9334)*(x9335)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x9335)*(x9336))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst17)*(((((sj5)*(x9336)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9334))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst17)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x9334)*(x9335)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x9335)*(x9336)))))), ((gconst17)*(((((sj5)*(x9336)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9334))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9337=IKsin(j3); +IkReal x9338=IKcos(j3); +IkReal x9339=((sj0)*(sj5)); +IkReal x9340=((r00)*(sj6)); +IkReal x9341=((cj6)*(r01)); +IkReal x9342=((cj4)*(cj5)); +IkReal x9343=((IkReal(1.00000000000000))*(cj0)); +IkReal x9344=((cj5)*(r12)); +IkReal x9345=((IkReal(1.00000000000000))*(sj0)); +IkReal x9346=((cj6)*(r11)); +IkReal x9347=((cj5)*(r02)); +IkReal x9348=((IkReal(1.00000000000000))*(cj1)); +IkReal x9349=((cj6)*(sj4)); +IkReal x9350=((cj6)*(r21)); +IkReal x9351=((r20)*(sj6)); +IkReal x9352=((r10)*(sj6)); +IkReal x9353=((sj4)*(sj6)); +IkReal x9354=((cj4)*(r02)); +IkReal x9355=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9356=((IkReal(1.00000000000000))*(x9337)); +IkReal x9357=((cj0)*(x9353)); +evalcond[0]=((((sj5)*(x9350)))+(((sj5)*(x9351)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x9338)))); +evalcond[1]=((((x9342)*(x9350)))+(((r20)*(x9349)))+(((cj4)*(r22)*(sj5)))+(((x9342)*(x9351)))+(((IkReal(-1.00000000000000))*(sj1)*(x9356)))+(((IkReal(-1.00000000000000))*(r21)*(x9353)))); +evalcond[2]=((((x9339)*(x9341)))+(((IkReal(-1.00000000000000))*(x9345)*(x9347)))+(((IkReal(-1.00000000000000))*(sj5)*(x9343)*(x9352)))+(((IkReal(-1.00000000000000))*(sj5)*(x9343)*(x9346)))+(((IkReal(-1.00000000000000))*(x9356)))+(((cj0)*(x9344)))+(((x9339)*(x9340)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9339)*(x9352)))+(((sj0)*(x9344)))+(((IkReal(-1.00000000000000))*(x9339)*(x9346)))+(((IkReal(-1.00000000000000))*(sj5)*(x9340)*(x9343)))+(((cj0)*(x9347)))+(((IkReal(-1.00000000000000))*(sj5)*(x9341)*(x9343)))+(((IkReal(-1.00000000000000))*(x9338)*(x9348)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9343)))+(x9338)+(((IkReal(-1.00000000000000))*(x9342)*(x9343)*(x9346)))+(((sj0)*(x9341)*(x9342)))+(((IkReal(-1.00000000000000))*(r01)*(x9345)*(x9353)))+(((r00)*(sj0)*(x9349)))+(((IkReal(-1.00000000000000))*(x9342)*(x9343)*(x9352)))+(((sj0)*(x9340)*(x9342)))+(((x9339)*(x9354)))+(((r11)*(x9357)))+(((IkReal(-1.00000000000000))*(r10)*(x9343)*(x9349)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9342)*(x9345)*(x9352)))+(((IkReal(-1.00000000000000))*(x9341)*(x9342)*(x9343)))+(((IkReal(-1.00000000000000))*(r00)*(x9343)*(x9349)))+(((IkReal(-1.00000000000000))*(x9342)*(x9345)*(x9346)))+(((IkReal(-1.00000000000000))*(x9337)*(x9348)))+(((r11)*(sj0)*(x9353)))+(((r01)*(x9357)))+(((IkReal(-1.00000000000000))*(r10)*(x9345)*(x9349)))+(((IkReal(-1.00000000000000))*(x9339)*(x9355)))+(((IkReal(-1.00000000000000))*(x9340)*(x9342)*(x9343)))+(((IkReal(-1.00000000000000))*(sj5)*(x9343)*(x9354)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x9358=((cj1)*(sj6)); +IkReal x9359=((r01)*(sj0)); +IkReal x9360=((cj0)*(r11)); +IkReal x9361=((cj1)*(cj6)); +IkReal x9362=((cj0)*(r10)); +IkReal x9363=((IkReal(1.00000000000000))*(sj0)); +IkReal x9364=((cj1)*(sj5)); +if( IKabs(((gconst13)*(((((IkReal(-1.00000000000000))*(r00)*(x9361)*(x9363)))+(((x9361)*(x9362)))+(((x9358)*(x9359)))+(((IkReal(-1.00000000000000))*(x9358)*(x9360))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst13)*(((((IkReal(-1.00000000000000))*(cj5)*(x9359)*(x9361)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9358)*(x9363)))+(((cj5)*(x9358)*(x9362)))+(((cj5)*(x9360)*(x9361)))+(((cj0)*(r12)*(x9364)))+(((IkReal(-1.00000000000000))*(r02)*(x9363)*(x9364))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst13)*(((((IkReal(-1.00000000000000))*(r00)*(x9361)*(x9363)))+(((x9361)*(x9362)))+(((x9358)*(x9359)))+(((IkReal(-1.00000000000000))*(x9358)*(x9360)))))), ((gconst13)*(((((IkReal(-1.00000000000000))*(cj5)*(x9359)*(x9361)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9358)*(x9363)))+(((cj5)*(x9358)*(x9362)))+(((cj5)*(x9360)*(x9361)))+(((cj0)*(r12)*(x9364)))+(((IkReal(-1.00000000000000))*(r02)*(x9363)*(x9364))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x9365=IKsin(j4); +IkReal x9366=IKcos(j4); +IkReal x9367=((r00)*(sj6)); +IkReal x9368=((cj6)*(r01)); +IkReal x9369=((IkReal(1.00000000000000))*(cj0)); +IkReal x9370=((IkReal(1.00000000000000))*(sj0)); +IkReal x9371=((r10)*(sj6)); +IkReal x9372=((sj5)*(x9365)); +IkReal x9373=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x9374=((cj5)*(x9365)); +IkReal x9375=((cj6)*(x9366)); +IkReal x9376=((sj0)*(x9374)); +IkReal x9377=((r01)*(sj6)*(x9366)); +IkReal x9378=((r11)*(sj6)*(x9366)); +evalcond[0]=((((r20)*(sj6)*(x9374)))+(((IkReal(-1.00000000000000))*(r20)*(x9375)))+(((IkReal(-1.00000000000000))*(cj1)))+(((cj6)*(r21)*(x9374)))+(((r21)*(sj6)*(x9366)))+(((r22)*(x9372)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9369)*(x9371)*(x9374)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x9369)*(x9374)))+(((IkReal(-1.00000000000000))*(x9369)*(x9378)))+(((x9367)*(x9376)))+(((cj0)*(r10)*(x9375)))+(((IkReal(-1.00000000000000))*(r00)*(x9370)*(x9375)))+(((r02)*(sj0)*(x9372)))+(((sj0)*(x9377)))+(((IkReal(-1.00000000000000))*(r12)*(x9369)*(x9372)))+(((x9368)*(x9376)))); +evalcond[2]=((((r10)*(sj0)*(x9375)))+(sj1)+(((IkReal(-1.00000000000000))*(x9369)*(x9377)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x9370)*(x9374)))+(((IkReal(-1.00000000000000))*(x9370)*(x9371)*(x9374)))+(((IkReal(-1.00000000000000))*(r12)*(x9370)*(x9372)))+(((IkReal(-1.00000000000000))*(r02)*(x9369)*(x9372)))+(((IkReal(-1.00000000000000))*(x9367)*(x9369)*(x9374)))+(((cj0)*(r00)*(x9375)))+(((IkReal(-1.00000000000000))*(x9368)*(x9369)*(x9374)))+(((IkReal(-1.00000000000000))*(x9370)*(x9378)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst17; +gconst17=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x9379=((IkReal(1.00000000000000))*(cj0)); +IkReal x9380=((cj4)*(sj6)); +IkReal x9381=((sj0)*(sj6)); +IkReal x9382=((cj5)*(sj4)); +IkReal x9383=((IkReal(0.374290000000000))*(sj5)); +IkReal x9384=((sj4)*(sj5)); +IkReal x9385=((cj0)*(cj6)); +IkReal x9386=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9387=((cj4)*(sj5)); +IkReal x9388=((cj5)*(sj0)); +IkReal x9389=((IkReal(0.374290000000000))*(r02)); +IkReal x9390=((r20)*(sj6)); +IkReal x9391=((cj6)*(r21)); +IkReal x9392=((IkReal(1.00000000000000))*(sj0)); +IkReal x9393=((cj0)*(sj6)); +IkReal x9394=((cj4)*(cj6)); +IkReal x9395=((IkReal(0.374290000000000))*(r12)); +IkReal x9396=((cj0)*(cj5)); +IkReal x9397=((cj6)*(sj5)); +IkReal x9398=((cj6)*(r01)); +IkReal x9399=((r00)*(sj6)); +IkReal x9400=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9401=((cj6)*(r11)); +IkReal x9402=((IkReal(1.00000000000000))*(r10)); +IkReal x9403=((r02)*(sj0)); +IkReal x9404=((cj6)*(sj4)); +IkReal x9405=((r12)*(x9392)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x9394)))+(((x9382)*(x9390)))+(((r22)*(x9384)))+(((x9382)*(x9391)))+(((r21)*(x9380)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x9383)*(x9391)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x9400)))+(((IkReal(-1.00000000000000))*(x9386)*(x9391)))+(pz)+(((x9383)*(x9390)))+(((IkReal(-1.00000000000000))*(x9386)*(x9390)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x9392)*(x9397)))+(((IkReal(-1.00000000000000))*(sj5)*(x9381)*(x9402)))+(((IkReal(-1.00000000000000))*(sj5)*(x9379)*(x9399)))+(((r12)*(x9388)))+(((IkReal(-1.00000000000000))*(r01)*(x9379)*(x9397)))+(((r02)*(x9396)))); +evalcond[4]=((((r01)*(sj0)*(x9380)))+(((x9384)*(x9403)))+(((cj4)*(r10)*(x9385)))+(((r00)*(x9381)*(x9382)))+(((IkReal(-1.00000000000000))*(x9379)*(x9382)*(x9401)))+(((sj0)*(x9382)*(x9398)))+(((IkReal(-1.00000000000000))*(r00)*(x9392)*(x9394)))+(((IkReal(-1.00000000000000))*(r11)*(x9379)*(x9380)))+(((IkReal(-1.00000000000000))*(r12)*(x9379)*(x9384)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x9379)*(x9382)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x9379)*(x9382)*(x9399)))+(((IkReal(-1.00000000000000))*(x9381)*(x9382)*(x9402)))+(((IkReal(-1.00000000000000))*(r11)*(x9380)*(x9392)))+(((r10)*(sj0)*(x9394)))+(((IkReal(-1.00000000000000))*(r02)*(x9379)*(x9384)))+(((cj4)*(r00)*(x9385)))+(((IkReal(-1.00000000000000))*(x9382)*(x9392)*(x9401)))+(((IkReal(-1.00000000000000))*(x9384)*(x9405)))+(((IkReal(-1.00000000000000))*(r01)*(x9379)*(x9380)))+(((IkReal(-1.00000000000000))*(x9379)*(x9382)*(x9398)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x9386)*(x9398)))+(((IkReal(-1.00000000000000))*(r10)*(x9383)*(x9393)))+(((IkReal(-1.00000000000000))*(r11)*(x9383)*(x9385)))+(((cj0)*(r12)*(x9400)))+(((sj0)*(x9383)*(x9398)))+(((r10)*(x9386)*(x9393)))+(((r00)*(x9381)*(x9383)))+(((IkReal(-1.00000000000000))*(x9400)*(x9403)))+(((IkReal(-1.00000000000000))*(py)*(x9379)))+(((IkReal(-1.00000000000000))*(r00)*(x9381)*(x9386)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x9388)*(x9389)))+(((x9395)*(x9396)))+(((r11)*(x9385)*(x9386)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x9379)*(x9404)))+(((IkReal(-1.00000000000000))*(r10)*(x9392)*(x9404)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x9379)*(x9394)))+(((IkReal(-1.00000000000000))*(x9387)*(x9405)))+(((IkReal(-1.00000000000000))*(r02)*(x9379)*(x9387)))+(((r01)*(sj4)*(x9393)))+(((IkReal(-1.00000000000000))*(r11)*(x9388)*(x9394)))+(((IkReal(-1.00000000000000))*(x9380)*(x9388)*(x9402)))+(((r11)*(sj4)*(x9381)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9379)*(x9380)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((x9389)*(x9396)))+(((IkReal(-1.00000000000000))*(r00)*(x9383)*(x9393)))+(((r12)*(sj0)*(x9400)))+(((IkReal(-1.00000000000000))*(r10)*(x9381)*(x9383)))+(((r10)*(x9381)*(x9386)))+(((IkReal(-1.00000000000000))*(r01)*(x9383)*(x9385)))+(((IkReal(-1.00000000000000))*(sj0)*(x9383)*(x9401)))+(((r00)*(x9386)*(x9393)))+(((sj0)*(x9386)*(x9401)))+(((r01)*(x9385)*(x9386)))+(((IkReal(-1.00000000000000))*(px)*(x9379)))+(((x9388)*(x9395)))+(((cj0)*(r02)*(x9400)))+(((IkReal(-1.00000000000000))*(py)*(x9392)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9406=((r20)*(sj6)); +IkReal x9407=((cj4)*(cj5)); +IkReal x9408=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x9406)*(x9407)))+(((cj4)*(r22)*(sj5)))+(((x9407)*(x9408))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9406)))+(((sj5)*(x9408))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x9406)*(x9407)))+(((cj4)*(r22)*(sj5)))+(((x9407)*(x9408)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9406)))+(((sj5)*(x9408)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((x9406)*(x9407)))+(((cj4)*(r22)*(sj5)))+(((x9407)*(x9408)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9406)))+(((sj5)*(x9408))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9409=IKcos(j3); +IkReal x9410=((sj0)*(sj5)); +IkReal x9411=((r00)*(sj6)); +IkReal x9412=((cj6)*(r01)); +IkReal x9413=((cj5)*(sj0)); +IkReal x9414=((cj0)*(cj5)); +IkReal x9415=((cj6)*(sj4)); +IkReal x9416=((sj4)*(sj6)); +IkReal x9417=((cj0)*(r11)); +IkReal x9418=((cj4)*(cj6)); +IkReal x9419=((cj4)*(sj6)); +IkReal x9420=((IkReal(1.00000000000000))*(cj0)); +IkReal x9421=((cj4)*(sj5)); +IkReal x9422=((sj5)*(sj6)); +IkReal x9423=((cj6)*(sj5)); +IkReal x9424=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r20)*(x9422)))+(((r21)*(x9423)))+(((IkReal(-1.00000000000000))*(x9409)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((cj5)*(r20)*(x9419)))+(((r22)*(x9421)))+(((IkReal(-1.00000000000000))*(r21)*(x9416)))+(((IkReal(-1.00000000000000))*(x9424)))+(((cj5)*(r21)*(x9418)))+(((r20)*(x9415)))); +evalcond[2]=((((r12)*(x9414)))+(((x9410)*(x9411)))+(((IkReal(-1.00000000000000))*(x9417)*(x9423)))+(((IkReal(-1.00000000000000))*(r10)*(x9420)*(x9422)))+(((IkReal(-1.00000000000000))*(x9424)))+(((x9410)*(x9412)))+(((IkReal(-1.00000000000000))*(r02)*(x9413)))); +evalcond[3]=((x9409)+(((cj4)*(x9412)*(x9413)))+(((IkReal(-1.00000000000000))*(r11)*(x9414)*(x9418)))+(((cj4)*(r02)*(x9410)))+(((x9416)*(x9417)))+(((IkReal(-1.00000000000000))*(r10)*(x9415)*(x9420)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x9416)))+(((cj4)*(x9411)*(x9413)))+(((r00)*(sj0)*(x9415)))+(((IkReal(-1.00000000000000))*(r12)*(x9420)*(x9421)))+(((IkReal(-1.00000000000000))*(r10)*(x9414)*(x9419)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9425=((IkReal(1.00000000000000))*(cj0)); +IkReal x9426=((cj4)*(sj6)); +IkReal x9427=((sj0)*(sj6)); +IkReal x9428=((cj5)*(sj4)); +IkReal x9429=((IkReal(0.374290000000000))*(sj5)); +IkReal x9430=((sj4)*(sj5)); +IkReal x9431=((cj0)*(cj6)); +IkReal x9432=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9433=((cj4)*(sj5)); +IkReal x9434=((cj5)*(sj0)); +IkReal x9435=((IkReal(0.374290000000000))*(r02)); +IkReal x9436=((r20)*(sj6)); +IkReal x9437=((cj6)*(r21)); +IkReal x9438=((IkReal(1.00000000000000))*(sj0)); +IkReal x9439=((cj0)*(sj6)); +IkReal x9440=((cj4)*(cj6)); +IkReal x9441=((IkReal(0.374290000000000))*(r12)); +IkReal x9442=((cj0)*(cj5)); +IkReal x9443=((cj6)*(sj5)); +IkReal x9444=((cj6)*(r01)); +IkReal x9445=((r00)*(sj6)); +IkReal x9446=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9447=((cj6)*(r11)); +IkReal x9448=((IkReal(1.00000000000000))*(r10)); +IkReal x9449=((r02)*(sj0)); +IkReal x9450=((cj6)*(sj4)); +IkReal x9451=((r12)*(x9438)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x9428)*(x9437)))+(((IkReal(-1.00000000000000))*(r20)*(x9440)))+(((x9428)*(x9436)))+(((r21)*(x9426)))+(((r22)*(x9430)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((x9429)*(x9437)))+(((IkReal(-1.00000000000000))*(r22)*(x9446)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x9432)*(x9437)))+(pz)+(((IkReal(-1.00000000000000))*(x9432)*(x9436)))+(((x9429)*(x9436)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x9438)*(x9443)))+(((r12)*(x9434)))+(((IkReal(-1.00000000000000))*(r01)*(x9425)*(x9443)))+(((r02)*(x9442)))+(((IkReal(-1.00000000000000))*(sj5)*(x9427)*(x9448)))+(((IkReal(-1.00000000000000))*(sj5)*(x9425)*(x9445)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9425)*(x9428)*(x9447)))+(((r00)*(x9427)*(x9428)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x9425)*(x9428)))+(((x9430)*(x9449)))+(((IkReal(-1.00000000000000))*(r12)*(x9425)*(x9430)))+(((sj0)*(x9428)*(x9444)))+(((IkReal(-1.00000000000000))*(r11)*(x9425)*(x9426)))+(((IkReal(-1.00000000000000))*(r00)*(x9438)*(x9440)))+(((r01)*(sj0)*(x9426)))+(((cj4)*(r10)*(x9431)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((cj4)*(r00)*(x9431)))+(((IkReal(-1.00000000000000))*(r11)*(x9426)*(x9438)))+(((IkReal(-1.00000000000000))*(x9425)*(x9428)*(x9445)))+(((IkReal(-1.00000000000000))*(x9427)*(x9428)*(x9448)))+(((IkReal(-1.00000000000000))*(r01)*(x9425)*(x9426)))+(((r10)*(sj0)*(x9440)))+(((IkReal(-1.00000000000000))*(x9428)*(x9438)*(x9447)))+(((IkReal(-1.00000000000000))*(r02)*(x9425)*(x9430)))+(((IkReal(-1.00000000000000))*(x9430)*(x9451)))+(((IkReal(-1.00000000000000))*(x9425)*(x9428)*(x9444)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((cj0)*(r12)*(x9446)))+(((IkReal(-1.00000000000000))*(r00)*(x9427)*(x9432)))+(((r10)*(x9432)*(x9439)))+(((x9441)*(x9442)))+(((IkReal(-1.00000000000000))*(sj0)*(x9432)*(x9444)))+(((IkReal(-1.00000000000000))*(r10)*(x9429)*(x9439)))+(((IkReal(-1.00000000000000))*(x9434)*(x9435)))+(((r00)*(x9427)*(x9429)))+(((IkReal(-1.00000000000000))*(r11)*(x9429)*(x9431)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x9446)*(x9449)))+(((sj0)*(x9429)*(x9444)))+(((IkReal(-1.00000000000000))*(py)*(x9425)))+(((r11)*(x9431)*(x9432)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x9434)*(x9440)))+(((IkReal(-1.00000000000000))*(r00)*(x9425)*(x9450)))+(((r11)*(sj4)*(x9427)))+(((IkReal(-1.00000000000000))*(x9426)*(x9434)*(x9448)))+(((IkReal(-1.00000000000000))*(r10)*(x9438)*(x9450)))+(((IkReal(-1.00000000000000))*(x9433)*(x9451)))+(((IkReal(-1.00000000000000))*(r02)*(x9425)*(x9433)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x9425)*(x9426)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x9425)*(x9440)))+(((r01)*(sj4)*(x9439)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x9429)*(x9439)))+(((r00)*(x9432)*(x9439)))+(((r12)*(sj0)*(x9446)))+(((IkReal(-1.00000000000000))*(r01)*(x9429)*(x9431)))+(((IkReal(-1.00000000000000))*(r10)*(x9427)*(x9429)))+(((x9435)*(x9442)))+(((cj0)*(r02)*(x9446)))+(((r10)*(x9427)*(x9432)))+(((IkReal(-1.00000000000000))*(px)*(x9425)))+(((r01)*(x9431)*(x9432)))+(((x9434)*(x9441)))+(((IkReal(-1.00000000000000))*(sj0)*(x9429)*(x9447)))+(((IkReal(-1.00000000000000))*(py)*(x9438)))+(((sj0)*(x9432)*(x9447)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9452=((IkReal(1.00000000000000))*(sj5)); +IkReal x9453=((cj6)*(r21)); +IkReal x9454=((r20)*(sj6)); +IkReal x9455=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x9454)*(x9455)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9452)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x9453)*(x9455)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x9452)*(x9453)))+(((IkReal(-1.00000000000000))*(x9452)*(x9454)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x9454)*(x9455)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9452)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x9453)*(x9455)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x9452)*(x9453)))+(((IkReal(-1.00000000000000))*(x9452)*(x9454)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x9454)*(x9455)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x9452)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x9453)*(x9455)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x9452)*(x9453)))+(((IkReal(-1.00000000000000))*(x9452)*(x9454)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9456=IKsin(j3); +IkReal x9457=IKcos(j3); +IkReal x9458=((sj0)*(sj5)); +IkReal x9459=((r00)*(sj6)); +IkReal x9460=((cj6)*(r01)); +IkReal x9461=((cj5)*(sj0)); +IkReal x9462=((cj0)*(cj5)); +IkReal x9463=((cj6)*(sj4)); +IkReal x9464=((sj4)*(sj6)); +IkReal x9465=((cj0)*(r11)); +IkReal x9466=((cj4)*(cj6)); +IkReal x9467=((cj4)*(sj6)); +IkReal x9468=((IkReal(1.00000000000000))*(cj0)); +IkReal x9469=((cj4)*(sj5)); +IkReal x9470=((sj5)*(sj6)); +IkReal x9471=((cj6)*(sj5)); +evalcond[0]=((((r20)*(x9470)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r21)*(x9471)))+(x9457)); +evalcond[1]=((((r22)*(x9469)))+(((cj5)*(r21)*(x9466)))+(x9456)+(((cj5)*(r20)*(x9467)))+(((r20)*(x9463)))+(((IkReal(-1.00000000000000))*(r21)*(x9464)))); +evalcond[2]=((((x9458)*(x9459)))+(((x9458)*(x9460)))+(((IkReal(-1.00000000000000))*(x9465)*(x9471)))+(((r12)*(x9462)))+(((IkReal(-1.00000000000000))*(x9456)))+(((IkReal(-1.00000000000000))*(r10)*(x9468)*(x9470)))+(((IkReal(-1.00000000000000))*(r02)*(x9461)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x9462)*(x9466)))+(((cj4)*(r02)*(x9458)))+(((x9464)*(x9465)))+(((cj4)*(x9460)*(x9461)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x9464)))+(((IkReal(-1.00000000000000))*(r10)*(x9463)*(x9468)))+(((IkReal(-1.00000000000000))*(r10)*(x9462)*(x9467)))+(((IkReal(-1.00000000000000))*(r12)*(x9468)*(x9469)))+(((r00)*(sj0)*(x9463)))+(x9457)+(((cj4)*(x9459)*(x9461)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9472=((IkReal(1.00000000000000))*(cj0)); +IkReal x9473=((cj4)*(sj6)); +IkReal x9474=((sj0)*(sj4)); +IkReal x9475=((cj5)*(sj6)); +IkReal x9476=((sj4)*(sj5)); +IkReal x9477=((r12)*(sj5)); +IkReal x9478=((IkReal(0.374290000000000))*(cj5)); +IkReal x9479=((r02)*(sj0)); +IkReal x9480=((r20)*(sj4)); +IkReal x9481=((IkReal(1.00000000000000))*(sj0)); +IkReal x9482=((IkReal(1.00000000000000))*(cj5)); +IkReal x9483=((cj0)*(r10)); +IkReal x9484=((cj4)*(cj6)); +IkReal x9485=((r00)*(sj0)); +IkReal x9486=((cj6)*(r21)); +IkReal x9487=((IkReal(0.374290000000000))*(sj5)); +IkReal x9488=((cj0)*(r00)); +IkReal x9489=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9490=((cj0)*(r02)); +IkReal x9491=((cj5)*(sj4)); +IkReal x9492=((cj6)*(r01)); +IkReal x9493=((cj6)*(r11)); +IkReal x9494=((r01)*(sj0)); +IkReal x9495=((r10)*(sj0)); +IkReal x9496=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x9497=((sj6)*(x9487)); +IkReal x9498=((cj0)*(cj6)*(x9487)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x9486)))+(((r20)*(sj5)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(x9482)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x9484)))+(((r22)*(x9476)))+(((r21)*(x9473)))+(((x9486)*(x9491)))+(((x9475)*(x9480)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x9489)))+(((IkReal(-0.0100000000000000))*(cj5)*(x9486)))+(((r20)*(x9497)))+(((IkReal(-1.00000000000000))*(r22)*(x9478)))+(((x9486)*(x9487)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x9475)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x9480)))+(((cj5)*(r20)*(x9473)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x9484)))); +evalcond[5]=((((x9483)*(x9484)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x9472)*(x9475)))+(((r02)*(sj5)*(x9474)))+(((IkReal(-1.00000000000000))*(r00)*(x9481)*(x9484)))+(((r00)*(x9474)*(x9475)))+(((IkReal(-1.00000000000000))*(r11)*(x9472)*(x9473)))+(((x9473)*(x9494)))+(((cj5)*(x9474)*(x9492)))+(((IkReal(-1.00000000000000))*(x9472)*(x9491)*(x9493)))+(((IkReal(-1.00000000000000))*(r12)*(x9472)*(x9476)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x9472)*(x9491)*(x9492)))+(((IkReal(-1.00000000000000))*(x9474)*(x9482)*(x9493)))+(((x9484)*(x9495)))+(((IkReal(-1.00000000000000))*(r01)*(x9472)*(x9473)))+(((IkReal(-1.00000000000000))*(r11)*(x9473)*(x9481)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x9472)*(x9475)))+(((IkReal(-1.00000000000000))*(r02)*(x9472)*(x9476)))+(((IkReal(-1.00000000000000))*(r10)*(x9474)*(x9475)))+(((IkReal(-1.00000000000000))*(x9474)*(x9477)))+(((x9484)*(x9488)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9493)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x9492)))+(((IkReal(0.0100000000000000))*(x9475)*(x9483)))+(((IkReal(-1.00000000000000))*(x9478)*(x9479)))+(((IkReal(-1.00000000000000))*(cj0)*(x9487)*(x9493)))+(((IkReal(-1.00000000000000))*(py)*(x9472)))+(((IkReal(-1.00000000000000))*(x9479)*(x9489)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(x9475)*(x9485)))+(((IkReal(-1.00000000000000))*(x9483)*(x9497)))+(((x9485)*(x9497)))+(((IkReal(0.0100000000000000))*(cj0)*(x9477)))+(((sj0)*(x9487)*(x9492)))+(((cj0)*(r12)*(x9478)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(py)*(x9481)))+(((IkReal(-1.00000000000000))*(sj0)*(x9487)*(x9493)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x9493)))+(((IkReal(-1.00000000000000))*(x9488)*(x9497)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9492)))+(((IkReal(0.0100000000000000))*(sj0)*(x9477)))+(((IkReal(0.0100000000000000))*(x9475)*(x9495)))+(((IkReal(0.0100000000000000))*(x9475)*(x9488)))+(((x9489)*(x9490)))+(((r12)*(sj0)*(x9478)))+(((IkReal(-1.00000000000000))*(x9495)*(x9497)))+(((IkReal(-1.00000000000000))*(px)*(x9472)))+(((x9478)*(x9490)))+(((IkReal(-1.00000000000000))*(cj0)*(x9487)*(x9492)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9499=((cj0)*(cj5)); +IkReal x9500=((IkReal(1.00000000000000))*(cj0)); +IkReal x9501=((cj6)*(r11)); +IkReal x9502=((r10)*(sj6)); +IkReal x9503=((cj5)*(sj0)); +IkReal x9504=((r00)*(sj5)*(sj6)); +IkReal x9505=((cj6)*(r01)*(sj5)); +IkReal x9506=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(x9503)))+(((r12)*(x9499)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9501)))+(((sj0)*(x9504)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9502)))+(((sj0)*(x9505))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r02)*(x9499)))+(((r12)*(x9503)))+(((IkReal(-1.00000000000000))*(x9500)*(x9505)))+(((IkReal(-1.00000000000000))*(x9500)*(x9504)))+(((IkReal(-1.00000000000000))*(x9501)*(x9506)))+(((IkReal(-1.00000000000000))*(x9502)*(x9506))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(x9503)))+(((r12)*(x9499)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9501)))+(((sj0)*(x9504)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9502)))+(((sj0)*(x9505)))))+IKsqr(((((r02)*(x9499)))+(((r12)*(x9503)))+(((IkReal(-1.00000000000000))*(x9500)*(x9505)))+(((IkReal(-1.00000000000000))*(x9500)*(x9504)))+(((IkReal(-1.00000000000000))*(x9501)*(x9506)))+(((IkReal(-1.00000000000000))*(x9502)*(x9506)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(x9503)))+(((r12)*(x9499)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9501)))+(((sj0)*(x9504)))+(((IkReal(-1.00000000000000))*(sj5)*(x9500)*(x9502)))+(((sj0)*(x9505)))), ((((r02)*(x9499)))+(((r12)*(x9503)))+(((IkReal(-1.00000000000000))*(x9500)*(x9505)))+(((IkReal(-1.00000000000000))*(x9500)*(x9504)))+(((IkReal(-1.00000000000000))*(x9501)*(x9506)))+(((IkReal(-1.00000000000000))*(x9502)*(x9506))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9507=IKcos(j3); +IkReal x9508=((sj0)*(sj5)); +IkReal x9509=((r00)*(sj6)); +IkReal x9510=((cj6)*(sj0)); +IkReal x9511=((IkReal(1.00000000000000))*(cj4)); +IkReal x9512=((r00)*(sj4)); +IkReal x9513=((cj0)*(cj5)); +IkReal x9514=((cj5)*(sj0)); +IkReal x9515=((cj6)*(r11)); +IkReal x9516=((r10)*(sj6)); +IkReal x9517=((cj0)*(sj5)); +IkReal x9518=((r10)*(sj4)); +IkReal x9519=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x9520=((cj4)*(cj5)*(r01)); +IkReal x9521=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x9522=((cj0)*(sj4)*(sj6)); +IkReal x9523=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x9515)*(x9517)))+(((IkReal(-1.00000000000000))*(x9516)*(x9517)))+(((cj6)*(r01)*(x9508)))+(((IkReal(-1.00000000000000))*(r02)*(x9514)))+(((r12)*(x9513)))+(((x9508)*(x9509)))+(((IkReal(-1.00000000000000))*(x9519)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9508)*(x9515)))+(((IkReal(-1.00000000000000))*(x9507)))+(((r02)*(x9513)))+(((IkReal(-1.00000000000000))*(x9509)*(x9517)))+(((r12)*(x9514)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9517)))+(((IkReal(-1.00000000000000))*(x9508)*(x9516)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9511)*(x9513)*(x9515)))+(((cj4)*(r02)*(x9508)))+(((r11)*(x9522)))+(((IkReal(-1.00000000000000))*(x9518)*(x9521)))+(((x9510)*(x9520)))+(((cj4)*(x9509)*(x9514)))+(((IkReal(-1.00000000000000))*(r01)*(x9523)))+(((IkReal(-1.00000000000000))*(r12)*(x9511)*(x9517)))+(((IkReal(-1.00000000000000))*(x9511)*(x9513)*(x9516)))+(x9507)+(((x9510)*(x9512)))); +evalcond[3]=((((r01)*(x9522)))+(((IkReal(-1.00000000000000))*(x9510)*(x9518)))+(((IkReal(-1.00000000000000))*(x9509)*(x9511)*(x9513)))+(((IkReal(-1.00000000000000))*(x9512)*(x9521)))+(((IkReal(-1.00000000000000))*(r02)*(x9511)*(x9517)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9511)*(x9513)))+(((r11)*(x9523)))+(((IkReal(-1.00000000000000))*(x9511)*(x9514)*(x9516)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x9510)*(x9511)))+(((IkReal(-1.00000000000000))*(x9519)))+(((IkReal(-1.00000000000000))*(r12)*(x9508)*(x9511)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x9524=((IkReal(1.00000000000000))*(cj0)); +IkReal x9525=((cj4)*(sj6)); +IkReal x9526=((sj0)*(sj4)); +IkReal x9527=((cj5)*(sj6)); +IkReal x9528=((sj4)*(sj5)); +IkReal x9529=((r12)*(sj5)); +IkReal x9530=((IkReal(0.374290000000000))*(cj5)); +IkReal x9531=((r02)*(sj0)); +IkReal x9532=((r20)*(sj4)); +IkReal x9533=((IkReal(1.00000000000000))*(sj0)); +IkReal x9534=((IkReal(1.00000000000000))*(cj5)); +IkReal x9535=((cj0)*(r10)); +IkReal x9536=((cj4)*(cj6)); +IkReal x9537=((r00)*(sj0)); +IkReal x9538=((cj6)*(r21)); +IkReal x9539=((IkReal(0.374290000000000))*(sj5)); +IkReal x9540=((cj0)*(r00)); +IkReal x9541=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9542=((cj0)*(r02)); +IkReal x9543=((cj5)*(sj4)); +IkReal x9544=((cj6)*(r01)); +IkReal x9545=((cj6)*(r11)); +IkReal x9546=((r01)*(sj0)); +IkReal x9547=((r10)*(sj0)); +IkReal x9548=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x9549=((sj6)*(x9539)); +IkReal x9550=((cj0)*(cj6)*(x9539)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x9538)))+(((IkReal(-1.00000000000000))*(r22)*(x9534)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((r22)*(x9528)))+(((r21)*(x9525)))+(((x9527)*(x9532)))+(((x9538)*(x9543)))+(((IkReal(-1.00000000000000))*(r20)*(x9536)))); +evalcond[3]=((((r20)*(x9549)))+(((IkReal(-0.0100000000000000))*(cj5)*(x9538)))+(((IkReal(-0.0100000000000000))*(r20)*(x9527)))+(((x9538)*(x9539)))+(((IkReal(-1.00000000000000))*(r22)*(x9541)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x9530)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x9536)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x9525)))+(((cj6)*(x9532)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x9533)*(x9536)))+(((x9525)*(x9546)))+(((x9535)*(x9536)))+(((IkReal(-1.00000000000000))*(r11)*(x9524)*(x9525)))+(((r00)*(x9526)*(x9527)))+(((cj5)*(x9526)*(x9544)))+(((r02)*(sj5)*(x9526)))+(((IkReal(-1.00000000000000))*(r12)*(x9524)*(x9528)))+(((IkReal(-1.00000000000000))*(x9524)*(x9543)*(x9545)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x9524)*(x9527)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x9526)*(x9534)*(x9545)))+(((IkReal(-1.00000000000000))*(x9524)*(x9543)*(x9544)))+(((IkReal(-1.00000000000000))*(x9526)*(x9529)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x9524)*(x9527)))+(((IkReal(-1.00000000000000))*(r11)*(x9525)*(x9533)))+(((IkReal(-1.00000000000000))*(r01)*(x9524)*(x9525)))+(((x9536)*(x9540)))+(((x9536)*(x9547)))+(((IkReal(-1.00000000000000))*(r10)*(x9526)*(x9527)))+(((IkReal(-1.00000000000000))*(r02)*(x9524)*(x9528)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x9535)*(x9549)))+(((sj0)*(x9539)*(x9544)))+(((IkReal(-0.0100000000000000))*(x9527)*(x9537)))+(((x9537)*(x9549)))+(((IkReal(-1.00000000000000))*(cj0)*(x9539)*(x9545)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9545)))+(((IkReal(-1.00000000000000))*(x9531)*(x9541)))+(((IkReal(0.0100000000000000))*(cj0)*(x9529)))+(((IkReal(-1.00000000000000))*(x9530)*(x9531)))+(((IkReal(0.0100000000000000))*(x9527)*(x9535)))+(((cj0)*(r12)*(x9530)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x9544)))+(((IkReal(-1.00000000000000))*(py)*(x9524)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x9539)*(x9544)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x9545)))+(((x9541)*(x9542)))+(((IkReal(0.0100000000000000))*(x9527)*(x9540)))+(((IkReal(-1.00000000000000))*(px)*(x9524)))+(((IkReal(0.0100000000000000))*(sj0)*(x9529)))+(((IkReal(-1.00000000000000))*(x9540)*(x9549)))+(((r12)*(sj0)*(x9530)))+(((IkReal(-1.00000000000000))*(x9547)*(x9549)))+(((IkReal(-1.00000000000000))*(py)*(x9533)))+(((x9530)*(x9542)))+(((IkReal(0.0100000000000000))*(x9527)*(x9547)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x9544)))+(((IkReal(-1.00000000000000))*(sj0)*(x9539)*(x9545)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9551=((sj0)*(sj5)); +IkReal x9552=((r00)*(sj6)); +IkReal x9553=((IkReal(1.00000000000000))*(cj5)); +IkReal x9554=((cj6)*(r11)); +IkReal x9555=((cj6)*(r01)); +IkReal x9556=((r10)*(sj6)); +IkReal x9557=((cj0)*(sj5)); +if( IKabs(((((x9551)*(x9555)))+(((IkReal(-1.00000000000000))*(x9556)*(x9557)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9553)))+(((x9551)*(x9552)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x9554)*(x9557))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x9552)*(x9557)))+(((x9555)*(x9557)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9553)))+(((x9551)*(x9554)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9553)))+(((x9551)*(x9556))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x9551)*(x9555)))+(((IkReal(-1.00000000000000))*(x9556)*(x9557)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9553)))+(((x9551)*(x9552)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x9554)*(x9557)))))+IKsqr(((((x9552)*(x9557)))+(((x9555)*(x9557)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9553)))+(((x9551)*(x9554)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9553)))+(((x9551)*(x9556)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x9551)*(x9555)))+(((IkReal(-1.00000000000000))*(x9556)*(x9557)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9553)))+(((x9551)*(x9552)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(x9554)*(x9557)))), ((((x9552)*(x9557)))+(((x9555)*(x9557)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9553)))+(((x9551)*(x9554)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9553)))+(((x9551)*(x9556))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x9558=IKcos(j3); +IkReal x9559=IKsin(j3); +IkReal x9560=((sj0)*(sj5)); +IkReal x9561=((r00)*(sj6)); +IkReal x9562=((cj6)*(sj0)); +IkReal x9563=((IkReal(1.00000000000000))*(cj4)); +IkReal x9564=((r00)*(sj4)); +IkReal x9565=((cj0)*(cj5)); +IkReal x9566=((cj5)*(sj0)); +IkReal x9567=((cj6)*(r11)); +IkReal x9568=((r10)*(sj6)); +IkReal x9569=((cj0)*(sj5)); +IkReal x9570=((r10)*(sj4)); +IkReal x9571=((cj4)*(cj5)*(r01)); +IkReal x9572=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x9573=((cj0)*(sj4)*(sj6)); +IkReal x9574=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((r12)*(x9565)))+(((IkReal(-1.00000000000000))*(x9559)))+(((IkReal(-1.00000000000000))*(x9568)*(x9569)))+(((x9560)*(x9561)))+(((IkReal(-1.00000000000000))*(r02)*(x9566)))+(((IkReal(-1.00000000000000))*(x9567)*(x9569)))+(((cj6)*(r01)*(x9560)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9560)*(x9567)))+(((r12)*(x9566)))+(((r02)*(x9565)))+(((IkReal(-1.00000000000000))*(x9561)*(x9569)))+(x9558)+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9569)))+(((IkReal(-1.00000000000000))*(x9560)*(x9568)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x9574)))+(((IkReal(-1.00000000000000))*(x9570)*(x9572)))+(((IkReal(-1.00000000000000))*(x9563)*(x9565)*(x9568)))+(x9558)+(((cj4)*(x9561)*(x9566)))+(((x9562)*(x9571)))+(((r11)*(x9573)))+(((cj4)*(r02)*(x9560)))+(((IkReal(-1.00000000000000))*(x9563)*(x9565)*(x9567)))+(((x9562)*(x9564)))+(((IkReal(-1.00000000000000))*(r12)*(x9563)*(x9569)))); +evalcond[3]=((((r01)*(x9573)))+(((IkReal(-1.00000000000000))*(x9564)*(x9572)))+(((IkReal(-1.00000000000000))*(x9563)*(x9566)*(x9568)))+(((r11)*(x9574)))+(((IkReal(-1.00000000000000))*(r02)*(x9563)*(x9569)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x9562)*(x9563)))+(x9559)+(((IkReal(-1.00000000000000))*(x9562)*(x9570)))+(((IkReal(-1.00000000000000))*(r12)*(x9560)*(x9563)))+(((IkReal(-1.00000000000000))*(x9561)*(x9563)*(x9565)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x9563)*(x9565)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9575=((cj0)*(cj5)); +IkReal x9576=((IkReal(1.00000000000000))*(cj0)); +IkReal x9577=((cj6)*(r11)); +IkReal x9578=((r10)*(sj6)); +IkReal x9579=((cj5)*(sj0)); +IkReal x9580=((r00)*(sj5)*(sj6)); +IkReal x9581=((cj6)*(r01)*(sj5)); +IkReal x9582=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r02)*(x9579)))+(((sj0)*(x9581)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9577)))+(((r12)*(x9575)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9578)))+(((sj0)*(x9580))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x9576)*(x9580)))+(((IkReal(-1.00000000000000))*(x9576)*(x9581)))+(((IkReal(-1.00000000000000))*(x9577)*(x9582)))+(((r02)*(x9575)))+(((IkReal(-1.00000000000000))*(x9578)*(x9582)))+(((r12)*(x9579))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r02)*(x9579)))+(((sj0)*(x9581)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9577)))+(((r12)*(x9575)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9578)))+(((sj0)*(x9580)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x9576)*(x9580)))+(((IkReal(-1.00000000000000))*(x9576)*(x9581)))+(((IkReal(-1.00000000000000))*(x9577)*(x9582)))+(((r02)*(x9575)))+(((IkReal(-1.00000000000000))*(x9578)*(x9582)))+(((r12)*(x9579)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r02)*(x9579)))+(((sj0)*(x9581)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9577)))+(((r12)*(x9575)))+(((IkReal(-1.00000000000000))*(sj5)*(x9576)*(x9578)))+(((sj0)*(x9580)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x9576)*(x9580)))+(((IkReal(-1.00000000000000))*(x9576)*(x9581)))+(((IkReal(-1.00000000000000))*(x9577)*(x9582)))+(((r02)*(x9575)))+(((IkReal(-1.00000000000000))*(x9578)*(x9582)))+(((r12)*(x9579))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9583=IKsin(j3); +IkReal x9584=IKcos(j3); +IkReal x9585=((sj0)*(sj5)); +IkReal x9586=((r00)*(sj6)); +IkReal x9587=((cj6)*(r01)); +IkReal x9588=((cj4)*(cj5)); +IkReal x9589=((IkReal(1.00000000000000))*(cj0)); +IkReal x9590=((cj5)*(r12)); +IkReal x9591=((IkReal(1.00000000000000))*(sj0)); +IkReal x9592=((cj6)*(r11)); +IkReal x9593=((cj5)*(r02)); +IkReal x9594=((IkReal(1.00000000000000))*(cj1)); +IkReal x9595=((cj6)*(sj4)); +IkReal x9596=((cj6)*(r21)); +IkReal x9597=((r20)*(sj6)); +IkReal x9598=((r10)*(sj6)); +IkReal x9599=((sj4)*(sj6)); +IkReal x9600=((cj4)*(r02)); +IkReal x9601=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9602=((IkReal(1.00000000000000))*(x9583)); +IkReal x9603=((cj0)*(x9599)); +evalcond[0]=((((sj5)*(x9596)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x9584)))+(((sj5)*(x9597)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x9599)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x9595)))+(((IkReal(-1.00000000000000))*(sj1)*(x9602)))+(((x9588)*(x9597)))+(((x9588)*(x9596)))); +evalcond[2]=((((x9585)*(x9586)))+(((IkReal(-1.00000000000000))*(x9602)))+(((IkReal(-1.00000000000000))*(sj5)*(x9589)*(x9592)))+(((IkReal(-1.00000000000000))*(sj5)*(x9589)*(x9598)))+(((cj0)*(x9590)))+(((IkReal(-1.00000000000000))*(x9591)*(x9593)))+(((x9585)*(x9587)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9585)*(x9592)))+(((IkReal(-1.00000000000000))*(x9584)*(x9594)))+(((IkReal(-1.00000000000000))*(sj5)*(x9587)*(x9589)))+(((IkReal(-1.00000000000000))*(sj5)*(x9586)*(x9589)))+(((IkReal(-1.00000000000000))*(x9585)*(x9598)))+(((sj0)*(x9590)))+(((cj0)*(x9593)))); +evalcond[4]=((((r00)*(sj0)*(x9595)))+(((IkReal(-1.00000000000000))*(x9588)*(x9589)*(x9592)))+(((IkReal(-1.00000000000000))*(r01)*(x9591)*(x9599)))+(((r11)*(x9603)))+(x9584)+(((IkReal(-1.00000000000000))*(x9588)*(x9589)*(x9598)))+(((sj0)*(x9586)*(x9588)))+(((IkReal(-1.00000000000000))*(r10)*(x9589)*(x9595)))+(((sj0)*(x9587)*(x9588)))+(((x9585)*(x9600)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9589)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9585)*(x9601)))+(((IkReal(-1.00000000000000))*(x9587)*(x9588)*(x9589)))+(((IkReal(-1.00000000000000))*(r00)*(x9589)*(x9595)))+(((IkReal(-1.00000000000000))*(x9583)*(x9594)))+(((r11)*(sj0)*(x9599)))+(((r01)*(x9603)))+(((IkReal(-1.00000000000000))*(r10)*(x9591)*(x9595)))+(((IkReal(-1.00000000000000))*(x9586)*(x9588)*(x9589)))+(((IkReal(-1.00000000000000))*(x9588)*(x9591)*(x9592)))+(((IkReal(-1.00000000000000))*(sj5)*(x9589)*(x9600)))+(((IkReal(-1.00000000000000))*(x9588)*(x9591)*(x9598)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9604=((sj5)*(sj6)); +IkReal x9605=((cj6)*(sj5)); +IkReal x9606=((IkReal(1.00000000000000))*(cj0)); +IkReal x9607=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r01)*(sj0)*(x9605)))+(((r00)*(sj0)*(x9604)))+(((IkReal(-1.00000000000000))*(r10)*(x9604)*(x9606)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9607)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x9605)*(x9606))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x9607)))+(((r21)*(x9605)))+(((r20)*(x9604))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r01)*(sj0)*(x9605)))+(((r00)*(sj0)*(x9604)))+(((IkReal(-1.00000000000000))*(r10)*(x9604)*(x9606)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9607)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x9605)*(x9606)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x9607)))+(((r21)*(x9605)))+(((r20)*(x9604)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r01)*(sj0)*(x9605)))+(((r00)*(sj0)*(x9604)))+(((IkReal(-1.00000000000000))*(r10)*(x9604)*(x9606)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9607)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r11)*(x9605)*(x9606)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x9607)))+(((r21)*(x9605)))+(((r20)*(x9604))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9608=IKsin(j3); +IkReal x9609=IKcos(j3); +IkReal x9610=((sj0)*(sj5)); +IkReal x9611=((r00)*(sj6)); +IkReal x9612=((cj6)*(r01)); +IkReal x9613=((cj4)*(cj5)); +IkReal x9614=((IkReal(1.00000000000000))*(cj0)); +IkReal x9615=((cj5)*(r12)); +IkReal x9616=((IkReal(1.00000000000000))*(sj0)); +IkReal x9617=((cj6)*(r11)); +IkReal x9618=((cj5)*(r02)); +IkReal x9619=((IkReal(1.00000000000000))*(cj1)); +IkReal x9620=((cj6)*(sj4)); +IkReal x9621=((cj6)*(r21)); +IkReal x9622=((r20)*(sj6)); +IkReal x9623=((r10)*(sj6)); +IkReal x9624=((sj4)*(sj6)); +IkReal x9625=((cj4)*(r02)); +IkReal x9626=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9627=((IkReal(1.00000000000000))*(x9608)); +IkReal x9628=((cj0)*(x9624)); +evalcond[0]=((((sj5)*(x9621)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9622)))+(((IkReal(-1.00000000000000))*(sj1)*(x9609)))); +evalcond[1]=((((x9613)*(x9621)))+(((r20)*(x9620)))+(((cj4)*(r22)*(sj5)))+(((x9613)*(x9622)))+(((IkReal(-1.00000000000000))*(sj1)*(x9627)))+(((IkReal(-1.00000000000000))*(r21)*(x9624)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9616)*(x9618)))+(((x9610)*(x9611)))+(((IkReal(-1.00000000000000))*(sj5)*(x9614)*(x9617)))+(((cj0)*(x9615)))+(((IkReal(-1.00000000000000))*(sj5)*(x9614)*(x9623)))+(((x9610)*(x9612)))+(((IkReal(-1.00000000000000))*(x9627)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9609)*(x9619)))+(((cj0)*(x9618)))+(((IkReal(-1.00000000000000))*(sj5)*(x9611)*(x9614)))+(((IkReal(-1.00000000000000))*(sj5)*(x9612)*(x9614)))+(((IkReal(-1.00000000000000))*(x9610)*(x9623)))+(((sj0)*(x9615)))+(((IkReal(-1.00000000000000))*(x9610)*(x9617)))); +evalcond[4]=((((x9610)*(x9625)))+(((sj0)*(x9611)*(x9613)))+(((r11)*(x9628)))+(((r00)*(sj0)*(x9620)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9614)))+(((IkReal(-1.00000000000000))*(r01)*(x9616)*(x9624)))+(((IkReal(-1.00000000000000))*(x9613)*(x9614)*(x9617)))+(((IkReal(-1.00000000000000))*(r10)*(x9614)*(x9620)))+(((IkReal(-1.00000000000000))*(x9613)*(x9614)*(x9623)))+(((sj0)*(x9612)*(x9613)))+(x9609)); +evalcond[5]=((((r11)*(sj0)*(x9624)))+(((IkReal(-1.00000000000000))*(r00)*(x9614)*(x9620)))+(((IkReal(-1.00000000000000))*(x9613)*(x9616)*(x9617)))+(((IkReal(-1.00000000000000))*(x9611)*(x9613)*(x9614)))+(((IkReal(-1.00000000000000))*(x9610)*(x9626)))+(((IkReal(-1.00000000000000))*(r10)*(x9616)*(x9620)))+(((IkReal(-1.00000000000000))*(x9613)*(x9616)*(x9623)))+(((r01)*(x9628)))+(((IkReal(-1.00000000000000))*(sj5)*(x9614)*(x9625)))+(((IkReal(-1.00000000000000))*(x9612)*(x9613)*(x9614)))+(((IkReal(-1.00000000000000))*(x9608)*(x9619)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9629=((r20)*(sj6)); +IkReal x9630=((cj4)*(cj5)); +IkReal x9631=((cj6)*(r21)); +if( IKabs(((gconst17)*(((((x9629)*(x9630)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x9630)*(x9631)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst17)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9629)))+(((sj5)*(x9631))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst17)*(((((x9629)*(x9630)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x9630)*(x9631)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))), ((gconst17)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x9629)))+(((sj5)*(x9631))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x9632=IKsin(j3); +IkReal x9633=IKcos(j3); +IkReal x9634=((sj0)*(sj5)); +IkReal x9635=((r00)*(sj6)); +IkReal x9636=((cj6)*(r01)); +IkReal x9637=((cj4)*(cj5)); +IkReal x9638=((IkReal(1.00000000000000))*(cj0)); +IkReal x9639=((cj5)*(r12)); +IkReal x9640=((IkReal(1.00000000000000))*(sj0)); +IkReal x9641=((cj6)*(r11)); +IkReal x9642=((cj5)*(r02)); +IkReal x9643=((IkReal(1.00000000000000))*(cj1)); +IkReal x9644=((cj6)*(sj4)); +IkReal x9645=((cj6)*(r21)); +IkReal x9646=((r20)*(sj6)); +IkReal x9647=((r10)*(sj6)); +IkReal x9648=((sj4)*(sj6)); +IkReal x9649=((cj4)*(r02)); +IkReal x9650=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x9651=((IkReal(1.00000000000000))*(x9632)); +IkReal x9652=((cj0)*(x9648)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x9633)))+(((sj5)*(x9646)))+(((sj5)*(x9645)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((r20)*(x9644)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x9648)))+(((x9637)*(x9645)))+(((IkReal(-1.00000000000000))*(sj1)*(x9651)))+(((x9637)*(x9646)))); +evalcond[2]=((((x9634)*(x9636)))+(((IkReal(-1.00000000000000))*(x9640)*(x9642)))+(((IkReal(-1.00000000000000))*(x9651)))+(((x9634)*(x9635)))+(((IkReal(-1.00000000000000))*(sj5)*(x9638)*(x9641)))+(((cj0)*(x9639)))+(((IkReal(-1.00000000000000))*(sj5)*(x9638)*(x9647)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x9636)*(x9638)))+(((sj0)*(x9639)))+(((IkReal(-1.00000000000000))*(sj5)*(x9635)*(x9638)))+(((IkReal(-1.00000000000000))*(x9634)*(x9647)))+(((IkReal(-1.00000000000000))*(x9633)*(x9643)))+(((IkReal(-1.00000000000000))*(x9634)*(x9641)))+(((cj0)*(x9642)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9637)*(x9638)*(x9641)))+(((IkReal(-1.00000000000000))*(x9637)*(x9638)*(x9647)))+(((IkReal(-1.00000000000000))*(r10)*(x9638)*(x9644)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x9638)))+(x9633)+(((sj0)*(x9636)*(x9637)))+(((x9634)*(x9649)))+(((r00)*(sj0)*(x9644)))+(((sj0)*(x9635)*(x9637)))+(((r11)*(x9652)))+(((IkReal(-1.00000000000000))*(r01)*(x9640)*(x9648)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x9638)*(x9649)))+(((IkReal(-1.00000000000000))*(x9636)*(x9637)*(x9638)))+(((r01)*(x9652)))+(((IkReal(-1.00000000000000))*(x9637)*(x9640)*(x9641)))+(((IkReal(-1.00000000000000))*(x9634)*(x9650)))+(((IkReal(-1.00000000000000))*(x9637)*(x9640)*(x9647)))+(((IkReal(-1.00000000000000))*(x9635)*(x9637)*(x9638)))+(((IkReal(-1.00000000000000))*(x9632)*(x9643)))+(((IkReal(-1.00000000000000))*(r10)*(x9640)*(x9644)))+(((IkReal(-1.00000000000000))*(r00)*(x9638)*(x9644)))+(((r11)*(sj0)*(x9648)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +IkReal x9653=((IkReal(0.374290000000000))*(sj5)); +IkReal x9654=((cj0)*(sj6)); +IkReal x9655=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9656=((cj0)*(r02)); +IkReal x9657=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9658=((IkReal(1.00000000000000))*(py)); +IkReal x9659=((r01)*(sj0)); +IkReal x9660=((r20)*(sj6)); +IkReal x9661=((r11)*(sj0)); +IkReal x9662=((IkReal(0.374290000000000))*(cj5)); +IkReal x9663=((cj0)*(r12)); +IkReal x9664=((sj0)*(x9662)); +IkReal x9665=((cj6)*(x9657)); +IkReal x9666=((r10)*(sj0)*(sj6)); +IkReal x9667=((r00)*(sj0)*(sj6)); +IkReal x9668=((cj0)*(cj6)*(x9653)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9657)*(x9660)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x9655)))+(((IkReal(-1.00000000000000))*(r22)*(x9662)))+(pz)+(((IkReal(-1.00000000000000))*(r21)*(x9665)))+(((x9653)*(x9660)))+(((cj6)*(r21)*(x9653)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((r10)*(x9654)*(x9657)))+(((cj0)*(r11)*(x9665)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9655)))+(((IkReal(-1.00000000000000))*(cj0)*(x9658)))+(((IkReal(-1.00000000000000))*(x9657)*(x9667)))+(((IkReal(-1.00000000000000))*(r02)*(x9664)))+(((x9662)*(x9663)))+(((cj6)*(x9653)*(x9659)))+(((x9653)*(x9667)))+(((x9655)*(x9663)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(x9668)))+(((IkReal(-1.00000000000000))*(x9659)*(x9665)))+(((IkReal(-1.00000000000000))*(r10)*(x9653)*(x9654)))); +evalcond[3]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x9653)*(x9654)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x9655)*(x9656)))+(((IkReal(-1.00000000000000))*(x9653)*(x9666)))+(((x9656)*(x9662)))+(((cj0)*(r01)*(x9665)))+(((IkReal(-1.00000000000000))*(cj6)*(x9653)*(x9661)))+(((IkReal(-1.00000000000000))*(sj0)*(x9658)))+(((x9661)*(x9665)))+(((r12)*(sj0)*(x9655)))+(((x9657)*(x9666)))+(((IkReal(-1.00000000000000))*(r01)*(x9668)))+(((IkReal(0.364420000000000))*(cj1)))+(((r00)*(x9654)*(x9657)))+(((r12)*(x9664)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst26; +IkReal x9669=(cj6)*(cj6); +IkReal x9670=(sj6)*(sj6); +IkReal x9671=((IkReal(1.00000000000000))*(r01)); +IkReal x9672=((sj0)*(sj5)); +IkReal x9673=((cj6)*(r22)); +IkReal x9674=((r21)*(sj6)); +IkReal x9675=((r00)*(r21)); +IkReal x9676=((cj0)*(sj5)); +IkReal x9677=((cj6)*(r20)); +IkReal x9678=((r22)*(sj6)); +IkReal x9679=((cj0)*(cj5)); +IkReal x9680=((IkReal(1.00000000000000))*(r10)); +IkReal x9681=((cj5)*(sj0)); +IkReal x9682=((r20)*(x9670)); +IkReal x9683=((x9669)*(x9681)); +gconst26=IKsign(((((x9675)*(x9683)))+(((IkReal(-1.00000000000000))*(r02)*(x9672)*(x9677)))+(((IkReal(-1.00000000000000))*(r21)*(x9670)*(x9679)*(x9680)))+(((r02)*(x9672)*(x9674)))+(((IkReal(-1.00000000000000))*(x9671)*(x9672)*(x9678)))+(((r00)*(x9672)*(x9673)))+(((x9670)*(x9675)*(x9681)))+(((r11)*(r20)*(x9669)*(x9679)))+(((IkReal(-1.00000000000000))*(r12)*(x9674)*(x9676)))+(((IkReal(-1.00000000000000))*(r20)*(x9671)*(x9683)))+(((IkReal(-1.00000000000000))*(x9671)*(x9681)*(x9682)))+(((r12)*(x9676)*(x9677)))+(((r11)*(x9679)*(x9682)))+(((IkReal(-1.00000000000000))*(r21)*(x9669)*(x9679)*(x9680)))+(((r11)*(x9676)*(x9678)))+(((IkReal(-1.00000000000000))*(x9673)*(x9676)*(x9680))))); +IkReal x9684=(cj6)*(cj6); +IkReal x9685=(sj6)*(sj6); +IkReal x9686=((IkReal(1.00000000000000))*(r01)); +IkReal x9687=((sj0)*(sj5)); +IkReal x9688=((cj6)*(r22)); +IkReal x9689=((r21)*(sj6)); +IkReal x9690=((r00)*(r21)); +IkReal x9691=((cj0)*(sj5)); +IkReal x9692=((cj6)*(r20)); +IkReal x9693=((r22)*(sj6)); +IkReal x9694=((cj0)*(cj5)); +IkReal x9695=((IkReal(1.00000000000000))*(r10)); +IkReal x9696=((cj5)*(sj0)); +IkReal x9697=((r20)*(x9685)); +IkReal x9698=((x9684)*(x9696)); +dummyeval[0]=((((r00)*(x9687)*(x9688)))+(((IkReal(-1.00000000000000))*(x9686)*(x9687)*(x9693)))+(((r11)*(x9694)*(x9697)))+(((IkReal(-1.00000000000000))*(r12)*(x9689)*(x9691)))+(((IkReal(-1.00000000000000))*(r20)*(x9686)*(x9698)))+(((IkReal(-1.00000000000000))*(x9686)*(x9696)*(x9697)))+(((r11)*(r20)*(x9684)*(x9694)))+(((IkReal(-1.00000000000000))*(r21)*(x9684)*(x9694)*(x9695)))+(((IkReal(-1.00000000000000))*(x9688)*(x9691)*(x9695)))+(((IkReal(-1.00000000000000))*(r21)*(x9685)*(x9694)*(x9695)))+(((x9690)*(x9698)))+(((r02)*(x9687)*(x9689)))+(((r11)*(x9691)*(x9693)))+(((r12)*(x9691)*(x9692)))+(((x9685)*(x9690)*(x9696)))+(((IkReal(-1.00000000000000))*(r02)*(x9687)*(x9692)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst27; +IkReal x9699=(cj6)*(cj6); +IkReal x9700=(sj6)*(sj6); +IkReal x9701=((sj5)*(sj6)); +IkReal x9702=((IkReal(1.00000000000000))*(cj0)); +IkReal x9703=((cj6)*(sj5)); +IkReal x9704=((r20)*(sj0)); +IkReal x9705=((cj0)*(r20)); +IkReal x9706=((r00)*(r21)); +IkReal x9707=((r22)*(sj0)); +IkReal x9708=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x9709=((cj5)*(x9700)); +IkReal x9710=((cj5)*(x9699)); +gconst27=IKsign(((((IkReal(-1.00000000000000))*(r10)*(x9708)*(x9710)))+(((IkReal(-1.00000000000000))*(x9702)*(x9706)*(x9709)))+(((r02)*(x9703)*(x9705)))+(((IkReal(-1.00000000000000))*(r12)*(x9701)*(x9708)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x9701)*(x9702)))+(((r01)*(x9705)*(x9709)))+(((r11)*(x9701)*(x9707)))+(((r12)*(x9703)*(x9704)))+(((r11)*(x9704)*(x9710)))+(((IkReal(-1.00000000000000))*(r10)*(x9703)*(x9707)))+(((IkReal(-1.00000000000000))*(x9702)*(x9706)*(x9710)))+(((IkReal(-1.00000000000000))*(r00)*(r22)*(x9702)*(x9703)))+(((r01)*(x9705)*(x9710)))+(((r11)*(x9704)*(x9709)))+(((IkReal(-1.00000000000000))*(r10)*(x9708)*(x9709)))+(((cj0)*(r01)*(r22)*(x9701))))); +IkReal x9711=(cj6)*(cj6); +IkReal x9712=(sj6)*(sj6); +IkReal x9713=((sj5)*(sj6)); +IkReal x9714=((IkReal(1.00000000000000))*(cj0)); +IkReal x9715=((cj6)*(sj5)); +IkReal x9716=((r20)*(sj0)); +IkReal x9717=((cj0)*(r20)); +IkReal x9718=((r00)*(r21)); +IkReal x9719=((r22)*(sj0)); +IkReal x9720=((IkReal(1.00000000000000))*(r21)*(sj0)); +IkReal x9721=((cj5)*(x9712)); +IkReal x9722=((cj5)*(x9711)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(r00)*(r22)*(x9714)*(x9715)))+(((r02)*(x9715)*(x9717)))+(((IkReal(-1.00000000000000))*(r12)*(x9713)*(x9720)))+(((IkReal(-1.00000000000000))*(r10)*(x9715)*(x9719)))+(((r11)*(x9716)*(x9721)))+(((r11)*(x9716)*(x9722)))+(((r01)*(x9717)*(x9722)))+(((cj0)*(r01)*(r22)*(x9713)))+(((r11)*(x9713)*(x9719)))+(((r12)*(x9715)*(x9716)))+(((r01)*(x9717)*(x9721)))+(((IkReal(-1.00000000000000))*(x9714)*(x9718)*(x9721)))+(((IkReal(-1.00000000000000))*(r02)*(r21)*(x9713)*(x9714)))+(((IkReal(-1.00000000000000))*(r10)*(x9720)*(x9722)))+(((IkReal(-1.00000000000000))*(x9714)*(x9718)*(x9722)))+(((IkReal(-1.00000000000000))*(r10)*(x9720)*(x9721)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[5]; +IkReal x9723=((cj5)*(r22)); +IkReal x9724=((IkReal(0.374290000000000))*(sj5)); +IkReal x9725=((cj0)*(sj6)); +IkReal x9726=((cj6)*(r21)); +IkReal x9727=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9728=((cj0)*(r02)); +IkReal x9729=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9730=((IkReal(1.00000000000000))*(py)); +IkReal x9731=((r01)*(sj0)); +IkReal x9732=((r20)*(sj6)); +IkReal x9733=((r11)*(sj0)); +IkReal x9734=((IkReal(0.374290000000000))*(cj5)); +IkReal x9735=((cj0)*(r12)); +IkReal x9736=((sj0)*(x9734)); +IkReal x9737=((cj6)*(x9729)); +IkReal x9738=((r10)*(sj0)*(sj6)); +IkReal x9739=((r00)*(sj0)*(sj6)); +IkReal x9740=((cj0)*(cj6)*(x9724)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x9732)))+(((sj5)*(x9726)))+(((IkReal(-1.00000000000000))*(x9723)))); +evalcond[2]=((((x9724)*(x9732)))+(((IkReal(-1.00000000000000))*(x9726)*(x9729)))+(((IkReal(-0.374290000000000))*(x9723)))+(((IkReal(-1.00000000000000))*(r22)*(x9727)))+(pz)+(((IkReal(-1.00000000000000))*(x9729)*(x9732)))+(((x9724)*(x9726)))); +evalcond[3]=((IkReal(-0.0690000000000000))+(((cj0)*(r11)*(x9737)))+(((IkReal(-1.00000000000000))*(x9729)*(x9739)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9727)))+(((x9734)*(x9735)))+(((x9724)*(x9739)))+(((x9727)*(x9735)))+(((IkReal(-1.00000000000000))*(r11)*(x9740)))+(((IkReal(-1.00000000000000))*(r02)*(x9736)))+(((IkReal(-1.00000000000000))*(r10)*(x9724)*(x9725)))+(((r10)*(x9725)*(x9729)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x9731)*(x9737)))+(((IkReal(-1.00000000000000))*(cj0)*(x9730)))+(((cj6)*(x9724)*(x9731)))); +evalcond[4]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x9727)*(x9728)))+(((IkReal(-1.00000000000000))*(x9724)*(x9738)))+(((IkReal(-1.00000000000000))*(cj6)*(x9724)*(x9733)))+(((x9729)*(x9738)))+(((IkReal(-1.00000000000000))*(r01)*(x9740)))+(((r12)*(x9736)))+(((x9728)*(x9734)))+(((r12)*(sj0)*(x9727)))+(((IkReal(-1.00000000000000))*(r00)*(x9724)*(x9725)))+(((cj0)*(r01)*(x9737)))+(((x9733)*(x9737)))+(((IkReal(-1.00000000000000))*(sj0)*(x9730)))+(((r00)*(x9725)*(x9729)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9741=((cj5)*(r02)); +IkReal x9742=((cj0)*(sj5)); +IkReal x9743=((r10)*(sj6)); +IkReal x9744=((IkReal(1.00000000000000))*(cj6)); +IkReal x9745=((sj0)*(sj5)); +IkReal x9746=((cj5)*(r12)); +IkReal x9747=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(x9745)*(x9747)))+(((IkReal(-1.00000000000000))*(cj0)*(x9746)))+(((cj6)*(r11)*(x9742)))+(((x9742)*(x9743)))+(((IkReal(-1.00000000000000))*(r01)*(x9744)*(x9745)))+(((sj0)*(x9741))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x9742)*(x9747)))+(((cj0)*(x9741)))+(((sj0)*(x9746)))+(((IkReal(-1.00000000000000))*(r11)*(x9744)*(x9745)))+(((IkReal(-1.00000000000000))*(x9743)*(x9745)))+(((IkReal(-1.00000000000000))*(r01)*(x9742)*(x9744))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x9745)*(x9747)))+(((IkReal(-1.00000000000000))*(cj0)*(x9746)))+(((cj6)*(r11)*(x9742)))+(((x9742)*(x9743)))+(((IkReal(-1.00000000000000))*(r01)*(x9744)*(x9745)))+(((sj0)*(x9741)))))+IKsqr(((((IkReal(-1.00000000000000))*(x9742)*(x9747)))+(((cj0)*(x9741)))+(((sj0)*(x9746)))+(((IkReal(-1.00000000000000))*(r11)*(x9744)*(x9745)))+(((IkReal(-1.00000000000000))*(x9743)*(x9745)))+(((IkReal(-1.00000000000000))*(r01)*(x9742)*(x9744)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x9745)*(x9747)))+(((IkReal(-1.00000000000000))*(cj0)*(x9746)))+(((cj6)*(r11)*(x9742)))+(((x9742)*(x9743)))+(((IkReal(-1.00000000000000))*(r01)*(x9744)*(x9745)))+(((sj0)*(x9741)))), ((((IkReal(-1.00000000000000))*(x9742)*(x9747)))+(((cj0)*(x9741)))+(((sj0)*(x9746)))+(((IkReal(-1.00000000000000))*(r11)*(x9744)*(x9745)))+(((IkReal(-1.00000000000000))*(x9743)*(x9745)))+(((IkReal(-1.00000000000000))*(r01)*(x9742)*(x9744))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x9748=((cj0)*(cj5)); +IkReal x9749=((IkReal(1.00000000000000))*(cj0)); +IkReal x9750=((cj6)*(r11)); +IkReal x9751=((r10)*(sj6)); +IkReal x9752=((cj5)*(sj0)); +IkReal x9753=((r00)*(sj5)*(sj6)); +IkReal x9754=((cj6)*(r01)*(sj5)); +IkReal x9755=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x9752)))+(((sj0)*(x9753)))+(((sj0)*(x9754)))+(((IkReal(-1.00000000000000))*(sj5)*(x9749)*(x9751)))+(((IkReal(-1.00000000000000))*(sj5)*(x9749)*(x9750)))+(IKsin(j3))+(((r12)*(x9748)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9751)*(x9755)))+(((IkReal(-1.00000000000000))*(x9750)*(x9755)))+(((r12)*(x9752)))+(((IkReal(-1.00000000000000))*(IKcos(j3))))+(((IkReal(-1.00000000000000))*(x9749)*(x9753)))+(((r02)*(x9748)))+(((IkReal(-1.00000000000000))*(x9749)*(x9754)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst33; +IkReal x9756=(r21)*(r21); +IkReal x9757=(cj5)*(cj5); +IkReal x9758=(sj6)*(sj6); +IkReal x9759=(cj6)*(cj6); +IkReal x9760=(r20)*(r20); +IkReal x9761=((cj6)*(r21)); +IkReal x9762=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x9763=((cj5)*(r22)*(sj5)); +IkReal x9764=((IkReal(1.00000000000000))*(x9758)); +IkReal x9765=((IkReal(1.00000000000000))*(x9759)); +gconst33=IKsign(((((IkReal(-2.00000000000000))*(x9761)*(x9763)))+(((IkReal(-1.00000000000000))*(x9757)*(x9760)*(x9764)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((x9761)*(x9762)))+(((IkReal(-1.00000000000000))*(x9760)*(x9765)))+(((IkReal(-1.00000000000000))*(x9756)*(x9757)*(x9765)))+(((IkReal(-1.00000000000000))*(x9757)*(x9761)*(x9762)))+(((IkReal(-1.00000000000000))*(x9756)*(x9764)))+(((IkReal(-1.00000000000000))*(x9762)*(x9763))))); +IkReal x9766=(r21)*(r21); +IkReal x9767=(cj5)*(cj5); +IkReal x9768=(sj6)*(sj6); +IkReal x9769=(cj6)*(cj6); +IkReal x9770=(r20)*(r20); +IkReal x9771=((cj6)*(r21)); +IkReal x9772=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x9773=((cj5)*(r22)*(sj5)); +IkReal x9774=((IkReal(1.00000000000000))*(x9768)); +IkReal x9775=((IkReal(1.00000000000000))*(x9769)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x9772)*(x9773)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x9766)*(x9767)*(x9775)))+(((IkReal(-1.00000000000000))*(x9770)*(x9775)))+(((IkReal(-1.00000000000000))*(x9766)*(x9774)))+(((IkReal(-1.00000000000000))*(x9767)*(x9770)*(x9774)))+(((IkReal(-2.00000000000000))*(x9771)*(x9773)))+(((IkReal(-1.00000000000000))*(x9767)*(x9771)*(x9772)))+(((x9771)*(x9772)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst34; +IkReal x9776=(cj6)*(cj6); +IkReal x9777=(sj6)*(sj6); +IkReal x9778=((IkReal(1.00000000000000))*(r01)); +IkReal x9779=((sj0)*(sj5)); +IkReal x9780=((cj6)*(r22)); +IkReal x9781=((r21)*(sj6)); +IkReal x9782=((r00)*(r21)); +IkReal x9783=((cj0)*(sj5)); +IkReal x9784=((cj6)*(r20)); +IkReal x9785=((r22)*(sj6)); +IkReal x9786=((cj0)*(cj5)); +IkReal x9787=((IkReal(1.00000000000000))*(r10)); +IkReal x9788=((cj5)*(sj0)); +IkReal x9789=((r20)*(x9777)); +IkReal x9790=((x9776)*(x9788)); +gconst34=IKsign(((((r00)*(x9779)*(x9780)))+(((r11)*(r20)*(x9776)*(x9786)))+(((r12)*(x9783)*(x9784)))+(((IkReal(-1.00000000000000))*(r21)*(x9777)*(x9786)*(x9787)))+(((IkReal(-1.00000000000000))*(x9780)*(x9783)*(x9787)))+(((IkReal(-1.00000000000000))*(x9778)*(x9788)*(x9789)))+(((r02)*(x9779)*(x9781)))+(((IkReal(-1.00000000000000))*(r20)*(x9778)*(x9790)))+(((r11)*(x9786)*(x9789)))+(((IkReal(-1.00000000000000))*(r12)*(x9781)*(x9783)))+(((IkReal(-1.00000000000000))*(x9778)*(x9779)*(x9785)))+(((x9777)*(x9782)*(x9788)))+(((r11)*(x9783)*(x9785)))+(((IkReal(-1.00000000000000))*(r21)*(x9776)*(x9786)*(x9787)))+(((x9782)*(x9790)))+(((IkReal(-1.00000000000000))*(r02)*(x9779)*(x9784))))); +IkReal x9791=(cj6)*(cj6); +IkReal x9792=(sj6)*(sj6); +IkReal x9793=((IkReal(1.00000000000000))*(r01)); +IkReal x9794=((sj0)*(sj5)); +IkReal x9795=((cj6)*(r22)); +IkReal x9796=((r21)*(sj6)); +IkReal x9797=((r00)*(r21)); +IkReal x9798=((cj0)*(sj5)); +IkReal x9799=((cj6)*(r20)); +IkReal x9800=((r22)*(sj6)); +IkReal x9801=((cj0)*(cj5)); +IkReal x9802=((IkReal(1.00000000000000))*(r10)); +IkReal x9803=((cj5)*(sj0)); +IkReal x9804=((r20)*(x9792)); +IkReal x9805=((x9791)*(x9803)); +dummyeval[0]=((((r12)*(x9798)*(x9799)))+(((r00)*(x9794)*(x9795)))+(((r11)*(x9801)*(x9804)))+(((IkReal(-1.00000000000000))*(r21)*(x9791)*(x9801)*(x9802)))+(((IkReal(-1.00000000000000))*(r20)*(x9793)*(x9805)))+(((r11)*(x9798)*(x9800)))+(((IkReal(-1.00000000000000))*(x9793)*(x9794)*(x9800)))+(((x9797)*(x9805)))+(((IkReal(-1.00000000000000))*(r12)*(x9796)*(x9798)))+(((r11)*(r20)*(x9791)*(x9801)))+(((IkReal(-1.00000000000000))*(r21)*(x9792)*(x9801)*(x9802)))+(((IkReal(-1.00000000000000))*(x9795)*(x9798)*(x9802)))+(((x9792)*(x9797)*(x9803)))+(((r02)*(x9794)*(x9796)))+(((IkReal(-1.00000000000000))*(x9793)*(x9803)*(x9804)))+(((IkReal(-1.00000000000000))*(r02)*(x9794)*(x9799)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x9806=((sj0)*(sj6)); +IkReal x9807=((cj0)*(r10)); +IkReal x9808=((IkReal(1.00000000000000))*(cj5)); +IkReal x9809=((cj6)*(sj0)); +IkReal x9810=((cj0)*(r11)); +if( IKabs(((gconst34)*(((((cj6)*(x9807)))+(((IkReal(-1.00000000000000))*(sj6)*(x9810)))+(((IkReal(-1.00000000000000))*(r00)*(x9809)))+(((r01)*(x9806))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst34)*(((((IkReal(-1.00000000000000))*(r00)*(x9806)*(x9808)))+(((cj5)*(sj6)*(x9807)))+(((IkReal(-1.00000000000000))*(r01)*(x9808)*(x9809)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x9810))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst34)*(((((cj6)*(x9807)))+(((IkReal(-1.00000000000000))*(sj6)*(x9810)))+(((IkReal(-1.00000000000000))*(r00)*(x9809)))+(((r01)*(x9806)))))), ((gconst34)*(((((IkReal(-1.00000000000000))*(r00)*(x9806)*(x9808)))+(((cj5)*(sj6)*(x9807)))+(((IkReal(-1.00000000000000))*(r01)*(x9808)*(x9809)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(cj6)*(x9810))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x9811=IKsin(j4); +IkReal x9812=IKcos(j4); +IkReal x9813=((r22)*(sj5)); +IkReal x9814=((IkReal(1.00000000000000))*(cj6)); +IkReal x9815=((IkReal(1.00000000000000))*(cj0)); +IkReal x9816=((cj5)*(r11)); +IkReal x9817=((cj5)*(cj6)); +IkReal x9818=((r11)*(sj6)); +IkReal x9819=((IkReal(1.00000000000000))*(sj6)); +IkReal x9820=((cj6)*(r00)); +IkReal x9821=((r12)*(sj5)); +IkReal x9822=((r02)*(sj5)); +IkReal x9823=((cj6)*(r10)); +IkReal x9824=((cj5)*(sj6)); +IkReal x9825=((cj5)*(r01)); +IkReal x9826=((sj0)*(x9811)); +IkReal x9827=((r00)*(x9824)); +IkReal x9828=((cj0)*(x9811)); +IkReal x9829=((sj0)*(x9812)); +IkReal x9830=((r20)*(x9812)); +IkReal x9831=((cj0)*(x9812)); +IkReal x9832=((r21)*(x9811)); +IkReal x9833=((r21)*(x9812)); +IkReal x9834=((r20)*(x9811)); +IkReal x9835=((x9812)*(x9821)); +IkReal x9836=((r01)*(sj6)*(x9812)); +IkReal x9837=((cj5)*(r10)*(x9819)); +evalcond[0]=((IkReal(1.00000000000000))+(((sj6)*(x9833)))+(((x9811)*(x9813)))+(((x9824)*(x9834)))+(((IkReal(-1.00000000000000))*(x9814)*(x9830)))+(((x9817)*(x9832)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9819)*(x9832)))+(((cj6)*(x9834)))+(((x9817)*(x9833)))+(((x9812)*(x9813)))+(((x9824)*(x9830)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r10)*(x9811)*(x9815)*(x9824)))+(((IkReal(-1.00000000000000))*(r00)*(x9814)*(x9829)))+(((x9826)*(x9827)))+(((IkReal(-1.00000000000000))*(x9814)*(x9816)*(x9828)))+(((r01)*(sj6)*(x9829)))+(((r01)*(x9817)*(x9826)))+(((x9822)*(x9826)))+(((IkReal(-1.00000000000000))*(x9812)*(x9815)*(x9818)))+(((IkReal(-1.00000000000000))*(x9811)*(x9815)*(x9821)))+(((x9823)*(x9831)))); +evalcond[3]=((((x9820)*(x9826)))+(((IkReal(-1.00000000000000))*(r01)*(x9819)*(x9826)))+(((r01)*(x9817)*(x9829)))+(((IkReal(-1.00000000000000))*(r10)*(x9812)*(x9815)*(x9824)))+(((x9822)*(x9829)))+(((IkReal(-1.00000000000000))*(x9814)*(x9816)*(x9831)))+(((IkReal(-1.00000000000000))*(r10)*(x9814)*(x9828)))+(((x9827)*(x9829)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x9818)*(x9828)))+(((IkReal(-1.00000000000000))*(x9815)*(x9835)))); +evalcond[4]=((((x9820)*(x9831)))+(((IkReal(-1.00000000000000))*(x9814)*(x9816)*(x9826)))+(((IkReal(-1.00000000000000))*(x9811)*(x9815)*(x9822)))+(((IkReal(-1.00000000000000))*(x9818)*(x9829)))+(((IkReal(-1.00000000000000))*(x9821)*(x9826)))+(((x9823)*(x9829)))+(((IkReal(-1.00000000000000))*(x9814)*(x9825)*(x9828)))+(((IkReal(-1.00000000000000))*(x9815)*(x9836)))+(((IkReal(-1.00000000000000))*(x9826)*(x9837)))+(((IkReal(-1.00000000000000))*(x9811)*(x9815)*(x9827)))); +evalcond[5]=((((r01)*(sj6)*(x9828)))+(((IkReal(-1.00000000000000))*(r10)*(x9814)*(x9826)))+(((IkReal(-1.00000000000000))*(x9812)*(x9815)*(x9822)))+(((IkReal(-1.00000000000000))*(x9812)*(x9815)*(x9827)))+(((IkReal(-1.00000000000000))*(x9814)*(x9816)*(x9829)))+(((IkReal(-1.00000000000000))*(x9821)*(x9829)))+(((x9818)*(x9826)))+(((IkReal(-1.00000000000000))*(sj3)))+(((IkReal(-1.00000000000000))*(x9829)*(x9837)))+(((IkReal(-1.00000000000000))*(x9814)*(x9825)*(x9831)))+(((IkReal(-1.00000000000000))*(r00)*(x9814)*(x9828)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst33)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst33)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst33)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst33)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x9838=IKsin(j4); +IkReal x9839=IKcos(j4); +IkReal x9840=((r22)*(sj5)); +IkReal x9841=((IkReal(1.00000000000000))*(cj6)); +IkReal x9842=((IkReal(1.00000000000000))*(cj0)); +IkReal x9843=((cj5)*(r11)); +IkReal x9844=((cj5)*(cj6)); +IkReal x9845=((r11)*(sj6)); +IkReal x9846=((IkReal(1.00000000000000))*(sj6)); +IkReal x9847=((cj6)*(r00)); +IkReal x9848=((r12)*(sj5)); +IkReal x9849=((r02)*(sj5)); +IkReal x9850=((cj6)*(r10)); +IkReal x9851=((cj5)*(sj6)); +IkReal x9852=((cj5)*(r01)); +IkReal x9853=((sj0)*(x9838)); +IkReal x9854=((r00)*(x9851)); +IkReal x9855=((cj0)*(x9838)); +IkReal x9856=((sj0)*(x9839)); +IkReal x9857=((r20)*(x9839)); +IkReal x9858=((cj0)*(x9839)); +IkReal x9859=((r21)*(x9838)); +IkReal x9860=((r21)*(x9839)); +IkReal x9861=((r20)*(x9838)); +IkReal x9862=((x9839)*(x9848)); +IkReal x9863=((r01)*(sj6)*(x9839)); +IkReal x9864=((cj5)*(r10)*(x9846)); +evalcond[0]=((IkReal(1.00000000000000))+(((sj6)*(x9860)))+(((x9838)*(x9840)))+(((IkReal(-1.00000000000000))*(x9841)*(x9857)))+(((x9844)*(x9859)))+(((x9851)*(x9861)))); +evalcond[1]=((((x9844)*(x9860)))+(((cj6)*(x9861)))+(((x9839)*(x9840)))+(((IkReal(-1.00000000000000))*(x9846)*(x9859)))+(((x9851)*(x9857)))); +evalcond[2]=((((x9850)*(x9858)))+(((r01)*(x9844)*(x9853)))+(((r01)*(sj6)*(x9856)))+(((IkReal(-1.00000000000000))*(x9838)*(x9842)*(x9848)))+(((x9849)*(x9853)))+(((IkReal(-1.00000000000000))*(r00)*(x9841)*(x9856)))+(((IkReal(-1.00000000000000))*(r10)*(x9838)*(x9842)*(x9851)))+(((IkReal(-1.00000000000000))*(x9839)*(x9842)*(x9845)))+(((IkReal(-1.00000000000000))*(x9841)*(x9843)*(x9855)))+(((x9853)*(x9854)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9841)*(x9843)*(x9858)))+(((x9845)*(x9855)))+(((IkReal(-1.00000000000000))*(r01)*(x9846)*(x9853)))+(((IkReal(-1.00000000000000))*(x9842)*(x9862)))+(((x9849)*(x9856)))+(((IkReal(-1.00000000000000))*(r10)*(x9839)*(x9842)*(x9851)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x9847)*(x9853)))+(((r01)*(x9844)*(x9856)))+(((x9854)*(x9856)))+(((IkReal(-1.00000000000000))*(r10)*(x9841)*(x9855)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9838)*(x9842)*(x9854)))+(((x9850)*(x9856)))+(((IkReal(-1.00000000000000))*(x9841)*(x9852)*(x9855)))+(((IkReal(-1.00000000000000))*(x9845)*(x9856)))+(((IkReal(-1.00000000000000))*(x9842)*(x9863)))+(((IkReal(-1.00000000000000))*(x9848)*(x9853)))+(((x9847)*(x9858)))+(((IkReal(-1.00000000000000))*(x9841)*(x9843)*(x9853)))+(((IkReal(-1.00000000000000))*(x9838)*(x9842)*(x9849)))+(((IkReal(-1.00000000000000))*(x9853)*(x9864)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9839)*(x9842)*(x9849)))+(((IkReal(-1.00000000000000))*(x9856)*(x9864)))+(((IkReal(-1.00000000000000))*(x9841)*(x9843)*(x9856)))+(((IkReal(-1.00000000000000))*(x9848)*(x9856)))+(((IkReal(-1.00000000000000))*(x9841)*(x9852)*(x9858)))+(((IkReal(-1.00000000000000))*(x9839)*(x9842)*(x9854)))+(((IkReal(-1.00000000000000))*(sj3)))+(((r01)*(sj6)*(x9855)))+(((IkReal(-1.00000000000000))*(r10)*(x9841)*(x9853)))+(((IkReal(-1.00000000000000))*(r00)*(x9841)*(x9855)))+(((x9845)*(x9853)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +IkReal x9865=((cj5)*(r22)); +IkReal x9866=((IkReal(0.374290000000000))*(sj5)); +IkReal x9867=((cj0)*(sj6)); +IkReal x9868=((cj6)*(r21)); +IkReal x9869=((IkReal(0.0100000000000000))*(sj5)); +IkReal x9870=((cj0)*(r02)); +IkReal x9871=((IkReal(0.0100000000000000))*(cj5)); +IkReal x9872=((IkReal(1.00000000000000))*(py)); +IkReal x9873=((r01)*(sj0)); +IkReal x9874=((r20)*(sj6)); +IkReal x9875=((r11)*(sj0)); +IkReal x9876=((IkReal(0.374290000000000))*(cj5)); +IkReal x9877=((cj0)*(r12)); +IkReal x9878=((sj0)*(x9876)); +IkReal x9879=((cj6)*(x9871)); +IkReal x9880=((r10)*(sj0)*(sj6)); +IkReal x9881=((r00)*(sj0)*(sj6)); +IkReal x9882=((cj0)*(cj6)*(x9866)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9865)))+(((sj5)*(x9868)))+(((sj5)*(x9874)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9868)*(x9871)))+(((IkReal(-0.374290000000000))*(x9865)))+(((IkReal(-1.00000000000000))*(r22)*(x9869)))+(((x9866)*(x9868)))+(((x9866)*(x9874)))+(((IkReal(-1.00000000000000))*(x9871)*(x9874)))+(pz)); +evalcond[3]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x9873)*(x9879)))+(((r10)*(x9867)*(x9871)))+(((cj6)*(x9866)*(x9873)))+(((IkReal(-1.00000000000000))*(x9871)*(x9881)))+(((IkReal(-1.00000000000000))*(r10)*(x9866)*(x9867)))+(((IkReal(-1.00000000000000))*(cj0)*(x9872)))+(((IkReal(-1.00000000000000))*(r02)*(x9878)))+(((x9866)*(x9881)))+(((cj0)*(r11)*(x9879)))+(((x9876)*(x9877)))+(((x9869)*(x9877)))+(((IkReal(-1.00000000000000))*(r11)*(x9882)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x9869)))); +evalcond[4]=((IkReal(-0.295420000000000))+(((r00)*(x9867)*(x9871)))+(((x9875)*(x9879)))+(((IkReal(-1.00000000000000))*(cj0)*(px)))+(((x9870)*(x9876)))+(((IkReal(-1.00000000000000))*(r01)*(x9882)))+(((IkReal(-1.00000000000000))*(x9866)*(x9880)))+(((r12)*(sj0)*(x9869)))+(((x9869)*(x9870)))+(((cj0)*(r01)*(x9879)))+(((IkReal(-1.00000000000000))*(sj0)*(x9872)))+(((IkReal(-1.00000000000000))*(r00)*(x9866)*(x9867)))+(((x9871)*(x9880)))+(((r12)*(x9878)))+(((IkReal(-1.00000000000000))*(cj6)*(x9866)*(x9875)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9883=((IkReal(1.00000000000000))*(cj5)); +IkReal x9884=((r10)*(sj5)*(sj6)); +IkReal x9885=((cj6)*(sj0)*(sj5)); +IkReal x9886=((r00)*(sj5)*(sj6)); +IkReal x9887=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x9883)))+(((cj0)*(x9884)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x9885)))+(((IkReal(-1.00000000000000))*(sj0)*(x9886)))+(((r11)*(x9887))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r11)*(x9885)))+(((r01)*(x9887)))+(((sj0)*(x9884)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9883)))+(((cj0)*(x9886)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9883))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x9883)))+(((cj0)*(x9884)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x9885)))+(((IkReal(-1.00000000000000))*(sj0)*(x9886)))+(((r11)*(x9887)))))+IKsqr(((((r11)*(x9885)))+(((r01)*(x9887)))+(((sj0)*(x9884)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9883)))+(((cj0)*(x9886)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9883)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x9883)))+(((cj0)*(x9884)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x9885)))+(((IkReal(-1.00000000000000))*(sj0)*(x9886)))+(((r11)*(x9887)))), ((((r11)*(x9885)))+(((r01)*(x9887)))+(((sj0)*(x9884)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x9883)))+(((cj0)*(x9886)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x9883))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[2]; +IkReal x9888=((cj0)*(cj5)); +IkReal x9889=((IkReal(1.00000000000000))*(cj0)); +IkReal x9890=((cj6)*(r11)); +IkReal x9891=((r10)*(sj6)); +IkReal x9892=((cj5)*(sj0)); +IkReal x9893=((r00)*(sj5)*(sj6)); +IkReal x9894=((cj6)*(r01)*(sj5)); +IkReal x9895=((IkReal(1.00000000000000))*(sj0)*(sj5)); +evalcond[0]=((((sj0)*(x9893)))+(((IkReal(-1.00000000000000))*(sj5)*(x9889)*(x9891)))+(((r12)*(x9888)))+(((sj0)*(x9894)))+(((IkReal(-1.00000000000000))*(sj5)*(x9889)*(x9890)))+(IKsin(j3))+(((IkReal(-1.00000000000000))*(r02)*(x9892)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x9890)*(x9895)))+(((IkReal(-1.00000000000000))*(x9891)*(x9895)))+(((IkReal(-1.00000000000000))*(x9889)*(x9893)))+(((r02)*(x9888)))+(((r12)*(x9892)))+(IKcos(j3))+(((IkReal(-1.00000000000000))*(x9889)*(x9894)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst37; +IkReal x9896=(cj5)*(cj5); +IkReal x9897=(r20)*(r20); +IkReal x9898=(sj6)*(sj6); +IkReal x9899=(cj6)*(cj6); +IkReal x9900=(r21)*(r21); +IkReal x9901=((cj6)*(r21)); +IkReal x9902=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x9903=((cj5)*(r22)*(sj5)); +gconst37=IKsign(((((x9896)*(x9899)*(x9900)))+(((x9896)*(x9897)*(x9898)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x9902)*(x9903)))+(((x9898)*(x9900)))+(((IkReal(-1.00000000000000))*(x9901)*(x9902)))+(((IkReal(2.00000000000000))*(x9901)*(x9903)))+(((x9897)*(x9899)))+(((x9896)*(x9901)*(x9902))))); +IkReal x9904=(cj5)*(cj5); +IkReal x9905=(r20)*(r20); +IkReal x9906=(sj6)*(sj6); +IkReal x9907=(cj6)*(cj6); +IkReal x9908=(r21)*(r21); +IkReal x9909=((cj6)*(r21)); +IkReal x9910=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x9911=((cj5)*(r22)*(sj5)); +dummyeval[0]=((((x9906)*(x9908)))+(((x9904)*(x9905)*(x9906)))+(((IkReal(-1.00000000000000))*(x9909)*(x9910)))+((((r22)*(r22))*((sj5)*(sj5))))+(((x9910)*(x9911)))+(((IkReal(2.00000000000000))*(x9909)*(x9911)))+(((x9905)*(x9907)))+(((x9904)*(x9907)*(x9908)))+(((x9904)*(x9909)*(x9910)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst38; +IkReal x9912=(cj6)*(cj6); +IkReal x9913=(sj6)*(sj6); +IkReal x9914=((IkReal(1.00000000000000))*(r21)); +IkReal x9915=((cj6)*(r20)); +IkReal x9916=((r22)*(sj5)); +IkReal x9917=((r01)*(sj0)); +IkReal x9918=((r00)*(sj0)); +IkReal x9919=((cj0)*(r10)); +IkReal x9920=((r02)*(sj0)*(sj5)); +IkReal x9921=((cj5)*(x9912)); +IkReal x9922=((cj0)*(r12)*(sj5)); +IkReal x9923=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x9924=((cj5)*(x9913)); +IkReal x9925=((r20)*(x9924)); +gconst38=IKsign(((((IkReal(-1.00000000000000))*(x9923)*(x9925)))+(((IkReal(-1.00000000000000))*(x9915)*(x9922)))+(((IkReal(-1.00000000000000))*(sj6)*(x9916)*(x9923)))+(((r21)*(x9919)*(x9921)))+(((cj6)*(x9916)*(x9919)))+(((IkReal(-1.00000000000000))*(x9914)*(x9918)*(x9924)))+(((IkReal(-1.00000000000000))*(r20)*(x9921)*(x9923)))+(((x9915)*(x9920)))+(((IkReal(-1.00000000000000))*(sj6)*(x9914)*(x9920)))+(((r21)*(x9919)*(x9924)))+(((sj6)*(x9916)*(x9917)))+(((r20)*(x9917)*(x9921)))+(((r21)*(sj6)*(x9922)))+(((x9917)*(x9925)))+(((IkReal(-1.00000000000000))*(cj6)*(x9916)*(x9918)))+(((IkReal(-1.00000000000000))*(x9914)*(x9918)*(x9921))))); +IkReal x9926=(cj6)*(cj6); +IkReal x9927=(sj6)*(sj6); +IkReal x9928=((IkReal(1.00000000000000))*(r21)); +IkReal x9929=((cj6)*(r20)); +IkReal x9930=((r22)*(sj5)); +IkReal x9931=((r01)*(sj0)); +IkReal x9932=((r00)*(sj0)); +IkReal x9933=((cj0)*(r10)); +IkReal x9934=((r02)*(sj0)*(sj5)); +IkReal x9935=((cj5)*(x9926)); +IkReal x9936=((cj0)*(r12)*(sj5)); +IkReal x9937=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x9938=((cj5)*(x9927)); +IkReal x9939=((r20)*(x9938)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x9928)*(x9932)*(x9938)))+(((IkReal(-1.00000000000000))*(r20)*(x9935)*(x9937)))+(((IkReal(-1.00000000000000))*(x9929)*(x9936)))+(((sj6)*(x9930)*(x9931)))+(((x9929)*(x9934)))+(((IkReal(-1.00000000000000))*(cj6)*(x9930)*(x9932)))+(((IkReal(-1.00000000000000))*(x9928)*(x9932)*(x9935)))+(((r20)*(x9931)*(x9935)))+(((IkReal(-1.00000000000000))*(sj6)*(x9928)*(x9934)))+(((r21)*(x9933)*(x9938)))+(((r21)*(sj6)*(x9936)))+(((cj6)*(x9930)*(x9933)))+(((IkReal(-1.00000000000000))*(sj6)*(x9930)*(x9937)))+(((IkReal(-1.00000000000000))*(x9937)*(x9939)))+(((r21)*(x9933)*(x9935)))+(((x9931)*(x9939)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x9940=((sj0)*(sj6)); +IkReal x9941=((cj0)*(r10)); +IkReal x9942=((IkReal(1.00000000000000))*(cj5)); +IkReal x9943=((cj6)*(sj0)); +IkReal x9944=((cj0)*(r11)); +if( IKabs(((gconst38)*(((((IkReal(-1.00000000000000))*(sj6)*(x9944)))+(((IkReal(-1.00000000000000))*(r00)*(x9943)))+(((r01)*(x9940)))+(((cj6)*(x9941))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst38)*(((((IkReal(-1.00000000000000))*(r01)*(x9942)*(x9943)))+(((IkReal(-1.00000000000000))*(r00)*(x9940)*(x9942)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(sj6)*(x9941)))+(((cj5)*(cj6)*(x9944))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst38)*(((((IkReal(-1.00000000000000))*(sj6)*(x9944)))+(((IkReal(-1.00000000000000))*(r00)*(x9943)))+(((r01)*(x9940)))+(((cj6)*(x9941)))))), ((gconst38)*(((((IkReal(-1.00000000000000))*(r01)*(x9942)*(x9943)))+(((IkReal(-1.00000000000000))*(r00)*(x9940)*(x9942)))+(((cj0)*(r12)*(sj5)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(sj5)))+(((cj5)*(sj6)*(x9941)))+(((cj5)*(cj6)*(x9944))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x9945=IKsin(j4); +IkReal x9946=IKcos(j4); +IkReal x9947=((r22)*(sj5)); +IkReal x9948=((IkReal(1.00000000000000))*(cj6)); +IkReal x9949=((IkReal(1.00000000000000))*(cj0)); +IkReal x9950=((cj5)*(r11)); +IkReal x9951=((cj5)*(cj6)); +IkReal x9952=((r11)*(sj6)); +IkReal x9953=((IkReal(1.00000000000000))*(sj6)); +IkReal x9954=((cj6)*(r00)); +IkReal x9955=((r12)*(sj5)); +IkReal x9956=((r02)*(sj5)); +IkReal x9957=((cj6)*(r10)); +IkReal x9958=((cj5)*(sj6)); +IkReal x9959=((cj5)*(r01)); +IkReal x9960=((sj0)*(x9945)); +IkReal x9961=((r00)*(x9958)); +IkReal x9962=((cj0)*(x9945)); +IkReal x9963=((sj0)*(x9946)); +IkReal x9964=((r20)*(x9946)); +IkReal x9965=((cj0)*(x9946)); +IkReal x9966=((r21)*(x9945)); +IkReal x9967=((r21)*(x9946)); +IkReal x9968=((r20)*(x9945)); +IkReal x9969=((x9946)*(x9955)); +IkReal x9970=((r01)*(sj6)*(x9946)); +IkReal x9971=((cj5)*(r10)*(x9953)); +evalcond[0]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x9948)*(x9964)))+(((sj6)*(x9967)))+(((x9958)*(x9968)))+(((x9945)*(x9947)))+(((x9951)*(x9966)))); +evalcond[1]=((((cj6)*(x9968)))+(((IkReal(-1.00000000000000))*(x9953)*(x9966)))+(((x9958)*(x9964)))+(((x9946)*(x9947)))+(((x9951)*(x9967)))); +evalcond[2]=((((x9960)*(x9961)))+(((IkReal(-1.00000000000000))*(x9946)*(x9949)*(x9952)))+(((x9957)*(x9965)))+(((IkReal(-1.00000000000000))*(r00)*(x9948)*(x9963)))+(((IkReal(-1.00000000000000))*(r10)*(x9945)*(x9949)*(x9958)))+(((r01)*(x9951)*(x9960)))+(((IkReal(-1.00000000000000))*(x9945)*(x9949)*(x9955)))+(((r01)*(sj6)*(x9963)))+(((IkReal(-1.00000000000000))*(x9948)*(x9950)*(x9962)))+(((x9956)*(x9960)))); +evalcond[3]=((((x9961)*(x9963)))+(((IkReal(-1.00000000000000))*(r10)*(x9946)*(x9949)*(x9958)))+(((IkReal(-1.00000000000000))*(r01)*(x9953)*(x9960)))+(((x9952)*(x9962)))+(((x9956)*(x9963)))+(((IkReal(-1.00000000000000))*(x9948)*(x9950)*(x9965)))+(((IkReal(-1.00000000000000))*(cj3)))+(((IkReal(-1.00000000000000))*(r10)*(x9948)*(x9962)))+(((r01)*(x9951)*(x9963)))+(((x9954)*(x9960)))+(((IkReal(-1.00000000000000))*(x9949)*(x9969)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9945)*(x9949)*(x9956)))+(((IkReal(-1.00000000000000))*(x9945)*(x9949)*(x9961)))+(((IkReal(-1.00000000000000))*(x9948)*(x9959)*(x9962)))+(((IkReal(-1.00000000000000))*(x9952)*(x9963)))+(((IkReal(-1.00000000000000))*(x9949)*(x9970)))+(((x9957)*(x9963)))+(((x9954)*(x9965)))+(((IkReal(-1.00000000000000))*(x9948)*(x9950)*(x9960)))+(((IkReal(-1.00000000000000))*(x9955)*(x9960)))+(((IkReal(-1.00000000000000))*(x9960)*(x9971)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9963)*(x9971)))+(((IkReal(-1.00000000000000))*(x9955)*(x9963)))+(((IkReal(-1.00000000000000))*(x9948)*(x9950)*(x9963)))+(sj3)+(((IkReal(-1.00000000000000))*(x9946)*(x9949)*(x9956)))+(((x9952)*(x9960)))+(((IkReal(-1.00000000000000))*(x9948)*(x9959)*(x9965)))+(((r01)*(sj6)*(x9962)))+(((IkReal(-1.00000000000000))*(r00)*(x9948)*(x9962)))+(((IkReal(-1.00000000000000))*(r10)*(x9948)*(x9960)))+(((IkReal(-1.00000000000000))*(x9946)*(x9949)*(x9961)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +if( IKabs(((gconst37)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst37)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst37)*(((((cj5)*(r20)*(sj6)))+(((r22)*(sj5)))+(((cj5)*(cj6)*(r21)))))), ((gconst37)*(((((r21)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x9972=IKsin(j4); +IkReal x9973=IKcos(j4); +IkReal x9974=((r22)*(sj5)); +IkReal x9975=((IkReal(1.00000000000000))*(cj6)); +IkReal x9976=((IkReal(1.00000000000000))*(cj0)); +IkReal x9977=((cj5)*(r11)); +IkReal x9978=((cj5)*(cj6)); +IkReal x9979=((r11)*(sj6)); +IkReal x9980=((IkReal(1.00000000000000))*(sj6)); +IkReal x9981=((cj6)*(r00)); +IkReal x9982=((r12)*(sj5)); +IkReal x9983=((r02)*(sj5)); +IkReal x9984=((cj6)*(r10)); +IkReal x9985=((cj5)*(sj6)); +IkReal x9986=((cj5)*(r01)); +IkReal x9987=((sj0)*(x9972)); +IkReal x9988=((r00)*(x9985)); +IkReal x9989=((cj0)*(x9972)); +IkReal x9990=((sj0)*(x9973)); +IkReal x9991=((r20)*(x9973)); +IkReal x9992=((cj0)*(x9973)); +IkReal x9993=((r21)*(x9972)); +IkReal x9994=((r21)*(x9973)); +IkReal x9995=((r20)*(x9972)); +IkReal x9996=((x9973)*(x9982)); +IkReal x9997=((r01)*(sj6)*(x9973)); +IkReal x9998=((cj5)*(r10)*(x9980)); +evalcond[0]=((IkReal(-1.00000000000000))+(((x9978)*(x9993)))+(((x9972)*(x9974)))+(((x9985)*(x9995)))+(((IkReal(-1.00000000000000))*(x9975)*(x9991)))+(((sj6)*(x9994)))); +evalcond[1]=((((x9978)*(x9994)))+(((x9973)*(x9974)))+(((IkReal(-1.00000000000000))*(x9980)*(x9993)))+(((x9985)*(x9991)))+(((cj6)*(x9995)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x9972)*(x9976)*(x9982)))+(((IkReal(-1.00000000000000))*(x9975)*(x9977)*(x9989)))+(((r01)*(x9978)*(x9987)))+(((IkReal(-1.00000000000000))*(r00)*(x9975)*(x9990)))+(((r01)*(sj6)*(x9990)))+(((IkReal(-1.00000000000000))*(r10)*(x9972)*(x9976)*(x9985)))+(((x9987)*(x9988)))+(((IkReal(-1.00000000000000))*(x9973)*(x9976)*(x9979)))+(((x9984)*(x9992)))+(((x9983)*(x9987)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x9976)*(x9996)))+(((x9979)*(x9989)))+(((x9988)*(x9990)))+(((IkReal(-1.00000000000000))*(r10)*(x9973)*(x9976)*(x9985)))+(((IkReal(-1.00000000000000))*(r01)*(x9980)*(x9987)))+(((x9983)*(x9990)))+(((IkReal(-1.00000000000000))*(x9975)*(x9977)*(x9992)))+(((x9981)*(x9987)))+(((IkReal(-1.00000000000000))*(cj3)))+(((r01)*(x9978)*(x9990)))+(((IkReal(-1.00000000000000))*(r10)*(x9975)*(x9989)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x9972)*(x9976)*(x9983)))+(((IkReal(-1.00000000000000))*(x9987)*(x9998)))+(((IkReal(-1.00000000000000))*(x9982)*(x9987)))+(((IkReal(-1.00000000000000))*(x9972)*(x9976)*(x9988)))+(((IkReal(-1.00000000000000))*(x9976)*(x9997)))+(((IkReal(-1.00000000000000))*(x9979)*(x9990)))+(((IkReal(-1.00000000000000))*(x9975)*(x9986)*(x9989)))+(((IkReal(-1.00000000000000))*(x9975)*(x9977)*(x9987)))+(((x9984)*(x9990)))+(((x9981)*(x9992)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x9973)*(x9976)*(x9988)))+(sj3)+(((IkReal(-1.00000000000000))*(x9975)*(x9986)*(x9992)))+(((IkReal(-1.00000000000000))*(x9990)*(x9998)))+(((IkReal(-1.00000000000000))*(r10)*(x9975)*(x9987)))+(((IkReal(-1.00000000000000))*(r00)*(x9975)*(x9989)))+(((x9979)*(x9987)))+(((IkReal(-1.00000000000000))*(x9975)*(x9977)*(x9990)))+(((IkReal(-1.00000000000000))*(x9982)*(x9990)))+(((r01)*(sj6)*(x9989)))+(((IkReal(-1.00000000000000))*(x9973)*(x9976)*(x9983)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x9999=((sj5)*(sj6)); +IkReal x10000=((IkReal(1.00000000000000))*(sj0)); +IkReal x10001=((cj6)*(sj5)); +IkReal x10002=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10002)))+(((IkReal(-1.00000000000000))*(r01)*(x10000)*(x10001)))+(((cj0)*(r11)*(x10001)))+(((IkReal(-1.00000000000000))*(r00)*(x10000)*(x9999)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x9999))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x9999)))+(((IkReal(-1.00000000000000))*(r22)*(x10002)))+(((r21)*(x10001))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10002)))+(((IkReal(-1.00000000000000))*(r01)*(x10000)*(x10001)))+(((cj0)*(r11)*(x10001)))+(((IkReal(-1.00000000000000))*(r00)*(x10000)*(x9999)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x9999)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x9999)))+(((IkReal(-1.00000000000000))*(r22)*(x10002)))+(((r21)*(x10001)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10002)))+(((IkReal(-1.00000000000000))*(r01)*(x10000)*(x10001)))+(((cj0)*(r11)*(x10001)))+(((IkReal(-1.00000000000000))*(r00)*(x10000)*(x9999)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r10)*(x9999)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r20)*(x9999)))+(((IkReal(-1.00000000000000))*(r22)*(x10002)))+(((r21)*(x10001))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x10003=IKcos(j3); +IkReal x10004=((sj5)*(sj6)); +IkReal x10005=((cj0)*(cj5)); +IkReal x10006=((IkReal(1.00000000000000))*(cj0)); +IkReal x10007=((IkReal(1.00000000000000))*(sj0)); +IkReal x10008=((IkReal(1.00000000000000))*(x10003)); +IkReal x10009=((cj6)*(r01)*(sj5)); +IkReal x10010=((cj6)*(r11)*(sj5)); +evalcond[0]=((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x10008)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x10004)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10006)*(x10010)))+(((sj0)*(x10009)))+(((r12)*(x10005)))+(((IkReal(-1.00000000000000))*(r10)*(x10004)*(x10006)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x10007)))+(IKsin(j3))+(((r00)*(sj0)*(x10004)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10007)*(x10010)))+(((IkReal(-1.00000000000000))*(r00)*(x10004)*(x10006)))+(((cj5)*(r12)*(sj0)))+(((r02)*(x10005)))+(((IkReal(-1.00000000000000))*(r10)*(x10004)*(x10007)))+(((IkReal(-1.00000000000000))*(cj1)*(x10008)))+(((IkReal(-1.00000000000000))*(x10006)*(x10009)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst28; +IkReal x10011=(r21)*(r21); +IkReal x10012=(cj5)*(cj5); +IkReal x10013=(sj6)*(sj6); +IkReal x10014=(cj6)*(cj6); +IkReal x10015=(r20)*(r20); +IkReal x10016=((cj6)*(r21)); +IkReal x10017=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x10018=((cj5)*(r22)*(sj5)); +IkReal x10019=((IkReal(1.00000000000000))*(x10013)); +IkReal x10020=((IkReal(1.00000000000000))*(x10014)); +gconst28=IKsign(((((IkReal(-1.00000000000000))*(x10011)*(x10012)*(x10020)))+(((IkReal(-1.00000000000000))*(x10012)*(x10016)*(x10017)))+(((IkReal(-2.00000000000000))*(x10016)*(x10018)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x10015)*(x10020)))+(((IkReal(-1.00000000000000))*(x10011)*(x10019)))+(((x10016)*(x10017)))+(((IkReal(-1.00000000000000))*(x10012)*(x10015)*(x10019)))+(((IkReal(-1.00000000000000))*(x10017)*(x10018))))); +IkReal x10021=(r21)*(r21); +IkReal x10022=(cj5)*(cj5); +IkReal x10023=(sj6)*(sj6); +IkReal x10024=(cj6)*(cj6); +IkReal x10025=(r20)*(r20); +IkReal x10026=((cj6)*(r21)); +IkReal x10027=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x10028=((cj5)*(r22)*(sj5)); +IkReal x10029=((IkReal(1.00000000000000))*(x10023)); +IkReal x10030=((IkReal(1.00000000000000))*(x10024)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x10022)*(x10025)*(x10029)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x10021)*(x10022)*(x10030)))+(((IkReal(-1.00000000000000))*(x10025)*(x10030)))+(((IkReal(-1.00000000000000))*(x10022)*(x10026)*(x10027)))+(((IkReal(-2.00000000000000))*(x10026)*(x10028)))+(((x10026)*(x10027)))+(((IkReal(-1.00000000000000))*(x10021)*(x10029)))+(((IkReal(-1.00000000000000))*(x10027)*(x10028)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst29; +IkReal x10031=(cj6)*(cj6); +IkReal x10032=(sj6)*(sj6); +IkReal x10033=((IkReal(1.00000000000000))*(r01)); +IkReal x10034=((sj0)*(sj5)); +IkReal x10035=((cj6)*(r22)); +IkReal x10036=((r21)*(sj6)); +IkReal x10037=((r00)*(r21)); +IkReal x10038=((cj0)*(sj5)); +IkReal x10039=((cj6)*(r20)); +IkReal x10040=((r22)*(sj6)); +IkReal x10041=((cj0)*(cj5)); +IkReal x10042=((IkReal(1.00000000000000))*(r10)); +IkReal x10043=((cj5)*(sj0)); +IkReal x10044=((r20)*(x10032)); +IkReal x10045=((x10031)*(x10043)); +gconst29=IKsign(((((r11)*(r20)*(x10031)*(x10041)))+(((IkReal(-1.00000000000000))*(r21)*(x10031)*(x10041)*(x10042)))+(((IkReal(-1.00000000000000))*(r20)*(x10033)*(x10045)))+(((r12)*(x10038)*(x10039)))+(((IkReal(-1.00000000000000))*(r12)*(x10036)*(x10038)))+(((IkReal(-1.00000000000000))*(x10033)*(x10034)*(x10040)))+(((IkReal(-1.00000000000000))*(r21)*(x10032)*(x10041)*(x10042)))+(((r02)*(x10034)*(x10036)))+(((IkReal(-1.00000000000000))*(x10033)*(x10043)*(x10044)))+(((r11)*(x10041)*(x10044)))+(((IkReal(-1.00000000000000))*(x10035)*(x10038)*(x10042)))+(((IkReal(-1.00000000000000))*(r02)*(x10034)*(x10039)))+(((x10037)*(x10045)))+(((r00)*(x10034)*(x10035)))+(((x10032)*(x10037)*(x10043)))+(((r11)*(x10038)*(x10040))))); +IkReal x10046=(cj6)*(cj6); +IkReal x10047=(sj6)*(sj6); +IkReal x10048=((IkReal(1.00000000000000))*(r01)); +IkReal x10049=((sj0)*(sj5)); +IkReal x10050=((cj6)*(r22)); +IkReal x10051=((r21)*(sj6)); +IkReal x10052=((r00)*(r21)); +IkReal x10053=((cj0)*(sj5)); +IkReal x10054=((cj6)*(r20)); +IkReal x10055=((r22)*(sj6)); +IkReal x10056=((cj0)*(cj5)); +IkReal x10057=((IkReal(1.00000000000000))*(r10)); +IkReal x10058=((cj5)*(sj0)); +IkReal x10059=((r20)*(x10047)); +IkReal x10060=((x10046)*(x10058)); +dummyeval[0]=((((r11)*(x10053)*(x10055)))+(((x10047)*(x10052)*(x10058)))+(((r11)*(r20)*(x10046)*(x10056)))+(((r12)*(x10053)*(x10054)))+(((IkReal(-1.00000000000000))*(r20)*(x10048)*(x10060)))+(((IkReal(-1.00000000000000))*(x10048)*(x10058)*(x10059)))+(((IkReal(-1.00000000000000))*(x10050)*(x10053)*(x10057)))+(((r00)*(x10049)*(x10050)))+(((IkReal(-1.00000000000000))*(x10048)*(x10049)*(x10055)))+(((IkReal(-1.00000000000000))*(r02)*(x10049)*(x10054)))+(((x10052)*(x10060)))+(((IkReal(-1.00000000000000))*(r21)*(x10047)*(x10056)*(x10057)))+(((IkReal(-1.00000000000000))*(r21)*(x10046)*(x10056)*(x10057)))+(((r11)*(x10056)*(x10059)))+(((IkReal(-1.00000000000000))*(r12)*(x10051)*(x10053)))+(((r02)*(x10049)*(x10051)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10061=((cj1)*(cj6)); +IkReal x10062=((IkReal(1.00000000000000))*(sj0)); +IkReal x10063=((cj0)*(r10)); +IkReal x10064=((cj1)*(sj5)); +IkReal x10065=((cj1)*(sj6)); +IkReal x10066=((cj0)*(r11)); +if( IKabs(((gconst29)*(((((IkReal(-1.00000000000000))*(r00)*(x10061)*(x10062)))+(((x10061)*(x10063)))+(((IkReal(-1.00000000000000))*(x10065)*(x10066)))+(((r01)*(sj0)*(x10065))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst29)*(((((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10061)*(x10062)))+(((IkReal(-1.00000000000000))*(r02)*(x10062)*(x10064)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10062)*(x10065)))+(((cj0)*(r12)*(x10064)))+(((cj5)*(x10063)*(x10065)))+(((cj5)*(x10061)*(x10066))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst29)*(((((IkReal(-1.00000000000000))*(r00)*(x10061)*(x10062)))+(((x10061)*(x10063)))+(((IkReal(-1.00000000000000))*(x10065)*(x10066)))+(((r01)*(sj0)*(x10065)))))), ((gconst29)*(((((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10061)*(x10062)))+(((IkReal(-1.00000000000000))*(r02)*(x10062)*(x10064)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10062)*(x10065)))+(((cj0)*(r12)*(x10064)))+(((cj5)*(x10063)*(x10065)))+(((cj5)*(x10061)*(x10066))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x10067=IKsin(j4); +IkReal x10068=IKcos(j4); +IkReal x10069=((r22)*(sj5)); +IkReal x10070=((IkReal(1.00000000000000))*(cj6)); +IkReal x10071=((IkReal(1.00000000000000))*(cj0)); +IkReal x10072=((IkReal(1.00000000000000))*(sj1)); +IkReal x10073=((cj5)*(r11)); +IkReal x10074=((cj5)*(cj6)); +IkReal x10075=((r11)*(sj6)); +IkReal x10076=((IkReal(1.00000000000000))*(sj6)); +IkReal x10077=((cj6)*(r00)); +IkReal x10078=((r12)*(sj5)); +IkReal x10079=((r02)*(sj5)); +IkReal x10080=((cj6)*(r10)); +IkReal x10081=((cj5)*(sj6)); +IkReal x10082=((cj5)*(r01)); +IkReal x10083=((sj0)*(x10067)); +IkReal x10084=((r00)*(x10081)); +IkReal x10085=((cj0)*(x10067)); +IkReal x10086=((sj0)*(x10068)); +IkReal x10087=((r20)*(x10068)); +IkReal x10088=((cj0)*(x10068)); +IkReal x10089=((r21)*(x10067)); +IkReal x10090=((r21)*(x10068)); +IkReal x10091=((r20)*(x10067)); +IkReal x10092=((x10068)*(x10078)); +IkReal x10093=((r01)*(sj6)*(x10068)); +IkReal x10094=((cj5)*(r10)*(x10076)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x10070)*(x10087)))+(((x10074)*(x10089)))+(cj1)+(((x10081)*(x10091)))+(((sj6)*(x10090)))+(((x10067)*(x10069)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj3)*(x10072)))+(((x10074)*(x10090)))+(((cj6)*(x10091)))+(((IkReal(-1.00000000000000))*(x10076)*(x10089)))+(((x10081)*(x10087)))+(((x10068)*(x10069)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10068)*(x10071)*(x10075)))+(((x10080)*(x10088)))+(((r01)*(x10074)*(x10083)))+(((r01)*(sj6)*(x10086)))+(((x10079)*(x10083)))+(((IkReal(-1.00000000000000))*(r00)*(x10070)*(x10086)))+(((IkReal(-1.00000000000000))*(r10)*(x10067)*(x10071)*(x10081)))+(((x10083)*(x10084)))+(((IkReal(-1.00000000000000))*(x10070)*(x10073)*(x10085)))+(((IkReal(-1.00000000000000))*(x10067)*(x10071)*(x10078)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x10068)*(x10071)*(x10081)))+(((IkReal(-1.00000000000000))*(r10)*(x10070)*(x10085)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x10084)*(x10086)))+(((IkReal(-1.00000000000000))*(r01)*(x10076)*(x10083)))+(((IkReal(-1.00000000000000))*(x10071)*(x10092)))+(((x10079)*(x10086)))+(((IkReal(-1.00000000000000))*(x10070)*(x10073)*(x10088)))+(((x10075)*(x10085)))+(((x10077)*(x10083)))+(((r01)*(x10074)*(x10086)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x10078)*(x10083)))+(((IkReal(-1.00000000000000))*(x10067)*(x10071)*(x10084)))+(((IkReal(-1.00000000000000))*(x10083)*(x10094)))+(((IkReal(-1.00000000000000))*(x10070)*(x10082)*(x10085)))+(((x10077)*(x10088)))+(((IkReal(-1.00000000000000))*(x10067)*(x10071)*(x10079)))+(((IkReal(-1.00000000000000))*(x10070)*(x10073)*(x10083)))+(((IkReal(-1.00000000000000))*(x10075)*(x10086)))+(((IkReal(-1.00000000000000))*(x10071)*(x10093)))+(((x10080)*(x10086)))+(((IkReal(-1.00000000000000))*(x10072)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10070)*(x10082)*(x10088)))+(((IkReal(-1.00000000000000))*(x10068)*(x10071)*(x10079)))+(((IkReal(-1.00000000000000))*(x10078)*(x10086)))+(((IkReal(-1.00000000000000))*(x10070)*(x10073)*(x10086)))+(((IkReal(-1.00000000000000))*(r00)*(x10070)*(x10085)))+(((IkReal(-1.00000000000000))*(x10086)*(x10094)))+(((IkReal(-1.00000000000000))*(r10)*(x10070)*(x10083)))+(((IkReal(-1.00000000000000))*(cj1)*(sj3)))+(((r01)*(sj6)*(x10085)))+(((IkReal(-1.00000000000000))*(x10068)*(x10071)*(x10084)))+(((x10075)*(x10083)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10095=((cj1)*(r20)); +IkReal x10096=((cj5)*(sj6)); +IkReal x10097=((sj1)*(sj3)); +IkReal x10098=((r21)*(sj6)); +IkReal x10099=((r22)*(sj5)); +IkReal x10100=((IkReal(1.00000000000000))*(cj6)); +IkReal x10101=((cj5)*(r21)); +if( IKabs(((gconst28)*(((((x10097)*(x10098)))+(((cj1)*(cj6)*(x10101)))+(((x10095)*(x10096)))+(((IkReal(-1.00000000000000))*(r20)*(x10097)*(x10100)))+(((cj1)*(x10099))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst28)*(((((cj1)*(x10098)))+(((IkReal(-1.00000000000000))*(r20)*(x10096)*(x10097)))+(((IkReal(-1.00000000000000))*(x10097)*(x10100)*(x10101)))+(((IkReal(-1.00000000000000))*(x10097)*(x10099)))+(((IkReal(-1.00000000000000))*(x10095)*(x10100))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst28)*(((((x10097)*(x10098)))+(((cj1)*(cj6)*(x10101)))+(((x10095)*(x10096)))+(((IkReal(-1.00000000000000))*(r20)*(x10097)*(x10100)))+(((cj1)*(x10099)))))), ((gconst28)*(((((cj1)*(x10098)))+(((IkReal(-1.00000000000000))*(r20)*(x10096)*(x10097)))+(((IkReal(-1.00000000000000))*(x10097)*(x10100)*(x10101)))+(((IkReal(-1.00000000000000))*(x10097)*(x10099)))+(((IkReal(-1.00000000000000))*(x10095)*(x10100))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x10102=IKsin(j4); +IkReal x10103=IKcos(j4); +IkReal x10104=((r22)*(sj5)); +IkReal x10105=((IkReal(1.00000000000000))*(cj6)); +IkReal x10106=((IkReal(1.00000000000000))*(cj0)); +IkReal x10107=((IkReal(1.00000000000000))*(sj1)); +IkReal x10108=((cj5)*(r11)); +IkReal x10109=((cj5)*(cj6)); +IkReal x10110=((r11)*(sj6)); +IkReal x10111=((IkReal(1.00000000000000))*(sj6)); +IkReal x10112=((cj6)*(r00)); +IkReal x10113=((r12)*(sj5)); +IkReal x10114=((r02)*(sj5)); +IkReal x10115=((cj6)*(r10)); +IkReal x10116=((cj5)*(sj6)); +IkReal x10117=((cj5)*(r01)); +IkReal x10118=((sj0)*(x10102)); +IkReal x10119=((r00)*(x10116)); +IkReal x10120=((cj0)*(x10102)); +IkReal x10121=((sj0)*(x10103)); +IkReal x10122=((r20)*(x10103)); +IkReal x10123=((cj0)*(x10103)); +IkReal x10124=((r21)*(x10102)); +IkReal x10125=((r21)*(x10103)); +IkReal x10126=((r20)*(x10102)); +IkReal x10127=((x10103)*(x10113)); +IkReal x10128=((r01)*(sj6)*(x10103)); +IkReal x10129=((cj5)*(r10)*(x10111)); +evalcond[0]=((((x10102)*(x10104)))+(((x10116)*(x10126)))+(((sj6)*(x10125)))+(((x10109)*(x10124)))+(cj1)+(((IkReal(-1.00000000000000))*(x10105)*(x10122)))); +evalcond[1]=((((x10116)*(x10122)))+(((IkReal(-1.00000000000000))*(sj3)*(x10107)))+(((x10109)*(x10125)))+(((cj6)*(x10126)))+(((x10103)*(x10104)))+(((IkReal(-1.00000000000000))*(x10111)*(x10124)))); +evalcond[2]=((((r01)*(sj6)*(x10121)))+(((x10114)*(x10118)))+(((IkReal(-1.00000000000000))*(x10105)*(x10108)*(x10120)))+(((IkReal(-1.00000000000000))*(x10103)*(x10106)*(x10110)))+(((r01)*(x10109)*(x10118)))+(((x10115)*(x10123)))+(((IkReal(-1.00000000000000))*(r10)*(x10102)*(x10106)*(x10116)))+(((x10118)*(x10119)))+(((IkReal(-1.00000000000000))*(r00)*(x10105)*(x10121)))+(((IkReal(-1.00000000000000))*(x10102)*(x10106)*(x10113)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10105)*(x10108)*(x10123)))+(((x10110)*(x10120)))+(((IkReal(-1.00000000000000))*(r10)*(x10103)*(x10106)*(x10116)))+(((x10112)*(x10118)))+(((IkReal(-1.00000000000000))*(r01)*(x10111)*(x10118)))+(((IkReal(-1.00000000000000))*(cj3)))+(((x10119)*(x10121)))+(((x10114)*(x10121)))+(((r01)*(x10109)*(x10121)))+(((IkReal(-1.00000000000000))*(x10106)*(x10127)))+(((IkReal(-1.00000000000000))*(r10)*(x10105)*(x10120)))); +evalcond[4]=((((x10112)*(x10123)))+(((IkReal(-1.00000000000000))*(x10113)*(x10118)))+(((IkReal(-1.00000000000000))*(x10106)*(x10128)))+(((IkReal(-1.00000000000000))*(x10102)*(x10106)*(x10119)))+(((x10115)*(x10121)))+(((IkReal(-1.00000000000000))*(x10105)*(x10117)*(x10120)))+(((IkReal(-1.00000000000000))*(x10107)))+(((IkReal(-1.00000000000000))*(x10118)*(x10129)))+(((IkReal(-1.00000000000000))*(x10110)*(x10121)))+(((IkReal(-1.00000000000000))*(x10105)*(x10108)*(x10118)))+(((IkReal(-1.00000000000000))*(x10102)*(x10106)*(x10114)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10103)*(x10106)*(x10119)))+(((IkReal(-1.00000000000000))*(r10)*(x10105)*(x10118)))+(((IkReal(-1.00000000000000))*(x10121)*(x10129)))+(((IkReal(-1.00000000000000))*(r00)*(x10105)*(x10120)))+(((IkReal(-1.00000000000000))*(x10105)*(x10108)*(x10121)))+(((r01)*(sj6)*(x10120)))+(((IkReal(-1.00000000000000))*(cj1)*(sj3)))+(((IkReal(-1.00000000000000))*(x10113)*(x10121)))+(((IkReal(-1.00000000000000))*(x10103)*(x10106)*(x10114)))+(((IkReal(-1.00000000000000))*(x10105)*(x10117)*(x10123)))+(((x10110)*(x10118)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10130=((IkReal(1.00000000000000))*(sj1)); +IkReal x10131=((cj0)*(cj1)); +IkReal x10132=((cj1)*(sj0)); +IkReal x10133=((cj5)*(sj6)); +IkReal x10134=((cj5)*(cj6)); +IkReal x10135=((sj6)*(x10131)); +IkReal x10136=((cj6)*(x10132)); +if( IKabs(((gconst27)*(((((cj6)*(r00)*(x10131)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(x10130)))+(((IkReal(-1.00000000000000))*(r01)*(x10135)))+(((IkReal(-1.00000000000000))*(r11)*(sj6)*(x10132)))+(((r10)*(x10136)))+(((r21)*(sj1)*(sj6))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst27)*(((((IkReal(-1.00000000000000))*(r20)*(x10130)*(x10133)))+(((r10)*(x10132)*(x10133)))+(((r00)*(x10131)*(x10133)))+(((r12)*(sj5)*(x10132)))+(((r02)*(sj5)*(x10131)))+(((r01)*(x10131)*(x10134)))+(((IkReal(-1.00000000000000))*(r21)*(x10130)*(x10134)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x10130)))+(((r11)*(x10132)*(x10134))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst27)*(((((cj6)*(r00)*(x10131)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(x10130)))+(((IkReal(-1.00000000000000))*(r01)*(x10135)))+(((IkReal(-1.00000000000000))*(r11)*(sj6)*(x10132)))+(((r10)*(x10136)))+(((r21)*(sj1)*(sj6)))))), ((gconst27)*(((((IkReal(-1.00000000000000))*(r20)*(x10130)*(x10133)))+(((r10)*(x10132)*(x10133)))+(((r00)*(x10131)*(x10133)))+(((r12)*(sj5)*(x10132)))+(((r02)*(sj5)*(x10131)))+(((r01)*(x10131)*(x10134)))+(((IkReal(-1.00000000000000))*(r21)*(x10130)*(x10134)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x10130)))+(((r11)*(x10132)*(x10134))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x10137=IKsin(j4); +IkReal x10138=IKcos(j4); +IkReal x10139=((r00)*(sj6)); +IkReal x10140=((cj6)*(r01)); +IkReal x10141=((IkReal(1.00000000000000))*(cj0)); +IkReal x10142=((IkReal(1.00000000000000))*(sj0)); +IkReal x10143=((r10)*(sj6)); +IkReal x10144=((sj5)*(x10137)); +IkReal x10145=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x10146=((cj5)*(x10137)); +IkReal x10147=((cj6)*(x10138)); +IkReal x10148=((sj0)*(x10146)); +IkReal x10149=((r01)*(sj6)*(x10138)); +IkReal x10150=((r11)*(sj6)*(x10138)); +evalcond[0]=((((r21)*(sj6)*(x10138)))+(((cj6)*(r21)*(x10146)))+(cj1)+(((r22)*(x10144)))+(((r20)*(sj6)*(x10146)))+(((IkReal(-1.00000000000000))*(r20)*(x10147)))); +evalcond[1]=((((x10139)*(x10148)))+(((IkReal(-1.00000000000000))*(x10141)*(x10150)))+(((cj0)*(r10)*(x10147)))+(((IkReal(-1.00000000000000))*(r00)*(x10142)*(x10147)))+(((IkReal(-1.00000000000000))*(x10141)*(x10143)*(x10146)))+(((r02)*(sj0)*(x10144)))+(((x10140)*(x10148)))+(((IkReal(-1.00000000000000))*(r12)*(x10141)*(x10144)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10141)*(x10146)))+(((sj0)*(x10149)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x10141)*(x10144)))+(((IkReal(-1.00000000000000))*(x10140)*(x10141)*(x10146)))+(((IkReal(-1.00000000000000))*(x10139)*(x10141)*(x10146)))+(((IkReal(-1.00000000000000))*(r12)*(x10142)*(x10144)))+(((IkReal(-1.00000000000000))*(x10141)*(x10149)))+(((cj0)*(r00)*(x10147)))+(((r10)*(sj0)*(x10147)))+(((IkReal(-1.00000000000000))*(x10142)*(x10143)*(x10146)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10142)*(x10146)))+(((IkReal(-1.00000000000000))*(x10142)*(x10150)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst30; +gconst30=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x10151=((IkReal(1.00000000000000))*(cj0)); +IkReal x10152=((cj4)*(sj6)); +IkReal x10153=((sj0)*(sj6)); +IkReal x10154=((cj5)*(sj4)); +IkReal x10155=((IkReal(0.374290000000000))*(sj5)); +IkReal x10156=((sj4)*(sj5)); +IkReal x10157=((cj0)*(cj6)); +IkReal x10158=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10159=((cj4)*(sj5)); +IkReal x10160=((cj5)*(sj0)); +IkReal x10161=((IkReal(0.374290000000000))*(r02)); +IkReal x10162=((r20)*(sj6)); +IkReal x10163=((cj6)*(r21)); +IkReal x10164=((IkReal(1.00000000000000))*(sj0)); +IkReal x10165=((cj0)*(sj6)); +IkReal x10166=((cj4)*(cj6)); +IkReal x10167=((IkReal(0.374290000000000))*(r12)); +IkReal x10168=((cj0)*(cj5)); +IkReal x10169=((cj6)*(sj5)); +IkReal x10170=((cj6)*(r01)); +IkReal x10171=((r00)*(sj6)); +IkReal x10172=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10173=((cj6)*(r11)); +IkReal x10174=((IkReal(1.00000000000000))*(r10)); +IkReal x10175=((r02)*(sj0)); +IkReal x10176=((cj6)*(sj4)); +IkReal x10177=((r12)*(x10164)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x10166)))+(((r22)*(x10156)))+(((r21)*(x10152)))+(((x10154)*(x10163)))+(((x10154)*(x10162)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x10155)*(x10163)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x10155)*(x10162)))+(((IkReal(-1.00000000000000))*(x10158)*(x10162)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x10172)))+(((IkReal(-1.00000000000000))*(x10158)*(x10163)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x10153)*(x10174)))+(((IkReal(-1.00000000000000))*(sj5)*(x10151)*(x10171)))+(((IkReal(-1.00000000000000))*(r11)*(x10164)*(x10169)))+(((r02)*(x10168)))+(((IkReal(-1.00000000000000))*(r01)*(x10151)*(x10169)))+(((r12)*(x10160)))); +evalcond[4]=((((r00)*(x10153)*(x10154)))+(((IkReal(-1.00000000000000))*(r11)*(x10151)*(x10152)))+(((r01)*(sj0)*(x10152)))+(((IkReal(-1.00000000000000))*(r00)*(x10164)*(x10166)))+(((IkReal(-1.00000000000000))*(r12)*(x10151)*(x10156)))+(((x10156)*(x10175)))+(((cj4)*(r10)*(x10157)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x10151)*(x10154)))+(((sj0)*(x10154)*(x10170)))+(((IkReal(-1.00000000000000))*(x10151)*(x10154)*(x10173)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x10151)*(x10154)*(x10170)))+(((r10)*(sj0)*(x10166)))+(((IkReal(-1.00000000000000))*(r02)*(x10151)*(x10156)))+(((IkReal(-1.00000000000000))*(r11)*(x10152)*(x10164)))+(((IkReal(-1.00000000000000))*(x10151)*(x10154)*(x10171)))+(((cj4)*(r00)*(x10157)))+(((IkReal(-1.00000000000000))*(r01)*(x10151)*(x10152)))+(((IkReal(-1.00000000000000))*(x10153)*(x10154)*(x10174)))+(((IkReal(-1.00000000000000))*(x10154)*(x10164)*(x10173)))+(((IkReal(-1.00000000000000))*(x10156)*(x10177)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r10)*(x10158)*(x10165)))+(((IkReal(-1.00000000000000))*(x10160)*(x10161)))+(((cj0)*(r12)*(x10172)))+(((IkReal(-1.00000000000000))*(x10172)*(x10175)))+(((IkReal(-1.00000000000000))*(r10)*(x10155)*(x10165)))+(((r11)*(x10157)*(x10158)))+(((IkReal(-1.00000000000000))*(r00)*(x10153)*(x10158)))+(((IkReal(-1.00000000000000))*(sj0)*(x10158)*(x10170)))+(((IkReal(-1.00000000000000))*(py)*(x10151)))+(((px)*(sj0)))+(((x10167)*(x10168)))+(((r00)*(x10153)*(x10155)))+(((sj0)*(x10155)*(x10170)))+(((IkReal(-1.00000000000000))*(r11)*(x10155)*(x10157)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10151)*(x10166)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10151)*(x10152)))+(((IkReal(-1.00000000000000))*(r00)*(x10151)*(x10176)))+(((IkReal(-1.00000000000000))*(r11)*(x10160)*(x10166)))+(((r01)*(sj4)*(x10165)))+(((r11)*(sj4)*(x10153)))+(((IkReal(-1.00000000000000))*(x10159)*(x10177)))+(((IkReal(-1.00000000000000))*(r02)*(x10151)*(x10159)))+(((IkReal(-1.00000000000000))*(r10)*(x10164)*(x10176)))+(((IkReal(-1.00000000000000))*(x10152)*(x10160)*(x10174)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r00)*(x10158)*(x10165)))+(((x10160)*(x10167)))+(((cj0)*(r02)*(x10172)))+(((IkReal(-1.00000000000000))*(r01)*(x10155)*(x10157)))+(((IkReal(-1.00000000000000))*(px)*(x10151)))+(((r12)*(sj0)*(x10172)))+(((IkReal(-1.00000000000000))*(py)*(x10164)))+(((IkReal(-1.00000000000000))*(r10)*(x10153)*(x10155)))+(((r10)*(x10153)*(x10158)))+(((r01)*(x10157)*(x10158)))+(((sj0)*(x10158)*(x10173)))+(((IkReal(-1.00000000000000))*(r00)*(x10155)*(x10165)))+(((x10161)*(x10168)))+(((IkReal(-1.00000000000000))*(sj0)*(x10155)*(x10173)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10178=((r20)*(sj6)); +IkReal x10179=((cj4)*(cj5)); +IkReal x10180=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10178)*(x10179)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10179)*(x10180))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x10178)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10180))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10178)*(x10179)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10179)*(x10180)))))+IKsqr(((((sj5)*(x10178)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10180)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10178)*(x10179)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10179)*(x10180)))), ((((sj5)*(x10178)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10180))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10181=IKsin(j3); +IkReal x10182=((sj0)*(sj5)); +IkReal x10183=((r00)*(sj6)); +IkReal x10184=((cj6)*(r01)); +IkReal x10185=((cj5)*(sj0)); +IkReal x10186=((cj0)*(cj5)); +IkReal x10187=((cj6)*(sj4)); +IkReal x10188=((sj4)*(sj6)); +IkReal x10189=((cj0)*(r11)); +IkReal x10190=((cj4)*(cj6)); +IkReal x10191=((cj4)*(sj6)); +IkReal x10192=((IkReal(1.00000000000000))*(cj0)); +IkReal x10193=((cj4)*(sj5)); +IkReal x10194=((sj5)*(sj6)); +IkReal x10195=((cj6)*(sj5)); +IkReal x10196=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((r20)*(x10194)))+(((IkReal(-1.00000000000000))*(x10196)))+(((r21)*(x10195)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x10188)))+(((cj5)*(r20)*(x10191)))+(((cj5)*(r21)*(x10190)))+(((r22)*(x10193)))+(((r20)*(x10187)))+(((IkReal(-1.00000000000000))*(x10181)))); +evalcond[2]=((((x10182)*(x10184)))+(((x10182)*(x10183)))+(((IkReal(-1.00000000000000))*(x10189)*(x10195)))+(x10181)+(((IkReal(-1.00000000000000))*(r02)*(x10185)))+(((IkReal(-1.00000000000000))*(r10)*(x10192)*(x10194)))+(((r12)*(x10186)))); +evalcond[3]=((((cj4)*(x10183)*(x10185)))+(((cj4)*(x10184)*(x10185)))+(((IkReal(-1.00000000000000))*(x10196)))+(((r00)*(sj0)*(x10187)))+(((IkReal(-1.00000000000000))*(r10)*(x10187)*(x10192)))+(((IkReal(-1.00000000000000))*(r11)*(x10186)*(x10190)))+(((x10188)*(x10189)))+(((cj4)*(r02)*(x10182)))+(((IkReal(-1.00000000000000))*(r12)*(x10192)*(x10193)))+(((IkReal(-1.00000000000000))*(r10)*(x10186)*(x10191)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x10188)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10197=((IkReal(1.00000000000000))*(cj0)); +IkReal x10198=((cj4)*(sj6)); +IkReal x10199=((sj0)*(sj6)); +IkReal x10200=((cj5)*(sj4)); +IkReal x10201=((IkReal(0.374290000000000))*(sj5)); +IkReal x10202=((sj4)*(sj5)); +IkReal x10203=((cj0)*(cj6)); +IkReal x10204=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10205=((cj4)*(sj5)); +IkReal x10206=((cj5)*(sj0)); +IkReal x10207=((IkReal(0.374290000000000))*(r02)); +IkReal x10208=((r20)*(sj6)); +IkReal x10209=((cj6)*(r21)); +IkReal x10210=((IkReal(1.00000000000000))*(sj0)); +IkReal x10211=((cj0)*(sj6)); +IkReal x10212=((cj4)*(cj6)); +IkReal x10213=((IkReal(0.374290000000000))*(r12)); +IkReal x10214=((cj0)*(cj5)); +IkReal x10215=((cj6)*(sj5)); +IkReal x10216=((cj6)*(r01)); +IkReal x10217=((r00)*(sj6)); +IkReal x10218=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10219=((cj6)*(r11)); +IkReal x10220=((IkReal(1.00000000000000))*(r10)); +IkReal x10221=((r02)*(sj0)); +IkReal x10222=((cj6)*(sj4)); +IkReal x10223=((r12)*(x10210)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x10200)*(x10209)))+(((r22)*(x10202)))+(((r21)*(x10198)))+(((IkReal(-1.00000000000000))*(r20)*(x10212)))+(((x10200)*(x10208)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x10204)*(x10209)))+(((x10201)*(x10209)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x10204)*(x10208)))+(((x10201)*(x10208)))+(((IkReal(-1.00000000000000))*(r22)*(x10218)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x10210)*(x10215)))+(((r02)*(x10214)))+(((r12)*(x10206)))+(((IkReal(-1.00000000000000))*(r01)*(x10197)*(x10215)))+(((IkReal(-1.00000000000000))*(sj5)*(x10199)*(x10220)))+(((IkReal(-1.00000000000000))*(sj5)*(x10197)*(x10217)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r00)*(x10210)*(x10212)))+(((r00)*(x10199)*(x10200)))+(((sj0)*(x10200)*(x10216)))+(((cj4)*(r10)*(x10203)))+(((x10202)*(x10221)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x10197)*(x10200)))+(((IkReal(-1.00000000000000))*(r12)*(x10197)*(x10202)))+(((IkReal(-1.00000000000000))*(r11)*(x10197)*(x10198)))+(((IkReal(-1.00000000000000))*(x10197)*(x10200)*(x10219)))+(((r01)*(sj0)*(x10198)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x10197)*(x10200)*(x10216)))+(((IkReal(-1.00000000000000))*(x10200)*(x10210)*(x10219)))+(((cj4)*(r00)*(x10203)))+(((IkReal(-1.00000000000000))*(x10202)*(x10223)))+(((IkReal(-1.00000000000000))*(r11)*(x10198)*(x10210)))+(((IkReal(-1.00000000000000))*(r01)*(x10197)*(x10198)))+(((IkReal(-1.00000000000000))*(x10199)*(x10200)*(x10220)))+(((r10)*(sj0)*(x10212)))+(((IkReal(-1.00000000000000))*(x10197)*(x10200)*(x10217)))+(((IkReal(-1.00000000000000))*(r02)*(x10197)*(x10202)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r11)*(x10203)*(x10204)))+(((r00)*(x10199)*(x10201)))+(((IkReal(-1.00000000000000))*(x10218)*(x10221)))+(((x10213)*(x10214)))+(((IkReal(-1.00000000000000))*(r10)*(x10201)*(x10211)))+(((IkReal(-1.00000000000000))*(r00)*(x10199)*(x10204)))+(((IkReal(-1.00000000000000))*(r11)*(x10201)*(x10203)))+(((cj0)*(r12)*(x10218)))+(((sj0)*(x10201)*(x10216)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x10197)))+(((IkReal(-1.00000000000000))*(x10206)*(x10207)))+(((IkReal(-1.00000000000000))*(sj0)*(x10204)*(x10216)))+(((r10)*(x10204)*(x10211)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x10205)*(x10223)))+(((IkReal(-1.00000000000000))*(r10)*(x10210)*(x10222)))+(((IkReal(-1.00000000000000))*(x10198)*(x10206)*(x10220)))+(((IkReal(-1.00000000000000))*(r00)*(x10197)*(x10222)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10197)*(x10198)))+(((r11)*(sj4)*(x10199)))+(((IkReal(-1.00000000000000))*(r11)*(x10206)*(x10212)))+(((r01)*(sj4)*(x10211)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10197)*(x10212)))+(((IkReal(-1.00000000000000))*(r02)*(x10197)*(x10205)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x10197)))+(((IkReal(-1.00000000000000))*(sj0)*(x10201)*(x10219)))+(((r01)*(x10203)*(x10204)))+(((sj0)*(x10204)*(x10219)))+(((IkReal(-1.00000000000000))*(r01)*(x10201)*(x10203)))+(((r10)*(x10199)*(x10204)))+(((x10206)*(x10213)))+(((x10207)*(x10214)))+(((IkReal(-1.00000000000000))*(r00)*(x10201)*(x10211)))+(((IkReal(-1.00000000000000))*(py)*(x10210)))+(((cj0)*(r02)*(x10218)))+(((IkReal(-1.00000000000000))*(r10)*(x10199)*(x10201)))+(((r12)*(sj0)*(x10218)))+(((r00)*(x10204)*(x10211)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10224=((IkReal(1.00000000000000))*(sj5)); +IkReal x10225=((cj6)*(r21)); +IkReal x10226=((r20)*(sj6)); +IkReal x10227=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x10225)*(x10227)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10224)))+(((IkReal(-1.00000000000000))*(x10226)*(x10227)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10224)*(x10226)))+(((IkReal(-1.00000000000000))*(x10224)*(x10225))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x10225)*(x10227)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10224)))+(((IkReal(-1.00000000000000))*(x10226)*(x10227)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10224)*(x10226)))+(((IkReal(-1.00000000000000))*(x10224)*(x10225)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x10225)*(x10227)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10224)))+(((IkReal(-1.00000000000000))*(x10226)*(x10227)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10224)*(x10226)))+(((IkReal(-1.00000000000000))*(x10224)*(x10225))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10228=IKsin(j3); +IkReal x10229=IKcos(j3); +IkReal x10230=((sj0)*(sj5)); +IkReal x10231=((r00)*(sj6)); +IkReal x10232=((cj6)*(r01)); +IkReal x10233=((cj0)*(cj5)); +IkReal x10234=((IkReal(1.00000000000000))*(cj5)); +IkReal x10235=((cj4)*(cj5)); +IkReal x10236=((cj6)*(sj4)); +IkReal x10237=((sj4)*(sj6)); +IkReal x10238=((cj0)*(r11)); +IkReal x10239=((IkReal(1.00000000000000))*(cj4)); +IkReal x10240=((cj6)*(r21)); +IkReal x10241=((r20)*(sj6)); +IkReal x10242=((cj0)*(sj5)); +IkReal x10243=((r10)*(sj6)); +evalcond[0]=((((sj5)*(x10240)))+(((sj5)*(x10241)))+(((IkReal(-1.00000000000000))*(r22)*(x10234)))+(x10229)); +evalcond[1]=((((x10235)*(x10240)))+(x10228)+(((IkReal(-1.00000000000000))*(r21)*(x10237)))+(((cj4)*(r22)*(sj5)))+(((x10235)*(x10241)))+(((r20)*(x10236)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x10234)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x10238)))+(((IkReal(-1.00000000000000))*(x10242)*(x10243)))+(x10228)+(((r12)*(x10233)))+(((x10230)*(x10232)))+(((x10230)*(x10231)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10233)*(x10239)))+(((r00)*(sj0)*(x10236)))+(((IkReal(-1.00000000000000))*(x10229)))+(((x10237)*(x10238)))+(((cj4)*(r02)*(x10230)))+(((IkReal(-1.00000000000000))*(r12)*(x10239)*(x10242)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x10237)))+(((sj0)*(x10232)*(x10235)))+(((sj0)*(x10231)*(x10235)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x10236)))+(((IkReal(-1.00000000000000))*(x10233)*(x10239)*(x10243)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10244=((IkReal(1.00000000000000))*(cj0)); +IkReal x10245=((cj4)*(sj6)); +IkReal x10246=((sj0)*(sj4)); +IkReal x10247=((cj5)*(sj6)); +IkReal x10248=((sj4)*(sj5)); +IkReal x10249=((r12)*(sj5)); +IkReal x10250=((IkReal(0.374290000000000))*(cj5)); +IkReal x10251=((r02)*(sj0)); +IkReal x10252=((r20)*(sj4)); +IkReal x10253=((IkReal(1.00000000000000))*(sj0)); +IkReal x10254=((IkReal(1.00000000000000))*(cj5)); +IkReal x10255=((cj0)*(r10)); +IkReal x10256=((cj4)*(cj6)); +IkReal x10257=((r00)*(sj0)); +IkReal x10258=((cj6)*(r21)); +IkReal x10259=((IkReal(0.374290000000000))*(sj5)); +IkReal x10260=((cj0)*(r00)); +IkReal x10261=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10262=((cj0)*(r02)); +IkReal x10263=((cj5)*(sj4)); +IkReal x10264=((cj6)*(r01)); +IkReal x10265=((cj6)*(r11)); +IkReal x10266=((r01)*(sj0)); +IkReal x10267=((r10)*(sj0)); +IkReal x10268=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x10269=((sj6)*(x10259)); +IkReal x10270=((cj0)*(cj6)*(x10259)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x10254)))+(((sj5)*(x10258)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x10256)))+(((x10247)*(x10252)))+(((x10258)*(x10263)))+(((r22)*(x10248)))+(((r21)*(x10245)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x10250)))+(((r20)*(x10269)))+(((x10258)*(x10259)))+(((IkReal(-0.0100000000000000))*(r20)*(x10247)))+(pz)+(((IkReal(-0.0100000000000000))*(cj5)*(x10258)))+(((IkReal(-1.00000000000000))*(r22)*(x10261)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x10245)))+(((cj5)*(r21)*(x10256)))+(((cj6)*(x10252)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10244)*(x10263)*(x10265)))+(((IkReal(-1.00000000000000))*(r11)*(x10244)*(x10245)))+(((cj5)*(x10246)*(x10264)))+(((r02)*(sj5)*(x10246)))+(((x10245)*(x10266)))+(((IkReal(-1.00000000000000))*(r12)*(x10244)*(x10248)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x10244)*(x10247)))+(((IkReal(-1.00000000000000))*(r00)*(x10253)*(x10256)))+(((r00)*(x10246)*(x10247)))+(((x10255)*(x10256)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x10244)*(x10263)*(x10264)))+(((IkReal(-1.00000000000000))*(r02)*(x10244)*(x10248)))+(((IkReal(-1.00000000000000))*(r10)*(x10246)*(x10247)))+(((IkReal(-1.00000000000000))*(x10246)*(x10249)))+(((IkReal(-1.00000000000000))*(x10246)*(x10254)*(x10265)))+(((IkReal(-1.00000000000000))*(r11)*(x10245)*(x10253)))+(((x10256)*(x10260)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x10244)*(x10247)))+(((IkReal(-1.00000000000000))*(r01)*(x10244)*(x10245)))+(((x10256)*(x10267)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((sj0)*(x10259)*(x10264)))+(((cj0)*(r12)*(x10250)))+(((IkReal(-0.0100000000000000))*(x10247)*(x10257)))+(((IkReal(-1.00000000000000))*(x10251)*(x10261)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10265)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x10264)))+(((IkReal(0.0100000000000000))*(x10247)*(x10255)))+(((IkReal(-1.00000000000000))*(x10255)*(x10269)))+(((IkReal(-1.00000000000000))*(py)*(x10244)))+(((IkReal(-1.00000000000000))*(cj0)*(x10259)*(x10265)))+(((px)*(sj0)))+(((x10257)*(x10269)))+(((IkReal(-1.00000000000000))*(x10250)*(x10251)))+(((IkReal(0.0100000000000000))*(cj0)*(x10249)))); +evalcond[8]=((IkReal(0.433420000000000))+(((r12)*(sj0)*(x10250)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x10265)))+(((IkReal(-1.00000000000000))*(py)*(x10253)))+(((IkReal(-1.00000000000000))*(cj0)*(x10259)*(x10264)))+(((IkReal(-1.00000000000000))*(px)*(x10244)))+(((IkReal(-1.00000000000000))*(x10260)*(x10269)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10264)))+(((x10261)*(x10262)))+(((IkReal(-1.00000000000000))*(sj0)*(x10259)*(x10265)))+(((IkReal(0.0100000000000000))*(sj0)*(x10249)))+(((IkReal(0.0100000000000000))*(x10247)*(x10267)))+(((x10250)*(x10262)))+(((IkReal(-1.00000000000000))*(x10267)*(x10269)))+(((IkReal(0.0100000000000000))*(x10247)*(x10260)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10271=((cj5)*(r02)); +IkReal x10272=((cj0)*(sj5)); +IkReal x10273=((r10)*(sj6)); +IkReal x10274=((IkReal(1.00000000000000))*(cj6)); +IkReal x10275=((sj0)*(sj5)); +IkReal x10276=((cj5)*(r12)); +IkReal x10277=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(r01)*(x10274)*(x10275)))+(((cj6)*(r11)*(x10272)))+(((x10272)*(x10273)))+(((IkReal(-1.00000000000000))*(x10275)*(x10277)))+(((IkReal(-1.00000000000000))*(cj0)*(x10276)))+(((sj0)*(x10271))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x10272)*(x10277)))+(((IkReal(-1.00000000000000))*(r11)*(x10274)*(x10275)))+(((IkReal(-1.00000000000000))*(r01)*(x10272)*(x10274)))+(((IkReal(-1.00000000000000))*(x10273)*(x10275)))+(((cj0)*(x10271)))+(((sj0)*(x10276))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x10274)*(x10275)))+(((cj6)*(r11)*(x10272)))+(((x10272)*(x10273)))+(((IkReal(-1.00000000000000))*(x10275)*(x10277)))+(((IkReal(-1.00000000000000))*(cj0)*(x10276)))+(((sj0)*(x10271)))))+IKsqr(((((IkReal(-1.00000000000000))*(x10272)*(x10277)))+(((IkReal(-1.00000000000000))*(r11)*(x10274)*(x10275)))+(((IkReal(-1.00000000000000))*(r01)*(x10272)*(x10274)))+(((IkReal(-1.00000000000000))*(x10273)*(x10275)))+(((cj0)*(x10271)))+(((sj0)*(x10276)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r01)*(x10274)*(x10275)))+(((cj6)*(r11)*(x10272)))+(((x10272)*(x10273)))+(((IkReal(-1.00000000000000))*(x10275)*(x10277)))+(((IkReal(-1.00000000000000))*(cj0)*(x10276)))+(((sj0)*(x10271)))), ((((IkReal(-1.00000000000000))*(x10272)*(x10277)))+(((IkReal(-1.00000000000000))*(r11)*(x10274)*(x10275)))+(((IkReal(-1.00000000000000))*(r01)*(x10272)*(x10274)))+(((IkReal(-1.00000000000000))*(x10273)*(x10275)))+(((cj0)*(x10271)))+(((sj0)*(x10276))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10278=IKsin(j3); +IkReal x10279=((sj0)*(sj5)); +IkReal x10280=((r00)*(sj6)); +IkReal x10281=((IkReal(1.00000000000000))*(cj4)); +IkReal x10282=((cj6)*(sj0)); +IkReal x10283=((r00)*(sj4)); +IkReal x10284=((cj0)*(cj5)); +IkReal x10285=((cj6)*(r01)); +IkReal x10286=((cj5)*(sj0)); +IkReal x10287=((cj0)*(sj5)); +IkReal x10288=((cj6)*(r11)); +IkReal x10289=((r10)*(sj6)); +IkReal x10290=((r10)*(sj4)); +IkReal x10291=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x10292=((cj0)*(sj4)*(sj6)); +IkReal x10293=((sj0)*(sj4)*(sj6)); +IkReal x10294=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((x10278)+(((r12)*(x10284)))+(((x10279)*(x10280)))+(((x10279)*(x10285)))+(((IkReal(-1.00000000000000))*(x10287)*(x10288)))+(((IkReal(-1.00000000000000))*(r02)*(x10286)))+(((IkReal(-1.00000000000000))*(x10287)*(x10289)))); +evalcond[1]=((((r12)*(x10286)))+(((IkReal(-1.00000000000000))*(x10279)*(x10289)))+(((r02)*(x10284)))+(((IkReal(-1.00000000000000))*(x10291)))+(((IkReal(-1.00000000000000))*(x10285)*(x10287)))+(((IkReal(-1.00000000000000))*(x10280)*(x10287)))+(((IkReal(-1.00000000000000))*(x10279)*(x10288)))); +evalcond[2]=((((cj4)*(r02)*(x10279)))+(((IkReal(-1.00000000000000))*(x10290)*(x10294)))+(((IkReal(-1.00000000000000))*(x10291)))+(((IkReal(-1.00000000000000))*(r12)*(x10281)*(x10287)))+(((IkReal(-1.00000000000000))*(x10281)*(x10284)*(x10288)))+(((IkReal(-1.00000000000000))*(r01)*(x10293)))+(((r11)*(x10292)))+(((cj4)*(cj5)*(r01)*(x10282)))+(((IkReal(-1.00000000000000))*(x10281)*(x10284)*(x10289)))+(((x10282)*(x10283)))+(((cj4)*(x10280)*(x10286)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10281)*(x10284)*(x10285)))+(((IkReal(-1.00000000000000))*(r12)*(x10279)*(x10281)))+(((IkReal(-1.00000000000000))*(x10281)*(x10286)*(x10289)))+(((r01)*(x10292)))+(((IkReal(-1.00000000000000))*(x10283)*(x10294)))+(((IkReal(-1.00000000000000))*(r02)*(x10281)*(x10287)))+(((IkReal(-1.00000000000000))*(x10282)*(x10290)))+(((IkReal(-1.00000000000000))*(x10280)*(x10281)*(x10284)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x10281)*(x10282)))+(((r11)*(x10293)))+(((IkReal(-1.00000000000000))*(x10278)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10295=((IkReal(1.00000000000000))*(cj0)); +IkReal x10296=((cj4)*(sj6)); +IkReal x10297=((sj0)*(sj4)); +IkReal x10298=((cj5)*(sj6)); +IkReal x10299=((sj4)*(sj5)); +IkReal x10300=((r12)*(sj5)); +IkReal x10301=((IkReal(0.374290000000000))*(cj5)); +IkReal x10302=((r02)*(sj0)); +IkReal x10303=((r20)*(sj4)); +IkReal x10304=((IkReal(1.00000000000000))*(sj0)); +IkReal x10305=((IkReal(1.00000000000000))*(cj5)); +IkReal x10306=((cj0)*(r10)); +IkReal x10307=((cj4)*(cj6)); +IkReal x10308=((r00)*(sj0)); +IkReal x10309=((cj6)*(r21)); +IkReal x10310=((IkReal(0.374290000000000))*(sj5)); +IkReal x10311=((cj0)*(r00)); +IkReal x10312=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10313=((cj0)*(r02)); +IkReal x10314=((cj5)*(sj4)); +IkReal x10315=((cj6)*(r01)); +IkReal x10316=((cj6)*(r11)); +IkReal x10317=((r01)*(sj0)); +IkReal x10318=((r10)*(sj0)); +IkReal x10319=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x10320=((sj6)*(x10310)); +IkReal x10321=((cj0)*(cj6)*(x10310)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x10305)))+(((sj5)*(x10309)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r21)*(x10296)))+(((x10298)*(x10303)))+(((x10309)*(x10314)))+(((IkReal(-1.00000000000000))*(r20)*(x10307)))+(((r22)*(x10299)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x10312)))+(((r20)*(x10320)))+(((IkReal(-0.0100000000000000))*(cj5)*(x10309)))+(((IkReal(-0.0100000000000000))*(r20)*(x10298)))+(((x10309)*(x10310)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x10301)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x10307)))+(((cj5)*(r20)*(x10296)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x10303)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r11)*(x10295)*(x10296)))+(((cj5)*(x10297)*(x10315)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x10295)*(x10298)))+(((x10296)*(x10317)))+(((r02)*(sj5)*(x10297)))+(((IkReal(-1.00000000000000))*(r12)*(x10295)*(x10299)))+(((r00)*(x10297)*(x10298)))+(((x10306)*(x10307)))+(((IkReal(-1.00000000000000))*(r00)*(x10304)*(x10307)))+(((IkReal(-1.00000000000000))*(x10295)*(x10314)*(x10316)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x10297)*(x10305)*(x10316)))+(((IkReal(-1.00000000000000))*(x10295)*(x10314)*(x10315)))+(((IkReal(-1.00000000000000))*(r02)*(x10295)*(x10299)))+(((x10307)*(x10311)))+(((IkReal(-1.00000000000000))*(r11)*(x10296)*(x10304)))+(((IkReal(-1.00000000000000))*(r01)*(x10295)*(x10296)))+(((x10307)*(x10318)))+(((IkReal(-1.00000000000000))*(x10297)*(x10300)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x10295)*(x10298)))+(((IkReal(-1.00000000000000))*(r10)*(x10297)*(x10298)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(0.0100000000000000))*(x10298)*(x10306)))+(((IkReal(-1.00000000000000))*(cj0)*(x10310)*(x10316)))+(((IkReal(-1.00000000000000))*(x10306)*(x10320)))+(((cj0)*(r12)*(x10301)))+(((IkReal(-1.00000000000000))*(x10301)*(x10302)))+(((IkReal(-1.00000000000000))*(x10302)*(x10312)))+(((x10308)*(x10320)))+(((IkReal(-0.0100000000000000))*(x10298)*(x10308)))+(((IkReal(-1.00000000000000))*(py)*(x10295)))+(((sj0)*(x10310)*(x10315)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x10315)))+(((IkReal(0.0100000000000000))*(cj0)*(x10300)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10316)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(px)*(x10295)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10315)))+(((IkReal(0.0100000000000000))*(x10298)*(x10311)))+(((IkReal(0.0100000000000000))*(sj0)*(x10300)))+(((IkReal(0.0100000000000000))*(x10298)*(x10318)))+(((IkReal(-1.00000000000000))*(py)*(x10304)))+(((IkReal(-1.00000000000000))*(x10318)*(x10320)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x10316)))+(((r12)*(sj0)*(x10301)))+(((IkReal(-1.00000000000000))*(x10311)*(x10320)))+(((IkReal(-1.00000000000000))*(cj0)*(x10310)*(x10315)))+(((x10312)*(x10313)))+(((IkReal(-1.00000000000000))*(sj0)*(x10310)*(x10316)))+(((x10301)*(x10313)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10322=((IkReal(1.00000000000000))*(cj5)); +IkReal x10323=((r10)*(sj5)*(sj6)); +IkReal x10324=((cj6)*(sj0)*(sj5)); +IkReal x10325=((r00)*(sj5)*(sj6)); +IkReal x10326=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10322)))+(((r11)*(x10326)))+(((cj0)*(x10323)))+(((IkReal(-1.00000000000000))*(sj0)*(x10325)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x10324))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj0)*(x10323)))+(((cj0)*(x10325)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10322)))+(((r11)*(x10324)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10322)))+(((r01)*(x10326))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10322)))+(((r11)*(x10326)))+(((cj0)*(x10323)))+(((IkReal(-1.00000000000000))*(sj0)*(x10325)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x10324)))))+IKsqr(((((sj0)*(x10323)))+(((cj0)*(x10325)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10322)))+(((r11)*(x10324)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10322)))+(((r01)*(x10326)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10322)))+(((r11)*(x10326)))+(((cj0)*(x10323)))+(((IkReal(-1.00000000000000))*(sj0)*(x10325)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r01)*(x10324)))), ((((sj0)*(x10323)))+(((cj0)*(x10325)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10322)))+(((r11)*(x10324)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10322)))+(((r01)*(x10326))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10327=IKcos(j3); +IkReal x10328=IKsin(j3); +IkReal x10329=((sj0)*(sj5)); +IkReal x10330=((r00)*(sj6)); +IkReal x10331=((IkReal(1.00000000000000))*(cj4)); +IkReal x10332=((cj6)*(sj0)); +IkReal x10333=((r00)*(sj4)); +IkReal x10334=((cj0)*(cj5)); +IkReal x10335=((cj6)*(r01)); +IkReal x10336=((cj5)*(sj0)); +IkReal x10337=((cj0)*(sj5)); +IkReal x10338=((cj6)*(r11)); +IkReal x10339=((r10)*(sj6)); +IkReal x10340=((r10)*(sj4)); +IkReal x10341=((cj0)*(sj4)*(sj6)); +IkReal x10342=((sj0)*(sj4)*(sj6)); +IkReal x10343=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((x10328)+(((x10329)*(x10330)))+(((IkReal(-1.00000000000000))*(r02)*(x10336)))+(((IkReal(-1.00000000000000))*(x10337)*(x10339)))+(((r12)*(x10334)))+(((IkReal(-1.00000000000000))*(x10337)*(x10338)))+(((x10329)*(x10335)))); +evalcond[1]=((((r12)*(x10336)))+(x10327)+(((IkReal(-1.00000000000000))*(x10330)*(x10337)))+(((IkReal(-1.00000000000000))*(x10329)*(x10338)))+(((IkReal(-1.00000000000000))*(x10335)*(x10337)))+(((r02)*(x10334)))+(((IkReal(-1.00000000000000))*(x10329)*(x10339)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10331)*(x10334)*(x10339)))+(((IkReal(-1.00000000000000))*(x10340)*(x10343)))+(((IkReal(-1.00000000000000))*(x10331)*(x10334)*(x10338)))+(((x10332)*(x10333)))+(((IkReal(-1.00000000000000))*(r12)*(x10331)*(x10337)))+(((IkReal(-1.00000000000000))*(r01)*(x10342)))+(((cj4)*(r02)*(x10329)))+(((cj4)*(x10330)*(x10336)))+(((IkReal(-1.00000000000000))*(x10327)))+(((cj4)*(cj5)*(r01)*(x10332)))+(((r11)*(x10341)))); +evalcond[3]=((((r11)*(x10342)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x10331)*(x10332)))+(x10328)+(((IkReal(-1.00000000000000))*(x10330)*(x10331)*(x10334)))+(((IkReal(-1.00000000000000))*(r12)*(x10329)*(x10331)))+(((IkReal(-1.00000000000000))*(r02)*(x10331)*(x10337)))+(((r01)*(x10341)))+(((IkReal(-1.00000000000000))*(x10331)*(x10334)*(x10335)))+(((IkReal(-1.00000000000000))*(x10331)*(x10336)*(x10339)))+(((IkReal(-1.00000000000000))*(x10333)*(x10343)))+(((IkReal(-1.00000000000000))*(x10332)*(x10340)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10344=((cj5)*(r02)); +IkReal x10345=((cj0)*(sj5)); +IkReal x10346=((r10)*(sj6)); +IkReal x10347=((IkReal(1.00000000000000))*(cj6)); +IkReal x10348=((sj0)*(sj5)); +IkReal x10349=((cj5)*(r12)); +IkReal x10350=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x10349)))+(((IkReal(-1.00000000000000))*(x10348)*(x10350)))+(((x10345)*(x10346)))+(((cj6)*(r11)*(x10345)))+(((sj0)*(x10344)))+(((IkReal(-1.00000000000000))*(r01)*(x10347)*(x10348))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x10349)))+(((IkReal(-1.00000000000000))*(r11)*(x10347)*(x10348)))+(((cj0)*(x10344)))+(((IkReal(-1.00000000000000))*(x10345)*(x10350)))+(((IkReal(-1.00000000000000))*(r01)*(x10345)*(x10347)))+(((IkReal(-1.00000000000000))*(x10346)*(x10348))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x10349)))+(((IkReal(-1.00000000000000))*(x10348)*(x10350)))+(((x10345)*(x10346)))+(((cj6)*(r11)*(x10345)))+(((sj0)*(x10344)))+(((IkReal(-1.00000000000000))*(r01)*(x10347)*(x10348)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x10349)))+(((IkReal(-1.00000000000000))*(r11)*(x10347)*(x10348)))+(((cj0)*(x10344)))+(((IkReal(-1.00000000000000))*(x10345)*(x10350)))+(((IkReal(-1.00000000000000))*(r01)*(x10345)*(x10347)))+(((IkReal(-1.00000000000000))*(x10346)*(x10348)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x10349)))+(((IkReal(-1.00000000000000))*(x10348)*(x10350)))+(((x10345)*(x10346)))+(((cj6)*(r11)*(x10345)))+(((sj0)*(x10344)))+(((IkReal(-1.00000000000000))*(r01)*(x10347)*(x10348)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((sj0)*(x10349)))+(((IkReal(-1.00000000000000))*(r11)*(x10347)*(x10348)))+(((cj0)*(x10344)))+(((IkReal(-1.00000000000000))*(x10345)*(x10350)))+(((IkReal(-1.00000000000000))*(r01)*(x10345)*(x10347)))+(((IkReal(-1.00000000000000))*(x10346)*(x10348))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10351=IKsin(j3); +IkReal x10352=IKcos(j3); +IkReal x10353=((sj0)*(sj5)); +IkReal x10354=((r00)*(sj6)); +IkReal x10355=((IkReal(1.00000000000000))*(cj4)); +IkReal x10356=((cj6)*(r01)); +IkReal x10357=((cj0)*(cj5)); +IkReal x10358=((cj5)*(sj0)); +IkReal x10359=((cj6)*(r11)); +IkReal x10360=((cj0)*(sj5)); +IkReal x10361=((IkReal(1.00000000000000))*(cj1)); +IkReal x10362=((cj6)*(sj4)); +IkReal x10363=((IkReal(1.00000000000000))*(sj1)); +IkReal x10364=((cj4)*(cj5)); +IkReal x10365=((cj6)*(r21)); +IkReal x10366=((r20)*(sj6)); +IkReal x10367=((r10)*(sj6)); +IkReal x10368=((IkReal(1.00000000000000))*(cj0)); +IkReal x10369=((cj0)*(sj4)*(sj6)); +IkReal x10370=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x10365)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10366)))+(((IkReal(-1.00000000000000))*(x10352)*(x10363)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x10351)*(x10363)))+(((x10364)*(x10365)))+(((x10364)*(x10366)))+(((r20)*(x10362)))); +evalcond[2]=((((r12)*(x10357)))+(((x10353)*(x10356)))+(((IkReal(-1.00000000000000))*(x10359)*(x10360)))+(x10351)+(((x10353)*(x10354)))+(((IkReal(-1.00000000000000))*(x10360)*(x10367)))+(((IkReal(-1.00000000000000))*(r02)*(x10358)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10352)*(x10361)))+(((r12)*(x10358)))+(((IkReal(-1.00000000000000))*(x10353)*(x10359)))+(((IkReal(-1.00000000000000))*(x10354)*(x10360)))+(((r02)*(x10357)))+(((IkReal(-1.00000000000000))*(x10353)*(x10367)))+(((IkReal(-1.00000000000000))*(x10356)*(x10360)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x10355)*(x10357)*(x10367)))+(((IkReal(-1.00000000000000))*(x10355)*(x10357)*(x10359)))+(((r11)*(x10369)))+(((cj4)*(r02)*(x10353)))+(((cj4)*(x10354)*(x10358)))+(((cj4)*(x10356)*(x10358)))+(((r00)*(sj0)*(x10362)))+(((IkReal(-1.00000000000000))*(r10)*(x10362)*(x10368)))+(((IkReal(-1.00000000000000))*(r01)*(x10370)))+(((IkReal(-1.00000000000000))*(r12)*(x10355)*(x10360)))+(((IkReal(-1.00000000000000))*(x10352)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10354)*(x10355)*(x10357)))+(((IkReal(-1.00000000000000))*(r02)*(x10355)*(x10360)))+(((IkReal(-1.00000000000000))*(x10351)*(x10361)))+(((IkReal(-1.00000000000000))*(r12)*(x10353)*(x10355)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10362)))+(((IkReal(-1.00000000000000))*(x10355)*(x10356)*(x10357)))+(((IkReal(-1.00000000000000))*(x10355)*(x10358)*(x10367)))+(((r01)*(x10369)))+(((IkReal(-1.00000000000000))*(r00)*(x10362)*(x10368)))+(((r11)*(x10370)))+(((IkReal(-1.00000000000000))*(x10355)*(x10358)*(x10359)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10371=((sj5)*(sj6)); +IkReal x10372=((IkReal(1.00000000000000))*(sj0)); +IkReal x10373=((cj6)*(sj5)); +IkReal x10374=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r11)*(x10373)))+(((IkReal(-1.00000000000000))*(r01)*(x10372)*(x10373)))+(((cj0)*(r10)*(x10371)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x10371)*(x10372)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10374))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10374)))+(((r20)*(x10371)))+(((r21)*(x10373))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r11)*(x10373)))+(((IkReal(-1.00000000000000))*(r01)*(x10372)*(x10373)))+(((cj0)*(r10)*(x10371)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x10371)*(x10372)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10374)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10374)))+(((r20)*(x10371)))+(((r21)*(x10373)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r11)*(x10373)))+(((IkReal(-1.00000000000000))*(r01)*(x10372)*(x10373)))+(((cj0)*(r10)*(x10371)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x10371)*(x10372)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10374)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10374)))+(((r20)*(x10371)))+(((r21)*(x10373))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10375=IKsin(j3); +IkReal x10376=IKcos(j3); +IkReal x10377=((sj0)*(sj5)); +IkReal x10378=((r00)*(sj6)); +IkReal x10379=((IkReal(1.00000000000000))*(cj4)); +IkReal x10380=((cj6)*(r01)); +IkReal x10381=((cj0)*(cj5)); +IkReal x10382=((cj5)*(sj0)); +IkReal x10383=((cj6)*(r11)); +IkReal x10384=((cj0)*(sj5)); +IkReal x10385=((IkReal(1.00000000000000))*(cj1)); +IkReal x10386=((cj6)*(sj4)); +IkReal x10387=((IkReal(1.00000000000000))*(sj1)); +IkReal x10388=((cj4)*(cj5)); +IkReal x10389=((cj6)*(r21)); +IkReal x10390=((r20)*(sj6)); +IkReal x10391=((r10)*(sj6)); +IkReal x10392=((IkReal(1.00000000000000))*(cj0)); +IkReal x10393=((cj0)*(sj4)*(sj6)); +IkReal x10394=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x10390)))+(((IkReal(-1.00000000000000))*(x10376)*(x10387)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10389)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10388)*(x10390)))+(((r20)*(x10386)))+(((cj4)*(r22)*(sj5)))+(((x10388)*(x10389)))+(((IkReal(-1.00000000000000))*(x10375)*(x10387)))); +evalcond[2]=((((x10377)*(x10378)))+(((IkReal(-1.00000000000000))*(x10384)*(x10391)))+(((IkReal(-1.00000000000000))*(x10383)*(x10384)))+(((IkReal(-1.00000000000000))*(r02)*(x10382)))+(x10375)+(((r12)*(x10381)))+(((x10377)*(x10380)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10377)*(x10391)))+(((IkReal(-1.00000000000000))*(x10378)*(x10384)))+(((IkReal(-1.00000000000000))*(x10376)*(x10385)))+(((IkReal(-1.00000000000000))*(x10377)*(x10383)))+(((r12)*(x10382)))+(((IkReal(-1.00000000000000))*(x10380)*(x10384)))+(((r02)*(x10381)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x10379)*(x10381)*(x10391)))+(((cj4)*(x10380)*(x10382)))+(((r00)*(sj0)*(x10386)))+(((cj4)*(x10378)*(x10382)))+(((cj4)*(r02)*(x10377)))+(((IkReal(-1.00000000000000))*(r12)*(x10379)*(x10384)))+(((IkReal(-1.00000000000000))*(r10)*(x10386)*(x10392)))+(((IkReal(-1.00000000000000))*(x10379)*(x10381)*(x10383)))+(((IkReal(-1.00000000000000))*(r01)*(x10394)))+(((r11)*(x10393)))+(((IkReal(-1.00000000000000))*(x10376)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10379)*(x10380)*(x10381)))+(((IkReal(-1.00000000000000))*(x10379)*(x10382)*(x10383)))+(((IkReal(-1.00000000000000))*(x10378)*(x10379)*(x10381)))+(((IkReal(-1.00000000000000))*(x10375)*(x10385)))+(((IkReal(-1.00000000000000))*(r12)*(x10377)*(x10379)))+(((r01)*(x10393)))+(((r11)*(x10394)))+(((IkReal(-1.00000000000000))*(r02)*(x10379)*(x10384)))+(((IkReal(-1.00000000000000))*(x10379)*(x10382)*(x10391)))+(((IkReal(-1.00000000000000))*(r00)*(x10386)*(x10392)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10386)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10395=((r20)*(sj6)); +IkReal x10396=((cj4)*(cj5)); +IkReal x10397=((cj6)*(r21)); +if( IKabs(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10395)*(x10396)))+(((x10396)*(x10397))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst30)*(((((sj5)*(x10395)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10397))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10395)*(x10396)))+(((x10396)*(x10397)))))), ((gconst30)*(((((sj5)*(x10395)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10397))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10398=IKsin(j3); +IkReal x10399=IKcos(j3); +IkReal x10400=((sj0)*(sj5)); +IkReal x10401=((r00)*(sj6)); +IkReal x10402=((IkReal(1.00000000000000))*(cj4)); +IkReal x10403=((cj6)*(r01)); +IkReal x10404=((cj0)*(cj5)); +IkReal x10405=((cj5)*(sj0)); +IkReal x10406=((cj6)*(r11)); +IkReal x10407=((cj0)*(sj5)); +IkReal x10408=((IkReal(1.00000000000000))*(cj1)); +IkReal x10409=((cj6)*(sj4)); +IkReal x10410=((IkReal(1.00000000000000))*(sj1)); +IkReal x10411=((cj4)*(cj5)); +IkReal x10412=((cj6)*(r21)); +IkReal x10413=((r20)*(sj6)); +IkReal x10414=((r10)*(sj6)); +IkReal x10415=((IkReal(1.00000000000000))*(cj0)); +IkReal x10416=((cj0)*(sj4)*(sj6)); +IkReal x10417=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x10412)))+(((sj5)*(x10413)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10399)*(x10410)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10398)*(x10410)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x10409)))+(((x10411)*(x10412)))+(((cj4)*(r22)*(sj5)))+(((x10411)*(x10413)))); +evalcond[2]=((((x10400)*(x10403)))+(((IkReal(-1.00000000000000))*(x10407)*(x10414)))+(((r12)*(x10404)))+(((IkReal(-1.00000000000000))*(r02)*(x10405)))+(((x10400)*(x10401)))+(((IkReal(-1.00000000000000))*(x10406)*(x10407)))+(x10398)); +evalcond[3]=((((r12)*(x10405)))+(((r02)*(x10404)))+(((IkReal(-1.00000000000000))*(x10400)*(x10406)))+(((IkReal(-1.00000000000000))*(x10403)*(x10407)))+(((IkReal(-1.00000000000000))*(x10399)*(x10408)))+(((IkReal(-1.00000000000000))*(x10401)*(x10407)))+(((IkReal(-1.00000000000000))*(x10400)*(x10414)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x10409)*(x10415)))+(((r00)*(sj0)*(x10409)))+(((IkReal(-1.00000000000000))*(x10402)*(x10404)*(x10406)))+(((r11)*(x10416)))+(((IkReal(-1.00000000000000))*(x10399)))+(((cj4)*(x10403)*(x10405)))+(((IkReal(-1.00000000000000))*(r01)*(x10417)))+(((IkReal(-1.00000000000000))*(r12)*(x10402)*(x10407)))+(((cj4)*(x10401)*(x10405)))+(((cj4)*(r02)*(x10400)))+(((IkReal(-1.00000000000000))*(x10402)*(x10404)*(x10414)))); +evalcond[5]=((((r11)*(x10417)))+(((IkReal(-1.00000000000000))*(x10401)*(x10402)*(x10404)))+(((IkReal(-1.00000000000000))*(x10402)*(x10405)*(x10414)))+(((IkReal(-1.00000000000000))*(x10402)*(x10405)*(x10406)))+(((IkReal(-1.00000000000000))*(x10402)*(x10403)*(x10404)))+(((r01)*(x10416)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10409)))+(((IkReal(-1.00000000000000))*(x10398)*(x10408)))+(((IkReal(-1.00000000000000))*(r00)*(x10409)*(x10415)))+(((IkReal(-1.00000000000000))*(r02)*(x10402)*(x10407)))+(((IkReal(-1.00000000000000))*(r12)*(x10400)*(x10402)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10418=((cj1)*(sj6)); +IkReal x10419=((r01)*(sj0)); +IkReal x10420=((cj0)*(r11)); +IkReal x10421=((cj1)*(cj6)); +IkReal x10422=((cj0)*(r10)); +IkReal x10423=((IkReal(1.00000000000000))*(sj0)); +IkReal x10424=((cj1)*(sj5)); +if( IKabs(((gconst26)*(((((IkReal(-1.00000000000000))*(r00)*(x10421)*(x10423)))+(((IkReal(-1.00000000000000))*(x10418)*(x10420)))+(((x10421)*(x10422)))+(((x10418)*(x10419))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst26)*(((((IkReal(-1.00000000000000))*(cj5)*(x10419)*(x10421)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10418)*(x10423)))+(((IkReal(-1.00000000000000))*(r02)*(x10423)*(x10424)))+(((cj5)*(x10418)*(x10422)))+(((cj5)*(x10420)*(x10421)))+(((cj0)*(r12)*(x10424))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst26)*(((((IkReal(-1.00000000000000))*(r00)*(x10421)*(x10423)))+(((IkReal(-1.00000000000000))*(x10418)*(x10420)))+(((x10421)*(x10422)))+(((x10418)*(x10419)))))), ((gconst26)*(((((IkReal(-1.00000000000000))*(cj5)*(x10419)*(x10421)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10418)*(x10423)))+(((IkReal(-1.00000000000000))*(r02)*(x10423)*(x10424)))+(((cj5)*(x10418)*(x10422)))+(((cj5)*(x10420)*(x10421)))+(((cj0)*(r12)*(x10424))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x10425=IKsin(j4); +IkReal x10426=IKcos(j4); +IkReal x10427=((r00)*(sj6)); +IkReal x10428=((cj6)*(r01)); +IkReal x10429=((IkReal(1.00000000000000))*(cj0)); +IkReal x10430=((IkReal(1.00000000000000))*(sj0)); +IkReal x10431=((r10)*(sj6)); +IkReal x10432=((sj5)*(x10425)); +IkReal x10433=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x10434=((cj5)*(x10425)); +IkReal x10435=((cj6)*(x10426)); +IkReal x10436=((sj0)*(x10434)); +IkReal x10437=((r01)*(sj6)*(x10426)); +IkReal x10438=((r11)*(sj6)*(x10426)); +evalcond[0]=((((r22)*(x10432)))+(((r20)*(sj6)*(x10434)))+(((cj6)*(r21)*(x10434)))+(cj1)+(((IkReal(-1.00000000000000))*(r20)*(x10435)))+(((r21)*(sj6)*(x10426)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r12)*(x10429)*(x10432)))+(((sj0)*(x10437)))+(((IkReal(-1.00000000000000))*(x10429)*(x10431)*(x10434)))+(((cj0)*(r10)*(x10435)))+(((r02)*(sj0)*(x10432)))+(((IkReal(-1.00000000000000))*(r00)*(x10430)*(x10435)))+(((x10427)*(x10436)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10429)*(x10434)))+(((x10428)*(x10436)))+(((IkReal(-1.00000000000000))*(x10429)*(x10438)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10430)*(x10434)))+(((IkReal(-1.00000000000000))*(x10430)*(x10438)))+(((IkReal(-1.00000000000000))*(x10429)*(x10437)))+(((IkReal(-1.00000000000000))*(sj1)))+(((r10)*(sj0)*(x10435)))+(((IkReal(-1.00000000000000))*(r12)*(x10430)*(x10432)))+(((cj0)*(r00)*(x10435)))+(((IkReal(-1.00000000000000))*(x10428)*(x10429)*(x10434)))+(((IkReal(-1.00000000000000))*(r02)*(x10429)*(x10432)))+(((IkReal(-1.00000000000000))*(x10427)*(x10429)*(x10434)))+(((IkReal(-1.00000000000000))*(x10430)*(x10431)*(x10434)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst30; +gconst30=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x10439=((IkReal(1.00000000000000))*(cj0)); +IkReal x10440=((cj4)*(sj6)); +IkReal x10441=((sj0)*(sj6)); +IkReal x10442=((cj5)*(sj4)); +IkReal x10443=((IkReal(0.374290000000000))*(sj5)); +IkReal x10444=((sj4)*(sj5)); +IkReal x10445=((cj0)*(cj6)); +IkReal x10446=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10447=((cj4)*(sj5)); +IkReal x10448=((cj5)*(sj0)); +IkReal x10449=((IkReal(0.374290000000000))*(r02)); +IkReal x10450=((r20)*(sj6)); +IkReal x10451=((cj6)*(r21)); +IkReal x10452=((IkReal(1.00000000000000))*(sj0)); +IkReal x10453=((cj0)*(sj6)); +IkReal x10454=((cj4)*(cj6)); +IkReal x10455=((IkReal(0.374290000000000))*(r12)); +IkReal x10456=((cj0)*(cj5)); +IkReal x10457=((cj6)*(sj5)); +IkReal x10458=((cj6)*(r01)); +IkReal x10459=((r00)*(sj6)); +IkReal x10460=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10461=((cj6)*(r11)); +IkReal x10462=((IkReal(1.00000000000000))*(r10)); +IkReal x10463=((r02)*(sj0)); +IkReal x10464=((cj6)*(sj4)); +IkReal x10465=((r12)*(x10452)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x10454)))+(((r22)*(x10444)))+(((x10442)*(x10451)))+(((x10442)*(x10450)))+(((r21)*(x10440)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(x10446)*(x10451)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x10460)))+(((x10443)*(x10450)))+(pz)+(((IkReal(-1.00000000000000))*(x10446)*(x10450)))+(((x10443)*(x10451)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x10441)*(x10462)))+(((IkReal(-1.00000000000000))*(sj5)*(x10439)*(x10459)))+(((IkReal(-1.00000000000000))*(r01)*(x10439)*(x10457)))+(((r12)*(x10448)))+(((IkReal(-1.00000000000000))*(r11)*(x10452)*(x10457)))+(((r02)*(x10456)))); +evalcond[4]=((((cj4)*(r10)*(x10445)))+(((IkReal(-1.00000000000000))*(r00)*(x10452)*(x10454)))+(((x10444)*(x10463)))+(((r01)*(sj0)*(x10440)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x10439)*(x10442)))+(((sj0)*(x10442)*(x10458)))+(((IkReal(-1.00000000000000))*(r12)*(x10439)*(x10444)))+(((r00)*(x10441)*(x10442)))+(((IkReal(-1.00000000000000))*(x10439)*(x10442)*(x10461)))+(((IkReal(-1.00000000000000))*(r11)*(x10439)*(x10440)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x10444)*(x10465)))+(((r10)*(sj0)*(x10454)))+(((IkReal(-1.00000000000000))*(x10439)*(x10442)*(x10458)))+(((IkReal(-1.00000000000000))*(r01)*(x10439)*(x10440)))+(((cj4)*(r00)*(x10445)))+(((IkReal(-1.00000000000000))*(x10442)*(x10452)*(x10461)))+(((IkReal(-1.00000000000000))*(r11)*(x10440)*(x10452)))+(((IkReal(-1.00000000000000))*(x10439)*(x10442)*(x10459)))+(((IkReal(-1.00000000000000))*(x10441)*(x10442)*(x10462)))+(((IkReal(-1.00000000000000))*(r02)*(x10439)*(x10444)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r00)*(x10441)*(x10446)))+(((r10)*(x10446)*(x10453)))+(((IkReal(-1.00000000000000))*(r11)*(x10443)*(x10445)))+(((IkReal(-1.00000000000000))*(sj0)*(x10446)*(x10458)))+(((IkReal(-1.00000000000000))*(x10460)*(x10463)))+(((cj0)*(r12)*(x10460)))+(((sj0)*(x10443)*(x10458)))+(((IkReal(-1.00000000000000))*(py)*(x10439)))+(((r11)*(x10445)*(x10446)))+(((px)*(sj0)))+(((x10455)*(x10456)))+(((IkReal(-1.00000000000000))*(x10448)*(x10449)))+(((IkReal(-1.00000000000000))*(r10)*(x10443)*(x10453)))+(((r00)*(x10441)*(x10443)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r02)*(x10439)*(x10447)))+(((IkReal(-1.00000000000000))*(r10)*(x10452)*(x10464)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10439)*(x10454)))+(((IkReal(-1.00000000000000))*(r11)*(x10448)*(x10454)))+(((r01)*(sj4)*(x10453)))+(((IkReal(-1.00000000000000))*(r00)*(x10439)*(x10464)))+(((IkReal(-1.00000000000000))*(x10447)*(x10465)))+(((IkReal(-1.00000000000000))*(x10440)*(x10448)*(x10462)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10439)*(x10440)))+(((r11)*(sj4)*(x10441)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x10439)))+(((IkReal(-1.00000000000000))*(py)*(x10452)))+(((r01)*(x10445)*(x10446)))+(((IkReal(-1.00000000000000))*(r00)*(x10443)*(x10453)))+(((sj0)*(x10446)*(x10461)))+(((IkReal(-1.00000000000000))*(r01)*(x10443)*(x10445)))+(((x10449)*(x10456)))+(((r00)*(x10446)*(x10453)))+(((cj0)*(r02)*(x10460)))+(((IkReal(-1.00000000000000))*(sj0)*(x10443)*(x10461)))+(((x10448)*(x10455)))+(((r12)*(sj0)*(x10460)))+(((r10)*(x10441)*(x10446)))+(((IkReal(-1.00000000000000))*(r10)*(x10441)*(x10443)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10466=((r20)*(sj6)); +IkReal x10467=((cj4)*(cj5)); +IkReal x10468=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10467)*(x10468)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10466)*(x10467))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x10466)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10468))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10467)*(x10468)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10466)*(x10467)))))+IKsqr(((((sj5)*(x10466)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10468)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10467)*(x10468)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10466)*(x10467)))), ((((sj5)*(x10466)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10468))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10469=IKsin(j3); +IkReal x10470=((sj0)*(sj5)); +IkReal x10471=((r00)*(sj6)); +IkReal x10472=((cj6)*(r01)); +IkReal x10473=((cj5)*(sj0)); +IkReal x10474=((cj0)*(cj5)); +IkReal x10475=((cj6)*(sj4)); +IkReal x10476=((sj4)*(sj6)); +IkReal x10477=((cj0)*(r11)); +IkReal x10478=((cj4)*(cj6)); +IkReal x10479=((cj4)*(sj6)); +IkReal x10480=((IkReal(1.00000000000000))*(cj0)); +IkReal x10481=((cj4)*(sj5)); +IkReal x10482=((sj5)*(sj6)); +IkReal x10483=((cj6)*(sj5)); +IkReal x10484=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((r21)*(x10483)))+(((r20)*(x10482)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10484)))); +evalcond[1]=((((cj5)*(r20)*(x10479)))+(((IkReal(-1.00000000000000))*(x10469)))+(((IkReal(-1.00000000000000))*(r21)*(x10476)))+(((r22)*(x10481)))+(((cj5)*(r21)*(x10478)))+(((r20)*(x10475)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x10473)))+(((IkReal(-1.00000000000000))*(r10)*(x10480)*(x10482)))+(((r12)*(x10474)))+(((IkReal(-1.00000000000000))*(x10477)*(x10483)))+(((x10470)*(x10471)))+(((x10470)*(x10472)))+(x10469)); +evalcond[3]=((((r00)*(sj0)*(x10475)))+(((IkReal(-1.00000000000000))*(r12)*(x10480)*(x10481)))+(((cj4)*(x10471)*(x10473)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x10476)))+(((IkReal(-1.00000000000000))*(r10)*(x10474)*(x10479)))+(((cj4)*(r02)*(x10470)))+(((x10476)*(x10477)))+(((cj4)*(x10472)*(x10473)))+(((IkReal(-1.00000000000000))*(r10)*(x10475)*(x10480)))+(((IkReal(-1.00000000000000))*(x10484)))+(((IkReal(-1.00000000000000))*(r11)*(x10474)*(x10478)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10485=((IkReal(1.00000000000000))*(cj0)); +IkReal x10486=((cj4)*(sj6)); +IkReal x10487=((sj0)*(sj6)); +IkReal x10488=((cj5)*(sj4)); +IkReal x10489=((IkReal(0.374290000000000))*(sj5)); +IkReal x10490=((sj4)*(sj5)); +IkReal x10491=((cj0)*(cj6)); +IkReal x10492=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10493=((cj4)*(sj5)); +IkReal x10494=((cj5)*(sj0)); +IkReal x10495=((IkReal(0.374290000000000))*(r02)); +IkReal x10496=((r20)*(sj6)); +IkReal x10497=((cj6)*(r21)); +IkReal x10498=((IkReal(1.00000000000000))*(sj0)); +IkReal x10499=((cj0)*(sj6)); +IkReal x10500=((cj4)*(cj6)); +IkReal x10501=((IkReal(0.374290000000000))*(r12)); +IkReal x10502=((cj0)*(cj5)); +IkReal x10503=((cj6)*(sj5)); +IkReal x10504=((cj6)*(r01)); +IkReal x10505=((r00)*(sj6)); +IkReal x10506=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10507=((cj6)*(r11)); +IkReal x10508=((IkReal(1.00000000000000))*(r10)); +IkReal x10509=((r02)*(sj0)); +IkReal x10510=((cj6)*(sj4)); +IkReal x10511=((r12)*(x10498)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x10488)*(x10497)))+(((x10488)*(x10496)))+(((IkReal(-1.00000000000000))*(r20)*(x10500)))+(((r22)*(x10490)))+(((r21)*(x10486)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x10489)*(x10497)))+(((IkReal(-1.00000000000000))*(x10492)*(x10496)))+(((IkReal(-1.00000000000000))*(x10492)*(x10497)))+(((x10489)*(x10496)))+(((IkReal(-1.00000000000000))*(r22)*(x10506)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x10485)*(x10505)))+(((r02)*(x10502)))+(((IkReal(-1.00000000000000))*(sj5)*(x10487)*(x10508)))+(((r12)*(x10494)))+(((IkReal(-1.00000000000000))*(r11)*(x10498)*(x10503)))+(((IkReal(-1.00000000000000))*(r01)*(x10485)*(x10503)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x10485)*(x10490)))+(((IkReal(-1.00000000000000))*(r00)*(x10498)*(x10500)))+(((r01)*(sj0)*(x10486)))+(((IkReal(-1.00000000000000))*(r11)*(x10485)*(x10486)))+(((x10490)*(x10509)))+(((r00)*(x10487)*(x10488)))+(((cj4)*(r10)*(x10491)))+(((sj0)*(x10488)*(x10504)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x10485)*(x10488)))+(((IkReal(-1.00000000000000))*(x10485)*(x10488)*(x10507)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r11)*(x10486)*(x10498)))+(((IkReal(-1.00000000000000))*(x10485)*(x10488)*(x10504)))+(((IkReal(-1.00000000000000))*(x10485)*(x10488)*(x10505)))+(((IkReal(-1.00000000000000))*(x10490)*(x10511)))+(((IkReal(-1.00000000000000))*(x10488)*(x10498)*(x10507)))+(((IkReal(-1.00000000000000))*(r01)*(x10485)*(x10486)))+(((IkReal(-1.00000000000000))*(r02)*(x10485)*(x10490)))+(((cj4)*(r00)*(x10491)))+(((IkReal(-1.00000000000000))*(x10487)*(x10488)*(x10508)))+(((r10)*(sj0)*(x10500)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((r00)*(x10487)*(x10489)))+(((IkReal(-1.00000000000000))*(sj0)*(x10492)*(x10504)))+(((IkReal(-1.00000000000000))*(r00)*(x10487)*(x10492)))+(((r10)*(x10492)*(x10499)))+(((IkReal(-1.00000000000000))*(r10)*(x10489)*(x10499)))+(((IkReal(-1.00000000000000))*(x10494)*(x10495)))+(((IkReal(-1.00000000000000))*(py)*(x10485)))+(((r11)*(x10491)*(x10492)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x10506)*(x10509)))+(((IkReal(-1.00000000000000))*(r11)*(x10489)*(x10491)))+(((x10501)*(x10502)))+(((cj0)*(r12)*(x10506)))+(((sj0)*(x10489)*(x10504)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x10493)*(x10511)))+(((r11)*(sj4)*(x10487)))+(((IkReal(-1.00000000000000))*(r00)*(x10485)*(x10510)))+(((IkReal(-1.00000000000000))*(r10)*(x10498)*(x10510)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x10485)*(x10486)))+(((IkReal(-1.00000000000000))*(r11)*(x10494)*(x10500)))+(((IkReal(-1.00000000000000))*(r02)*(x10485)*(x10493)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x10485)*(x10500)))+(((IkReal(-1.00000000000000))*(x10486)*(x10494)*(x10508)))+(((r01)*(sj4)*(x10499)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x10487)*(x10489)))+(((r10)*(x10487)*(x10492)))+(((IkReal(-1.00000000000000))*(sj0)*(x10489)*(x10507)))+(((IkReal(-1.00000000000000))*(r01)*(x10489)*(x10491)))+(((sj0)*(x10492)*(x10507)))+(((x10494)*(x10501)))+(((IkReal(-1.00000000000000))*(py)*(x10498)))+(((r12)*(sj0)*(x10506)))+(((IkReal(-1.00000000000000))*(r00)*(x10489)*(x10499)))+(((IkReal(-1.00000000000000))*(px)*(x10485)))+(((r01)*(x10491)*(x10492)))+(((cj0)*(r02)*(x10506)))+(((r00)*(x10492)*(x10499)))+(((x10495)*(x10502)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10512=((IkReal(1.00000000000000))*(sj5)); +IkReal x10513=((cj6)*(r21)); +IkReal x10514=((r20)*(sj6)); +IkReal x10515=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10512)))+(((IkReal(-1.00000000000000))*(x10514)*(x10515)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x10513)*(x10515)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x10512)*(x10513)))+(((IkReal(-1.00000000000000))*(x10512)*(x10514)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10512)))+(((IkReal(-1.00000000000000))*(x10514)*(x10515)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x10513)*(x10515)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x10512)*(x10513)))+(((IkReal(-1.00000000000000))*(x10512)*(x10514)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x10512)))+(((IkReal(-1.00000000000000))*(x10514)*(x10515)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x10513)*(x10515)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x10512)*(x10513)))+(((IkReal(-1.00000000000000))*(x10512)*(x10514)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10516=IKsin(j3); +IkReal x10517=IKcos(j3); +IkReal x10518=((sj0)*(sj5)); +IkReal x10519=((r00)*(sj6)); +IkReal x10520=((cj6)*(r01)); +IkReal x10521=((cj0)*(cj5)); +IkReal x10522=((IkReal(1.00000000000000))*(cj5)); +IkReal x10523=((cj4)*(cj5)); +IkReal x10524=((cj6)*(sj4)); +IkReal x10525=((sj4)*(sj6)); +IkReal x10526=((cj0)*(r11)); +IkReal x10527=((IkReal(1.00000000000000))*(cj4)); +IkReal x10528=((cj6)*(r21)); +IkReal x10529=((r20)*(sj6)); +IkReal x10530=((cj0)*(sj5)); +IkReal x10531=((r10)*(sj6)); +evalcond[0]=((((sj5)*(x10528)))+(x10517)+(((sj5)*(x10529)))+(((IkReal(-1.00000000000000))*(r22)*(x10522)))); +evalcond[1]=((((r20)*(x10524)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x10525)))+(x10516)+(((x10523)*(x10529)))+(((x10523)*(x10528)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x10526)))+(((r12)*(x10521)))+(((x10518)*(x10519)))+(((IkReal(-1.00000000000000))*(x10530)*(x10531)))+(x10516)+(((x10518)*(x10520)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x10522)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r10)*(x10524)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10521)*(x10527)))+(((cj4)*(r02)*(x10518)))+(((IkReal(-1.00000000000000))*(r12)*(x10527)*(x10530)))+(((x10525)*(x10526)))+(((sj0)*(x10519)*(x10523)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x10525)))+(((IkReal(-1.00000000000000))*(x10517)))+(((IkReal(-1.00000000000000))*(x10521)*(x10527)*(x10531)))+(((sj0)*(x10520)*(x10523)))+(((r00)*(sj0)*(x10524)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10532=((IkReal(1.00000000000000))*(cj0)); +IkReal x10533=((cj4)*(sj6)); +IkReal x10534=((sj0)*(sj4)); +IkReal x10535=((cj5)*(sj6)); +IkReal x10536=((sj4)*(sj5)); +IkReal x10537=((r12)*(sj5)); +IkReal x10538=((IkReal(0.374290000000000))*(cj5)); +IkReal x10539=((r02)*(sj0)); +IkReal x10540=((r20)*(sj4)); +IkReal x10541=((IkReal(1.00000000000000))*(sj0)); +IkReal x10542=((IkReal(1.00000000000000))*(cj5)); +IkReal x10543=((cj0)*(r10)); +IkReal x10544=((cj4)*(cj6)); +IkReal x10545=((r00)*(sj0)); +IkReal x10546=((cj6)*(r21)); +IkReal x10547=((IkReal(0.374290000000000))*(sj5)); +IkReal x10548=((cj0)*(r00)); +IkReal x10549=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10550=((cj0)*(r02)); +IkReal x10551=((cj5)*(sj4)); +IkReal x10552=((cj6)*(r01)); +IkReal x10553=((cj6)*(r11)); +IkReal x10554=((r01)*(sj0)); +IkReal x10555=((r10)*(sj0)); +IkReal x10556=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x10557=((sj6)*(x10547)); +IkReal x10558=((cj0)*(cj6)*(x10547)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x10546)))+(((IkReal(-1.00000000000000))*(r22)*(x10542)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((r21)*(x10533)))+(((IkReal(-1.00000000000000))*(r20)*(x10544)))+(((x10535)*(x10540)))+(((x10546)*(x10551)))+(((r22)*(x10536)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x10538)))+(((x10546)*(x10547)))+(((IkReal(-0.0100000000000000))*(cj5)*(x10546)))+(((r20)*(x10557)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x10549)))+(((IkReal(-0.0100000000000000))*(r20)*(x10535)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x10533)))+(((cj6)*(x10540)))+(((cj5)*(r21)*(x10544)))); +evalcond[5]=((((r02)*(sj5)*(x10534)))+(((cj5)*(x10534)*(x10552)))+(((x10543)*(x10544)))+(((x10533)*(x10554)))+(((IkReal(-1.00000000000000))*(x10532)*(x10551)*(x10553)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x10532)*(x10535)))+(((IkReal(-1.00000000000000))*(r11)*(x10532)*(x10533)))+(((r00)*(x10534)*(x10535)))+(((IkReal(-1.00000000000000))*(r12)*(x10532)*(x10536)))+(((IkReal(-1.00000000000000))*(r00)*(x10541)*(x10544)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r02)*(x10532)*(x10536)))+(((IkReal(-1.00000000000000))*(r10)*(x10534)*(x10535)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x10532)*(x10535)))+(((IkReal(-1.00000000000000))*(x10532)*(x10551)*(x10552)))+(((IkReal(-1.00000000000000))*(r11)*(x10533)*(x10541)))+(((IkReal(-1.00000000000000))*(x10534)*(x10537)))+(((IkReal(-1.00000000000000))*(r01)*(x10532)*(x10533)))+(((x10544)*(x10555)))+(((x10544)*(x10548)))+(((IkReal(-1.00000000000000))*(x10534)*(x10542)*(x10553)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10553)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x10552)))+(((IkReal(-1.00000000000000))*(x10543)*(x10557)))+(((IkReal(0.0100000000000000))*(x10535)*(x10543)))+(((IkReal(-1.00000000000000))*(py)*(x10532)))+(((IkReal(-0.0100000000000000))*(x10535)*(x10545)))+(((IkReal(-1.00000000000000))*(cj0)*(x10547)*(x10553)))+(((cj0)*(r12)*(x10538)))+(((x10545)*(x10557)))+(((IkReal(-1.00000000000000))*(x10538)*(x10539)))+(((IkReal(0.0100000000000000))*(cj0)*(x10537)))+(((sj0)*(x10547)*(x10552)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x10539)*(x10549)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(x10548)*(x10557)))+(((IkReal(-1.00000000000000))*(px)*(x10532)))+(((IkReal(0.0100000000000000))*(sj0)*(x10537)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10552)))+(((IkReal(-1.00000000000000))*(py)*(x10541)))+(((r12)*(sj0)*(x10538)))+(((IkReal(0.0100000000000000))*(x10535)*(x10548)))+(((IkReal(-1.00000000000000))*(x10555)*(x10557)))+(((IkReal(0.0100000000000000))*(x10535)*(x10555)))+(((x10549)*(x10550)))+(((x10538)*(x10550)))+(((IkReal(-1.00000000000000))*(sj0)*(x10547)*(x10553)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x10553)))+(((IkReal(-1.00000000000000))*(cj0)*(x10547)*(x10552)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10559=((cj5)*(r02)); +IkReal x10560=((cj0)*(sj5)); +IkReal x10561=((r10)*(sj6)); +IkReal x10562=((IkReal(1.00000000000000))*(cj6)); +IkReal x10563=((sj0)*(sj5)); +IkReal x10564=((cj5)*(r12)); +IkReal x10565=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((x10560)*(x10561)))+(((IkReal(-1.00000000000000))*(r01)*(x10562)*(x10563)))+(((IkReal(-1.00000000000000))*(cj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10563)*(x10565)))+(((cj6)*(r11)*(x10560)))+(((sj0)*(x10559))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x10561)*(x10563)))+(((cj0)*(x10559)))+(((IkReal(-1.00000000000000))*(r01)*(x10560)*(x10562)))+(((sj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10560)*(x10565)))+(((IkReal(-1.00000000000000))*(r11)*(x10562)*(x10563))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x10560)*(x10561)))+(((IkReal(-1.00000000000000))*(r01)*(x10562)*(x10563)))+(((IkReal(-1.00000000000000))*(cj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10563)*(x10565)))+(((cj6)*(r11)*(x10560)))+(((sj0)*(x10559)))))+IKsqr(((((IkReal(-1.00000000000000))*(x10561)*(x10563)))+(((cj0)*(x10559)))+(((IkReal(-1.00000000000000))*(r01)*(x10560)*(x10562)))+(((sj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10560)*(x10565)))+(((IkReal(-1.00000000000000))*(r11)*(x10562)*(x10563)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x10560)*(x10561)))+(((IkReal(-1.00000000000000))*(r01)*(x10562)*(x10563)))+(((IkReal(-1.00000000000000))*(cj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10563)*(x10565)))+(((cj6)*(r11)*(x10560)))+(((sj0)*(x10559)))), ((((IkReal(-1.00000000000000))*(x10561)*(x10563)))+(((cj0)*(x10559)))+(((IkReal(-1.00000000000000))*(r01)*(x10560)*(x10562)))+(((sj0)*(x10564)))+(((IkReal(-1.00000000000000))*(x10560)*(x10565)))+(((IkReal(-1.00000000000000))*(r11)*(x10562)*(x10563))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10566=IKsin(j3); +IkReal x10567=((sj0)*(sj5)); +IkReal x10568=((r00)*(sj6)); +IkReal x10569=((IkReal(1.00000000000000))*(cj4)); +IkReal x10570=((cj6)*(sj0)); +IkReal x10571=((r00)*(sj4)); +IkReal x10572=((cj0)*(cj5)); +IkReal x10573=((cj6)*(r01)); +IkReal x10574=((cj5)*(sj0)); +IkReal x10575=((cj0)*(sj5)); +IkReal x10576=((cj6)*(r11)); +IkReal x10577=((r10)*(sj6)); +IkReal x10578=((r10)*(sj4)); +IkReal x10579=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x10580=((cj0)*(sj4)*(sj6)); +IkReal x10581=((sj0)*(sj4)*(sj6)); +IkReal x10582=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r02)*(x10574)))+(((r12)*(x10572)))+(((x10567)*(x10573)))+(x10566)+(((x10567)*(x10568)))+(((IkReal(-1.00000000000000))*(x10575)*(x10576)))+(((IkReal(-1.00000000000000))*(x10575)*(x10577)))); +evalcond[1]=((((r12)*(x10574)))+(((IkReal(-1.00000000000000))*(x10568)*(x10575)))+(((IkReal(-1.00000000000000))*(x10567)*(x10576)))+(((IkReal(-1.00000000000000))*(x10579)))+(((IkReal(-1.00000000000000))*(x10573)*(x10575)))+(((IkReal(-1.00000000000000))*(x10567)*(x10577)))+(((r02)*(x10572)))); +evalcond[2]=((((x10570)*(x10571)))+(((IkReal(-1.00000000000000))*(x10578)*(x10582)))+(((IkReal(-1.00000000000000))*(x10579)))+(((IkReal(-1.00000000000000))*(r12)*(x10569)*(x10575)))+(((IkReal(-1.00000000000000))*(x10569)*(x10572)*(x10576)))+(((cj4)*(cj5)*(r01)*(x10570)))+(((IkReal(-1.00000000000000))*(r01)*(x10581)))+(((r11)*(x10580)))+(((IkReal(-1.00000000000000))*(x10569)*(x10572)*(x10577)))+(((cj4)*(x10568)*(x10574)))+(((cj4)*(r02)*(x10567)))); +evalcond[3]=((((r01)*(x10580)))+(((IkReal(-1.00000000000000))*(r12)*(x10567)*(x10569)))+(((IkReal(-1.00000000000000))*(x10569)*(x10572)*(x10573)))+(((IkReal(-1.00000000000000))*(x10569)*(x10574)*(x10577)))+(((IkReal(-1.00000000000000))*(x10566)))+(((IkReal(-1.00000000000000))*(x10568)*(x10569)*(x10572)))+(((r11)*(x10581)))+(((IkReal(-1.00000000000000))*(r02)*(x10569)*(x10575)))+(((IkReal(-1.00000000000000))*(x10570)*(x10578)))+(((IkReal(-1.00000000000000))*(x10571)*(x10582)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x10569)*(x10570)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x10583=((IkReal(1.00000000000000))*(cj0)); +IkReal x10584=((cj4)*(sj6)); +IkReal x10585=((sj0)*(sj4)); +IkReal x10586=((cj5)*(sj6)); +IkReal x10587=((sj4)*(sj5)); +IkReal x10588=((r12)*(sj5)); +IkReal x10589=((IkReal(0.374290000000000))*(cj5)); +IkReal x10590=((r02)*(sj0)); +IkReal x10591=((r20)*(sj4)); +IkReal x10592=((IkReal(1.00000000000000))*(sj0)); +IkReal x10593=((IkReal(1.00000000000000))*(cj5)); +IkReal x10594=((cj0)*(r10)); +IkReal x10595=((cj4)*(cj6)); +IkReal x10596=((r00)*(sj0)); +IkReal x10597=((cj6)*(r21)); +IkReal x10598=((IkReal(0.374290000000000))*(sj5)); +IkReal x10599=((cj0)*(r00)); +IkReal x10600=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10601=((cj0)*(r02)); +IkReal x10602=((cj5)*(sj4)); +IkReal x10603=((cj6)*(r01)); +IkReal x10604=((cj6)*(r11)); +IkReal x10605=((r01)*(sj0)); +IkReal x10606=((r10)*(sj0)); +IkReal x10607=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x10608=((sj6)*(x10598)); +IkReal x10609=((cj0)*(cj6)*(x10598)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x10593)))+(((sj5)*(x10597)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((x10586)*(x10591)))+(((r21)*(x10584)))+(((r22)*(x10587)))+(((IkReal(-1.00000000000000))*(r20)*(x10595)))+(((x10597)*(x10602)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x10597)))+(((r20)*(x10608)))+(((IkReal(-1.00000000000000))*(r22)*(x10589)))+(((IkReal(-1.00000000000000))*(r22)*(x10600)))+(((IkReal(-0.0100000000000000))*(r20)*(x10586)))+(pz)+(((x10597)*(x10598)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x10595)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x10584)))+(((cj6)*(x10591)))); +evalcond[5]=((((x10584)*(x10605)))+(((IkReal(-1.00000000000000))*(r00)*(x10592)*(x10595)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x10583)*(x10586)))+(((x10594)*(x10595)))+(((r00)*(x10585)*(x10586)))+(((IkReal(-1.00000000000000))*(r11)*(x10583)*(x10584)))+(((r02)*(sj5)*(x10585)))+(((IkReal(-1.00000000000000))*(r12)*(x10583)*(x10587)))+(((cj5)*(x10585)*(x10603)))+(((IkReal(-1.00000000000000))*(x10583)*(x10602)*(x10604)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r11)*(x10584)*(x10592)))+(((IkReal(-1.00000000000000))*(x10583)*(x10602)*(x10603)))+(((IkReal(-1.00000000000000))*(x10585)*(x10588)))+(((IkReal(-1.00000000000000))*(r02)*(x10583)*(x10587)))+(((x10595)*(x10606)))+(((IkReal(-1.00000000000000))*(x10585)*(x10593)*(x10604)))+(((IkReal(-1.00000000000000))*(r01)*(x10583)*(x10584)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x10583)*(x10586)))+(((x10595)*(x10599)))+(((IkReal(-1.00000000000000))*(r10)*(x10585)*(x10586)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((x10596)*(x10608)))+(((sj0)*(x10598)*(x10603)))+(((IkReal(0.0100000000000000))*(x10586)*(x10594)))+(((IkReal(-1.00000000000000))*(x10590)*(x10600)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10604)))+(((IkReal(0.0100000000000000))*(cj0)*(x10588)))+(((IkReal(-0.0100000000000000))*(x10586)*(x10596)))+(((IkReal(-1.00000000000000))*(py)*(x10583)))+(((IkReal(-1.00000000000000))*(x10594)*(x10608)))+(((IkReal(-1.00000000000000))*(cj0)*(x10598)*(x10604)))+(((cj0)*(r12)*(x10589)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x10589)*(x10590)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x10603)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(x10586)*(x10606)))+(((IkReal(-1.00000000000000))*(x10606)*(x10608)))+(((IkReal(-1.00000000000000))*(cj0)*(x10598)*(x10603)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x10603)))+(((IkReal(-1.00000000000000))*(x10599)*(x10608)))+(((x10589)*(x10601)))+(((IkReal(0.0100000000000000))*(sj0)*(x10588)))+(((IkReal(-1.00000000000000))*(px)*(x10583)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x10604)))+(((r12)*(sj0)*(x10589)))+(((IkReal(-1.00000000000000))*(py)*(x10592)))+(((IkReal(-1.00000000000000))*(sj0)*(x10598)*(x10604)))+(((x10600)*(x10601)))+(((IkReal(0.0100000000000000))*(x10586)*(x10599)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10610=((IkReal(1.00000000000000))*(cj5)); +IkReal x10611=((r10)*(sj5)*(sj6)); +IkReal x10612=((cj6)*(sj0)*(sj5)); +IkReal x10613=((r00)*(sj5)*(sj6)); +IkReal x10614=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10610)))+(((cj0)*(x10611)))+(((IkReal(-1.00000000000000))*(r01)*(x10612)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x10614)))+(((IkReal(-1.00000000000000))*(sj0)*(x10613))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10610)))+(((cj0)*(x10613)))+(((sj0)*(x10611)))+(((r11)*(x10612)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10610)))+(((r01)*(x10614))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10610)))+(((cj0)*(x10611)))+(((IkReal(-1.00000000000000))*(r01)*(x10612)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x10614)))+(((IkReal(-1.00000000000000))*(sj0)*(x10613)))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10610)))+(((cj0)*(x10613)))+(((sj0)*(x10611)))+(((r11)*(x10612)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10610)))+(((r01)*(x10614)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10610)))+(((cj0)*(x10611)))+(((IkReal(-1.00000000000000))*(r01)*(x10612)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x10614)))+(((IkReal(-1.00000000000000))*(sj0)*(x10613)))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10610)))+(((cj0)*(x10613)))+(((sj0)*(x10611)))+(((r11)*(x10612)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10610)))+(((r01)*(x10614))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10615=IKcos(j3); +IkReal x10616=IKsin(j3); +IkReal x10617=((sj0)*(sj5)); +IkReal x10618=((r00)*(sj6)); +IkReal x10619=((IkReal(1.00000000000000))*(cj4)); +IkReal x10620=((cj6)*(sj0)); +IkReal x10621=((r00)*(sj4)); +IkReal x10622=((cj0)*(cj5)); +IkReal x10623=((cj6)*(r01)); +IkReal x10624=((cj5)*(sj0)); +IkReal x10625=((cj0)*(sj5)); +IkReal x10626=((cj6)*(r11)); +IkReal x10627=((r10)*(sj6)); +IkReal x10628=((r10)*(sj4)); +IkReal x10629=((cj0)*(sj4)*(sj6)); +IkReal x10630=((sj0)*(sj4)*(sj6)); +IkReal x10631=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x10625)*(x10627)))+(((x10617)*(x10618)))+(((IkReal(-1.00000000000000))*(r02)*(x10624)))+(((IkReal(-1.00000000000000))*(x10625)*(x10626)))+(x10616)+(((x10617)*(x10623)))+(((r12)*(x10622)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10618)*(x10625)))+(((IkReal(-1.00000000000000))*(x10623)*(x10625)))+(((r02)*(x10622)))+(((IkReal(-1.00000000000000))*(x10617)*(x10627)))+(((r12)*(x10624)))+(x10615)+(((IkReal(-1.00000000000000))*(x10617)*(x10626)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10628)*(x10631)))+(((IkReal(-1.00000000000000))*(r12)*(x10619)*(x10625)))+(((r11)*(x10629)))+(((cj4)*(cj5)*(r01)*(x10620)))+(((cj4)*(x10618)*(x10624)))+(((IkReal(-1.00000000000000))*(x10615)))+(((IkReal(-1.00000000000000))*(x10619)*(x10622)*(x10626)))+(((cj4)*(r02)*(x10617)))+(((IkReal(-1.00000000000000))*(x10619)*(x10622)*(x10627)))+(((IkReal(-1.00000000000000))*(r01)*(x10630)))+(((x10620)*(x10621)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x10619)*(x10620)))+(((IkReal(-1.00000000000000))*(x10620)*(x10628)))+(((r11)*(x10630)))+(((IkReal(-1.00000000000000))*(x10619)*(x10624)*(x10627)))+(x10616)+(((r01)*(x10629)))+(((IkReal(-1.00000000000000))*(x10621)*(x10631)))+(((IkReal(-1.00000000000000))*(x10619)*(x10622)*(x10623)))+(((IkReal(-1.00000000000000))*(r02)*(x10619)*(x10625)))+(((IkReal(-1.00000000000000))*(x10618)*(x10619)*(x10622)))+(((IkReal(-1.00000000000000))*(r12)*(x10617)*(x10619)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10632=((cj5)*(r02)); +IkReal x10633=((cj0)*(sj5)); +IkReal x10634=((r10)*(sj6)); +IkReal x10635=((IkReal(1.00000000000000))*(cj6)); +IkReal x10636=((sj0)*(sj5)); +IkReal x10637=((cj5)*(r12)); +IkReal x10638=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj0)*(x10637)))+(((IkReal(-1.00000000000000))*(x10636)*(x10638)))+(((IkReal(-1.00000000000000))*(r01)*(x10635)*(x10636)))+(((sj0)*(x10632)))+(((x10633)*(x10634)))+(((cj6)*(r11)*(x10633))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x10633)*(x10635)))+(((sj0)*(x10637)))+(((IkReal(-1.00000000000000))*(r11)*(x10635)*(x10636)))+(((IkReal(-1.00000000000000))*(x10633)*(x10638)))+(((IkReal(-1.00000000000000))*(x10634)*(x10636)))+(((cj0)*(x10632))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(x10637)))+(((IkReal(-1.00000000000000))*(x10636)*(x10638)))+(((IkReal(-1.00000000000000))*(r01)*(x10635)*(x10636)))+(((sj0)*(x10632)))+(((x10633)*(x10634)))+(((cj6)*(r11)*(x10633)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x10633)*(x10635)))+(((sj0)*(x10637)))+(((IkReal(-1.00000000000000))*(r11)*(x10635)*(x10636)))+(((IkReal(-1.00000000000000))*(x10633)*(x10638)))+(((IkReal(-1.00000000000000))*(x10634)*(x10636)))+(((cj0)*(x10632)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj0)*(x10637)))+(((IkReal(-1.00000000000000))*(x10636)*(x10638)))+(((IkReal(-1.00000000000000))*(r01)*(x10635)*(x10636)))+(((sj0)*(x10632)))+(((x10633)*(x10634)))+(((cj6)*(r11)*(x10633)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x10633)*(x10635)))+(((sj0)*(x10637)))+(((IkReal(-1.00000000000000))*(r11)*(x10635)*(x10636)))+(((IkReal(-1.00000000000000))*(x10633)*(x10638)))+(((IkReal(-1.00000000000000))*(x10634)*(x10636)))+(((cj0)*(x10632))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10639=IKsin(j3); +IkReal x10640=IKcos(j3); +IkReal x10641=((sj0)*(sj5)); +IkReal x10642=((r00)*(sj6)); +IkReal x10643=((IkReal(1.00000000000000))*(cj4)); +IkReal x10644=((cj6)*(r01)); +IkReal x10645=((cj0)*(cj5)); +IkReal x10646=((cj5)*(sj0)); +IkReal x10647=((cj6)*(r11)); +IkReal x10648=((cj0)*(sj5)); +IkReal x10649=((IkReal(1.00000000000000))*(cj1)); +IkReal x10650=((cj6)*(sj4)); +IkReal x10651=((IkReal(1.00000000000000))*(sj1)); +IkReal x10652=((cj4)*(cj5)); +IkReal x10653=((cj6)*(r21)); +IkReal x10654=((r20)*(sj6)); +IkReal x10655=((r10)*(sj6)); +IkReal x10656=((IkReal(1.00000000000000))*(cj0)); +IkReal x10657=((cj0)*(sj4)*(sj6)); +IkReal x10658=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x10654)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10653)))+(((IkReal(-1.00000000000000))*(x10640)*(x10651)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10639)*(x10651)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x10652)*(x10654)))+(((r20)*(x10650)))+(((x10652)*(x10653)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10648)*(x10655)))+(((IkReal(-1.00000000000000))*(x10647)*(x10648)))+(x10639)+(((x10641)*(x10644)))+(((x10641)*(x10642)))+(((r12)*(x10645)))+(((IkReal(-1.00000000000000))*(r02)*(x10646)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10641)*(x10655)))+(((IkReal(-1.00000000000000))*(x10641)*(x10647)))+(((r12)*(x10646)))+(((IkReal(-1.00000000000000))*(x10642)*(x10648)))+(((IkReal(-1.00000000000000))*(x10640)*(x10649)))+(((r02)*(x10645)))+(((IkReal(-1.00000000000000))*(x10644)*(x10648)))); +evalcond[4]=((((cj4)*(x10644)*(x10646)))+(((r11)*(x10657)))+(((IkReal(-1.00000000000000))*(r10)*(x10650)*(x10656)))+(((IkReal(-1.00000000000000))*(r01)*(x10658)))+(((IkReal(-1.00000000000000))*(x10640)))+(((IkReal(-1.00000000000000))*(x10643)*(x10645)*(x10647)))+(((cj4)*(x10642)*(x10646)))+(((cj4)*(r02)*(x10641)))+(((IkReal(-1.00000000000000))*(x10643)*(x10645)*(x10655)))+(((r00)*(sj0)*(x10650)))+(((IkReal(-1.00000000000000))*(r12)*(x10643)*(x10648)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10639)*(x10649)))+(((IkReal(-1.00000000000000))*(x10643)*(x10646)*(x10655)))+(((IkReal(-1.00000000000000))*(x10643)*(x10646)*(x10647)))+(((IkReal(-1.00000000000000))*(r02)*(x10643)*(x10648)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10650)))+(((IkReal(-1.00000000000000))*(r12)*(x10641)*(x10643)))+(((r11)*(x10658)))+(((IkReal(-1.00000000000000))*(r00)*(x10650)*(x10656)))+(((r01)*(x10657)))+(((IkReal(-1.00000000000000))*(x10643)*(x10644)*(x10645)))+(((IkReal(-1.00000000000000))*(x10642)*(x10643)*(x10645)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10659=((sj5)*(sj6)); +IkReal x10660=((IkReal(1.00000000000000))*(sj0)); +IkReal x10661=((cj6)*(sj5)); +IkReal x10662=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r10)*(x10659)))+(((IkReal(-1.00000000000000))*(r01)*(x10660)*(x10661)))+(((cj0)*(r11)*(x10661)))+(((IkReal(-1.00000000000000))*(r00)*(x10659)*(x10660)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10662))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10662)))+(((r20)*(x10659)))+(((r21)*(x10661))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r10)*(x10659)))+(((IkReal(-1.00000000000000))*(r01)*(x10660)*(x10661)))+(((cj0)*(r11)*(x10661)))+(((IkReal(-1.00000000000000))*(r00)*(x10659)*(x10660)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10662)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10662)))+(((r20)*(x10659)))+(((r21)*(x10661)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r10)*(x10659)))+(((IkReal(-1.00000000000000))*(r01)*(x10660)*(x10661)))+(((cj0)*(r11)*(x10661)))+(((IkReal(-1.00000000000000))*(r00)*(x10659)*(x10660)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x10662)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x10662)))+(((r20)*(x10659)))+(((r21)*(x10661))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10663=IKsin(j3); +IkReal x10664=IKcos(j3); +IkReal x10665=((sj0)*(sj5)); +IkReal x10666=((r00)*(sj6)); +IkReal x10667=((IkReal(1.00000000000000))*(cj4)); +IkReal x10668=((cj6)*(r01)); +IkReal x10669=((cj0)*(cj5)); +IkReal x10670=((cj5)*(sj0)); +IkReal x10671=((cj6)*(r11)); +IkReal x10672=((cj0)*(sj5)); +IkReal x10673=((IkReal(1.00000000000000))*(cj1)); +IkReal x10674=((cj6)*(sj4)); +IkReal x10675=((IkReal(1.00000000000000))*(sj1)); +IkReal x10676=((cj4)*(cj5)); +IkReal x10677=((cj6)*(r21)); +IkReal x10678=((r20)*(sj6)); +IkReal x10679=((r10)*(sj6)); +IkReal x10680=((IkReal(1.00000000000000))*(cj0)); +IkReal x10681=((cj0)*(sj4)*(sj6)); +IkReal x10682=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x10678)))+(((IkReal(-1.00000000000000))*(x10664)*(x10675)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10677)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10663)*(x10675)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x10676)*(x10677)))+(((r20)*(x10674)))+(((x10676)*(x10678)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10671)*(x10672)))+(((x10665)*(x10668)))+(((r12)*(x10669)))+(((IkReal(-1.00000000000000))*(x10672)*(x10679)))+(((IkReal(-1.00000000000000))*(r02)*(x10670)))+(x10663)+(((x10665)*(x10666)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10664)*(x10673)))+(((IkReal(-1.00000000000000))*(x10666)*(x10672)))+(((r12)*(x10670)))+(((IkReal(-1.00000000000000))*(x10668)*(x10672)))+(((IkReal(-1.00000000000000))*(x10665)*(x10679)))+(((r02)*(x10669)))+(((IkReal(-1.00000000000000))*(x10665)*(x10671)))); +evalcond[4]=((((cj4)*(x10666)*(x10670)))+(((IkReal(-1.00000000000000))*(x10667)*(x10669)*(x10671)))+(((IkReal(-1.00000000000000))*(r12)*(x10667)*(x10672)))+(((IkReal(-1.00000000000000))*(r10)*(x10674)*(x10680)))+(((cj4)*(r02)*(x10665)))+(((r11)*(x10681)))+(((IkReal(-1.00000000000000))*(x10664)))+(((IkReal(-1.00000000000000))*(r01)*(x10682)))+(((IkReal(-1.00000000000000))*(x10667)*(x10669)*(x10679)))+(((cj4)*(x10668)*(x10670)))+(((r00)*(sj0)*(x10674)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x10674)*(x10680)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10674)))+(((r01)*(x10681)))+(((IkReal(-1.00000000000000))*(x10667)*(x10670)*(x10671)))+(((IkReal(-1.00000000000000))*(r02)*(x10667)*(x10672)))+(((IkReal(-1.00000000000000))*(r12)*(x10665)*(x10667)))+(((IkReal(-1.00000000000000))*(x10666)*(x10667)*(x10669)))+(((IkReal(-1.00000000000000))*(x10667)*(x10670)*(x10679)))+(((IkReal(-1.00000000000000))*(x10667)*(x10668)*(x10669)))+(((IkReal(-1.00000000000000))*(x10663)*(x10673)))+(((r11)*(x10682)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10683=((r20)*(sj6)); +IkReal x10684=((cj4)*(cj5)); +IkReal x10685=((cj6)*(r21)); +if( IKabs(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10683)*(x10684)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10684)*(x10685))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst30)*(((((sj5)*(x10685)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10683))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst30)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x10683)*(x10684)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x10684)*(x10685)))))), ((gconst30)*(((((sj5)*(x10685)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10683))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x10686=IKsin(j3); +IkReal x10687=IKcos(j3); +IkReal x10688=((sj0)*(sj5)); +IkReal x10689=((r00)*(sj6)); +IkReal x10690=((IkReal(1.00000000000000))*(cj4)); +IkReal x10691=((cj6)*(r01)); +IkReal x10692=((cj0)*(cj5)); +IkReal x10693=((cj5)*(sj0)); +IkReal x10694=((cj6)*(r11)); +IkReal x10695=((cj0)*(sj5)); +IkReal x10696=((IkReal(1.00000000000000))*(cj1)); +IkReal x10697=((cj6)*(sj4)); +IkReal x10698=((IkReal(1.00000000000000))*(sj1)); +IkReal x10699=((cj4)*(cj5)); +IkReal x10700=((cj6)*(r21)); +IkReal x10701=((r20)*(sj6)); +IkReal x10702=((r10)*(sj6)); +IkReal x10703=((IkReal(1.00000000000000))*(cj0)); +IkReal x10704=((cj0)*(sj4)*(sj6)); +IkReal x10705=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x10687)*(x10698)))+(((sj5)*(x10700)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10701)))); +evalcond[1]=((((x10699)*(x10700)))+(((r20)*(x10697)))+(((x10699)*(x10701)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x10686)*(x10698)))+(((cj4)*(r22)*(sj5)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10695)*(x10702)))+(((IkReal(-1.00000000000000))*(x10694)*(x10695)))+(((IkReal(-1.00000000000000))*(r02)*(x10693)))+(x10686)+(((x10688)*(x10691)))+(((x10688)*(x10689)))+(((r12)*(x10692)))); +evalcond[3]=((((r12)*(x10693)))+(((IkReal(-1.00000000000000))*(x10689)*(x10695)))+(((IkReal(-1.00000000000000))*(x10687)*(x10696)))+(((IkReal(-1.00000000000000))*(x10688)*(x10694)))+(((IkReal(-1.00000000000000))*(x10691)*(x10695)))+(((IkReal(-1.00000000000000))*(x10688)*(x10702)))+(((r02)*(x10692)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x10705)))+(((r00)*(sj0)*(x10697)))+(((r11)*(x10704)))+(((cj4)*(x10691)*(x10693)))+(((IkReal(-1.00000000000000))*(x10690)*(x10692)*(x10702)))+(((cj4)*(x10689)*(x10693)))+(((cj4)*(r02)*(x10688)))+(((IkReal(-1.00000000000000))*(x10687)))+(((IkReal(-1.00000000000000))*(r10)*(x10697)*(x10703)))+(((IkReal(-1.00000000000000))*(r12)*(x10690)*(x10695)))+(((IkReal(-1.00000000000000))*(x10690)*(x10692)*(x10694)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10690)*(x10691)*(x10692)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10697)))+(((r01)*(x10704)))+(((IkReal(-1.00000000000000))*(x10689)*(x10690)*(x10692)))+(((IkReal(-1.00000000000000))*(r02)*(x10690)*(x10695)))+(((IkReal(-1.00000000000000))*(x10690)*(x10693)*(x10694)))+(((r11)*(x10705)))+(((IkReal(-1.00000000000000))*(x10686)*(x10696)))+(((IkReal(-1.00000000000000))*(r12)*(x10688)*(x10690)))+(((IkReal(-1.00000000000000))*(x10690)*(x10693)*(x10702)))+(((IkReal(-1.00000000000000))*(r00)*(x10697)*(x10703)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10706=(cj1)*(cj1); +IkReal x10707=(sj1)*(sj1); +IkReal x10708=((r00)*(sj6)); +IkReal x10709=((cj6)*(r01)); +IkReal x10710=((IkReal(1.00000000000000))*(cj1)); +IkReal x10711=((cj5)*(r22)); +IkReal x10712=((sj5)*(sj6)); +IkReal x10713=((r10)*(sj0)); +IkReal x10714=((cj1)*(cj5)); +IkReal x10715=((cj0)*(r02)); +IkReal x10716=((r12)*(sj0)); +IkReal x10717=((IkReal(1.00000000000000))*(sj1)); +IkReal x10718=((cj6)*(sj5)); +IkReal x10719=((cj0)*(sj5)); +IkReal x10720=((r11)*(sj0)); +IkReal x10721=((sj1)*(x10719)); +if( IKabs(((((IKabs(((((cj2)*(x10706)))+(((cj2)*(x10707))))) != 0)?((IkReal)1/(((((cj2)*(x10706)))+(((cj2)*(x10707)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10710)*(x10711)))+(((cj1)*(r20)*(x10712)))+(((sj1)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(cj5)*(x10716)*(x10717)))+(((cj1)*(r21)*(x10718)))+(((sj1)*(x10718)*(x10720)))+(((x10709)*(x10721)))+(((IkReal(-1.00000000000000))*(cj5)*(x10715)*(x10717)))+(((x10708)*(x10721))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x10707)+(x10706))) != 0)?((IkReal)1/(((x10707)+(x10706)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10709)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10708)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10710)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(x10710)*(x10718)*(x10720)))+(((IkReal(-1.00000000000000))*(x10711)*(x10717)))+(((r21)*(sj1)*(x10718)))+(((x10714)*(x10716)))+(((x10714)*(x10715)))+(((r20)*(sj1)*(x10712))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x10706)))+(((cj2)*(x10707))))) != 0)?((IkReal)1/(((((cj2)*(x10706)))+(((cj2)*(x10707)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10710)*(x10711)))+(((cj1)*(r20)*(x10712)))+(((sj1)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(cj5)*(x10716)*(x10717)))+(((cj1)*(r21)*(x10718)))+(((sj1)*(x10718)*(x10720)))+(((x10709)*(x10721)))+(((IkReal(-1.00000000000000))*(cj5)*(x10715)*(x10717)))+(((x10708)*(x10721)))))))+IKsqr(((((IKabs(((x10707)+(x10706))) != 0)?((IkReal)1/(((x10707)+(x10706)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10709)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10708)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10710)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(x10710)*(x10718)*(x10720)))+(((IkReal(-1.00000000000000))*(x10711)*(x10717)))+(((r21)*(sj1)*(x10718)))+(((x10714)*(x10716)))+(((x10714)*(x10715)))+(((r20)*(sj1)*(x10712)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x10706)))+(((cj2)*(x10707))))) != 0)?((IkReal)1/(((((cj2)*(x10706)))+(((cj2)*(x10707)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10710)*(x10711)))+(((cj1)*(r20)*(x10712)))+(((sj1)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(cj5)*(x10716)*(x10717)))+(((cj1)*(r21)*(x10718)))+(((sj1)*(x10718)*(x10720)))+(((x10709)*(x10721)))+(((IkReal(-1.00000000000000))*(cj5)*(x10715)*(x10717)))+(((x10708)*(x10721)))))), ((((IKabs(((x10707)+(x10706))) != 0)?((IkReal)1/(((x10707)+(x10706)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x10709)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10708)*(x10710)*(x10719)))+(((IkReal(-1.00000000000000))*(x10710)*(x10712)*(x10713)))+(((IkReal(-1.00000000000000))*(x10710)*(x10718)*(x10720)))+(((IkReal(-1.00000000000000))*(x10711)*(x10717)))+(((r21)*(sj1)*(x10718)))+(((x10714)*(x10716)))+(((x10714)*(x10715)))+(((r20)*(sj1)*(x10712))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[3]; +IkReal x10722=IKsin(j3); +IkReal x10723=IKcos(j3); +IkReal x10724=((sj5)*(sj6)); +IkReal x10725=((cj0)*(cj5)); +IkReal x10726=((IkReal(1.00000000000000))*(cj0)); +IkReal x10727=((IkReal(1.00000000000000))*(sj0)); +IkReal x10728=((IkReal(1.00000000000000))*(x10723)); +IkReal x10729=((IkReal(1.00000000000000))*(x10722)); +IkReal x10730=((cj6)*(r01)*(sj5)); +IkReal x10731=((cj6)*(r11)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x10728)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj1)*(cj2)*(x10729)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x10724)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj2)*(x10729)))+(((sj0)*(x10730)))+(((IkReal(-1.00000000000000))*(x10726)*(x10731)))+(((r00)*(sj0)*(x10724)))+(((IkReal(-1.00000000000000))*(cj5)*(r02)*(x10727)))+(((r12)*(x10725)))+(((IkReal(-1.00000000000000))*(r10)*(x10724)*(x10726)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10727)*(x10731)))+(((IkReal(-1.00000000000000))*(x10726)*(x10730)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r00)*(x10724)*(x10726)))+(((IkReal(-1.00000000000000))*(r10)*(x10724)*(x10727)))+(((cj2)*(sj1)*(x10722)))+(((r02)*(x10725)))+(((IkReal(-1.00000000000000))*(cj1)*(x10728)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst2; +IkReal x10732=(r21)*(r21); +IkReal x10733=(cj5)*(cj5); +IkReal x10734=(sj6)*(sj6); +IkReal x10735=(cj6)*(cj6); +IkReal x10736=(r20)*(r20); +IkReal x10737=((cj6)*(r21)); +IkReal x10738=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x10739=((cj5)*(r22)*(sj5)); +IkReal x10740=((IkReal(1.00000000000000))*(x10734)); +IkReal x10741=((IkReal(1.00000000000000))*(x10735)); +gconst2=IKsign(((((IkReal(-1.00000000000000))*(x10736)*(x10741)))+(((IkReal(-1.00000000000000))*(x10733)*(x10736)*(x10740)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x10733)*(x10737)*(x10738)))+(((x10737)*(x10738)))+(((IkReal(-2.00000000000000))*(x10737)*(x10739)))+(((IkReal(-1.00000000000000))*(x10732)*(x10740)))+(((IkReal(-1.00000000000000))*(x10732)*(x10733)*(x10741)))+(((IkReal(-1.00000000000000))*(x10738)*(x10739))))); +IkReal x10742=(r21)*(r21); +IkReal x10743=(cj5)*(cj5); +IkReal x10744=(sj6)*(sj6); +IkReal x10745=(cj6)*(cj6); +IkReal x10746=(r20)*(r20); +IkReal x10747=((cj6)*(r21)); +IkReal x10748=((IkReal(2.00000000000000))*(r20)*(sj6)); +IkReal x10749=((cj5)*(r22)*(sj5)); +IkReal x10750=((IkReal(1.00000000000000))*(x10744)); +IkReal x10751=((IkReal(1.00000000000000))*(x10745)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(x10742)*(x10743)*(x10751)))+(((IkReal(-1.00000000000000))*(x10743)*(x10746)*(x10750)))+(((IkReal(-1.00000000000000))*((r22)*(r22))*((sj5)*(sj5))))+(((IkReal(-1.00000000000000))*(x10743)*(x10747)*(x10748)))+(((IkReal(-1.00000000000000))*(x10746)*(x10751)))+(((IkReal(-1.00000000000000))*(x10748)*(x10749)))+(((x10747)*(x10748)))+(((IkReal(-1.00000000000000))*(x10742)*(x10750)))+(((IkReal(-2.00000000000000))*(x10747)*(x10749)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst3; +IkReal x10752=(cj6)*(cj6); +IkReal x10753=(sj6)*(sj6); +IkReal x10754=((IkReal(1.00000000000000))*(r21)); +IkReal x10755=((cj6)*(r20)); +IkReal x10756=((r22)*(sj5)); +IkReal x10757=((r01)*(sj0)); +IkReal x10758=((r00)*(sj0)); +IkReal x10759=((cj0)*(r10)); +IkReal x10760=((r02)*(sj0)*(sj5)); +IkReal x10761=((cj5)*(x10752)); +IkReal x10762=((cj0)*(r12)*(sj5)); +IkReal x10763=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x10764=((cj5)*(x10753)); +IkReal x10765=((r20)*(x10764)); +gconst3=IKsign(((((x10757)*(x10765)))+(((IkReal(-1.00000000000000))*(x10754)*(x10758)*(x10764)))+(((IkReal(-1.00000000000000))*(x10763)*(x10765)))+(((IkReal(-1.00000000000000))*(sj6)*(x10756)*(x10763)))+(((IkReal(-1.00000000000000))*(r20)*(x10761)*(x10763)))+(((sj6)*(x10756)*(x10757)))+(((IkReal(-1.00000000000000))*(x10755)*(x10762)))+(((r20)*(x10757)*(x10761)))+(((r21)*(sj6)*(x10762)))+(((IkReal(-1.00000000000000))*(x10754)*(x10758)*(x10761)))+(((IkReal(-1.00000000000000))*(cj6)*(x10756)*(x10758)))+(((cj6)*(x10756)*(x10759)))+(((x10755)*(x10760)))+(((IkReal(-1.00000000000000))*(sj6)*(x10754)*(x10760)))+(((r21)*(x10759)*(x10761)))+(((r21)*(x10759)*(x10764))))); +IkReal x10766=(cj6)*(cj6); +IkReal x10767=(sj6)*(sj6); +IkReal x10768=((IkReal(1.00000000000000))*(r21)); +IkReal x10769=((cj6)*(r20)); +IkReal x10770=((r22)*(sj5)); +IkReal x10771=((r01)*(sj0)); +IkReal x10772=((r00)*(sj0)); +IkReal x10773=((cj0)*(r10)); +IkReal x10774=((r02)*(sj0)*(sj5)); +IkReal x10775=((cj5)*(x10766)); +IkReal x10776=((cj0)*(r12)*(sj5)); +IkReal x10777=((IkReal(1.00000000000000))*(cj0)*(r11)); +IkReal x10778=((cj5)*(x10767)); +IkReal x10779=((r20)*(x10778)); +dummyeval[0]=((((IkReal(-1.00000000000000))*(sj6)*(x10770)*(x10777)))+(((IkReal(-1.00000000000000))*(x10777)*(x10779)))+(((r21)*(sj6)*(x10776)))+(((r21)*(x10773)*(x10778)))+(((IkReal(-1.00000000000000))*(cj6)*(x10770)*(x10772)))+(((r20)*(x10771)*(x10775)))+(((IkReal(-1.00000000000000))*(x10768)*(x10772)*(x10778)))+(((cj6)*(x10770)*(x10773)))+(((sj6)*(x10770)*(x10771)))+(((IkReal(-1.00000000000000))*(sj6)*(x10768)*(x10774)))+(((IkReal(-1.00000000000000))*(x10769)*(x10776)))+(((r21)*(x10773)*(x10775)))+(((IkReal(-1.00000000000000))*(x10768)*(x10772)*(x10775)))+(((x10771)*(x10779)))+(((x10769)*(x10774)))+(((IkReal(-1.00000000000000))*(r20)*(x10775)*(x10777)))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10780=((cj5)*(sj6)); +IkReal x10781=((cj2)*(r21)); +IkReal x10782=((cj5)*(cj6)); +IkReal x10783=((IkReal(1.00000000000000))*(cj2)*(r20)); +IkReal x10784=((cj0)*(cj1)*(sj2)); +IkReal x10785=((IkReal(1.00000000000000))*(cj1)*(sj0)*(sj2)); +IkReal x10786=((r10)*(x10784)); +if( IKabs(((gconst3)*(((((IkReal(-1.00000000000000))*(cj6)*(r00)*(x10785)))+(((cj6)*(x10786)))+(((cj1)*(r01)*(sj0)*(sj2)*(sj6)))+(((sj6)*(x10781)))+(((IkReal(-1.00000000000000))*(cj6)*(x10783)))+(((IkReal(-1.00000000000000))*(r11)*(sj6)*(x10784))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst3)*(((((r11)*(x10782)*(x10784)))+(((r12)*(sj5)*(x10784)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x10785)))+(((x10780)*(x10786)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x10781)*(x10782)))+(((IkReal(-1.00000000000000))*(r00)*(x10780)*(x10785)))+(((IkReal(-1.00000000000000))*(r01)*(x10782)*(x10785)))+(((IkReal(-1.00000000000000))*(x10780)*(x10783))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst3)*(((((IkReal(-1.00000000000000))*(cj6)*(r00)*(x10785)))+(((cj6)*(x10786)))+(((cj1)*(r01)*(sj0)*(sj2)*(sj6)))+(((sj6)*(x10781)))+(((IkReal(-1.00000000000000))*(cj6)*(x10783)))+(((IkReal(-1.00000000000000))*(r11)*(sj6)*(x10784)))))), ((gconst3)*(((((r11)*(x10782)*(x10784)))+(((r12)*(sj5)*(x10784)))+(((IkReal(-1.00000000000000))*(r02)*(sj5)*(x10785)))+(((x10780)*(x10786)))+(((IkReal(-1.00000000000000))*(cj2)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x10781)*(x10782)))+(((IkReal(-1.00000000000000))*(r00)*(x10780)*(x10785)))+(((IkReal(-1.00000000000000))*(r01)*(x10782)*(x10785)))+(((IkReal(-1.00000000000000))*(x10780)*(x10783))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x10787=IKsin(j4); +IkReal x10788=IKcos(j4); +IkReal x10789=((r00)*(sj6)); +IkReal x10790=((IkReal(1.00000000000000))*(r12)); +IkReal x10791=((IkReal(1.00000000000000))*(cj6)); +IkReal x10792=((cj6)*(r01)); +IkReal x10793=((IkReal(1.00000000000000))*(cj1)); +IkReal x10794=((cj2)*(cj3)); +IkReal x10795=((IkReal(1.00000000000000))*(sj1)); +IkReal x10796=((r11)*(sj6)); +IkReal x10797=((r01)*(sj6)); +IkReal x10798=((IkReal(1.00000000000000))*(cj5)); +IkReal x10799=((r10)*(sj6)); +IkReal x10800=((cj5)*(r11)); +IkReal x10801=((cj6)*(r00)); +IkReal x10802=((r21)*(sj6)); +IkReal x10803=((r02)*(sj5)); +IkReal x10804=((cj6)*(r10)); +IkReal x10805=((cj5)*(sj6)); +IkReal x10806=((cj5)*(r01)); +IkReal x10807=((sj5)*(x10787)); +IkReal x10808=((cj0)*(x10788)); +IkReal x10809=((cj0)*(x10787)); +IkReal x10810=((sj0)*(x10788)); +IkReal x10811=((sj0)*(x10787)); +IkReal x10812=((r20)*(x10788)); +IkReal x10813=((cj5)*(cj6)*(r21)); +IkReal x10814=((r20)*(x10787)); +IkReal x10815=((cj5)*(x10811)); +evalcond[0]=((((x10787)*(x10813)))+(((x10788)*(x10802)))+(((IkReal(-1.00000000000000))*(sj2)*(x10793)))+(((r22)*(x10807)))+(((x10805)*(x10814)))+(((IkReal(-1.00000000000000))*(x10791)*(x10812)))); +evalcond[1]=((((x10788)*(x10813)))+(((cj1)*(x10794)))+(((r22)*(sj5)*(x10788)))+(((x10805)*(x10812)))+(((IkReal(-1.00000000000000))*(sj3)*(x10795)))+(((cj6)*(x10814)))+(((IkReal(-1.00000000000000))*(x10787)*(x10802)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10791)*(x10800)*(x10809)))+(((IkReal(-1.00000000000000))*(x10798)*(x10799)*(x10809)))+(((x10803)*(x10811)))+(((IkReal(-1.00000000000000))*(x10796)*(x10808)))+(((x10804)*(x10808)))+(((IkReal(-1.00000000000000))*(cj0)*(x10790)*(x10807)))+(((x10797)*(x10810)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x10791)*(x10810)))+(((x10792)*(x10815)))+(((x10789)*(x10815)))); +evalcond[3]=((((cj5)*(x10789)*(x10810)))+(((IkReal(-1.00000000000000))*(sj5)*(x10790)*(x10808)))+(((x10801)*(x10811)))+(((IkReal(-1.00000000000000))*(x10797)*(x10811)))+(((cj5)*(x10792)*(x10810)))+(((x10796)*(x10809)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(r10)*(x10791)*(x10809)))+(((IkReal(-1.00000000000000))*(x10798)*(x10799)*(x10808)))+(((x10803)*(x10810)))+(((IkReal(-1.00000000000000))*(x10791)*(x10800)*(x10808)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(sj0)*(x10790)*(x10807)))+(((IkReal(-1.00000000000000))*(x10797)*(x10808)))+(((IkReal(-1.00000000000000))*(x10791)*(x10800)*(x10811)))+(((IkReal(-1.00000000000000))*(x10798)*(x10799)*(x10811)))+(((IkReal(-1.00000000000000))*(x10796)*(x10810)))+(((sj1)*(sj2)))+(((x10801)*(x10808)))+(((IkReal(-1.00000000000000))*(x10803)*(x10809)))+(((IkReal(-1.00000000000000))*(x10789)*(x10798)*(x10809)))+(((IkReal(-1.00000000000000))*(x10791)*(x10806)*(x10809)))+(((x10804)*(x10810)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10791)*(x10800)*(x10810)))+(((IkReal(-1.00000000000000))*(x10789)*(x10798)*(x10808)))+(((x10797)*(x10809)))+(((IkReal(-1.00000000000000))*(sj3)*(x10793)))+(((x10796)*(x10811)))+(((IkReal(-1.00000000000000))*(x10803)*(x10808)))+(((IkReal(-1.00000000000000))*(r00)*(x10791)*(x10809)))+(((IkReal(-1.00000000000000))*(x10791)*(x10806)*(x10808)))+(((IkReal(-1.00000000000000))*(sj5)*(x10790)*(x10810)))+(((IkReal(-1.00000000000000))*(r10)*(x10791)*(x10811)))+(((IkReal(-1.00000000000000))*(x10794)*(x10795)))+(((IkReal(-1.00000000000000))*(x10798)*(x10799)*(x10810)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10816=((cj1)*(sj2)); +IkReal x10817=((cj6)*(r20)); +IkReal x10818=((sj1)*(sj3)); +IkReal x10819=((r21)*(sj6)); +IkReal x10820=((IkReal(1.00000000000000))*(cj5)); +IkReal x10821=((cj6)*(r21)); +IkReal x10822=((r20)*(sj6)); +IkReal x10823=((IkReal(1.00000000000000))*(r22)*(sj5)); +IkReal x10824=((cj1)*(cj2)*(cj3)); +if( IKabs(((gconst2)*(((((x10818)*(x10819)))+(((IkReal(-1.00000000000000))*(x10816)*(x10820)*(x10822)))+(((IkReal(-1.00000000000000))*(x10816)*(x10820)*(x10821)))+(((IkReal(-1.00000000000000))*(x10819)*(x10824)))+(((x10817)*(x10824)))+(((IkReal(-1.00000000000000))*(x10816)*(x10823)))+(((IkReal(-1.00000000000000))*(x10817)*(x10818))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst2)*(((((IkReal(-1.00000000000000))*(x10818)*(x10820)*(x10822)))+(((cj5)*(x10821)*(x10824)))+(((IkReal(-1.00000000000000))*(x10816)*(x10819)))+(((r22)*(sj5)*(x10824)))+(((IkReal(-1.00000000000000))*(x10818)*(x10823)))+(((cj5)*(x10822)*(x10824)))+(((IkReal(-1.00000000000000))*(x10818)*(x10820)*(x10821)))+(((x10816)*(x10817))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst2)*(((((x10818)*(x10819)))+(((IkReal(-1.00000000000000))*(x10816)*(x10820)*(x10822)))+(((IkReal(-1.00000000000000))*(x10816)*(x10820)*(x10821)))+(((IkReal(-1.00000000000000))*(x10819)*(x10824)))+(((x10817)*(x10824)))+(((IkReal(-1.00000000000000))*(x10816)*(x10823)))+(((IkReal(-1.00000000000000))*(x10817)*(x10818)))))), ((gconst2)*(((((IkReal(-1.00000000000000))*(x10818)*(x10820)*(x10822)))+(((cj5)*(x10821)*(x10824)))+(((IkReal(-1.00000000000000))*(x10816)*(x10819)))+(((r22)*(sj5)*(x10824)))+(((IkReal(-1.00000000000000))*(x10818)*(x10823)))+(((cj5)*(x10822)*(x10824)))+(((IkReal(-1.00000000000000))*(x10818)*(x10820)*(x10821)))+(((x10816)*(x10817))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[6]; +IkReal x10825=IKsin(j4); +IkReal x10826=IKcos(j4); +IkReal x10827=((r00)*(sj6)); +IkReal x10828=((IkReal(1.00000000000000))*(r12)); +IkReal x10829=((IkReal(1.00000000000000))*(cj6)); +IkReal x10830=((cj6)*(r01)); +IkReal x10831=((IkReal(1.00000000000000))*(cj1)); +IkReal x10832=((cj2)*(cj3)); +IkReal x10833=((IkReal(1.00000000000000))*(sj1)); +IkReal x10834=((r11)*(sj6)); +IkReal x10835=((r01)*(sj6)); +IkReal x10836=((IkReal(1.00000000000000))*(cj5)); +IkReal x10837=((r10)*(sj6)); +IkReal x10838=((cj5)*(r11)); +IkReal x10839=((cj6)*(r00)); +IkReal x10840=((r21)*(sj6)); +IkReal x10841=((r02)*(sj5)); +IkReal x10842=((cj6)*(r10)); +IkReal x10843=((cj5)*(sj6)); +IkReal x10844=((cj5)*(r01)); +IkReal x10845=((sj5)*(x10825)); +IkReal x10846=((cj0)*(x10826)); +IkReal x10847=((cj0)*(x10825)); +IkReal x10848=((sj0)*(x10826)); +IkReal x10849=((sj0)*(x10825)); +IkReal x10850=((r20)*(x10826)); +IkReal x10851=((cj5)*(cj6)*(r21)); +IkReal x10852=((r20)*(x10825)); +IkReal x10853=((cj5)*(x10849)); +evalcond[0]=((((x10825)*(x10851)))+(((x10843)*(x10852)))+(((IkReal(-1.00000000000000))*(x10829)*(x10850)))+(((r22)*(x10845)))+(((x10826)*(x10840)))+(((IkReal(-1.00000000000000))*(sj2)*(x10831)))); +evalcond[1]=((((x10843)*(x10850)))+(((cj6)*(x10852)))+(((x10826)*(x10851)))+(((IkReal(-1.00000000000000))*(x10825)*(x10840)))+(((r22)*(sj5)*(x10826)))+(((cj1)*(x10832)))+(((IkReal(-1.00000000000000))*(sj3)*(x10833)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10834)*(x10846)))+(((x10842)*(x10846)))+(((x10835)*(x10848)))+(((x10841)*(x10849)))+(((IkReal(-1.00000000000000))*(x10829)*(x10838)*(x10847)))+(((x10830)*(x10853)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x10829)*(x10848)))+(((IkReal(-1.00000000000000))*(x10836)*(x10837)*(x10847)))+(((x10827)*(x10853)))+(((IkReal(-1.00000000000000))*(cj0)*(x10828)*(x10845)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x10829)*(x10847)))+(((IkReal(-1.00000000000000))*(x10829)*(x10838)*(x10846)))+(((x10839)*(x10849)))+(((cj5)*(x10830)*(x10848)))+(((IkReal(-1.00000000000000))*(x10836)*(x10837)*(x10846)))+(((x10834)*(x10847)))+(((cj3)*(sj2)))+(((IkReal(-1.00000000000000))*(x10835)*(x10849)))+(((x10841)*(x10848)))+(((cj5)*(x10827)*(x10848)))+(((IkReal(-1.00000000000000))*(sj5)*(x10828)*(x10846)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x10836)*(x10837)*(x10849)))+(((IkReal(-1.00000000000000))*(x10834)*(x10848)))+(((IkReal(-1.00000000000000))*(x10835)*(x10846)))+(((IkReal(-1.00000000000000))*(x10841)*(x10847)))+(((IkReal(-1.00000000000000))*(sj0)*(x10828)*(x10845)))+(((IkReal(-1.00000000000000))*(x10829)*(x10844)*(x10847)))+(((x10842)*(x10848)))+(((IkReal(-1.00000000000000))*(x10827)*(x10836)*(x10847)))+(((IkReal(-1.00000000000000))*(x10829)*(x10838)*(x10849)))+(((sj1)*(sj2)))+(((x10839)*(x10846)))); +evalcond[5]=((((x10834)*(x10849)))+(((IkReal(-1.00000000000000))*(x10829)*(x10838)*(x10848)))+(((IkReal(-1.00000000000000))*(x10836)*(x10837)*(x10848)))+(((IkReal(-1.00000000000000))*(r00)*(x10829)*(x10847)))+(((IkReal(-1.00000000000000))*(x10829)*(x10844)*(x10846)))+(((IkReal(-1.00000000000000))*(sj3)*(x10831)))+(((IkReal(-1.00000000000000))*(r10)*(x10829)*(x10849)))+(((IkReal(-1.00000000000000))*(x10832)*(x10833)))+(((IkReal(-1.00000000000000))*(x10827)*(x10836)*(x10846)))+(((IkReal(-1.00000000000000))*(sj5)*(x10828)*(x10848)))+(((IkReal(-1.00000000000000))*(x10841)*(x10846)))+(((x10835)*(x10847)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x10854=((cj0)*(r00)); +IkReal x10855=((r10)*(sj0)); +IkReal x10856=((cj0)*(r01)); +IkReal x10857=((IkReal(1.00000000000000))*(cj5)); +IkReal x10858=((r11)*(sj0)); +IkReal x10859=((sj2)*(sj5)); +IkReal x10860=((IkReal(1.00000000000000))*(cj1)); +IkReal x10861=((r20)*(sj1)*(sj2)); +IkReal x10862=((cj1)*(sj2)*(sj6)); +IkReal x10863=((r21)*(sj1)*(sj2)); +IkReal x10864=((cj6)*(sj2)*(x10860)); +if( IKabs(((gconst1)*(((((IkReal(-1.00000000000000))*(sj6)*(x10863)))+(((x10858)*(x10862)))+(((IkReal(-1.00000000000000))*(x10854)*(x10864)))+(((x10856)*(x10862)))+(((cj6)*(x10861)))+(((IkReal(-1.00000000000000))*(x10855)*(x10864))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst1)*(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10859)*(x10860)))+(((IkReal(-1.00000000000000))*(x10854)*(x10857)*(x10862)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x10857)*(x10858)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x10856)*(x10857)))+(((cj5)*(sj6)*(x10861)))+(((r22)*(sj1)*(x10859)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10859)*(x10860)))+(((IkReal(-1.00000000000000))*(x10855)*(x10857)*(x10862)))+(((cj5)*(cj6)*(x10863))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst1)*(((((IkReal(-1.00000000000000))*(sj6)*(x10863)))+(((x10858)*(x10862)))+(((IkReal(-1.00000000000000))*(x10854)*(x10864)))+(((x10856)*(x10862)))+(((cj6)*(x10861)))+(((IkReal(-1.00000000000000))*(x10855)*(x10864)))))), ((gconst1)*(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x10859)*(x10860)))+(((IkReal(-1.00000000000000))*(x10854)*(x10857)*(x10862)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x10857)*(x10858)))+(((IkReal(-1.00000000000000))*(cj1)*(cj6)*(sj2)*(x10856)*(x10857)))+(((cj5)*(sj6)*(x10861)))+(((r22)*(sj1)*(x10859)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x10859)*(x10860)))+(((IkReal(-1.00000000000000))*(x10855)*(x10857)*(x10862)))+(((cj5)*(cj6)*(x10863))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x10865=IKsin(j4); +IkReal x10866=IKcos(j4); +IkReal x10867=((r00)*(sj6)); +IkReal x10868=((cj6)*(r01)); +IkReal x10869=((IkReal(1.00000000000000))*(cj0)); +IkReal x10870=((IkReal(1.00000000000000))*(sj0)); +IkReal x10871=((r10)*(sj6)); +IkReal x10872=((sj5)*(x10865)); +IkReal x10873=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x10874=((cj5)*(x10865)); +IkReal x10875=((cj6)*(x10866)); +IkReal x10876=((sj0)*(x10874)); +IkReal x10877=((r01)*(sj6)*(x10866)); +IkReal x10878=((r11)*(sj6)*(x10866)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r20)*(x10875)))+(((cj6)*(r21)*(x10874)))+(((IkReal(-1.00000000000000))*(cj1)*(sj2)))+(((r21)*(sj6)*(x10866)))+(((r20)*(sj6)*(x10874)))+(((r22)*(x10872)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x10869)*(x10878)))+(((cj0)*(r10)*(x10875)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10869)*(x10874)))+(((sj0)*(x10877)))+(((IkReal(-1.00000000000000))*(r12)*(x10869)*(x10872)))+(((x10868)*(x10876)))+(((IkReal(-1.00000000000000))*(x10869)*(x10871)*(x10874)))+(cj2)+(((r02)*(sj0)*(x10872)))+(((x10867)*(x10876)))+(((IkReal(-1.00000000000000))*(r00)*(x10870)*(x10875)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10869)*(x10877)))+(((cj0)*(r00)*(x10875)))+(((IkReal(-1.00000000000000))*(r02)*(x10869)*(x10872)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x10870)*(x10874)))+(((IkReal(-1.00000000000000))*(x10870)*(x10878)))+(((sj1)*(sj2)))+(((IkReal(-1.00000000000000))*(x10867)*(x10869)*(x10874)))+(((IkReal(-1.00000000000000))*(x10868)*(x10869)*(x10874)))+(((IkReal(-1.00000000000000))*(r12)*(x10870)*(x10872)))+(((IkReal(-1.00000000000000))*(x10870)*(x10871)*(x10874)))+(((r10)*(sj0)*(x10875)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst4; +gconst4=IKsign((((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2)))))); +dummyeval[0]=(((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2))))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x10879=(cj1)*(cj1); +IkReal x10880=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x10880)))+(((cj2)*(x10879)))); +dummyeval[1]=((x10879)+(x10880)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +dummyeval[0]=sj2; +dummyeval[1]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x10881=((cj5)*(sj4)); +IkReal x10882=((IkReal(1.00000000000000))*(sj6)); +IkReal x10883=((r10)*(sj0)); +IkReal x10884=((sj4)*(sj5)); +IkReal x10885=((cj4)*(cj5)); +IkReal x10886=((IkReal(1.00000000000000))*(r02)); +IkReal x10887=((IkReal(0.374290000000000))*(cj0)); +IkReal x10888=((cj5)*(r12)); +IkReal x10889=((cj6)*(sj5)); +IkReal x10890=((cj0)*(r11)); +IkReal x10891=((cj5)*(sj0)); +IkReal x10892=((r20)*(sj6)); +IkReal x10893=((IkReal(1.00000000000000))*(sj0)); +IkReal x10894=((IkReal(1.00000000000000))*(cj6)); +IkReal x10895=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10896=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10897=((sj5)*(sj6)); +IkReal x10898=((cj0)*(r10)); +IkReal x10899=((cj4)*(cj6)); +IkReal x10900=((cj0)*(r01)); +IkReal x10901=((cj0)*(r00)); +IkReal x10902=((cj6)*(r21)); +IkReal x10903=((IkReal(0.374290000000000))*(sj0)); +IkReal x10904=((IkReal(0.374290000000000))*(sj5)); +IkReal x10905=((cj6)*(r11)); +IkReal x10906=((sj0)*(sj4)); +IkReal x10907=((cj4)*(sj5)); +IkReal x10908=((cj4)*(sj6)); +IkReal x10909=((IkReal(1.00000000000000))*(cj0)); +IkReal x10910=((r02)*(sj0)); +IkReal x10911=((r00)*(sj0)*(sj6)); +IkReal x10912=((cj6)*(r01)*(sj0)); +IkReal x10913=((r00)*(x10899)); +IkReal x10914=((r12)*(x10909)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x10908)))+(((x10881)*(x10902)))+(((r22)*(x10884)))+(((x10881)*(x10892)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x10894)))); +evalcond[2]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(0.374290000000000))*(r21)*(x10889)))+(((IkReal(-1.00000000000000))*(r22)*(x10896)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x10892)*(x10904)))+(((IkReal(-1.00000000000000))*(x10892)*(x10895)))+(pz)+(((IkReal(-1.00000000000000))*(x10895)*(x10902)))+(((IkReal(0.0690000000000000))*(cj1)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10886)*(x10891)))+(((r00)*(sj0)*(x10897)))+(((r01)*(sj0)*(x10889)))+(((IkReal(-1.00000000000000))*(x10889)*(x10890)))+(((IkReal(-1.00000000000000))*(sj5)*(x10882)*(x10898)))+(((cj0)*(x10888)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x10881)*(x10890)*(x10894)))+(((x10898)*(x10899)))+(((IkReal(-1.00000000000000))*(x10884)*(x10914)))+(((x10881)*(x10911)))+(((r01)*(sj0)*(x10908)))+(((IkReal(-1.00000000000000))*(x10893)*(x10913)))+(((IkReal(-1.00000000000000))*(x10881)*(x10882)*(x10898)))+(((IkReal(-1.00000000000000))*(cj4)*(x10882)*(x10890)))+(((x10884)*(x10910)))+(((x10881)*(x10912)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x10882)*(x10885)*(x10898)))+(((IkReal(-1.00000000000000))*(x10885)*(x10890)*(x10894)))+(((sj4)*(sj6)*(x10890)))+(((IkReal(-1.00000000000000))*(sj4)*(x10894)*(x10898)))+(((IkReal(-1.00000000000000))*(r01)*(x10882)*(x10906)))+(((x10907)*(x10910)))+(((x10885)*(x10912)))+(((x10885)*(x10911)))+(((cj6)*(r00)*(x10906)))+(((IkReal(-1.00000000000000))*(x10907)*(x10914)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r12)*(x10884)*(x10893)))+(((IkReal(-1.00000000000000))*(x10881)*(x10893)*(x10905)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x10882)))+(((IkReal(-1.00000000000000))*(x10881)*(x10882)*(x10883)))+(((IkReal(-1.00000000000000))*(cj0)*(x10884)*(x10886)))+(((IkReal(-1.00000000000000))*(x10881)*(x10894)*(x10900)))+(((IkReal(-1.00000000000000))*(x10881)*(x10882)*(x10901)))+(((x10899)*(x10901)))+(((x10883)*(x10899)))+(((IkReal(-1.00000000000000))*(cj4)*(x10882)*(x10900)))); +evalcond[7]=((((IkReal(-0.374290000000000))*(r02)*(x10891)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x10891)))+(((IkReal(-1.00000000000000))*(x10896)*(x10910)))+(((IkReal(-1.00000000000000))*(r11)*(x10887)*(x10889)))+(((sj6)*(x10895)*(x10898)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x10891)))+(((IkReal(-1.00000000000000))*(py)*(x10909)))+(((r00)*(x10897)*(x10903)))+(((cj6)*(x10890)*(x10895)))+(((IkReal(-1.00000000000000))*(r10)*(x10887)*(x10897)))+(((x10887)*(x10888)))+(((r01)*(x10889)*(x10903)))+(((px)*(sj0)))+(((cj0)*(r12)*(x10896)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj0)*(r02)*(x10896)))+(((IkReal(-0.0690000000000000))*(sj1)))+(((x10888)*(x10903)))+(((r12)*(sj0)*(x10896)))+(((IkReal(-1.00000000000000))*(py)*(x10893)))+(((IkReal(-0.374290000000000))*(x10883)*(x10897)))+(((IkReal(-1.00000000000000))*(r01)*(x10887)*(x10889)))+(((sj6)*(x10883)*(x10895)))+(((cj6)*(x10895)*(x10900)))+(((cj5)*(r02)*(x10887)))+(((IkReal(-1.00000000000000))*(px)*(x10909)))+(((IkReal(-1.00000000000000))*(r11)*(x10889)*(x10903)))+(((IkReal(0.0100000000000000))*(x10891)*(x10905)))+(((IkReal(-1.00000000000000))*(r00)*(x10887)*(x10897)))+(((sj6)*(x10895)*(x10901)))+(((IkReal(0.364420000000000))*(cj1)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst5; +gconst5=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst6; +gconst6=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10915=((sj5)*(sj6)); +IkReal x10916=((IkReal(1.00000000000000))*(sj0)); +IkReal x10917=((cj5)*(r12)); +IkReal x10918=((cj0)*(r00)); +IkReal x10919=((cj0)*(cj1)); +IkReal x10920=((cj6)*(sj5)); +IkReal x10921=((cj5)*(r02)); +IkReal x10922=((IkReal(1.00000000000000))*(cj1)); +IkReal x10923=((sj0)*(sj1)); +IkReal x10924=((cj0)*(sj1)); +IkReal x10925=((cj5)*(r22)); +if( IKabs(((gconst6)*(((((r10)*(x10915)*(x10923)))+(((IkReal(-1.00000000000000))*(sj1)*(x10916)*(x10917)))+(((sj1)*(x10915)*(x10918)))+(((cj1)*(r21)*(x10920)))+(((r11)*(x10920)*(x10923)))+(((cj1)*(r20)*(x10915)))+(((IkReal(-1.00000000000000))*(x10921)*(x10924)))+(((IkReal(-1.00000000000000))*(x10922)*(x10925)))+(((r01)*(x10920)*(x10924))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst6)*(((((r21)*(sj1)*(x10920)))+(((x10919)*(x10921)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x10916)*(x10920)))+(((r20)*(sj1)*(x10915)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x10915)*(x10916)))+(((cj1)*(sj0)*(x10917)))+(((IkReal(-1.00000000000000))*(r01)*(x10919)*(x10920)))+(((IkReal(-1.00000000000000))*(sj1)*(x10925)))+(((IkReal(-1.00000000000000))*(x10915)*(x10918)*(x10922))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst6)*(((((r10)*(x10915)*(x10923)))+(((IkReal(-1.00000000000000))*(sj1)*(x10916)*(x10917)))+(((sj1)*(x10915)*(x10918)))+(((cj1)*(r21)*(x10920)))+(((r11)*(x10920)*(x10923)))+(((cj1)*(r20)*(x10915)))+(((IkReal(-1.00000000000000))*(x10921)*(x10924)))+(((IkReal(-1.00000000000000))*(x10922)*(x10925)))+(((r01)*(x10920)*(x10924)))))), ((gconst6)*(((((r21)*(sj1)*(x10920)))+(((x10919)*(x10921)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x10916)*(x10920)))+(((r20)*(sj1)*(x10915)))+(((IkReal(-1.00000000000000))*(cj1)*(r10)*(x10915)*(x10916)))+(((cj1)*(sj0)*(x10917)))+(((IkReal(-1.00000000000000))*(r01)*(x10919)*(x10920)))+(((IkReal(-1.00000000000000))*(sj1)*(x10925)))+(((IkReal(-1.00000000000000))*(x10915)*(x10918)*(x10922))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10926=IKcos(j3); +IkReal x10927=IKsin(j3); +IkReal x10928=((IkReal(1.00000000000000))*(cj4)); +IkReal x10929=((sj0)*(sj5)); +IkReal x10930=((cj0)*(cj5)); +IkReal x10931=((cj6)*(r01)); +IkReal x10932=((r00)*(sj6)); +IkReal x10933=((cj6)*(r11)); +IkReal x10934=((cj5)*(sj0)); +IkReal x10935=((cj6)*(sj4)); +IkReal x10936=((sj4)*(sj6)); +IkReal x10937=((cj4)*(cj5)); +IkReal x10938=((cj6)*(r21)); +IkReal x10939=((r20)*(sj6)); +IkReal x10940=((r10)*(sj6)); +IkReal x10941=((cj1)*(x10926)); +IkReal x10942=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x10943=((IkReal(1.00000000000000))*(x10927)); +IkReal x10944=((IkReal(1.00000000000000))*(sj1)*(x10926)); +IkReal x10945=((cj1)*(x10943)); +IkReal x10946=((x10945)+(x10944)); +evalcond[0]=((((sj5)*(x10939)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x10946)))+(((sj5)*(x10938)))); +evalcond[1]=((x10941)+(((x10937)*(x10939)))+(((r20)*(x10935)))+(((IkReal(-1.00000000000000))*(sj1)*(x10943)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x10936)))+(((x10937)*(x10938)))); +evalcond[2]=((((r02)*(x10930)))+(((IkReal(-1.00000000000000))*(x10929)*(x10933)))+(((sj1)*(x10927)))+(((IkReal(-1.00000000000000))*(x10931)*(x10942)))+(((IkReal(-1.00000000000000))*(x10932)*(x10942)))+(((IkReal(-1.00000000000000))*(x10929)*(x10940)))+(((IkReal(-1.00000000000000))*(x10941)))+(((r12)*(x10934)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10928)*(x10930)*(x10931)))+(((IkReal(-1.00000000000000))*(x10928)*(x10934)*(x10940)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x10928)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10935)))+(((cj0)*(r01)*(x10936)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x10935)))+(((IkReal(-1.00000000000000))*(x10946)))+(((IkReal(-1.00000000000000))*(x10928)*(x10930)*(x10932)))+(((IkReal(-1.00000000000000))*(x10928)*(x10933)*(x10934)))+(((r11)*(sj0)*(x10936)))+(((IkReal(-1.00000000000000))*(r12)*(x10928)*(x10929)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x10947=((sj1)*(sj5)); +IkReal x10948=((r20)*(sj6)); +IkReal x10949=((cj4)*(r22)); +IkReal x10950=((IkReal(1.00000000000000))*(cj1)); +IkReal x10951=((cj5)*(sj1)); +IkReal x10952=((cj6)*(r21)); +IkReal x10953=((cj1)*(sj5)); +IkReal x10954=((cj4)*(cj5)); +IkReal x10955=((cj6)*(r20)*(sj4)); +IkReal x10956=((r21)*(sj4)*(sj6)); +if( IKabs(((gconst5)*(((((x10952)*(x10953)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x10950)))+(((cj4)*(x10951)*(x10952)))+(((x10948)*(x10953)))+(((x10947)*(x10949)))+(((sj1)*(x10955)))+(((cj4)*(x10948)*(x10951)))+(((IkReal(-1.00000000000000))*(sj1)*(x10956))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst5)*(((((IkReal(-1.00000000000000))*(x10950)*(x10952)*(x10954)))+(((x10947)*(x10948)))+(((x10947)*(x10952)))+(((IkReal(-1.00000000000000))*(x10950)*(x10955)))+(((IkReal(-1.00000000000000))*(x10948)*(x10950)*(x10954)))+(((IkReal(-1.00000000000000))*(sj5)*(x10949)*(x10950)))+(((cj1)*(x10956)))+(((IkReal(-1.00000000000000))*(r22)*(x10951))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst5)*(((((x10952)*(x10953)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x10950)))+(((cj4)*(x10951)*(x10952)))+(((x10948)*(x10953)))+(((x10947)*(x10949)))+(((sj1)*(x10955)))+(((cj4)*(x10948)*(x10951)))+(((IkReal(-1.00000000000000))*(sj1)*(x10956)))))), ((gconst5)*(((((IkReal(-1.00000000000000))*(x10950)*(x10952)*(x10954)))+(((x10947)*(x10948)))+(((x10947)*(x10952)))+(((IkReal(-1.00000000000000))*(x10950)*(x10955)))+(((IkReal(-1.00000000000000))*(x10948)*(x10950)*(x10954)))+(((IkReal(-1.00000000000000))*(sj5)*(x10949)*(x10950)))+(((cj1)*(x10956)))+(((IkReal(-1.00000000000000))*(r22)*(x10951))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x10957=IKcos(j3); +IkReal x10958=IKsin(j3); +IkReal x10959=((IkReal(1.00000000000000))*(cj4)); +IkReal x10960=((sj0)*(sj5)); +IkReal x10961=((cj0)*(cj5)); +IkReal x10962=((cj6)*(r01)); +IkReal x10963=((r00)*(sj6)); +IkReal x10964=((cj6)*(r11)); +IkReal x10965=((cj5)*(sj0)); +IkReal x10966=((cj6)*(sj4)); +IkReal x10967=((sj4)*(sj6)); +IkReal x10968=((cj4)*(cj5)); +IkReal x10969=((cj6)*(r21)); +IkReal x10970=((r20)*(sj6)); +IkReal x10971=((r10)*(sj6)); +IkReal x10972=((cj1)*(x10957)); +IkReal x10973=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x10974=((IkReal(1.00000000000000))*(x10958)); +IkReal x10975=((IkReal(1.00000000000000))*(sj1)*(x10957)); +IkReal x10976=((cj1)*(x10974)); +IkReal x10977=((x10976)+(x10975)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x10977)))+(((sj5)*(x10969)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x10970)))); +evalcond[1]=((((r20)*(x10966)))+(((x10968)*(x10969)))+(((IkReal(-1.00000000000000))*(sj1)*(x10974)))+(((x10968)*(x10970)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x10967)))+(x10972)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x10972)))+(((r12)*(x10965)))+(((IkReal(-1.00000000000000))*(x10963)*(x10973)))+(((IkReal(-1.00000000000000))*(x10962)*(x10973)))+(((r02)*(x10961)))+(((IkReal(-1.00000000000000))*(x10960)*(x10964)))+(((sj1)*(x10958)))+(((IkReal(-1.00000000000000))*(x10960)*(x10971)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x10977)))+(((IkReal(-1.00000000000000))*(x10959)*(x10961)*(x10963)))+(((IkReal(-1.00000000000000))*(x10959)*(x10964)*(x10965)))+(((IkReal(-1.00000000000000))*(x10959)*(x10961)*(x10962)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x10966)))+(((r11)*(sj0)*(x10967)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x10966)))+(((IkReal(-1.00000000000000))*(r12)*(x10959)*(x10960)))+(((IkReal(-1.00000000000000))*(x10959)*(x10965)*(x10971)))+(((cj0)*(r01)*(x10967)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x10959)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x10978=((cj5)*(sj4)); +IkReal x10979=((IkReal(1.00000000000000))*(sj6)); +IkReal x10980=((r10)*(sj0)); +IkReal x10981=((sj4)*(sj5)); +IkReal x10982=((cj4)*(cj5)); +IkReal x10983=((IkReal(1.00000000000000))*(r02)); +IkReal x10984=((IkReal(0.374290000000000))*(cj0)); +IkReal x10985=((cj5)*(r12)); +IkReal x10986=((cj6)*(sj5)); +IkReal x10987=((cj0)*(r11)); +IkReal x10988=((cj5)*(sj0)); +IkReal x10989=((r20)*(sj6)); +IkReal x10990=((IkReal(1.00000000000000))*(sj0)); +IkReal x10991=((IkReal(1.00000000000000))*(cj6)); +IkReal x10992=((IkReal(0.0100000000000000))*(cj5)); +IkReal x10993=((IkReal(0.0100000000000000))*(sj5)); +IkReal x10994=((sj5)*(sj6)); +IkReal x10995=((cj0)*(r10)); +IkReal x10996=((cj4)*(cj6)); +IkReal x10997=((cj0)*(r01)); +IkReal x10998=((cj0)*(r00)); +IkReal x10999=((cj6)*(r21)); +IkReal x11000=((IkReal(0.374290000000000))*(sj0)); +IkReal x11001=((IkReal(0.374290000000000))*(sj5)); +IkReal x11002=((cj6)*(r11)); +IkReal x11003=((sj0)*(sj4)); +IkReal x11004=((cj4)*(sj5)); +IkReal x11005=((cj4)*(sj6)); +IkReal x11006=((IkReal(1.00000000000000))*(cj0)); +IkReal x11007=((r02)*(sj0)); +IkReal x11008=((r00)*(sj0)*(sj6)); +IkReal x11009=((cj6)*(r01)*(sj0)); +IkReal x11010=((r00)*(x10996)); +IkReal x11011=((r12)*(x11006)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj4)*(r20)*(x10991)))+(((x10978)*(x10989)))+(((r21)*(x11005)))+(((r22)*(x10981)))+(((x10978)*(x10999)))); +evalcond[2]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.0690000000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(r22)*(x10993)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(0.374290000000000))*(r21)*(x10986)))+(((IkReal(-1.00000000000000))*(x10992)*(x10999)))+(((x10989)*(x11001)))+(((IkReal(-1.00000000000000))*(x10989)*(x10992)))); +evalcond[3]=((((cj0)*(x10985)))+(((r01)*(sj0)*(x10986)))+(((r00)*(sj0)*(x10994)))+(((IkReal(-1.00000000000000))*(sj5)*(x10979)*(x10995)))+(((IkReal(-1.00000000000000))*(x10986)*(x10987)))+(((IkReal(-1.00000000000000))*(x10983)*(x10988)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(cj4)*(x10979)*(x10987)))+(((x10981)*(x11007)))+(((IkReal(-1.00000000000000))*(x10981)*(x11011)))+(((x10995)*(x10996)))+(((IkReal(-1.00000000000000))*(x10990)*(x11010)))+(((x10978)*(x11008)))+(((r01)*(sj0)*(x11005)))+(((x10978)*(x11009)))+(((IkReal(-1.00000000000000))*(x10978)*(x10987)*(x10991)))+(((IkReal(-1.00000000000000))*(x10978)*(x10979)*(x10995)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11004)*(x11011)))+(((x10982)*(x11008)))+(((IkReal(-1.00000000000000))*(r01)*(x10979)*(x11003)))+(((IkReal(-1.00000000000000))*(x10982)*(x10987)*(x10991)))+(((IkReal(-1.00000000000000))*(sj4)*(x10991)*(x10995)))+(((sj4)*(sj6)*(x10987)))+(((x10982)*(x11009)))+(((x11004)*(x11007)))+(((cj6)*(r00)*(x11003)))+(((IkReal(-1.00000000000000))*(x10979)*(x10982)*(x10995)))); +evalcond[6]=((((x10996)*(x10998)))+(((IkReal(-1.00000000000000))*(x10978)*(x10991)*(x10997)))+(((IkReal(-1.00000000000000))*(x10978)*(x10979)*(x10980)))+(((IkReal(-1.00000000000000))*(cj0)*(x10981)*(x10983)))+(((IkReal(-1.00000000000000))*(x10978)*(x10990)*(x11002)))+(((IkReal(-1.00000000000000))*(cj4)*(x10979)*(x10997)))+(((x10980)*(x10996)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x10979)))+(((IkReal(-1.00000000000000))*(r12)*(x10981)*(x10990)))+(((IkReal(-1.00000000000000))*(x10978)*(x10979)*(x10998)))); +evalcond[7]=((((IkReal(-0.374290000000000))*(r02)*(x10988)))+(((r00)*(x10994)*(x11000)))+(((IkReal(-1.00000000000000))*(x10993)*(x11007)))+(((cj6)*(x10987)*(x10992)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x10988)))+(((r01)*(x10986)*(x11000)))+(((IkReal(-1.00000000000000))*(r11)*(x10984)*(x10986)))+(((x10984)*(x10985)))+(((sj6)*(x10992)*(x10995)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x10988)))+(((cj0)*(r12)*(x10993)))+(((IkReal(-1.00000000000000))*(r10)*(x10984)*(x10994)))+(((IkReal(-1.00000000000000))*(py)*(x11006)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x10984)*(x10986)))+(((IkReal(-1.00000000000000))*(px)*(x11006)))+(((IkReal(0.0100000000000000))*(x10988)*(x11002)))+(((IkReal(-1.00000000000000))*(r00)*(x10984)*(x10994)))+(((IkReal(0.0690000000000000))*(sj1)))+(((cj0)*(r02)*(x10993)))+(((cj6)*(x10992)*(x10997)))+(((IkReal(-1.00000000000000))*(py)*(x10990)))+(((sj6)*(x10980)*(x10992)))+(((r12)*(sj0)*(x10993)))+(((cj5)*(r02)*(x10984)))+(((IkReal(-0.374290000000000))*(x10980)*(x10994)))+(((x10985)*(x11000)))+(((sj6)*(x10992)*(x10998)))+(((IkReal(-1.00000000000000))*(r11)*(x10986)*(x11000)))+(((IkReal(0.364420000000000))*(cj1)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst7; +gconst7=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst8; +gconst8=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11012=((IkReal(1.00000000000000))*(sj0)); +IkReal x11013=((cj6)*(r21)); +IkReal x11014=((cj0)*(r00)); +IkReal x11015=((cj5)*(sj1)); +IkReal x11016=((r12)*(sj0)); +IkReal x11017=((cj1)*(cj5)); +IkReal x11018=((cj0)*(r02)); +IkReal x11019=((sj1)*(sj5)); +IkReal x11020=((cj6)*(r11)); +IkReal x11021=((cj1)*(sj5)); +IkReal x11022=((sj6)*(x11019)); +IkReal x11023=((IkReal(1.00000000000000))*(x11021)); +IkReal x11024=((cj0)*(cj6)*(r01)); +if( IKabs(((gconst8)*(((((IkReal(-1.00000000000000))*(r20)*(sj6)*(x11023)))+(((IkReal(-1.00000000000000))*(x11019)*(x11024)))+(((x11015)*(x11018)))+(((IkReal(-1.00000000000000))*(x11014)*(x11022)))+(((IkReal(-1.00000000000000))*(x11013)*(x11023)))+(((IkReal(-1.00000000000000))*(r10)*(x11012)*(x11022)))+(((IkReal(-1.00000000000000))*(x11012)*(x11019)*(x11020)))+(((r22)*(x11017)))+(((x11015)*(x11016))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst8)*(((((IkReal(-1.00000000000000))*(x11012)*(x11020)*(x11021)))+(((x11016)*(x11017)))+(((r20)*(x11022)))+(((IkReal(-1.00000000000000))*(sj6)*(x11014)*(x11023)))+(((x11013)*(x11019)))+(((x11017)*(x11018)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11012)*(x11021)))+(((IkReal(-1.00000000000000))*(r22)*(x11015)))+(((IkReal(-1.00000000000000))*(x11023)*(x11024))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst8)*(((((IkReal(-1.00000000000000))*(r20)*(sj6)*(x11023)))+(((IkReal(-1.00000000000000))*(x11019)*(x11024)))+(((x11015)*(x11018)))+(((IkReal(-1.00000000000000))*(x11014)*(x11022)))+(((IkReal(-1.00000000000000))*(x11013)*(x11023)))+(((IkReal(-1.00000000000000))*(r10)*(x11012)*(x11022)))+(((IkReal(-1.00000000000000))*(x11012)*(x11019)*(x11020)))+(((r22)*(x11017)))+(((x11015)*(x11016)))))), ((gconst8)*(((((IkReal(-1.00000000000000))*(x11012)*(x11020)*(x11021)))+(((x11016)*(x11017)))+(((r20)*(x11022)))+(((IkReal(-1.00000000000000))*(sj6)*(x11014)*(x11023)))+(((x11013)*(x11019)))+(((x11017)*(x11018)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11012)*(x11021)))+(((IkReal(-1.00000000000000))*(r22)*(x11015)))+(((IkReal(-1.00000000000000))*(x11023)*(x11024))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11025=IKsin(j3); +IkReal x11026=IKcos(j3); +IkReal x11027=((IkReal(1.00000000000000))*(cj4)); +IkReal x11028=((sj0)*(sj5)); +IkReal x11029=((cj0)*(cj5)); +IkReal x11030=((cj6)*(r01)); +IkReal x11031=((r00)*(sj6)); +IkReal x11032=((cj6)*(r11)); +IkReal x11033=((cj5)*(sj0)); +IkReal x11034=((cj6)*(sj4)); +IkReal x11035=((sj4)*(sj6)); +IkReal x11036=((cj4)*(cj5)); +IkReal x11037=((cj6)*(r21)); +IkReal x11038=((r20)*(sj6)); +IkReal x11039=((r10)*(sj6)); +IkReal x11040=((cj1)*(x11025)); +IkReal x11041=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x11042=((IkReal(1.00000000000000))*(x11026)); +IkReal x11043=((IkReal(1.00000000000000))*(sj1)*(x11025)); +IkReal x11044=((cj1)*(x11042)); +IkReal x11045=((x11044)+(x11043)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x11042)))+(((sj5)*(x11037)))+(((sj5)*(x11038)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x11040)); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x11035)))+(((r20)*(x11034)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x11045)))+(((x11036)*(x11037)))+(((x11036)*(x11038)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x11028)*(x11039)))+(((r02)*(x11029)))+(((IkReal(-1.00000000000000))*(x11028)*(x11032)))+(((r12)*(x11033)))+(((IkReal(-1.00000000000000))*(x11045)))+(((IkReal(-1.00000000000000))*(x11031)*(x11041)))+(((IkReal(-1.00000000000000))*(x11030)*(x11041)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x11027)*(x11028)))+(((sj1)*(x11026)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11034)))+(((IkReal(-1.00000000000000))*(x11027)*(x11029)*(x11030)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11034)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11027)))+(((IkReal(-1.00000000000000))*(x11027)*(x11032)*(x11033)))+(((IkReal(-1.00000000000000))*(x11040)))+(((IkReal(-1.00000000000000))*(x11027)*(x11033)*(x11039)))+(((IkReal(-1.00000000000000))*(x11027)*(x11029)*(x11031)))+(((r11)*(sj0)*(x11035)))+(((cj0)*(r01)*(x11035)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11046=((sj1)*(sj6)); +IkReal x11047=((r20)*(sj5)); +IkReal x11048=((IkReal(1.00000000000000))*(r21)); +IkReal x11049=((cj1)*(cj6)); +IkReal x11050=((r20)*(sj4)); +IkReal x11051=((cj6)*(sj1)); +IkReal x11052=((cj4)*(cj5)); +IkReal x11053=((cj1)*(sj6)); +IkReal x11054=((cj5)*(r22)); +IkReal x11055=((cj4)*(r22)*(sj5)); +if( IKabs(((gconst7)*(((((r20)*(x11046)*(x11052)))+(((sj1)*(x11055)))+(((r21)*(x11051)*(x11052)))+(((IkReal(-1.00000000000000))*(sj4)*(x11046)*(x11048)))+(((IkReal(-1.00000000000000))*(sj5)*(x11048)*(x11049)))+(((cj1)*(x11054)))+(((x11050)*(x11051)))+(((IkReal(-1.00000000000000))*(x11047)*(x11053))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst7)*(((((r21)*(x11049)*(x11052)))+(((x11049)*(x11050)))+(((x11046)*(x11047)))+(((cj1)*(x11055)))+(((r21)*(sj5)*(x11051)))+(((IkReal(-1.00000000000000))*(sj1)*(x11054)))+(((IkReal(-1.00000000000000))*(sj4)*(x11048)*(x11053)))+(((r20)*(x11052)*(x11053))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst7)*(((((r20)*(x11046)*(x11052)))+(((sj1)*(x11055)))+(((r21)*(x11051)*(x11052)))+(((IkReal(-1.00000000000000))*(sj4)*(x11046)*(x11048)))+(((IkReal(-1.00000000000000))*(sj5)*(x11048)*(x11049)))+(((cj1)*(x11054)))+(((x11050)*(x11051)))+(((IkReal(-1.00000000000000))*(x11047)*(x11053)))))), ((gconst7)*(((((r21)*(x11049)*(x11052)))+(((x11049)*(x11050)))+(((x11046)*(x11047)))+(((cj1)*(x11055)))+(((r21)*(sj5)*(x11051)))+(((IkReal(-1.00000000000000))*(sj1)*(x11054)))+(((IkReal(-1.00000000000000))*(sj4)*(x11048)*(x11053)))+(((r20)*(x11052)*(x11053))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11056=IKsin(j3); +IkReal x11057=IKcos(j3); +IkReal x11058=((IkReal(1.00000000000000))*(cj4)); +IkReal x11059=((sj0)*(sj5)); +IkReal x11060=((cj0)*(cj5)); +IkReal x11061=((cj6)*(r01)); +IkReal x11062=((r00)*(sj6)); +IkReal x11063=((cj6)*(r11)); +IkReal x11064=((cj5)*(sj0)); +IkReal x11065=((cj6)*(sj4)); +IkReal x11066=((sj4)*(sj6)); +IkReal x11067=((cj4)*(cj5)); +IkReal x11068=((cj6)*(r21)); +IkReal x11069=((r20)*(sj6)); +IkReal x11070=((r10)*(sj6)); +IkReal x11071=((cj1)*(x11056)); +IkReal x11072=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x11073=((IkReal(1.00000000000000))*(x11057)); +IkReal x11074=((IkReal(1.00000000000000))*(sj1)*(x11056)); +IkReal x11075=((cj1)*(x11073)); +IkReal x11076=((x11074)+(x11075)); +evalcond[0]=((x11071)+(((sj5)*(x11068)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11069)))+(((IkReal(-1.00000000000000))*(sj1)*(x11073)))); +evalcond[1]=((((x11067)*(x11069)))+(((IkReal(-1.00000000000000))*(x11076)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x11065)))+(((x11067)*(x11068)))+(((IkReal(-1.00000000000000))*(r21)*(x11066)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x11061)*(x11072)))+(((IkReal(-1.00000000000000))*(x11062)*(x11072)))+(((IkReal(-1.00000000000000))*(x11059)*(x11063)))+(((IkReal(-1.00000000000000))*(x11076)))+(((r02)*(x11060)))+(((IkReal(-1.00000000000000))*(x11059)*(x11070)))+(((r12)*(x11064)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11058)*(x11063)*(x11064)))+(((IkReal(-1.00000000000000))*(x11058)*(x11064)*(x11070)))+(((cj0)*(r01)*(x11066)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11065)))+(((r11)*(sj0)*(x11066)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11058)))+(((IkReal(-1.00000000000000))*(x11058)*(x11060)*(x11062)))+(((IkReal(-1.00000000000000))*(x11058)*(x11060)*(x11061)))+(((IkReal(-1.00000000000000))*(r12)*(x11058)*(x11059)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11065)))+(((sj1)*(x11057)))+(((IkReal(-1.00000000000000))*(x11071)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x11077=((IkReal(1.00000000000000))*(cj0)); +IkReal x11078=((cj4)*(sj6)); +IkReal x11079=((sj0)*(sj4)); +IkReal x11080=((cj5)*(sj6)); +IkReal x11081=((sj4)*(sj5)); +IkReal x11082=((r12)*(sj5)); +IkReal x11083=((IkReal(0.374290000000000))*(cj5)); +IkReal x11084=((r02)*(sj0)); +IkReal x11085=((cj6)*(r21)); +IkReal x11086=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11087=((IkReal(1.00000000000000))*(sj0)); +IkReal x11088=((cj0)*(r10)); +IkReal x11089=((cj4)*(cj6)); +IkReal x11090=((r00)*(sj0)); +IkReal x11091=((IkReal(0.374290000000000))*(sj5)); +IkReal x11092=((cj0)*(r00)); +IkReal x11093=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11094=((cj0)*(r02)); +IkReal x11095=((cj5)*(sj4)); +IkReal x11096=((cj6)*(r01)); +IkReal x11097=((cj6)*(r11)); +IkReal x11098=((r10)*(sj0)); +IkReal x11099=((sj6)*(x11091)); +IkReal x11100=((cj0)*(cj6)*(x11091)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj2)))+(((r21)*(x11078)))+(((r22)*(x11081)))+(((r20)*(sj4)*(x11080)))+(((x11085)*(x11095)))+(((IkReal(-1.00000000000000))*(r20)*(x11089)))); +evalcond[2]=((((r20)*(x11099)))+(((IkReal(-1.00000000000000))*(r22)*(x11083)))+(((IkReal(-0.0100000000000000))*(r20)*(x11080)))+(pz)+(((IkReal(0.0690000000000000))*(cj2)))+(((x11085)*(x11091)))+(((IkReal(-1.00000000000000))*(r22)*(x11093)))+(((IkReal(-1.00000000000000))*(x11085)*(x11086)))); +evalcond[3]=((((cj5)*(x11079)*(x11096)))+(((IkReal(-1.00000000000000))*(r12)*(x11077)*(x11081)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11077)*(x11080)))+(((r02)*(sj5)*(x11079)))+(((IkReal(-1.00000000000000))*(r11)*(x11077)*(x11078)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x11087)*(x11089)))+(((r01)*(sj0)*(x11078)))+(((r00)*(x11079)*(x11080)))+(((IkReal(-1.00000000000000))*(x11077)*(x11095)*(x11097)))+(((x11088)*(x11089)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11077)*(x11095)*(x11096)))+(((IkReal(-1.00000000000000))*(r11)*(x11078)*(x11087)))+(((IkReal(-1.00000000000000))*(r10)*(x11079)*(x11080)))+(((IkReal(-1.00000000000000))*(r02)*(x11077)*(x11081)))+(((x11089)*(x11098)))+(((x11089)*(x11092)))+(((IkReal(-1.00000000000000))*(x11079)*(x11082)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11077)*(x11080)))+(((IkReal(-1.00000000000000))*(r01)*(x11077)*(x11078)))+(((IkReal(-1.00000000000000))*(cj5)*(x11079)*(x11097)))); +evalcond[5]=((((cj0)*(x11086)*(x11097)))+(((IkReal(-1.00000000000000))*(x11083)*(x11084)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(0.0100000000000000))*(cj0)*(x11082)))+(((IkReal(-1.00000000000000))*(sj0)*(x11086)*(x11096)))+(((cj0)*(r12)*(x11083)))+(((IkReal(-1.00000000000000))*(x11084)*(x11093)))+(((IkReal(-1.00000000000000))*(x11088)*(x11099)))+(((IkReal(-1.00000000000000))*(cj0)*(x11091)*(x11097)))+(((IkReal(0.0100000000000000))*(x11080)*(x11088)))+(((x11090)*(x11099)))+(((IkReal(-0.0100000000000000))*(x11080)*(x11090)))+(((px)*(sj0)))+(((sj0)*(x11091)*(x11096)))+(((IkReal(-1.00000000000000))*(py)*(x11077)))); +evalcond[6]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(py)*(x11087)))+(((IkReal(-1.00000000000000))*(x11092)*(x11099)))+(((sj0)*(x11086)*(x11097)))+(((r12)*(sj0)*(x11083)))+(((x11083)*(x11094)))+(((x11093)*(x11094)))+(((IkReal(-1.00000000000000))*(px)*(x11077)))+(((IkReal(-1.00000000000000))*(sj0)*(x11091)*(x11097)))+(((IkReal(0.0100000000000000))*(x11080)*(x11098)))+(((IkReal(0.0100000000000000))*(sj0)*(x11082)))+(((cj0)*(x11086)*(x11096)))+(((IkReal(-1.00000000000000))*(cj0)*(x11091)*(x11096)))+(((IkReal(-1.00000000000000))*(x11098)*(x11099)))+(((IkReal(0.0100000000000000))*(x11080)*(x11092)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst9; +gconst9=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x11101=((cj5)*(sj4)); +IkReal x11102=((IkReal(1.00000000000000))*(sj6)); +IkReal x11103=((r10)*(sj0)); +IkReal x11104=((sj4)*(sj5)); +IkReal x11105=((cj5)*(cj6)); +IkReal x11106=((r01)*(sj0)); +IkReal x11107=((IkReal(1.00000000000000))*(r02)); +IkReal x11108=((IkReal(0.374290000000000))*(cj0)); +IkReal x11109=((cj5)*(r12)); +IkReal x11110=((cj6)*(sj5)); +IkReal x11111=((cj0)*(r11)); +IkReal x11112=((cj5)*(sj0)); +IkReal x11113=((r20)*(sj6)); +IkReal x11114=((IkReal(1.00000000000000))*(sj0)); +IkReal x11115=((cj4)*(cj5)); +IkReal x11116=((IkReal(1.00000000000000))*(cj6)); +IkReal x11117=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11118=((sj5)*(sj6)); +IkReal x11119=((cj0)*(r10)); +IkReal x11120=((cj4)*(cj6)); +IkReal x11121=((cj0)*(r01)); +IkReal x11122=((IkReal(1.00000000000000))*(cj4)); +IkReal x11123=((cj0)*(r00)); +IkReal x11124=((IkReal(0.374290000000000))*(sj0)); +IkReal x11125=((cj0)*(r12)); +IkReal x11126=((IkReal(0.374290000000000))*(sj5)); +IkReal x11127=((cj4)*(sj6)); +IkReal x11128=((IkReal(1.00000000000000))*(cj0)); +IkReal x11129=((r02)*(sj0)); +IkReal x11130=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11131=((r11)*(sj0)); +IkReal x11132=((r00)*(sj0)*(sj6)); +IkReal x11133=((r00)*(x11120)); +IkReal x11134=((sj6)*(x11130)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x11127)))+(((r22)*(x11104)))+(((x11101)*(x11113)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x11116)))+(((cj6)*(r21)*(x11101)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x11113)*(x11130)))+(((x11113)*(x11126)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(0.374290000000000))*(r21)*(x11110)))+(pz)+(((IkReal(-0.0100000000000000))*(r21)*(x11105)))+(((IkReal(-1.00000000000000))*(r22)*(x11117)))); +evalcond[3]=((((x11106)*(x11110)))+(((IkReal(-1.00000000000000))*(sj5)*(x11102)*(x11119)))+(((cj0)*(x11109)))+(((r00)*(sj0)*(x11118)))+(((IkReal(-1.00000000000000))*(x11107)*(x11112)))+(((IkReal(-1.00000000000000))*(x11110)*(x11111)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x11101)*(x11111)*(x11116)))+(((IkReal(-1.00000000000000))*(x11101)*(x11102)*(x11119)))+(((x11119)*(x11120)))+(((IkReal(-1.00000000000000))*(cj4)*(x11102)*(x11111)))+(((IkReal(-1.00000000000000))*(x11114)*(x11133)))+(((x11101)*(x11132)))+(((x11104)*(x11129)))+(((cj6)*(x11101)*(x11106)))+(((x11106)*(x11127)))+(((IkReal(-1.00000000000000))*(x11104)*(x11125)))); +evalcond[5]=((((cj4)*(x11105)*(x11106)))+(((cj4)*(sj5)*(x11129)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(x11116)*(x11119)))+(((IkReal(-1.00000000000000))*(sj5)*(x11122)*(x11125)))+(((IkReal(-1.00000000000000))*(x11105)*(x11111)*(x11122)))+(((sj4)*(sj6)*(x11111)))+(((r00)*(x11112)*(x11127)))+(((IkReal(-1.00000000000000))*(sj4)*(x11102)*(x11106)))+(((IkReal(-1.00000000000000))*(x11102)*(x11115)*(x11119)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x11102)*(x11121)))+(((IkReal(-1.00000000000000))*(x11101)*(x11116)*(x11121)))+(((IkReal(-1.00000000000000))*(cj0)*(x11104)*(x11107)))+(((IkReal(-1.00000000000000))*(x11101)*(x11102)*(x11103)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x11101)*(x11114)))+(((IkReal(-1.00000000000000))*(r12)*(x11104)*(x11114)))+(((IkReal(-1.00000000000000))*(cj4)*(x11102)*(x11131)))+(((x11103)*(x11120)))+(((x11120)*(x11123)))+(((IkReal(-1.00000000000000))*(x11101)*(x11102)*(x11123)))); +evalcond[7]=((((x11117)*(x11125)))+(((IkReal(-1.00000000000000))*(x11117)*(x11129)))+(((IkReal(0.0100000000000000))*(x11105)*(x11111)))+(((x11119)*(x11134)))+(((IkReal(-1.00000000000000))*(r10)*(x11108)*(x11118)))+(((x11108)*(x11109)))+(((IkReal(-1.00000000000000))*(r11)*(x11108)*(x11110)))+(((IkReal(-0.0100000000000000))*(x11105)*(x11106)))+(((r00)*(x11118)*(x11124)))+(((IkReal(0.374290000000000))*(x11106)*(x11110)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x11112)))+(((IkReal(-1.00000000000000))*(py)*(x11128)))+(((IkReal(-0.374290000000000))*(r02)*(x11112)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(x11105)*(x11121)))+(((r12)*(sj0)*(x11117)))+(((IkReal(-1.00000000000000))*(r00)*(x11108)*(x11118)))+(((IkReal(-1.00000000000000))*(r11)*(x11110)*(x11124)))+(((IkReal(-1.00000000000000))*(px)*(x11128)))+(((x11123)*(x11134)))+(((x11103)*(x11134)))+(((IkReal(-1.00000000000000))*(r01)*(x11108)*(x11110)))+(((cj5)*(r02)*(x11108)))+(((IkReal(0.0100000000000000))*(x11105)*(x11131)))+(((x11109)*(x11124)))+(((cj0)*(r02)*(x11117)))+(((IkReal(-0.374290000000000))*(x11103)*(x11118)))+(((IkReal(-1.00000000000000))*(py)*(x11114)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11135=((IkReal(1.00000000000000))*(cj4)); +IkReal x11136=((cj6)*(r21)); +IkReal x11137=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11136)))+(((sj5)*(x11137))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11135)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11136)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11137)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11136)))+(((sj5)*(x11137)))))+IKsqr(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11135)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11136)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11137)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11136)))+(((sj5)*(x11137)))), ((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11135)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11136)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x11135)*(x11137)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11138=IKcos(j3); +IkReal x11139=((IkReal(1.00000000000000))*(cj4)); +IkReal x11140=((sj0)*(sj5)); +IkReal x11141=((cj0)*(cj5)); +IkReal x11142=((cj6)*(r01)); +IkReal x11143=((r00)*(sj6)); +IkReal x11144=((cj6)*(r11)); +IkReal x11145=((cj5)*(sj0)); +IkReal x11146=((cj6)*(sj4)); +IkReal x11147=((sj4)*(sj6)); +IkReal x11148=((cj4)*(cj5)); +IkReal x11149=((cj6)*(r21)); +IkReal x11150=((r20)*(sj6)); +IkReal x11151=((r10)*(sj6)); +IkReal x11152=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x11153=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x11152)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11149)))+(((sj5)*(x11150)))); +evalcond[1]=((((x11148)*(x11149)))+(((x11148)*(x11150)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x11146)))+(((IkReal(-1.00000000000000))*(r21)*(x11147)))+(x11138)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x11138)))+(((r02)*(x11141)))+(((IkReal(-1.00000000000000))*(x11140)*(x11144)))+(((IkReal(-1.00000000000000))*(x11142)*(x11153)))+(((r12)*(x11145)))+(((IkReal(-1.00000000000000))*(x11143)*(x11153)))+(((IkReal(-1.00000000000000))*(x11140)*(x11151)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11139)*(x11141)*(x11142)))+(((IkReal(-1.00000000000000))*(x11139)*(x11141)*(x11143)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11146)))+(((IkReal(-1.00000000000000))*(x11152)))+(((r11)*(sj0)*(x11147)))+(((cj0)*(r01)*(x11147)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11139)))+(((IkReal(-1.00000000000000))*(x11139)*(x11145)*(x11151)))+(((IkReal(-1.00000000000000))*(r12)*(x11139)*(x11140)))+(((IkReal(-1.00000000000000))*(x11139)*(x11144)*(x11145)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11146)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11154=((cj5)*(sj4)); +IkReal x11155=((IkReal(1.00000000000000))*(sj6)); +IkReal x11156=((r10)*(sj0)); +IkReal x11157=((sj4)*(sj5)); +IkReal x11158=((cj5)*(cj6)); +IkReal x11159=((r01)*(sj0)); +IkReal x11160=((IkReal(1.00000000000000))*(r02)); +IkReal x11161=((IkReal(0.374290000000000))*(cj0)); +IkReal x11162=((cj5)*(r12)); +IkReal x11163=((cj6)*(sj5)); +IkReal x11164=((cj0)*(r11)); +IkReal x11165=((cj5)*(sj0)); +IkReal x11166=((r20)*(sj6)); +IkReal x11167=((IkReal(1.00000000000000))*(sj0)); +IkReal x11168=((cj4)*(cj5)); +IkReal x11169=((IkReal(1.00000000000000))*(cj6)); +IkReal x11170=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11171=((sj5)*(sj6)); +IkReal x11172=((cj0)*(r10)); +IkReal x11173=((cj4)*(cj6)); +IkReal x11174=((cj0)*(r01)); +IkReal x11175=((IkReal(1.00000000000000))*(cj4)); +IkReal x11176=((cj0)*(r00)); +IkReal x11177=((IkReal(0.374290000000000))*(sj0)); +IkReal x11178=((cj0)*(r12)); +IkReal x11179=((IkReal(0.374290000000000))*(sj5)); +IkReal x11180=((cj4)*(sj6)); +IkReal x11181=((IkReal(1.00000000000000))*(cj0)); +IkReal x11182=((r02)*(sj0)); +IkReal x11183=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11184=((r11)*(sj0)); +IkReal x11185=((r00)*(sj0)*(sj6)); +IkReal x11186=((r00)*(x11173)); +IkReal x11187=((sj6)*(x11183)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((x11154)*(x11166)))+(((r22)*(x11157)))+(((cj6)*(r21)*(x11154)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x11169)))+(((r21)*(x11180)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((x11166)*(x11179)))+(((IkReal(-0.0100000000000000))*(r21)*(x11158)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(0.374290000000000))*(r21)*(x11163)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x11170)))+(((IkReal(-1.00000000000000))*(x11166)*(x11183)))); +evalcond[3]=((((cj0)*(x11162)))+(((IkReal(-1.00000000000000))*(sj5)*(x11155)*(x11172)))+(((r00)*(sj0)*(x11171)))+(((IkReal(-1.00000000000000))*(x11163)*(x11164)))+(((IkReal(-1.00000000000000))*(x11160)*(x11165)))+(((x11159)*(x11163)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((cj6)*(x11154)*(x11159)))+(((IkReal(-1.00000000000000))*(x11154)*(x11155)*(x11172)))+(((IkReal(-1.00000000000000))*(cj4)*(x11155)*(x11164)))+(((x11172)*(x11173)))+(((x11159)*(x11180)))+(((x11154)*(x11185)))+(((x11157)*(x11182)))+(((IkReal(-1.00000000000000))*(x11167)*(x11186)))+(((IkReal(-1.00000000000000))*(x11157)*(x11178)))+(((IkReal(-1.00000000000000))*(x11154)*(x11164)*(x11169)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11158)*(x11164)*(x11175)))+(((cj4)*(sj5)*(x11182)))+(((IkReal(-1.00000000000000))*(sj5)*(x11175)*(x11178)))+(((sj4)*(sj6)*(x11164)))+(((cj4)*(x11158)*(x11159)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x11155)*(x11168)*(x11172)))+(((r00)*(x11165)*(x11180)))+(((IkReal(-1.00000000000000))*(sj4)*(x11155)*(x11159)))+(((IkReal(-1.00000000000000))*(sj4)*(x11169)*(x11172)))); +evalcond[6]=((((x11173)*(x11176)))+(((IkReal(-1.00000000000000))*(x11154)*(x11155)*(x11156)))+(((IkReal(-1.00000000000000))*(cj4)*(x11155)*(x11174)))+(((IkReal(-1.00000000000000))*(cj4)*(x11155)*(x11184)))+(((x11156)*(x11173)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x11154)*(x11167)))+(((IkReal(-1.00000000000000))*(cj0)*(x11157)*(x11160)))+(((IkReal(-1.00000000000000))*(x11154)*(x11155)*(x11176)))+(((IkReal(-1.00000000000000))*(r12)*(x11157)*(x11167)))+(((IkReal(-1.00000000000000))*(x11154)*(x11169)*(x11174)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x11170)*(x11182)))+(((x11172)*(x11187)))+(((x11161)*(x11162)))+(((x11170)*(x11178)))+(((IkReal(-0.0100000000000000))*(x11158)*(x11159)))+(((IkReal(-0.374290000000000))*(r02)*(x11165)))+(((IkReal(0.0100000000000000))*(x11158)*(x11164)))+(((IkReal(-1.00000000000000))*(r11)*(x11161)*(x11163)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x11165)))+(((IkReal(0.374290000000000))*(x11159)*(x11163)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x11181)))+(((r00)*(x11171)*(x11177)))+(((IkReal(-1.00000000000000))*(r10)*(x11161)*(x11171)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(r00)*(x11161)*(x11171)))+(((cj0)*(r02)*(x11170)))+(((IkReal(0.0100000000000000))*(x11158)*(x11174)))+(((IkReal(-1.00000000000000))*(px)*(x11181)))+(((cj5)*(r02)*(x11161)))+(((IkReal(-1.00000000000000))*(r01)*(x11161)*(x11163)))+(((IkReal(-1.00000000000000))*(py)*(x11167)))+(((r12)*(sj0)*(x11170)))+(((x11176)*(x11187)))+(((x11162)*(x11177)))+(((x11156)*(x11187)))+(((IkReal(-1.00000000000000))*(r11)*(x11163)*(x11177)))+(((IkReal(-0.374290000000000))*(x11156)*(x11171)))+(((IkReal(0.0100000000000000))*(x11158)*(x11184)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11188=((IkReal(1.00000000000000))*(r21)); +IkReal x11189=((cj4)*(cj5)); +IkReal x11190=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11188)))+(((IkReal(-1.00000000000000))*(sj5)*(x11190)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r21)*(x11189)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11188)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x11189)*(x11190))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11188)))+(((IkReal(-1.00000000000000))*(sj5)*(x11190)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r21)*(x11189)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11188)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x11189)*(x11190)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11188)))+(((IkReal(-1.00000000000000))*(sj5)*(x11190)))+(((cj5)*(r22)))), ((((cj6)*(r21)*(x11189)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11188)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x11189)*(x11190))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11191=IKsin(j3); +IkReal x11192=((IkReal(1.00000000000000))*(cj4)); +IkReal x11193=((sj0)*(sj5)); +IkReal x11194=((cj0)*(cj5)); +IkReal x11195=((cj6)*(r01)); +IkReal x11196=((r00)*(sj6)); +IkReal x11197=((cj6)*(r11)); +IkReal x11198=((cj5)*(sj0)); +IkReal x11199=((cj6)*(sj4)); +IkReal x11200=((sj4)*(sj6)); +IkReal x11201=((cj4)*(cj5)); +IkReal x11202=((cj6)*(r21)); +IkReal x11203=((r20)*(sj6)); +IkReal x11204=((r10)*(sj6)); +IkReal x11205=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x11206=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((x11191)+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11202)))+(((sj5)*(x11203)))); +evalcond[1]=((((r20)*(x11199)))+(((x11201)*(x11202)))+(((IkReal(-1.00000000000000))*(x11205)))+(((cj4)*(r22)*(sj5)))+(((x11201)*(x11203)))+(((IkReal(-1.00000000000000))*(r21)*(x11200)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x11196)*(x11206)))+(((IkReal(-1.00000000000000))*(x11205)))+(((IkReal(-1.00000000000000))*(x11195)*(x11206)))+(((IkReal(-1.00000000000000))*(x11193)*(x11204)))+(((IkReal(-1.00000000000000))*(x11193)*(x11197)))+(((r02)*(x11194)))+(((r12)*(x11198)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11199)))+(((cj0)*(r01)*(x11200)))+(((IkReal(-1.00000000000000))*(x11192)*(x11197)*(x11198)))+(((IkReal(-1.00000000000000))*(x11192)*(x11194)*(x11196)))+(((r11)*(sj0)*(x11200)))+(((IkReal(-1.00000000000000))*(x11191)))+(((IkReal(-1.00000000000000))*(r12)*(x11192)*(x11193)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11199)))+(((IkReal(-1.00000000000000))*(x11192)*(x11194)*(x11195)))+(((IkReal(-1.00000000000000))*(x11192)*(x11198)*(x11204)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11192)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11207=((IkReal(1.00000000000000))*(cj0)); +IkReal x11208=((cj4)*(sj6)); +IkReal x11209=((sj0)*(sj4)); +IkReal x11210=((cj5)*(sj6)); +IkReal x11211=((sj4)*(sj5)); +IkReal x11212=((r12)*(sj5)); +IkReal x11213=((IkReal(0.374290000000000))*(cj5)); +IkReal x11214=((r02)*(sj0)); +IkReal x11215=((r20)*(sj4)); +IkReal x11216=((IkReal(1.00000000000000))*(sj0)); +IkReal x11217=((IkReal(1.00000000000000))*(cj5)); +IkReal x11218=((cj0)*(r10)); +IkReal x11219=((cj4)*(cj6)); +IkReal x11220=((r00)*(sj0)); +IkReal x11221=((cj6)*(r21)); +IkReal x11222=((IkReal(0.374290000000000))*(sj5)); +IkReal x11223=((cj0)*(r00)); +IkReal x11224=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11225=((cj0)*(r02)); +IkReal x11226=((cj5)*(sj4)); +IkReal x11227=((cj6)*(r01)); +IkReal x11228=((cj6)*(r11)); +IkReal x11229=((r01)*(sj0)); +IkReal x11230=((r10)*(sj0)); +IkReal x11231=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11232=((sj6)*(x11222)); +IkReal x11233=((cj0)*(cj6)*(x11222)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x11221)))+(((IkReal(-1.00000000000000))*(r22)*(x11217)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x11211)))+(((x11221)*(x11226)))+(((x11210)*(x11215)))+(((IkReal(-1.00000000000000))*(r20)*(x11219)))+(((r21)*(x11208)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x11210)))+(((IkReal(-1.00000000000000))*(r22)*(x11213)))+(((x11221)*(x11222)))+(((r20)*(x11232)))+(((IkReal(-1.00000000000000))*(r22)*(x11224)))+(pz)+(((IkReal(-0.0100000000000000))*(cj5)*(x11221)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x11208)))+(((cj5)*(r21)*(x11219)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x11215)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x11207)*(x11211)))+(((IkReal(-1.00000000000000))*(x11207)*(x11226)*(x11228)))+(((r00)*(x11209)*(x11210)))+(((cj5)*(x11209)*(x11227)))+(((IkReal(-1.00000000000000))*(r11)*(x11207)*(x11208)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11207)*(x11210)))+(((x11218)*(x11219)))+(((IkReal(-1.00000000000000))*(r00)*(x11216)*(x11219)))+(((x11208)*(x11229)))+(((r02)*(sj5)*(x11209)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11207)*(x11210)))+(((IkReal(-1.00000000000000))*(r02)*(x11207)*(x11211)))+(((x11219)*(x11223)))+(((IkReal(-1.00000000000000))*(x11209)*(x11212)))+(((IkReal(-1.00000000000000))*(r10)*(x11209)*(x11210)))+(((IkReal(-1.00000000000000))*(x11207)*(x11226)*(x11227)))+(((x11219)*(x11230)))+(((IkReal(-1.00000000000000))*(x11209)*(x11217)*(x11228)))+(((IkReal(-1.00000000000000))*(r01)*(x11207)*(x11208)))+(((IkReal(-1.00000000000000))*(r11)*(x11208)*(x11216)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((cj0)*(r12)*(x11213)))+(((IkReal(-1.00000000000000))*(py)*(x11207)))+(((IkReal(0.0100000000000000))*(x11210)*(x11218)))+(((IkReal(-1.00000000000000))*(x11214)*(x11224)))+(((x11220)*(x11232)))+(((IkReal(-1.00000000000000))*(cj0)*(x11222)*(x11228)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11228)))+(((IkReal(0.0100000000000000))*(cj0)*(x11212)))+(((IkReal(-1.00000000000000))*(x11218)*(x11232)))+(((sj0)*(x11222)*(x11227)))+(((IkReal(-1.00000000000000))*(x11213)*(x11214)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11227)))+(((IkReal(-0.0100000000000000))*(x11210)*(x11220)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11228)))+(((IkReal(-1.00000000000000))*(x11223)*(x11232)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11227)))+(((IkReal(0.0100000000000000))*(x11210)*(x11223)))+(((IkReal(-1.00000000000000))*(cj0)*(x11222)*(x11227)))+(((x11213)*(x11225)))+(((IkReal(0.0100000000000000))*(x11210)*(x11230)))+(((IkReal(0.0100000000000000))*(sj0)*(x11212)))+(((IkReal(-1.00000000000000))*(py)*(x11216)))+(((IkReal(-1.00000000000000))*(sj0)*(x11222)*(x11228)))+(((x11224)*(x11225)))+(((r12)*(sj0)*(x11213)))+(((IkReal(-1.00000000000000))*(x11230)*(x11232)))+(((IkReal(-1.00000000000000))*(px)*(x11207)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11234=((cj0)*(cj5)); +IkReal x11235=((IkReal(1.00000000000000))*(cj0)); +IkReal x11236=((cj6)*(r11)); +IkReal x11237=((r10)*(sj6)); +IkReal x11238=((cj5)*(sj0)); +IkReal x11239=((r00)*(sj5)*(sj6)); +IkReal x11240=((cj6)*(r01)*(sj5)); +IkReal x11241=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x11240)))+(((IkReal(-1.00000000000000))*(r02)*(x11238)))+(((sj0)*(x11239)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11237)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11236)))+(((r12)*(x11234))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x11237)*(x11241)))+(((IkReal(-1.00000000000000))*(x11236)*(x11241)))+(((r02)*(x11234)))+(((IkReal(-1.00000000000000))*(x11235)*(x11240)))+(((r12)*(x11238)))+(((IkReal(-1.00000000000000))*(x11235)*(x11239))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x11240)))+(((IkReal(-1.00000000000000))*(r02)*(x11238)))+(((sj0)*(x11239)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11237)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11236)))+(((r12)*(x11234)))))+IKsqr(((((IkReal(-1.00000000000000))*(x11237)*(x11241)))+(((IkReal(-1.00000000000000))*(x11236)*(x11241)))+(((r02)*(x11234)))+(((IkReal(-1.00000000000000))*(x11235)*(x11240)))+(((r12)*(x11238)))+(((IkReal(-1.00000000000000))*(x11235)*(x11239)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x11240)))+(((IkReal(-1.00000000000000))*(r02)*(x11238)))+(((sj0)*(x11239)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11237)))+(((IkReal(-1.00000000000000))*(sj5)*(x11235)*(x11236)))+(((r12)*(x11234)))), ((((IkReal(-1.00000000000000))*(x11237)*(x11241)))+(((IkReal(-1.00000000000000))*(x11236)*(x11241)))+(((r02)*(x11234)))+(((IkReal(-1.00000000000000))*(x11235)*(x11240)))+(((r12)*(x11238)))+(((IkReal(-1.00000000000000))*(x11235)*(x11239))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11242=IKcos(j3); +IkReal x11243=((sj0)*(sj5)); +IkReal x11244=((r00)*(sj6)); +IkReal x11245=((cj6)*(sj0)); +IkReal x11246=((IkReal(1.00000000000000))*(cj4)); +IkReal x11247=((r00)*(sj4)); +IkReal x11248=((cj0)*(cj5)); +IkReal x11249=((cj5)*(sj0)); +IkReal x11250=((cj6)*(r11)); +IkReal x11251=((r10)*(sj6)); +IkReal x11252=((cj0)*(sj5)); +IkReal x11253=((r10)*(sj4)); +IkReal x11254=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x11255=((cj4)*(cj5)*(r01)); +IkReal x11256=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x11257=((cj0)*(sj4)*(sj6)); +IkReal x11258=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj6)*(r01)*(x11243)))+(((x11243)*(x11244)))+(((IkReal(-1.00000000000000))*(r02)*(x11249)))+(((IkReal(-1.00000000000000))*(x11254)))+(((IkReal(-1.00000000000000))*(x11250)*(x11252)))+(((IkReal(-1.00000000000000))*(x11251)*(x11252)))+(((r12)*(x11248)))); +evalcond[1]=((((r12)*(x11249)))+(((r02)*(x11248)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x11252)))+(((IkReal(-1.00000000000000))*(x11242)))+(((IkReal(-1.00000000000000))*(x11243)*(x11250)))+(((IkReal(-1.00000000000000))*(x11243)*(x11251)))+(((IkReal(-1.00000000000000))*(x11244)*(x11252)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x11258)))+(((r11)*(x11257)))+(((cj4)*(r02)*(x11243)))+(((IkReal(-1.00000000000000))*(x11246)*(x11248)*(x11251)))+(((IkReal(-1.00000000000000))*(r12)*(x11246)*(x11252)))+(((IkReal(-1.00000000000000))*(x11253)*(x11256)))+(x11242)+(((IkReal(-1.00000000000000))*(x11246)*(x11248)*(x11250)))+(((cj4)*(x11244)*(x11249)))+(((x11245)*(x11255)))+(((x11245)*(x11247)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11245)*(x11253)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x11245)*(x11246)))+(((IkReal(-1.00000000000000))*(x11244)*(x11246)*(x11248)))+(((r01)*(x11257)))+(((IkReal(-1.00000000000000))*(x11254)))+(((IkReal(-1.00000000000000))*(x11246)*(x11249)*(x11251)))+(((r11)*(x11258)))+(((IkReal(-1.00000000000000))*(x11247)*(x11256)))+(((IkReal(-1.00000000000000))*(r12)*(x11243)*(x11246)))+(((IkReal(-1.00000000000000))*(r02)*(x11246)*(x11252)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x11246)*(x11248)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11259=((IkReal(1.00000000000000))*(cj0)); +IkReal x11260=((cj4)*(sj6)); +IkReal x11261=((sj0)*(sj4)); +IkReal x11262=((cj5)*(sj6)); +IkReal x11263=((sj4)*(sj5)); +IkReal x11264=((r12)*(sj5)); +IkReal x11265=((IkReal(0.374290000000000))*(cj5)); +IkReal x11266=((r02)*(sj0)); +IkReal x11267=((r20)*(sj4)); +IkReal x11268=((IkReal(1.00000000000000))*(sj0)); +IkReal x11269=((IkReal(1.00000000000000))*(cj5)); +IkReal x11270=((cj0)*(r10)); +IkReal x11271=((cj4)*(cj6)); +IkReal x11272=((r00)*(sj0)); +IkReal x11273=((cj6)*(r21)); +IkReal x11274=((IkReal(0.374290000000000))*(sj5)); +IkReal x11275=((cj0)*(r00)); +IkReal x11276=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11277=((cj0)*(r02)); +IkReal x11278=((cj5)*(sj4)); +IkReal x11279=((cj6)*(r01)); +IkReal x11280=((cj6)*(r11)); +IkReal x11281=((r01)*(sj0)); +IkReal x11282=((r10)*(sj0)); +IkReal x11283=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11284=((sj6)*(x11274)); +IkReal x11285=((cj0)*(cj6)*(x11274)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r20)*(sj5)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(x11269)))+(((sj5)*(x11273)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x11273)*(x11278)))+(((r21)*(x11260)))+(((IkReal(-1.00000000000000))*(r20)*(x11271)))+(((r22)*(x11263)))+(((x11262)*(x11267)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(r20)*(x11262)))+(((x11273)*(x11274)))+(((IkReal(-0.0100000000000000))*(cj5)*(x11273)))+(((IkReal(-1.00000000000000))*(r22)*(x11265)))+(((IkReal(-1.00000000000000))*(r22)*(x11276)))+(pz)+(((r20)*(x11284)))); +evalcond[4]=((((cj6)*(x11267)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x11271)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r20)*(x11260)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x11259)*(x11263)))+(((cj5)*(x11261)*(x11279)))+(((x11270)*(x11271)))+(((IkReal(-1.00000000000000))*(r11)*(x11259)*(x11260)))+(((r02)*(sj5)*(x11261)))+(((r00)*(x11261)*(x11262)))+(((IkReal(-1.00000000000000))*(r00)*(x11268)*(x11271)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11259)*(x11262)))+(((IkReal(-1.00000000000000))*(x11259)*(x11278)*(x11280)))+(((x11260)*(x11281)))); +evalcond[6]=((((x11271)*(x11275)))+(((IkReal(-1.00000000000000))*(r02)*(x11259)*(x11263)))+(((IkReal(-1.00000000000000))*(x11261)*(x11269)*(x11280)))+(((IkReal(-1.00000000000000))*(x11261)*(x11264)))+(((IkReal(-1.00000000000000))*(r11)*(x11260)*(x11268)))+(((IkReal(-1.00000000000000))*(r01)*(x11259)*(x11260)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11259)*(x11262)))+(((IkReal(-1.00000000000000))*(r10)*(x11261)*(x11262)))+(((x11271)*(x11282)))+(((IkReal(-1.00000000000000))*(x11259)*(x11278)*(x11279)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(0.0100000000000000))*(x11262)*(x11270)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11279)))+(((IkReal(-1.00000000000000))*(x11265)*(x11266)))+(((IkReal(-0.0100000000000000))*(x11262)*(x11272)))+(((cj0)*(r12)*(x11265)))+(((IkReal(-1.00000000000000))*(cj0)*(x11274)*(x11280)))+(((IkReal(0.0100000000000000))*(cj0)*(x11264)))+(((IkReal(-1.00000000000000))*(x11270)*(x11284)))+(((IkReal(-1.00000000000000))*(x11266)*(x11276)))+(((sj0)*(x11274)*(x11279)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11280)))+(((px)*(sj0)))+(((x11272)*(x11284)))+(((IkReal(-1.00000000000000))*(py)*(x11259)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x11276)*(x11277)))+(((IkReal(-1.00000000000000))*(cj0)*(x11274)*(x11279)))+(((IkReal(-1.00000000000000))*(py)*(x11268)))+(((IkReal(-1.00000000000000))*(sj0)*(x11274)*(x11280)))+(((IkReal(-1.00000000000000))*(x11275)*(x11284)))+(((IkReal(0.0100000000000000))*(x11262)*(x11282)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11280)))+(((IkReal(-1.00000000000000))*(px)*(x11259)))+(((IkReal(0.0100000000000000))*(sj0)*(x11264)))+(((IkReal(0.0100000000000000))*(x11262)*(x11275)))+(((IkReal(-1.00000000000000))*(x11282)*(x11284)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11279)))+(((x11265)*(x11277)))+(((r12)*(sj0)*(x11265)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11286=((cj5)*(r02)); +IkReal x11287=((cj0)*(sj5)); +IkReal x11288=((r10)*(sj6)); +IkReal x11289=((IkReal(1.00000000000000))*(cj6)); +IkReal x11290=((sj0)*(sj5)); +IkReal x11291=((cj5)*(r12)); +IkReal x11292=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((x11287)*(x11288)))+(((IkReal(-1.00000000000000))*(r01)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(cj0)*(x11291)))+(((cj6)*(r11)*(x11287)))+(((sj0)*(x11286)))+(((IkReal(-1.00000000000000))*(x11290)*(x11292))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj0)*(x11291)))+(((IkReal(-1.00000000000000))*(r11)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(x11287)*(x11292)))+(((IkReal(-1.00000000000000))*(r01)*(x11287)*(x11289)))+(((IkReal(-1.00000000000000))*(x11288)*(x11290)))+(((cj0)*(x11286))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x11287)*(x11288)))+(((IkReal(-1.00000000000000))*(r01)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(cj0)*(x11291)))+(((cj6)*(r11)*(x11287)))+(((sj0)*(x11286)))+(((IkReal(-1.00000000000000))*(x11290)*(x11292)))))+IKsqr(((((sj0)*(x11291)))+(((IkReal(-1.00000000000000))*(r11)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(x11287)*(x11292)))+(((IkReal(-1.00000000000000))*(r01)*(x11287)*(x11289)))+(((IkReal(-1.00000000000000))*(x11288)*(x11290)))+(((cj0)*(x11286)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x11287)*(x11288)))+(((IkReal(-1.00000000000000))*(r01)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(cj0)*(x11291)))+(((cj6)*(r11)*(x11287)))+(((sj0)*(x11286)))+(((IkReal(-1.00000000000000))*(x11290)*(x11292)))), ((((sj0)*(x11291)))+(((IkReal(-1.00000000000000))*(r11)*(x11289)*(x11290)))+(((IkReal(-1.00000000000000))*(x11287)*(x11292)))+(((IkReal(-1.00000000000000))*(r01)*(x11287)*(x11289)))+(((IkReal(-1.00000000000000))*(x11288)*(x11290)))+(((cj0)*(x11286))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11293=IKsin(j3); +IkReal x11294=((sj0)*(sj5)); +IkReal x11295=((r00)*(sj6)); +IkReal x11296=((IkReal(1.00000000000000))*(cj4)); +IkReal x11297=((cj6)*(sj0)); +IkReal x11298=((r00)*(sj4)); +IkReal x11299=((cj0)*(cj5)); +IkReal x11300=((cj6)*(r01)); +IkReal x11301=((cj5)*(sj0)); +IkReal x11302=((cj0)*(sj5)); +IkReal x11303=((cj6)*(r11)); +IkReal x11304=((r10)*(sj6)); +IkReal x11305=((r10)*(sj4)); +IkReal x11306=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x11307=((cj0)*(sj4)*(sj6)); +IkReal x11308=((sj0)*(sj4)*(sj6)); +IkReal x11309=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((x11294)*(x11300)))+(((IkReal(-1.00000000000000))*(x11302)*(x11303)))+(((r12)*(x11299)))+(((IkReal(-1.00000000000000))*(x11302)*(x11304)))+(((x11294)*(x11295)))+(x11293)+(((IkReal(-1.00000000000000))*(r02)*(x11301)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x11294)*(x11304)))+(((IkReal(-1.00000000000000))*(x11300)*(x11302)))+(((IkReal(-1.00000000000000))*(x11295)*(x11302)))+(((IkReal(-1.00000000000000))*(x11294)*(x11303)))+(((r02)*(x11299)))+(((r12)*(x11301)))+(((IkReal(-1.00000000000000))*(x11306)))); +evalcond[2]=((((cj4)*(r02)*(x11294)))+(((cj4)*(x11295)*(x11301)))+(((IkReal(-1.00000000000000))*(x11296)*(x11299)*(x11303)))+(((cj4)*(cj5)*(r01)*(x11297)))+(((IkReal(-1.00000000000000))*(x11305)*(x11309)))+(((IkReal(-1.00000000000000))*(x11296)*(x11299)*(x11304)))+(((IkReal(-1.00000000000000))*(r12)*(x11296)*(x11302)))+(((IkReal(-1.00000000000000))*(r01)*(x11308)))+(((r11)*(x11307)))+(((IkReal(-1.00000000000000))*(x11306)))+(((x11297)*(x11298)))); +evalcond[3]=((((r11)*(x11308)))+(((IkReal(-1.00000000000000))*(x11297)*(x11305)))+(((r01)*(x11307)))+(((IkReal(-1.00000000000000))*(x11298)*(x11309)))+(((IkReal(-1.00000000000000))*(x11293)))+(((IkReal(-1.00000000000000))*(x11296)*(x11299)*(x11300)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x11296)*(x11297)))+(((IkReal(-1.00000000000000))*(x11296)*(x11301)*(x11304)))+(((IkReal(-1.00000000000000))*(x11295)*(x11296)*(x11299)))+(((IkReal(-1.00000000000000))*(r02)*(x11296)*(x11302)))+(((IkReal(-1.00000000000000))*(r12)*(x11294)*(x11296)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11310=((cj0)*(cj5)); +IkReal x11311=((IkReal(1.00000000000000))*(cj0)); +IkReal x11312=((cj6)*(r11)); +IkReal x11313=((r10)*(sj6)); +IkReal x11314=((cj5)*(sj0)); +IkReal x11315=((r00)*(sj5)*(sj6)); +IkReal x11316=((cj6)*(r01)*(sj5)); +IkReal x11317=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x11310)))+(((IkReal(-1.00000000000000))*(r02)*(x11314)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11312)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11313)))+(((sj0)*(x11315)))+(((sj0)*(x11316))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x11312)*(x11317)))+(((r02)*(x11310)))+(((IkReal(-1.00000000000000))*(x11313)*(x11317)))+(((IkReal(-1.00000000000000))*(x11311)*(x11315)))+(((IkReal(-1.00000000000000))*(x11311)*(x11316)))+(((r12)*(x11314))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x11310)))+(((IkReal(-1.00000000000000))*(r02)*(x11314)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11312)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11313)))+(((sj0)*(x11315)))+(((sj0)*(x11316)))))))+IKsqr(((((IkReal(-1.00000000000000))*(x11312)*(x11317)))+(((r02)*(x11310)))+(((IkReal(-1.00000000000000))*(x11313)*(x11317)))+(((IkReal(-1.00000000000000))*(x11311)*(x11315)))+(((IkReal(-1.00000000000000))*(x11311)*(x11316)))+(((r12)*(x11314)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x11310)))+(((IkReal(-1.00000000000000))*(r02)*(x11314)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11312)))+(((IkReal(-1.00000000000000))*(sj5)*(x11311)*(x11313)))+(((sj0)*(x11315)))+(((sj0)*(x11316)))))), ((((IkReal(-1.00000000000000))*(x11312)*(x11317)))+(((r02)*(x11310)))+(((IkReal(-1.00000000000000))*(x11313)*(x11317)))+(((IkReal(-1.00000000000000))*(x11311)*(x11315)))+(((IkReal(-1.00000000000000))*(x11311)*(x11316)))+(((r12)*(x11314))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11318=IKsin(j3); +IkReal x11319=IKcos(j3); +IkReal x11320=((sj0)*(sj5)); +IkReal x11321=((r00)*(sj6)); +IkReal x11322=((IkReal(1.00000000000000))*(cj4)); +IkReal x11323=((cj6)*(r01)); +IkReal x11324=((cj0)*(cj5)); +IkReal x11325=((cj5)*(sj0)); +IkReal x11326=((cj6)*(r11)); +IkReal x11327=((cj0)*(sj5)); +IkReal x11328=((cj6)*(sj4)); +IkReal x11329=((cj4)*(cj5)); +IkReal x11330=((cj6)*(r21)); +IkReal x11331=((r20)*(sj6)); +IkReal x11332=((r10)*(sj6)); +IkReal x11333=((IkReal(1.00000000000000))*(cj0)); +IkReal x11334=((IkReal(1.00000000000000))*(x11318)); +IkReal x11335=((cj0)*(sj4)*(sj6)); +IkReal x11336=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj2)*(x11334)))+(((sj5)*(x11331)))+(((sj5)*(x11330)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x11328)))+(((x11329)*(x11331)))+(((cj2)*(x11319)))+(((x11329)*(x11330)))); +evalcond[2]=((((x11320)*(x11323)))+(((x11320)*(x11321)))+(((r12)*(x11324)))+(((IkReal(-1.00000000000000))*(sj2)*(x11334)))+(((IkReal(-1.00000000000000))*(r02)*(x11325)))+(((IkReal(-1.00000000000000))*(x11326)*(x11327)))+(((IkReal(-1.00000000000000))*(x11327)*(x11332)))); +evalcond[3]=((((r12)*(x11325)))+(((IkReal(-1.00000000000000))*(x11320)*(x11326)))+(((IkReal(-1.00000000000000))*(x11320)*(x11332)))+(((IkReal(-1.00000000000000))*(x11321)*(x11327)))+(((IkReal(-1.00000000000000))*(x11323)*(x11327)))+(((r02)*(x11324)))+(((IkReal(-1.00000000000000))*(x11319)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x11328)*(x11333)))+(((IkReal(-1.00000000000000))*(r01)*(x11336)))+(((r11)*(x11335)))+(((cj4)*(r02)*(x11320)))+(((r00)*(sj0)*(x11328)))+(((IkReal(-1.00000000000000))*(x11322)*(x11324)*(x11332)))+(((IkReal(-1.00000000000000))*(r12)*(x11322)*(x11327)))+(((sj2)*(x11319)))+(((cj4)*(x11321)*(x11325)))+(((IkReal(-1.00000000000000))*(x11322)*(x11324)*(x11326)))+(((cj4)*(x11323)*(x11325)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11322)*(x11325)*(x11332)))+(((IkReal(-1.00000000000000))*(r02)*(x11322)*(x11327)))+(((IkReal(-1.00000000000000))*(x11322)*(x11323)*(x11324)))+(((r11)*(x11336)))+(((IkReal(-1.00000000000000))*(x11322)*(x11325)*(x11326)))+(((IkReal(-1.00000000000000))*(r12)*(x11320)*(x11322)))+(((r01)*(x11335)))+(((IkReal(-1.00000000000000))*(x11334)))+(((IkReal(-1.00000000000000))*(r00)*(x11328)*(x11333)))+(((IkReal(-1.00000000000000))*(x11321)*(x11322)*(x11324)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11328)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11337=((sj5)*(sj6)); +IkReal x11338=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x11337)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11337)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x11338)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11337)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x11338))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x11337)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11337)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x11338)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11337)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x11338)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((r20)*(x11337)))+(((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))), ((((cj0)*(cj5)*(r02)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11337)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x11338)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11337)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x11338))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11339=IKsin(j3); +IkReal x11340=IKcos(j3); +IkReal x11341=((sj0)*(sj5)); +IkReal x11342=((r00)*(sj6)); +IkReal x11343=((IkReal(1.00000000000000))*(cj4)); +IkReal x11344=((cj6)*(r01)); +IkReal x11345=((cj0)*(cj5)); +IkReal x11346=((cj5)*(sj0)); +IkReal x11347=((cj6)*(r11)); +IkReal x11348=((cj0)*(sj5)); +IkReal x11349=((cj6)*(sj4)); +IkReal x11350=((cj4)*(cj5)); +IkReal x11351=((cj6)*(r21)); +IkReal x11352=((r20)*(sj6)); +IkReal x11353=((r10)*(sj6)); +IkReal x11354=((IkReal(1.00000000000000))*(cj0)); +IkReal x11355=((IkReal(1.00000000000000))*(x11339)); +IkReal x11356=((cj0)*(sj4)*(sj6)); +IkReal x11357=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x11355)))+(((sj5)*(x11351)))+(((sj5)*(x11352)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11350)*(x11352)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x11349)))+(((x11350)*(x11351)))+(((cj2)*(x11340)))); +evalcond[2]=((((x11341)*(x11342)))+(((r12)*(x11345)))+(((IkReal(-1.00000000000000))*(x11347)*(x11348)))+(((IkReal(-1.00000000000000))*(r02)*(x11346)))+(((IkReal(-1.00000000000000))*(sj2)*(x11355)))+(((x11341)*(x11344)))+(((IkReal(-1.00000000000000))*(x11348)*(x11353)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11342)*(x11348)))+(((IkReal(-1.00000000000000))*(x11340)))+(((IkReal(-1.00000000000000))*(x11341)*(x11353)))+(((IkReal(-1.00000000000000))*(x11344)*(x11348)))+(((IkReal(-1.00000000000000))*(x11341)*(x11347)))+(((r12)*(x11346)))+(((r02)*(x11345)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x11349)*(x11354)))+(((IkReal(-1.00000000000000))*(x11343)*(x11345)*(x11347)))+(((cj4)*(x11344)*(x11346)))+(((cj4)*(r02)*(x11341)))+(((sj2)*(x11340)))+(((IkReal(-1.00000000000000))*(x11343)*(x11345)*(x11353)))+(((IkReal(-1.00000000000000))*(r01)*(x11357)))+(((r00)*(sj0)*(x11349)))+(((r11)*(x11356)))+(((cj4)*(x11342)*(x11346)))+(((IkReal(-1.00000000000000))*(r12)*(x11343)*(x11348)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11343)*(x11346)*(x11347)))+(((IkReal(-1.00000000000000))*(x11355)))+(((r01)*(x11356)))+(((IkReal(-1.00000000000000))*(x11343)*(x11344)*(x11345)))+(((IkReal(-1.00000000000000))*(r12)*(x11341)*(x11343)))+(((IkReal(-1.00000000000000))*(r02)*(x11343)*(x11348)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11349)))+(((IkReal(-1.00000000000000))*(x11343)*(x11346)*(x11353)))+(((IkReal(-1.00000000000000))*(x11342)*(x11343)*(x11345)))+(((r11)*(x11357)))+(((IkReal(-1.00000000000000))*(r00)*(x11349)*(x11354)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11358=((IkReal(1.00000000000000))*(cj4)); +IkReal x11359=((cj6)*(r21)); +IkReal x11360=((r20)*(sj6)); +if( IKabs(((gconst9)*(((((sj5)*(x11360)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11359))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x11358)*(x11360)))+(((IkReal(-1.00000000000000))*(cj5)*(x11358)*(x11359)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11358)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst9)*(((((sj5)*(x11360)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11359)))))), ((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x11358)*(x11360)))+(((IkReal(-1.00000000000000))*(cj5)*(x11358)*(x11359)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11358)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11361=IKsin(j3); +IkReal x11362=IKcos(j3); +IkReal x11363=((sj0)*(sj5)); +IkReal x11364=((r00)*(sj6)); +IkReal x11365=((IkReal(1.00000000000000))*(cj4)); +IkReal x11366=((cj6)*(r01)); +IkReal x11367=((cj0)*(cj5)); +IkReal x11368=((cj5)*(sj0)); +IkReal x11369=((cj6)*(r11)); +IkReal x11370=((cj0)*(sj5)); +IkReal x11371=((cj6)*(sj4)); +IkReal x11372=((cj4)*(cj5)); +IkReal x11373=((cj6)*(r21)); +IkReal x11374=((r20)*(sj6)); +IkReal x11375=((r10)*(sj6)); +IkReal x11376=((IkReal(1.00000000000000))*(cj0)); +IkReal x11377=((IkReal(1.00000000000000))*(x11361)); +IkReal x11378=((cj0)*(sj4)*(sj6)); +IkReal x11379=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x11377)))+(((sj5)*(x11374)))+(((sj5)*(x11373)))); +evalcond[1]=((((x11372)*(x11374)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x11362)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x11371)))+(((x11372)*(x11373)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x11377)))+(((r12)*(x11367)))+(((IkReal(-1.00000000000000))*(x11370)*(x11375)))+(((x11363)*(x11366)))+(((x11363)*(x11364)))+(((IkReal(-1.00000000000000))*(x11369)*(x11370)))+(((IkReal(-1.00000000000000))*(r02)*(x11368)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11363)*(x11369)))+(((IkReal(-1.00000000000000))*(x11362)))+(((IkReal(-1.00000000000000))*(x11366)*(x11370)))+(((r02)*(x11367)))+(((r12)*(x11368)))+(((IkReal(-1.00000000000000))*(x11363)*(x11375)))+(((IkReal(-1.00000000000000))*(x11364)*(x11370)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11365)*(x11367)*(x11369)))+(((r11)*(x11378)))+(((IkReal(-1.00000000000000))*(x11365)*(x11367)*(x11375)))+(((IkReal(-1.00000000000000))*(r01)*(x11379)))+(((cj4)*(x11364)*(x11368)))+(((cj4)*(r02)*(x11363)))+(((r00)*(sj0)*(x11371)))+(((sj2)*(x11362)))+(((IkReal(-1.00000000000000))*(r12)*(x11365)*(x11370)))+(((cj4)*(x11366)*(x11368)))+(((IkReal(-1.00000000000000))*(r10)*(x11371)*(x11376)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11365)*(x11368)*(x11369)))+(((IkReal(-1.00000000000000))*(r02)*(x11365)*(x11370)))+(((IkReal(-1.00000000000000))*(r12)*(x11363)*(x11365)))+(((r11)*(x11379)))+(((IkReal(-1.00000000000000))*(x11365)*(x11368)*(x11375)))+(((IkReal(-1.00000000000000))*(x11364)*(x11365)*(x11367)))+(((IkReal(-1.00000000000000))*(x11377)))+(((r01)*(x11378)))+(((IkReal(-1.00000000000000))*(x11365)*(x11366)*(x11367)))+(((IkReal(-1.00000000000000))*(r00)*(x11371)*(x11376)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11371)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x11380=((IkReal(1.00000000000000))*(cj0)); +IkReal x11381=((cj4)*(sj6)); +IkReal x11382=((sj0)*(sj4)); +IkReal x11383=((cj5)*(sj6)); +IkReal x11384=((sj4)*(sj5)); +IkReal x11385=((r12)*(sj5)); +IkReal x11386=((IkReal(0.374290000000000))*(cj5)); +IkReal x11387=((r02)*(sj0)); +IkReal x11388=((IkReal(1.00000000000000))*(sj0)); +IkReal x11389=((cj0)*(r10)); +IkReal x11390=((cj4)*(cj6)); +IkReal x11391=((r00)*(sj0)); +IkReal x11392=((cj6)*(r21)); +IkReal x11393=((IkReal(0.374290000000000))*(sj5)); +IkReal x11394=((cj0)*(r00)); +IkReal x11395=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11396=((cj0)*(r02)); +IkReal x11397=((cj5)*(sj4)); +IkReal x11398=((cj6)*(r01)); +IkReal x11399=((cj6)*(r11)); +IkReal x11400=((r01)*(sj0)); +IkReal x11401=((r10)*(sj0)); +IkReal x11402=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11403=((sj6)*(x11393)); +IkReal x11404=((cj0)*(cj6)*(x11393)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((((x11392)*(x11397)))+(((r22)*(x11384)))+(sj2)+(((r21)*(x11381)))+(((r20)*(sj4)*(x11383)))+(((IkReal(-1.00000000000000))*(r20)*(x11390)))); +evalcond[2]=((((x11392)*(x11393)))+(((IkReal(-0.0100000000000000))*(cj5)*(x11392)))+(((IkReal(-0.0690000000000000))*(cj2)))+(((IkReal(-1.00000000000000))*(r22)*(x11386)))+(((IkReal(-0.0100000000000000))*(r20)*(x11383)))+(pz)+(((r20)*(x11403)))+(((IkReal(-1.00000000000000))*(r22)*(x11395)))); +evalcond[3]=((((r00)*(x11382)*(x11383)))+(((IkReal(-1.00000000000000))*(x11380)*(x11397)*(x11399)))+(((x11389)*(x11390)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11380)*(x11383)))+(((IkReal(-1.00000000000000))*(r12)*(x11380)*(x11384)))+(((IkReal(-1.00000000000000))*(r11)*(x11380)*(x11381)))+(((x11381)*(x11400)))+(((r02)*(sj5)*(x11382)))+(((cj5)*(x11382)*(x11398)))+(cj2)+(((IkReal(-1.00000000000000))*(r00)*(x11388)*(x11390)))); +evalcond[4]=((((x11390)*(x11394)))+(((x11390)*(x11401)))+(((IkReal(-1.00000000000000))*(r10)*(x11382)*(x11383)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11380)*(x11383)))+(((IkReal(-1.00000000000000))*(r02)*(x11380)*(x11384)))+(((IkReal(-1.00000000000000))*(x11382)*(x11385)))+(((IkReal(-1.00000000000000))*(cj5)*(x11382)*(x11399)))+(((IkReal(-1.00000000000000))*(r11)*(x11381)*(x11388)))+(((IkReal(-1.00000000000000))*(x11380)*(x11397)*(x11398)))+(((IkReal(-1.00000000000000))*(r01)*(x11380)*(x11381)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11389)*(x11403)))+(((IkReal(0.0100000000000000))*(x11383)*(x11389)))+(((IkReal(-1.00000000000000))*(py)*(x11380)))+(((IkReal(-0.0100000000000000))*(x11383)*(x11391)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11399)))+(((cj0)*(r12)*(x11386)))+(((IkReal(0.0100000000000000))*(cj0)*(x11385)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(cj0)*(x11393)*(x11399)))+(((x11391)*(x11403)))+(((sj0)*(x11393)*(x11398)))+(((IkReal(-1.00000000000000))*(x11387)*(x11395)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x11386)*(x11387)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11398)))); +evalcond[6]=((IkReal(-0.295420000000000))+(((r12)*(sj0)*(x11386)))+(((IkReal(-1.00000000000000))*(x11401)*(x11403)))+(((IkReal(0.0100000000000000))*(x11383)*(x11394)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11398)))+(((IkReal(0.0100000000000000))*(x11383)*(x11401)))+(((IkReal(-1.00000000000000))*(px)*(x11380)))+(((x11395)*(x11396)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11399)))+(((IkReal(-1.00000000000000))*(x11394)*(x11403)))+(((x11386)*(x11396)))+(((IkReal(-1.00000000000000))*(cj0)*(x11393)*(x11398)))+(((IkReal(-1.00000000000000))*(py)*(x11388)))+(((IkReal(0.0100000000000000))*(sj0)*(x11385)))+(((IkReal(-1.00000000000000))*(sj0)*(x11393)*(x11399)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst10; +gconst10=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x11405=((cj5)*(sj4)); +IkReal x11406=((IkReal(1.00000000000000))*(sj6)); +IkReal x11407=((r10)*(sj0)); +IkReal x11408=((sj4)*(sj5)); +IkReal x11409=((cj5)*(cj6)); +IkReal x11410=((r01)*(sj0)); +IkReal x11411=((IkReal(1.00000000000000))*(r02)); +IkReal x11412=((IkReal(0.374290000000000))*(cj0)); +IkReal x11413=((cj5)*(r12)); +IkReal x11414=((cj6)*(sj5)); +IkReal x11415=((cj0)*(r11)); +IkReal x11416=((cj5)*(sj0)); +IkReal x11417=((r20)*(sj6)); +IkReal x11418=((IkReal(1.00000000000000))*(sj0)); +IkReal x11419=((cj4)*(cj5)); +IkReal x11420=((IkReal(1.00000000000000))*(cj6)); +IkReal x11421=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11422=((sj5)*(sj6)); +IkReal x11423=((cj0)*(r10)); +IkReal x11424=((cj4)*(cj6)); +IkReal x11425=((cj0)*(r01)); +IkReal x11426=((IkReal(1.00000000000000))*(cj4)); +IkReal x11427=((cj0)*(r00)); +IkReal x11428=((IkReal(0.374290000000000))*(sj0)); +IkReal x11429=((cj0)*(r12)); +IkReal x11430=((IkReal(0.374290000000000))*(sj5)); +IkReal x11431=((cj4)*(sj6)); +IkReal x11432=((IkReal(1.00000000000000))*(cj0)); +IkReal x11433=((r02)*(sj0)); +IkReal x11434=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11435=((r11)*(sj0)); +IkReal x11436=((r00)*(sj0)*(sj6)); +IkReal x11437=((r00)*(x11424)); +IkReal x11438=((sj6)*(x11434)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((cj6)*(r21)*(x11405)))+(((r22)*(x11408)))+(((r21)*(x11431)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x11420)))+(((x11405)*(x11417)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x11414)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x11417)*(x11430)))+(((IkReal(-1.00000000000000))*(r22)*(x11421)))+(((IkReal(-0.0100000000000000))*(r21)*(x11409)))+(pz)+(((IkReal(-1.00000000000000))*(x11417)*(x11434)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x11406)*(x11423)))+(((IkReal(-1.00000000000000))*(x11411)*(x11416)))+(((IkReal(-1.00000000000000))*(x11414)*(x11415)))+(((r00)*(sj0)*(x11422)))+(((x11410)*(x11414)))+(((cj0)*(x11413)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x11418)*(x11437)))+(((IkReal(-1.00000000000000))*(x11405)*(x11415)*(x11420)))+(((x11405)*(x11436)))+(((IkReal(-1.00000000000000))*(x11408)*(x11429)))+(((IkReal(-1.00000000000000))*(x11405)*(x11406)*(x11423)))+(((IkReal(-1.00000000000000))*(cj4)*(x11406)*(x11415)))+(((x11408)*(x11433)))+(((x11423)*(x11424)))+(((x11410)*(x11431)))+(((cj6)*(x11405)*(x11410)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11406)*(x11419)*(x11423)))+(((cj4)*(sj5)*(x11433)))+(((IkReal(-1.00000000000000))*(sj4)*(x11420)*(x11423)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(x11409)*(x11410)))+(((IkReal(-1.00000000000000))*(sj4)*(x11406)*(x11410)))+(((r00)*(x11416)*(x11431)))+(((IkReal(-1.00000000000000))*(x11409)*(x11415)*(x11426)))+(((sj4)*(sj6)*(x11415)))+(((IkReal(-1.00000000000000))*(sj5)*(x11426)*(x11429)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x11406)*(x11435)))+(((x11424)*(x11427)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x11405)*(x11418)))+(((IkReal(-1.00000000000000))*(r12)*(x11408)*(x11418)))+(((x11407)*(x11424)))+(((IkReal(-1.00000000000000))*(cj0)*(x11408)*(x11411)))+(((IkReal(-1.00000000000000))*(x11405)*(x11406)*(x11427)))+(((IkReal(-1.00000000000000))*(x11405)*(x11406)*(x11407)))+(((IkReal(-1.00000000000000))*(cj4)*(x11406)*(x11425)))+(((IkReal(-1.00000000000000))*(x11405)*(x11420)*(x11425)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x11412)*(x11414)))+(((x11423)*(x11438)))+(((IkReal(0.374290000000000))*(x11410)*(x11414)))+(((IkReal(-1.00000000000000))*(r10)*(x11412)*(x11422)))+(((IkReal(-0.0100000000000000))*(x11409)*(x11410)))+(((r00)*(x11422)*(x11428)))+(((IkReal(-1.00000000000000))*(x11421)*(x11433)))+(((IkReal(-0.374290000000000))*(r02)*(x11416)))+(((IkReal(0.0100000000000000))*(x11409)*(x11415)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x11416)))+(((px)*(sj0)))+(((x11412)*(x11413)))+(((x11421)*(x11429)))+(((IkReal(-1.00000000000000))*(py)*(x11432)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x11427)*(x11438)))+(((IkReal(-1.00000000000000))*(r11)*(x11414)*(x11428)))+(((IkReal(-1.00000000000000))*(py)*(x11418)))+(((cj0)*(r02)*(x11421)))+(((IkReal(0.0100000000000000))*(x11409)*(x11425)))+(((IkReal(-1.00000000000000))*(r00)*(x11412)*(x11422)))+(((r12)*(sj0)*(x11421)))+(((x11413)*(x11428)))+(((IkReal(0.0100000000000000))*(x11409)*(x11435)))+(((IkReal(-1.00000000000000))*(px)*(x11432)))+(((cj5)*(r02)*(x11412)))+(((x11407)*(x11438)))+(((IkReal(-0.374290000000000))*(x11407)*(x11422)))+(((IkReal(-1.00000000000000))*(r01)*(x11412)*(x11414)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11439=((IkReal(1.00000000000000))*(r21)); +IkReal x11440=((cj4)*(cj5)); +IkReal x11441=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11439)))+(((IkReal(-1.00000000000000))*(sj5)*(x11441)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r21)*(x11440)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11439)))+(((x11440)*(x11441))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11439)))+(((IkReal(-1.00000000000000))*(sj5)*(x11441)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r21)*(x11440)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11439)))+(((x11440)*(x11441)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11439)))+(((IkReal(-1.00000000000000))*(sj5)*(x11441)))+(((cj5)*(r22)))), ((((cj6)*(r21)*(x11440)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11439)))+(((x11440)*(x11441))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11442=IKcos(j3); +IkReal x11443=IKsin(j3); +IkReal x11444=((IkReal(1.00000000000000))*(cj4)); +IkReal x11445=((sj0)*(sj5)); +IkReal x11446=((cj0)*(cj5)); +IkReal x11447=((cj6)*(r01)); +IkReal x11448=((r00)*(sj6)); +IkReal x11449=((cj6)*(r11)); +IkReal x11450=((cj5)*(sj0)); +IkReal x11451=((cj6)*(sj4)); +IkReal x11452=((sj4)*(sj6)); +IkReal x11453=((cj4)*(cj5)); +IkReal x11454=((cj6)*(r21)); +IkReal x11455=((r20)*(sj6)); +IkReal x11456=((r10)*(sj6)); +IkReal x11457=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x11454)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11455)))+(x11443)); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x11452)))+(((IkReal(-1.00000000000000))*(x11442)))+(((cj4)*(r22)*(sj5)))+(((x11453)*(x11454)))+(((r20)*(x11451)))+(((x11453)*(x11455)))); +evalcond[2]=((((r02)*(x11446)))+(((IkReal(-1.00000000000000))*(x11447)*(x11457)))+(((IkReal(-1.00000000000000))*(x11445)*(x11449)))+(((IkReal(-1.00000000000000))*(x11448)*(x11457)))+(((r12)*(x11450)))+(x11442)+(((IkReal(-1.00000000000000))*(x11445)*(x11456)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11444)*(x11446)*(x11447)))+(((cj0)*(r01)*(x11452)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11451)))+(((IkReal(-1.00000000000000))*(x11444)*(x11446)*(x11448)))+(((IkReal(-1.00000000000000))*(x11444)*(x11449)*(x11450)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11451)))+(((IkReal(-1.00000000000000))*(x11444)*(x11450)*(x11456)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11444)))+(((IkReal(-1.00000000000000))*(r12)*(x11444)*(x11445)))+(((r11)*(sj0)*(x11452)))+(x11443)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11458=((cj5)*(sj4)); +IkReal x11459=((IkReal(1.00000000000000))*(sj6)); +IkReal x11460=((r10)*(sj0)); +IkReal x11461=((sj4)*(sj5)); +IkReal x11462=((cj5)*(cj6)); +IkReal x11463=((r01)*(sj0)); +IkReal x11464=((IkReal(1.00000000000000))*(r02)); +IkReal x11465=((IkReal(0.374290000000000))*(cj0)); +IkReal x11466=((cj5)*(r12)); +IkReal x11467=((cj6)*(sj5)); +IkReal x11468=((cj0)*(r11)); +IkReal x11469=((cj5)*(sj0)); +IkReal x11470=((r20)*(sj6)); +IkReal x11471=((IkReal(1.00000000000000))*(sj0)); +IkReal x11472=((cj4)*(cj5)); +IkReal x11473=((IkReal(1.00000000000000))*(cj6)); +IkReal x11474=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11475=((sj5)*(sj6)); +IkReal x11476=((cj0)*(r10)); +IkReal x11477=((cj4)*(cj6)); +IkReal x11478=((cj0)*(r01)); +IkReal x11479=((IkReal(1.00000000000000))*(cj4)); +IkReal x11480=((cj0)*(r00)); +IkReal x11481=((IkReal(0.374290000000000))*(sj0)); +IkReal x11482=((cj0)*(r12)); +IkReal x11483=((IkReal(0.374290000000000))*(sj5)); +IkReal x11484=((cj4)*(sj6)); +IkReal x11485=((IkReal(1.00000000000000))*(cj0)); +IkReal x11486=((r02)*(sj0)); +IkReal x11487=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11488=((r11)*(sj0)); +IkReal x11489=((r00)*(sj0)*(sj6)); +IkReal x11490=((r00)*(x11477)); +IkReal x11491=((sj6)*(x11487)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((cj6)*(r21)*(x11458)))+(((r21)*(x11484)))+(((x11458)*(x11470)))+(((r22)*(x11461)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x11473)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(0.374290000000000))*(r21)*(x11467)))+(((x11470)*(x11483)))+(((IkReal(-1.00000000000000))*(r22)*(x11474)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x11470)*(x11487)))+(((IkReal(-0.0100000000000000))*(r21)*(x11462)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11464)*(x11469)))+(((IkReal(-1.00000000000000))*(x11467)*(x11468)))+(((x11463)*(x11467)))+(((IkReal(-1.00000000000000))*(sj5)*(x11459)*(x11476)))+(((cj0)*(x11466)))+(((r00)*(sj0)*(x11475)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x11461)*(x11486)))+(((IkReal(-1.00000000000000))*(x11461)*(x11482)))+(((x11463)*(x11484)))+(((cj6)*(x11458)*(x11463)))+(((IkReal(-1.00000000000000))*(cj4)*(x11459)*(x11468)))+(((IkReal(-1.00000000000000))*(x11458)*(x11459)*(x11476)))+(((IkReal(-1.00000000000000))*(x11471)*(x11490)))+(((x11458)*(x11489)))+(((x11476)*(x11477)))+(((IkReal(-1.00000000000000))*(x11458)*(x11468)*(x11473)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x11459)*(x11463)))+(((r00)*(x11469)*(x11484)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((IkReal(-1.00000000000000))*(x11462)*(x11468)*(x11479)))+(((cj4)*(sj5)*(x11486)))+(((IkReal(-1.00000000000000))*(sj5)*(x11479)*(x11482)))+(((sj4)*(sj6)*(x11468)))+(((IkReal(-1.00000000000000))*(x11459)*(x11472)*(x11476)))+(((cj4)*(x11462)*(x11463)))+(((IkReal(-1.00000000000000))*(sj4)*(x11473)*(x11476)))); +evalcond[6]=((((x11477)*(x11480)))+(((IkReal(-1.00000000000000))*(x11458)*(x11473)*(x11478)))+(((x11460)*(x11477)))+(((IkReal(-1.00000000000000))*(x11458)*(x11459)*(x11460)))+(((IkReal(-1.00000000000000))*(x11458)*(x11459)*(x11480)))+(((IkReal(-1.00000000000000))*(cj0)*(x11461)*(x11464)))+(((IkReal(-1.00000000000000))*(r12)*(x11461)*(x11471)))+(((IkReal(-1.00000000000000))*(cj4)*(x11459)*(x11488)))+(((IkReal(-1.00000000000000))*(cj4)*(x11459)*(x11478)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x11458)*(x11471)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x11474)*(x11486)))+(((x11474)*(x11482)))+(((IkReal(-1.00000000000000))*(py)*(x11485)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x11469)))+(((IkReal(-1.00000000000000))*(r11)*(x11465)*(x11467)))+(((IkReal(-0.374290000000000))*(r02)*(x11469)))+(((IkReal(-1.00000000000000))*(r10)*(x11465)*(x11475)))+(((IkReal(0.374290000000000))*(x11463)*(x11467)))+(((IkReal(0.0100000000000000))*(x11462)*(x11468)))+(((x11465)*(x11466)))+(((px)*(sj0)))+(((x11476)*(x11491)))+(((r00)*(x11475)*(x11481)))+(((IkReal(-0.0100000000000000))*(x11462)*(x11463)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(r01)*(x11465)*(x11467)))+(((cj0)*(r02)*(x11474)))+(((cj5)*(r02)*(x11465)))+(((IkReal(-1.00000000000000))*(px)*(x11485)))+(((x11460)*(x11491)))+(((IkReal(0.0100000000000000))*(x11462)*(x11478)))+(((r12)*(sj0)*(x11474)))+(((IkReal(-1.00000000000000))*(py)*(x11471)))+(((IkReal(-1.00000000000000))*(r00)*(x11465)*(x11475)))+(((x11466)*(x11481)))+(((IkReal(-1.00000000000000))*(r11)*(x11467)*(x11481)))+(((IkReal(0.0100000000000000))*(x11462)*(x11488)))+(((IkReal(-0.374290000000000))*(x11460)*(x11475)))+(((x11480)*(x11491)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11492=((IkReal(1.00000000000000))*(cj4)); +IkReal x11493=((cj6)*(r21)); +IkReal x11494=((r20)*(sj6)); +if( IKabs(((((sj5)*(x11493)))+(((sj5)*(x11494)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11493)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11492)))+(((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x11493)))+(((sj5)*(x11494)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11493)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11492)))+(((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x11493)))+(((sj5)*(x11494)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11493)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x11492)))+(((IkReal(-1.00000000000000))*(cj5)*(x11492)*(x11494)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11495=IKcos(j3); +IkReal x11496=IKsin(j3); +IkReal x11497=((IkReal(1.00000000000000))*(cj4)); +IkReal x11498=((sj0)*(sj5)); +IkReal x11499=((cj0)*(cj5)); +IkReal x11500=((cj6)*(r01)); +IkReal x11501=((r00)*(sj6)); +IkReal x11502=((cj6)*(r11)); +IkReal x11503=((cj5)*(sj0)); +IkReal x11504=((cj6)*(sj4)); +IkReal x11505=((sj4)*(sj6)); +IkReal x11506=((cj4)*(cj5)); +IkReal x11507=((cj6)*(r21)); +IkReal x11508=((r20)*(sj6)); +IkReal x11509=((r10)*(sj6)); +IkReal x11510=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x11507)))+(((IkReal(-1.00000000000000))*(x11496)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11508)))); +evalcond[1]=((((cj4)*(r22)*(sj5)))+(((x11506)*(x11507)))+(((IkReal(-1.00000000000000))*(r21)*(x11505)))+(x11495)+(((r20)*(x11504)))+(((x11506)*(x11508)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x11498)*(x11509)))+(((r12)*(x11503)))+(((IkReal(-1.00000000000000))*(x11500)*(x11510)))+(((IkReal(-1.00000000000000))*(x11501)*(x11510)))+(((IkReal(-1.00000000000000))*(x11498)*(x11502)))+(((r02)*(x11499)))+(x11495)); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x11497)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11504)))+(((r11)*(sj0)*(x11505)))+(((IkReal(-1.00000000000000))*(x11497)*(x11499)*(x11500)))+(((IkReal(-1.00000000000000))*(r12)*(x11497)*(x11498)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x11504)))+(((IkReal(-1.00000000000000))*(x11497)*(x11502)*(x11503)))+(((cj0)*(r01)*(x11505)))+(((IkReal(-1.00000000000000))*(x11497)*(x11499)*(x11501)))+(x11496)+(((IkReal(-1.00000000000000))*(x11497)*(x11503)*(x11509)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11511=((IkReal(1.00000000000000))*(cj0)); +IkReal x11512=((cj4)*(sj6)); +IkReal x11513=((sj0)*(sj4)); +IkReal x11514=((cj5)*(sj6)); +IkReal x11515=((sj4)*(sj5)); +IkReal x11516=((r12)*(sj5)); +IkReal x11517=((IkReal(0.374290000000000))*(cj5)); +IkReal x11518=((r02)*(sj0)); +IkReal x11519=((r20)*(sj4)); +IkReal x11520=((IkReal(1.00000000000000))*(sj0)); +IkReal x11521=((IkReal(1.00000000000000))*(cj5)); +IkReal x11522=((cj0)*(r10)); +IkReal x11523=((cj4)*(cj6)); +IkReal x11524=((r00)*(sj0)); +IkReal x11525=((cj6)*(r21)); +IkReal x11526=((IkReal(0.374290000000000))*(sj5)); +IkReal x11527=((cj0)*(r00)); +IkReal x11528=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11529=((cj0)*(r02)); +IkReal x11530=((cj5)*(sj4)); +IkReal x11531=((cj6)*(r01)); +IkReal x11532=((cj6)*(r11)); +IkReal x11533=((r01)*(sj0)); +IkReal x11534=((r10)*(sj0)); +IkReal x11535=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11536=((sj6)*(x11526)); +IkReal x11537=((cj0)*(cj6)*(x11526)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x11525)))+(((IkReal(-1.00000000000000))*(r22)*(x11521)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x11523)))+(((x11514)*(x11519)))+(((r21)*(x11512)))+(((r22)*(x11515)))+(((x11525)*(x11530)))); +evalcond[3]=((((x11525)*(x11526)))+(((r20)*(x11536)))+(((IkReal(-0.0100000000000000))*(r20)*(x11514)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x11517)))+(((IkReal(-0.0100000000000000))*(cj5)*(x11525)))+(((IkReal(-1.00000000000000))*(r22)*(x11528)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x11523)))+(((cj6)*(x11519)))+(((cj5)*(r20)*(x11512)))); +evalcond[5]=((((cj5)*(x11513)*(x11531)))+(((x11512)*(x11533)))+(((IkReal(-1.00000000000000))*(r12)*(x11511)*(x11515)))+(((r02)*(sj5)*(x11513)))+(((IkReal(-1.00000000000000))*(x11511)*(x11530)*(x11532)))+(((x11522)*(x11523)))+(((r00)*(x11513)*(x11514)))+(((IkReal(-1.00000000000000))*(r11)*(x11511)*(x11512)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11511)*(x11514)))+(((IkReal(-1.00000000000000))*(r00)*(x11520)*(x11523)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11511)*(x11514)))+(((IkReal(-1.00000000000000))*(x11513)*(x11516)))+(((IkReal(-1.00000000000000))*(r10)*(x11513)*(x11514)))+(((x11523)*(x11527)))+(((IkReal(-1.00000000000000))*(x11511)*(x11530)*(x11531)))+(((IkReal(-1.00000000000000))*(x11513)*(x11521)*(x11532)))+(((IkReal(-1.00000000000000))*(r11)*(x11512)*(x11520)))+(((x11523)*(x11534)))+(((IkReal(-1.00000000000000))*(r02)*(x11511)*(x11515)))+(((IkReal(-1.00000000000000))*(r01)*(x11511)*(x11512)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((x11524)*(x11536)))+(((IkReal(0.0100000000000000))*(cj0)*(x11516)))+(((IkReal(-1.00000000000000))*(x11522)*(x11536)))+(((IkReal(-1.00000000000000))*(py)*(x11511)))+(((sj0)*(x11526)*(x11531)))+(((IkReal(0.0100000000000000))*(x11514)*(x11522)))+(((IkReal(-1.00000000000000))*(x11518)*(x11528)))+(((px)*(sj0)))+(((cj0)*(r12)*(x11517)))+(((IkReal(-0.0100000000000000))*(x11514)*(x11524)))+(((IkReal(-1.00000000000000))*(cj0)*(x11526)*(x11532)))+(((IkReal(-1.00000000000000))*(x11517)*(x11518)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11531)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11532)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(-1.00000000000000))*(x11534)*(x11536)))+(((IkReal(-1.00000000000000))*(x11527)*(x11536)))+(((IkReal(0.0100000000000000))*(x11514)*(x11527)))+(((x11528)*(x11529)))+(((IkReal(-1.00000000000000))*(cj0)*(x11526)*(x11531)))+(((IkReal(-1.00000000000000))*(sj0)*(x11526)*(x11532)))+(((IkReal(-1.00000000000000))*(px)*(x11511)))+(((IkReal(0.0100000000000000))*(sj0)*(x11516)))+(((x11517)*(x11529)))+(((IkReal(0.0100000000000000))*(x11514)*(x11534)))+(((IkReal(-1.00000000000000))*(py)*(x11520)))+(((r12)*(sj0)*(x11517)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11532)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11531)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11538=((sj0)*(sj5)); +IkReal x11539=((r00)*(sj6)); +IkReal x11540=((IkReal(1.00000000000000))*(cj5)); +IkReal x11541=((cj6)*(r11)); +IkReal x11542=((cj6)*(r01)); +IkReal x11543=((r10)*(sj6)); +IkReal x11544=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x11541)*(x11544)))+(((IkReal(-1.00000000000000))*(x11543)*(x11544)))+(((x11538)*(x11542)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11540)))+(((x11538)*(x11539))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x11538)*(x11541)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11540)))+(((x11538)*(x11543)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11540)))+(((x11542)*(x11544)))+(((x11539)*(x11544))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x11541)*(x11544)))+(((IkReal(-1.00000000000000))*(x11543)*(x11544)))+(((x11538)*(x11542)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11540)))+(((x11538)*(x11539)))))+IKsqr(((((x11538)*(x11541)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11540)))+(((x11538)*(x11543)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11540)))+(((x11542)*(x11544)))+(((x11539)*(x11544)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x11541)*(x11544)))+(((IkReal(-1.00000000000000))*(x11543)*(x11544)))+(((x11538)*(x11542)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11540)))+(((x11538)*(x11539)))), ((((x11538)*(x11541)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11540)))+(((x11538)*(x11543)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11540)))+(((x11542)*(x11544)))+(((x11539)*(x11544))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11545=IKcos(j3); +IkReal x11546=IKsin(j3); +IkReal x11547=((sj0)*(sj5)); +IkReal x11548=((r00)*(sj6)); +IkReal x11549=((cj6)*(sj0)); +IkReal x11550=((IkReal(1.00000000000000))*(cj4)); +IkReal x11551=((r00)*(sj4)); +IkReal x11552=((cj0)*(cj5)); +IkReal x11553=((cj5)*(sj0)); +IkReal x11554=((cj6)*(r11)); +IkReal x11555=((r10)*(sj6)); +IkReal x11556=((cj0)*(sj5)); +IkReal x11557=((r10)*(sj4)); +IkReal x11558=((cj4)*(cj5)*(r01)); +IkReal x11559=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x11560=((cj0)*(sj4)*(sj6)); +IkReal x11561=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((r12)*(x11552)))+(((cj6)*(r01)*(x11547)))+(((x11547)*(x11548)))+(((IkReal(-1.00000000000000))*(x11546)))+(((IkReal(-1.00000000000000))*(r02)*(x11553)))+(((IkReal(-1.00000000000000))*(x11555)*(x11556)))+(((IkReal(-1.00000000000000))*(x11554)*(x11556)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(x11548)*(x11556)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x11556)))+(((IkReal(-1.00000000000000))*(x11547)*(x11554)))+(x11545)+(((IkReal(-1.00000000000000))*(x11547)*(x11555)))+(((r12)*(x11553)))+(((r02)*(x11552)))); +evalcond[2]=((((cj4)*(x11548)*(x11553)))+(((IkReal(-1.00000000000000))*(r12)*(x11550)*(x11556)))+(((x11549)*(x11551)))+(((IkReal(-1.00000000000000))*(x11550)*(x11552)*(x11555)))+(((r11)*(x11560)))+(x11545)+(((IkReal(-1.00000000000000))*(r01)*(x11561)))+(((IkReal(-1.00000000000000))*(x11557)*(x11559)))+(((cj4)*(r02)*(x11547)))+(((x11549)*(x11558)))+(((IkReal(-1.00000000000000))*(x11550)*(x11552)*(x11554)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r02)*(x11550)*(x11556)))+(((r11)*(x11561)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x11550)*(x11552)))+(((IkReal(-1.00000000000000))*(x11549)*(x11557)))+(x11546)+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x11549)*(x11550)))+(((IkReal(-1.00000000000000))*(x11550)*(x11553)*(x11555)))+(((r01)*(x11560)))+(((IkReal(-1.00000000000000))*(x11548)*(x11550)*(x11552)))+(((IkReal(-1.00000000000000))*(r12)*(x11547)*(x11550)))+(((IkReal(-1.00000000000000))*(x11551)*(x11559)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11562=((IkReal(1.00000000000000))*(cj0)); +IkReal x11563=((cj4)*(sj6)); +IkReal x11564=((sj0)*(sj4)); +IkReal x11565=((cj5)*(sj6)); +IkReal x11566=((sj4)*(sj5)); +IkReal x11567=((r12)*(sj5)); +IkReal x11568=((IkReal(0.374290000000000))*(cj5)); +IkReal x11569=((r02)*(sj0)); +IkReal x11570=((r20)*(sj4)); +IkReal x11571=((IkReal(1.00000000000000))*(sj0)); +IkReal x11572=((IkReal(1.00000000000000))*(cj5)); +IkReal x11573=((cj0)*(r10)); +IkReal x11574=((cj4)*(cj6)); +IkReal x11575=((r00)*(sj0)); +IkReal x11576=((cj6)*(r21)); +IkReal x11577=((IkReal(0.374290000000000))*(sj5)); +IkReal x11578=((cj0)*(r00)); +IkReal x11579=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11580=((cj0)*(r02)); +IkReal x11581=((cj5)*(sj4)); +IkReal x11582=((cj6)*(r01)); +IkReal x11583=((cj6)*(r11)); +IkReal x11584=((r01)*(sj0)); +IkReal x11585=((r10)*(sj0)); +IkReal x11586=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11587=((sj6)*(x11577)); +IkReal x11588=((cj0)*(cj6)*(x11577)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x11576)))+(((IkReal(-1.00000000000000))*(r22)*(x11572)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r21)*(x11563)))+(((IkReal(-1.00000000000000))*(r20)*(x11574)))+(((x11565)*(x11570)))+(((r22)*(x11566)))+(((x11576)*(x11581)))); +evalcond[3]=((((IkReal(-0.0100000000000000))*(cj5)*(x11576)))+(((IkReal(-1.00000000000000))*(r22)*(x11579)))+(((IkReal(-1.00000000000000))*(r22)*(x11568)))+(((x11576)*(x11577)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x11565)))+(((r20)*(x11587)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x11563)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x11570)))+(((cj5)*(r21)*(x11574)))); +evalcond[5]=((((x11573)*(x11574)))+(((r00)*(x11564)*(x11565)))+(((IkReal(-1.00000000000000))*(r12)*(x11562)*(x11566)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11562)*(x11565)))+(((cj5)*(x11564)*(x11582)))+(((x11563)*(x11584)))+(((IkReal(-1.00000000000000))*(r11)*(x11562)*(x11563)))+(((IkReal(-1.00000000000000))*(x11562)*(x11581)*(x11583)))+(((r02)*(sj5)*(x11564)))+(((IkReal(-1.00000000000000))*(r00)*(x11571)*(x11574)))); +evalcond[6]=((((x11574)*(x11585)))+(((IkReal(-1.00000000000000))*(r11)*(x11563)*(x11571)))+(((IkReal(-1.00000000000000))*(x11564)*(x11572)*(x11583)))+(((x11574)*(x11578)))+(((IkReal(-1.00000000000000))*(r10)*(x11564)*(x11565)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11562)*(x11565)))+(((IkReal(-1.00000000000000))*(r01)*(x11562)*(x11563)))+(((IkReal(-1.00000000000000))*(x11564)*(x11567)))+(((IkReal(-1.00000000000000))*(r02)*(x11562)*(x11566)))+(((IkReal(-1.00000000000000))*(x11562)*(x11581)*(x11582)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x11573)*(x11587)))+(((sj0)*(x11577)*(x11582)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11583)))+(((IkReal(-1.00000000000000))*(x11568)*(x11569)))+(((IkReal(0.0100000000000000))*(x11565)*(x11573)))+(((IkReal(-1.00000000000000))*(cj0)*(x11577)*(x11583)))+(((IkReal(-0.0100000000000000))*(x11565)*(x11575)))+(((cj0)*(r12)*(x11568)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11582)))+(((IkReal(-1.00000000000000))*(x11569)*(x11579)))+(((IkReal(0.0100000000000000))*(cj0)*(x11567)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(py)*(x11562)))+(((x11575)*(x11587)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x11568)*(x11580)))+(((IkReal(-1.00000000000000))*(cj0)*(x11577)*(x11582)))+(((IkReal(-1.00000000000000))*(px)*(x11562)))+(((IkReal(-1.00000000000000))*(sj0)*(x11577)*(x11583)))+(((IkReal(-1.00000000000000))*(x11585)*(x11587)))+(((IkReal(0.0100000000000000))*(x11565)*(x11578)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11582)))+(((r12)*(sj0)*(x11568)))+(((IkReal(-1.00000000000000))*(x11578)*(x11587)))+(((IkReal(0.0100000000000000))*(sj0)*(x11567)))+(((x11579)*(x11580)))+(((IkReal(-1.00000000000000))*(py)*(x11571)))+(((IkReal(0.0100000000000000))*(x11565)*(x11585)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11583)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11589=((IkReal(1.00000000000000))*(cj5)); +IkReal x11590=((r10)*(sj5)*(sj6)); +IkReal x11591=((cj6)*(sj0)*(sj5)); +IkReal x11592=((r00)*(sj5)*(sj6)); +IkReal x11593=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r01)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x11589)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x11593)))+(((cj0)*(x11590)))+(((IkReal(-1.00000000000000))*(sj0)*(x11592))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(x11592)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11589)))+(((sj0)*(x11590)))+(((r01)*(x11593)))+(((r11)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11589))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r01)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x11589)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x11593)))+(((cj0)*(x11590)))+(((IkReal(-1.00000000000000))*(sj0)*(x11592)))))+IKsqr(((((cj0)*(x11592)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11589)))+(((sj0)*(x11590)))+(((r01)*(x11593)))+(((r11)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11589)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r01)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x11589)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x11593)))+(((cj0)*(x11590)))+(((IkReal(-1.00000000000000))*(sj0)*(x11592)))), ((((cj0)*(x11592)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11589)))+(((sj0)*(x11590)))+(((r01)*(x11593)))+(((r11)*(x11591)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11589))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11594=IKcos(j3); +IkReal x11595=IKsin(j3); +IkReal x11596=((sj0)*(sj5)); +IkReal x11597=((r00)*(sj6)); +IkReal x11598=((IkReal(1.00000000000000))*(cj4)); +IkReal x11599=((cj6)*(sj0)); +IkReal x11600=((r00)*(sj4)); +IkReal x11601=((cj0)*(cj5)); +IkReal x11602=((cj6)*(r01)); +IkReal x11603=((cj5)*(sj0)); +IkReal x11604=((cj0)*(sj5)); +IkReal x11605=((cj6)*(r11)); +IkReal x11606=((r10)*(sj6)); +IkReal x11607=((r10)*(sj4)); +IkReal x11608=((cj0)*(sj4)*(sj6)); +IkReal x11609=((sj0)*(sj4)*(sj6)); +IkReal x11610=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((x11595)+(((r12)*(x11601)))+(((x11596)*(x11602)))+(((IkReal(-1.00000000000000))*(x11604)*(x11605)))+(((IkReal(-1.00000000000000))*(x11604)*(x11606)))+(((IkReal(-1.00000000000000))*(r02)*(x11603)))+(((x11596)*(x11597)))); +evalcond[1]=((x11594)+(((IkReal(-1.00000000000000))*(x11602)*(x11604)))+(((r02)*(x11601)))+(((IkReal(-1.00000000000000))*(x11597)*(x11604)))+(((IkReal(-1.00000000000000))*(x11596)*(x11605)))+(((r12)*(x11603)))+(((IkReal(-1.00000000000000))*(x11596)*(x11606)))); +evalcond[2]=((((cj4)*(x11597)*(x11603)))+(((cj4)*(cj5)*(r01)*(x11599)))+(((IkReal(-1.00000000000000))*(x11607)*(x11610)))+(((IkReal(-1.00000000000000))*(r12)*(x11598)*(x11604)))+(((x11599)*(x11600)))+(((IkReal(-1.00000000000000))*(x11594)))+(((IkReal(-1.00000000000000))*(x11598)*(x11601)*(x11606)))+(((IkReal(-1.00000000000000))*(r01)*(x11609)))+(((r11)*(x11608)))+(((IkReal(-1.00000000000000))*(x11598)*(x11601)*(x11605)))+(((cj4)*(r02)*(x11596)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x11598)*(x11599)))+(x11595)+(((IkReal(-1.00000000000000))*(x11600)*(x11610)))+(((IkReal(-1.00000000000000))*(x11598)*(x11603)*(x11606)))+(((IkReal(-1.00000000000000))*(x11597)*(x11598)*(x11601)))+(((IkReal(-1.00000000000000))*(r02)*(x11598)*(x11604)))+(((IkReal(-1.00000000000000))*(r12)*(x11596)*(x11598)))+(((r11)*(x11609)))+(((IkReal(-1.00000000000000))*(x11599)*(x11607)))+(((IkReal(-1.00000000000000))*(x11598)*(x11601)*(x11602)))+(((r01)*(x11608)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11611=((sj0)*(sj5)); +IkReal x11612=((r00)*(sj6)); +IkReal x11613=((IkReal(1.00000000000000))*(cj5)); +IkReal x11614=((cj6)*(r11)); +IkReal x11615=((cj6)*(r01)); +IkReal x11616=((cj0)*(sj5)); +IkReal x11617=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11613)))+(((IkReal(-1.00000000000000))*(x11614)*(x11616)))+(((x11611)*(x11615)))+(((cj0)*(cj5)*(r12)))+(((x11611)*(x11612)))+(((IkReal(-1.00000000000000))*(x11616)*(x11617))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((x11615)*(x11616)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11613)))+(((x11611)*(x11614)))+(((x11611)*(x11617)))+(((x11612)*(x11616)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11613))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11613)))+(((IkReal(-1.00000000000000))*(x11614)*(x11616)))+(((x11611)*(x11615)))+(((cj0)*(cj5)*(r12)))+(((x11611)*(x11612)))+(((IkReal(-1.00000000000000))*(x11616)*(x11617)))))))+IKsqr(((((x11615)*(x11616)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11613)))+(((x11611)*(x11614)))+(((x11611)*(x11617)))+(((x11612)*(x11616)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11613)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11613)))+(((IkReal(-1.00000000000000))*(x11614)*(x11616)))+(((x11611)*(x11615)))+(((cj0)*(cj5)*(r12)))+(((x11611)*(x11612)))+(((IkReal(-1.00000000000000))*(x11616)*(x11617)))))), ((((x11615)*(x11616)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11613)))+(((x11611)*(x11614)))+(((x11611)*(x11617)))+(((x11612)*(x11616)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11613))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11618=IKsin(j3); +IkReal x11619=IKcos(j3); +IkReal x11620=((sj0)*(sj5)); +IkReal x11621=((r00)*(sj6)); +IkReal x11622=((IkReal(1.00000000000000))*(cj4)); +IkReal x11623=((cj6)*(r01)); +IkReal x11624=((cj0)*(cj5)); +IkReal x11625=((cj5)*(sj0)); +IkReal x11626=((cj6)*(r11)); +IkReal x11627=((cj6)*(sj4)); +IkReal x11628=((cj0)*(sj5)); +IkReal x11629=((cj4)*(cj5)); +IkReal x11630=((cj6)*(r21)); +IkReal x11631=((r20)*(sj6)); +IkReal x11632=((r10)*(sj6)); +IkReal x11633=((IkReal(1.00000000000000))*(cj0)); +IkReal x11634=((cj0)*(sj4)*(sj6)); +IkReal x11635=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x11631)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11630)))+(((cj2)*(x11618)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11629)*(x11631)))+(((x11629)*(x11630)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj2)*(x11619)))+(((r20)*(x11627)))); +evalcond[2]=((((x11620)*(x11623)))+(((IkReal(-1.00000000000000))*(r02)*(x11625)))+(((r12)*(x11624)))+(((IkReal(-1.00000000000000))*(sj2)*(x11618)))+(((x11620)*(x11621)))+(((IkReal(-1.00000000000000))*(x11628)*(x11632)))+(((IkReal(-1.00000000000000))*(x11626)*(x11628)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11623)*(x11628)))+(((IkReal(-1.00000000000000))*(x11621)*(x11628)))+(((IkReal(-1.00000000000000))*(x11620)*(x11626)))+(((r12)*(x11625)))+(((r02)*(x11624)))+(((IkReal(-1.00000000000000))*(x11620)*(x11632)))+(x11619)); +evalcond[4]=((((cj4)*(x11621)*(x11625)))+(((cj4)*(r02)*(x11620)))+(((IkReal(-1.00000000000000))*(r12)*(x11622)*(x11628)))+(((IkReal(-1.00000000000000))*(x11622)*(x11624)*(x11632)))+(((IkReal(-1.00000000000000))*(r01)*(x11635)))+(((sj2)*(x11619)))+(((cj4)*(x11623)*(x11625)))+(((IkReal(-1.00000000000000))*(r10)*(x11627)*(x11633)))+(((r11)*(x11634)))+(((r00)*(sj0)*(x11627)))+(((IkReal(-1.00000000000000))*(x11622)*(x11624)*(x11626)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11621)*(x11622)*(x11624)))+(((IkReal(-1.00000000000000))*(r00)*(x11627)*(x11633)))+(((IkReal(-1.00000000000000))*(x11622)*(x11625)*(x11632)))+(((r01)*(x11634)))+(((IkReal(-1.00000000000000))*(r12)*(x11620)*(x11622)))+(((IkReal(-1.00000000000000))*(x11622)*(x11625)*(x11626)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11627)))+(((r11)*(x11635)))+(((IkReal(-1.00000000000000))*(x11622)*(x11623)*(x11624)))+(((IkReal(-1.00000000000000))*(r02)*(x11622)*(x11628)))+(x11618)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11636=((cj6)*(sj5)); +IkReal x11637=((IkReal(1.00000000000000))*(cj5)); +IkReal x11638=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x11638)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r21)*(x11636))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(r01)*(x11636)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11637)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11637)))+(((r11)*(sj0)*(x11636)))+(((r10)*(sj0)*(x11638)))+(((cj0)*(r00)*(x11638))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x11638)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r21)*(x11636)))))))+IKsqr(((((cj0)*(r01)*(x11636)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11637)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11637)))+(((r11)*(sj0)*(x11636)))+(((r10)*(sj0)*(x11638)))+(((cj0)*(r00)*(x11638)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r20)*(x11638)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r21)*(x11636)))))), ((((cj0)*(r01)*(x11636)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x11637)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x11637)))+(((r11)*(sj0)*(x11636)))+(((r10)*(sj0)*(x11638)))+(((cj0)*(r00)*(x11638))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11639=IKsin(j3); +IkReal x11640=IKcos(j3); +IkReal x11641=((sj0)*(sj5)); +IkReal x11642=((r00)*(sj6)); +IkReal x11643=((IkReal(1.00000000000000))*(cj4)); +IkReal x11644=((cj6)*(r01)); +IkReal x11645=((cj0)*(cj5)); +IkReal x11646=((cj5)*(sj0)); +IkReal x11647=((cj6)*(r11)); +IkReal x11648=((cj6)*(sj4)); +IkReal x11649=((cj0)*(sj5)); +IkReal x11650=((cj4)*(cj5)); +IkReal x11651=((cj6)*(r21)); +IkReal x11652=((r20)*(sj6)); +IkReal x11653=((r10)*(sj6)); +IkReal x11654=((IkReal(1.00000000000000))*(cj0)); +IkReal x11655=((cj0)*(sj4)*(sj6)); +IkReal x11656=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x11651)))+(((sj5)*(x11652)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x11639)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj2)*(x11640)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((r20)*(x11648)))+(((cj4)*(r22)*(sj5)))+(((x11650)*(x11651)))+(((x11650)*(x11652)))); +evalcond[2]=((((r12)*(x11645)))+(((IkReal(-1.00000000000000))*(x11647)*(x11649)))+(((IkReal(-1.00000000000000))*(x11649)*(x11653)))+(((IkReal(-1.00000000000000))*(r02)*(x11646)))+(((x11641)*(x11642)))+(((x11641)*(x11644)))+(((IkReal(-1.00000000000000))*(sj2)*(x11639)))); +evalcond[3]=((((r12)*(x11646)))+(((IkReal(-1.00000000000000))*(x11642)*(x11649)))+(((IkReal(-1.00000000000000))*(x11641)*(x11653)))+(((IkReal(-1.00000000000000))*(x11644)*(x11649)))+(((IkReal(-1.00000000000000))*(x11641)*(x11647)))+(x11640)+(((r02)*(x11645)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11643)*(x11645)*(x11647)))+(((cj4)*(x11642)*(x11646)))+(((cj4)*(x11644)*(x11646)))+(((IkReal(-1.00000000000000))*(r12)*(x11643)*(x11649)))+(((cj4)*(r02)*(x11641)))+(((IkReal(-1.00000000000000))*(r01)*(x11656)))+(((sj2)*(x11640)))+(((IkReal(-1.00000000000000))*(r10)*(x11648)*(x11654)))+(((r11)*(x11655)))+(((IkReal(-1.00000000000000))*(x11643)*(x11645)*(x11653)))+(((r00)*(sj0)*(x11648)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11643)*(x11646)*(x11653)))+(((IkReal(-1.00000000000000))*(r00)*(x11648)*(x11654)))+(((IkReal(-1.00000000000000))*(r02)*(x11643)*(x11649)))+(x11639)+(((IkReal(-1.00000000000000))*(x11642)*(x11643)*(x11645)))+(((r11)*(x11656)))+(((IkReal(-1.00000000000000))*(x11643)*(x11646)*(x11647)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11648)))+(((IkReal(-1.00000000000000))*(x11643)*(x11644)*(x11645)))+(((IkReal(-1.00000000000000))*(r12)*(x11641)*(x11643)))+(((r01)*(x11655)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11657=((IkReal(1.00000000000000))*(r21)); +IkReal x11658=((cj4)*(cj5)); +IkReal x11659=((r20)*(sj6)); +if( IKabs(((gconst10)*(((((IkReal(-1.00000000000000))*(sj5)*(x11659)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11657)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst10)*(((((cj6)*(r20)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11657)))+(((cj4)*(r22)*(sj5)))+(((x11658)*(x11659)))+(((cj6)*(r21)*(x11658))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst10)*(((((IkReal(-1.00000000000000))*(sj5)*(x11659)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11657)))+(((cj5)*(r22)))))), ((gconst10)*(((((cj6)*(r20)*(sj4)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x11657)))+(((cj4)*(r22)*(sj5)))+(((x11658)*(x11659)))+(((cj6)*(r21)*(x11658))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11660=IKsin(j3); +IkReal x11661=IKcos(j3); +IkReal x11662=((sj0)*(sj5)); +IkReal x11663=((r00)*(sj6)); +IkReal x11664=((IkReal(1.00000000000000))*(cj4)); +IkReal x11665=((cj6)*(r01)); +IkReal x11666=((cj0)*(cj5)); +IkReal x11667=((cj5)*(sj0)); +IkReal x11668=((cj6)*(r11)); +IkReal x11669=((cj6)*(sj4)); +IkReal x11670=((cj0)*(sj5)); +IkReal x11671=((cj4)*(cj5)); +IkReal x11672=((cj6)*(r21)); +IkReal x11673=((r20)*(sj6)); +IkReal x11674=((r10)*(sj6)); +IkReal x11675=((IkReal(1.00000000000000))*(cj0)); +IkReal x11676=((cj0)*(sj4)*(sj6)); +IkReal x11677=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x11673)))+(((sj5)*(x11672)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x11660)))); +evalcond[1]=((((x11671)*(x11673)))+(((r20)*(x11669)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(cj2)*(x11661)))+(((x11671)*(x11672)))); +evalcond[2]=((((x11662)*(x11663)))+(((IkReal(-1.00000000000000))*(x11670)*(x11674)))+(((x11662)*(x11665)))+(((IkReal(-1.00000000000000))*(x11668)*(x11670)))+(((r12)*(x11666)))+(((IkReal(-1.00000000000000))*(r02)*(x11667)))+(((IkReal(-1.00000000000000))*(sj2)*(x11660)))); +evalcond[3]=((x11661)+(((IkReal(-1.00000000000000))*(x11663)*(x11670)))+(((r12)*(x11667)))+(((IkReal(-1.00000000000000))*(x11662)*(x11668)))+(((IkReal(-1.00000000000000))*(x11665)*(x11670)))+(((IkReal(-1.00000000000000))*(x11662)*(x11674)))+(((r02)*(x11666)))); +evalcond[4]=((((cj4)*(r02)*(x11662)))+(((r00)*(sj0)*(x11669)))+(((cj4)*(x11665)*(x11667)))+(((sj2)*(x11661)))+(((cj4)*(x11663)*(x11667)))+(((IkReal(-1.00000000000000))*(x11664)*(x11666)*(x11674)))+(((IkReal(-1.00000000000000))*(r01)*(x11677)))+(((IkReal(-1.00000000000000))*(r10)*(x11669)*(x11675)))+(((r11)*(x11676)))+(((IkReal(-1.00000000000000))*(x11664)*(x11666)*(x11668)))+(((IkReal(-1.00000000000000))*(r12)*(x11664)*(x11670)))); +evalcond[5]=((((r01)*(x11676)))+(((IkReal(-1.00000000000000))*(x11664)*(x11667)*(x11668)))+(x11660)+(((IkReal(-1.00000000000000))*(x11663)*(x11664)*(x11666)))+(((IkReal(-1.00000000000000))*(r12)*(x11662)*(x11664)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x11669)))+(((r11)*(x11677)))+(((IkReal(-1.00000000000000))*(x11664)*(x11665)*(x11666)))+(((IkReal(-1.00000000000000))*(r00)*(x11669)*(x11675)))+(((IkReal(-1.00000000000000))*(x11664)*(x11667)*(x11674)))+(((IkReal(-1.00000000000000))*(r02)*(x11664)*(x11670)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x11678=((IkReal(1.00000000000000))*(cj0)); +IkReal x11679=((cj4)*(sj6)); +IkReal x11680=((sj0)*(sj4)); +IkReal x11681=((cj5)*(sj6)); +IkReal x11682=((sj4)*(sj5)); +IkReal x11683=((r12)*(sj5)); +IkReal x11684=((IkReal(0.374290000000000))*(cj5)); +IkReal x11685=((r02)*(sj0)); +IkReal x11686=((IkReal(1.00000000000000))*(sj0)); +IkReal x11687=((cj0)*(r10)); +IkReal x11688=((cj4)*(cj6)); +IkReal x11689=((r00)*(sj0)); +IkReal x11690=((cj6)*(r21)); +IkReal x11691=((IkReal(0.374290000000000))*(sj5)); +IkReal x11692=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11693=((cj0)*(r02)); +IkReal x11694=((cj5)*(sj4)); +IkReal x11695=((cj6)*(r01)); +IkReal x11696=((cj0)*(r00)); +IkReal x11697=((cj6)*(r11)); +IkReal x11698=((r01)*(sj0)); +IkReal x11699=((r10)*(sj0)); +IkReal x11700=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11701=((sj6)*(x11691)); +IkReal x11702=((cj0)*(cj6)*(x11691)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x11688)))+(((x11690)*(x11694)))+(((r20)*(sj4)*(x11681)))+(((IkReal(-1.00000000000000))*(cj1)))+(((r21)*(x11679)))+(((r22)*(x11682)))); +evalcond[2]=((((IkReal(-0.0100000000000000))*(r20)*(x11681)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x11692)))+(((IkReal(-1.00000000000000))*(r22)*(x11684)))+(((r20)*(x11701)))+(((IkReal(-0.0100000000000000))*(cj5)*(x11690)))+(((x11690)*(x11691)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11678)*(x11694)*(x11697)))+(((IkReal(-1.00000000000000))*(r11)*(x11678)*(x11679)))+(((IkReal(-1.00000000000000))*(r00)*(x11686)*(x11688)))+(((r00)*(x11680)*(x11681)))+(((r02)*(sj5)*(x11680)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11678)*(x11681)))+(((x11687)*(x11688)))+(((IkReal(-1.00000000000000))*(r12)*(x11678)*(x11682)))+(((x11679)*(x11698)))+(((cj5)*(x11680)*(x11695)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11678)*(x11694)*(x11695)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11678)*(x11681)))+(sj1)+(((x11688)*(x11696)))+(((IkReal(-1.00000000000000))*(r02)*(x11678)*(x11682)))+(((IkReal(-1.00000000000000))*(r10)*(x11680)*(x11681)))+(((IkReal(-1.00000000000000))*(r11)*(x11679)*(x11686)))+(((IkReal(-1.00000000000000))*(r01)*(x11678)*(x11679)))+(((IkReal(-1.00000000000000))*(cj5)*(x11680)*(x11697)))+(((x11688)*(x11699)))+(((IkReal(-1.00000000000000))*(x11680)*(x11683)))); +evalcond[5]=((IkReal(0.0690000000000000))+(((x11689)*(x11701)))+(((IkReal(-1.00000000000000))*(x11685)*(x11692)))+(((IkReal(-0.0100000000000000))*(x11681)*(x11689)))+(((sj0)*(x11691)*(x11695)))+(((IkReal(-1.00000000000000))*(cj0)*(x11691)*(x11697)))+(((IkReal(-1.00000000000000))*(x11684)*(x11685)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11695)))+(((IkReal(0.0100000000000000))*(x11681)*(x11687)))+(((IkReal(-1.00000000000000))*(x11687)*(x11701)))+(((IkReal(-1.00000000000000))*(py)*(x11678)))+(((IkReal(0.0100000000000000))*(cj0)*(x11683)))+(((cj0)*(r12)*(x11684)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11697)))+(((px)*(sj0)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(x11681)*(x11699)))+(((IkReal(-1.00000000000000))*(x11699)*(x11701)))+(((x11692)*(x11693)))+(((IkReal(-1.00000000000000))*(px)*(x11678)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11697)))+(((IkReal(-1.00000000000000))*(cj0)*(x11691)*(x11695)))+(((IkReal(-1.00000000000000))*(sj0)*(x11691)*(x11697)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11695)))+(((IkReal(0.0100000000000000))*(sj0)*(x11683)))+(((IkReal(-1.00000000000000))*(x11696)*(x11701)))+(((IkReal(-1.00000000000000))*(py)*(x11686)))+(((IkReal(0.0100000000000000))*(x11681)*(x11696)))+(((x11684)*(x11693)))+(((IkReal(0.364420000000000))*(cj1)))+(((r12)*(sj0)*(x11684)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst11; +gconst11=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x11703=((IkReal(1.00000000000000))*(cj0)); +IkReal x11704=((cj4)*(sj6)); +IkReal x11705=((sj0)*(sj6)); +IkReal x11706=((cj5)*(sj4)); +IkReal x11707=((IkReal(0.374290000000000))*(sj5)); +IkReal x11708=((sj4)*(sj5)); +IkReal x11709=((cj0)*(cj6)); +IkReal x11710=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11711=((cj4)*(sj5)); +IkReal x11712=((cj5)*(sj0)); +IkReal x11713=((IkReal(0.374290000000000))*(r02)); +IkReal x11714=((r20)*(sj6)); +IkReal x11715=((cj6)*(r21)); +IkReal x11716=((IkReal(1.00000000000000))*(sj0)); +IkReal x11717=((cj0)*(sj6)); +IkReal x11718=((cj4)*(cj6)); +IkReal x11719=((IkReal(0.374290000000000))*(r12)); +IkReal x11720=((cj0)*(cj5)); +IkReal x11721=((cj6)*(sj5)); +IkReal x11722=((cj6)*(r01)); +IkReal x11723=((r00)*(sj6)); +IkReal x11724=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11725=((cj6)*(r11)); +IkReal x11726=((IkReal(1.00000000000000))*(r10)); +IkReal x11727=((r02)*(sj0)); +IkReal x11728=((cj6)*(sj4)); +IkReal x11729=((r12)*(x11716)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x11706)*(x11714)))+(((r21)*(x11704)))+(((r22)*(x11708)))+(((x11706)*(x11715)))+(((IkReal(-1.00000000000000))*(r20)*(x11718)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x11707)*(x11715)))+(((IkReal(-1.00000000000000))*(x11710)*(x11714)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x11707)*(x11714)))+(((IkReal(-1.00000000000000))*(r22)*(x11724)))+(((IkReal(-1.00000000000000))*(x11710)*(x11715)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x11716)*(x11721)))+(((IkReal(-1.00000000000000))*(r01)*(x11703)*(x11721)))+(((r12)*(x11712)))+(((IkReal(-1.00000000000000))*(sj5)*(x11703)*(x11723)))+(((IkReal(-1.00000000000000))*(sj5)*(x11705)*(x11726)))+(((r02)*(x11720)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11703)*(x11706)*(x11725)))+(((IkReal(-1.00000000000000))*(r00)*(x11716)*(x11718)))+(((r01)*(sj0)*(x11704)))+(((cj4)*(r10)*(x11709)))+(((sj0)*(x11706)*(x11722)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11703)*(x11706)))+(((r00)*(x11705)*(x11706)))+(((IkReal(-1.00000000000000))*(r11)*(x11703)*(x11704)))+(((x11708)*(x11727)))+(((IkReal(-1.00000000000000))*(r12)*(x11703)*(x11708)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x11708)*(x11729)))+(((cj4)*(r00)*(x11709)))+(((IkReal(-1.00000000000000))*(x11706)*(x11716)*(x11725)))+(((IkReal(-1.00000000000000))*(x11705)*(x11706)*(x11726)))+(((IkReal(-1.00000000000000))*(r02)*(x11703)*(x11708)))+(((IkReal(-1.00000000000000))*(x11703)*(x11706)*(x11723)))+(((IkReal(-1.00000000000000))*(r11)*(x11704)*(x11716)))+(((IkReal(-1.00000000000000))*(x11703)*(x11706)*(x11722)))+(((r10)*(sj0)*(x11718)))+(((IkReal(-1.00000000000000))*(r01)*(x11703)*(x11704)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x11710)*(x11722)))+(((IkReal(-1.00000000000000))*(r00)*(x11705)*(x11710)))+(((x11719)*(x11720)))+(((IkReal(-1.00000000000000))*(r10)*(x11707)*(x11717)))+(((r11)*(x11709)*(x11710)))+(((sj0)*(x11707)*(x11722)))+(((r10)*(x11710)*(x11717)))+(((IkReal(-1.00000000000000))*(x11712)*(x11713)))+(((IkReal(-1.00000000000000))*(r11)*(x11707)*(x11709)))+(((IkReal(-1.00000000000000))*(py)*(x11703)))+(((cj0)*(r12)*(x11724)))+(((IkReal(-1.00000000000000))*(x11724)*(x11727)))+(((px)*(sj0)))+(((r00)*(x11705)*(x11707)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x11703)*(x11704)))+(((IkReal(-1.00000000000000))*(x11704)*(x11712)*(x11726)))+(((r11)*(sj4)*(x11705)))+(((IkReal(-1.00000000000000))*(r10)*(x11716)*(x11728)))+(((IkReal(-1.00000000000000))*(r00)*(x11703)*(x11728)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x11703)*(x11718)))+(((r01)*(sj4)*(x11717)))+(((IkReal(-1.00000000000000))*(r11)*(x11712)*(x11718)))+(((IkReal(-1.00000000000000))*(r02)*(x11703)*(x11711)))+(((IkReal(-1.00000000000000))*(x11711)*(x11729)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x11707)*(x11725)))+(((IkReal(-1.00000000000000))*(r00)*(x11707)*(x11717)))+(((sj0)*(x11710)*(x11725)))+(((x11712)*(x11719)))+(((IkReal(-1.00000000000000))*(px)*(x11703)))+(((r10)*(x11705)*(x11710)))+(((IkReal(-1.00000000000000))*(r01)*(x11707)*(x11709)))+(((x11713)*(x11720)))+(((IkReal(-1.00000000000000))*(py)*(x11716)))+(((r00)*(x11710)*(x11717)))+(((IkReal(-1.00000000000000))*(r10)*(x11705)*(x11707)))+(((cj0)*(r02)*(x11724)))+(((r01)*(x11709)*(x11710)))+(((r12)*(sj0)*(x11724)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11730=((r20)*(sj6)); +IkReal x11731=((cj4)*(cj5)); +IkReal x11732=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11730)*(x11731)))+(((x11731)*(x11732)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x11732)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11730))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11730)*(x11731)))+(((x11731)*(x11732)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))+IKsqr(((((sj5)*(x11732)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11730)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11730)*(x11731)))+(((x11731)*(x11732)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))), ((((sj5)*(x11732)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11730))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11733=IKcos(j3); +IkReal x11734=((sj0)*(sj5)); +IkReal x11735=((r00)*(sj6)); +IkReal x11736=((cj6)*(r01)); +IkReal x11737=((cj5)*(sj0)); +IkReal x11738=((cj0)*(cj5)); +IkReal x11739=((cj6)*(sj4)); +IkReal x11740=((sj4)*(sj6)); +IkReal x11741=((cj0)*(r11)); +IkReal x11742=((cj4)*(cj6)); +IkReal x11743=((cj4)*(sj6)); +IkReal x11744=((IkReal(1.00000000000000))*(cj0)); +IkReal x11745=((cj4)*(sj5)); +IkReal x11746=((sj5)*(sj6)); +IkReal x11747=((cj6)*(sj5)); +IkReal x11748=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((r20)*(x11746)))+(((IkReal(-1.00000000000000))*(x11733)))+(((r21)*(x11747)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((cj5)*(r21)*(x11742)))+(((IkReal(-1.00000000000000))*(r21)*(x11740)))+(((cj5)*(r20)*(x11743)))+(((r22)*(x11745)))+(((IkReal(-1.00000000000000))*(x11748)))+(((r20)*(x11739)))); +evalcond[2]=((((x11734)*(x11735)))+(((x11734)*(x11736)))+(((IkReal(-1.00000000000000))*(r10)*(x11744)*(x11746)))+(((r12)*(x11738)))+(((IkReal(-1.00000000000000))*(r02)*(x11737)))+(((IkReal(-1.00000000000000))*(x11748)))+(((IkReal(-1.00000000000000))*(x11741)*(x11747)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x11738)*(x11742)))+(((cj4)*(x11736)*(x11737)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x11740)))+(((r00)*(sj0)*(x11739)))+(((IkReal(-1.00000000000000))*(r10)*(x11738)*(x11743)))+(((x11740)*(x11741)))+(((cj4)*(r02)*(x11734)))+(x11733)+(((IkReal(-1.00000000000000))*(r10)*(x11739)*(x11744)))+(((IkReal(-1.00000000000000))*(r12)*(x11744)*(x11745)))+(((cj4)*(x11735)*(x11737)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11749=((IkReal(1.00000000000000))*(cj0)); +IkReal x11750=((cj4)*(sj6)); +IkReal x11751=((sj0)*(sj6)); +IkReal x11752=((cj5)*(sj4)); +IkReal x11753=((IkReal(0.374290000000000))*(sj5)); +IkReal x11754=((sj4)*(sj5)); +IkReal x11755=((cj0)*(cj6)); +IkReal x11756=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11757=((cj4)*(sj5)); +IkReal x11758=((cj5)*(sj0)); +IkReal x11759=((IkReal(0.374290000000000))*(r02)); +IkReal x11760=((r20)*(sj6)); +IkReal x11761=((cj6)*(r21)); +IkReal x11762=((IkReal(1.00000000000000))*(sj0)); +IkReal x11763=((cj0)*(sj6)); +IkReal x11764=((cj4)*(cj6)); +IkReal x11765=((IkReal(0.374290000000000))*(r12)); +IkReal x11766=((cj0)*(cj5)); +IkReal x11767=((cj6)*(sj5)); +IkReal x11768=((cj6)*(r01)); +IkReal x11769=((r00)*(sj6)); +IkReal x11770=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11771=((cj6)*(r11)); +IkReal x11772=((IkReal(1.00000000000000))*(r10)); +IkReal x11773=((r02)*(sj0)); +IkReal x11774=((cj6)*(sj4)); +IkReal x11775=((r12)*(x11762)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x11754)))+(((x11752)*(x11760)))+(((r21)*(x11750)))+(((x11752)*(x11761)))+(((IkReal(-1.00000000000000))*(r20)*(x11764)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((x11753)*(x11761)))+(((IkReal(-1.00000000000000))*(x11756)*(x11761)))+(((x11753)*(x11760)))+(((IkReal(-1.00000000000000))*(x11756)*(x11760)))+(((IkReal(-1.00000000000000))*(r22)*(x11770)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(x11749)*(x11767)))+(((IkReal(-1.00000000000000))*(sj5)*(x11749)*(x11769)))+(((IkReal(-1.00000000000000))*(r11)*(x11762)*(x11767)))+(((r12)*(x11758)))+(((r02)*(x11766)))+(((IkReal(-1.00000000000000))*(sj5)*(x11751)*(x11772)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r12)*(x11749)*(x11754)))+(((r00)*(x11751)*(x11752)))+(((IkReal(-1.00000000000000))*(r00)*(x11762)*(x11764)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11749)*(x11752)))+(((x11754)*(x11773)))+(((cj4)*(r10)*(x11755)))+(((IkReal(-1.00000000000000))*(r11)*(x11749)*(x11750)))+(((IkReal(-1.00000000000000))*(x11749)*(x11752)*(x11771)))+(((r01)*(sj0)*(x11750)))+(((sj0)*(x11752)*(x11768)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r02)*(x11749)*(x11754)))+(((IkReal(-1.00000000000000))*(x11754)*(x11775)))+(((cj4)*(r00)*(x11755)))+(((IkReal(-1.00000000000000))*(r01)*(x11749)*(x11750)))+(((IkReal(-1.00000000000000))*(x11749)*(x11752)*(x11769)))+(((r10)*(sj0)*(x11764)))+(((IkReal(-1.00000000000000))*(x11749)*(x11752)*(x11768)))+(((IkReal(-1.00000000000000))*(x11751)*(x11752)*(x11772)))+(((IkReal(-1.00000000000000))*(r11)*(x11750)*(x11762)))+(((IkReal(-1.00000000000000))*(x11752)*(x11762)*(x11771)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((sj0)*(x11753)*(x11768)))+(((r11)*(x11755)*(x11756)))+(((r10)*(x11756)*(x11763)))+(((IkReal(-1.00000000000000))*(r00)*(x11751)*(x11756)))+(((cj0)*(r12)*(x11770)))+(((IkReal(-1.00000000000000))*(sj0)*(x11756)*(x11768)))+(((x11765)*(x11766)))+(((IkReal(-1.00000000000000))*(x11770)*(x11773)))+(((IkReal(-1.00000000000000))*(r11)*(x11753)*(x11755)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(r10)*(x11753)*(x11763)))+(((IkReal(-1.00000000000000))*(x11758)*(x11759)))+(((r00)*(x11751)*(x11753)))+(((IkReal(-1.00000000000000))*(py)*(x11749)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x11757)*(x11775)))+(((r11)*(sj4)*(x11751)))+(((IkReal(-1.00000000000000))*(r02)*(x11749)*(x11757)))+(((IkReal(-1.00000000000000))*(r11)*(x11758)*(x11764)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x11749)*(x11764)))+(((IkReal(-1.00000000000000))*(r10)*(x11762)*(x11774)))+(((r01)*(sj4)*(x11763)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x11749)*(x11750)))+(((IkReal(-1.00000000000000))*(r00)*(x11749)*(x11774)))+(((IkReal(-1.00000000000000))*(x11750)*(x11758)*(x11772)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj0)*(r02)*(x11770)))+(((IkReal(-1.00000000000000))*(r01)*(x11753)*(x11755)))+(((IkReal(-1.00000000000000))*(r10)*(x11751)*(x11753)))+(((r10)*(x11751)*(x11756)))+(((IkReal(-1.00000000000000))*(sj0)*(x11753)*(x11771)))+(((IkReal(-1.00000000000000))*(r00)*(x11753)*(x11763)))+(((IkReal(-1.00000000000000))*(px)*(x11749)))+(((r01)*(x11755)*(x11756)))+(((sj0)*(x11756)*(x11771)))+(((r00)*(x11756)*(x11763)))+(((x11758)*(x11765)))+(((x11759)*(x11766)))+(((r12)*(sj0)*(x11770)))+(((IkReal(-1.00000000000000))*(py)*(x11762)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11776=((IkReal(1.00000000000000))*(sj5)); +IkReal x11777=((cj6)*(r21)); +IkReal x11778=((r20)*(sj6)); +IkReal x11779=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x11777)*(x11779)))+(((IkReal(-1.00000000000000))*(x11778)*(x11779)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11776)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x11776)*(x11778)))+(((IkReal(-1.00000000000000))*(x11776)*(x11777)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x11777)*(x11779)))+(((IkReal(-1.00000000000000))*(x11778)*(x11779)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11776)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x11776)*(x11778)))+(((IkReal(-1.00000000000000))*(x11776)*(x11777)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x11777)*(x11779)))+(((IkReal(-1.00000000000000))*(x11778)*(x11779)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11776)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x11776)*(x11778)))+(((IkReal(-1.00000000000000))*(x11776)*(x11777)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11780=IKsin(j3); +IkReal x11781=IKcos(j3); +IkReal x11782=((sj0)*(sj5)); +IkReal x11783=((r00)*(sj6)); +IkReal x11784=((cj6)*(r01)); +IkReal x11785=((cj5)*(sj0)); +IkReal x11786=((cj0)*(cj5)); +IkReal x11787=((cj6)*(sj4)); +IkReal x11788=((sj4)*(sj6)); +IkReal x11789=((cj0)*(r11)); +IkReal x11790=((cj4)*(cj6)); +IkReal x11791=((cj4)*(sj6)); +IkReal x11792=((IkReal(1.00000000000000))*(cj0)); +IkReal x11793=((cj4)*(sj5)); +IkReal x11794=((sj5)*(sj6)); +IkReal x11795=((cj6)*(sj5)); +evalcond[0]=((x11781)+(((r20)*(x11794)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r21)*(x11795)))); +evalcond[1]=((x11780)+(((IkReal(-1.00000000000000))*(r21)*(x11788)))+(((cj5)*(r21)*(x11790)))+(((cj5)*(r20)*(x11791)))+(((r20)*(x11787)))+(((r22)*(x11793)))); +evalcond[2]=((((x11782)*(x11784)))+(((IkReal(-1.00000000000000))*(r02)*(x11785)))+(((IkReal(-1.00000000000000))*(x11780)))+(((x11782)*(x11783)))+(((r12)*(x11786)))+(((IkReal(-1.00000000000000))*(r10)*(x11792)*(x11794)))+(((IkReal(-1.00000000000000))*(x11789)*(x11795)))); +evalcond[3]=((x11781)+(((IkReal(-1.00000000000000))*(r10)*(x11786)*(x11791)))+(((r00)*(sj0)*(x11787)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x11788)))+(((IkReal(-1.00000000000000))*(r12)*(x11792)*(x11793)))+(((x11788)*(x11789)))+(((cj4)*(x11784)*(x11785)))+(((cj4)*(x11783)*(x11785)))+(((IkReal(-1.00000000000000))*(r10)*(x11787)*(x11792)))+(((IkReal(-1.00000000000000))*(r11)*(x11786)*(x11790)))+(((cj4)*(r02)*(x11782)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11796=((cj0)*(cj5)); +IkReal x11797=((IkReal(1.00000000000000))*(cj0)); +IkReal x11798=((cj6)*(r11)); +IkReal x11799=((r10)*(sj6)); +IkReal x11800=((cj5)*(sj0)); +IkReal x11801=((r00)*(sj5)*(sj6)); +IkReal x11802=((cj6)*(r01)*(sj5)); +IkReal x11803=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11799)))+(((r12)*(x11796)))+(((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11798)))+(((sj0)*(x11802)))+(((IkReal(-1.00000000000000))*(r02)*(x11800)))+(((sj0)*(x11801))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x11796)))+(((IkReal(-1.00000000000000))*(x11797)*(x11802)))+(((IkReal(-1.00000000000000))*(x11799)*(x11803)))+(((IkReal(-1.00000000000000))*(x11797)*(x11801)))+(((r12)*(x11800)))+(((IkReal(-1.00000000000000))*(x11798)*(x11803))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11799)))+(((r12)*(x11796)))+(((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11798)))+(((sj0)*(x11802)))+(((IkReal(-1.00000000000000))*(r02)*(x11800)))+(((sj0)*(x11801)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x11796)))+(((IkReal(-1.00000000000000))*(x11797)*(x11802)))+(((IkReal(-1.00000000000000))*(x11799)*(x11803)))+(((IkReal(-1.00000000000000))*(x11797)*(x11801)))+(((r12)*(x11800)))+(((IkReal(-1.00000000000000))*(x11798)*(x11803)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11799)))+(((r12)*(x11796)))+(((IkReal(-1.00000000000000))*(sj5)*(x11797)*(x11798)))+(((sj0)*(x11802)))+(((IkReal(-1.00000000000000))*(r02)*(x11800)))+(((sj0)*(x11801)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x11796)))+(((IkReal(-1.00000000000000))*(x11797)*(x11802)))+(((IkReal(-1.00000000000000))*(x11799)*(x11803)))+(((IkReal(-1.00000000000000))*(x11797)*(x11801)))+(((r12)*(x11800)))+(((IkReal(-1.00000000000000))*(x11798)*(x11803))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11804=IKsin(j3); +IkReal x11805=IKcos(j3); +IkReal x11806=((sj0)*(sj5)); +IkReal x11807=((r00)*(sj6)); +IkReal x11808=((cj6)*(r01)); +IkReal x11809=((cj4)*(cj5)); +IkReal x11810=((IkReal(1.00000000000000))*(cj0)); +IkReal x11811=((cj5)*(r12)); +IkReal x11812=((IkReal(1.00000000000000))*(sj0)); +IkReal x11813=((cj6)*(r11)); +IkReal x11814=((cj5)*(r02)); +IkReal x11815=((IkReal(1.00000000000000))*(cj1)); +IkReal x11816=((cj6)*(sj4)); +IkReal x11817=((cj6)*(r21)); +IkReal x11818=((r20)*(sj6)); +IkReal x11819=((r10)*(sj6)); +IkReal x11820=((sj4)*(sj6)); +IkReal x11821=((cj4)*(r02)); +IkReal x11822=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x11823=((IkReal(1.00000000000000))*(x11804)); +IkReal x11824=((cj0)*(x11820)); +evalcond[0]=((((sj5)*(x11817)))+(((sj5)*(x11818)))+(((IkReal(-1.00000000000000))*(sj1)*(x11805)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x11820)))+(((IkReal(-1.00000000000000))*(sj1)*(x11823)))+(((cj4)*(r22)*(sj5)))+(((x11809)*(x11818)))+(((x11809)*(x11817)))+(((r20)*(x11816)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x11810)*(x11813)))+(((IkReal(-1.00000000000000))*(sj5)*(x11810)*(x11819)))+(((cj0)*(x11811)))+(((x11806)*(x11808)))+(((IkReal(-1.00000000000000))*(x11823)))+(((IkReal(-1.00000000000000))*(x11812)*(x11814)))+(((x11806)*(x11807)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x11808)*(x11810)))+(((sj0)*(x11811)))+(((IkReal(-1.00000000000000))*(sj5)*(x11807)*(x11810)))+(((cj0)*(x11814)))+(((IkReal(-1.00000000000000))*(x11806)*(x11819)))+(((IkReal(-1.00000000000000))*(x11806)*(x11813)))+(((IkReal(-1.00000000000000))*(x11805)*(x11815)))); +evalcond[4]=((((r11)*(x11824)))+(((x11806)*(x11821)))+(((IkReal(-1.00000000000000))*(r01)*(x11812)*(x11820)))+(((sj0)*(x11807)*(x11809)))+(((r00)*(sj0)*(x11816)))+(((sj0)*(x11808)*(x11809)))+(((IkReal(-1.00000000000000))*(r10)*(x11810)*(x11816)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x11810)))+(((IkReal(-1.00000000000000))*(x11809)*(x11810)*(x11819)))+(x11805)+(((IkReal(-1.00000000000000))*(x11809)*(x11810)*(x11813)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj5)*(x11810)*(x11821)))+(((IkReal(-1.00000000000000))*(x11808)*(x11809)*(x11810)))+(((r11)*(sj0)*(x11820)))+(((IkReal(-1.00000000000000))*(x11806)*(x11822)))+(((IkReal(-1.00000000000000))*(r00)*(x11810)*(x11816)))+(((IkReal(-1.00000000000000))*(r10)*(x11812)*(x11816)))+(((IkReal(-1.00000000000000))*(x11804)*(x11815)))+(((IkReal(-1.00000000000000))*(x11807)*(x11809)*(x11810)))+(((IkReal(-1.00000000000000))*(x11809)*(x11812)*(x11819)))+(((IkReal(-1.00000000000000))*(x11809)*(x11812)*(x11813)))+(((r01)*(x11824)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11825=((sj5)*(sj6)); +IkReal x11826=((cj6)*(sj5)); +IkReal x11827=((IkReal(1.00000000000000))*(cj0)); +IkReal x11828=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((r01)*(sj0)*(x11826)))+(((r00)*(sj0)*(x11825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11828)))+(((IkReal(-1.00000000000000))*(r11)*(x11826)*(x11827)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x11825)*(x11827))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x11826)))+(((IkReal(-1.00000000000000))*(r22)*(x11828)))+(((r20)*(x11825))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((r01)*(sj0)*(x11826)))+(((r00)*(sj0)*(x11825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11828)))+(((IkReal(-1.00000000000000))*(r11)*(x11826)*(x11827)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x11825)*(x11827)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x11826)))+(((IkReal(-1.00000000000000))*(r22)*(x11828)))+(((r20)*(x11825)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((r01)*(sj0)*(x11826)))+(((r00)*(sj0)*(x11825)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11828)))+(((IkReal(-1.00000000000000))*(r11)*(x11826)*(x11827)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x11825)*(x11827)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((r21)*(x11826)))+(((IkReal(-1.00000000000000))*(r22)*(x11828)))+(((r20)*(x11825))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11829=IKsin(j3); +IkReal x11830=IKcos(j3); +IkReal x11831=((sj0)*(sj5)); +IkReal x11832=((r00)*(sj6)); +IkReal x11833=((cj6)*(r01)); +IkReal x11834=((cj4)*(cj5)); +IkReal x11835=((IkReal(1.00000000000000))*(cj0)); +IkReal x11836=((cj5)*(r12)); +IkReal x11837=((IkReal(1.00000000000000))*(sj0)); +IkReal x11838=((cj6)*(r11)); +IkReal x11839=((cj5)*(r02)); +IkReal x11840=((IkReal(1.00000000000000))*(cj1)); +IkReal x11841=((cj6)*(sj4)); +IkReal x11842=((cj6)*(r21)); +IkReal x11843=((r20)*(sj6)); +IkReal x11844=((r10)*(sj6)); +IkReal x11845=((sj4)*(sj6)); +IkReal x11846=((cj4)*(r02)); +IkReal x11847=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x11848=((IkReal(1.00000000000000))*(x11829)); +IkReal x11849=((cj0)*(x11845)); +evalcond[0]=((((sj5)*(x11842)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x11830)))+(((sj5)*(x11843)))); +evalcond[1]=((((r20)*(x11841)))+(((IkReal(-1.00000000000000))*(sj1)*(x11848)))+(((x11834)*(x11843)))+(((cj4)*(r22)*(sj5)))+(((x11834)*(x11842)))+(((IkReal(-1.00000000000000))*(r21)*(x11845)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x11835)*(x11844)))+(((IkReal(-1.00000000000000))*(sj5)*(x11835)*(x11838)))+(((x11831)*(x11833)))+(((IkReal(-1.00000000000000))*(x11837)*(x11839)))+(((x11831)*(x11832)))+(((IkReal(-1.00000000000000))*(x11848)))+(((cj0)*(x11836)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x11830)*(x11840)))+(((IkReal(-1.00000000000000))*(sj5)*(x11833)*(x11835)))+(((cj0)*(x11839)))+(((IkReal(-1.00000000000000))*(x11831)*(x11838)))+(((IkReal(-1.00000000000000))*(sj5)*(x11832)*(x11835)))+(((sj0)*(x11836)))+(((IkReal(-1.00000000000000))*(x11831)*(x11844)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x11835)))+(((IkReal(-1.00000000000000))*(r10)*(x11835)*(x11841)))+(((sj0)*(x11833)*(x11834)))+(((x11831)*(x11846)))+(((IkReal(-1.00000000000000))*(r01)*(x11837)*(x11845)))+(((r11)*(x11849)))+(((IkReal(-1.00000000000000))*(x11834)*(x11835)*(x11838)))+(((IkReal(-1.00000000000000))*(x11834)*(x11835)*(x11844)))+(x11830)+(((sj0)*(x11832)*(x11834)))+(((r00)*(sj0)*(x11841)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x11834)*(x11837)*(x11844)))+(((IkReal(-1.00000000000000))*(x11832)*(x11834)*(x11835)))+(((IkReal(-1.00000000000000))*(x11834)*(x11837)*(x11838)))+(((r01)*(x11849)))+(((IkReal(-1.00000000000000))*(x11831)*(x11847)))+(((IkReal(-1.00000000000000))*(r10)*(x11837)*(x11841)))+(((IkReal(-1.00000000000000))*(x11833)*(x11834)*(x11835)))+(((IkReal(-1.00000000000000))*(r00)*(x11835)*(x11841)))+(((r11)*(sj0)*(x11845)))+(((IkReal(-1.00000000000000))*(sj5)*(x11835)*(x11846)))+(((IkReal(-1.00000000000000))*(x11829)*(x11840)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11850=((r20)*(sj6)); +IkReal x11851=((cj4)*(cj5)); +IkReal x11852=((cj6)*(r21)); +if( IKabs(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11851)*(x11852)))+(((x11850)*(x11851)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst11)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11850)))+(((sj5)*(x11852))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11851)*(x11852)))+(((x11850)*(x11851)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))), ((gconst11)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11850)))+(((sj5)*(x11852))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11853=IKsin(j3); +IkReal x11854=IKcos(j3); +IkReal x11855=((sj0)*(sj5)); +IkReal x11856=((r00)*(sj6)); +IkReal x11857=((cj6)*(r01)); +IkReal x11858=((cj4)*(cj5)); +IkReal x11859=((IkReal(1.00000000000000))*(cj0)); +IkReal x11860=((cj5)*(r12)); +IkReal x11861=((IkReal(1.00000000000000))*(sj0)); +IkReal x11862=((cj6)*(r11)); +IkReal x11863=((cj5)*(r02)); +IkReal x11864=((IkReal(1.00000000000000))*(cj1)); +IkReal x11865=((cj6)*(sj4)); +IkReal x11866=((cj6)*(r21)); +IkReal x11867=((r20)*(sj6)); +IkReal x11868=((r10)*(sj6)); +IkReal x11869=((sj4)*(sj6)); +IkReal x11870=((cj4)*(r02)); +IkReal x11871=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x11872=((IkReal(1.00000000000000))*(x11853)); +IkReal x11873=((cj0)*(x11869)); +evalcond[0]=((((sj5)*(x11866)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x11867)))+(((IkReal(-1.00000000000000))*(sj1)*(x11854)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x11869)))+(((cj4)*(r22)*(sj5)))+(((x11858)*(x11866)))+(((x11858)*(x11867)))+(((r20)*(x11865)))+(((IkReal(-1.00000000000000))*(sj1)*(x11872)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj5)*(x11859)*(x11862)))+(((IkReal(-1.00000000000000))*(sj5)*(x11859)*(x11868)))+(((cj0)*(x11860)))+(((IkReal(-1.00000000000000))*(x11872)))+(((x11855)*(x11857)))+(((IkReal(-1.00000000000000))*(x11861)*(x11863)))+(((x11855)*(x11856)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x11857)*(x11859)))+(((IkReal(-1.00000000000000))*(x11854)*(x11864)))+(((IkReal(-1.00000000000000))*(x11855)*(x11862)))+(((IkReal(-1.00000000000000))*(sj5)*(x11856)*(x11859)))+(((IkReal(-1.00000000000000))*(x11855)*(x11868)))+(((sj0)*(x11860)))+(((cj0)*(x11863)))); +evalcond[4]=((((r00)*(sj0)*(x11865)))+(((IkReal(-1.00000000000000))*(x11858)*(x11859)*(x11868)))+(((sj0)*(x11857)*(x11858)))+(((IkReal(-1.00000000000000))*(x11858)*(x11859)*(x11862)))+(((r11)*(x11873)))+(((x11855)*(x11870)))+(((IkReal(-1.00000000000000))*(r01)*(x11861)*(x11869)))+(((IkReal(-1.00000000000000))*(r10)*(x11859)*(x11865)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x11859)))+(x11854)+(((sj0)*(x11856)*(x11858)))); +evalcond[5]=((((r01)*(x11873)))+(((IkReal(-1.00000000000000))*(x11858)*(x11861)*(x11862)))+(((IkReal(-1.00000000000000))*(x11855)*(x11871)))+(((IkReal(-1.00000000000000))*(x11856)*(x11858)*(x11859)))+(((IkReal(-1.00000000000000))*(x11857)*(x11858)*(x11859)))+(((r11)*(sj0)*(x11869)))+(((IkReal(-1.00000000000000))*(x11858)*(x11861)*(x11868)))+(((IkReal(-1.00000000000000))*(r00)*(x11859)*(x11865)))+(((IkReal(-1.00000000000000))*(r10)*(x11861)*(x11865)))+(((IkReal(-1.00000000000000))*(sj5)*(x11859)*(x11870)))+(((IkReal(-1.00000000000000))*(x11853)*(x11864)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x11874=((IkReal(1.00000000000000))*(cj0)); +IkReal x11875=((cj4)*(sj6)); +IkReal x11876=((sj0)*(sj4)); +IkReal x11877=((cj5)*(sj6)); +IkReal x11878=((sj4)*(sj5)); +IkReal x11879=((r12)*(sj5)); +IkReal x11880=((IkReal(0.374290000000000))*(cj5)); +IkReal x11881=((r02)*(sj0)); +IkReal x11882=((IkReal(1.00000000000000))*(sj0)); +IkReal x11883=((cj0)*(r10)); +IkReal x11884=((cj4)*(cj6)); +IkReal x11885=((r00)*(sj0)); +IkReal x11886=((cj6)*(r21)); +IkReal x11887=((IkReal(0.374290000000000))*(sj5)); +IkReal x11888=((cj0)*(r00)); +IkReal x11889=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11890=((cj0)*(r02)); +IkReal x11891=((cj5)*(sj4)); +IkReal x11892=((cj6)*(r01)); +IkReal x11893=((cj6)*(r11)); +IkReal x11894=((r01)*(sj0)); +IkReal x11895=((r10)*(sj0)); +IkReal x11896=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x11897=((sj6)*(x11887)); +IkReal x11898=((cj0)*(cj6)*(x11887)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x11878)))+(((r21)*(x11875)))+(((x11886)*(x11891)))+(cj1)+(((IkReal(-1.00000000000000))*(r20)*(x11884)))+(((r20)*(sj4)*(x11877)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x11880)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.0100000000000000))*(r20)*(x11877)))+(((IkReal(-0.0100000000000000))*(cj5)*(x11886)))+(((r20)*(x11897)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x11889)))+(((x11886)*(x11887)))); +evalcond[3]=((((r02)*(sj5)*(x11876)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x11874)*(x11877)))+(((IkReal(-1.00000000000000))*(r11)*(x11874)*(x11875)))+(((IkReal(-1.00000000000000))*(r00)*(x11882)*(x11884)))+(((x11883)*(x11884)))+(((IkReal(-1.00000000000000))*(r12)*(x11874)*(x11878)))+(((r00)*(x11876)*(x11877)))+(((IkReal(-1.00000000000000))*(x11874)*(x11891)*(x11893)))+(((x11875)*(x11894)))+(((cj5)*(x11876)*(x11892)))); +evalcond[4]=((((x11884)*(x11895)))+(((IkReal(-1.00000000000000))*(x11876)*(x11879)))+(((IkReal(-1.00000000000000))*(cj5)*(x11876)*(x11893)))+(((IkReal(-1.00000000000000))*(x11874)*(x11891)*(x11892)))+(((IkReal(-1.00000000000000))*(r01)*(x11874)*(x11875)))+(((x11884)*(x11888)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r10)*(x11876)*(x11877)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x11874)*(x11877)))+(((IkReal(-1.00000000000000))*(r11)*(x11875)*(x11882)))+(((IkReal(-1.00000000000000))*(r02)*(x11874)*(x11878)))); +evalcond[5]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x11874)))+(((IkReal(-1.00000000000000))*(cj0)*(x11887)*(x11893)))+(((IkReal(-0.0100000000000000))*(x11877)*(x11885)))+(((IkReal(-1.00000000000000))*(x11880)*(x11881)))+(((cj0)*(r12)*(x11880)))+(((IkReal(0.0100000000000000))*(cj0)*(x11879)))+(((IkReal(-1.00000000000000))*(x11881)*(x11889)))+(((x11885)*(x11897)))+(((IkReal(0.0100000000000000))*(x11877)*(x11883)))+(((sj0)*(x11887)*(x11892)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11893)))+(((IkReal(-1.00000000000000))*(x11883)*(x11897)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x11892)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x11887)*(x11892)))+(((x11889)*(x11890)))+(((IkReal(-1.00000000000000))*(sj0)*(x11887)*(x11893)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x11893)))+(((IkReal(0.0100000000000000))*(sj0)*(x11879)))+(((r12)*(sj0)*(x11880)))+(((IkReal(-1.00000000000000))*(x11895)*(x11897)))+(((IkReal(0.0100000000000000))*(x11877)*(x11895)))+(((IkReal(-1.00000000000000))*(py)*(x11882)))+(((IkReal(-1.00000000000000))*(x11888)*(x11897)))+(((x11880)*(x11890)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x11892)))+(((IkReal(0.0100000000000000))*(x11877)*(x11888)))+(((IkReal(-1.00000000000000))*(px)*(x11874)))+(((IkReal(0.364420000000000))*(cj1)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst12; +gconst12=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x11899=((IkReal(1.00000000000000))*(cj0)); +IkReal x11900=((cj4)*(sj6)); +IkReal x11901=((sj0)*(sj6)); +IkReal x11902=((cj5)*(sj4)); +IkReal x11903=((IkReal(0.374290000000000))*(sj5)); +IkReal x11904=((sj4)*(sj5)); +IkReal x11905=((cj0)*(cj6)); +IkReal x11906=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11907=((cj4)*(sj5)); +IkReal x11908=((cj5)*(sj0)); +IkReal x11909=((IkReal(0.374290000000000))*(r02)); +IkReal x11910=((r20)*(sj6)); +IkReal x11911=((cj6)*(r21)); +IkReal x11912=((IkReal(1.00000000000000))*(sj0)); +IkReal x11913=((cj0)*(sj6)); +IkReal x11914=((cj4)*(cj6)); +IkReal x11915=((IkReal(0.374290000000000))*(r12)); +IkReal x11916=((cj0)*(cj5)); +IkReal x11917=((cj6)*(sj5)); +IkReal x11918=((cj6)*(r01)); +IkReal x11919=((r00)*(sj6)); +IkReal x11920=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11921=((cj6)*(r11)); +IkReal x11922=((IkReal(1.00000000000000))*(r10)); +IkReal x11923=((r02)*(sj0)); +IkReal x11924=((cj6)*(sj4)); +IkReal x11925=((r12)*(x11912)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x11914)))+(((r21)*(x11900)))+(((x11902)*(x11911)))+(((x11902)*(x11910)))+(((r22)*(x11904)))); +evalcond[2]=((IkReal(0.364420000000000))+(((IkReal(-1.00000000000000))*(x11906)*(x11910)))+(((x11903)*(x11911)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x11903)*(x11910)))+(pz)+(((IkReal(-1.00000000000000))*(x11906)*(x11911)))+(((IkReal(-1.00000000000000))*(r22)*(x11920)))); +evalcond[3]=((((r12)*(x11908)))+(((IkReal(-1.00000000000000))*(r11)*(x11912)*(x11917)))+(((IkReal(-1.00000000000000))*(r01)*(x11899)*(x11917)))+(((IkReal(-1.00000000000000))*(sj5)*(x11901)*(x11922)))+(((IkReal(-1.00000000000000))*(sj5)*(x11899)*(x11919)))+(((r02)*(x11916)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x11899)*(x11902)*(x11921)))+(((sj0)*(x11902)*(x11918)))+(((cj4)*(r10)*(x11905)))+(((IkReal(-1.00000000000000))*(r12)*(x11899)*(x11904)))+(((r01)*(sj0)*(x11900)))+(((x11904)*(x11923)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11899)*(x11902)))+(((r00)*(x11901)*(x11902)))+(((IkReal(-1.00000000000000))*(r00)*(x11912)*(x11914)))+(((IkReal(-1.00000000000000))*(r11)*(x11899)*(x11900)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x11904)*(x11925)))+(((cj4)*(r00)*(x11905)))+(((IkReal(-1.00000000000000))*(r01)*(x11899)*(x11900)))+(((IkReal(-1.00000000000000))*(x11899)*(x11902)*(x11918)))+(((IkReal(-1.00000000000000))*(r02)*(x11899)*(x11904)))+(((IkReal(-1.00000000000000))*(x11902)*(x11912)*(x11921)))+(((IkReal(-1.00000000000000))*(x11899)*(x11902)*(x11919)))+(((IkReal(-1.00000000000000))*(x11901)*(x11902)*(x11922)))+(((r10)*(sj0)*(x11914)))+(((IkReal(-1.00000000000000))*(r11)*(x11900)*(x11912)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((sj0)*(x11903)*(x11918)))+(((IkReal(-1.00000000000000))*(x11908)*(x11909)))+(((IkReal(-1.00000000000000))*(r10)*(x11903)*(x11913)))+(((IkReal(-1.00000000000000))*(py)*(x11899)))+(((IkReal(-1.00000000000000))*(x11920)*(x11923)))+(((IkReal(-1.00000000000000))*(r11)*(x11903)*(x11905)))+(((r11)*(x11905)*(x11906)))+(((IkReal(-1.00000000000000))*(r00)*(x11901)*(x11906)))+(((IkReal(-1.00000000000000))*(sj0)*(x11906)*(x11918)))+(((cj0)*(r12)*(x11920)))+(((px)*(sj0)))+(((r10)*(x11906)*(x11913)))+(((x11915)*(x11916)))+(((r00)*(x11901)*(x11903)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(cj5)*(r00)*(x11899)*(x11900)))+(((IkReal(-1.00000000000000))*(x11900)*(x11908)*(x11922)))+(((IkReal(-1.00000000000000))*(r00)*(x11899)*(x11924)))+(((r11)*(sj4)*(x11901)))+(((r01)*(sj4)*(x11913)))+(((IkReal(-1.00000000000000))*(r11)*(x11908)*(x11914)))+(((IkReal(-1.00000000000000))*(r02)*(x11899)*(x11907)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x11899)*(x11914)))+(((IkReal(-1.00000000000000))*(x11907)*(x11925)))+(((IkReal(-1.00000000000000))*(r10)*(x11912)*(x11924)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r12)*(sj0)*(x11920)))+(((IkReal(-1.00000000000000))*(px)*(x11899)))+(((IkReal(-1.00000000000000))*(r10)*(x11901)*(x11903)))+(((IkReal(-1.00000000000000))*(r00)*(x11903)*(x11913)))+(((cj0)*(r02)*(x11920)))+(((r00)*(x11906)*(x11913)))+(((r10)*(x11901)*(x11906)))+(((IkReal(-1.00000000000000))*(py)*(x11912)))+(((IkReal(-1.00000000000000))*(r01)*(x11903)*(x11905)))+(((x11909)*(x11916)))+(((r01)*(x11905)*(x11906)))+(((IkReal(-1.00000000000000))*(sj0)*(x11903)*(x11921)))+(((sj0)*(x11906)*(x11921)))+(((x11908)*(x11915)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11926=((r20)*(sj6)); +IkReal x11927=((cj4)*(cj5)); +IkReal x11928=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11927)*(x11928)))+(((x11926)*(x11927)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x11926)))+(((sj5)*(x11928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11927)*(x11928)))+(((x11926)*(x11927)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))+IKsqr(((((sj5)*(x11926)))+(((sj5)*(x11928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x11927)*(x11928)))+(((x11926)*(x11927)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))), ((((sj5)*(x11926)))+(((sj5)*(x11928)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11929=IKsin(j3); +IkReal x11930=((sj0)*(sj5)); +IkReal x11931=((r00)*(sj6)); +IkReal x11932=((cj6)*(r01)); +IkReal x11933=((cj5)*(sj0)); +IkReal x11934=((cj0)*(cj5)); +IkReal x11935=((cj6)*(sj4)); +IkReal x11936=((sj4)*(sj6)); +IkReal x11937=((cj0)*(r11)); +IkReal x11938=((cj4)*(cj6)); +IkReal x11939=((cj4)*(sj6)); +IkReal x11940=((IkReal(1.00000000000000))*(cj0)); +IkReal x11941=((cj4)*(sj5)); +IkReal x11942=((sj5)*(sj6)); +IkReal x11943=((cj6)*(sj5)); +IkReal x11944=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((r21)*(x11943)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x11942)))+(((IkReal(-1.00000000000000))*(x11944)))); +evalcond[1]=((((r22)*(x11941)))+(((r20)*(x11935)))+(((IkReal(-1.00000000000000))*(r21)*(x11936)))+(((IkReal(-1.00000000000000))*(x11929)))+(((cj5)*(r20)*(x11939)))+(((cj5)*(r21)*(x11938)))); +evalcond[2]=((((r12)*(x11934)))+(((x11930)*(x11932)))+(((IkReal(-1.00000000000000))*(x11937)*(x11943)))+(((x11930)*(x11931)))+(x11929)+(((IkReal(-1.00000000000000))*(r02)*(x11933)))+(((IkReal(-1.00000000000000))*(r10)*(x11940)*(x11942)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(sj0)*(x11936)))+(((cj4)*(x11931)*(x11933)))+(((x11936)*(x11937)))+(((cj4)*(x11932)*(x11933)))+(((cj4)*(r02)*(x11930)))+(((IkReal(-1.00000000000000))*(r11)*(x11934)*(x11938)))+(((r00)*(sj0)*(x11935)))+(((IkReal(-1.00000000000000))*(r10)*(x11934)*(x11939)))+(((IkReal(-1.00000000000000))*(x11944)))+(((IkReal(-1.00000000000000))*(r10)*(x11935)*(x11940)))+(((IkReal(-1.00000000000000))*(r12)*(x11940)*(x11941)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x11945=((IkReal(1.00000000000000))*(cj0)); +IkReal x11946=((cj4)*(sj6)); +IkReal x11947=((sj0)*(sj6)); +IkReal x11948=((cj5)*(sj4)); +IkReal x11949=((IkReal(0.374290000000000))*(sj5)); +IkReal x11950=((sj4)*(sj5)); +IkReal x11951=((cj0)*(cj6)); +IkReal x11952=((IkReal(0.0100000000000000))*(cj5)); +IkReal x11953=((cj4)*(sj5)); +IkReal x11954=((cj5)*(sj0)); +IkReal x11955=((IkReal(0.374290000000000))*(r02)); +IkReal x11956=((r20)*(sj6)); +IkReal x11957=((cj6)*(r21)); +IkReal x11958=((IkReal(1.00000000000000))*(sj0)); +IkReal x11959=((cj0)*(sj6)); +IkReal x11960=((cj4)*(cj6)); +IkReal x11961=((IkReal(0.374290000000000))*(r12)); +IkReal x11962=((cj0)*(cj5)); +IkReal x11963=((cj6)*(sj5)); +IkReal x11964=((cj6)*(r01)); +IkReal x11965=((r00)*(sj6)); +IkReal x11966=((IkReal(0.0100000000000000))*(sj5)); +IkReal x11967=((cj6)*(r11)); +IkReal x11968=((IkReal(1.00000000000000))*(r10)); +IkReal x11969=((r02)*(sj0)); +IkReal x11970=((cj6)*(sj4)); +IkReal x11971=((r12)*(x11958)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x11960)))+(((r21)*(x11946)))+(((x11948)*(x11956)))+(((r22)*(x11950)))+(((x11948)*(x11957)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((x11949)*(x11956)))+(((IkReal(-1.00000000000000))*(r22)*(x11966)))+(((IkReal(-1.00000000000000))*(x11952)*(x11956)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x11952)*(x11957)))+(((x11949)*(x11957)))); +evalcond[3]=((((r02)*(x11962)))+(((IkReal(-1.00000000000000))*(sj5)*(x11945)*(x11965)))+(((IkReal(-1.00000000000000))*(sj5)*(x11947)*(x11968)))+(((r12)*(x11954)))+(((IkReal(-1.00000000000000))*(r01)*(x11945)*(x11963)))+(((IkReal(-1.00000000000000))*(r11)*(x11958)*(x11963)))); +evalcond[4]=((((sj0)*(x11948)*(x11964)))+(((r01)*(sj0)*(x11946)))+(((x11950)*(x11969)))+(((cj4)*(r10)*(x11951)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x11945)*(x11948)))+(((r00)*(x11947)*(x11948)))+(((IkReal(-1.00000000000000))*(r11)*(x11945)*(x11946)))+(((IkReal(-1.00000000000000))*(x11945)*(x11948)*(x11967)))+(((IkReal(-1.00000000000000))*(r12)*(x11945)*(x11950)))+(((IkReal(-1.00000000000000))*(r00)*(x11958)*(x11960)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r01)*(x11945)*(x11946)))+(((IkReal(-1.00000000000000))*(x11945)*(x11948)*(x11965)))+(((IkReal(-1.00000000000000))*(x11947)*(x11948)*(x11968)))+(((r10)*(sj0)*(x11960)))+(((IkReal(-1.00000000000000))*(r02)*(x11945)*(x11950)))+(((IkReal(-1.00000000000000))*(x11950)*(x11971)))+(((cj4)*(r00)*(x11951)))+(((IkReal(-1.00000000000000))*(x11948)*(x11958)*(x11967)))+(((IkReal(-1.00000000000000))*(x11945)*(x11948)*(x11964)))+(((IkReal(-1.00000000000000))*(r11)*(x11946)*(x11958)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x11945)))+(((IkReal(-1.00000000000000))*(r11)*(x11949)*(x11951)))+(((sj0)*(x11949)*(x11964)))+(((x11961)*(x11962)))+(((IkReal(-1.00000000000000))*(r00)*(x11947)*(x11952)))+(((r00)*(x11947)*(x11949)))+(((IkReal(-1.00000000000000))*(x11954)*(x11955)))+(((r10)*(x11952)*(x11959)))+(((IkReal(-1.00000000000000))*(r10)*(x11949)*(x11959)))+(((px)*(sj0)))+(((cj0)*(r12)*(x11966)))+(((r11)*(x11951)*(x11952)))+(((IkReal(-1.00000000000000))*(sj0)*(x11952)*(x11964)))+(((IkReal(-1.00000000000000))*(x11966)*(x11969)))); +evalcond[7]=((((r11)*(sj4)*(x11947)))+(((IkReal(-1.00000000000000))*(x11946)*(x11954)*(x11968)))+(((r01)*(sj4)*(x11959)))+(((IkReal(-1.00000000000000))*(r10)*(x11958)*(x11970)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x11945)*(x11946)))+(((IkReal(-1.00000000000000))*(r00)*(x11945)*(x11970)))+(((IkReal(-1.00000000000000))*(r11)*(x11954)*(x11960)))+(((IkReal(-1.00000000000000))*(r02)*(x11945)*(x11953)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x11945)*(x11960)))+(((IkReal(-1.00000000000000))*(x11953)*(x11971)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((x11955)*(x11962)))+(((r01)*(x11951)*(x11952)))+(((r00)*(x11952)*(x11959)))+(((cj0)*(r02)*(x11966)))+(((IkReal(-1.00000000000000))*(sj0)*(x11949)*(x11967)))+(((r10)*(x11947)*(x11952)))+(((IkReal(-1.00000000000000))*(r01)*(x11949)*(x11951)))+(((sj0)*(x11952)*(x11967)))+(((x11954)*(x11961)))+(((IkReal(-1.00000000000000))*(r10)*(x11947)*(x11949)))+(((IkReal(-1.00000000000000))*(r00)*(x11949)*(x11959)))+(((r12)*(sj0)*(x11966)))+(((IkReal(-1.00000000000000))*(px)*(x11945)))+(((IkReal(-1.00000000000000))*(py)*(x11958)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11972=((IkReal(1.00000000000000))*(sj5)); +IkReal x11973=((cj6)*(r21)); +IkReal x11974=((r20)*(sj6)); +IkReal x11975=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11972)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x11973)*(x11975)))+(((IkReal(-1.00000000000000))*(x11974)*(x11975)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x11972)*(x11973)))+(((IkReal(-1.00000000000000))*(x11972)*(x11974)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11972)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x11973)*(x11975)))+(((IkReal(-1.00000000000000))*(x11974)*(x11975)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x11972)*(x11973)))+(((IkReal(-1.00000000000000))*(x11972)*(x11974)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj4)*(r22)*(x11972)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x11973)*(x11975)))+(((IkReal(-1.00000000000000))*(x11974)*(x11975)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x11972)*(x11973)))+(((IkReal(-1.00000000000000))*(x11972)*(x11974)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x11976=IKsin(j3); +IkReal x11977=IKcos(j3); +IkReal x11978=((sj0)*(sj5)); +IkReal x11979=((r00)*(sj6)); +IkReal x11980=((cj6)*(r01)); +IkReal x11981=((cj0)*(cj5)); +IkReal x11982=((IkReal(1.00000000000000))*(cj5)); +IkReal x11983=((cj4)*(cj5)); +IkReal x11984=((cj6)*(sj4)); +IkReal x11985=((sj4)*(sj6)); +IkReal x11986=((cj0)*(r11)); +IkReal x11987=((IkReal(1.00000000000000))*(cj4)); +IkReal x11988=((cj6)*(r21)); +IkReal x11989=((r20)*(sj6)); +IkReal x11990=((cj0)*(sj5)); +IkReal x11991=((r10)*(sj6)); +evalcond[0]=((((sj5)*(x11988)))+(((sj5)*(x11989)))+(x11977)+(((IkReal(-1.00000000000000))*(r22)*(x11982)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x11985)))+(((r20)*(x11984)))+(((x11983)*(x11989)))+(x11976)+(((cj4)*(r22)*(sj5)))+(((x11983)*(x11988)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x11986)))+(((r12)*(x11981)))+(((IkReal(-1.00000000000000))*(x11990)*(x11991)))+(((x11978)*(x11979)))+(x11976)+(((x11978)*(x11980)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x11982)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(sj0)*(x11985)))+(((IkReal(-1.00000000000000))*(r12)*(x11987)*(x11990)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x11984)))+(((IkReal(-1.00000000000000))*(x11981)*(x11987)*(x11991)))+(((sj0)*(x11979)*(x11983)))+(((x11985)*(x11986)))+(((cj4)*(r02)*(x11978)))+(((IkReal(-1.00000000000000))*(x11977)))+(((sj0)*(x11980)*(x11983)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x11981)*(x11987)))+(((r00)*(sj0)*(x11984)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x11992=((cj5)*(r02)); +IkReal x11993=((cj0)*(sj5)); +IkReal x11994=((r10)*(sj6)); +IkReal x11995=((IkReal(1.00000000000000))*(cj6)); +IkReal x11996=((sj0)*(sj5)); +IkReal x11997=((cj5)*(r12)); +IkReal x11998=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((sj0)*(x11992)))+(((x11993)*(x11994)))+(((IkReal(-1.00000000000000))*(cj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11995)*(x11996)))+(((IkReal(-1.00000000000000))*(x11996)*(x11998)))+(((cj6)*(r11)*(x11993))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x11993)*(x11998)))+(((IkReal(-1.00000000000000))*(r11)*(x11995)*(x11996)))+(((cj0)*(x11992)))+(((sj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11993)*(x11995)))+(((IkReal(-1.00000000000000))*(x11994)*(x11996))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x11992)))+(((x11993)*(x11994)))+(((IkReal(-1.00000000000000))*(cj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11995)*(x11996)))+(((IkReal(-1.00000000000000))*(x11996)*(x11998)))+(((cj6)*(r11)*(x11993)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x11993)*(x11998)))+(((IkReal(-1.00000000000000))*(r11)*(x11995)*(x11996)))+(((cj0)*(x11992)))+(((sj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11993)*(x11995)))+(((IkReal(-1.00000000000000))*(x11994)*(x11996)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x11992)))+(((x11993)*(x11994)))+(((IkReal(-1.00000000000000))*(cj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11995)*(x11996)))+(((IkReal(-1.00000000000000))*(x11996)*(x11998)))+(((cj6)*(r11)*(x11993)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x11993)*(x11998)))+(((IkReal(-1.00000000000000))*(r11)*(x11995)*(x11996)))+(((cj0)*(x11992)))+(((sj0)*(x11997)))+(((IkReal(-1.00000000000000))*(r01)*(x11993)*(x11995)))+(((IkReal(-1.00000000000000))*(x11994)*(x11996))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x11999=IKsin(j3); +IkReal x12000=IKcos(j3); +IkReal x12001=((sj0)*(sj5)); +IkReal x12002=((r00)*(sj6)); +IkReal x12003=((IkReal(1.00000000000000))*(cj4)); +IkReal x12004=((cj6)*(r01)); +IkReal x12005=((cj0)*(cj5)); +IkReal x12006=((cj5)*(sj0)); +IkReal x12007=((cj6)*(r11)); +IkReal x12008=((cj0)*(sj5)); +IkReal x12009=((IkReal(1.00000000000000))*(cj1)); +IkReal x12010=((cj6)*(sj4)); +IkReal x12011=((IkReal(1.00000000000000))*(sj1)); +IkReal x12012=((cj4)*(cj5)); +IkReal x12013=((cj6)*(r21)); +IkReal x12014=((r20)*(sj6)); +IkReal x12015=((r10)*(sj6)); +IkReal x12016=((IkReal(1.00000000000000))*(cj0)); +IkReal x12017=((cj0)*(sj4)*(sj6)); +IkReal x12018=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12014)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x12000)*(x12011)))+(((sj5)*(x12013)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12012)*(x12013)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x11999)*(x12011)))+(((r20)*(x12010)))+(((x12012)*(x12014)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12008)*(x12015)))+(((IkReal(-1.00000000000000))*(x12007)*(x12008)))+(((x12001)*(x12002)))+(((r12)*(x12005)))+(((IkReal(-1.00000000000000))*(r02)*(x12006)))+(x11999)+(((x12001)*(x12004)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12001)*(x12007)))+(((IkReal(-1.00000000000000))*(x12001)*(x12015)))+(((IkReal(-1.00000000000000))*(x12004)*(x12008)))+(((r02)*(x12005)))+(((r12)*(x12006)))+(((IkReal(-1.00000000000000))*(x12000)*(x12009)))+(((IkReal(-1.00000000000000))*(x12002)*(x12008)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x12010)*(x12016)))+(((IkReal(-1.00000000000000))*(x12003)*(x12005)*(x12015)))+(((IkReal(-1.00000000000000))*(r01)*(x12018)))+(((cj4)*(x12004)*(x12006)))+(((r11)*(x12017)))+(((cj4)*(x12002)*(x12006)))+(((IkReal(-1.00000000000000))*(x12003)*(x12005)*(x12007)))+(((IkReal(-1.00000000000000))*(x12000)))+(((IkReal(-1.00000000000000))*(r12)*(x12003)*(x12008)))+(((r00)*(sj0)*(x12010)))+(((cj4)*(r02)*(x12001)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12003)*(x12006)*(x12007)))+(((IkReal(-1.00000000000000))*(x11999)*(x12009)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12010)))+(((IkReal(-1.00000000000000))*(r12)*(x12001)*(x12003)))+(((IkReal(-1.00000000000000))*(x12002)*(x12003)*(x12005)))+(((IkReal(-1.00000000000000))*(x12003)*(x12006)*(x12015)))+(((r01)*(x12017)))+(((IkReal(-1.00000000000000))*(r00)*(x12010)*(x12016)))+(((r11)*(x12018)))+(((IkReal(-1.00000000000000))*(r02)*(x12003)*(x12008)))+(((IkReal(-1.00000000000000))*(x12003)*(x12004)*(x12005)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12019=((sj5)*(sj6)); +IkReal x12020=((IkReal(1.00000000000000))*(sj0)); +IkReal x12021=((cj6)*(sj5)); +IkReal x12022=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r10)*(x12019)))+(((IkReal(-1.00000000000000))*(r00)*(x12019)*(x12020)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12022)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x12021)))+(((IkReal(-1.00000000000000))*(r01)*(x12020)*(x12021))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x12022)))+(((r21)*(x12021)))+(((r20)*(x12019))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r10)*(x12019)))+(((IkReal(-1.00000000000000))*(r00)*(x12019)*(x12020)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12022)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x12021)))+(((IkReal(-1.00000000000000))*(r01)*(x12020)*(x12021)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x12022)))+(((r21)*(x12021)))+(((r20)*(x12019)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r10)*(x12019)))+(((IkReal(-1.00000000000000))*(r00)*(x12019)*(x12020)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12022)))+(((cj5)*(r02)*(sj0)))+(((cj0)*(r11)*(x12021)))+(((IkReal(-1.00000000000000))*(r01)*(x12020)*(x12021)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x12022)))+(((r21)*(x12021)))+(((r20)*(x12019))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12023=IKsin(j3); +IkReal x12024=IKcos(j3); +IkReal x12025=((sj0)*(sj5)); +IkReal x12026=((r00)*(sj6)); +IkReal x12027=((IkReal(1.00000000000000))*(cj4)); +IkReal x12028=((cj6)*(r01)); +IkReal x12029=((cj0)*(cj5)); +IkReal x12030=((cj5)*(sj0)); +IkReal x12031=((cj6)*(r11)); +IkReal x12032=((cj0)*(sj5)); +IkReal x12033=((IkReal(1.00000000000000))*(cj1)); +IkReal x12034=((cj6)*(sj4)); +IkReal x12035=((IkReal(1.00000000000000))*(sj1)); +IkReal x12036=((cj4)*(cj5)); +IkReal x12037=((cj6)*(r21)); +IkReal x12038=((r20)*(sj6)); +IkReal x12039=((r10)*(sj6)); +IkReal x12040=((IkReal(1.00000000000000))*(cj0)); +IkReal x12041=((cj0)*(sj4)*(sj6)); +IkReal x12042=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12037)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12038)))+(((IkReal(-1.00000000000000))*(x12024)*(x12035)))); +evalcond[1]=((((x12036)*(x12038)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x12023)*(x12035)))+(((cj4)*(r22)*(sj5)))+(((x12036)*(x12037)))+(((r20)*(x12034)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12032)*(x12039)))+(((x12025)*(x12028)))+(((x12025)*(x12026)))+(x12023)+(((r12)*(x12029)))+(((IkReal(-1.00000000000000))*(r02)*(x12030)))+(((IkReal(-1.00000000000000))*(x12031)*(x12032)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12028)*(x12032)))+(((IkReal(-1.00000000000000))*(x12026)*(x12032)))+(((IkReal(-1.00000000000000))*(x12025)*(x12039)))+(((r02)*(x12029)))+(((IkReal(-1.00000000000000))*(x12024)*(x12033)))+(((IkReal(-1.00000000000000))*(x12025)*(x12031)))+(((r12)*(x12030)))); +evalcond[4]=((((cj4)*(x12028)*(x12030)))+(((IkReal(-1.00000000000000))*(r12)*(x12027)*(x12032)))+(((r11)*(x12041)))+(((IkReal(-1.00000000000000))*(r01)*(x12042)))+(((IkReal(-1.00000000000000))*(r10)*(x12034)*(x12040)))+(((r00)*(sj0)*(x12034)))+(((IkReal(-1.00000000000000))*(x12024)))+(((IkReal(-1.00000000000000))*(x12027)*(x12029)*(x12031)))+(((cj4)*(x12026)*(x12030)))+(((cj4)*(r02)*(x12025)))+(((IkReal(-1.00000000000000))*(x12027)*(x12029)*(x12039)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12027)*(x12028)*(x12029)))+(((IkReal(-1.00000000000000))*(x12023)*(x12033)))+(((IkReal(-1.00000000000000))*(x12026)*(x12027)*(x12029)))+(((IkReal(-1.00000000000000))*(x12027)*(x12030)*(x12031)))+(((IkReal(-1.00000000000000))*(r02)*(x12027)*(x12032)))+(((IkReal(-1.00000000000000))*(r00)*(x12034)*(x12040)))+(((r11)*(x12042)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12034)))+(((r01)*(x12041)))+(((IkReal(-1.00000000000000))*(x12027)*(x12030)*(x12039)))+(((IkReal(-1.00000000000000))*(r12)*(x12025)*(x12027)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12043=((r20)*(sj6)); +IkReal x12044=((cj4)*(cj5)); +IkReal x12045=((cj6)*(r21)); +if( IKabs(((gconst12)*(((((x12043)*(x12044)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12044)*(x12045)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst12)*(((((sj5)*(x12043)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12045))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst12)*(((((x12043)*(x12044)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12044)*(x12045)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))), ((gconst12)*(((((sj5)*(x12043)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12045))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12046=IKsin(j3); +IkReal x12047=IKcos(j3); +IkReal x12048=((sj0)*(sj5)); +IkReal x12049=((r00)*(sj6)); +IkReal x12050=((IkReal(1.00000000000000))*(cj4)); +IkReal x12051=((cj6)*(r01)); +IkReal x12052=((cj0)*(cj5)); +IkReal x12053=((cj5)*(sj0)); +IkReal x12054=((cj6)*(r11)); +IkReal x12055=((cj0)*(sj5)); +IkReal x12056=((IkReal(1.00000000000000))*(cj1)); +IkReal x12057=((cj6)*(sj4)); +IkReal x12058=((IkReal(1.00000000000000))*(sj1)); +IkReal x12059=((cj4)*(cj5)); +IkReal x12060=((cj6)*(r21)); +IkReal x12061=((r20)*(sj6)); +IkReal x12062=((r10)*(sj6)); +IkReal x12063=((IkReal(1.00000000000000))*(cj0)); +IkReal x12064=((cj0)*(sj4)*(sj6)); +IkReal x12065=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12047)*(x12058)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12061)))+(((sj5)*(x12060)))); +evalcond[1]=((((x12059)*(x12061)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x12046)*(x12058)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12057)))+(((x12059)*(x12060)))); +evalcond[2]=((((x12048)*(x12049)))+(x12046)+(((IkReal(-1.00000000000000))*(x12054)*(x12055)))+(((IkReal(-1.00000000000000))*(x12055)*(x12062)))+(((r12)*(x12052)))+(((IkReal(-1.00000000000000))*(r02)*(x12053)))+(((x12048)*(x12051)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12047)*(x12056)))+(((r12)*(x12053)))+(((IkReal(-1.00000000000000))*(x12049)*(x12055)))+(((IkReal(-1.00000000000000))*(x12051)*(x12055)))+(((r02)*(x12052)))+(((IkReal(-1.00000000000000))*(x12048)*(x12054)))+(((IkReal(-1.00000000000000))*(x12048)*(x12062)))); +evalcond[4]=((((r11)*(x12064)))+(((cj4)*(r02)*(x12048)))+(((IkReal(-1.00000000000000))*(x12050)*(x12052)*(x12062)))+(((cj4)*(x12049)*(x12053)))+(((IkReal(-1.00000000000000))*(x12050)*(x12052)*(x12054)))+(((IkReal(-1.00000000000000))*(x12047)))+(((IkReal(-1.00000000000000))*(r01)*(x12065)))+(((IkReal(-1.00000000000000))*(r12)*(x12050)*(x12055)))+(((IkReal(-1.00000000000000))*(r10)*(x12057)*(x12063)))+(((r00)*(sj0)*(x12057)))+(((cj4)*(x12051)*(x12053)))); +evalcond[5]=((((r11)*(x12065)))+(((r01)*(x12064)))+(((IkReal(-1.00000000000000))*(r02)*(x12050)*(x12055)))+(((IkReal(-1.00000000000000))*(x12050)*(x12053)*(x12062)))+(((IkReal(-1.00000000000000))*(x12050)*(x12053)*(x12054)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12057)))+(((IkReal(-1.00000000000000))*(r00)*(x12057)*(x12063)))+(((IkReal(-1.00000000000000))*(r12)*(x12048)*(x12050)))+(((IkReal(-1.00000000000000))*(x12049)*(x12050)*(x12052)))+(((IkReal(-1.00000000000000))*(x12046)*(x12056)))+(((IkReal(-1.00000000000000))*(x12050)*(x12051)*(x12052)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12066=((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30); +IkReal x12067=((sj5)*(sj6)); +IkReal x12068=((r00)*(sj0)); +IkReal x12069=((cj1)*(cj2)); +IkReal x12070=((cj0)*(r10)); +IkReal x12071=((cj6)*(sj5)); +IkReal x12072=((r01)*(sj0)); +IkReal x12073=((IkReal(1.00000000000000))*(cj0)); +IkReal x12074=((cj5)*(r12)); +IkReal x12075=((IkReal(1.00000000000000))*(cj5)); +IkReal x12076=((r02)*(sj0)); +if( IKabs(((x12066)*(((((IkReal(-1.00000000000000))*(x12067)*(x12070)))+(((IkReal(-1.00000000000000))*(r11)*(x12071)*(x12073)))+(((x12071)*(x12072)))+(((cj0)*(x12074)))+(((IkReal(-1.00000000000000))*(x12075)*(x12076)))+(((x12067)*(x12068))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((x12066)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(sj2)*(x12075)))+(((IkReal(-1.00000000000000))*(x12069)*(x12071)*(x12072)))+(((cj5)*(x12069)*(x12076)))+(((r21)*(sj2)*(x12071)))+(((x12067)*(x12069)*(x12070)))+(((IkReal(-1.00000000000000))*(x12067)*(x12068)*(x12069)))+(((r20)*(sj2)*(x12067)))+(((IkReal(-1.00000000000000))*(x12069)*(x12073)*(x12074)))+(((cj0)*(r11)*(x12069)*(x12071))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((x12066)*(((((IkReal(-1.00000000000000))*(x12067)*(x12070)))+(((IkReal(-1.00000000000000))*(r11)*(x12071)*(x12073)))+(((x12071)*(x12072)))+(((cj0)*(x12074)))+(((IkReal(-1.00000000000000))*(x12075)*(x12076)))+(((x12067)*(x12068)))))))+IKsqr(((x12066)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(sj2)*(x12075)))+(((IkReal(-1.00000000000000))*(x12069)*(x12071)*(x12072)))+(((cj5)*(x12069)*(x12076)))+(((r21)*(sj2)*(x12071)))+(((x12067)*(x12069)*(x12070)))+(((IkReal(-1.00000000000000))*(x12067)*(x12068)*(x12069)))+(((r20)*(sj2)*(x12067)))+(((IkReal(-1.00000000000000))*(x12069)*(x12073)*(x12074)))+(((cj0)*(r11)*(x12069)*(x12071)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((x12066)*(((((IkReal(-1.00000000000000))*(x12067)*(x12070)))+(((IkReal(-1.00000000000000))*(r11)*(x12071)*(x12073)))+(((x12071)*(x12072)))+(((cj0)*(x12074)))+(((IkReal(-1.00000000000000))*(x12075)*(x12076)))+(((x12067)*(x12068)))))), ((x12066)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(sj2)*(x12075)))+(((IkReal(-1.00000000000000))*(x12069)*(x12071)*(x12072)))+(((cj5)*(x12069)*(x12076)))+(((r21)*(sj2)*(x12071)))+(((x12067)*(x12069)*(x12070)))+(((IkReal(-1.00000000000000))*(x12067)*(x12068)*(x12069)))+(((r20)*(sj2)*(x12067)))+(((IkReal(-1.00000000000000))*(x12069)*(x12073)*(x12074)))+(((cj0)*(r11)*(x12069)*(x12071))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12077=IKcos(j3); +IkReal x12078=IKsin(j3); +IkReal x12079=((sj0)*(sj5)); +IkReal x12080=((r00)*(sj6)); +IkReal x12081=((IkReal(1.00000000000000))*(cj4)); +IkReal x12082=((cj6)*(r01)); +IkReal x12083=((cj0)*(cj5)); +IkReal x12084=((cj5)*(sj0)); +IkReal x12085=((cj6)*(r11)); +IkReal x12086=((cj6)*(sj4)); +IkReal x12087=((IkReal(1.00000000000000))*(cj1)); +IkReal x12088=((cj4)*(cj5)); +IkReal x12089=((cj6)*(r21)); +IkReal x12090=((r20)*(sj6)); +IkReal x12091=((r10)*(sj6)); +IkReal x12092=((cj0)*(sj5)); +IkReal x12093=((IkReal(1.00000000000000))*(cj0)); +IkReal x12094=((IkReal(1.00000000000000))*(x12092)); +IkReal x12095=((IkReal(1.00000000000000))*(x12078)); +IkReal x12096=((cj0)*(sj4)*(sj6)); +IkReal x12097=((cj2)*(x12078)); +IkReal x12098=((sj0)*(sj4)*(sj6)); +IkReal x12099=((IkReal(1.00000000000000))*(sj1)*(x12077)); +evalcond[0]=((((sj5)*(x12090)))+(((IkReal(-1.00000000000000))*(x12087)*(x12097)))+(((IkReal(-1.00000000000000))*(x12099)))+(((sj5)*(x12089)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12086)))+(((x12088)*(x12089)))+(((IkReal(-1.00000000000000))*(sj1)*(x12095)))+(((cj1)*(cj2)*(x12077)))+(((x12088)*(x12090)))); +evalcond[2]=((((r12)*(x12083)))+(((x12079)*(x12080)))+(((IkReal(-1.00000000000000))*(x12091)*(x12094)))+(((x12079)*(x12082)))+(((IkReal(-1.00000000000000))*(r02)*(x12084)))+(((IkReal(-1.00000000000000))*(sj2)*(x12095)))+(((IkReal(-1.00000000000000))*(x12085)*(x12094)))); +evalcond[3]=((((r12)*(x12084)))+(((IkReal(-1.00000000000000))*(x12079)*(x12085)))+(((IkReal(-1.00000000000000))*(x12077)*(x12087)))+(((IkReal(-1.00000000000000))*(x12082)*(x12094)))+(((r02)*(x12083)))+(((IkReal(-1.00000000000000))*(x12079)*(x12091)))+(((IkReal(-1.00000000000000))*(x12080)*(x12094)))+(((sj1)*(x12097)))); +evalcond[4]=((((sj2)*(x12077)))+(((cj4)*(r02)*(x12079)))+(((IkReal(-1.00000000000000))*(x12081)*(x12083)*(x12085)))+(((IkReal(-1.00000000000000))*(x12081)*(x12083)*(x12091)))+(((r00)*(sj0)*(x12086)))+(((IkReal(-1.00000000000000))*(r12)*(x12081)*(x12092)))+(((cj4)*(x12082)*(x12084)))+(((cj4)*(x12080)*(x12084)))+(((r11)*(x12096)))+(((IkReal(-1.00000000000000))*(r01)*(x12098)))+(((IkReal(-1.00000000000000))*(r10)*(x12086)*(x12093)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x12081)*(x12092)))+(((IkReal(-1.00000000000000))*(cj2)*(x12099)))+(((IkReal(-1.00000000000000))*(r00)*(x12086)*(x12093)))+(((IkReal(-1.00000000000000))*(x12081)*(x12082)*(x12083)))+(((IkReal(-1.00000000000000))*(x12078)*(x12087)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12086)))+(((IkReal(-1.00000000000000))*(x12081)*(x12084)*(x12085)))+(((r11)*(x12098)))+(((IkReal(-1.00000000000000))*(r12)*(x12079)*(x12081)))+(((IkReal(-1.00000000000000))*(x12081)*(x12084)*(x12091)))+(((IkReal(-1.00000000000000))*(x12080)*(x12081)*(x12083)))+(((r01)*(x12096)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12100=(cj1)*(cj1); +IkReal x12101=(sj1)*(sj1); +IkReal x12102=((r00)*(sj6)); +IkReal x12103=((cj6)*(r01)); +IkReal x12104=((IkReal(1.00000000000000))*(cj1)); +IkReal x12105=((cj5)*(r22)); +IkReal x12106=((sj5)*(sj6)); +IkReal x12107=((r10)*(sj0)); +IkReal x12108=((cj1)*(cj5)); +IkReal x12109=((cj0)*(r02)); +IkReal x12110=((r12)*(sj0)); +IkReal x12111=((IkReal(1.00000000000000))*(sj1)); +IkReal x12112=((cj6)*(sj5)); +IkReal x12113=((cj0)*(sj5)); +IkReal x12114=((r11)*(sj0)); +IkReal x12115=((sj1)*(x12113)); +if( IKabs(((((IKabs(((((cj2)*(x12101)))+(((cj2)*(x12100))))) != 0)?((IkReal)1/(((((cj2)*(x12101)))+(((cj2)*(x12100)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x12109)*(x12111)))+(((cj1)*(r20)*(x12106)))+(((sj1)*(x12106)*(x12107)))+(((sj1)*(x12112)*(x12114)))+(((IkReal(-1.00000000000000))*(x12104)*(x12105)))+(((x12102)*(x12115)))+(((x12103)*(x12115)))+(((IkReal(-1.00000000000000))*(cj5)*(x12110)*(x12111)))+(((cj1)*(r21)*(x12112))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x12101)+(x12100))) != 0)?((IkReal)1/(((x12101)+(x12100)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x12112)))+(((IkReal(-1.00000000000000))*(x12102)*(x12104)*(x12113)))+(((IkReal(-1.00000000000000))*(x12103)*(x12104)*(x12113)))+(((x12108)*(x12109)))+(((IkReal(-1.00000000000000))*(x12105)*(x12111)))+(((IkReal(-1.00000000000000))*(x12104)*(x12112)*(x12114)))+(((x12108)*(x12110)))+(((r20)*(sj1)*(x12106)))+(((IkReal(-1.00000000000000))*(x12104)*(x12106)*(x12107))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x12101)))+(((cj2)*(x12100))))) != 0)?((IkReal)1/(((((cj2)*(x12101)))+(((cj2)*(x12100)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x12109)*(x12111)))+(((cj1)*(r20)*(x12106)))+(((sj1)*(x12106)*(x12107)))+(((sj1)*(x12112)*(x12114)))+(((IkReal(-1.00000000000000))*(x12104)*(x12105)))+(((x12102)*(x12115)))+(((x12103)*(x12115)))+(((IkReal(-1.00000000000000))*(cj5)*(x12110)*(x12111)))+(((cj1)*(r21)*(x12112)))))))+IKsqr(((((IKabs(((x12101)+(x12100))) != 0)?((IkReal)1/(((x12101)+(x12100)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x12112)))+(((IkReal(-1.00000000000000))*(x12102)*(x12104)*(x12113)))+(((IkReal(-1.00000000000000))*(x12103)*(x12104)*(x12113)))+(((x12108)*(x12109)))+(((IkReal(-1.00000000000000))*(x12105)*(x12111)))+(((IkReal(-1.00000000000000))*(x12104)*(x12112)*(x12114)))+(((x12108)*(x12110)))+(((r20)*(sj1)*(x12106)))+(((IkReal(-1.00000000000000))*(x12104)*(x12106)*(x12107)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x12101)))+(((cj2)*(x12100))))) != 0)?((IkReal)1/(((((cj2)*(x12101)))+(((cj2)*(x12100)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x12109)*(x12111)))+(((cj1)*(r20)*(x12106)))+(((sj1)*(x12106)*(x12107)))+(((sj1)*(x12112)*(x12114)))+(((IkReal(-1.00000000000000))*(x12104)*(x12105)))+(((x12102)*(x12115)))+(((x12103)*(x12115)))+(((IkReal(-1.00000000000000))*(cj5)*(x12110)*(x12111)))+(((cj1)*(r21)*(x12112)))))), ((((IKabs(((x12101)+(x12100))) != 0)?((IkReal)1/(((x12101)+(x12100)))):(IkReal)1.0e30))*(((((r21)*(sj1)*(x12112)))+(((IkReal(-1.00000000000000))*(x12102)*(x12104)*(x12113)))+(((IkReal(-1.00000000000000))*(x12103)*(x12104)*(x12113)))+(((x12108)*(x12109)))+(((IkReal(-1.00000000000000))*(x12105)*(x12111)))+(((IkReal(-1.00000000000000))*(x12104)*(x12112)*(x12114)))+(((x12108)*(x12110)))+(((r20)*(sj1)*(x12106)))+(((IkReal(-1.00000000000000))*(x12104)*(x12106)*(x12107))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12116=IKcos(j3); +IkReal x12117=IKsin(j3); +IkReal x12118=((sj0)*(sj5)); +IkReal x12119=((r00)*(sj6)); +IkReal x12120=((IkReal(1.00000000000000))*(cj4)); +IkReal x12121=((cj6)*(r01)); +IkReal x12122=((cj0)*(cj5)); +IkReal x12123=((cj5)*(sj0)); +IkReal x12124=((cj6)*(r11)); +IkReal x12125=((cj6)*(sj4)); +IkReal x12126=((IkReal(1.00000000000000))*(cj1)); +IkReal x12127=((cj4)*(cj5)); +IkReal x12128=((cj6)*(r21)); +IkReal x12129=((r20)*(sj6)); +IkReal x12130=((r10)*(sj6)); +IkReal x12131=((cj0)*(sj5)); +IkReal x12132=((IkReal(1.00000000000000))*(cj0)); +IkReal x12133=((IkReal(1.00000000000000))*(x12131)); +IkReal x12134=((IkReal(1.00000000000000))*(x12117)); +IkReal x12135=((cj0)*(sj4)*(sj6)); +IkReal x12136=((cj2)*(x12117)); +IkReal x12137=((sj0)*(sj4)*(sj6)); +IkReal x12138=((IkReal(1.00000000000000))*(sj1)*(x12116)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12126)*(x12136)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12128)))+(((IkReal(-1.00000000000000))*(x12138)))+(((sj5)*(x12129)))); +evalcond[1]=((((cj1)*(cj2)*(x12116)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12127)*(x12129)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x12134)))+(((r20)*(x12125)))+(((x12127)*(x12128)))); +evalcond[2]=((((x12118)*(x12121)))+(((IkReal(-1.00000000000000))*(x12124)*(x12133)))+(((x12118)*(x12119)))+(((IkReal(-1.00000000000000))*(x12130)*(x12133)))+(((IkReal(-1.00000000000000))*(sj2)*(x12134)))+(((r12)*(x12122)))+(((IkReal(-1.00000000000000))*(r02)*(x12123)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12119)*(x12133)))+(((r02)*(x12122)))+(((r12)*(x12123)))+(((IkReal(-1.00000000000000))*(x12118)*(x12124)))+(((IkReal(-1.00000000000000))*(x12116)*(x12126)))+(((sj1)*(x12136)))+(((IkReal(-1.00000000000000))*(x12118)*(x12130)))+(((IkReal(-1.00000000000000))*(x12121)*(x12133)))); +evalcond[4]=((((cj4)*(x12119)*(x12123)))+(((cj4)*(x12121)*(x12123)))+(((sj2)*(x12116)))+(((IkReal(-1.00000000000000))*(r01)*(x12137)))+(((IkReal(-1.00000000000000))*(x12120)*(x12122)*(x12124)))+(((cj4)*(r02)*(x12118)))+(((r00)*(sj0)*(x12125)))+(((IkReal(-1.00000000000000))*(r10)*(x12125)*(x12132)))+(((r11)*(x12135)))+(((IkReal(-1.00000000000000))*(r12)*(x12120)*(x12131)))+(((IkReal(-1.00000000000000))*(x12120)*(x12122)*(x12130)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12117)*(x12126)))+(((IkReal(-1.00000000000000))*(r02)*(x12120)*(x12131)))+(((r11)*(x12137)))+(((IkReal(-1.00000000000000))*(x12120)*(x12123)*(x12124)))+(((IkReal(-1.00000000000000))*(r00)*(x12125)*(x12132)))+(((IkReal(-1.00000000000000))*(x12119)*(x12120)*(x12122)))+(((IkReal(-1.00000000000000))*(r12)*(x12118)*(x12120)))+(((IkReal(-1.00000000000000))*(x12120)*(x12121)*(x12122)))+(((IkReal(-1.00000000000000))*(cj2)*(x12138)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12125)))+(((r01)*(x12135)))+(((IkReal(-1.00000000000000))*(x12120)*(x12123)*(x12130)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12139=((sj1)*(sj6)); +IkReal x12140=((r20)*(sj5)); +IkReal x12141=((IkReal(1.00000000000000))*(r21)); +IkReal x12142=((cj5)*(cj6)); +IkReal x12143=((r22)*(sj5)); +IkReal x12144=((cj4)*(sj1)); +IkReal x12145=((cj1)*(cj2)); +IkReal x12146=((cj5)*(r20)); +IkReal x12147=((cj4)*(x12145)); +IkReal x12148=((IkReal(1.00000000000000))*(cj5)*(r22)); +IkReal x12149=((cj6)*(r20)*(sj4)); +IkReal x12150=((cj6)*(r21)*(sj5)); +if( IKabs(((gconst4)*(((((sj6)*(x12140)*(x12145)))+(((x12143)*(x12144)))+(((x12145)*(x12150)))+(((sj1)*(x12149)))+(((cj4)*(x12139)*(x12146)))+(((r21)*(x12142)*(x12144)))+(((IkReal(-1.00000000000000))*(sj4)*(x12139)*(x12141)))+(((IkReal(-1.00000000000000))*(x12145)*(x12148))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst4)*(((((IkReal(-1.00000000000000))*(sj6)*(x12146)*(x12147)))+(((sj1)*(x12150)))+(((x12139)*(x12140)))+(((IkReal(-1.00000000000000))*(x12141)*(x12142)*(x12147)))+(((IkReal(-1.00000000000000))*(sj1)*(x12148)))+(((IkReal(-1.00000000000000))*(x12143)*(x12147)))+(((IkReal(-1.00000000000000))*(x12145)*(x12149)))+(((r21)*(sj4)*(sj6)*(x12145))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst4)*(((((sj6)*(x12140)*(x12145)))+(((x12143)*(x12144)))+(((x12145)*(x12150)))+(((sj1)*(x12149)))+(((cj4)*(x12139)*(x12146)))+(((r21)*(x12142)*(x12144)))+(((IkReal(-1.00000000000000))*(sj4)*(x12139)*(x12141)))+(((IkReal(-1.00000000000000))*(x12145)*(x12148)))))), ((gconst4)*(((((IkReal(-1.00000000000000))*(sj6)*(x12146)*(x12147)))+(((sj1)*(x12150)))+(((x12139)*(x12140)))+(((IkReal(-1.00000000000000))*(x12141)*(x12142)*(x12147)))+(((IkReal(-1.00000000000000))*(sj1)*(x12148)))+(((IkReal(-1.00000000000000))*(x12143)*(x12147)))+(((IkReal(-1.00000000000000))*(x12145)*(x12149)))+(((r21)*(sj4)*(sj6)*(x12145))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12151=IKcos(j3); +IkReal x12152=IKsin(j3); +IkReal x12153=((sj0)*(sj5)); +IkReal x12154=((r00)*(sj6)); +IkReal x12155=((IkReal(1.00000000000000))*(cj4)); +IkReal x12156=((cj6)*(r01)); +IkReal x12157=((cj0)*(cj5)); +IkReal x12158=((cj5)*(sj0)); +IkReal x12159=((cj6)*(r11)); +IkReal x12160=((cj6)*(sj4)); +IkReal x12161=((IkReal(1.00000000000000))*(cj1)); +IkReal x12162=((cj4)*(cj5)); +IkReal x12163=((cj6)*(r21)); +IkReal x12164=((r20)*(sj6)); +IkReal x12165=((r10)*(sj6)); +IkReal x12166=((cj0)*(sj5)); +IkReal x12167=((IkReal(1.00000000000000))*(cj0)); +IkReal x12168=((IkReal(1.00000000000000))*(x12166)); +IkReal x12169=((IkReal(1.00000000000000))*(x12152)); +IkReal x12170=((cj0)*(sj4)*(sj6)); +IkReal x12171=((cj2)*(x12152)); +IkReal x12172=((sj0)*(sj4)*(sj6)); +IkReal x12173=((IkReal(1.00000000000000))*(sj1)*(x12151)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12161)*(x12171)))+(((sj5)*(x12163)))+(((IkReal(-1.00000000000000))*(x12173)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12164)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12162)*(x12163)))+(((IkReal(-1.00000000000000))*(sj1)*(x12169)))+(((cj4)*(r22)*(sj5)))+(((x12162)*(x12164)))+(((r20)*(x12160)))+(((cj1)*(cj2)*(x12151)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12165)*(x12168)))+(((x12153)*(x12154)))+(((IkReal(-1.00000000000000))*(sj2)*(x12169)))+(((IkReal(-1.00000000000000))*(r02)*(x12158)))+(((x12153)*(x12156)))+(((IkReal(-1.00000000000000))*(x12159)*(x12168)))+(((r12)*(x12157)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12153)*(x12165)))+(((IkReal(-1.00000000000000))*(x12151)*(x12161)))+(((r12)*(x12158)))+(((IkReal(-1.00000000000000))*(x12156)*(x12168)))+(((IkReal(-1.00000000000000))*(x12153)*(x12159)))+(((sj1)*(x12171)))+(((IkReal(-1.00000000000000))*(x12154)*(x12168)))+(((r02)*(x12157)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x12172)))+(((sj2)*(x12151)))+(((IkReal(-1.00000000000000))*(r12)*(x12155)*(x12166)))+(((cj4)*(r02)*(x12153)))+(((r00)*(sj0)*(x12160)))+(((IkReal(-1.00000000000000))*(r10)*(x12160)*(x12167)))+(((r11)*(x12170)))+(((cj4)*(x12154)*(x12158)))+(((IkReal(-1.00000000000000))*(x12155)*(x12157)*(x12165)))+(((cj4)*(x12156)*(x12158)))+(((IkReal(-1.00000000000000))*(x12155)*(x12157)*(x12159)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12154)*(x12155)*(x12157)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12160)))+(((IkReal(-1.00000000000000))*(x12155)*(x12158)*(x12165)))+(((IkReal(-1.00000000000000))*(r12)*(x12153)*(x12155)))+(((IkReal(-1.00000000000000))*(r00)*(x12160)*(x12167)))+(((r11)*(x12172)))+(((IkReal(-1.00000000000000))*(x12155)*(x12156)*(x12157)))+(((IkReal(-1.00000000000000))*(x12152)*(x12161)))+(((IkReal(-1.00000000000000))*(r02)*(x12155)*(x12166)))+(((IkReal(-1.00000000000000))*(cj2)*(x12173)))+(((r01)*(x12170)))+(((IkReal(-1.00000000000000))*(x12155)*(x12158)*(x12159)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} + +} else +{ +{ +IkReal j4array[1], cj4array[1], sj4array[1]; +bool j4valid[1]={false}; +_nj4 = 1; +IkReal x12174=((cj5)*(sj0)); +IkReal x12175=((cj2)*(sj6)); +IkReal x12176=((IkReal(1.00000000000000))*(cj0)); +IkReal x12177=((cj2)*(cj6)); +IkReal x12178=((cj1)*(cj6)*(sj2)); +IkReal x12179=((r10)*(x12176)); +IkReal x12180=((cj1)*(sj2)*(sj6)); +IkReal x12181=((cj1)*(sj2)*(sj5)); +if( IKabs(((gconst0)*(((((IkReal(-1.00000000000000))*(r21)*(x12175)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x12180)))+(((IkReal(-1.00000000000000))*(x12178)*(x12179)))+(((cj0)*(r11)*(x12180)))+(((r00)*(sj0)*(x12178)))+(((r20)*(x12177))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst0)*(((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12176)*(x12178)))+(((cj2)*(r22)*(sj5)))+(((r01)*(x12174)*(x12178)))+(((IkReal(-1.00000000000000))*(cj5)*(x12179)*(x12180)))+(((IkReal(-1.00000000000000))*(r12)*(x12176)*(x12181)))+(((r02)*(sj0)*(x12181)))+(((cj5)*(r20)*(x12175)))+(((cj5)*(r21)*(x12177)))+(((r00)*(x12174)*(x12180))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j4array[0]=IKatan2(((gconst0)*(((((IkReal(-1.00000000000000))*(r21)*(x12175)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x12180)))+(((IkReal(-1.00000000000000))*(x12178)*(x12179)))+(((cj0)*(r11)*(x12180)))+(((r00)*(sj0)*(x12178)))+(((r20)*(x12177)))))), ((gconst0)*(((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12176)*(x12178)))+(((cj2)*(r22)*(sj5)))+(((r01)*(x12174)*(x12178)))+(((IkReal(-1.00000000000000))*(cj5)*(x12179)*(x12180)))+(((IkReal(-1.00000000000000))*(r12)*(x12176)*(x12181)))+(((r02)*(sj0)*(x12181)))+(((cj5)*(r20)*(x12175)))+(((cj5)*(r21)*(x12177)))+(((r00)*(x12174)*(x12180))))))); +sj4array[0]=IKsin(j4array[0]); +cj4array[0]=IKcos(j4array[0]); +if( j4array[0] > IKPI ) +{ + j4array[0]-=IK2PI; +} +else if( j4array[0] < -IKPI ) +{ j4array[0]+=IK2PI; +} +j4valid[0] = true; +for(int ij4 = 0; ij4 < 1; ++ij4) +{ +if( !j4valid[ij4] ) +{ + continue; +} +_ij4[0] = ij4; _ij4[1] = -1; +for(int iij4 = ij4+1; iij4 < 1; ++iij4) +{ +if( j4valid[iij4] && IKabs(cj4array[ij4]-cj4array[iij4]) < IKFAST_SOLUTION_THRESH && IKabs(sj4array[ij4]-sj4array[iij4]) < IKFAST_SOLUTION_THRESH ) +{ + j4valid[iij4]=false; _ij4[1] = iij4; break; +} +} +j4 = j4array[ij4]; cj4 = cj4array[ij4]; sj4 = sj4array[ij4]; +{ +IkReal evalcond[3]; +IkReal x12182=IKsin(j4); +IkReal x12183=IKcos(j4); +IkReal x12184=((r00)*(sj6)); +IkReal x12185=((cj6)*(r01)); +IkReal x12186=((IkReal(1.00000000000000))*(cj0)); +IkReal x12187=((IkReal(1.00000000000000))*(sj0)); +IkReal x12188=((r10)*(sj6)); +IkReal x12189=((sj5)*(x12182)); +IkReal x12190=((IkReal(1.00000000000000))*(cj6)*(r11)); +IkReal x12191=((cj5)*(x12182)); +IkReal x12192=((cj6)*(x12183)); +IkReal x12193=((sj0)*(x12191)); +IkReal x12194=((r01)*(sj6)*(x12183)); +IkReal x12195=((r11)*(sj6)*(x12183)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r20)*(x12192)))+(((IkReal(-1.00000000000000))*(cj1)*(sj2)))+(((r22)*(x12189)))+(((r20)*(sj6)*(x12191)))+(((r21)*(sj6)*(x12183)))+(((cj6)*(r21)*(x12191)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r12)*(x12186)*(x12189)))+(((x12184)*(x12193)))+(((IkReal(-1.00000000000000))*(x12186)*(x12188)*(x12191)))+(((x12185)*(x12193)))+(((sj0)*(x12194)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12186)*(x12191)))+(cj2)+(((IkReal(-1.00000000000000))*(x12186)*(x12195)))+(((IkReal(-1.00000000000000))*(r00)*(x12187)*(x12192)))+(((r02)*(sj0)*(x12189)))+(((cj0)*(r10)*(x12192)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x12187)*(x12189)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12187)*(x12191)))+(((IkReal(-1.00000000000000))*(x12187)*(x12195)))+(((r10)*(sj0)*(x12192)))+(((IkReal(-1.00000000000000))*(x12186)*(x12194)))+(((IkReal(-1.00000000000000))*(r02)*(x12186)*(x12189)))+(((sj1)*(sj2)))+(((cj0)*(r00)*(x12192)))+(((IkReal(-1.00000000000000))*(x12187)*(x12188)*(x12191)))+(((IkReal(-1.00000000000000))*(x12185)*(x12186)*(x12191)))+(((IkReal(-1.00000000000000))*(x12184)*(x12186)*(x12191)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 ) +{ +continue; +} +} + +{ +IkReal dummyeval[1]; +IkReal gconst4; +gconst4=IKsign((((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2)))))); +dummyeval[0]=(((sj1)*(sj1))+((((cj1)*(cj1))*((cj2)*(cj2))))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +IkReal x12196=(cj1)*(cj1); +IkReal x12197=(sj1)*(sj1); +dummyeval[0]=((((cj2)*(x12196)))+(((cj2)*(x12197)))); +dummyeval[1]=((x12196)+(x12197)); +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[2]; +dummyeval[0]=sj2; +dummyeval[1]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 || IKabs(dummyeval[1]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x12198=((cj5)*(sj4)); +IkReal x12199=((IkReal(1.00000000000000))*(sj6)); +IkReal x12200=((r10)*(sj0)); +IkReal x12201=((sj4)*(sj5)); +IkReal x12202=((cj4)*(cj5)); +IkReal x12203=((IkReal(1.00000000000000))*(r02)); +IkReal x12204=((IkReal(0.374290000000000))*(cj0)); +IkReal x12205=((cj5)*(r12)); +IkReal x12206=((cj6)*(sj5)); +IkReal x12207=((cj0)*(r11)); +IkReal x12208=((cj5)*(sj0)); +IkReal x12209=((r20)*(sj6)); +IkReal x12210=((IkReal(1.00000000000000))*(sj0)); +IkReal x12211=((IkReal(1.00000000000000))*(cj6)); +IkReal x12212=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12213=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12214=((sj5)*(sj6)); +IkReal x12215=((cj0)*(r10)); +IkReal x12216=((cj4)*(cj6)); +IkReal x12217=((cj0)*(r01)); +IkReal x12218=((cj0)*(r00)); +IkReal x12219=((cj6)*(r21)); +IkReal x12220=((IkReal(0.374290000000000))*(sj0)); +IkReal x12221=((IkReal(0.374290000000000))*(sj5)); +IkReal x12222=((cj6)*(r11)); +IkReal x12223=((sj0)*(sj4)); +IkReal x12224=((cj4)*(sj5)); +IkReal x12225=((cj4)*(sj6)); +IkReal x12226=((IkReal(1.00000000000000))*(cj0)); +IkReal x12227=((r02)*(sj0)); +IkReal x12228=((r00)*(sj0)*(sj6)); +IkReal x12229=((cj6)*(r01)*(sj0)); +IkReal x12230=((r00)*(x12216)); +IkReal x12231=((r12)*(x12226)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x12225)))+(((x12198)*(x12219)))+(((r22)*(x12201)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12211)))+(((x12198)*(x12209)))); +evalcond[2]=((((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x12212)*(x12219)))+(((IkReal(-1.00000000000000))*(r22)*(x12213)))+(((IkReal(0.374290000000000))*(r21)*(x12206)))+(pz)+(((x12209)*(x12221)))+(((IkReal(0.0690000000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(x12209)*(x12212)))); +evalcond[3]=((((cj0)*(x12205)))+(((r01)*(sj0)*(x12206)))+(((IkReal(-1.00000000000000))*(sj5)*(x12199)*(x12215)))+(((IkReal(-1.00000000000000))*(x12206)*(x12207)))+(((r00)*(sj0)*(x12214)))+(((IkReal(-1.00000000000000))*(x12203)*(x12208)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(cj4)*(x12199)*(x12207)))+(((IkReal(-1.00000000000000))*(x12201)*(x12231)))+(((x12198)*(x12228)))+(((IkReal(-1.00000000000000))*(x12198)*(x12207)*(x12211)))+(((x12198)*(x12229)))+(((r01)*(sj0)*(x12225)))+(((x12215)*(x12216)))+(((IkReal(-1.00000000000000))*(x12198)*(x12199)*(x12215)))+(((x12201)*(x12227)))+(((IkReal(-1.00000000000000))*(x12210)*(x12230)))); +evalcond[5]=((((cj6)*(r00)*(x12223)))+(((x12202)*(x12228)))+(((IkReal(-1.00000000000000))*(x12199)*(x12202)*(x12215)))+(((IkReal(-1.00000000000000))*(r01)*(x12199)*(x12223)))+(((IkReal(-1.00000000000000))*(sj4)*(x12211)*(x12215)))+(((IkReal(-1.00000000000000))*(x12202)*(x12207)*(x12211)))+(((sj4)*(sj6)*(x12207)))+(((IkReal(-1.00000000000000))*(x12224)*(x12231)))+(((x12202)*(x12229)))+(((x12224)*(x12227)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x12198)*(x12199)*(x12218)))+(((x12216)*(x12218)))+(((IkReal(-1.00000000000000))*(x12198)*(x12210)*(x12222)))+(((IkReal(-1.00000000000000))*(cj4)*(x12199)*(x12217)))+(((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x12199)))+(((x12200)*(x12216)))+(((IkReal(-1.00000000000000))*(x12198)*(x12199)*(x12200)))+(((IkReal(-1.00000000000000))*(x12198)*(x12211)*(x12217)))+(((IkReal(-1.00000000000000))*(cj0)*(x12201)*(x12203)))+(((IkReal(-1.00000000000000))*(r12)*(x12201)*(x12210)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x12213)*(x12227)))+(((sj6)*(x12212)*(x12215)))+(((r00)*(x12214)*(x12220)))+(((IkReal(-1.00000000000000))*(r11)*(x12204)*(x12206)))+(((IkReal(-0.374290000000000))*(r02)*(x12208)))+(((x12204)*(x12205)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12208)))+(((cj0)*(r12)*(x12213)))+(((IkReal(-1.00000000000000))*(r10)*(x12204)*(x12214)))+(((cj6)*(x12207)*(x12212)))+(((IkReal(-1.00000000000000))*(py)*(x12226)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x12208)))+(((r01)*(x12206)*(x12220)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((cj5)*(r02)*(x12204)))+(((cj0)*(r02)*(x12213)))+(((IkReal(-0.0690000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r01)*(x12204)*(x12206)))+(((sj6)*(x12212)*(x12218)))+(((cj6)*(x12212)*(x12217)))+(((IkReal(-1.00000000000000))*(r00)*(x12204)*(x12214)))+(((IkReal(0.0100000000000000))*(x12208)*(x12222)))+(((x12205)*(x12220)))+(((IkReal(-1.00000000000000))*(px)*(x12226)))+(((r12)*(sj0)*(x12213)))+(((sj6)*(x12200)*(x12212)))+(((IkReal(-0.374290000000000))*(x12200)*(x12214)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(r11)*(x12206)*(x12220)))+(((IkReal(-1.00000000000000))*(py)*(x12210)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst5; +gconst5=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst6; +gconst6=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12232=((sj5)*(sj6)); +IkReal x12233=((IkReal(1.00000000000000))*(sj0)); +IkReal x12234=((cj5)*(r12)); +IkReal x12235=((cj0)*(r00)); +IkReal x12236=((cj0)*(cj1)); +IkReal x12237=((cj6)*(sj5)); +IkReal x12238=((cj5)*(r02)); +IkReal x12239=((IkReal(1.00000000000000))*(cj1)); +IkReal x12240=((sj0)*(sj1)); +IkReal x12241=((cj0)*(sj1)); +IkReal x12242=((cj5)*(r22)); +if( IKabs(((gconst6)*(((((r01)*(x12237)*(x12241)))+(((cj1)*(r20)*(x12232)))+(((r11)*(x12237)*(x12240)))+(((r10)*(x12232)*(x12240)))+(((IkReal(-1.00000000000000))*(x12239)*(x12242)))+(((IkReal(-1.00000000000000))*(x12238)*(x12241)))+(((IkReal(-1.00000000000000))*(sj1)*(x12233)*(x12234)))+(((sj1)*(x12232)*(x12235)))+(((cj1)*(r21)*(x12237))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst6)*(((((IkReal(-1.00000000000000))*(cj1)*(r10)*(x12232)*(x12233)))+(((IkReal(-1.00000000000000))*(x12232)*(x12235)*(x12239)))+(((x12236)*(x12238)))+(((IkReal(-1.00000000000000))*(r01)*(x12236)*(x12237)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x12233)*(x12237)))+(((r21)*(sj1)*(x12237)))+(((IkReal(-1.00000000000000))*(sj1)*(x12242)))+(((cj1)*(sj0)*(x12234)))+(((r20)*(sj1)*(x12232))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst6)*(((((r01)*(x12237)*(x12241)))+(((cj1)*(r20)*(x12232)))+(((r11)*(x12237)*(x12240)))+(((r10)*(x12232)*(x12240)))+(((IkReal(-1.00000000000000))*(x12239)*(x12242)))+(((IkReal(-1.00000000000000))*(x12238)*(x12241)))+(((IkReal(-1.00000000000000))*(sj1)*(x12233)*(x12234)))+(((sj1)*(x12232)*(x12235)))+(((cj1)*(r21)*(x12237)))))), ((gconst6)*(((((IkReal(-1.00000000000000))*(cj1)*(r10)*(x12232)*(x12233)))+(((IkReal(-1.00000000000000))*(x12232)*(x12235)*(x12239)))+(((x12236)*(x12238)))+(((IkReal(-1.00000000000000))*(r01)*(x12236)*(x12237)))+(((IkReal(-1.00000000000000))*(cj1)*(r11)*(x12233)*(x12237)))+(((r21)*(sj1)*(x12237)))+(((IkReal(-1.00000000000000))*(sj1)*(x12242)))+(((cj1)*(sj0)*(x12234)))+(((r20)*(sj1)*(x12232))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12243=IKcos(j3); +IkReal x12244=IKsin(j3); +IkReal x12245=((IkReal(1.00000000000000))*(cj4)); +IkReal x12246=((sj0)*(sj5)); +IkReal x12247=((cj0)*(cj5)); +IkReal x12248=((cj6)*(r01)); +IkReal x12249=((r00)*(sj6)); +IkReal x12250=((cj6)*(r11)); +IkReal x12251=((cj5)*(sj0)); +IkReal x12252=((cj6)*(sj4)); +IkReal x12253=((sj4)*(sj6)); +IkReal x12254=((cj4)*(cj5)); +IkReal x12255=((cj6)*(r21)); +IkReal x12256=((r20)*(sj6)); +IkReal x12257=((r10)*(sj6)); +IkReal x12258=((cj1)*(x12243)); +IkReal x12259=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x12260=((IkReal(1.00000000000000))*(x12244)); +IkReal x12261=((IkReal(1.00000000000000))*(sj1)*(x12243)); +IkReal x12262=((cj1)*(x12260)); +IkReal x12263=((x12261)+(x12262)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12263)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12255)))+(((sj5)*(x12256)))); +evalcond[1]=((x12258)+(((x12254)*(x12255)))+(((x12254)*(x12256)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x12253)))+(((IkReal(-1.00000000000000))*(sj1)*(x12260)))+(((r20)*(x12252)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12249)*(x12259)))+(((r02)*(x12247)))+(((sj1)*(x12244)))+(((IkReal(-1.00000000000000))*(x12248)*(x12259)))+(((IkReal(-1.00000000000000))*(x12258)))+(((IkReal(-1.00000000000000))*(x12246)*(x12250)))+(((r12)*(x12251)))+(((IkReal(-1.00000000000000))*(x12246)*(x12257)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x12245)*(x12246)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12252)))+(((cj0)*(r01)*(x12253)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12252)))+(((IkReal(-1.00000000000000))*(x12245)*(x12247)*(x12249)))+(((IkReal(-1.00000000000000))*(x12245)*(x12250)*(x12251)))+(((IkReal(-1.00000000000000))*(x12263)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12245)))+(((IkReal(-1.00000000000000))*(x12245)*(x12247)*(x12248)))+(((r11)*(sj0)*(x12253)))+(((IkReal(-1.00000000000000))*(x12245)*(x12251)*(x12257)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12264=((sj1)*(sj5)); +IkReal x12265=((r20)*(sj6)); +IkReal x12266=((cj4)*(r22)); +IkReal x12267=((IkReal(1.00000000000000))*(cj1)); +IkReal x12268=((cj5)*(sj1)); +IkReal x12269=((cj6)*(r21)); +IkReal x12270=((cj1)*(sj5)); +IkReal x12271=((cj4)*(cj5)); +IkReal x12272=((cj6)*(r20)*(sj4)); +IkReal x12273=((r21)*(sj4)*(sj6)); +if( IKabs(((gconst5)*(((((cj4)*(x12265)*(x12268)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x12267)))+(((sj1)*(x12272)))+(((IkReal(-1.00000000000000))*(sj1)*(x12273)))+(((x12264)*(x12266)))+(((cj4)*(x12268)*(x12269)))+(((x12269)*(x12270)))+(((x12265)*(x12270))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst5)*(((((IkReal(-1.00000000000000))*(r22)*(x12268)))+(((x12264)*(x12269)))+(((IkReal(-1.00000000000000))*(x12267)*(x12272)))+(((cj1)*(x12273)))+(((IkReal(-1.00000000000000))*(x12267)*(x12269)*(x12271)))+(((IkReal(-1.00000000000000))*(x12265)*(x12267)*(x12271)))+(((x12264)*(x12265)))+(((IkReal(-1.00000000000000))*(sj5)*(x12266)*(x12267))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst5)*(((((cj4)*(x12265)*(x12268)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)*(x12267)))+(((sj1)*(x12272)))+(((IkReal(-1.00000000000000))*(sj1)*(x12273)))+(((x12264)*(x12266)))+(((cj4)*(x12268)*(x12269)))+(((x12269)*(x12270)))+(((x12265)*(x12270)))))), ((gconst5)*(((((IkReal(-1.00000000000000))*(r22)*(x12268)))+(((x12264)*(x12269)))+(((IkReal(-1.00000000000000))*(x12267)*(x12272)))+(((cj1)*(x12273)))+(((IkReal(-1.00000000000000))*(x12267)*(x12269)*(x12271)))+(((IkReal(-1.00000000000000))*(x12265)*(x12267)*(x12271)))+(((x12264)*(x12265)))+(((IkReal(-1.00000000000000))*(sj5)*(x12266)*(x12267))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12274=IKcos(j3); +IkReal x12275=IKsin(j3); +IkReal x12276=((IkReal(1.00000000000000))*(cj4)); +IkReal x12277=((sj0)*(sj5)); +IkReal x12278=((cj0)*(cj5)); +IkReal x12279=((cj6)*(r01)); +IkReal x12280=((r00)*(sj6)); +IkReal x12281=((cj6)*(r11)); +IkReal x12282=((cj5)*(sj0)); +IkReal x12283=((cj6)*(sj4)); +IkReal x12284=((sj4)*(sj6)); +IkReal x12285=((cj4)*(cj5)); +IkReal x12286=((cj6)*(r21)); +IkReal x12287=((r20)*(sj6)); +IkReal x12288=((r10)*(sj6)); +IkReal x12289=((cj1)*(x12274)); +IkReal x12290=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x12291=((IkReal(1.00000000000000))*(x12275)); +IkReal x12292=((IkReal(1.00000000000000))*(sj1)*(x12274)); +IkReal x12293=((cj1)*(x12291)); +IkReal x12294=((x12293)+(x12292)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12294)))+(((sj5)*(x12287)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12286)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x12284)))+(((x12285)*(x12286)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12283)))+(x12289)+(((x12285)*(x12287)))+(((IkReal(-1.00000000000000))*(sj1)*(x12291)))); +evalcond[2]=((((r12)*(x12282)))+(((IkReal(-1.00000000000000))*(x12279)*(x12290)))+(((IkReal(-1.00000000000000))*(x12289)))+(((r02)*(x12278)))+(((IkReal(-1.00000000000000))*(x12277)*(x12288)))+(((sj1)*(x12275)))+(((IkReal(-1.00000000000000))*(x12277)*(x12281)))+(((IkReal(-1.00000000000000))*(x12280)*(x12290)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12294)))+(((r11)*(sj0)*(x12284)))+(((IkReal(-1.00000000000000))*(r12)*(x12276)*(x12277)))+(((IkReal(-1.00000000000000))*(x12276)*(x12278)*(x12280)))+(((IkReal(-1.00000000000000))*(x12276)*(x12278)*(x12279)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12283)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12283)))+(((cj0)*(r01)*(x12284)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12276)))+(((IkReal(-1.00000000000000))*(x12276)*(x12282)*(x12288)))+(((IkReal(-1.00000000000000))*(x12276)*(x12281)*(x12282)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x12295=((cj5)*(sj4)); +IkReal x12296=((IkReal(1.00000000000000))*(sj6)); +IkReal x12297=((r10)*(sj0)); +IkReal x12298=((sj4)*(sj5)); +IkReal x12299=((cj4)*(cj5)); +IkReal x12300=((IkReal(1.00000000000000))*(r02)); +IkReal x12301=((IkReal(0.374290000000000))*(cj0)); +IkReal x12302=((cj5)*(r12)); +IkReal x12303=((cj6)*(sj5)); +IkReal x12304=((cj0)*(r11)); +IkReal x12305=((cj5)*(sj0)); +IkReal x12306=((r20)*(sj6)); +IkReal x12307=((IkReal(1.00000000000000))*(sj0)); +IkReal x12308=((IkReal(1.00000000000000))*(cj6)); +IkReal x12309=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12310=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12311=((sj5)*(sj6)); +IkReal x12312=((cj0)*(r10)); +IkReal x12313=((cj4)*(cj6)); +IkReal x12314=((cj0)*(r01)); +IkReal x12315=((cj0)*(r00)); +IkReal x12316=((cj6)*(r21)); +IkReal x12317=((IkReal(0.374290000000000))*(sj0)); +IkReal x12318=((IkReal(0.374290000000000))*(sj5)); +IkReal x12319=((cj6)*(r11)); +IkReal x12320=((sj0)*(sj4)); +IkReal x12321=((cj4)*(sj5)); +IkReal x12322=((cj4)*(sj6)); +IkReal x12323=((IkReal(1.00000000000000))*(cj0)); +IkReal x12324=((r02)*(sj0)); +IkReal x12325=((r00)*(sj0)*(sj6)); +IkReal x12326=((cj6)*(r01)*(sj0)); +IkReal x12327=((r00)*(x12313)); +IkReal x12328=((r12)*(x12323)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x12298)))+(((x12295)*(x12306)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12308)))+(((x12295)*(x12316)))+(((r21)*(x12322)))); +evalcond[2]=((((x12306)*(x12318)))+(((IkReal(-1.00000000000000))*(r22)*(x12310)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-0.0690000000000000))*(cj1)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x12306)*(x12309)))+(((IkReal(0.374290000000000))*(r21)*(x12303)))+(((IkReal(-1.00000000000000))*(x12309)*(x12316)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x12296)*(x12312)))+(((r01)*(sj0)*(x12303)))+(((IkReal(-1.00000000000000))*(x12303)*(x12304)))+(((cj0)*(x12302)))+(((r00)*(sj0)*(x12311)))+(((IkReal(-1.00000000000000))*(x12300)*(x12305)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((r01)*(sj0)*(x12322)))+(((IkReal(-1.00000000000000))*(x12295)*(x12304)*(x12308)))+(((IkReal(-1.00000000000000))*(x12298)*(x12328)))+(((IkReal(-1.00000000000000))*(x12295)*(x12296)*(x12312)))+(((IkReal(-1.00000000000000))*(cj4)*(x12296)*(x12304)))+(((x12298)*(x12324)))+(((x12312)*(x12313)))+(((x12295)*(x12326)))+(((IkReal(-1.00000000000000))*(x12307)*(x12327)))+(((x12295)*(x12325)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12296)*(x12299)*(x12312)))+(((IkReal(-1.00000000000000))*(r01)*(x12296)*(x12320)))+(((x12321)*(x12324)))+(((x12299)*(x12325)))+(((IkReal(-1.00000000000000))*(sj4)*(x12308)*(x12312)))+(((x12299)*(x12326)))+(((sj4)*(sj6)*(x12304)))+(((cj6)*(r00)*(x12320)))+(((IkReal(-1.00000000000000))*(x12321)*(x12328)))+(((IkReal(-1.00000000000000))*(x12299)*(x12304)*(x12308)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(r11)*(sj0)*(x12296)))+(((IkReal(-1.00000000000000))*(x12295)*(x12296)*(x12297)))+(((IkReal(-1.00000000000000))*(x12295)*(x12308)*(x12314)))+(((x12313)*(x12315)))+(((IkReal(-1.00000000000000))*(x12295)*(x12307)*(x12319)))+(((x12297)*(x12313)))+(((IkReal(-1.00000000000000))*(r12)*(x12298)*(x12307)))+(((IkReal(-1.00000000000000))*(x12295)*(x12296)*(x12315)))+(((IkReal(-1.00000000000000))*(cj4)*(x12296)*(x12314)))+(((IkReal(-1.00000000000000))*(cj0)*(x12298)*(x12300)))); +evalcond[7]=((((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12305)))+(((sj6)*(x12309)*(x12312)))+(((r01)*(x12303)*(x12317)))+(((cj6)*(x12304)*(x12309)))+(((x12301)*(x12302)))+(((IkReal(-1.00000000000000))*(r11)*(x12301)*(x12303)))+(((r00)*(x12311)*(x12317)))+(((IkReal(-0.0100000000000000))*(cj6)*(r01)*(x12305)))+(((IkReal(-1.00000000000000))*(x12310)*(x12324)))+(((IkReal(-1.00000000000000))*(r10)*(x12301)*(x12311)))+(((IkReal(-1.00000000000000))*(py)*(x12323)))+(((cj0)*(r12)*(x12310)))+(((px)*(sj0)))+(((IkReal(-0.374290000000000))*(r02)*(x12305)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x12323)))+(((cj0)*(r02)*(x12310)))+(((cj5)*(r02)*(x12301)))+(((IkReal(0.0690000000000000))*(sj1)))+(((x12302)*(x12317)))+(((sj6)*(x12309)*(x12315)))+(((r12)*(sj0)*(x12310)))+(((cj6)*(x12309)*(x12314)))+(((IkReal(-1.00000000000000))*(r00)*(x12301)*(x12311)))+(((IkReal(-0.374290000000000))*(x12297)*(x12311)))+(((IkReal(-1.00000000000000))*(py)*(x12307)))+(((IkReal(0.0100000000000000))*(x12305)*(x12319)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(r11)*(x12303)*(x12317)))+(((IkReal(-1.00000000000000))*(r01)*(x12301)*(x12303)))+(((sj6)*(x12297)*(x12309)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst7; +gconst7=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst8; +gconst8=IKsign((((cj1)*(cj1))+((sj1)*(sj1)))); +dummyeval[0]=(((cj1)*(cj1))+((sj1)*(sj1))); +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +continue; + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12329=((IkReal(1.00000000000000))*(sj0)); +IkReal x12330=((cj6)*(r21)); +IkReal x12331=((cj0)*(r00)); +IkReal x12332=((cj5)*(sj1)); +IkReal x12333=((r12)*(sj0)); +IkReal x12334=((cj1)*(cj5)); +IkReal x12335=((cj0)*(r02)); +IkReal x12336=((sj1)*(sj5)); +IkReal x12337=((cj6)*(r11)); +IkReal x12338=((cj1)*(sj5)); +IkReal x12339=((sj6)*(x12336)); +IkReal x12340=((IkReal(1.00000000000000))*(x12338)); +IkReal x12341=((cj0)*(cj6)*(r01)); +if( IKabs(((gconst8)*(((((x12332)*(x12335)))+(((IkReal(-1.00000000000000))*(r10)*(x12329)*(x12339)))+(((IkReal(-1.00000000000000))*(x12331)*(x12339)))+(((IkReal(-1.00000000000000))*(x12336)*(x12341)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x12340)))+(((IkReal(-1.00000000000000))*(x12329)*(x12336)*(x12337)))+(((r22)*(x12334)))+(((IkReal(-1.00000000000000))*(x12330)*(x12340)))+(((x12332)*(x12333))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst8)*(((((x12333)*(x12334)))+(((IkReal(-1.00000000000000))*(r22)*(x12332)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x12329)*(x12338)))+(((IkReal(-1.00000000000000))*(sj6)*(x12331)*(x12340)))+(((x12330)*(x12336)))+(((r20)*(x12339)))+(((IkReal(-1.00000000000000))*(x12329)*(x12337)*(x12338)))+(((x12334)*(x12335)))+(((IkReal(-1.00000000000000))*(x12340)*(x12341))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst8)*(((((x12332)*(x12335)))+(((IkReal(-1.00000000000000))*(r10)*(x12329)*(x12339)))+(((IkReal(-1.00000000000000))*(x12331)*(x12339)))+(((IkReal(-1.00000000000000))*(x12336)*(x12341)))+(((IkReal(-1.00000000000000))*(r20)*(sj6)*(x12340)))+(((IkReal(-1.00000000000000))*(x12329)*(x12336)*(x12337)))+(((r22)*(x12334)))+(((IkReal(-1.00000000000000))*(x12330)*(x12340)))+(((x12332)*(x12333)))))), ((gconst8)*(((((x12333)*(x12334)))+(((IkReal(-1.00000000000000))*(r22)*(x12332)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x12329)*(x12338)))+(((IkReal(-1.00000000000000))*(sj6)*(x12331)*(x12340)))+(((x12330)*(x12336)))+(((r20)*(x12339)))+(((IkReal(-1.00000000000000))*(x12329)*(x12337)*(x12338)))+(((x12334)*(x12335)))+(((IkReal(-1.00000000000000))*(x12340)*(x12341))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12342=IKsin(j3); +IkReal x12343=IKcos(j3); +IkReal x12344=((IkReal(1.00000000000000))*(cj4)); +IkReal x12345=((sj0)*(sj5)); +IkReal x12346=((cj0)*(cj5)); +IkReal x12347=((cj6)*(r01)); +IkReal x12348=((r00)*(sj6)); +IkReal x12349=((cj6)*(r11)); +IkReal x12350=((cj5)*(sj0)); +IkReal x12351=((cj6)*(sj4)); +IkReal x12352=((sj4)*(sj6)); +IkReal x12353=((cj4)*(cj5)); +IkReal x12354=((cj6)*(r21)); +IkReal x12355=((r20)*(sj6)); +IkReal x12356=((r10)*(sj6)); +IkReal x12357=((cj1)*(x12342)); +IkReal x12358=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x12359=((IkReal(1.00000000000000))*(x12343)); +IkReal x12360=((IkReal(1.00000000000000))*(sj1)*(x12342)); +IkReal x12361=((cj1)*(x12359)); +IkReal x12362=((x12361)+(x12360)); +evalcond[0]=((((sj5)*(x12355)))+(((sj5)*(x12354)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x12359)))+(x12357)); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x12352)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(x12362)))+(((x12353)*(x12354)))+(((r20)*(x12351)))+(((x12353)*(x12355)))); +evalcond[2]=((((r02)*(x12346)))+(((IkReal(-1.00000000000000))*(x12348)*(x12358)))+(((IkReal(-1.00000000000000))*(x12362)))+(((IkReal(-1.00000000000000))*(x12345)*(x12356)))+(((r12)*(x12350)))+(((IkReal(-1.00000000000000))*(x12347)*(x12358)))+(((IkReal(-1.00000000000000))*(x12345)*(x12349)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r12)*(x12344)*(x12345)))+(((sj1)*(x12343)))+(((IkReal(-1.00000000000000))*(x12357)))+(((IkReal(-1.00000000000000))*(x12344)*(x12349)*(x12350)))+(((IkReal(-1.00000000000000))*(x12344)*(x12346)*(x12348)))+(((IkReal(-1.00000000000000))*(x12344)*(x12346)*(x12347)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12344)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12351)))+(((r11)*(sj0)*(x12352)))+(((cj0)*(r01)*(x12352)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12351)))+(((IkReal(-1.00000000000000))*(x12344)*(x12350)*(x12356)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12363=((sj1)*(sj6)); +IkReal x12364=((r20)*(sj5)); +IkReal x12365=((IkReal(1.00000000000000))*(r21)); +IkReal x12366=((cj1)*(cj6)); +IkReal x12367=((r20)*(sj4)); +IkReal x12368=((cj6)*(sj1)); +IkReal x12369=((cj4)*(cj5)); +IkReal x12370=((cj1)*(sj6)); +IkReal x12371=((cj5)*(r22)); +IkReal x12372=((cj4)*(r22)*(sj5)); +if( IKabs(((gconst7)*(((((cj1)*(x12371)))+(((IkReal(-1.00000000000000))*(sj5)*(x12365)*(x12366)))+(((x12367)*(x12368)))+(((r21)*(x12368)*(x12369)))+(((sj1)*(x12372)))+(((r20)*(x12363)*(x12369)))+(((IkReal(-1.00000000000000))*(x12364)*(x12370)))+(((IkReal(-1.00000000000000))*(sj4)*(x12363)*(x12365))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst7)*(((((r20)*(x12369)*(x12370)))+(((r21)*(sj5)*(x12368)))+(((x12363)*(x12364)))+(((x12366)*(x12367)))+(((IkReal(-1.00000000000000))*(sj1)*(x12371)))+(((IkReal(-1.00000000000000))*(sj4)*(x12365)*(x12370)))+(((cj1)*(x12372)))+(((r21)*(x12366)*(x12369))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst7)*(((((cj1)*(x12371)))+(((IkReal(-1.00000000000000))*(sj5)*(x12365)*(x12366)))+(((x12367)*(x12368)))+(((r21)*(x12368)*(x12369)))+(((sj1)*(x12372)))+(((r20)*(x12363)*(x12369)))+(((IkReal(-1.00000000000000))*(x12364)*(x12370)))+(((IkReal(-1.00000000000000))*(sj4)*(x12363)*(x12365)))))), ((gconst7)*(((((r20)*(x12369)*(x12370)))+(((r21)*(sj5)*(x12368)))+(((x12363)*(x12364)))+(((x12366)*(x12367)))+(((IkReal(-1.00000000000000))*(sj1)*(x12371)))+(((IkReal(-1.00000000000000))*(sj4)*(x12365)*(x12370)))+(((cj1)*(x12372)))+(((r21)*(x12366)*(x12369))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12373=IKsin(j3); +IkReal x12374=IKcos(j3); +IkReal x12375=((IkReal(1.00000000000000))*(cj4)); +IkReal x12376=((sj0)*(sj5)); +IkReal x12377=((cj0)*(cj5)); +IkReal x12378=((cj6)*(r01)); +IkReal x12379=((r00)*(sj6)); +IkReal x12380=((cj6)*(r11)); +IkReal x12381=((cj5)*(sj0)); +IkReal x12382=((cj6)*(sj4)); +IkReal x12383=((sj4)*(sj6)); +IkReal x12384=((cj4)*(cj5)); +IkReal x12385=((cj6)*(r21)); +IkReal x12386=((r20)*(sj6)); +IkReal x12387=((r10)*(sj6)); +IkReal x12388=((cj1)*(x12373)); +IkReal x12389=((IkReal(1.00000000000000))*(cj0)*(sj5)); +IkReal x12390=((IkReal(1.00000000000000))*(x12374)); +IkReal x12391=((IkReal(1.00000000000000))*(sj1)*(x12373)); +IkReal x12392=((cj1)*(x12390)); +IkReal x12393=((x12391)+(x12392)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x12390)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(x12388)+(((sj5)*(x12386)))+(((sj5)*(x12385)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x12383)))+(((x12384)*(x12386)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12382)))+(((IkReal(-1.00000000000000))*(x12393)))+(((x12384)*(x12385)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12379)*(x12389)))+(((r12)*(x12381)))+(((IkReal(-1.00000000000000))*(x12376)*(x12380)))+(((r02)*(x12377)))+(((IkReal(-1.00000000000000))*(x12378)*(x12389)))+(((IkReal(-1.00000000000000))*(x12393)))+(((IkReal(-1.00000000000000))*(x12376)*(x12387)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12375)))+(((IkReal(-1.00000000000000))*(x12375)*(x12377)*(x12378)))+(((IkReal(-1.00000000000000))*(x12388)))+(((cj0)*(r01)*(x12383)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12382)))+(((IkReal(-1.00000000000000))*(x12375)*(x12377)*(x12379)))+(((IkReal(-1.00000000000000))*(x12375)*(x12381)*(x12387)))+(((r11)*(sj0)*(x12383)))+(((sj1)*(x12374)))+(((IkReal(-1.00000000000000))*(x12375)*(x12380)*(x12381)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12382)))+(((IkReal(-1.00000000000000))*(r12)*(x12375)*(x12376)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x12394=((IkReal(1.00000000000000))*(cj0)); +IkReal x12395=((cj4)*(sj6)); +IkReal x12396=((sj0)*(sj4)); +IkReal x12397=((cj5)*(sj6)); +IkReal x12398=((sj4)*(sj5)); +IkReal x12399=((r12)*(sj5)); +IkReal x12400=((IkReal(0.374290000000000))*(cj5)); +IkReal x12401=((r02)*(sj0)); +IkReal x12402=((cj6)*(r21)); +IkReal x12403=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12404=((IkReal(1.00000000000000))*(sj0)); +IkReal x12405=((cj0)*(r10)); +IkReal x12406=((cj4)*(cj6)); +IkReal x12407=((r00)*(sj0)); +IkReal x12408=((IkReal(0.374290000000000))*(sj5)); +IkReal x12409=((cj0)*(r00)); +IkReal x12410=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12411=((cj0)*(r02)); +IkReal x12412=((cj5)*(sj4)); +IkReal x12413=((cj6)*(r01)); +IkReal x12414=((cj6)*(r11)); +IkReal x12415=((r10)*(sj0)); +IkReal x12416=((sj6)*(x12408)); +IkReal x12417=((cj0)*(cj6)*(x12408)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(sj2)))+(((x12402)*(x12412)))+(((r22)*(x12398)))+(((r20)*(sj4)*(x12397)))+(((r21)*(x12395)))+(((IkReal(-1.00000000000000))*(r20)*(x12406)))); +evalcond[2]=((((x12402)*(x12408)))+(((IkReal(-1.00000000000000))*(r22)*(x12410)))+(((IkReal(-1.00000000000000))*(r22)*(x12400)))+(pz)+(((IkReal(-1.00000000000000))*(x12402)*(x12403)))+(((IkReal(0.0690000000000000))*(cj2)))+(((r20)*(x12416)))+(((IkReal(-0.0100000000000000))*(r20)*(x12397)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12394)*(x12397)))+(((r02)*(sj5)*(x12396)))+(((IkReal(-1.00000000000000))*(r00)*(x12404)*(x12406)))+(cj2)+(((cj5)*(x12396)*(x12413)))+(((r01)*(sj0)*(x12395)))+(((IkReal(-1.00000000000000))*(r12)*(x12394)*(x12398)))+(((IkReal(-1.00000000000000))*(x12394)*(x12412)*(x12414)))+(((r00)*(x12396)*(x12397)))+(((x12405)*(x12406)))+(((IkReal(-1.00000000000000))*(r11)*(x12394)*(x12395)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x12394)*(x12412)*(x12413)))+(((IkReal(-1.00000000000000))*(x12396)*(x12399)))+(((IkReal(-1.00000000000000))*(r01)*(x12394)*(x12395)))+(((IkReal(-1.00000000000000))*(r02)*(x12394)*(x12398)))+(((x12406)*(x12409)))+(((IkReal(-1.00000000000000))*(r11)*(x12395)*(x12404)))+(((IkReal(-1.00000000000000))*(cj5)*(x12396)*(x12414)))+(((x12406)*(x12415)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12394)*(x12397)))+(((IkReal(-1.00000000000000))*(r10)*(x12396)*(x12397)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(py)*(x12394)))+(((IkReal(0.0100000000000000))*(x12397)*(x12405)))+(((IkReal(-0.0100000000000000))*(x12397)*(x12407)))+(((x12407)*(x12416)))+(((IkReal(-1.00000000000000))*(x12401)*(x12410)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(-1.00000000000000))*(x12405)*(x12416)))+(((IkReal(-1.00000000000000))*(cj0)*(x12408)*(x12414)))+(((IkReal(-1.00000000000000))*(x12400)*(x12401)))+(((cj0)*(x12403)*(x12414)))+(((sj0)*(x12408)*(x12413)))+(((IkReal(0.0100000000000000))*(cj0)*(x12399)))+(((cj0)*(r12)*(x12400)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(sj0)*(x12403)*(x12413)))); +evalcond[6]=((IkReal(0.433420000000000))+(((IkReal(-1.00000000000000))*(x12415)*(x12416)))+(((cj0)*(x12403)*(x12413)))+(((IkReal(-1.00000000000000))*(px)*(x12394)))+(((IkReal(0.0100000000000000))*(sj0)*(x12399)))+(((IkReal(-1.00000000000000))*(x12409)*(x12416)))+(((x12410)*(x12411)))+(((sj0)*(x12403)*(x12414)))+(((IkReal(0.0100000000000000))*(x12397)*(x12415)))+(((IkReal(0.0100000000000000))*(x12397)*(x12409)))+(((IkReal(-1.00000000000000))*(sj0)*(x12408)*(x12414)))+(((IkReal(-1.00000000000000))*(py)*(x12404)))+(((x12400)*(x12411)))+(((IkReal(-1.00000000000000))*(cj0)*(x12408)*(x12413)))+(((r12)*(sj0)*(x12400)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst9; +gconst9=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x12418=((cj5)*(sj4)); +IkReal x12419=((IkReal(1.00000000000000))*(sj6)); +IkReal x12420=((r10)*(sj0)); +IkReal x12421=((sj4)*(sj5)); +IkReal x12422=((cj5)*(cj6)); +IkReal x12423=((r01)*(sj0)); +IkReal x12424=((IkReal(1.00000000000000))*(r02)); +IkReal x12425=((IkReal(0.374290000000000))*(cj0)); +IkReal x12426=((cj5)*(r12)); +IkReal x12427=((cj6)*(sj5)); +IkReal x12428=((cj0)*(r11)); +IkReal x12429=((cj5)*(sj0)); +IkReal x12430=((r20)*(sj6)); +IkReal x12431=((IkReal(1.00000000000000))*(sj0)); +IkReal x12432=((cj4)*(cj5)); +IkReal x12433=((IkReal(1.00000000000000))*(cj6)); +IkReal x12434=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12435=((sj5)*(sj6)); +IkReal x12436=((cj0)*(r10)); +IkReal x12437=((cj4)*(cj6)); +IkReal x12438=((cj0)*(r01)); +IkReal x12439=((IkReal(1.00000000000000))*(cj4)); +IkReal x12440=((cj0)*(r00)); +IkReal x12441=((IkReal(0.374290000000000))*(sj0)); +IkReal x12442=((cj0)*(r12)); +IkReal x12443=((IkReal(0.374290000000000))*(sj5)); +IkReal x12444=((cj4)*(sj6)); +IkReal x12445=((IkReal(1.00000000000000))*(cj0)); +IkReal x12446=((r02)*(sj0)); +IkReal x12447=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12448=((r11)*(sj0)); +IkReal x12449=((r00)*(sj0)*(sj6)); +IkReal x12450=((r00)*(x12437)); +IkReal x12451=((sj6)*(x12447)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x12418)*(x12430)))+(((cj6)*(r21)*(x12418)))+(((r21)*(x12444)))+(((r22)*(x12421)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12433)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x12430)*(x12447)))+(((IkReal(0.374290000000000))*(r21)*(x12427)))+(((IkReal(-0.0100000000000000))*(r21)*(x12422)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((x12430)*(x12443)))+(((IkReal(-1.00000000000000))*(r22)*(x12434)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12424)*(x12429)))+(((IkReal(-1.00000000000000))*(sj5)*(x12419)*(x12436)))+(((IkReal(-1.00000000000000))*(x12427)*(x12428)))+(((cj0)*(x12426)))+(((r00)*(sj0)*(x12435)))+(((x12423)*(x12427)))); +evalcond[4]=((IkReal(1.00000000000000))+(((cj6)*(x12418)*(x12423)))+(((IkReal(-1.00000000000000))*(x12421)*(x12442)))+(((x12421)*(x12446)))+(((IkReal(-1.00000000000000))*(x12418)*(x12428)*(x12433)))+(((x12436)*(x12437)))+(((IkReal(-1.00000000000000))*(cj4)*(x12419)*(x12428)))+(((IkReal(-1.00000000000000))*(x12418)*(x12419)*(x12436)))+(((IkReal(-1.00000000000000))*(x12431)*(x12450)))+(((x12418)*(x12449)))+(((x12423)*(x12444)))); +evalcond[5]=((((cj4)*(sj5)*(x12446)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((cj4)*(x12422)*(x12423)))+(((r00)*(x12429)*(x12444)))+(((IkReal(-1.00000000000000))*(sj4)*(x12433)*(x12436)))+(((IkReal(-1.00000000000000))*(sj4)*(x12419)*(x12423)))+(((sj4)*(sj6)*(x12428)))+(((IkReal(-1.00000000000000))*(x12419)*(x12432)*(x12436)))+(((IkReal(-1.00000000000000))*(sj5)*(x12439)*(x12442)))+(((IkReal(-1.00000000000000))*(x12422)*(x12428)*(x12439)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12418)*(x12431)))+(((IkReal(-1.00000000000000))*(x12418)*(x12419)*(x12420)))+(((IkReal(-1.00000000000000))*(x12418)*(x12419)*(x12440)))+(((IkReal(-1.00000000000000))*(r12)*(x12421)*(x12431)))+(((x12420)*(x12437)))+(((IkReal(-1.00000000000000))*(cj4)*(x12419)*(x12448)))+(((IkReal(-1.00000000000000))*(cj4)*(x12419)*(x12438)))+(((IkReal(-1.00000000000000))*(cj0)*(x12421)*(x12424)))+(((x12437)*(x12440)))+(((IkReal(-1.00000000000000))*(x12418)*(x12433)*(x12438)))); +evalcond[7]=((((x12436)*(x12451)))+(((x12425)*(x12426)))+(((IkReal(-1.00000000000000))*(py)*(x12445)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12429)))+(((IkReal(-1.00000000000000))*(r10)*(x12425)*(x12435)))+(((IkReal(-0.0100000000000000))*(x12422)*(x12423)))+(((IkReal(-0.374290000000000))*(r02)*(x12429)))+(((IkReal(-1.00000000000000))*(x12434)*(x12446)))+(((IkReal(-1.00000000000000))*(r11)*(x12425)*(x12427)))+(((r00)*(x12435)*(x12441)))+(((x12434)*(x12442)))+(((IkReal(0.0100000000000000))*(x12422)*(x12428)))+(((px)*(sj0)))+(((IkReal(0.374290000000000))*(x12423)*(x12427)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x12440)*(x12451)))+(((IkReal(-1.00000000000000))*(px)*(x12445)))+(((cj0)*(r02)*(x12434)))+(((IkReal(-1.00000000000000))*(py)*(x12431)))+(((cj5)*(r02)*(x12425)))+(((x12420)*(x12451)))+(((IkReal(-1.00000000000000))*(r11)*(x12427)*(x12441)))+(((IkReal(0.0100000000000000))*(x12422)*(x12448)))+(((r12)*(sj0)*(x12434)))+(((IkReal(-1.00000000000000))*(r01)*(x12425)*(x12427)))+(((IkReal(-0.374290000000000))*(x12420)*(x12435)))+(((x12426)*(x12441)))+(((IkReal(-1.00000000000000))*(r00)*(x12425)*(x12435)))+(((IkReal(0.0100000000000000))*(x12422)*(x12438)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12452=((IkReal(1.00000000000000))*(cj4)); +IkReal x12453=((cj6)*(r21)); +IkReal x12454=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12454)))+(((sj5)*(x12453))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12453)))+(((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12452)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12454)))+(((sj5)*(x12453)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12453)))+(((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12452)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12454)))+(((sj5)*(x12453)))), ((((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12453)))+(((IkReal(-1.00000000000000))*(cj5)*(x12452)*(x12454)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12452)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12455=IKcos(j3); +IkReal x12456=((IkReal(1.00000000000000))*(cj4)); +IkReal x12457=((sj0)*(sj5)); +IkReal x12458=((cj0)*(cj5)); +IkReal x12459=((cj6)*(r01)); +IkReal x12460=((r00)*(sj6)); +IkReal x12461=((cj6)*(r11)); +IkReal x12462=((cj5)*(sj0)); +IkReal x12463=((cj6)*(sj4)); +IkReal x12464=((sj4)*(sj6)); +IkReal x12465=((cj4)*(cj5)); +IkReal x12466=((cj6)*(r21)); +IkReal x12467=((r20)*(sj6)); +IkReal x12468=((r10)*(sj6)); +IkReal x12469=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x12470=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x12466)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12467)))+(((IkReal(-1.00000000000000))*(x12469)))); +evalcond[1]=((((x12465)*(x12467)))+(((x12465)*(x12466)))+(((IkReal(-1.00000000000000))*(r21)*(x12464)))+(((r20)*(x12463)))+(((cj4)*(r22)*(sj5)))+(x12455)); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12457)*(x12468)))+(((IkReal(-1.00000000000000))*(x12459)*(x12470)))+(((IkReal(-1.00000000000000))*(x12457)*(x12461)))+(((IkReal(-1.00000000000000))*(x12460)*(x12470)))+(((r02)*(x12458)))+(((r12)*(x12462)))+(((IkReal(-1.00000000000000))*(x12455)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12456)*(x12461)*(x12462)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12463)))+(((IkReal(-1.00000000000000))*(x12456)*(x12458)*(x12460)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12463)))+(((IkReal(-1.00000000000000))*(r12)*(x12456)*(x12457)))+(((cj0)*(r01)*(x12464)))+(((IkReal(-1.00000000000000))*(x12469)))+(((IkReal(-1.00000000000000))*(x12456)*(x12462)*(x12468)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12456)))+(((r11)*(sj0)*(x12464)))+(((IkReal(-1.00000000000000))*(x12456)*(x12458)*(x12459)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12471=((cj5)*(sj4)); +IkReal x12472=((IkReal(1.00000000000000))*(sj6)); +IkReal x12473=((r10)*(sj0)); +IkReal x12474=((sj4)*(sj5)); +IkReal x12475=((cj5)*(cj6)); +IkReal x12476=((r01)*(sj0)); +IkReal x12477=((IkReal(1.00000000000000))*(r02)); +IkReal x12478=((IkReal(0.374290000000000))*(cj0)); +IkReal x12479=((cj5)*(r12)); +IkReal x12480=((cj6)*(sj5)); +IkReal x12481=((cj0)*(r11)); +IkReal x12482=((cj5)*(sj0)); +IkReal x12483=((r20)*(sj6)); +IkReal x12484=((IkReal(1.00000000000000))*(sj0)); +IkReal x12485=((cj4)*(cj5)); +IkReal x12486=((IkReal(1.00000000000000))*(cj6)); +IkReal x12487=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12488=((sj5)*(sj6)); +IkReal x12489=((cj0)*(r10)); +IkReal x12490=((cj4)*(cj6)); +IkReal x12491=((cj0)*(r01)); +IkReal x12492=((IkReal(1.00000000000000))*(cj4)); +IkReal x12493=((cj0)*(r00)); +IkReal x12494=((IkReal(0.374290000000000))*(sj0)); +IkReal x12495=((cj0)*(r12)); +IkReal x12496=((IkReal(0.374290000000000))*(sj5)); +IkReal x12497=((cj4)*(sj6)); +IkReal x12498=((IkReal(1.00000000000000))*(cj0)); +IkReal x12499=((r02)*(sj0)); +IkReal x12500=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12501=((r11)*(sj0)); +IkReal x12502=((r00)*(sj0)*(sj6)); +IkReal x12503=((r00)*(x12490)); +IkReal x12504=((sj6)*(x12500)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x12497)))+(((r22)*(x12474)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12486)))+(((x12471)*(x12483)))+(((cj6)*(r21)*(x12471)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r22)*(x12487)))+(((x12483)*(x12496)))+(((IkReal(0.374290000000000))*(r21)*(x12480)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-0.0100000000000000))*(r21)*(x12475)))+(pz)+(((IkReal(-1.00000000000000))*(x12483)*(x12500)))); +evalcond[3]=((((r00)*(sj0)*(x12488)))+(((cj0)*(x12479)))+(((x12476)*(x12480)))+(((IkReal(-1.00000000000000))*(sj5)*(x12472)*(x12489)))+(((IkReal(-1.00000000000000))*(x12480)*(x12481)))+(((IkReal(-1.00000000000000))*(x12477)*(x12482)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((x12476)*(x12497)))+(((cj6)*(x12471)*(x12476)))+(((x12471)*(x12502)))+(((x12474)*(x12499)))+(((x12489)*(x12490)))+(((IkReal(-1.00000000000000))*(x12471)*(x12481)*(x12486)))+(((IkReal(-1.00000000000000))*(x12471)*(x12472)*(x12489)))+(((IkReal(-1.00000000000000))*(x12474)*(x12495)))+(((IkReal(-1.00000000000000))*(cj4)*(x12472)*(x12481)))+(((IkReal(-1.00000000000000))*(x12484)*(x12503)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x12486)*(x12489)))+(((cj4)*(sj5)*(x12499)))+(((cj4)*(x12475)*(x12476)))+(((IkReal(-1.00000000000000))*(sj5)*(x12492)*(x12495)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((sj4)*(sj6)*(x12481)))+(((IkReal(-1.00000000000000))*(x12475)*(x12481)*(x12492)))+(((IkReal(-1.00000000000000))*(x12472)*(x12485)*(x12489)))+(((IkReal(-1.00000000000000))*(sj4)*(x12472)*(x12476)))+(((r00)*(x12482)*(x12497)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x12472)*(x12501)))+(((IkReal(-1.00000000000000))*(cj4)*(x12472)*(x12491)))+(((IkReal(-1.00000000000000))*(x12471)*(x12486)*(x12491)))+(((IkReal(-1.00000000000000))*(cj0)*(x12474)*(x12477)))+(((IkReal(-1.00000000000000))*(x12471)*(x12472)*(x12493)))+(((IkReal(-1.00000000000000))*(r12)*(x12474)*(x12484)))+(((x12473)*(x12490)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12471)*(x12484)))+(((IkReal(-1.00000000000000))*(x12471)*(x12472)*(x12473)))+(((x12490)*(x12493)))); +evalcond[7]=((((x12489)*(x12504)))+(((x12478)*(x12479)))+(((IkReal(0.374290000000000))*(x12476)*(x12480)))+(((r00)*(x12488)*(x12494)))+(((IkReal(-0.374290000000000))*(r02)*(x12482)))+(((IkReal(-0.0100000000000000))*(x12475)*(x12476)))+(((IkReal(-1.00000000000000))*(r10)*(x12478)*(x12488)))+(((IkReal(-1.00000000000000))*(py)*(x12498)))+(((IkReal(-1.00000000000000))*(x12487)*(x12499)))+(((x12487)*(x12495)))+(((IkReal(-1.00000000000000))*(r11)*(x12478)*(x12480)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(x12475)*(x12481)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12482)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(-0.374290000000000))*(x12473)*(x12488)))+(((x12473)*(x12504)))+(((IkReal(0.0100000000000000))*(x12475)*(x12501)))+(((IkReal(0.0100000000000000))*(x12475)*(x12491)))+(((IkReal(-1.00000000000000))*(r11)*(x12480)*(x12494)))+(((IkReal(-1.00000000000000))*(px)*(x12498)))+(((IkReal(-1.00000000000000))*(r00)*(x12478)*(x12488)))+(((r12)*(sj0)*(x12487)))+(((IkReal(-1.00000000000000))*(py)*(x12484)))+(((cj5)*(r02)*(x12478)))+(((x12479)*(x12494)))+(((IkReal(-1.00000000000000))*(r01)*(x12478)*(x12480)))+(((x12493)*(x12504)))+(((cj0)*(r02)*(x12487)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12505=((IkReal(1.00000000000000))*(r21)); +IkReal x12506=((cj4)*(cj5)); +IkReal x12507=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x12507)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12505)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12506)))+(((x12506)*(x12507)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12505))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x12507)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12505)))+(((cj5)*(r22)))))+IKsqr(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12506)))+(((x12506)*(x12507)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12505)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x12507)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12505)))+(((cj5)*(r22)))), ((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12506)))+(((x12506)*(x12507)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12505))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12508=IKsin(j3); +IkReal x12509=((IkReal(1.00000000000000))*(cj4)); +IkReal x12510=((sj0)*(sj5)); +IkReal x12511=((cj0)*(cj5)); +IkReal x12512=((cj6)*(r01)); +IkReal x12513=((r00)*(sj6)); +IkReal x12514=((cj6)*(r11)); +IkReal x12515=((cj5)*(sj0)); +IkReal x12516=((cj6)*(sj4)); +IkReal x12517=((sj4)*(sj6)); +IkReal x12518=((cj4)*(cj5)); +IkReal x12519=((cj6)*(r21)); +IkReal x12520=((r20)*(sj6)); +IkReal x12521=((r10)*(sj6)); +IkReal x12522=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x12523=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((sj5)*(x12520)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12519)))+(x12508)); +evalcond[1]=((((r20)*(x12516)))+(((x12518)*(x12520)))+(((cj4)*(r22)*(sj5)))+(((x12518)*(x12519)))+(((IkReal(-1.00000000000000))*(x12522)))+(((IkReal(-1.00000000000000))*(r21)*(x12517)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12512)*(x12523)))+(((r12)*(x12515)))+(((IkReal(-1.00000000000000))*(x12510)*(x12514)))+(((IkReal(-1.00000000000000))*(x12513)*(x12523)))+(((IkReal(-1.00000000000000))*(x12510)*(x12521)))+(((IkReal(-1.00000000000000))*(x12522)))+(((r02)*(x12511)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12516)))+(((r11)*(sj0)*(x12517)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12509)))+(((IkReal(-1.00000000000000))*(x12509)*(x12515)*(x12521)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12516)))+(((IkReal(-1.00000000000000))*(x12509)*(x12511)*(x12512)))+(((IkReal(-1.00000000000000))*(x12508)))+(((IkReal(-1.00000000000000))*(x12509)*(x12514)*(x12515)))+(((cj0)*(r01)*(x12517)))+(((IkReal(-1.00000000000000))*(r12)*(x12509)*(x12510)))+(((IkReal(-1.00000000000000))*(x12509)*(x12511)*(x12513)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12524=((IkReal(1.00000000000000))*(cj0)); +IkReal x12525=((cj4)*(sj6)); +IkReal x12526=((sj0)*(sj4)); +IkReal x12527=((cj5)*(sj6)); +IkReal x12528=((sj4)*(sj5)); +IkReal x12529=((r12)*(sj5)); +IkReal x12530=((IkReal(0.374290000000000))*(cj5)); +IkReal x12531=((r02)*(sj0)); +IkReal x12532=((r20)*(sj4)); +IkReal x12533=((IkReal(1.00000000000000))*(sj0)); +IkReal x12534=((IkReal(1.00000000000000))*(cj5)); +IkReal x12535=((cj0)*(r10)); +IkReal x12536=((cj4)*(cj6)); +IkReal x12537=((r00)*(sj0)); +IkReal x12538=((cj6)*(r21)); +IkReal x12539=((IkReal(0.374290000000000))*(sj5)); +IkReal x12540=((cj0)*(r00)); +IkReal x12541=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12542=((cj0)*(r02)); +IkReal x12543=((cj5)*(sj4)); +IkReal x12544=((cj6)*(r01)); +IkReal x12545=((cj6)*(r11)); +IkReal x12546=((r01)*(sj0)); +IkReal x12547=((r10)*(sj0)); +IkReal x12548=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x12549=((sj6)*(x12539)); +IkReal x12550=((cj0)*(cj6)*(x12539)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x12538)))+(((IkReal(-1.00000000000000))*(r22)*(x12534)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((r22)*(x12528)))+(((x12527)*(x12532)))+(((r21)*(x12525)))+(((x12538)*(x12543)))+(((IkReal(-1.00000000000000))*(r20)*(x12536)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x12530)))+(((r20)*(x12549)))+(((IkReal(-1.00000000000000))*(r22)*(x12541)))+(((IkReal(-0.0100000000000000))*(cj5)*(x12538)))+(pz)+(((IkReal(-0.0100000000000000))*(r20)*(x12527)))+(((x12538)*(x12539)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x12532)))+(((cj4)*(r22)*(sj5)))+(((cj5)*(r21)*(x12536)))+(((cj5)*(r20)*(x12525)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12524)*(x12543)*(x12545)))+(((IkReal(-1.00000000000000))*(r00)*(x12533)*(x12536)))+(((x12525)*(x12546)))+(((x12535)*(x12536)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12524)*(x12527)))+(((cj5)*(x12526)*(x12544)))+(((r00)*(x12526)*(x12527)))+(((IkReal(-1.00000000000000))*(r11)*(x12524)*(x12525)))+(((IkReal(-1.00000000000000))*(r12)*(x12524)*(x12528)))+(((r02)*(sj5)*(x12526)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(r02)*(x12524)*(x12528)))+(((IkReal(-1.00000000000000))*(r11)*(x12525)*(x12533)))+(((x12536)*(x12540)))+(((IkReal(-1.00000000000000))*(r10)*(x12526)*(x12527)))+(((IkReal(-1.00000000000000))*(r01)*(x12524)*(x12525)))+(((x12536)*(x12547)))+(((IkReal(-1.00000000000000))*(x12526)*(x12529)))+(((IkReal(-1.00000000000000))*(x12524)*(x12543)*(x12544)))+(((IkReal(-1.00000000000000))*(x12526)*(x12534)*(x12545)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12524)*(x12527)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((sj0)*(x12539)*(x12544)))+(((x12537)*(x12549)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12545)))+(((cj0)*(r12)*(x12530)))+(((IkReal(-1.00000000000000))*(py)*(x12524)))+(((IkReal(0.0100000000000000))*(x12527)*(x12535)))+(((IkReal(-1.00000000000000))*(x12531)*(x12541)))+(((IkReal(-0.0100000000000000))*(x12527)*(x12537)))+(((IkReal(-1.00000000000000))*(x12530)*(x12531)))+(((IkReal(-1.00000000000000))*(x12535)*(x12549)))+(((IkReal(-1.00000000000000))*(cj0)*(x12539)*(x12545)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x12544)))+(((IkReal(0.0100000000000000))*(cj0)*(x12529)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(0.433420000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12544)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x12545)))+(((r12)*(sj0)*(x12530)))+(((IkReal(0.0100000000000000))*(x12527)*(x12540)))+(((IkReal(-1.00000000000000))*(x12540)*(x12549)))+(((x12530)*(x12542)))+(((IkReal(-1.00000000000000))*(sj0)*(x12539)*(x12545)))+(((IkReal(-1.00000000000000))*(cj0)*(x12539)*(x12544)))+(((x12541)*(x12542)))+(((IkReal(-1.00000000000000))*(x12547)*(x12549)))+(((IkReal(0.0100000000000000))*(sj0)*(x12529)))+(((IkReal(-1.00000000000000))*(py)*(x12533)))+(((IkReal(-1.00000000000000))*(px)*(x12524)))+(((IkReal(0.0100000000000000))*(x12527)*(x12547)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12551=((cj0)*(cj5)); +IkReal x12552=((IkReal(1.00000000000000))*(cj0)); +IkReal x12553=((cj6)*(r11)); +IkReal x12554=((r10)*(sj6)); +IkReal x12555=((cj5)*(sj0)); +IkReal x12556=((r00)*(sj5)*(sj6)); +IkReal x12557=((cj6)*(r01)*(sj5)); +IkReal x12558=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((sj0)*(x12557)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12553)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12554)))+(((sj0)*(x12556)))+(((IkReal(-1.00000000000000))*(r02)*(x12555)))+(((r12)*(x12551))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r12)*(x12555)))+(((r02)*(x12551)))+(((IkReal(-1.00000000000000))*(x12552)*(x12557)))+(((IkReal(-1.00000000000000))*(x12553)*(x12558)))+(((IkReal(-1.00000000000000))*(x12552)*(x12556)))+(((IkReal(-1.00000000000000))*(x12554)*(x12558))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x12557)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12553)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12554)))+(((sj0)*(x12556)))+(((IkReal(-1.00000000000000))*(r02)*(x12555)))+(((r12)*(x12551)))))+IKsqr(((((r12)*(x12555)))+(((r02)*(x12551)))+(((IkReal(-1.00000000000000))*(x12552)*(x12557)))+(((IkReal(-1.00000000000000))*(x12553)*(x12558)))+(((IkReal(-1.00000000000000))*(x12552)*(x12556)))+(((IkReal(-1.00000000000000))*(x12554)*(x12558)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x12557)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12553)))+(((IkReal(-1.00000000000000))*(sj5)*(x12552)*(x12554)))+(((sj0)*(x12556)))+(((IkReal(-1.00000000000000))*(r02)*(x12555)))+(((r12)*(x12551)))), ((((r12)*(x12555)))+(((r02)*(x12551)))+(((IkReal(-1.00000000000000))*(x12552)*(x12557)))+(((IkReal(-1.00000000000000))*(x12553)*(x12558)))+(((IkReal(-1.00000000000000))*(x12552)*(x12556)))+(((IkReal(-1.00000000000000))*(x12554)*(x12558))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12559=IKcos(j3); +IkReal x12560=((sj0)*(sj5)); +IkReal x12561=((r00)*(sj6)); +IkReal x12562=((cj6)*(sj0)); +IkReal x12563=((IkReal(1.00000000000000))*(cj4)); +IkReal x12564=((r00)*(sj4)); +IkReal x12565=((cj0)*(cj5)); +IkReal x12566=((cj5)*(sj0)); +IkReal x12567=((cj6)*(r11)); +IkReal x12568=((r10)*(sj6)); +IkReal x12569=((cj0)*(sj5)); +IkReal x12570=((r10)*(sj4)); +IkReal x12571=((IkReal(1.00000000000000))*(IKsin(j3))); +IkReal x12572=((cj4)*(cj5)*(r01)); +IkReal x12573=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x12574=((cj0)*(sj4)*(sj6)); +IkReal x12575=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12567)*(x12569)))+(((x12560)*(x12561)))+(((cj6)*(r01)*(x12560)))+(((IkReal(-1.00000000000000))*(r02)*(x12566)))+(((IkReal(-1.00000000000000))*(x12568)*(x12569)))+(((IkReal(-1.00000000000000))*(x12571)))+(((r12)*(x12565)))); +evalcond[1]=((((r02)*(x12565)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x12569)))+(((IkReal(-1.00000000000000))*(x12561)*(x12569)))+(((r12)*(x12566)))+(((IkReal(-1.00000000000000))*(x12560)*(x12568)))+(((IkReal(-1.00000000000000))*(x12560)*(x12567)))+(((IkReal(-1.00000000000000))*(x12559)))); +evalcond[2]=((x12559)+(((IkReal(-1.00000000000000))*(x12563)*(x12565)*(x12567)))+(((x12562)*(x12564)))+(((cj4)*(x12561)*(x12566)))+(((IkReal(-1.00000000000000))*(x12563)*(x12565)*(x12568)))+(((x12562)*(x12572)))+(((IkReal(-1.00000000000000))*(x12570)*(x12573)))+(((r11)*(x12574)))+(((IkReal(-1.00000000000000))*(r01)*(x12575)))+(((cj4)*(r02)*(x12560)))+(((IkReal(-1.00000000000000))*(r12)*(x12563)*(x12569)))); +evalcond[3]=((((r01)*(x12574)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12562)*(x12563)))+(((IkReal(-1.00000000000000))*(x12561)*(x12563)*(x12565)))+(((IkReal(-1.00000000000000))*(r12)*(x12560)*(x12563)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x12563)*(x12565)))+(((IkReal(-1.00000000000000))*(x12563)*(x12566)*(x12568)))+(((IkReal(-1.00000000000000))*(x12562)*(x12570)))+(((IkReal(-1.00000000000000))*(r02)*(x12563)*(x12569)))+(((IkReal(-1.00000000000000))*(x12571)))+(((IkReal(-1.00000000000000))*(x12564)*(x12573)))+(((r11)*(x12575)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12576=((IkReal(1.00000000000000))*(cj0)); +IkReal x12577=((cj4)*(sj6)); +IkReal x12578=((sj0)*(sj4)); +IkReal x12579=((cj5)*(sj6)); +IkReal x12580=((sj4)*(sj5)); +IkReal x12581=((r12)*(sj5)); +IkReal x12582=((IkReal(0.374290000000000))*(cj5)); +IkReal x12583=((r02)*(sj0)); +IkReal x12584=((r20)*(sj4)); +IkReal x12585=((IkReal(1.00000000000000))*(sj0)); +IkReal x12586=((IkReal(1.00000000000000))*(cj5)); +IkReal x12587=((cj0)*(r10)); +IkReal x12588=((cj4)*(cj6)); +IkReal x12589=((r00)*(sj0)); +IkReal x12590=((cj6)*(r21)); +IkReal x12591=((IkReal(0.374290000000000))*(sj5)); +IkReal x12592=((cj0)*(r00)); +IkReal x12593=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12594=((cj0)*(r02)); +IkReal x12595=((cj5)*(sj4)); +IkReal x12596=((cj6)*(r01)); +IkReal x12597=((cj6)*(r11)); +IkReal x12598=((r01)*(sj0)); +IkReal x12599=((r10)*(sj0)); +IkReal x12600=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x12601=((sj6)*(x12591)); +IkReal x12602=((cj0)*(cj6)*(x12591)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x12586)))+(((sj5)*(x12590)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(1.00000000000000))+(((x12579)*(x12584)))+(((r21)*(x12577)))+(((r22)*(x12580)))+(((x12590)*(x12595)))+(((IkReal(-1.00000000000000))*(r20)*(x12588)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x12593)))+(((IkReal(-0.0100000000000000))*(cj5)*(x12590)))+(((IkReal(-0.0100000000000000))*(r20)*(x12579)))+(((x12590)*(x12591)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x12582)))+(((r20)*(x12601)))); +evalcond[4]=((((cj5)*(r20)*(x12577)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(x12584)))+(((cj5)*(r21)*(x12588)))+(((cj4)*(r22)*(sj5)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12576)*(x12579)))+(((IkReal(-1.00000000000000))*(r00)*(x12585)*(x12588)))+(((r02)*(sj5)*(x12578)))+(((r00)*(x12578)*(x12579)))+(((cj5)*(x12578)*(x12596)))+(((IkReal(-1.00000000000000))*(x12576)*(x12595)*(x12597)))+(((x12587)*(x12588)))+(((IkReal(-1.00000000000000))*(r12)*(x12576)*(x12580)))+(((IkReal(-1.00000000000000))*(r11)*(x12576)*(x12577)))+(((x12577)*(x12598)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x12576)*(x12595)*(x12596)))+(((IkReal(-1.00000000000000))*(r11)*(x12577)*(x12585)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12576)*(x12579)))+(((x12588)*(x12599)))+(((IkReal(-1.00000000000000))*(r01)*(x12576)*(x12577)))+(((IkReal(-1.00000000000000))*(x12578)*(x12581)))+(((IkReal(-1.00000000000000))*(x12578)*(x12586)*(x12597)))+(((x12588)*(x12592)))+(((IkReal(-1.00000000000000))*(r10)*(x12578)*(x12579)))+(((IkReal(-1.00000000000000))*(r02)*(x12576)*(x12580)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((IkReal(-0.0100000000000000))*(x12579)*(x12589)))+(((x12589)*(x12601)))+(((IkReal(-1.00000000000000))*(x12582)*(x12583)))+(((IkReal(-1.00000000000000))*(cj0)*(x12591)*(x12597)))+(((IkReal(-1.00000000000000))*(x12583)*(x12593)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12597)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x12596)))+(((sj0)*(x12591)*(x12596)))+(((IkReal(-1.00000000000000))*(x12587)*(x12601)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(x12579)*(x12587)))+(((cj0)*(r12)*(x12582)))+(((IkReal(-1.00000000000000))*(py)*(x12576)))+(((IkReal(0.0100000000000000))*(cj0)*(x12581)))); +evalcond[8]=((IkReal(0.433420000000000))+(((x12582)*(x12594)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x12597)))+(((x12593)*(x12594)))+(((IkReal(-1.00000000000000))*(sj0)*(x12591)*(x12597)))+(((IkReal(-1.00000000000000))*(px)*(x12576)))+(((r12)*(sj0)*(x12582)))+(((IkReal(-1.00000000000000))*(cj0)*(x12591)*(x12596)))+(((IkReal(-1.00000000000000))*(py)*(x12585)))+(((IkReal(0.0100000000000000))*(sj0)*(x12581)))+(((IkReal(0.0100000000000000))*(x12579)*(x12592)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12596)))+(((IkReal(-1.00000000000000))*(x12599)*(x12601)))+(((IkReal(-1.00000000000000))*(x12592)*(x12601)))+(((IkReal(0.0100000000000000))*(x12579)*(x12599)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12603=((cj5)*(r02)); +IkReal x12604=((cj0)*(sj5)); +IkReal x12605=((r10)*(sj6)); +IkReal x12606=((IkReal(1.00000000000000))*(cj6)); +IkReal x12607=((sj0)*(sj5)); +IkReal x12608=((cj5)*(r12)); +IkReal x12609=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((x12604)*(x12605)))+(((IkReal(-1.00000000000000))*(x12607)*(x12609)))+(((IkReal(-1.00000000000000))*(cj0)*(x12608)))+(((cj6)*(r11)*(x12604)))+(((sj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r01)*(x12606)*(x12607))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r11)*(x12606)*(x12607)))+(((IkReal(-1.00000000000000))*(x12604)*(x12609)))+(((sj0)*(x12608)))+(((IkReal(-1.00000000000000))*(r01)*(x12604)*(x12606)))+(((IkReal(-1.00000000000000))*(x12605)*(x12607))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x12604)*(x12605)))+(((IkReal(-1.00000000000000))*(x12607)*(x12609)))+(((IkReal(-1.00000000000000))*(cj0)*(x12608)))+(((cj6)*(r11)*(x12604)))+(((sj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r01)*(x12606)*(x12607)))))+IKsqr(((((cj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r11)*(x12606)*(x12607)))+(((IkReal(-1.00000000000000))*(x12604)*(x12609)))+(((sj0)*(x12608)))+(((IkReal(-1.00000000000000))*(r01)*(x12604)*(x12606)))+(((IkReal(-1.00000000000000))*(x12605)*(x12607)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x12604)*(x12605)))+(((IkReal(-1.00000000000000))*(x12607)*(x12609)))+(((IkReal(-1.00000000000000))*(cj0)*(x12608)))+(((cj6)*(r11)*(x12604)))+(((sj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r01)*(x12606)*(x12607)))), ((((cj0)*(x12603)))+(((IkReal(-1.00000000000000))*(r11)*(x12606)*(x12607)))+(((IkReal(-1.00000000000000))*(x12604)*(x12609)))+(((sj0)*(x12608)))+(((IkReal(-1.00000000000000))*(r01)*(x12604)*(x12606)))+(((IkReal(-1.00000000000000))*(x12605)*(x12607))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12610=IKsin(j3); +IkReal x12611=((sj0)*(sj5)); +IkReal x12612=((r00)*(sj6)); +IkReal x12613=((IkReal(1.00000000000000))*(cj4)); +IkReal x12614=((cj6)*(sj0)); +IkReal x12615=((r00)*(sj4)); +IkReal x12616=((cj0)*(cj5)); +IkReal x12617=((cj6)*(r01)); +IkReal x12618=((cj5)*(sj0)); +IkReal x12619=((cj0)*(sj5)); +IkReal x12620=((cj6)*(r11)); +IkReal x12621=((r10)*(sj6)); +IkReal x12622=((r10)*(sj4)); +IkReal x12623=((IkReal(1.00000000000000))*(IKcos(j3))); +IkReal x12624=((cj0)*(sj4)*(sj6)); +IkReal x12625=((sj0)*(sj4)*(sj6)); +IkReal x12626=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12619)*(x12621)))+(((IkReal(-1.00000000000000))*(r02)*(x12618)))+(((x12611)*(x12612)))+(((IkReal(-1.00000000000000))*(x12619)*(x12620)))+(((x12611)*(x12617)))+(((r12)*(x12616)))+(x12610)); +evalcond[1]=((((IkReal(-1.00000000000000))*(x12617)*(x12619)))+(((r12)*(x12618)))+(((IkReal(-1.00000000000000))*(x12612)*(x12619)))+(((IkReal(-1.00000000000000))*(x12623)))+(((r02)*(x12616)))+(((IkReal(-1.00000000000000))*(x12611)*(x12620)))+(((IkReal(-1.00000000000000))*(x12611)*(x12621)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x12613)*(x12619)))+(((IkReal(-1.00000000000000))*(x12622)*(x12626)))+(((IkReal(-1.00000000000000))*(x12623)))+(((x12614)*(x12615)))+(((r11)*(x12624)))+(((cj4)*(cj5)*(r01)*(x12614)))+(((cj4)*(x12612)*(x12618)))+(((IkReal(-1.00000000000000))*(r01)*(x12625)))+(((cj4)*(r02)*(x12611)))+(((IkReal(-1.00000000000000))*(x12613)*(x12616)*(x12620)))+(((IkReal(-1.00000000000000))*(x12613)*(x12616)*(x12621)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12615)*(x12626)))+(((IkReal(-1.00000000000000))*(x12614)*(x12622)))+(((IkReal(-1.00000000000000))*(x12613)*(x12618)*(x12621)))+(((IkReal(-1.00000000000000))*(x12610)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12613)*(x12614)))+(((IkReal(-1.00000000000000))*(x12613)*(x12616)*(x12617)))+(((IkReal(-1.00000000000000))*(x12612)*(x12613)*(x12616)))+(((r11)*(x12625)))+(((IkReal(-1.00000000000000))*(r12)*(x12611)*(x12613)))+(((r01)*(x12624)))+(((IkReal(-1.00000000000000))*(r02)*(x12613)*(x12619)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12627=((cj0)*(cj5)); +IkReal x12628=((IkReal(1.00000000000000))*(cj0)); +IkReal x12629=((cj6)*(r11)); +IkReal x12630=((r10)*(sj6)); +IkReal x12631=((cj5)*(sj0)); +IkReal x12632=((r00)*(sj5)*(sj6)); +IkReal x12633=((cj6)*(r01)*(sj5)); +IkReal x12634=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x12627)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12629)))+(((IkReal(-1.00000000000000))*(r02)*(x12631)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12630)))+(((sj0)*(x12632)))+(((sj0)*(x12633))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r12)*(x12631)))+(((IkReal(-1.00000000000000))*(x12630)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12633)))+(((IkReal(-1.00000000000000))*(x12629)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12632)))+(((r02)*(x12627))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x12627)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12629)))+(((IkReal(-1.00000000000000))*(r02)*(x12631)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12630)))+(((sj0)*(x12632)))+(((sj0)*(x12633)))))))+IKsqr(((((r12)*(x12631)))+(((IkReal(-1.00000000000000))*(x12630)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12633)))+(((IkReal(-1.00000000000000))*(x12629)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12632)))+(((r02)*(x12627)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((r12)*(x12627)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12629)))+(((IkReal(-1.00000000000000))*(r02)*(x12631)))+(((IkReal(-1.00000000000000))*(sj5)*(x12628)*(x12630)))+(((sj0)*(x12632)))+(((sj0)*(x12633)))))), ((((r12)*(x12631)))+(((IkReal(-1.00000000000000))*(x12630)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12633)))+(((IkReal(-1.00000000000000))*(x12629)*(x12634)))+(((IkReal(-1.00000000000000))*(x12628)*(x12632)))+(((r02)*(x12627))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12635=IKsin(j3); +IkReal x12636=IKcos(j3); +IkReal x12637=((sj0)*(sj5)); +IkReal x12638=((r00)*(sj6)); +IkReal x12639=((IkReal(1.00000000000000))*(cj4)); +IkReal x12640=((cj6)*(r01)); +IkReal x12641=((cj0)*(cj5)); +IkReal x12642=((cj5)*(sj0)); +IkReal x12643=((cj6)*(r11)); +IkReal x12644=((cj0)*(sj5)); +IkReal x12645=((cj6)*(sj4)); +IkReal x12646=((cj4)*(cj5)); +IkReal x12647=((cj6)*(r21)); +IkReal x12648=((r20)*(sj6)); +IkReal x12649=((r10)*(sj6)); +IkReal x12650=((IkReal(1.00000000000000))*(cj0)); +IkReal x12651=((IkReal(1.00000000000000))*(x12635)); +IkReal x12652=((cj0)*(sj4)*(sj6)); +IkReal x12653=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12648)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x12651)))+(((sj5)*(x12647)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12646)*(x12647)))+(((cj4)*(r22)*(sj5)))+(((x12646)*(x12648)))+(((cj2)*(x12636)))+(((r20)*(x12645)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x12651)))+(((IkReal(-1.00000000000000))*(r02)*(x12642)))+(((x12637)*(x12640)))+(((x12637)*(x12638)))+(((r12)*(x12641)))+(((IkReal(-1.00000000000000))*(x12644)*(x12649)))+(((IkReal(-1.00000000000000))*(x12643)*(x12644)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12636)))+(((r02)*(x12641)))+(((r12)*(x12642)))+(((IkReal(-1.00000000000000))*(x12637)*(x12649)))+(((IkReal(-1.00000000000000))*(x12638)*(x12644)))+(((IkReal(-1.00000000000000))*(x12640)*(x12644)))+(((IkReal(-1.00000000000000))*(x12637)*(x12643)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x12653)))+(((sj2)*(x12636)))+(((cj4)*(r02)*(x12637)))+(((cj4)*(x12638)*(x12642)))+(((IkReal(-1.00000000000000))*(r12)*(x12639)*(x12644)))+(((r11)*(x12652)))+(((IkReal(-1.00000000000000))*(x12639)*(x12641)*(x12649)))+(((cj4)*(x12640)*(x12642)))+(((IkReal(-1.00000000000000))*(r10)*(x12645)*(x12650)))+(((IkReal(-1.00000000000000))*(x12639)*(x12641)*(x12643)))+(((r00)*(sj0)*(x12645)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12639)*(x12640)*(x12641)))+(((IkReal(-1.00000000000000))*(x12639)*(x12642)*(x12649)))+(((IkReal(-1.00000000000000))*(x12651)))+(((r01)*(x12652)))+(((IkReal(-1.00000000000000))*(x12638)*(x12639)*(x12641)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12645)))+(((IkReal(-1.00000000000000))*(r00)*(x12645)*(x12650)))+(((IkReal(-1.00000000000000))*(r02)*(x12639)*(x12644)))+(((r11)*(x12653)))+(((IkReal(-1.00000000000000))*(r12)*(x12637)*(x12639)))+(((IkReal(-1.00000000000000))*(x12639)*(x12642)*(x12643)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12654=((sj5)*(sj6)); +IkReal x12655=((IkReal(1.00000000000000))*(cj6)*(sj5)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x12654))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12654)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12654))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x12654)))))))+IKsqr(((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12654)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12654)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((cj6)*(r21)*(sj5)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x12654)))))), ((((cj0)*(cj5)*(r02)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12654)))+(((cj5)*(r12)*(sj0)))+(((IkReal(-1.00000000000000))*(r11)*(sj0)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r01)*(x12655)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12654))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12656=IKsin(j3); +IkReal x12657=IKcos(j3); +IkReal x12658=((sj0)*(sj5)); +IkReal x12659=((r00)*(sj6)); +IkReal x12660=((IkReal(1.00000000000000))*(cj4)); +IkReal x12661=((cj6)*(r01)); +IkReal x12662=((cj0)*(cj5)); +IkReal x12663=((cj5)*(sj0)); +IkReal x12664=((cj6)*(r11)); +IkReal x12665=((cj0)*(sj5)); +IkReal x12666=((cj6)*(sj4)); +IkReal x12667=((cj4)*(cj5)); +IkReal x12668=((cj6)*(r21)); +IkReal x12669=((r20)*(sj6)); +IkReal x12670=((r10)*(sj6)); +IkReal x12671=((IkReal(1.00000000000000))*(cj0)); +IkReal x12672=((IkReal(1.00000000000000))*(x12656)); +IkReal x12673=((cj0)*(sj4)*(sj6)); +IkReal x12674=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj2)*(x12672)))+(((sj5)*(x12669)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12668)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj2)*(x12657)))+(((x12667)*(x12668)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12666)))+(((x12667)*(x12669)))); +evalcond[2]=((((x12658)*(x12661)))+(((IkReal(-1.00000000000000))*(x12664)*(x12665)))+(((x12658)*(x12659)))+(((IkReal(-1.00000000000000))*(sj2)*(x12672)))+(((r12)*(x12662)))+(((IkReal(-1.00000000000000))*(r02)*(x12663)))+(((IkReal(-1.00000000000000))*(x12665)*(x12670)))); +evalcond[3]=((((r02)*(x12662)))+(((IkReal(-1.00000000000000))*(x12659)*(x12665)))+(((IkReal(-1.00000000000000))*(x12658)*(x12670)))+(((IkReal(-1.00000000000000))*(x12658)*(x12664)))+(((r12)*(x12663)))+(((IkReal(-1.00000000000000))*(x12661)*(x12665)))+(((IkReal(-1.00000000000000))*(x12657)))); +evalcond[4]=((((sj2)*(x12657)))+(((cj4)*(r02)*(x12658)))+(((cj4)*(x12661)*(x12663)))+(((r11)*(x12673)))+(((cj4)*(x12659)*(x12663)))+(((IkReal(-1.00000000000000))*(r01)*(x12674)))+(((IkReal(-1.00000000000000))*(x12660)*(x12662)*(x12664)))+(((r00)*(sj0)*(x12666)))+(((IkReal(-1.00000000000000))*(r10)*(x12666)*(x12671)))+(((IkReal(-1.00000000000000))*(x12660)*(x12662)*(x12670)))+(((IkReal(-1.00000000000000))*(r12)*(x12660)*(x12665)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12672)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12666)))+(((IkReal(-1.00000000000000))*(x12660)*(x12661)*(x12662)))+(((r11)*(x12674)))+(((IkReal(-1.00000000000000))*(x12660)*(x12663)*(x12664)))+(((IkReal(-1.00000000000000))*(r12)*(x12658)*(x12660)))+(((r01)*(x12673)))+(((IkReal(-1.00000000000000))*(r00)*(x12666)*(x12671)))+(((IkReal(-1.00000000000000))*(x12660)*(x12663)*(x12670)))+(((IkReal(-1.00000000000000))*(r02)*(x12660)*(x12665)))+(((IkReal(-1.00000000000000))*(x12659)*(x12660)*(x12662)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12675=((IkReal(1.00000000000000))*(cj4)); +IkReal x12676=((cj6)*(r21)); +IkReal x12677=((r20)*(sj6)); +if( IKabs(((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12677)))+(((sj5)*(x12676))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x12675)*(x12677)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x12675)*(x12676)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12675)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12677)))+(((sj5)*(x12676)))))), ((gconst9)*(((((IkReal(-1.00000000000000))*(cj5)*(x12675)*(x12677)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x12675)*(x12676)))+(((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12675)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12678=IKsin(j3); +IkReal x12679=IKcos(j3); +IkReal x12680=((sj0)*(sj5)); +IkReal x12681=((r00)*(sj6)); +IkReal x12682=((IkReal(1.00000000000000))*(cj4)); +IkReal x12683=((cj6)*(r01)); +IkReal x12684=((cj0)*(cj5)); +IkReal x12685=((cj5)*(sj0)); +IkReal x12686=((cj6)*(r11)); +IkReal x12687=((cj0)*(sj5)); +IkReal x12688=((cj6)*(sj4)); +IkReal x12689=((cj4)*(cj5)); +IkReal x12690=((cj6)*(r21)); +IkReal x12691=((r20)*(sj6)); +IkReal x12692=((r10)*(sj6)); +IkReal x12693=((IkReal(1.00000000000000))*(cj0)); +IkReal x12694=((IkReal(1.00000000000000))*(x12678)); +IkReal x12695=((cj0)*(sj4)*(sj6)); +IkReal x12696=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12691)))+(((sj5)*(x12690)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj2)*(x12694)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x12689)*(x12690)))+(((x12689)*(x12691)))+(((cj2)*(x12679)))+(((r20)*(x12688)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x12694)))+(((x12680)*(x12683)))+(((r12)*(x12684)))+(((x12680)*(x12681)))+(((IkReal(-1.00000000000000))*(x12686)*(x12687)))+(((IkReal(-1.00000000000000))*(r02)*(x12685)))+(((IkReal(-1.00000000000000))*(x12687)*(x12692)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12679)))+(((r12)*(x12685)))+(((r02)*(x12684)))+(((IkReal(-1.00000000000000))*(x12680)*(x12692)))+(((IkReal(-1.00000000000000))*(x12681)*(x12687)))+(((IkReal(-1.00000000000000))*(x12680)*(x12686)))+(((IkReal(-1.00000000000000))*(x12683)*(x12687)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x12682)*(x12684)*(x12692)))+(((cj4)*(x12683)*(x12685)))+(((r00)*(sj0)*(x12688)))+(((r11)*(x12695)))+(((cj4)*(x12681)*(x12685)))+(((cj4)*(r02)*(x12680)))+(((sj2)*(x12679)))+(((IkReal(-1.00000000000000))*(r10)*(x12688)*(x12693)))+(((IkReal(-1.00000000000000))*(r01)*(x12696)))+(((IkReal(-1.00000000000000))*(r12)*(x12682)*(x12687)))+(((IkReal(-1.00000000000000))*(x12682)*(x12684)*(x12686)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12681)*(x12682)*(x12684)))+(((IkReal(-1.00000000000000))*(x12682)*(x12685)*(x12692)))+(((r01)*(x12695)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12688)))+(((IkReal(-1.00000000000000))*(x12682)*(x12685)*(x12686)))+(((IkReal(-1.00000000000000))*(r12)*(x12680)*(x12682)))+(((r11)*(x12696)))+(((IkReal(-1.00000000000000))*(r02)*(x12682)*(x12687)))+(((IkReal(-1.00000000000000))*(x12694)))+(((IkReal(-1.00000000000000))*(x12682)*(x12683)*(x12684)))+(((IkReal(-1.00000000000000))*(r00)*(x12688)*(x12693)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x12697=((IkReal(1.00000000000000))*(cj0)); +IkReal x12698=((cj4)*(sj6)); +IkReal x12699=((sj0)*(sj4)); +IkReal x12700=((cj5)*(sj6)); +IkReal x12701=((sj4)*(sj5)); +IkReal x12702=((r12)*(sj5)); +IkReal x12703=((IkReal(0.374290000000000))*(cj5)); +IkReal x12704=((r02)*(sj0)); +IkReal x12705=((IkReal(1.00000000000000))*(sj0)); +IkReal x12706=((cj0)*(r10)); +IkReal x12707=((cj4)*(cj6)); +IkReal x12708=((r00)*(sj0)); +IkReal x12709=((cj6)*(r21)); +IkReal x12710=((IkReal(0.374290000000000))*(sj5)); +IkReal x12711=((cj0)*(r00)); +IkReal x12712=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12713=((cj0)*(r02)); +IkReal x12714=((cj5)*(sj4)); +IkReal x12715=((cj6)*(r01)); +IkReal x12716=((cj6)*(r11)); +IkReal x12717=((r01)*(sj0)); +IkReal x12718=((r10)*(sj0)); +IkReal x12719=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x12720=((sj6)*(x12710)); +IkReal x12721=((cj0)*(cj6)*(x12710)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j1, IkReal(6.28318530717959)))); +evalcond[1]=((sj2)+(((IkReal(-1.00000000000000))*(r20)*(x12707)))+(((r22)*(x12701)))+(((x12709)*(x12714)))+(((r21)*(x12698)))+(((r20)*(sj4)*(x12700)))); +evalcond[2]=((((r20)*(x12720)))+(((IkReal(-1.00000000000000))*(r22)*(x12712)))+(((IkReal(-0.0100000000000000))*(r20)*(x12700)))+(((IkReal(-0.0690000000000000))*(cj2)))+(((IkReal(-0.0100000000000000))*(cj5)*(x12709)))+(((IkReal(-1.00000000000000))*(r22)*(x12703)))+(pz)+(((x12709)*(x12710)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r11)*(x12697)*(x12698)))+(((x12698)*(x12717)))+(((IkReal(-1.00000000000000))*(r12)*(x12697)*(x12701)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12697)*(x12700)))+(((x12706)*(x12707)))+(((IkReal(-1.00000000000000))*(r00)*(x12705)*(x12707)))+(((r00)*(x12699)*(x12700)))+(((IkReal(-1.00000000000000))*(x12697)*(x12714)*(x12716)))+(cj2)+(((r02)*(sj5)*(x12699)))+(((cj5)*(x12699)*(x12715)))); +evalcond[4]=((((x12707)*(x12711)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12697)*(x12700)))+(((IkReal(-1.00000000000000))*(x12699)*(x12702)))+(((x12707)*(x12718)))+(((IkReal(-1.00000000000000))*(r02)*(x12697)*(x12701)))+(((IkReal(-1.00000000000000))*(cj5)*(x12699)*(x12716)))+(((IkReal(-1.00000000000000))*(r01)*(x12697)*(x12698)))+(((IkReal(-1.00000000000000))*(r11)*(x12698)*(x12705)))+(((IkReal(-1.00000000000000))*(x12697)*(x12714)*(x12715)))+(((IkReal(-1.00000000000000))*(r10)*(x12699)*(x12700)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(py)*(x12697)))+(((IkReal(-1.00000000000000))*(x12706)*(x12720)))+(((IkReal(-1.00000000000000))*(cj0)*(x12710)*(x12716)))+(((IkReal(-1.00000000000000))*(x12704)*(x12712)))+(((x12708)*(x12720)))+(((IkReal(0.0100000000000000))*(x12700)*(x12706)))+(((sj0)*(x12710)*(x12715)))+(((IkReal(0.0690000000000000))*(sj2)))+(((IkReal(0.0100000000000000))*(cj0)*(x12702)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12716)))+(((cj0)*(r12)*(x12703)))+(((IkReal(-1.00000000000000))*(x12703)*(x12704)))+(((px)*(sj0)))+(((IkReal(-0.0100000000000000))*(x12700)*(x12708)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x12715)))); +evalcond[6]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(x12700)*(x12718)))+(((x12712)*(x12713)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12715)))+(((IkReal(0.0100000000000000))*(sj0)*(x12702)))+(((r12)*(sj0)*(x12703)))+(((IkReal(-1.00000000000000))*(x12711)*(x12720)))+(((IkReal(-1.00000000000000))*(sj0)*(x12710)*(x12716)))+(((x12703)*(x12713)))+(((IkReal(-1.00000000000000))*(x12718)*(x12720)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x12716)))+(((IkReal(-1.00000000000000))*(cj0)*(x12710)*(x12715)))+(((IkReal(-1.00000000000000))*(px)*(x12697)))+(((IkReal(0.0100000000000000))*(x12700)*(x12711)))+(((IkReal(-1.00000000000000))*(py)*(x12705)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst10; +gconst10=IKsign(cj2); +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj2; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x12722=((cj5)*(sj4)); +IkReal x12723=((IkReal(1.00000000000000))*(sj6)); +IkReal x12724=((r10)*(sj0)); +IkReal x12725=((sj4)*(sj5)); +IkReal x12726=((cj5)*(cj6)); +IkReal x12727=((r01)*(sj0)); +IkReal x12728=((IkReal(1.00000000000000))*(r02)); +IkReal x12729=((IkReal(0.374290000000000))*(cj0)); +IkReal x12730=((cj5)*(r12)); +IkReal x12731=((cj6)*(sj5)); +IkReal x12732=((cj0)*(r11)); +IkReal x12733=((cj5)*(sj0)); +IkReal x12734=((r20)*(sj6)); +IkReal x12735=((IkReal(1.00000000000000))*(sj0)); +IkReal x12736=((cj4)*(cj5)); +IkReal x12737=((IkReal(1.00000000000000))*(cj6)); +IkReal x12738=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12739=((sj5)*(sj6)); +IkReal x12740=((cj0)*(r10)); +IkReal x12741=((cj4)*(cj6)); +IkReal x12742=((cj0)*(r01)); +IkReal x12743=((IkReal(1.00000000000000))*(cj4)); +IkReal x12744=((cj0)*(r00)); +IkReal x12745=((IkReal(0.374290000000000))*(sj0)); +IkReal x12746=((cj0)*(r12)); +IkReal x12747=((IkReal(0.374290000000000))*(sj5)); +IkReal x12748=((cj4)*(sj6)); +IkReal x12749=((IkReal(1.00000000000000))*(cj0)); +IkReal x12750=((r02)*(sj0)); +IkReal x12751=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12752=((r11)*(sj0)); +IkReal x12753=((r00)*(sj0)*(sj6)); +IkReal x12754=((r00)*(x12741)); +IkReal x12755=((sj6)*(x12751)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(3.14159265358979))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x12725)))+(((cj6)*(r21)*(x12722)))+(((r21)*(x12748)))+(((x12722)*(x12734)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12737)))); +evalcond[2]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(x12734)*(x12751)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((x12734)*(x12747)))+(((IkReal(0.374290000000000))*(r21)*(x12731)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x12738)))+(((IkReal(-0.0100000000000000))*(r21)*(x12726)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12731)*(x12732)))+(((x12727)*(x12731)))+(((r00)*(sj0)*(x12739)))+(((IkReal(-1.00000000000000))*(sj5)*(x12723)*(x12740)))+(((IkReal(-1.00000000000000))*(x12728)*(x12733)))+(((cj0)*(x12730)))); +evalcond[4]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x12725)*(x12746)))+(((cj6)*(x12722)*(x12727)))+(((IkReal(-1.00000000000000))*(x12722)*(x12732)*(x12737)))+(((IkReal(-1.00000000000000))*(x12722)*(x12723)*(x12740)))+(((x12725)*(x12750)))+(((x12740)*(x12741)))+(((IkReal(-1.00000000000000))*(x12735)*(x12754)))+(((x12722)*(x12753)))+(((x12727)*(x12748)))+(((IkReal(-1.00000000000000))*(cj4)*(x12723)*(x12732)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x12723)*(x12727)))+(((IkReal(-1.00000000000000))*(sj5)*(x12743)*(x12746)))+(((cj4)*(x12726)*(x12727)))+(((cj4)*(sj5)*(x12750)))+(((IkReal(-1.00000000000000))*(sj4)*(x12737)*(x12740)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((r00)*(x12733)*(x12748)))+(((sj4)*(sj6)*(x12732)))+(((IkReal(-1.00000000000000))*(x12726)*(x12732)*(x12743)))+(((IkReal(-1.00000000000000))*(x12723)*(x12736)*(x12740)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(cj4)*(x12723)*(x12752)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12722)*(x12735)))+(((IkReal(-1.00000000000000))*(r12)*(x12725)*(x12735)))+(((IkReal(-1.00000000000000))*(x12722)*(x12723)*(x12724)))+(((IkReal(-1.00000000000000))*(cj0)*(x12725)*(x12728)))+(((IkReal(-1.00000000000000))*(x12722)*(x12723)*(x12744)))+(((x12741)*(x12744)))+(((IkReal(-1.00000000000000))*(cj4)*(x12723)*(x12742)))+(((x12724)*(x12741)))+(((IkReal(-1.00000000000000))*(x12722)*(x12737)*(x12742)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(x12738)*(x12750)))+(((IkReal(-1.00000000000000))*(r11)*(x12729)*(x12731)))+(((x12740)*(x12755)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12733)))+(((IkReal(-1.00000000000000))*(py)*(x12749)))+(((IkReal(-0.374290000000000))*(r02)*(x12733)))+(((IkReal(0.374290000000000))*(x12727)*(x12731)))+(((IkReal(0.0100000000000000))*(x12726)*(x12732)))+(((r00)*(x12739)*(x12745)))+(((IkReal(-1.00000000000000))*(r10)*(x12729)*(x12739)))+(((IkReal(-0.0100000000000000))*(x12726)*(x12727)))+(((x12729)*(x12730)))+(((x12738)*(x12746)))+(((px)*(sj0)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((cj5)*(r02)*(x12729)))+(((IkReal(-0.374290000000000))*(x12724)*(x12739)))+(((IkReal(-1.00000000000000))*(r11)*(x12731)*(x12745)))+(((r12)*(sj0)*(x12738)))+(((cj0)*(r02)*(x12738)))+(((IkReal(-1.00000000000000))*(r00)*(x12729)*(x12739)))+(((IkReal(0.0100000000000000))*(x12726)*(x12742)))+(((IkReal(-1.00000000000000))*(px)*(x12749)))+(((IkReal(-1.00000000000000))*(r01)*(x12729)*(x12731)))+(((IkReal(-1.00000000000000))*(py)*(x12735)))+(((x12744)*(x12755)))+(((x12724)*(x12755)))+(((x12730)*(x12745)))+(((IkReal(0.0100000000000000))*(x12726)*(x12752)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12756=((IkReal(1.00000000000000))*(r21)); +IkReal x12757=((cj4)*(cj5)); +IkReal x12758=((r20)*(sj6)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x12758)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12756))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12757)))+(((x12757)*(x12758)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12756))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x12758)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12756)))))+IKsqr(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12757)))+(((x12757)*(x12758)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12756)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x12758)))+(((cj5)*(r22)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12756)))), ((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(r21)*(x12757)))+(((x12757)*(x12758)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12756))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12759=IKcos(j3); +IkReal x12760=IKsin(j3); +IkReal x12761=((IkReal(1.00000000000000))*(cj4)); +IkReal x12762=((sj0)*(sj5)); +IkReal x12763=((cj0)*(cj5)); +IkReal x12764=((cj6)*(r01)); +IkReal x12765=((r00)*(sj6)); +IkReal x12766=((cj6)*(r11)); +IkReal x12767=((cj5)*(sj0)); +IkReal x12768=((cj6)*(sj4)); +IkReal x12769=((sj4)*(sj6)); +IkReal x12770=((cj4)*(cj5)); +IkReal x12771=((cj6)*(r21)); +IkReal x12772=((r20)*(sj6)); +IkReal x12773=((r10)*(sj6)); +IkReal x12774=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((x12760)+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12771)))+(((sj5)*(x12772)))); +evalcond[1]=((((r20)*(x12768)))+(((x12770)*(x12772)))+(((x12770)*(x12771)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(r21)*(x12769)))+(((IkReal(-1.00000000000000))*(x12759)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x12762)*(x12766)))+(((r02)*(x12763)))+(((r12)*(x12767)))+(((IkReal(-1.00000000000000))*(x12765)*(x12774)))+(((IkReal(-1.00000000000000))*(x12762)*(x12773)))+(((IkReal(-1.00000000000000))*(x12764)*(x12774)))+(x12759)); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12761)*(x12763)*(x12765)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12768)))+(((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12768)))+(((IkReal(-1.00000000000000))*(x12761)*(x12763)*(x12764)))+(x12760)+(((IkReal(-1.00000000000000))*(x12761)*(x12766)*(x12767)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12761)))+(((IkReal(-1.00000000000000))*(x12761)*(x12767)*(x12773)))+(((cj0)*(r01)*(x12769)))+(((IkReal(-1.00000000000000))*(r12)*(x12761)*(x12762)))+(((r11)*(sj0)*(x12769)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12775=((cj5)*(sj4)); +IkReal x12776=((IkReal(1.00000000000000))*(sj6)); +IkReal x12777=((r10)*(sj0)); +IkReal x12778=((sj4)*(sj5)); +IkReal x12779=((cj5)*(cj6)); +IkReal x12780=((r01)*(sj0)); +IkReal x12781=((IkReal(1.00000000000000))*(r02)); +IkReal x12782=((IkReal(0.374290000000000))*(cj0)); +IkReal x12783=((cj5)*(r12)); +IkReal x12784=((cj6)*(sj5)); +IkReal x12785=((cj0)*(r11)); +IkReal x12786=((cj5)*(sj0)); +IkReal x12787=((r20)*(sj6)); +IkReal x12788=((IkReal(1.00000000000000))*(sj0)); +IkReal x12789=((cj4)*(cj5)); +IkReal x12790=((IkReal(1.00000000000000))*(cj6)); +IkReal x12791=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12792=((sj5)*(sj6)); +IkReal x12793=((cj0)*(r10)); +IkReal x12794=((cj4)*(cj6)); +IkReal x12795=((cj0)*(r01)); +IkReal x12796=((IkReal(1.00000000000000))*(cj4)); +IkReal x12797=((cj0)*(r00)); +IkReal x12798=((IkReal(0.374290000000000))*(sj0)); +IkReal x12799=((cj0)*(r12)); +IkReal x12800=((IkReal(0.374290000000000))*(sj5)); +IkReal x12801=((cj4)*(sj6)); +IkReal x12802=((IkReal(1.00000000000000))*(cj0)); +IkReal x12803=((r02)*(sj0)); +IkReal x12804=((IkReal(0.0100000000000000))*(cj5)); +IkReal x12805=((r11)*(sj0)); +IkReal x12806=((r00)*(sj0)*(sj6)); +IkReal x12807=((r00)*(x12794)); +IkReal x12808=((sj6)*(x12804)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(j2, IkReal(6.28318530717959)))); +evalcond[1]=((((x12775)*(x12787)))+(((IkReal(-1.00000000000000))*(cj4)*(r20)*(x12790)))+(((r21)*(x12801)))+(((r22)*(x12778)))+(((cj6)*(r21)*(x12775)))); +evalcond[2]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(x12787)*(x12804)))+(((x12787)*(x12800)))+(((IkReal(0.374290000000000))*(r21)*(x12784)))+(((IkReal(-1.00000000000000))*(r22)*(x12791)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-0.0100000000000000))*(r21)*(x12779)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x12776)*(x12793)))+(((IkReal(-1.00000000000000))*(x12784)*(x12785)))+(((r00)*(sj0)*(x12792)))+(((IkReal(-1.00000000000000))*(x12781)*(x12786)))+(((x12780)*(x12784)))+(((cj0)*(x12783)))); +evalcond[4]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x12788)*(x12807)))+(((x12778)*(x12803)))+(((IkReal(-1.00000000000000))*(cj4)*(x12776)*(x12785)))+(((IkReal(-1.00000000000000))*(x12775)*(x12776)*(x12793)))+(((x12780)*(x12801)))+(((IkReal(-1.00000000000000))*(x12778)*(x12799)))+(((x12775)*(x12806)))+(((cj6)*(x12775)*(x12780)))+(((x12793)*(x12794)))+(((IkReal(-1.00000000000000))*(x12775)*(x12785)*(x12790)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(sj4)*(x12776)*(x12780)))+(((IkReal(-1.00000000000000))*(x12776)*(x12789)*(x12793)))+(((IkReal(-1.00000000000000))*(sj4)*(x12790)*(x12793)))+(((cj4)*(x12779)*(x12780)))+(((r00)*(x12786)*(x12801)))+(((cj4)*(sj5)*(x12803)))+(((cj6)*(r00)*(sj0)*(sj4)))+(((sj4)*(sj6)*(x12785)))+(((IkReal(-1.00000000000000))*(x12779)*(x12785)*(x12796)))+(((IkReal(-1.00000000000000))*(sj5)*(x12796)*(x12799)))); +evalcond[6]=((((x12794)*(x12797)))+(((IkReal(-1.00000000000000))*(cj4)*(x12776)*(x12795)))+(((IkReal(-1.00000000000000))*(x12775)*(x12776)*(x12777)))+(((IkReal(-1.00000000000000))*(x12775)*(x12776)*(x12797)))+(((IkReal(-1.00000000000000))*(cj0)*(x12778)*(x12781)))+(((IkReal(-1.00000000000000))*(x12775)*(x12790)*(x12795)))+(((x12777)*(x12794)))+(((IkReal(-1.00000000000000))*(cj4)*(x12776)*(x12805)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x12775)*(x12788)))+(((IkReal(-1.00000000000000))*(r12)*(x12778)*(x12788)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r11)*(x12782)*(x12784)))+(((IkReal(-0.0100000000000000))*(r00)*(sj6)*(x12786)))+(((IkReal(-1.00000000000000))*(py)*(x12802)))+(((IkReal(-0.374290000000000))*(r02)*(x12786)))+(((IkReal(0.374290000000000))*(x12780)*(x12784)))+(((x12793)*(x12808)))+(((x12782)*(x12783)))+(((IkReal(-0.0100000000000000))*(x12779)*(x12780)))+(((x12791)*(x12799)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(x12779)*(x12785)))+(((r00)*(x12792)*(x12798)))+(((IkReal(-1.00000000000000))*(x12791)*(x12803)))+(((IkReal(-1.00000000000000))*(r10)*(x12782)*(x12792)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x12783)*(x12798)))+(((IkReal(-1.00000000000000))*(px)*(x12802)))+(((IkReal(-1.00000000000000))*(r00)*(x12782)*(x12792)))+(((cj5)*(r02)*(x12782)))+(((IkReal(-1.00000000000000))*(r01)*(x12782)*(x12784)))+(((cj0)*(r02)*(x12791)))+(((IkReal(0.0100000000000000))*(x12779)*(x12795)))+(((IkReal(-0.374290000000000))*(x12777)*(x12792)))+(((IkReal(-1.00000000000000))*(r11)*(x12784)*(x12798)))+(((IkReal(0.0100000000000000))*(x12779)*(x12805)))+(((x12777)*(x12808)))+(((IkReal(-1.00000000000000))*(py)*(x12788)))+(((x12797)*(x12808)))+(((r12)*(sj0)*(x12791)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12809=((IkReal(1.00000000000000))*(cj4)); +IkReal x12810=((cj6)*(r21)); +IkReal x12811=((r20)*(sj6)); +if( IKabs(((((sj5)*(x12811)))+(((sj5)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12809)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12811)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj5)*(x12811)))+(((sj5)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))))+IKsqr(((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12809)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12811)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj5)*(x12811)))+(((sj5)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))), ((((IkReal(-1.00000000000000))*(r22)*(sj5)*(x12809)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12810)))+(((IkReal(-1.00000000000000))*(cj5)*(x12809)*(x12811)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12812=IKcos(j3); +IkReal x12813=IKsin(j3); +IkReal x12814=((IkReal(1.00000000000000))*(cj4)); +IkReal x12815=((sj0)*(sj5)); +IkReal x12816=((cj0)*(cj5)); +IkReal x12817=((cj6)*(r01)); +IkReal x12818=((r00)*(sj6)); +IkReal x12819=((cj6)*(r11)); +IkReal x12820=((cj5)*(sj0)); +IkReal x12821=((cj6)*(sj4)); +IkReal x12822=((sj4)*(sj6)); +IkReal x12823=((cj4)*(cj5)); +IkReal x12824=((cj6)*(r21)); +IkReal x12825=((r20)*(sj6)); +IkReal x12826=((r10)*(sj6)); +IkReal x12827=((IkReal(1.00000000000000))*(cj0)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12825)))+(((IkReal(-1.00000000000000))*(x12813)))+(((sj5)*(x12824)))); +evalcond[1]=((((x12823)*(x12825)))+(((x12823)*(x12824)))+(((cj4)*(r22)*(sj5)))+(x12812)+(((r20)*(x12821)))+(((IkReal(-1.00000000000000))*(r21)*(x12822)))); +evalcond[2]=((((r12)*(x12820)))+(((r02)*(x12816)))+(((IkReal(-1.00000000000000))*(x12815)*(x12826)))+(((IkReal(-1.00000000000000))*(x12818)*(x12827)))+(x12812)+(((IkReal(-1.00000000000000))*(x12817)*(x12827)))+(((IkReal(-1.00000000000000))*(x12815)*(x12819)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj0)*(r00)*(x12821)))+(((IkReal(-1.00000000000000))*(x12814)*(x12820)*(x12826)))+(((r11)*(sj0)*(x12822)))+(((IkReal(-1.00000000000000))*(x12814)*(x12816)*(x12818)))+(x12813)+(((IkReal(-1.00000000000000))*(x12814)*(x12816)*(x12817)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(sj5)*(x12814)))+(((cj0)*(r01)*(x12822)))+(((IkReal(-1.00000000000000))*(x12814)*(x12819)*(x12820)))+(((IkReal(-1.00000000000000))*(r12)*(x12814)*(x12815)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12821)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12828=((IkReal(1.00000000000000))*(cj0)); +IkReal x12829=((cj4)*(sj6)); +IkReal x12830=((sj0)*(sj4)); +IkReal x12831=((cj5)*(sj6)); +IkReal x12832=((sj4)*(sj5)); +IkReal x12833=((r12)*(sj5)); +IkReal x12834=((IkReal(0.374290000000000))*(cj5)); +IkReal x12835=((r02)*(sj0)); +IkReal x12836=((r20)*(sj4)); +IkReal x12837=((IkReal(1.00000000000000))*(sj0)); +IkReal x12838=((IkReal(1.00000000000000))*(cj5)); +IkReal x12839=((cj0)*(r10)); +IkReal x12840=((cj4)*(cj6)); +IkReal x12841=((r00)*(sj0)); +IkReal x12842=((cj6)*(r21)); +IkReal x12843=((IkReal(0.374290000000000))*(sj5)); +IkReal x12844=((cj0)*(r00)); +IkReal x12845=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12846=((cj0)*(r02)); +IkReal x12847=((cj5)*(sj4)); +IkReal x12848=((cj6)*(r01)); +IkReal x12849=((cj6)*(r11)); +IkReal x12850=((r01)*(sj0)); +IkReal x12851=((r10)*(sj0)); +IkReal x12852=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x12853=((sj6)*(x12843)); +IkReal x12854=((cj0)*(cj6)*(x12843)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r22)*(x12838)))+(((r20)*(sj5)*(sj6)))+(((sj5)*(x12842)))); +evalcond[2]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x12840)))+(((r21)*(x12829)))+(((x12842)*(x12847)))+(((r22)*(x12832)))+(((x12831)*(x12836)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x12845)))+(((IkReal(-1.00000000000000))*(r22)*(x12834)))+(((IkReal(-0.0100000000000000))*(cj5)*(x12842)))+(((IkReal(-0.0100000000000000))*(r20)*(x12831)))+(pz)+(((r20)*(x12853)))+(((x12842)*(x12843)))); +evalcond[4]=((((cj5)*(r21)*(x12840)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r20)*(x12829)))+(((cj6)*(x12836)))+(((cj4)*(r22)*(sj5)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x12828)*(x12832)))+(((IkReal(-1.00000000000000))*(x12828)*(x12847)*(x12849)))+(((r02)*(sj5)*(x12830)))+(((x12829)*(x12850)))+(((x12839)*(x12840)))+(((cj5)*(x12830)*(x12848)))+(((IkReal(-1.00000000000000))*(r00)*(x12837)*(x12840)))+(((r00)*(x12830)*(x12831)))+(((IkReal(-1.00000000000000))*(r11)*(x12828)*(x12829)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12828)*(x12831)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x12830)*(x12833)))+(((IkReal(-1.00000000000000))*(x12830)*(x12838)*(x12849)))+(((IkReal(-1.00000000000000))*(r02)*(x12828)*(x12832)))+(((x12840)*(x12851)))+(((IkReal(-1.00000000000000))*(r10)*(x12830)*(x12831)))+(((IkReal(-1.00000000000000))*(x12828)*(x12847)*(x12848)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12828)*(x12831)))+(((IkReal(-1.00000000000000))*(r11)*(x12829)*(x12837)))+(((IkReal(-1.00000000000000))*(r01)*(x12828)*(x12829)))+(((x12840)*(x12844)))); +evalcond[7]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(x12831)*(x12839)))+(((cj0)*(r12)*(x12834)))+(((IkReal(-1.00000000000000))*(x12835)*(x12845)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x12848)))+(((x12841)*(x12853)))+(((IkReal(-1.00000000000000))*(cj0)*(x12843)*(x12849)))+(((sj0)*(x12843)*(x12848)))+(((IkReal(-1.00000000000000))*(x12839)*(x12853)))+(((IkReal(-1.00000000000000))*(py)*(x12828)))+(((IkReal(-0.0100000000000000))*(x12831)*(x12841)))+(((IkReal(0.0100000000000000))*(cj0)*(x12833)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12849)))+(((IkReal(-1.00000000000000))*(x12834)*(x12835)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((x12845)*(x12846)))+(((r12)*(sj0)*(x12834)))+(((IkReal(-1.00000000000000))*(x12851)*(x12853)))+(((IkReal(-1.00000000000000))*(sj0)*(x12843)*(x12849)))+(((IkReal(0.0100000000000000))*(x12831)*(x12851)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12848)))+(((IkReal(0.0100000000000000))*(sj0)*(x12833)))+(((IkReal(-1.00000000000000))*(py)*(x12837)))+(((x12834)*(x12846)))+(((IkReal(-1.00000000000000))*(x12844)*(x12853)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x12849)))+(((IkReal(-1.00000000000000))*(cj0)*(x12843)*(x12848)))+(((IkReal(0.0100000000000000))*(x12831)*(x12844)))+(((IkReal(-1.00000000000000))*(px)*(x12828)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12855=((sj0)*(sj5)); +IkReal x12856=((r00)*(sj6)); +IkReal x12857=((IkReal(1.00000000000000))*(cj5)); +IkReal x12858=((cj6)*(r11)); +IkReal x12859=((cj6)*(r01)); +IkReal x12860=((r10)*(sj6)); +IkReal x12861=((cj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x12860)*(x12861)))+(((x12855)*(x12856)))+(((IkReal(-1.00000000000000))*(x12858)*(x12861)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12857)))+(((x12855)*(x12859))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12857)))+(((x12856)*(x12861)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12857)))+(((x12855)*(x12860)))+(((x12859)*(x12861)))+(((x12855)*(x12858))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x12860)*(x12861)))+(((x12855)*(x12856)))+(((IkReal(-1.00000000000000))*(x12858)*(x12861)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12857)))+(((x12855)*(x12859)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12857)))+(((x12856)*(x12861)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12857)))+(((x12855)*(x12860)))+(((x12859)*(x12861)))+(((x12855)*(x12858)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x12860)*(x12861)))+(((x12855)*(x12856)))+(((IkReal(-1.00000000000000))*(x12858)*(x12861)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12857)))+(((x12855)*(x12859)))), ((((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12857)))+(((x12856)*(x12861)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12857)))+(((x12855)*(x12860)))+(((x12859)*(x12861)))+(((x12855)*(x12858))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12862=IKcos(j3); +IkReal x12863=IKsin(j3); +IkReal x12864=((sj0)*(sj5)); +IkReal x12865=((r00)*(sj6)); +IkReal x12866=((cj6)*(sj0)); +IkReal x12867=((IkReal(1.00000000000000))*(cj4)); +IkReal x12868=((r00)*(sj4)); +IkReal x12869=((cj0)*(cj5)); +IkReal x12870=((cj5)*(sj0)); +IkReal x12871=((cj6)*(r11)); +IkReal x12872=((r10)*(sj6)); +IkReal x12873=((cj0)*(sj5)); +IkReal x12874=((r10)*(sj4)); +IkReal x12875=((cj4)*(cj5)*(r01)); +IkReal x12876=((IkReal(1.00000000000000))*(cj0)*(cj6)); +IkReal x12877=((cj0)*(sj4)*(sj6)); +IkReal x12878=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj6)*(r01)*(x12864)))+(((IkReal(-1.00000000000000))*(x12871)*(x12873)))+(((IkReal(-1.00000000000000))*(x12863)))+(((IkReal(-1.00000000000000))*(x12872)*(x12873)))+(((x12864)*(x12865)))+(((IkReal(-1.00000000000000))*(r02)*(x12870)))+(((r12)*(x12869)))); +evalcond[1]=((((r02)*(x12869)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x12873)))+(((IkReal(-1.00000000000000))*(x12864)*(x12871)))+(((IkReal(-1.00000000000000))*(x12865)*(x12873)))+(((IkReal(-1.00000000000000))*(x12864)*(x12872)))+(x12862)+(((r12)*(x12870)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r12)*(x12867)*(x12873)))+(((cj4)*(r02)*(x12864)))+(((cj4)*(x12865)*(x12870)))+(((IkReal(-1.00000000000000))*(r01)*(x12878)))+(((IkReal(-1.00000000000000))*(x12867)*(x12869)*(x12872)))+(((IkReal(-1.00000000000000))*(x12874)*(x12876)))+(((r11)*(x12877)))+(((x12866)*(x12875)))+(((IkReal(-1.00000000000000))*(x12867)*(x12869)*(x12871)))+(((x12866)*(x12868)))+(x12862)); +evalcond[3]=((((r01)*(x12877)))+(((r11)*(x12878)))+(((IkReal(-1.00000000000000))*(r02)*(x12867)*(x12873)))+(((IkReal(-1.00000000000000))*(x12866)*(x12874)))+(((IkReal(-1.00000000000000))*(x12868)*(x12876)))+(((IkReal(-1.00000000000000))*(cj6)*(r01)*(x12867)*(x12869)))+(((IkReal(-1.00000000000000))*(r12)*(x12864)*(x12867)))+(((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12866)*(x12867)))+(((IkReal(-1.00000000000000))*(x12867)*(x12870)*(x12872)))+(((IkReal(-1.00000000000000))*(x12865)*(x12867)*(x12869)))+(x12863)); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x12879=((IkReal(1.00000000000000))*(cj0)); +IkReal x12880=((cj4)*(sj6)); +IkReal x12881=((sj0)*(sj4)); +IkReal x12882=((cj5)*(sj6)); +IkReal x12883=((sj4)*(sj5)); +IkReal x12884=((r12)*(sj5)); +IkReal x12885=((IkReal(0.374290000000000))*(cj5)); +IkReal x12886=((r02)*(sj0)); +IkReal x12887=((r20)*(sj4)); +IkReal x12888=((IkReal(1.00000000000000))*(sj0)); +IkReal x12889=((IkReal(1.00000000000000))*(cj5)); +IkReal x12890=((cj0)*(r10)); +IkReal x12891=((cj4)*(cj6)); +IkReal x12892=((r00)*(sj0)); +IkReal x12893=((cj6)*(r21)); +IkReal x12894=((IkReal(0.374290000000000))*(sj5)); +IkReal x12895=((cj0)*(r00)); +IkReal x12896=((IkReal(0.0100000000000000))*(sj5)); +IkReal x12897=((cj0)*(r02)); +IkReal x12898=((cj5)*(sj4)); +IkReal x12899=((cj6)*(r01)); +IkReal x12900=((cj6)*(r11)); +IkReal x12901=((r01)*(sj0)); +IkReal x12902=((r10)*(sj0)); +IkReal x12903=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x12904=((sj6)*(x12894)); +IkReal x12905=((cj0)*(cj6)*(x12894)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((sj5)*(x12893)))+(((IkReal(-1.00000000000000))*(r22)*(x12889)))+(((r20)*(sj5)*(sj6)))); +evalcond[2]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(r20)*(x12891)))+(((x12882)*(x12887)))+(((x12893)*(x12898)))+(((r21)*(x12880)))+(((r22)*(x12883)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r22)*(x12896)))+(((IkReal(-0.0100000000000000))*(r20)*(x12882)))+(((x12893)*(x12894)))+(pz)+(((IkReal(-1.00000000000000))*(r22)*(x12885)))+(((IkReal(-0.0100000000000000))*(cj5)*(x12893)))+(((r20)*(x12904)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj5)*(r21)*(x12891)))+(((cj4)*(r22)*(sj5)))+(((cj6)*(x12887)))+(((cj5)*(r20)*(x12880)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12879)*(x12898)*(x12900)))+(((IkReal(-1.00000000000000))*(r00)*(x12888)*(x12891)))+(((IkReal(-1.00000000000000))*(r12)*(x12879)*(x12883)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12879)*(x12882)))+(((r00)*(x12881)*(x12882)))+(((r02)*(sj5)*(x12881)))+(((cj5)*(x12881)*(x12899)))+(((x12890)*(x12891)))+(((IkReal(-1.00000000000000))*(r11)*(x12879)*(x12880)))+(((x12880)*(x12901)))); +evalcond[6]=((((IkReal(-1.00000000000000))*(x12879)*(x12898)*(x12899)))+(((IkReal(-1.00000000000000))*(x12881)*(x12884)))+(((IkReal(-1.00000000000000))*(x12881)*(x12889)*(x12900)))+(((x12891)*(x12902)))+(((IkReal(-1.00000000000000))*(r11)*(x12880)*(x12888)))+(((IkReal(-1.00000000000000))*(r02)*(x12879)*(x12883)))+(((IkReal(-1.00000000000000))*(r01)*(x12879)*(x12880)))+(((x12891)*(x12895)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12879)*(x12882)))+(((IkReal(-1.00000000000000))*(r10)*(x12881)*(x12882)))); +evalcond[7]=((IkReal(-0.0690000000000000))+(((cj0)*(r12)*(x12885)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x12899)))+(((IkReal(-1.00000000000000))*(py)*(x12879)))+(((IkReal(-1.00000000000000))*(x12890)*(x12904)))+(((sj0)*(x12894)*(x12899)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12900)))+(((IkReal(-0.0100000000000000))*(x12882)*(x12892)))+(((IkReal(0.0100000000000000))*(cj0)*(x12884)))+(((x12892)*(x12904)))+(((IkReal(-1.00000000000000))*(cj0)*(x12894)*(x12900)))+(((IkReal(-1.00000000000000))*(x12886)*(x12896)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(x12882)*(x12890)))+(((IkReal(-1.00000000000000))*(x12885)*(x12886)))); +evalcond[8]=((IkReal(-0.295420000000000))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x12900)))+(((IkReal(0.0100000000000000))*(x12882)*(x12902)))+(((x12896)*(x12897)))+(((IkReal(-1.00000000000000))*(x12902)*(x12904)))+(((x12885)*(x12897)))+(((IkReal(-1.00000000000000))*(x12895)*(x12904)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x12899)))+(((IkReal(-1.00000000000000))*(cj0)*(x12894)*(x12899)))+(((IkReal(0.0100000000000000))*(sj0)*(x12884)))+(((IkReal(-1.00000000000000))*(py)*(x12888)))+(((r12)*(sj0)*(x12885)))+(((IkReal(-1.00000000000000))*(px)*(x12879)))+(((IkReal(-1.00000000000000))*(sj0)*(x12894)*(x12900)))+(((IkReal(0.0100000000000000))*(x12882)*(x12895)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12906=((IkReal(1.00000000000000))*(cj5)); +IkReal x12907=((r10)*(sj5)*(sj6)); +IkReal x12908=((cj6)*(sj0)*(sj5)); +IkReal x12909=((r00)*(sj5)*(sj6)); +IkReal x12910=((cj0)*(cj6)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj0)*(x12909)))+(((IkReal(-1.00000000000000))*(r01)*(x12908)))+(((cj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12906)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x12910))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12906)))+(((r11)*(x12908)))+(((r01)*(x12910)))+(((sj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12906)))+(((cj0)*(x12909))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj0)*(x12909)))+(((IkReal(-1.00000000000000))*(r01)*(x12908)))+(((cj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12906)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x12910)))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12906)))+(((r11)*(x12908)))+(((r01)*(x12910)))+(((sj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12906)))+(((cj0)*(x12909)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj0)*(x12909)))+(((IkReal(-1.00000000000000))*(r01)*(x12908)))+(((cj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x12906)))+(((cj5)*(r02)*(sj0)))+(((r11)*(x12910)))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12906)))+(((r11)*(x12908)))+(((r01)*(x12910)))+(((sj0)*(x12907)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12906)))+(((cj0)*(x12909))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x12911=IKcos(j3); +IkReal x12912=IKsin(j3); +IkReal x12913=((sj0)*(sj5)); +IkReal x12914=((r00)*(sj6)); +IkReal x12915=((IkReal(1.00000000000000))*(cj4)); +IkReal x12916=((cj6)*(sj0)); +IkReal x12917=((r00)*(sj4)); +IkReal x12918=((cj0)*(cj5)); +IkReal x12919=((cj6)*(r01)); +IkReal x12920=((cj5)*(sj0)); +IkReal x12921=((cj0)*(sj5)); +IkReal x12922=((cj6)*(r11)); +IkReal x12923=((r10)*(sj6)); +IkReal x12924=((r10)*(sj4)); +IkReal x12925=((cj0)*(sj4)*(sj6)); +IkReal x12926=((sj0)*(sj4)*(sj6)); +IkReal x12927=((IkReal(1.00000000000000))*(cj0)*(cj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x12921)*(x12922)))+(((x12913)*(x12919)))+(((IkReal(-1.00000000000000))*(x12921)*(x12923)))+(x12912)+(((r12)*(x12918)))+(((IkReal(-1.00000000000000))*(r02)*(x12920)))+(((x12913)*(x12914)))); +evalcond[1]=((((r12)*(x12920)))+(((IkReal(-1.00000000000000))*(x12913)*(x12922)))+(((IkReal(-1.00000000000000))*(x12913)*(x12923)))+(((IkReal(-1.00000000000000))*(x12919)*(x12921)))+(x12911)+(((IkReal(-1.00000000000000))*(x12914)*(x12921)))+(((r02)*(x12918)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r01)*(x12926)))+(((cj4)*(x12914)*(x12920)))+(((IkReal(-1.00000000000000))*(x12924)*(x12927)))+(((IkReal(-1.00000000000000))*(x12911)))+(((r11)*(x12925)))+(((cj4)*(r02)*(x12913)))+(((IkReal(-1.00000000000000))*(x12915)*(x12918)*(x12922)))+(((x12916)*(x12917)))+(((IkReal(-1.00000000000000))*(r12)*(x12915)*(x12921)))+(((cj4)*(cj5)*(r01)*(x12916)))+(((IkReal(-1.00000000000000))*(x12915)*(x12918)*(x12923)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(cj5)*(r11)*(x12915)*(x12916)))+(((IkReal(-1.00000000000000))*(x12914)*(x12915)*(x12918)))+(((r11)*(x12926)))+(((IkReal(-1.00000000000000))*(x12915)*(x12920)*(x12923)))+(((IkReal(-1.00000000000000))*(x12917)*(x12927)))+(((IkReal(-1.00000000000000))*(x12916)*(x12924)))+(x12912)+(((IkReal(-1.00000000000000))*(r02)*(x12915)*(x12921)))+(((r01)*(x12925)))+(((IkReal(-1.00000000000000))*(x12915)*(x12918)*(x12919)))+(((IkReal(-1.00000000000000))*(r12)*(x12913)*(x12915)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12928=((sj0)*(sj5)); +IkReal x12929=((r00)*(sj6)); +IkReal x12930=((IkReal(1.00000000000000))*(cj5)); +IkReal x12931=((cj6)*(r11)); +IkReal x12932=((cj6)*(r01)); +IkReal x12933=((cj0)*(sj5)); +IkReal x12934=((r10)*(sj6)); +if( IKabs(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x12931)*(x12933)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12930)))+(((x12928)*(x12929)))+(((x12928)*(x12932)))+(((IkReal(-1.00000000000000))*(x12933)*(x12934))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12930)))+(((x12928)*(x12934)))+(((x12929)*(x12933)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12930)))+(((x12928)*(x12931)))+(((x12932)*(x12933))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x12931)*(x12933)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12930)))+(((x12928)*(x12929)))+(((x12928)*(x12932)))+(((IkReal(-1.00000000000000))*(x12933)*(x12934)))))))+IKsqr(((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12930)))+(((x12928)*(x12934)))+(((x12929)*(x12933)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12930)))+(((x12928)*(x12931)))+(((x12932)*(x12933)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x12931)*(x12933)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x12930)))+(((x12928)*(x12929)))+(((x12928)*(x12932)))+(((IkReal(-1.00000000000000))*(x12933)*(x12934)))))), ((((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12930)))+(((x12928)*(x12934)))+(((x12929)*(x12933)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12930)))+(((x12928)*(x12931)))+(((x12932)*(x12933))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12935=IKsin(j3); +IkReal x12936=IKcos(j3); +IkReal x12937=((sj0)*(sj5)); +IkReal x12938=((r00)*(sj6)); +IkReal x12939=((IkReal(1.00000000000000))*(cj4)); +IkReal x12940=((cj6)*(r01)); +IkReal x12941=((cj0)*(cj5)); +IkReal x12942=((cj5)*(sj0)); +IkReal x12943=((cj6)*(r11)); +IkReal x12944=((cj6)*(sj4)); +IkReal x12945=((cj0)*(sj5)); +IkReal x12946=((cj4)*(cj5)); +IkReal x12947=((cj6)*(r21)); +IkReal x12948=((r20)*(sj6)); +IkReal x12949=((r10)*(sj6)); +IkReal x12950=((IkReal(1.00000000000000))*(cj0)); +IkReal x12951=((cj0)*(sj4)*(sj6)); +IkReal x12952=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12947)))+(((sj5)*(x12948)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((cj2)*(x12935)))); +evalcond[1]=((((x12946)*(x12947)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12946)*(x12948)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x12944)))+(((IkReal(-1.00000000000000))*(cj2)*(x12936)))); +evalcond[2]=((((r12)*(x12941)))+(((IkReal(-1.00000000000000))*(r02)*(x12942)))+(((x12937)*(x12940)))+(((x12937)*(x12938)))+(((IkReal(-1.00000000000000))*(x12943)*(x12945)))+(((IkReal(-1.00000000000000))*(x12945)*(x12949)))+(((IkReal(-1.00000000000000))*(sj2)*(x12935)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12937)*(x12943)))+(x12936)+(((r12)*(x12942)))+(((IkReal(-1.00000000000000))*(x12937)*(x12949)))+(((IkReal(-1.00000000000000))*(x12938)*(x12945)))+(((IkReal(-1.00000000000000))*(x12940)*(x12945)))+(((r02)*(x12941)))); +evalcond[4]=((((sj2)*(x12936)))+(((cj4)*(r02)*(x12937)))+(((cj4)*(x12940)*(x12942)))+(((r11)*(x12951)))+(((IkReal(-1.00000000000000))*(x12939)*(x12941)*(x12949)))+(((IkReal(-1.00000000000000))*(r12)*(x12939)*(x12945)))+(((IkReal(-1.00000000000000))*(r10)*(x12944)*(x12950)))+(((cj4)*(x12938)*(x12942)))+(((IkReal(-1.00000000000000))*(r01)*(x12952)))+(((r00)*(sj0)*(x12944)))+(((IkReal(-1.00000000000000))*(x12939)*(x12941)*(x12943)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r00)*(x12944)*(x12950)))+(((r11)*(x12952)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12944)))+(((IkReal(-1.00000000000000))*(x12939)*(x12942)*(x12943)))+(((IkReal(-1.00000000000000))*(x12938)*(x12939)*(x12941)))+(x12935)+(((IkReal(-1.00000000000000))*(x12939)*(x12942)*(x12949)))+(((IkReal(-1.00000000000000))*(x12939)*(x12940)*(x12941)))+(((IkReal(-1.00000000000000))*(r12)*(x12937)*(x12939)))+(((IkReal(-1.00000000000000))*(r02)*(x12939)*(x12945)))+(((r01)*(x12951)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12953=((cj6)*(sj5)); +IkReal x12954=((IkReal(1.00000000000000))*(cj5)); +IkReal x12955=((sj5)*(sj6)); +if( IKabs(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x12953)))+(((IkReal(-1.00000000000000))*(r20)*(x12955)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((r11)*(sj0)*(x12953)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12954)))+(((cj0)*(r01)*(x12953)))+(((r10)*(sj0)*(x12955)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12954)))+(((cj0)*(r00)*(x12955))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x12953)))+(((IkReal(-1.00000000000000))*(r20)*(x12955)))+(((cj5)*(r22)))))))+IKsqr(((((r11)*(sj0)*(x12953)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12954)))+(((cj0)*(r01)*(x12953)))+(((r10)*(sj0)*(x12955)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12954)))+(((cj0)*(r00)*(x12955)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(cj2) != 0)?((IkReal)1/(cj2)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r21)*(x12953)))+(((IkReal(-1.00000000000000))*(r20)*(x12955)))+(((cj5)*(r22)))))), ((((r11)*(sj0)*(x12953)))+(((IkReal(-1.00000000000000))*(cj0)*(r02)*(x12954)))+(((cj0)*(r01)*(x12953)))+(((r10)*(sj0)*(x12955)))+(((IkReal(-1.00000000000000))*(r12)*(sj0)*(x12954)))+(((cj0)*(r00)*(x12955))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12956=IKsin(j3); +IkReal x12957=IKcos(j3); +IkReal x12958=((sj0)*(sj5)); +IkReal x12959=((r00)*(sj6)); +IkReal x12960=((IkReal(1.00000000000000))*(cj4)); +IkReal x12961=((cj6)*(r01)); +IkReal x12962=((cj0)*(cj5)); +IkReal x12963=((cj5)*(sj0)); +IkReal x12964=((cj6)*(r11)); +IkReal x12965=((cj6)*(sj4)); +IkReal x12966=((cj0)*(sj5)); +IkReal x12967=((cj4)*(cj5)); +IkReal x12968=((cj6)*(r21)); +IkReal x12969=((r20)*(sj6)); +IkReal x12970=((r10)*(sj6)); +IkReal x12971=((IkReal(1.00000000000000))*(cj0)); +IkReal x12972=((cj0)*(sj4)*(sj6)); +IkReal x12973=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((cj2)*(x12956)))+(((sj5)*(x12968)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12969)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(cj2)*(x12957)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x12967)*(x12968)))+(((cj4)*(r22)*(sj5)))+(((x12967)*(x12969)))+(((r20)*(x12965)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(sj2)*(x12956)))+(((IkReal(-1.00000000000000))*(x12966)*(x12970)))+(((IkReal(-1.00000000000000))*(x12964)*(x12966)))+(((x12958)*(x12959)))+(((x12958)*(x12961)))+(((IkReal(-1.00000000000000))*(r02)*(x12963)))+(((r12)*(x12962)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x12958)*(x12964)))+(((r12)*(x12963)))+(((IkReal(-1.00000000000000))*(x12961)*(x12966)))+(((r02)*(x12962)))+(((IkReal(-1.00000000000000))*(x12958)*(x12970)))+(((IkReal(-1.00000000000000))*(x12959)*(x12966)))+(x12957)); +evalcond[4]=((((IkReal(-1.00000000000000))*(x12960)*(x12962)*(x12970)))+(((cj4)*(r02)*(x12958)))+(((IkReal(-1.00000000000000))*(r10)*(x12965)*(x12971)))+(((IkReal(-1.00000000000000))*(x12960)*(x12962)*(x12964)))+(((r00)*(sj0)*(x12965)))+(((cj4)*(x12959)*(x12963)))+(((cj4)*(x12961)*(x12963)))+(((IkReal(-1.00000000000000))*(r12)*(x12960)*(x12966)))+(((IkReal(-1.00000000000000))*(r01)*(x12973)))+(((sj2)*(x12957)))+(((r11)*(x12972)))); +evalcond[5]=((((r11)*(x12973)))+(((r01)*(x12972)))+(((IkReal(-1.00000000000000))*(x12960)*(x12961)*(x12962)))+(((IkReal(-1.00000000000000))*(x12960)*(x12963)*(x12964)))+(((IkReal(-1.00000000000000))*(r12)*(x12958)*(x12960)))+(((IkReal(-1.00000000000000))*(r00)*(x12965)*(x12971)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12965)))+(((IkReal(-1.00000000000000))*(x12959)*(x12960)*(x12962)))+(((IkReal(-1.00000000000000))*(x12960)*(x12963)*(x12970)))+(x12956)+(((IkReal(-1.00000000000000))*(r02)*(x12960)*(x12966)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x12974=((IkReal(1.00000000000000))*(r21)); +IkReal x12975=((cj4)*(cj5)); +IkReal x12976=((r20)*(sj6)); +if( IKabs(((gconst10)*(((((IkReal(-1.00000000000000))*(sj5)*(x12976)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12974)))+(((cj5)*(r22))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst10)*(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12974)))+(((cj6)*(r21)*(x12975)))+(((x12975)*(x12976))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst10)*(((((IkReal(-1.00000000000000))*(sj5)*(x12976)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x12974)))+(((cj5)*(r22)))))), ((gconst10)*(((((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj4)*(sj6)*(x12974)))+(((cj6)*(r21)*(x12975)))+(((x12975)*(x12976))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x12977=IKsin(j3); +IkReal x12978=IKcos(j3); +IkReal x12979=((sj0)*(sj5)); +IkReal x12980=((r00)*(sj6)); +IkReal x12981=((IkReal(1.00000000000000))*(cj4)); +IkReal x12982=((cj6)*(r01)); +IkReal x12983=((cj0)*(cj5)); +IkReal x12984=((cj5)*(sj0)); +IkReal x12985=((cj6)*(r11)); +IkReal x12986=((cj6)*(sj4)); +IkReal x12987=((cj0)*(sj5)); +IkReal x12988=((cj4)*(cj5)); +IkReal x12989=((cj6)*(r21)); +IkReal x12990=((r20)*(sj6)); +IkReal x12991=((r10)*(sj6)); +IkReal x12992=((IkReal(1.00000000000000))*(cj0)); +IkReal x12993=((cj0)*(sj4)*(sj6)); +IkReal x12994=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((sj5)*(x12990)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x12989)))+(((cj2)*(x12977)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj2)*(x12978)))+(((x12988)*(x12989)))+(((cj4)*(r22)*(sj5)))+(((x12988)*(x12990)))+(((r20)*(x12986)))); +evalcond[2]=((((r12)*(x12983)))+(((x12979)*(x12982)))+(((IkReal(-1.00000000000000))*(x12987)*(x12991)))+(((x12979)*(x12980)))+(((IkReal(-1.00000000000000))*(sj2)*(x12977)))+(((IkReal(-1.00000000000000))*(r02)*(x12984)))+(((IkReal(-1.00000000000000))*(x12985)*(x12987)))); +evalcond[3]=((((r02)*(x12983)))+(((IkReal(-1.00000000000000))*(x12982)*(x12987)))+(x12978)+(((IkReal(-1.00000000000000))*(x12979)*(x12991)))+(((IkReal(-1.00000000000000))*(x12979)*(x12985)))+(((IkReal(-1.00000000000000))*(x12980)*(x12987)))+(((r12)*(x12984)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x12981)*(x12983)*(x12985)))+(((IkReal(-1.00000000000000))*(r12)*(x12981)*(x12987)))+(((sj2)*(x12978)))+(((cj4)*(x12980)*(x12984)))+(((cj4)*(r02)*(x12979)))+(((IkReal(-1.00000000000000))*(r10)*(x12986)*(x12992)))+(((IkReal(-1.00000000000000))*(x12981)*(x12983)*(x12991)))+(((cj4)*(x12982)*(x12984)))+(((IkReal(-1.00000000000000))*(r01)*(x12994)))+(((r11)*(x12993)))+(((r00)*(sj0)*(x12986)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x12980)*(x12981)*(x12983)))+(((r01)*(x12993)))+(((r11)*(x12994)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x12986)))+(((IkReal(-1.00000000000000))*(x12981)*(x12984)*(x12985)))+(x12977)+(((IkReal(-1.00000000000000))*(r02)*(x12981)*(x12987)))+(((IkReal(-1.00000000000000))*(x12981)*(x12984)*(x12991)))+(((IkReal(-1.00000000000000))*(x12981)*(x12982)*(x12983)))+(((IkReal(-1.00000000000000))*(r00)*(x12986)*(x12992)))+(((IkReal(-1.00000000000000))*(r12)*(x12979)*(x12981)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x12995=((IkReal(1.00000000000000))*(cj0)); +IkReal x12996=((cj4)*(sj6)); +IkReal x12997=((sj0)*(sj4)); +IkReal x12998=((cj5)*(sj6)); +IkReal x12999=((sj4)*(sj5)); +IkReal x13000=((r12)*(sj5)); +IkReal x13001=((IkReal(0.374290000000000))*(cj5)); +IkReal x13002=((r02)*(sj0)); +IkReal x13003=((IkReal(1.00000000000000))*(sj0)); +IkReal x13004=((cj0)*(r10)); +IkReal x13005=((cj4)*(cj6)); +IkReal x13006=((r00)*(sj0)); +IkReal x13007=((cj6)*(r21)); +IkReal x13008=((IkReal(0.374290000000000))*(sj5)); +IkReal x13009=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13010=((cj0)*(r02)); +IkReal x13011=((cj5)*(sj4)); +IkReal x13012=((cj6)*(r01)); +IkReal x13013=((cj0)*(r00)); +IkReal x13014=((cj6)*(r11)); +IkReal x13015=((r01)*(sj0)); +IkReal x13016=((r10)*(sj0)); +IkReal x13017=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x13018=((sj6)*(x13008)); +IkReal x13019=((cj0)*(cj6)*(x13008)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((x13007)*(x13011)))+(((r21)*(x12996)))+(((r20)*(sj4)*(x12998)))+(((IkReal(-1.00000000000000))*(cj1)))+(((r22)*(x12999)))+(((IkReal(-1.00000000000000))*(r20)*(x13005)))); +evalcond[2]=((((IkReal(-0.0100000000000000))*(cj5)*(x13007)))+(((x13007)*(x13008)))+(((r20)*(x13018)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x13009)))+(((IkReal(-1.00000000000000))*(r22)*(x13001)))+(((IkReal(-0.0100000000000000))*(r20)*(x12998)))+(pz)); +evalcond[3]=((((r00)*(x12997)*(x12998)))+(((r02)*(sj5)*(x12997)))+(((IkReal(-1.00000000000000))*(r10)*(sj4)*(x12995)*(x12998)))+(((IkReal(-1.00000000000000))*(r11)*(x12995)*(x12996)))+(((x12996)*(x13015)))+(((x13004)*(x13005)))+(((IkReal(-1.00000000000000))*(r12)*(x12995)*(x12999)))+(((IkReal(-1.00000000000000))*(x12995)*(x13011)*(x13014)))+(((IkReal(-1.00000000000000))*(r00)*(x13003)*(x13005)))+(((cj5)*(x12997)*(x13012)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r02)*(x12995)*(x12999)))+(((IkReal(-1.00000000000000))*(x12997)*(x13000)))+(((IkReal(-1.00000000000000))*(r01)*(x12995)*(x12996)))+(sj1)+(((IkReal(-1.00000000000000))*(r11)*(x12996)*(x13003)))+(((x13005)*(x13016)))+(((x13005)*(x13013)))+(((IkReal(-1.00000000000000))*(r10)*(x12997)*(x12998)))+(((IkReal(-1.00000000000000))*(x12995)*(x13011)*(x13012)))+(((IkReal(-1.00000000000000))*(cj5)*(x12997)*(x13014)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x12995)*(x12998)))); +evalcond[5]=((IkReal(0.0690000000000000))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x13014)))+(((IkReal(-1.00000000000000))*(py)*(x12995)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x13012)))+(((IkReal(-0.0100000000000000))*(x12998)*(x13006)))+(((IkReal(-1.00000000000000))*(x13002)*(x13009)))+(((IkReal(-1.00000000000000))*(cj0)*(x13008)*(x13014)))+(((IkReal(-1.00000000000000))*(x13001)*(x13002)))+(((cj0)*(r12)*(x13001)))+(((IkReal(-1.00000000000000))*(x13004)*(x13018)))+(((IkReal(0.0100000000000000))*(x12998)*(x13004)))+(((x13006)*(x13018)))+(((sj0)*(x13008)*(x13012)))+(((IkReal(0.0100000000000000))*(cj0)*(x13000)))+(((px)*(sj0)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(cj0)*(x13008)*(x13012)))+(((IkReal(-1.00000000000000))*(py)*(x13003)))+(((IkReal(0.0100000000000000))*(x12998)*(x13016)))+(((IkReal(0.0100000000000000))*(x12998)*(x13013)))+(((IkReal(-1.00000000000000))*(x13013)*(x13018)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x13012)))+(((IkReal(-1.00000000000000))*(x13016)*(x13018)))+(((r12)*(sj0)*(x13001)))+(((x13001)*(x13010)))+(((IkReal(-1.00000000000000))*(px)*(x12995)))+(((IkReal(0.0100000000000000))*(sj0)*(x13000)))+(((x13009)*(x13010)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(sj0)*(x13008)*(x13014)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x13014)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst11; +gconst11=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x13020=((IkReal(1.00000000000000))*(cj0)); +IkReal x13021=((cj4)*(sj6)); +IkReal x13022=((sj0)*(sj6)); +IkReal x13023=((cj5)*(sj4)); +IkReal x13024=((IkReal(0.374290000000000))*(sj5)); +IkReal x13025=((sj4)*(sj5)); +IkReal x13026=((cj0)*(cj6)); +IkReal x13027=((IkReal(0.0100000000000000))*(cj5)); +IkReal x13028=((cj4)*(sj5)); +IkReal x13029=((cj5)*(sj0)); +IkReal x13030=((IkReal(0.374290000000000))*(r02)); +IkReal x13031=((r20)*(sj6)); +IkReal x13032=((cj6)*(r21)); +IkReal x13033=((IkReal(1.00000000000000))*(sj0)); +IkReal x13034=((cj0)*(sj6)); +IkReal x13035=((cj4)*(cj6)); +IkReal x13036=((IkReal(0.374290000000000))*(r12)); +IkReal x13037=((cj0)*(cj5)); +IkReal x13038=((cj6)*(sj5)); +IkReal x13039=((cj6)*(r01)); +IkReal x13040=((r00)*(sj6)); +IkReal x13041=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13042=((cj6)*(r11)); +IkReal x13043=((IkReal(1.00000000000000))*(r10)); +IkReal x13044=((r02)*(sj0)); +IkReal x13045=((cj6)*(sj4)); +IkReal x13046=((r12)*(x13033)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((r22)*(x13025)))+(((IkReal(-1.00000000000000))*(r20)*(x13035)))+(((x13023)*(x13031)))+(((r21)*(x13021)))+(((x13023)*(x13032)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x13024)*(x13031)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x13027)*(x13031)))+(pz)+(((IkReal(-1.00000000000000))*(x13027)*(x13032)))+(((x13024)*(x13032)))+(((IkReal(-1.00000000000000))*(r22)*(x13041)))); +evalcond[3]=((((r12)*(x13029)))+(((IkReal(-1.00000000000000))*(sj5)*(x13020)*(x13040)))+(((IkReal(-1.00000000000000))*(r11)*(x13033)*(x13038)))+(((r02)*(x13037)))+(((IkReal(-1.00000000000000))*(r01)*(x13020)*(x13038)))+(((IkReal(-1.00000000000000))*(sj5)*(x13022)*(x13043)))); +evalcond[4]=((((x13025)*(x13044)))+(((IkReal(-1.00000000000000))*(r11)*(x13020)*(x13021)))+(((cj4)*(r10)*(x13026)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x13020)*(x13023)))+(((r00)*(x13022)*(x13023)))+(((r01)*(sj0)*(x13021)))+(((IkReal(-1.00000000000000))*(x13020)*(x13023)*(x13042)))+(((IkReal(-1.00000000000000))*(r00)*(x13033)*(x13035)))+(((sj0)*(x13023)*(x13039)))+(((IkReal(-1.00000000000000))*(r12)*(x13020)*(x13025)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(x13020)*(x13023)*(x13040)))+(((IkReal(-1.00000000000000))*(x13025)*(x13046)))+(((IkReal(-1.00000000000000))*(r02)*(x13020)*(x13025)))+(((IkReal(-1.00000000000000))*(r01)*(x13020)*(x13021)))+(((cj4)*(r00)*(x13026)))+(((IkReal(-1.00000000000000))*(x13023)*(x13033)*(x13042)))+(((IkReal(-1.00000000000000))*(x13020)*(x13023)*(x13039)))+(((r10)*(sj0)*(x13035)))+(((IkReal(-1.00000000000000))*(x13022)*(x13023)*(x13043)))+(((IkReal(-1.00000000000000))*(r11)*(x13021)*(x13033)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r11)*(x13026)*(x13027)))+(((IkReal(-1.00000000000000))*(x13041)*(x13044)))+(((IkReal(-1.00000000000000))*(r00)*(x13022)*(x13027)))+(((IkReal(-1.00000000000000))*(r11)*(x13024)*(x13026)))+(((r00)*(x13022)*(x13024)))+(((IkReal(-1.00000000000000))*(sj0)*(x13027)*(x13039)))+(((IkReal(-1.00000000000000))*(r10)*(x13024)*(x13034)))+(((IkReal(-1.00000000000000))*(x13029)*(x13030)))+(((IkReal(-1.00000000000000))*(py)*(x13020)))+(((sj0)*(x13024)*(x13039)))+(((cj0)*(r12)*(x13041)))+(((x13036)*(x13037)))+(((r10)*(x13027)*(x13034)))+(((px)*(sj0)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x13020)*(x13045)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x13020)*(x13021)))+(((r11)*(sj4)*(x13022)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x13020)*(x13035)))+(((IkReal(-1.00000000000000))*(x13021)*(x13029)*(x13043)))+(((IkReal(-1.00000000000000))*(r10)*(x13033)*(x13045)))+(((r01)*(sj4)*(x13034)))+(((IkReal(-1.00000000000000))*(r11)*(x13029)*(x13035)))+(((IkReal(-1.00000000000000))*(x13028)*(x13046)))+(((IkReal(-1.00000000000000))*(r02)*(x13020)*(x13028)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((x13030)*(x13037)))+(((r00)*(x13027)*(x13034)))+(((r10)*(x13022)*(x13027)))+(((IkReal(-1.00000000000000))*(px)*(x13020)))+(((IkReal(-1.00000000000000))*(r00)*(x13024)*(x13034)))+(((IkReal(-1.00000000000000))*(r10)*(x13022)*(x13024)))+(((cj0)*(r02)*(x13041)))+(((x13029)*(x13036)))+(((r12)*(sj0)*(x13041)))+(((sj0)*(x13027)*(x13042)))+(((r01)*(x13026)*(x13027)))+(((IkReal(-1.00000000000000))*(sj0)*(x13024)*(x13042)))+(((IkReal(-1.00000000000000))*(r01)*(x13024)*(x13026)))+(((IkReal(-1.00000000000000))*(py)*(x13033)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13047=((r20)*(sj6)); +IkReal x13048=((cj4)*(cj5)); +IkReal x13049=((cj6)*(r21)); +if( IKabs(((((x13047)*(x13048)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13048)*(x13049))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13047)))+(((sj5)*(x13049))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((x13047)*(x13048)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13048)*(x13049)))))+IKsqr(((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13047)))+(((sj5)*(x13049)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((x13047)*(x13048)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13048)*(x13049)))), ((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13047)))+(((sj5)*(x13049))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x13050=IKcos(j3); +IkReal x13051=((sj0)*(sj5)); +IkReal x13052=((r00)*(sj6)); +IkReal x13053=((cj6)*(r01)); +IkReal x13054=((cj5)*(sj0)); +IkReal x13055=((cj0)*(cj5)); +IkReal x13056=((cj6)*(sj4)); +IkReal x13057=((sj4)*(sj6)); +IkReal x13058=((cj0)*(r11)); +IkReal x13059=((cj4)*(cj6)); +IkReal x13060=((cj4)*(sj6)); +IkReal x13061=((IkReal(1.00000000000000))*(cj0)); +IkReal x13062=((cj4)*(sj5)); +IkReal x13063=((sj5)*(sj6)); +IkReal x13064=((cj6)*(sj5)); +IkReal x13065=((IkReal(1.00000000000000))*(IKsin(j3))); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13050)))+(((r21)*(x13064)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x13063)))); +evalcond[1]=((((r22)*(x13062)))+(((IkReal(-1.00000000000000))*(r21)*(x13057)))+(((IkReal(-1.00000000000000))*(x13065)))+(((r20)*(x13056)))+(((cj5)*(r20)*(x13060)))+(((cj5)*(r21)*(x13059)))); +evalcond[2]=((((r12)*(x13055)))+(((x13051)*(x13052)))+(((IkReal(-1.00000000000000))*(x13058)*(x13064)))+(((x13051)*(x13053)))+(((IkReal(-1.00000000000000))*(x13065)))+(((IkReal(-1.00000000000000))*(r10)*(x13061)*(x13063)))+(((IkReal(-1.00000000000000))*(r02)*(x13054)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r01)*(sj0)*(x13057)))+(((x13057)*(x13058)))+(((r00)*(sj0)*(x13056)))+(((IkReal(-1.00000000000000))*(r10)*(x13056)*(x13061)))+(((IkReal(-1.00000000000000))*(r12)*(x13061)*(x13062)))+(((cj4)*(r02)*(x13051)))+(((IkReal(-1.00000000000000))*(r11)*(x13055)*(x13059)))+(((IkReal(-1.00000000000000))*(r10)*(x13055)*(x13060)))+(((cj4)*(x13053)*(x13054)))+(x13050)+(((cj4)*(x13052)*(x13054)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x13066=((IkReal(1.00000000000000))*(cj0)); +IkReal x13067=((cj4)*(sj6)); +IkReal x13068=((sj0)*(sj6)); +IkReal x13069=((cj5)*(sj4)); +IkReal x13070=((IkReal(0.374290000000000))*(sj5)); +IkReal x13071=((sj4)*(sj5)); +IkReal x13072=((cj0)*(cj6)); +IkReal x13073=((IkReal(0.0100000000000000))*(cj5)); +IkReal x13074=((cj4)*(sj5)); +IkReal x13075=((cj5)*(sj0)); +IkReal x13076=((IkReal(0.374290000000000))*(r02)); +IkReal x13077=((r20)*(sj6)); +IkReal x13078=((cj6)*(r21)); +IkReal x13079=((IkReal(1.00000000000000))*(sj0)); +IkReal x13080=((cj0)*(sj6)); +IkReal x13081=((cj4)*(cj6)); +IkReal x13082=((IkReal(0.374290000000000))*(r12)); +IkReal x13083=((cj0)*(cj5)); +IkReal x13084=((cj6)*(sj5)); +IkReal x13085=((cj6)*(r01)); +IkReal x13086=((r00)*(sj6)); +IkReal x13087=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13088=((cj6)*(r11)); +IkReal x13089=((IkReal(1.00000000000000))*(r10)); +IkReal x13090=((r02)*(sj0)); +IkReal x13091=((cj6)*(sj4)); +IkReal x13092=((r12)*(x13079)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x13069)*(x13078)))+(((r22)*(x13071)))+(((IkReal(-1.00000000000000))*(r20)*(x13081)))+(((x13069)*(x13077)))+(((r21)*(x13067)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x13073)*(x13077)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(r22)*(x13087)))+(((x13070)*(x13078)))+(((IkReal(-1.00000000000000))*(x13073)*(x13078)))+(pz)+(((x13070)*(x13077)))); +evalcond[3]=((((r02)*(x13083)))+(((IkReal(-1.00000000000000))*(sj5)*(x13066)*(x13086)))+(((IkReal(-1.00000000000000))*(r11)*(x13079)*(x13084)))+(((r12)*(x13075)))+(((IkReal(-1.00000000000000))*(r01)*(x13066)*(x13084)))+(((IkReal(-1.00000000000000))*(sj5)*(x13068)*(x13089)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x13066)*(x13069)*(x13088)))+(((r01)*(sj0)*(x13067)))+(((IkReal(-1.00000000000000))*(r11)*(x13066)*(x13067)))+(((sj0)*(x13069)*(x13085)))+(((x13071)*(x13090)))+(((IkReal(-1.00000000000000))*(r00)*(x13079)*(x13081)))+(((r00)*(x13068)*(x13069)))+(((IkReal(-1.00000000000000))*(r12)*(x13066)*(x13071)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x13066)*(x13069)))+(((cj4)*(r10)*(x13072)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((r10)*(sj0)*(x13081)))+(((IkReal(-1.00000000000000))*(x13071)*(x13092)))+(((IkReal(-1.00000000000000))*(r11)*(x13067)*(x13079)))+(((IkReal(-1.00000000000000))*(x13068)*(x13069)*(x13089)))+(((cj4)*(r00)*(x13072)))+(((IkReal(-1.00000000000000))*(x13069)*(x13079)*(x13088)))+(((IkReal(-1.00000000000000))*(x13066)*(x13069)*(x13085)))+(((IkReal(-1.00000000000000))*(x13066)*(x13069)*(x13086)))+(((IkReal(-1.00000000000000))*(r01)*(x13066)*(x13067)))+(((IkReal(-1.00000000000000))*(r02)*(x13066)*(x13071)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((r10)*(x13073)*(x13080)))+(((IkReal(-1.00000000000000))*(py)*(x13066)))+(((IkReal(-1.00000000000000))*(r10)*(x13070)*(x13080)))+(((IkReal(-1.00000000000000))*(sj0)*(x13073)*(x13085)))+(((IkReal(-1.00000000000000))*(x13075)*(x13076)))+(((IkReal(-1.00000000000000))*(r00)*(x13068)*(x13073)))+(((r11)*(x13072)*(x13073)))+(((IkReal(-1.00000000000000))*(x13087)*(x13090)))+(((x13082)*(x13083)))+(((cj0)*(r12)*(x13087)))+(((IkReal(-1.00000000000000))*(r11)*(x13070)*(x13072)))+(((r00)*(x13068)*(x13070)))+(((sj0)*(x13070)*(x13085)))+(((px)*(sj0)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x13066)*(x13091)))+(((IkReal(-1.00000000000000))*(r11)*(x13075)*(x13081)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x13066)*(x13081)))+(((r11)*(sj4)*(x13068)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x13066)*(x13067)))+(((IkReal(-1.00000000000000))*(r10)*(x13079)*(x13091)))+(((IkReal(-1.00000000000000))*(r02)*(x13066)*(x13074)))+(((r01)*(sj4)*(x13080)))+(((IkReal(-1.00000000000000))*(x13067)*(x13075)*(x13089)))+(((IkReal(-1.00000000000000))*(x13074)*(x13092)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(px)*(x13066)))+(((r00)*(x13073)*(x13080)))+(((r10)*(x13068)*(x13073)))+(((IkReal(-1.00000000000000))*(r00)*(x13070)*(x13080)))+(((cj0)*(r02)*(x13087)))+(((r01)*(x13072)*(x13073)))+(((x13075)*(x13082)))+(((IkReal(-1.00000000000000))*(sj0)*(x13070)*(x13088)))+(((r12)*(sj0)*(x13087)))+(((IkReal(-1.00000000000000))*(py)*(x13079)))+(((IkReal(-1.00000000000000))*(r01)*(x13070)*(x13072)))+(((x13076)*(x13083)))+(((IkReal(-1.00000000000000))*(r10)*(x13068)*(x13070)))+(((sj0)*(x13073)*(x13088)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13093=((IkReal(1.00000000000000))*(sj5)); +IkReal x13094=((cj6)*(r21)); +IkReal x13095=((r20)*(sj6)); +IkReal x13096=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x13095)*(x13096)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x13094)*(x13096)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13093)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x13093)*(x13094)))+(((IkReal(-1.00000000000000))*(x13093)*(x13095)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x13095)*(x13096)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x13094)*(x13096)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13093)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x13093)*(x13094)))+(((IkReal(-1.00000000000000))*(x13093)*(x13095)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x13095)*(x13096)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x13094)*(x13096)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13093)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x13093)*(x13094)))+(((IkReal(-1.00000000000000))*(x13093)*(x13095)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x13097=IKsin(j3); +IkReal x13098=IKcos(j3); +IkReal x13099=((sj0)*(sj5)); +IkReal x13100=((r00)*(sj6)); +IkReal x13101=((cj6)*(r01)); +IkReal x13102=((cj5)*(sj0)); +IkReal x13103=((cj0)*(cj5)); +IkReal x13104=((cj6)*(sj4)); +IkReal x13105=((sj4)*(sj6)); +IkReal x13106=((cj0)*(r11)); +IkReal x13107=((cj4)*(cj6)); +IkReal x13108=((cj4)*(sj6)); +IkReal x13109=((IkReal(1.00000000000000))*(cj0)); +IkReal x13110=((cj4)*(sj5)); +IkReal x13111=((sj5)*(sj6)); +IkReal x13112=((cj6)*(sj5)); +evalcond[0]=((((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((r20)*(x13111)))+(x13098)+(((r21)*(x13112)))); +evalcond[1]=((((cj5)*(r21)*(x13107)))+(((IkReal(-1.00000000000000))*(r21)*(x13105)))+(((r22)*(x13110)))+(x13097)+(((cj5)*(r20)*(x13108)))+(((r20)*(x13104)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x13102)))+(((IkReal(-1.00000000000000))*(x13106)*(x13112)))+(((x13099)*(x13100)))+(((IkReal(-1.00000000000000))*(r10)*(x13109)*(x13111)))+(((x13099)*(x13101)))+(((IkReal(-1.00000000000000))*(x13097)))+(((r12)*(x13103)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(x13103)*(x13108)))+(((cj4)*(r02)*(x13099)))+(((IkReal(-1.00000000000000))*(r11)*(x13103)*(x13107)))+(((IkReal(-1.00000000000000))*(r10)*(x13104)*(x13109)))+(((x13105)*(x13106)))+(((r00)*(sj0)*(x13104)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x13105)))+(((IkReal(-1.00000000000000))*(r12)*(x13109)*(x13110)))+(x13098)+(((cj4)*(x13100)*(x13102)))+(((cj4)*(x13101)*(x13102)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13113=((cj0)*(cj5)); +IkReal x13114=((IkReal(1.00000000000000))*(cj0)); +IkReal x13115=((cj6)*(r11)); +IkReal x13116=((r10)*(sj6)); +IkReal x13117=((cj5)*(sj0)); +IkReal x13118=((r00)*(sj5)*(sj6)); +IkReal x13119=((cj6)*(r01)*(sj5)); +IkReal x13120=((IkReal(1.00000000000000))*(sj0)*(sj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13115)))+(((r12)*(x13113)))+(((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13116)))+(((sj0)*(x13118)))+(((sj0)*(x13119)))+(((IkReal(-1.00000000000000))*(r02)*(x13117))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x13113)))+(((IkReal(-1.00000000000000))*(x13114)*(x13119)))+(((r12)*(x13117)))+(((IkReal(-1.00000000000000))*(x13114)*(x13118)))+(((IkReal(-1.00000000000000))*(x13115)*(x13120)))+(((IkReal(-1.00000000000000))*(x13116)*(x13120))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13115)))+(((r12)*(x13113)))+(((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13116)))+(((sj0)*(x13118)))+(((sj0)*(x13119)))+(((IkReal(-1.00000000000000))*(r02)*(x13117)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x13113)))+(((IkReal(-1.00000000000000))*(x13114)*(x13119)))+(((r12)*(x13117)))+(((IkReal(-1.00000000000000))*(x13114)*(x13118)))+(((IkReal(-1.00000000000000))*(x13115)*(x13120)))+(((IkReal(-1.00000000000000))*(x13116)*(x13120)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13115)))+(((r12)*(x13113)))+(((IkReal(-1.00000000000000))*(sj5)*(x13114)*(x13116)))+(((sj0)*(x13118)))+(((sj0)*(x13119)))+(((IkReal(-1.00000000000000))*(r02)*(x13117)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((r02)*(x13113)))+(((IkReal(-1.00000000000000))*(x13114)*(x13119)))+(((r12)*(x13117)))+(((IkReal(-1.00000000000000))*(x13114)*(x13118)))+(((IkReal(-1.00000000000000))*(x13115)*(x13120)))+(((IkReal(-1.00000000000000))*(x13116)*(x13120))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13121=IKsin(j3); +IkReal x13122=IKcos(j3); +IkReal x13123=((sj0)*(sj5)); +IkReal x13124=((r00)*(sj6)); +IkReal x13125=((cj6)*(r01)); +IkReal x13126=((cj4)*(cj5)); +IkReal x13127=((IkReal(1.00000000000000))*(cj0)); +IkReal x13128=((cj5)*(r12)); +IkReal x13129=((IkReal(1.00000000000000))*(sj0)); +IkReal x13130=((cj6)*(r11)); +IkReal x13131=((cj5)*(r02)); +IkReal x13132=((IkReal(1.00000000000000))*(cj1)); +IkReal x13133=((cj6)*(sj4)); +IkReal x13134=((cj6)*(r21)); +IkReal x13135=((r20)*(sj6)); +IkReal x13136=((r10)*(sj6)); +IkReal x13137=((sj4)*(sj6)); +IkReal x13138=((cj4)*(r02)); +IkReal x13139=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x13140=((IkReal(1.00000000000000))*(x13121)); +IkReal x13141=((cj0)*(x13137)); +evalcond[0]=((((sj5)*(x13135)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x13122)))+(((sj5)*(x13134)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x13137)))+(((cj4)*(r22)*(sj5)))+(((IkReal(-1.00000000000000))*(sj1)*(x13140)))+(((x13126)*(x13134)))+(((x13126)*(x13135)))+(((r20)*(x13133)))); +evalcond[2]=((((cj0)*(x13128)))+(((x13123)*(x13125)))+(((IkReal(-1.00000000000000))*(sj5)*(x13127)*(x13130)))+(((IkReal(-1.00000000000000))*(x13140)))+(((IkReal(-1.00000000000000))*(sj5)*(x13127)*(x13136)))+(((IkReal(-1.00000000000000))*(x13129)*(x13131)))+(((x13123)*(x13124)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13123)*(x13130)))+(((IkReal(-1.00000000000000))*(sj5)*(x13125)*(x13127)))+(((sj0)*(x13128)))+(((IkReal(-1.00000000000000))*(x13123)*(x13136)))+(((cj0)*(x13131)))+(((IkReal(-1.00000000000000))*(sj5)*(x13124)*(x13127)))+(((IkReal(-1.00000000000000))*(x13122)*(x13132)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x13127)*(x13133)))+(((r00)*(sj0)*(x13133)))+(((x13123)*(x13138)))+(((IkReal(-1.00000000000000))*(x13126)*(x13127)*(x13136)))+(((r11)*(x13141)))+(((IkReal(-1.00000000000000))*(x13126)*(x13127)*(x13130)))+(((sj0)*(x13125)*(x13126)))+(((sj0)*(x13124)*(x13126)))+(((IkReal(-1.00000000000000))*(r01)*(x13129)*(x13137)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x13127)))+(x13122)); +evalcond[5]=((((r11)*(sj0)*(x13137)))+(((IkReal(-1.00000000000000))*(x13121)*(x13132)))+(((r01)*(x13141)))+(((IkReal(-1.00000000000000))*(r10)*(x13129)*(x13133)))+(((IkReal(-1.00000000000000))*(x13126)*(x13129)*(x13136)))+(((IkReal(-1.00000000000000))*(x13125)*(x13126)*(x13127)))+(((IkReal(-1.00000000000000))*(x13124)*(x13126)*(x13127)))+(((IkReal(-1.00000000000000))*(x13126)*(x13129)*(x13130)))+(((IkReal(-1.00000000000000))*(sj5)*(x13127)*(x13138)))+(((IkReal(-1.00000000000000))*(x13123)*(x13139)))+(((IkReal(-1.00000000000000))*(r00)*(x13127)*(x13133)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13142=((sj5)*(sj6)); +IkReal x13143=((cj6)*(sj5)); +IkReal x13144=((IkReal(1.00000000000000))*(cj0)); +IkReal x13145=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(r11)*(x13143)*(x13144)))+(((r01)*(sj0)*(x13143)))+(((r00)*(sj0)*(x13142)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x13145)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x13142)*(x13144))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13145)))+(((r21)*(x13143)))+(((r20)*(x13142))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r11)*(x13143)*(x13144)))+(((r01)*(sj0)*(x13143)))+(((r00)*(sj0)*(x13142)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x13145)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x13142)*(x13144)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13145)))+(((r21)*(x13143)))+(((r20)*(x13142)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r11)*(x13143)*(x13144)))+(((r01)*(sj0)*(x13143)))+(((r00)*(sj0)*(x13142)))+(((IkReal(-1.00000000000000))*(r02)*(sj0)*(x13145)))+(((cj0)*(cj5)*(r12)))+(((IkReal(-1.00000000000000))*(r10)*(x13142)*(x13144)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13145)))+(((r21)*(x13143)))+(((r20)*(x13142))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13146=IKsin(j3); +IkReal x13147=IKcos(j3); +IkReal x13148=((sj0)*(sj5)); +IkReal x13149=((r00)*(sj6)); +IkReal x13150=((cj6)*(r01)); +IkReal x13151=((cj4)*(cj5)); +IkReal x13152=((IkReal(1.00000000000000))*(cj0)); +IkReal x13153=((cj5)*(r12)); +IkReal x13154=((IkReal(1.00000000000000))*(sj0)); +IkReal x13155=((cj6)*(r11)); +IkReal x13156=((cj5)*(r02)); +IkReal x13157=((IkReal(1.00000000000000))*(cj1)); +IkReal x13158=((cj6)*(sj4)); +IkReal x13159=((cj6)*(r21)); +IkReal x13160=((r20)*(sj6)); +IkReal x13161=((r10)*(sj6)); +IkReal x13162=((sj4)*(sj6)); +IkReal x13163=((cj4)*(r02)); +IkReal x13164=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x13165=((IkReal(1.00000000000000))*(x13146)); +IkReal x13166=((cj0)*(x13162)); +evalcond[0]=((((sj5)*(x13159)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(sj1)*(x13147)))+(((sj5)*(x13160)))); +evalcond[1]=((((x13151)*(x13159)))+(((r20)*(x13158)))+(((cj4)*(r22)*(sj5)))+(((x13151)*(x13160)))+(((IkReal(-1.00000000000000))*(sj1)*(x13165)))+(((IkReal(-1.00000000000000))*(r21)*(x13162)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x13165)))+(((IkReal(-1.00000000000000))*(sj5)*(x13152)*(x13161)))+(((cj0)*(x13153)))+(((x13148)*(x13150)))+(((x13148)*(x13149)))+(((IkReal(-1.00000000000000))*(sj5)*(x13152)*(x13155)))+(((IkReal(-1.00000000000000))*(x13154)*(x13156)))); +evalcond[3]=((((sj0)*(x13153)))+(((IkReal(-1.00000000000000))*(x13147)*(x13157)))+(((IkReal(-1.00000000000000))*(sj5)*(x13150)*(x13152)))+(((IkReal(-1.00000000000000))*(sj5)*(x13149)*(x13152)))+(((cj0)*(x13156)))+(((IkReal(-1.00000000000000))*(x13148)*(x13161)))+(((IkReal(-1.00000000000000))*(x13148)*(x13155)))); +evalcond[4]=((((r11)*(x13166)))+(((x13148)*(x13163)))+(((r00)*(sj0)*(x13158)))+(((sj0)*(x13149)*(x13151)))+(x13147)+(((IkReal(-1.00000000000000))*(x13151)*(x13152)*(x13155)))+(((IkReal(-1.00000000000000))*(r01)*(x13154)*(x13162)))+(((IkReal(-1.00000000000000))*(x13151)*(x13152)*(x13161)))+(((IkReal(-1.00000000000000))*(r10)*(x13152)*(x13158)))+(((sj0)*(x13150)*(x13151)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x13152)))); +evalcond[5]=((((r01)*(x13166)))+(((IkReal(-1.00000000000000))*(x13149)*(x13151)*(x13152)))+(((IkReal(-1.00000000000000))*(sj5)*(x13152)*(x13163)))+(((IkReal(-1.00000000000000))*(r00)*(x13152)*(x13158)))+(((IkReal(-1.00000000000000))*(x13150)*(x13151)*(x13152)))+(((IkReal(-1.00000000000000))*(r10)*(x13154)*(x13158)))+(((IkReal(-1.00000000000000))*(x13151)*(x13154)*(x13155)))+(((IkReal(-1.00000000000000))*(x13146)*(x13157)))+(((r11)*(sj0)*(x13162)))+(((IkReal(-1.00000000000000))*(x13148)*(x13164)))+(((IkReal(-1.00000000000000))*(x13151)*(x13154)*(x13161)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13167=((r20)*(sj6)); +IkReal x13168=((cj4)*(cj5)); +IkReal x13169=((cj6)*(r21)); +if( IKabs(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13167)*(x13168)))+(((x13168)*(x13169))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst11)*(((((sj5)*(x13167)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13169))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst11)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13167)*(x13168)))+(((x13168)*(x13169)))))), ((gconst11)*(((((sj5)*(x13167)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13169))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13170=IKsin(j3); +IkReal x13171=IKcos(j3); +IkReal x13172=((sj0)*(sj5)); +IkReal x13173=((r00)*(sj6)); +IkReal x13174=((cj6)*(r01)); +IkReal x13175=((cj4)*(cj5)); +IkReal x13176=((IkReal(1.00000000000000))*(cj0)); +IkReal x13177=((cj5)*(r12)); +IkReal x13178=((IkReal(1.00000000000000))*(sj0)); +IkReal x13179=((cj6)*(r11)); +IkReal x13180=((cj5)*(r02)); +IkReal x13181=((IkReal(1.00000000000000))*(cj1)); +IkReal x13182=((cj6)*(sj4)); +IkReal x13183=((cj6)*(r21)); +IkReal x13184=((r20)*(sj6)); +IkReal x13185=((r10)*(sj6)); +IkReal x13186=((sj4)*(sj6)); +IkReal x13187=((cj4)*(r02)); +IkReal x13188=((IkReal(1.00000000000000))*(cj4)*(r12)); +IkReal x13189=((IkReal(1.00000000000000))*(x13170)); +IkReal x13190=((cj0)*(x13186)); +evalcond[0]=((((IkReal(-1.00000000000000))*(sj1)*(x13171)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13184)))+(((sj5)*(x13183)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x13186)))+(((cj4)*(r22)*(sj5)))+(((x13175)*(x13184)))+(((x13175)*(x13183)))+(((r20)*(x13182)))+(((IkReal(-1.00000000000000))*(sj1)*(x13189)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x13178)*(x13180)))+(((x13172)*(x13173)))+(((IkReal(-1.00000000000000))*(x13189)))+(((cj0)*(x13177)))+(((IkReal(-1.00000000000000))*(sj5)*(x13176)*(x13185)))+(((IkReal(-1.00000000000000))*(sj5)*(x13176)*(x13179)))+(((x13172)*(x13174)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13171)*(x13181)))+(((IkReal(-1.00000000000000))*(sj5)*(x13174)*(x13176)))+(((IkReal(-1.00000000000000))*(x13172)*(x13179)))+(((IkReal(-1.00000000000000))*(x13172)*(x13185)))+(((IkReal(-1.00000000000000))*(sj5)*(x13173)*(x13176)))+(((sj0)*(x13177)))+(((cj0)*(x13180)))); +evalcond[4]=((x13171)+(((r00)*(sj0)*(x13182)))+(((IkReal(-1.00000000000000))*(x13175)*(x13176)*(x13185)))+(((IkReal(-1.00000000000000))*(r10)*(x13176)*(x13182)))+(((IkReal(-1.00000000000000))*(r01)*(x13178)*(x13186)))+(((IkReal(-1.00000000000000))*(x13175)*(x13176)*(x13179)))+(((x13172)*(x13187)))+(((IkReal(-1.00000000000000))*(cj4)*(r12)*(sj5)*(x13176)))+(((r11)*(x13190)))+(((sj0)*(x13173)*(x13175)))+(((sj0)*(x13174)*(x13175)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x13175)*(x13178)*(x13179)))+(((IkReal(-1.00000000000000))*(x13173)*(x13175)*(x13176)))+(((IkReal(-1.00000000000000))*(x13172)*(x13188)))+(((IkReal(-1.00000000000000))*(r00)*(x13176)*(x13182)))+(((IkReal(-1.00000000000000))*(x13174)*(x13175)*(x13176)))+(((r01)*(x13190)))+(((IkReal(-1.00000000000000))*(x13170)*(x13181)))+(((IkReal(-1.00000000000000))*(x13175)*(x13178)*(x13185)))+(((IkReal(-1.00000000000000))*(r10)*(x13178)*(x13182)))+(((r11)*(sj0)*(x13186)))+(((IkReal(-1.00000000000000))*(sj5)*(x13176)*(x13187)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +IkReal x13191=((IkReal(1.00000000000000))*(cj0)); +IkReal x13192=((cj4)*(sj6)); +IkReal x13193=((sj0)*(sj4)); +IkReal x13194=((cj5)*(sj6)); +IkReal x13195=((sj4)*(sj5)); +IkReal x13196=((r12)*(sj5)); +IkReal x13197=((IkReal(0.374290000000000))*(cj5)); +IkReal x13198=((r02)*(sj0)); +IkReal x13199=((IkReal(1.00000000000000))*(sj0)); +IkReal x13200=((cj0)*(r10)); +IkReal x13201=((cj4)*(cj6)); +IkReal x13202=((r00)*(sj0)); +IkReal x13203=((cj6)*(r21)); +IkReal x13204=((IkReal(0.374290000000000))*(sj5)); +IkReal x13205=((cj0)*(r00)); +IkReal x13206=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13207=((cj0)*(r02)); +IkReal x13208=((cj5)*(sj4)); +IkReal x13209=((cj6)*(r01)); +IkReal x13210=((cj6)*(r11)); +IkReal x13211=((r01)*(sj0)); +IkReal x13212=((r10)*(sj0)); +IkReal x13213=((IkReal(0.0100000000000000))*(cj5)*(cj6)); +IkReal x13214=((sj6)*(x13204)); +IkReal x13215=((cj0)*(cj6)*(x13204)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j2)), IkReal(6.28318530717959)))); +evalcond[1]=((((r21)*(x13192)))+(((r22)*(x13195)))+(((IkReal(-1.00000000000000))*(r20)*(x13201)))+(((x13203)*(x13208)))+(cj1)+(((r20)*(sj4)*(x13194)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r22)*(x13197)))+(((IkReal(0.364420000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r22)*(x13206)))+(((r20)*(x13214)))+(((IkReal(-0.0100000000000000))*(cj5)*(x13203)))+(pz)+(((x13203)*(x13204)))+(((IkReal(-0.0100000000000000))*(r20)*(x13194)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(r10)*(sj4)*(x13191)*(x13194)))+(((IkReal(-1.00000000000000))*(r12)*(x13191)*(x13195)))+(((IkReal(-1.00000000000000))*(r00)*(x13199)*(x13201)))+(((IkReal(-1.00000000000000))*(x13191)*(x13208)*(x13210)))+(((r00)*(x13193)*(x13194)))+(((x13192)*(x13211)))+(((r02)*(sj5)*(x13193)))+(((IkReal(-1.00000000000000))*(r11)*(x13191)*(x13192)))+(((cj5)*(x13193)*(x13209)))+(((x13200)*(x13201)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x13193)*(x13194)))+(((IkReal(-1.00000000000000))*(cj5)*(x13193)*(x13210)))+(((IkReal(-1.00000000000000))*(r01)*(x13191)*(x13192)))+(((x13201)*(x13212)))+(((IkReal(-1.00000000000000))*(r11)*(x13192)*(x13199)))+(((IkReal(-1.00000000000000))*(sj1)))+(((IkReal(-1.00000000000000))*(r02)*(x13191)*(x13195)))+(((IkReal(-1.00000000000000))*(x13191)*(x13208)*(x13209)))+(((IkReal(-1.00000000000000))*(r00)*(sj4)*(x13191)*(x13194)))+(((x13201)*(x13205)))+(((IkReal(-1.00000000000000))*(x13193)*(x13196)))); +evalcond[5]=((IkReal(-0.0690000000000000))+(((sj0)*(x13204)*(x13209)))+(((x13202)*(x13214)))+(((IkReal(-0.0100000000000000))*(x13194)*(x13202)))+(((IkReal(-1.00000000000000))*(cj0)*(x13204)*(x13210)))+(((IkReal(-1.00000000000000))*(py)*(x13191)))+(((cj0)*(r12)*(x13197)))+(((IkReal(-1.00000000000000))*(x13200)*(x13214)))+(((IkReal(0.0100000000000000))*(cj0)*(x13196)))+(((IkReal(-1.00000000000000))*(x13197)*(x13198)))+(((IkReal(0.0100000000000000))*(x13194)*(x13200)))+(((IkReal(-0.0100000000000000))*(cj5)*(sj0)*(x13209)))+(((IkReal(-1.00000000000000))*(x13198)*(x13206)))+(((px)*(sj0)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x13210)))); +evalcond[6]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(py)*(x13199)))+(((IkReal(0.0100000000000000))*(cj5)*(sj0)*(x13210)))+(((IkReal(-1.00000000000000))*(x13205)*(x13214)))+(((IkReal(-1.00000000000000))*(sj0)*(x13204)*(x13210)))+(((IkReal(0.0100000000000000))*(x13194)*(x13205)))+(((IkReal(0.0100000000000000))*(sj0)*(x13196)))+(((x13206)*(x13207)))+(((r12)*(sj0)*(x13197)))+(((IkReal(0.0100000000000000))*(cj0)*(cj5)*(x13209)))+(((IkReal(-1.00000000000000))*(x13212)*(x13214)))+(((x13197)*(x13207)))+(((IkReal(0.0100000000000000))*(x13194)*(x13212)))+(((IkReal(-1.00000000000000))*(cj0)*(x13204)*(x13209)))+(((IkReal(0.364420000000000))*(cj1)))+(((IkReal(-1.00000000000000))*(px)*(x13191)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +IkReal gconst12; +gconst12=IKsign(sj1); +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=sj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal dummyeval[1]; +dummyeval[0]=cj1; +if( IKabs(dummyeval[0]) < 0.0000010000000000 ) +{ +{ +IkReal evalcond[9]; +IkReal x13216=((IkReal(1.00000000000000))*(cj0)); +IkReal x13217=((cj4)*(sj6)); +IkReal x13218=((sj0)*(sj6)); +IkReal x13219=((cj5)*(sj4)); +IkReal x13220=((IkReal(0.374290000000000))*(sj5)); +IkReal x13221=((sj4)*(sj5)); +IkReal x13222=((cj0)*(cj6)); +IkReal x13223=((IkReal(0.0100000000000000))*(cj5)); +IkReal x13224=((cj4)*(sj5)); +IkReal x13225=((cj5)*(sj0)); +IkReal x13226=((IkReal(0.374290000000000))*(r02)); +IkReal x13227=((r20)*(sj6)); +IkReal x13228=((cj6)*(r21)); +IkReal x13229=((IkReal(1.00000000000000))*(sj0)); +IkReal x13230=((cj0)*(sj6)); +IkReal x13231=((cj4)*(cj6)); +IkReal x13232=((IkReal(0.374290000000000))*(r12)); +IkReal x13233=((cj0)*(cj5)); +IkReal x13234=((cj6)*(sj5)); +IkReal x13235=((cj6)*(r01)); +IkReal x13236=((r00)*(sj6)); +IkReal x13237=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13238=((cj6)*(r11)); +IkReal x13239=((IkReal(1.00000000000000))*(r10)); +IkReal x13240=((r02)*(sj0)); +IkReal x13241=((cj6)*(sj4)); +IkReal x13242=((r12)*(x13229)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(1.57079632679490))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r20)*(x13231)))+(((r22)*(x13221)))+(((x13219)*(x13227)))+(((x13219)*(x13228)))+(((r21)*(x13217)))); +evalcond[2]=((IkReal(0.364420000000000))+(((x13220)*(x13227)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x13223)*(x13227)))+(pz)+(((x13220)*(x13228)))+(((IkReal(-1.00000000000000))*(r22)*(x13237)))+(((IkReal(-1.00000000000000))*(x13223)*(x13228)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x13216)*(x13236)))+(((IkReal(-1.00000000000000))*(r01)*(x13216)*(x13234)))+(((IkReal(-1.00000000000000))*(r11)*(x13229)*(x13234)))+(((r12)*(x13225)))+(((IkReal(-1.00000000000000))*(sj5)*(x13218)*(x13239)))+(((r02)*(x13233)))); +evalcond[4]=((((cj4)*(r10)*(x13222)))+(((IkReal(-1.00000000000000))*(r12)*(x13216)*(x13221)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x13216)*(x13219)))+(((sj0)*(x13219)*(x13235)))+(((r00)*(x13218)*(x13219)))+(((IkReal(-1.00000000000000))*(r11)*(x13216)*(x13217)))+(((x13221)*(x13240)))+(((IkReal(-1.00000000000000))*(r00)*(x13229)*(x13231)))+(((r01)*(sj0)*(x13217)))+(((IkReal(-1.00000000000000))*(x13216)*(x13219)*(x13238)))); +evalcond[5]=((IkReal(-1.00000000000000))+(((IkReal(-1.00000000000000))*(x13219)*(x13229)*(x13238)))+(((cj4)*(r00)*(x13222)))+(((IkReal(-1.00000000000000))*(x13216)*(x13219)*(x13235)))+(((IkReal(-1.00000000000000))*(r11)*(x13217)*(x13229)))+(((r10)*(sj0)*(x13231)))+(((IkReal(-1.00000000000000))*(x13216)*(x13219)*(x13236)))+(((IkReal(-1.00000000000000))*(x13218)*(x13219)*(x13239)))+(((IkReal(-1.00000000000000))*(r01)*(x13216)*(x13217)))+(((IkReal(-1.00000000000000))*(x13221)*(x13242)))+(((IkReal(-1.00000000000000))*(r02)*(x13216)*(x13221)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((IkReal(-1.00000000000000))*(r10)*(x13220)*(x13230)))+(((IkReal(-1.00000000000000))*(r00)*(x13218)*(x13223)))+(((r00)*(x13218)*(x13220)))+(((x13232)*(x13233)))+(((sj0)*(x13220)*(x13235)))+(((IkReal(-1.00000000000000))*(py)*(x13216)))+(((r10)*(x13223)*(x13230)))+(((IkReal(-1.00000000000000))*(r11)*(x13220)*(x13222)))+(((r11)*(x13222)*(x13223)))+(((IkReal(-1.00000000000000))*(sj0)*(x13223)*(x13235)))+(((cj0)*(r12)*(x13237)))+(((IkReal(-1.00000000000000))*(x13225)*(x13226)))+(((IkReal(-1.00000000000000))*(x13237)*(x13240)))+(((px)*(sj0)))); +evalcond[7]=((((IkReal(-1.00000000000000))*(r00)*(x13216)*(x13241)))+(((IkReal(-1.00000000000000))*(r10)*(x13229)*(x13241)))+(((IkReal(-1.00000000000000))*(x13224)*(x13242)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x13216)*(x13217)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x13216)*(x13231)))+(((IkReal(-1.00000000000000))*(r11)*(x13225)*(x13231)))+(((r11)*(sj4)*(x13218)))+(((IkReal(-1.00000000000000))*(x13217)*(x13225)*(x13239)))+(((IkReal(-1.00000000000000))*(r02)*(x13216)*(x13224)))+(((r01)*(sj4)*(x13230)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((IkReal(-1.00000000000000))*(sj0)*(x13220)*(x13238)))+(((IkReal(-1.00000000000000))*(r01)*(x13220)*(x13222)))+(((sj0)*(x13223)*(x13238)))+(((r12)*(sj0)*(x13237)))+(((r10)*(x13218)*(x13223)))+(((IkReal(-1.00000000000000))*(py)*(x13229)))+(((cj0)*(r02)*(x13237)))+(((x13225)*(x13232)))+(((IkReal(-1.00000000000000))*(px)*(x13216)))+(((r01)*(x13222)*(x13223)))+(((IkReal(-1.00000000000000))*(r10)*(x13218)*(x13220)))+(((r00)*(x13223)*(x13230)))+(((x13226)*(x13233)))+(((IkReal(-1.00000000000000))*(r00)*(x13220)*(x13230)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13243=((r20)*(sj6)); +IkReal x13244=((cj4)*(cj5)); +IkReal x13245=((cj6)*(r21)); +if( IKabs(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13244)*(x13245)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13243)*(x13244))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((sj5)*(x13243)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13245))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13244)*(x13245)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13243)*(x13244)))))+IKsqr(((((sj5)*(x13243)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13245)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13244)*(x13245)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))+(((x13243)*(x13244)))), ((((sj5)*(x13243)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13245))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x13246=IKsin(j3); +IkReal x13247=((sj0)*(sj5)); +IkReal x13248=((r00)*(sj6)); +IkReal x13249=((cj6)*(r01)); +IkReal x13250=((cj5)*(sj0)); +IkReal x13251=((cj0)*(cj5)); +IkReal x13252=((cj6)*(sj4)); +IkReal x13253=((sj4)*(sj6)); +IkReal x13254=((cj0)*(r11)); +IkReal x13255=((cj4)*(cj6)); +IkReal x13256=((cj4)*(sj6)); +IkReal x13257=((IkReal(1.00000000000000))*(cj0)); +IkReal x13258=((cj4)*(sj5)); +IkReal x13259=((sj5)*(sj6)); +IkReal x13260=((cj6)*(sj5)); +IkReal x13261=((IkReal(1.00000000000000))*(IKcos(j3))); +evalcond[0]=((((r21)*(x13260)))+(((IkReal(-1.00000000000000))*(x13261)))+(((r20)*(x13259)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(x13253)))+(((r20)*(x13252)))+(((cj5)*(r20)*(x13256)))+(((IkReal(-1.00000000000000))*(x13246)))+(((r22)*(x13258)))+(((cj5)*(r21)*(x13255)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x13250)))+(x13246)+(((x13247)*(x13249)))+(((IkReal(-1.00000000000000))*(r10)*(x13257)*(x13259)))+(((IkReal(-1.00000000000000))*(x13254)*(x13260)))+(((r12)*(x13251)))+(((x13247)*(x13248)))); +evalcond[3]=((((cj4)*(x13249)*(x13250)))+(((cj4)*(x13248)*(x13250)))+(((IkReal(-1.00000000000000))*(r11)*(x13251)*(x13255)))+(((IkReal(-1.00000000000000))*(r10)*(x13251)*(x13256)))+(((IkReal(-1.00000000000000))*(x13261)))+(((r00)*(sj0)*(x13252)))+(((IkReal(-1.00000000000000))*(r10)*(x13252)*(x13257)))+(((IkReal(-1.00000000000000))*(r12)*(x13257)*(x13258)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x13253)))+(((cj4)*(r02)*(x13247)))+(((x13253)*(x13254)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +IkReal x13262=((IkReal(1.00000000000000))*(cj0)); +IkReal x13263=((cj4)*(sj6)); +IkReal x13264=((sj0)*(sj6)); +IkReal x13265=((cj5)*(sj4)); +IkReal x13266=((IkReal(0.374290000000000))*(sj5)); +IkReal x13267=((sj4)*(sj5)); +IkReal x13268=((cj0)*(cj6)); +IkReal x13269=((IkReal(0.0100000000000000))*(cj5)); +IkReal x13270=((cj4)*(sj5)); +IkReal x13271=((cj5)*(sj0)); +IkReal x13272=((IkReal(0.374290000000000))*(r02)); +IkReal x13273=((r20)*(sj6)); +IkReal x13274=((cj6)*(r21)); +IkReal x13275=((IkReal(1.00000000000000))*(sj0)); +IkReal x13276=((cj0)*(sj6)); +IkReal x13277=((cj4)*(cj6)); +IkReal x13278=((IkReal(0.374290000000000))*(r12)); +IkReal x13279=((cj0)*(cj5)); +IkReal x13280=((cj6)*(sj5)); +IkReal x13281=((cj6)*(r01)); +IkReal x13282=((r00)*(sj6)); +IkReal x13283=((IkReal(0.0100000000000000))*(sj5)); +IkReal x13284=((cj6)*(r11)); +IkReal x13285=((IkReal(1.00000000000000))*(r10)); +IkReal x13286=((r02)*(sj0)); +IkReal x13287=((cj6)*(sj4)); +IkReal x13288=((r12)*(x13275)); +evalcond[0]=((IkReal(-3.14159265358979))+(IKfmod(((IkReal(4.71238898038469))+(j1)), IkReal(6.28318530717959)))); +evalcond[1]=((((x13265)*(x13273)))+(((IkReal(-1.00000000000000))*(r20)*(x13277)))+(((r21)*(x13263)))+(((x13265)*(x13274)))+(((r22)*(x13267)))); +evalcond[2]=((IkReal(-0.364420000000000))+(((IkReal(-1.00000000000000))*(x13269)*(x13274)))+(((x13266)*(x13274)))+(((IkReal(-0.374290000000000))*(cj5)*(r22)))+(pz)+(((IkReal(-1.00000000000000))*(x13269)*(x13273)))+(((IkReal(-1.00000000000000))*(r22)*(x13283)))+(((x13266)*(x13273)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(sj5)*(x13262)*(x13282)))+(((r02)*(x13279)))+(((r12)*(x13271)))+(((IkReal(-1.00000000000000))*(r11)*(x13275)*(x13280)))+(((IkReal(-1.00000000000000))*(r01)*(x13262)*(x13280)))+(((IkReal(-1.00000000000000))*(sj5)*(x13264)*(x13285)))); +evalcond[4]=((((r01)*(sj0)*(x13263)))+(((IkReal(-1.00000000000000))*(r00)*(x13275)*(x13277)))+(((cj4)*(r10)*(x13268)))+(((sj0)*(x13265)*(x13281)))+(((IkReal(-1.00000000000000))*(r11)*(x13262)*(x13263)))+(((IkReal(-1.00000000000000))*(x13262)*(x13265)*(x13284)))+(((IkReal(-1.00000000000000))*(r10)*(sj6)*(x13262)*(x13265)))+(((IkReal(-1.00000000000000))*(r12)*(x13262)*(x13267)))+(((r00)*(x13264)*(x13265)))+(((x13267)*(x13286)))); +evalcond[5]=((IkReal(1.00000000000000))+(((IkReal(-1.00000000000000))*(r02)*(x13262)*(x13267)))+(((IkReal(-1.00000000000000))*(x13267)*(x13288)))+(((IkReal(-1.00000000000000))*(x13262)*(x13265)*(x13281)))+(((r10)*(sj0)*(x13277)))+(((IkReal(-1.00000000000000))*(x13264)*(x13265)*(x13285)))+(((cj4)*(r00)*(x13268)))+(((IkReal(-1.00000000000000))*(r11)*(x13263)*(x13275)))+(((IkReal(-1.00000000000000))*(x13265)*(x13275)*(x13284)))+(((IkReal(-1.00000000000000))*(r01)*(x13262)*(x13263)))+(((IkReal(-1.00000000000000))*(x13262)*(x13265)*(x13282)))); +evalcond[6]=((IkReal(-0.0690000000000000))+(((sj0)*(x13266)*(x13281)))+(((IkReal(-1.00000000000000))*(r10)*(x13266)*(x13276)))+(((IkReal(-1.00000000000000))*(sj0)*(x13269)*(x13281)))+(((IkReal(-1.00000000000000))*(x13283)*(x13286)))+(((r11)*(x13268)*(x13269)))+(((cj0)*(r12)*(x13283)))+(((IkReal(-1.00000000000000))*(r11)*(x13266)*(x13268)))+(((r10)*(x13269)*(x13276)))+(((IkReal(-1.00000000000000))*(r00)*(x13264)*(x13269)))+(((IkReal(-1.00000000000000))*(py)*(x13262)))+(((r00)*(x13264)*(x13266)))+(((px)*(sj0)))+(((IkReal(-1.00000000000000))*(x13271)*(x13272)))+(((x13278)*(x13279)))); +evalcond[7]=((((r11)*(sj4)*(x13264)))+(((IkReal(-1.00000000000000))*(x13263)*(x13271)*(x13285)))+(((IkReal(-1.00000000000000))*(r02)*(x13262)*(x13270)))+(((IkReal(-1.00000000000000))*(x13270)*(x13288)))+(((IkReal(-1.00000000000000))*(r10)*(x13275)*(x13287)))+(((r01)*(sj4)*(x13276)))+(((IkReal(-1.00000000000000))*(r00)*(x13262)*(x13287)))+(((IkReal(-1.00000000000000))*(cj5)*(r01)*(x13262)*(x13277)))+(((IkReal(-1.00000000000000))*(cj5)*(r00)*(x13262)*(x13263)))+(((IkReal(-1.00000000000000))*(r11)*(x13271)*(x13277)))); +evalcond[8]=((IkReal(0.0690000000000000))+(((r12)*(sj0)*(x13283)))+(((r00)*(x13269)*(x13276)))+(((sj0)*(x13269)*(x13284)))+(((IkReal(-1.00000000000000))*(sj0)*(x13266)*(x13284)))+(((x13271)*(x13278)))+(((r01)*(x13268)*(x13269)))+(((IkReal(-1.00000000000000))*(r00)*(x13266)*(x13276)))+(((x13272)*(x13279)))+(((cj0)*(r02)*(x13283)))+(((r10)*(x13264)*(x13269)))+(((IkReal(-1.00000000000000))*(py)*(x13275)))+(((IkReal(-1.00000000000000))*(r01)*(x13266)*(x13268)))+(((IkReal(-1.00000000000000))*(r10)*(x13264)*(x13266)))+(((IkReal(-1.00000000000000))*(px)*(x13262)))); +if( IKabs(evalcond[0]) < 0.0000010000000000 && IKabs(evalcond[1]) < 0.0000010000000000 && IKabs(evalcond[2]) < 0.0000010000000000 && IKabs(evalcond[3]) < 0.0000010000000000 && IKabs(evalcond[4]) < 0.0000010000000000 && IKabs(evalcond[5]) < 0.0000010000000000 && IKabs(evalcond[6]) < 0.0000010000000000 && IKabs(evalcond[7]) < 0.0000010000000000 && IKabs(evalcond[8]) < 0.0000010000000000 ) +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13289=((IkReal(1.00000000000000))*(sj5)); +IkReal x13290=((cj6)*(r21)); +IkReal x13291=((r20)*(sj6)); +IkReal x13292=((IkReal(1.00000000000000))*(cj4)*(cj5)); +if( IKabs(((((IkReal(-1.00000000000000))*(x13290)*(x13292)))+(((IkReal(-1.00000000000000))*(x13291)*(x13292)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13289)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IkReal(-1.00000000000000))*(x13289)*(x13291)))+(((IkReal(-1.00000000000000))*(x13289)*(x13290)))+(((cj5)*(r22))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IkReal(-1.00000000000000))*(x13290)*(x13292)))+(((IkReal(-1.00000000000000))*(x13291)*(x13292)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13289)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))))+IKsqr(((((IkReal(-1.00000000000000))*(x13289)*(x13291)))+(((IkReal(-1.00000000000000))*(x13289)*(x13290)))+(((cj5)*(r22)))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IkReal(-1.00000000000000))*(x13290)*(x13292)))+(((IkReal(-1.00000000000000))*(x13291)*(x13292)))+(((r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(cj4)*(r22)*(x13289)))+(((IkReal(-1.00000000000000))*(cj6)*(r20)*(sj4)))), ((((IkReal(-1.00000000000000))*(x13289)*(x13291)))+(((IkReal(-1.00000000000000))*(x13289)*(x13290)))+(((cj5)*(r22))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[4]; +IkReal x13293=IKsin(j3); +IkReal x13294=IKcos(j3); +IkReal x13295=((sj0)*(sj5)); +IkReal x13296=((r00)*(sj6)); +IkReal x13297=((cj6)*(r01)); +IkReal x13298=((cj0)*(cj5)); +IkReal x13299=((IkReal(1.00000000000000))*(cj5)); +IkReal x13300=((cj4)*(cj5)); +IkReal x13301=((cj6)*(sj4)); +IkReal x13302=((sj4)*(sj6)); +IkReal x13303=((cj0)*(r11)); +IkReal x13304=((IkReal(1.00000000000000))*(cj4)); +IkReal x13305=((cj6)*(r21)); +IkReal x13306=((r20)*(sj6)); +IkReal x13307=((cj0)*(sj5)); +IkReal x13308=((r10)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(r22)*(x13299)))+(((sj5)*(x13306)))+(((sj5)*(x13305)))+(x13294)); +evalcond[1]=((((r20)*(x13301)))+(((x13300)*(x13305)))+(((x13300)*(x13306)))+(((cj4)*(r22)*(sj5)))+(x13293)+(((IkReal(-1.00000000000000))*(r21)*(x13302)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(sj0)*(x13299)))+(((x13295)*(x13296)))+(((r12)*(x13298)))+(((x13295)*(x13297)))+(((IkReal(-1.00000000000000))*(cj6)*(sj5)*(x13303)))+(((IkReal(-1.00000000000000))*(x13307)*(x13308)))+(x13293)); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13298)*(x13304)*(x13308)))+(((sj0)*(x13296)*(x13300)))+(((IkReal(-1.00000000000000))*(r01)*(sj0)*(x13302)))+(((IkReal(-1.00000000000000))*(cj0)*(r10)*(x13301)))+(((sj0)*(x13297)*(x13300)))+(((cj4)*(r02)*(x13295)))+(((x13302)*(x13303)))+(((IkReal(-1.00000000000000))*(r12)*(x13304)*(x13307)))+(((IkReal(-1.00000000000000))*(cj6)*(r11)*(x13298)*(x13304)))+(((IkReal(-1.00000000000000))*(x13294)))+(((r00)*(sj0)*(x13301)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13309=((cj5)*(r02)); +IkReal x13310=((cj0)*(sj5)); +IkReal x13311=((r10)*(sj6)); +IkReal x13312=((IkReal(1.00000000000000))*(cj6)); +IkReal x13313=((sj0)*(sj5)); +IkReal x13314=((cj5)*(r12)); +IkReal x13315=((IkReal(1.00000000000000))*(r00)*(sj6)); +if( IKabs(((((sj0)*(x13309)))+(((x13310)*(x13311)))+(((IkReal(-1.00000000000000))*(r01)*(x13312)*(x13313)))+(((cj6)*(r11)*(x13310)))+(((IkReal(-1.00000000000000))*(x13313)*(x13315)))+(((IkReal(-1.00000000000000))*(cj0)*(x13314))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x13310)*(x13312)))+(((sj0)*(x13314)))+(((IkReal(-1.00000000000000))*(r11)*(x13312)*(x13313)))+(((IkReal(-1.00000000000000))*(x13310)*(x13315)))+(((IkReal(-1.00000000000000))*(x13311)*(x13313)))+(((cj0)*(x13309))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((sj0)*(x13309)))+(((x13310)*(x13311)))+(((IkReal(-1.00000000000000))*(r01)*(x13312)*(x13313)))+(((cj6)*(r11)*(x13310)))+(((IkReal(-1.00000000000000))*(x13313)*(x13315)))+(((IkReal(-1.00000000000000))*(cj0)*(x13314)))))+IKsqr(((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x13310)*(x13312)))+(((sj0)*(x13314)))+(((IkReal(-1.00000000000000))*(r11)*(x13312)*(x13313)))+(((IkReal(-1.00000000000000))*(x13310)*(x13315)))+(((IkReal(-1.00000000000000))*(x13311)*(x13313)))+(((cj0)*(x13309)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((sj0)*(x13309)))+(((x13310)*(x13311)))+(((IkReal(-1.00000000000000))*(r01)*(x13312)*(x13313)))+(((cj6)*(r11)*(x13310)))+(((IkReal(-1.00000000000000))*(x13313)*(x13315)))+(((IkReal(-1.00000000000000))*(cj0)*(x13314)))), ((((IKabs(cj1) != 0)?((IkReal)1/(cj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r01)*(x13310)*(x13312)))+(((sj0)*(x13314)))+(((IkReal(-1.00000000000000))*(r11)*(x13312)*(x13313)))+(((IkReal(-1.00000000000000))*(x13310)*(x13315)))+(((IkReal(-1.00000000000000))*(x13311)*(x13313)))+(((cj0)*(x13309))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13316=IKsin(j3); +IkReal x13317=IKcos(j3); +IkReal x13318=((sj0)*(sj5)); +IkReal x13319=((r00)*(sj6)); +IkReal x13320=((IkReal(1.00000000000000))*(cj4)); +IkReal x13321=((cj6)*(r01)); +IkReal x13322=((cj0)*(cj5)); +IkReal x13323=((cj5)*(sj0)); +IkReal x13324=((cj6)*(r11)); +IkReal x13325=((cj0)*(sj5)); +IkReal x13326=((IkReal(1.00000000000000))*(cj1)); +IkReal x13327=((cj6)*(sj4)); +IkReal x13328=((IkReal(1.00000000000000))*(sj1)); +IkReal x13329=((cj4)*(cj5)); +IkReal x13330=((cj6)*(r21)); +IkReal x13331=((r20)*(sj6)); +IkReal x13332=((r10)*(sj6)); +IkReal x13333=((IkReal(1.00000000000000))*(cj0)); +IkReal x13334=((cj0)*(sj4)*(sj6)); +IkReal x13335=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13317)*(x13328)))+(((sj5)*(x13331)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13330)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(x13316)*(x13328)))+(((x13329)*(x13331)))+(((cj4)*(r22)*(sj5)))+(((x13329)*(x13330)))+(((r20)*(x13327)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x13323)))+(((IkReal(-1.00000000000000))*(x13324)*(x13325)))+(((r12)*(x13322)))+(((x13318)*(x13321)))+(((x13318)*(x13319)))+(x13316)+(((IkReal(-1.00000000000000))*(x13325)*(x13332)))); +evalcond[3]=((((r12)*(x13323)))+(((IkReal(-1.00000000000000))*(x13321)*(x13325)))+(((IkReal(-1.00000000000000))*(x13317)*(x13326)))+(((IkReal(-1.00000000000000))*(x13319)*(x13325)))+(((r02)*(x13322)))+(((IkReal(-1.00000000000000))*(x13318)*(x13324)))+(((IkReal(-1.00000000000000))*(x13318)*(x13332)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x13320)*(x13322)*(x13332)))+(((cj4)*(x13321)*(x13323)))+(((cj4)*(x13319)*(x13323)))+(((r11)*(x13334)))+(((IkReal(-1.00000000000000))*(x13317)))+(((IkReal(-1.00000000000000))*(r01)*(x13335)))+(((IkReal(-1.00000000000000))*(x13320)*(x13322)*(x13324)))+(((IkReal(-1.00000000000000))*(r12)*(x13320)*(x13325)))+(((r00)*(sj0)*(x13327)))+(((cj4)*(r02)*(x13318)))+(((IkReal(-1.00000000000000))*(r10)*(x13327)*(x13333)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x13320)*(x13323)*(x13332)))+(((IkReal(-1.00000000000000))*(r12)*(x13318)*(x13320)))+(((IkReal(-1.00000000000000))*(x13316)*(x13326)))+(((IkReal(-1.00000000000000))*(r00)*(x13327)*(x13333)))+(((r11)*(x13335)))+(((IkReal(-1.00000000000000))*(r02)*(x13320)*(x13325)))+(((IkReal(-1.00000000000000))*(x13320)*(x13321)*(x13322)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13327)))+(((IkReal(-1.00000000000000))*(x13320)*(x13323)*(x13324)))+(((IkReal(-1.00000000000000))*(x13319)*(x13320)*(x13322)))+(((r01)*(x13334)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13336=((sj5)*(sj6)); +IkReal x13337=((IkReal(1.00000000000000))*(sj0)); +IkReal x13338=((cj6)*(sj5)); +IkReal x13339=((IkReal(1.00000000000000))*(cj5)); +if( IKabs(((((cj0)*(r10)*(x13336)))+(((cj0)*(r11)*(x13338)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x13339)))+(((IkReal(-1.00000000000000))*(r00)*(x13336)*(x13337)))+(((IkReal(-1.00000000000000))*(r01)*(x13337)*(x13338))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13339)))+(((r20)*(x13336)))+(((r21)*(x13338))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((cj0)*(r10)*(x13336)))+(((cj0)*(r11)*(x13338)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x13339)))+(((IkReal(-1.00000000000000))*(r00)*(x13336)*(x13337)))+(((IkReal(-1.00000000000000))*(r01)*(x13337)*(x13338)))))+IKsqr(((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13339)))+(((r20)*(x13336)))+(((r21)*(x13338)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((cj0)*(r10)*(x13336)))+(((cj0)*(r11)*(x13338)))+(((cj5)*(r02)*(sj0)))+(((IkReal(-1.00000000000000))*(cj0)*(r12)*(x13339)))+(((IkReal(-1.00000000000000))*(r00)*(x13336)*(x13337)))+(((IkReal(-1.00000000000000))*(r01)*(x13337)*(x13338)))), ((((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(r22)*(x13339)))+(((r20)*(x13336)))+(((r21)*(x13338))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13340=IKsin(j3); +IkReal x13341=IKcos(j3); +IkReal x13342=((sj0)*(sj5)); +IkReal x13343=((r00)*(sj6)); +IkReal x13344=((IkReal(1.00000000000000))*(cj4)); +IkReal x13345=((cj6)*(r01)); +IkReal x13346=((cj0)*(cj5)); +IkReal x13347=((cj5)*(sj0)); +IkReal x13348=((cj6)*(r11)); +IkReal x13349=((cj0)*(sj5)); +IkReal x13350=((IkReal(1.00000000000000))*(cj1)); +IkReal x13351=((cj6)*(sj4)); +IkReal x13352=((IkReal(1.00000000000000))*(sj1)); +IkReal x13353=((cj4)*(cj5)); +IkReal x13354=((cj6)*(r21)); +IkReal x13355=((r20)*(sj6)); +IkReal x13356=((r10)*(sj6)); +IkReal x13357=((IkReal(1.00000000000000))*(cj0)); +IkReal x13358=((cj0)*(sj4)*(sj6)); +IkReal x13359=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13341)*(x13352)))+(((sj5)*(x13355)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13354)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13353)*(x13354)))+(((cj4)*(r22)*(sj5)))+(((x13353)*(x13355)))+(((IkReal(-1.00000000000000))*(x13340)*(x13352)))+(((r20)*(x13351)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x13349)*(x13356)))+(((r12)*(x13346)))+(((IkReal(-1.00000000000000))*(x13348)*(x13349)))+(((x13342)*(x13345)))+(x13340)+(((x13342)*(x13343)))+(((IkReal(-1.00000000000000))*(r02)*(x13347)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13341)*(x13350)))+(((IkReal(-1.00000000000000))*(x13342)*(x13348)))+(((IkReal(-1.00000000000000))*(x13342)*(x13356)))+(((IkReal(-1.00000000000000))*(x13343)*(x13349)))+(((r12)*(x13347)))+(((r02)*(x13346)))+(((IkReal(-1.00000000000000))*(x13345)*(x13349)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x13344)*(x13346)*(x13348)))+(((IkReal(-1.00000000000000))*(x13341)))+(((IkReal(-1.00000000000000))*(r10)*(x13351)*(x13357)))+(((IkReal(-1.00000000000000))*(x13344)*(x13346)*(x13356)))+(((cj4)*(x13345)*(x13347)))+(((cj4)*(x13343)*(x13347)))+(((r11)*(x13358)))+(((IkReal(-1.00000000000000))*(r01)*(x13359)))+(((cj4)*(r02)*(x13342)))+(((IkReal(-1.00000000000000))*(r12)*(x13344)*(x13349)))+(((r00)*(sj0)*(x13351)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13351)))+(((IkReal(-1.00000000000000))*(x13340)*(x13350)))+(((IkReal(-1.00000000000000))*(r12)*(x13342)*(x13344)))+(((IkReal(-1.00000000000000))*(x13344)*(x13345)*(x13346)))+(((IkReal(-1.00000000000000))*(x13344)*(x13347)*(x13348)))+(((IkReal(-1.00000000000000))*(r02)*(x13344)*(x13349)))+(((r01)*(x13358)))+(((r11)*(x13359)))+(((IkReal(-1.00000000000000))*(r00)*(x13351)*(x13357)))+(((IkReal(-1.00000000000000))*(x13344)*(x13347)*(x13356)))+(((IkReal(-1.00000000000000))*(x13343)*(x13344)*(x13346)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13360=((r20)*(sj6)); +IkReal x13361=((cj4)*(cj5)); +IkReal x13362=((cj6)*(r21)); +if( IKabs(((gconst12)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13360)*(x13361)))+(((x13361)*(x13362)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst12)*(((((sj5)*(x13360)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13362))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst12)*(((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13360)*(x13361)))+(((x13361)*(x13362)))+(((cj6)*(r20)*(sj4)))+(((cj4)*(r22)*(sj5)))))), ((gconst12)*(((((sj5)*(x13360)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13362))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13363=IKsin(j3); +IkReal x13364=IKcos(j3); +IkReal x13365=((sj0)*(sj5)); +IkReal x13366=((r00)*(sj6)); +IkReal x13367=((IkReal(1.00000000000000))*(cj4)); +IkReal x13368=((cj6)*(r01)); +IkReal x13369=((cj0)*(cj5)); +IkReal x13370=((cj5)*(sj0)); +IkReal x13371=((cj6)*(r11)); +IkReal x13372=((cj0)*(sj5)); +IkReal x13373=((IkReal(1.00000000000000))*(cj1)); +IkReal x13374=((cj6)*(sj4)); +IkReal x13375=((IkReal(1.00000000000000))*(sj1)); +IkReal x13376=((cj4)*(cj5)); +IkReal x13377=((cj6)*(r21)); +IkReal x13378=((r20)*(sj6)); +IkReal x13379=((r10)*(sj6)); +IkReal x13380=((IkReal(1.00000000000000))*(cj0)); +IkReal x13381=((cj0)*(sj4)*(sj6)); +IkReal x13382=((sj0)*(sj4)*(sj6)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13364)*(x13375)))+(((sj5)*(x13378)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13377)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((cj4)*(r22)*(sj5)))+(((x13376)*(x13378)))+(((r20)*(x13374)))+(((x13376)*(x13377)))+(((IkReal(-1.00000000000000))*(x13363)*(x13375)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(x13371)*(x13372)))+(((IkReal(-1.00000000000000))*(r02)*(x13370)))+(((r12)*(x13369)))+(((x13365)*(x13368)))+(((IkReal(-1.00000000000000))*(x13372)*(x13379)))+(x13363)+(((x13365)*(x13366)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13365)*(x13379)))+(((r02)*(x13369)))+(((IkReal(-1.00000000000000))*(x13365)*(x13371)))+(((IkReal(-1.00000000000000))*(x13366)*(x13372)))+(((r12)*(x13370)))+(((IkReal(-1.00000000000000))*(x13368)*(x13372)))+(((IkReal(-1.00000000000000))*(x13364)*(x13373)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r01)*(x13382)))+(((cj4)*(x13368)*(x13370)))+(((cj4)*(x13366)*(x13370)))+(((IkReal(-1.00000000000000))*(r12)*(x13367)*(x13372)))+(((IkReal(-1.00000000000000))*(x13367)*(x13369)*(x13379)))+(((cj4)*(r02)*(x13365)))+(((r11)*(x13381)))+(((IkReal(-1.00000000000000))*(x13364)))+(((IkReal(-1.00000000000000))*(r10)*(x13374)*(x13380)))+(((r00)*(sj0)*(x13374)))+(((IkReal(-1.00000000000000))*(x13367)*(x13369)*(x13371)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r12)*(x13365)*(x13367)))+(((IkReal(-1.00000000000000))*(r00)*(x13374)*(x13380)))+(((IkReal(-1.00000000000000))*(x13367)*(x13370)*(x13379)))+(((IkReal(-1.00000000000000))*(x13366)*(x13367)*(x13369)))+(((IkReal(-1.00000000000000))*(r02)*(x13367)*(x13372)))+(((r11)*(x13382)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13374)))+(((IkReal(-1.00000000000000))*(x13367)*(x13370)*(x13371)))+(((IkReal(-1.00000000000000))*(x13367)*(x13368)*(x13369)))+(((IkReal(-1.00000000000000))*(x13363)*(x13373)))+(((r01)*(x13381)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +if( 1 ) +{ +continue; + +} else +{ +} +} +} +} +} +} +} +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13383=((IKabs(sj2) != 0)?((IkReal)1/(sj2)):(IkReal)1.0e30); +IkReal x13384=((sj5)*(sj6)); +IkReal x13385=((r00)*(sj0)); +IkReal x13386=((cj1)*(cj2)); +IkReal x13387=((cj0)*(r10)); +IkReal x13388=((cj6)*(sj5)); +IkReal x13389=((r01)*(sj0)); +IkReal x13390=((IkReal(1.00000000000000))*(cj0)); +IkReal x13391=((cj5)*(r12)); +IkReal x13392=((IkReal(1.00000000000000))*(cj5)); +IkReal x13393=((r02)*(sj0)); +if( IKabs(((x13383)*(((((x13384)*(x13385)))+(((cj0)*(x13391)))+(((IkReal(-1.00000000000000))*(r11)*(x13388)*(x13390)))+(((IkReal(-1.00000000000000))*(x13392)*(x13393)))+(((x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13384)*(x13387))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((x13383)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13386)*(x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13386)*(x13390)*(x13391)))+(((IkReal(-1.00000000000000))*(x13384)*(x13385)*(x13386)))+(((cj0)*(r11)*(x13386)*(x13388)))+(((r20)*(sj2)*(x13384)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x13392)))+(((cj5)*(x13386)*(x13393)))+(((x13384)*(x13386)*(x13387)))+(((r21)*(sj2)*(x13388))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((x13383)*(((((x13384)*(x13385)))+(((cj0)*(x13391)))+(((IkReal(-1.00000000000000))*(r11)*(x13388)*(x13390)))+(((IkReal(-1.00000000000000))*(x13392)*(x13393)))+(((x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13384)*(x13387)))))))+IKsqr(((x13383)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13386)*(x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13386)*(x13390)*(x13391)))+(((IkReal(-1.00000000000000))*(x13384)*(x13385)*(x13386)))+(((cj0)*(r11)*(x13386)*(x13388)))+(((r20)*(sj2)*(x13384)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x13392)))+(((cj5)*(x13386)*(x13393)))+(((x13384)*(x13386)*(x13387)))+(((r21)*(sj2)*(x13388)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((x13383)*(((((x13384)*(x13385)))+(((cj0)*(x13391)))+(((IkReal(-1.00000000000000))*(r11)*(x13388)*(x13390)))+(((IkReal(-1.00000000000000))*(x13392)*(x13393)))+(((x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13384)*(x13387)))))), ((x13383)*(((IKabs(sj1) != 0)?((IkReal)1/(sj1)):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13386)*(x13388)*(x13389)))+(((IkReal(-1.00000000000000))*(x13386)*(x13390)*(x13391)))+(((IkReal(-1.00000000000000))*(x13384)*(x13385)*(x13386)))+(((cj0)*(r11)*(x13386)*(x13388)))+(((r20)*(sj2)*(x13384)))+(((IkReal(-1.00000000000000))*(r22)*(sj2)*(x13392)))+(((cj5)*(x13386)*(x13393)))+(((x13384)*(x13386)*(x13387)))+(((r21)*(sj2)*(x13388))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13394=IKcos(j3); +IkReal x13395=IKsin(j3); +IkReal x13396=((sj0)*(sj5)); +IkReal x13397=((r00)*(sj6)); +IkReal x13398=((IkReal(1.00000000000000))*(cj4)); +IkReal x13399=((cj6)*(r01)); +IkReal x13400=((cj0)*(cj5)); +IkReal x13401=((cj5)*(sj0)); +IkReal x13402=((cj6)*(r11)); +IkReal x13403=((cj6)*(sj4)); +IkReal x13404=((IkReal(1.00000000000000))*(cj1)); +IkReal x13405=((cj4)*(cj5)); +IkReal x13406=((cj6)*(r21)); +IkReal x13407=((r20)*(sj6)); +IkReal x13408=((r10)*(sj6)); +IkReal x13409=((cj0)*(sj5)); +IkReal x13410=((IkReal(1.00000000000000))*(cj0)); +IkReal x13411=((IkReal(1.00000000000000))*(x13409)); +IkReal x13412=((IkReal(1.00000000000000))*(x13395)); +IkReal x13413=((cj0)*(sj4)*(sj6)); +IkReal x13414=((cj2)*(x13395)); +IkReal x13415=((sj0)*(sj4)*(sj6)); +IkReal x13416=((IkReal(1.00000000000000))*(sj1)*(x13394)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13404)*(x13414)))+(((IkReal(-1.00000000000000))*(x13416)))+(((sj5)*(x13406)))+(((sj5)*(x13407)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13405)*(x13407)))+(((cj4)*(r22)*(sj5)))+(((cj1)*(cj2)*(x13394)))+(((r20)*(x13403)))+(((IkReal(-1.00000000000000))*(sj1)*(x13412)))+(((x13405)*(x13406)))); +evalcond[2]=((((x13396)*(x13399)))+(((r12)*(x13400)))+(((IkReal(-1.00000000000000))*(x13402)*(x13411)))+(((IkReal(-1.00000000000000))*(r02)*(x13401)))+(((IkReal(-1.00000000000000))*(x13408)*(x13411)))+(((x13396)*(x13397)))+(((IkReal(-1.00000000000000))*(sj2)*(x13412)))); +evalcond[3]=((((IkReal(-1.00000000000000))*(x13396)*(x13402)))+(((IkReal(-1.00000000000000))*(x13394)*(x13404)))+(((r12)*(x13401)))+(((IkReal(-1.00000000000000))*(x13399)*(x13411)))+(((IkReal(-1.00000000000000))*(x13396)*(x13408)))+(((r02)*(x13400)))+(((IkReal(-1.00000000000000))*(x13397)*(x13411)))+(((sj1)*(x13414)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(x13398)*(x13400)*(x13402)))+(((cj4)*(x13399)*(x13401)))+(((cj4)*(r02)*(x13396)))+(((cj4)*(x13397)*(x13401)))+(((IkReal(-1.00000000000000))*(x13398)*(x13400)*(x13408)))+(((IkReal(-1.00000000000000))*(r01)*(x13415)))+(((sj2)*(x13394)))+(((IkReal(-1.00000000000000))*(r12)*(x13398)*(x13409)))+(((r00)*(sj0)*(x13403)))+(((IkReal(-1.00000000000000))*(r10)*(x13403)*(x13410)))+(((r11)*(x13413)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x13398)*(x13401)*(x13402)))+(((IkReal(-1.00000000000000))*(x13398)*(x13401)*(x13408)))+(((IkReal(-1.00000000000000))*(r00)*(x13403)*(x13410)))+(((r01)*(x13413)))+(((IkReal(-1.00000000000000))*(cj2)*(x13416)))+(((IkReal(-1.00000000000000))*(r02)*(x13398)*(x13409)))+(((IkReal(-1.00000000000000))*(x13395)*(x13404)))+(((IkReal(-1.00000000000000))*(r12)*(x13396)*(x13398)))+(((IkReal(-1.00000000000000))*(x13397)*(x13398)*(x13400)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13403)))+(((r11)*(x13415)))+(((IkReal(-1.00000000000000))*(x13398)*(x13399)*(x13400)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13417=(cj1)*(cj1); +IkReal x13418=(sj1)*(sj1); +IkReal x13419=((r00)*(sj6)); +IkReal x13420=((cj6)*(r01)); +IkReal x13421=((IkReal(1.00000000000000))*(cj1)); +IkReal x13422=((cj5)*(r22)); +IkReal x13423=((sj5)*(sj6)); +IkReal x13424=((r10)*(sj0)); +IkReal x13425=((cj1)*(cj5)); +IkReal x13426=((cj0)*(r02)); +IkReal x13427=((r12)*(sj0)); +IkReal x13428=((IkReal(1.00000000000000))*(sj1)); +IkReal x13429=((cj6)*(sj5)); +IkReal x13430=((cj0)*(sj5)); +IkReal x13431=((r11)*(sj0)); +IkReal x13432=((sj1)*(x13430)); +if( IKabs(((((IKabs(((((cj2)*(x13418)))+(((cj2)*(x13417))))) != 0)?((IkReal)1/(((((cj2)*(x13418)))+(((cj2)*(x13417)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x13426)*(x13428)))+(((cj1)*(r21)*(x13429)))+(((x13420)*(x13432)))+(((sj1)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13421)*(x13422)))+(((sj1)*(x13423)*(x13424)))+(((cj1)*(r20)*(x13423)))+(((x13419)*(x13432)))+(((IkReal(-1.00000000000000))*(cj5)*(x13427)*(x13428))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((((IKabs(((x13417)+(x13418))) != 0)?((IkReal)1/(((x13417)+(x13418)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13419)*(x13421)*(x13430)))+(((r20)*(sj1)*(x13423)))+(((x13425)*(x13427)))+(((r21)*(sj1)*(x13429)))+(((IkReal(-1.00000000000000))*(x13421)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13420)*(x13421)*(x13430)))+(((x13425)*(x13426)))+(((IkReal(-1.00000000000000))*(x13421)*(x13423)*(x13424)))+(((IkReal(-1.00000000000000))*(x13422)*(x13428))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(IKsqr(((((IKabs(((((cj2)*(x13418)))+(((cj2)*(x13417))))) != 0)?((IkReal)1/(((((cj2)*(x13418)))+(((cj2)*(x13417)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x13426)*(x13428)))+(((cj1)*(r21)*(x13429)))+(((x13420)*(x13432)))+(((sj1)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13421)*(x13422)))+(((sj1)*(x13423)*(x13424)))+(((cj1)*(r20)*(x13423)))+(((x13419)*(x13432)))+(((IkReal(-1.00000000000000))*(cj5)*(x13427)*(x13428)))))))+IKsqr(((((IKabs(((x13417)+(x13418))) != 0)?((IkReal)1/(((x13417)+(x13418)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13419)*(x13421)*(x13430)))+(((r20)*(sj1)*(x13423)))+(((x13425)*(x13427)))+(((r21)*(sj1)*(x13429)))+(((IkReal(-1.00000000000000))*(x13421)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13420)*(x13421)*(x13430)))+(((x13425)*(x13426)))+(((IkReal(-1.00000000000000))*(x13421)*(x13423)*(x13424)))+(((IkReal(-1.00000000000000))*(x13422)*(x13428)))))))-1) <= IKFAST_SINCOS_THRESH ) + continue; +j3array[0]=IKatan2(((((IKabs(((((cj2)*(x13418)))+(((cj2)*(x13417))))) != 0)?((IkReal)1/(((((cj2)*(x13418)))+(((cj2)*(x13417)))))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(cj5)*(x13426)*(x13428)))+(((cj1)*(r21)*(x13429)))+(((x13420)*(x13432)))+(((sj1)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13421)*(x13422)))+(((sj1)*(x13423)*(x13424)))+(((cj1)*(r20)*(x13423)))+(((x13419)*(x13432)))+(((IkReal(-1.00000000000000))*(cj5)*(x13427)*(x13428)))))), ((((IKabs(((x13417)+(x13418))) != 0)?((IkReal)1/(((x13417)+(x13418)))):(IkReal)1.0e30))*(((((IkReal(-1.00000000000000))*(x13419)*(x13421)*(x13430)))+(((r20)*(sj1)*(x13423)))+(((x13425)*(x13427)))+(((r21)*(sj1)*(x13429)))+(((IkReal(-1.00000000000000))*(x13421)*(x13429)*(x13431)))+(((IkReal(-1.00000000000000))*(x13420)*(x13421)*(x13430)))+(((x13425)*(x13426)))+(((IkReal(-1.00000000000000))*(x13421)*(x13423)*(x13424)))+(((IkReal(-1.00000000000000))*(x13422)*(x13428))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13433=IKcos(j3); +IkReal x13434=IKsin(j3); +IkReal x13435=((sj0)*(sj5)); +IkReal x13436=((r00)*(sj6)); +IkReal x13437=((IkReal(1.00000000000000))*(cj4)); +IkReal x13438=((cj6)*(r01)); +IkReal x13439=((cj0)*(cj5)); +IkReal x13440=((cj5)*(sj0)); +IkReal x13441=((cj6)*(r11)); +IkReal x13442=((cj6)*(sj4)); +IkReal x13443=((IkReal(1.00000000000000))*(cj1)); +IkReal x13444=((cj4)*(cj5)); +IkReal x13445=((cj6)*(r21)); +IkReal x13446=((r20)*(sj6)); +IkReal x13447=((r10)*(sj6)); +IkReal x13448=((cj0)*(sj5)); +IkReal x13449=((IkReal(1.00000000000000))*(cj0)); +IkReal x13450=((IkReal(1.00000000000000))*(x13448)); +IkReal x13451=((IkReal(1.00000000000000))*(x13434)); +IkReal x13452=((cj0)*(sj4)*(sj6)); +IkReal x13453=((cj2)*(x13434)); +IkReal x13454=((sj0)*(sj4)*(sj6)); +IkReal x13455=((IkReal(1.00000000000000))*(sj1)*(x13433)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13455)))+(((sj5)*(x13445)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((IkReal(-1.00000000000000))*(x13443)*(x13453)))+(((sj5)*(x13446)))); +evalcond[1]=((((r20)*(x13442)))+(((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((IkReal(-1.00000000000000))*(sj1)*(x13451)))+(((cj4)*(r22)*(sj5)))+(((cj1)*(cj2)*(x13433)))+(((x13444)*(x13446)))+(((x13444)*(x13445)))); +evalcond[2]=((((IkReal(-1.00000000000000))*(r02)*(x13440)))+(((IkReal(-1.00000000000000))*(sj2)*(x13451)))+(((r12)*(x13439)))+(((IkReal(-1.00000000000000))*(x13447)*(x13450)))+(((IkReal(-1.00000000000000))*(x13441)*(x13450)))+(((x13435)*(x13436)))+(((x13435)*(x13438)))); +evalcond[3]=((((sj1)*(x13453)))+(((IkReal(-1.00000000000000))*(x13438)*(x13450)))+(((r02)*(x13439)))+(((IkReal(-1.00000000000000))*(x13433)*(x13443)))+(((IkReal(-1.00000000000000))*(x13436)*(x13450)))+(((IkReal(-1.00000000000000))*(x13435)*(x13441)))+(((r12)*(x13440)))+(((IkReal(-1.00000000000000))*(x13435)*(x13447)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x13442)*(x13449)))+(((cj4)*(r02)*(x13435)))+(((sj2)*(x13433)))+(((r11)*(x13452)))+(((cj4)*(x13436)*(x13440)))+(((IkReal(-1.00000000000000))*(x13437)*(x13439)*(x13441)))+(((IkReal(-1.00000000000000))*(r01)*(x13454)))+(((r00)*(sj0)*(x13442)))+(((IkReal(-1.00000000000000))*(r12)*(x13437)*(x13448)))+(((cj4)*(x13438)*(x13440)))+(((IkReal(-1.00000000000000))*(x13437)*(x13439)*(x13447)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(r02)*(x13437)*(x13448)))+(((IkReal(-1.00000000000000))*(x13434)*(x13443)))+(((IkReal(-1.00000000000000))*(r12)*(x13435)*(x13437)))+(((IkReal(-1.00000000000000))*(x13436)*(x13437)*(x13439)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13442)))+(((IkReal(-1.00000000000000))*(x13437)*(x13438)*(x13439)))+(((IkReal(-1.00000000000000))*(x13437)*(x13440)*(x13447)))+(((r01)*(x13452)))+(((IkReal(-1.00000000000000))*(cj2)*(x13455)))+(((IkReal(-1.00000000000000))*(r00)*(x13442)*(x13449)))+(((IkReal(-1.00000000000000))*(x13437)*(x13440)*(x13441)))+(((r11)*(x13454)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} + +} else +{ +{ +IkReal j3array[1], cj3array[1], sj3array[1]; +bool j3valid[1]={false}; +_nj3 = 1; +IkReal x13456=((sj1)*(sj6)); +IkReal x13457=((r20)*(sj5)); +IkReal x13458=((IkReal(1.00000000000000))*(r21)); +IkReal x13459=((cj5)*(cj6)); +IkReal x13460=((r22)*(sj5)); +IkReal x13461=((cj4)*(sj1)); +IkReal x13462=((cj1)*(cj2)); +IkReal x13463=((cj5)*(r20)); +IkReal x13464=((cj4)*(x13462)); +IkReal x13465=((IkReal(1.00000000000000))*(cj5)*(r22)); +IkReal x13466=((cj6)*(r20)*(sj4)); +IkReal x13467=((cj6)*(r21)*(sj5)); +if( IKabs(((gconst4)*(((((sj1)*(x13466)))+(((IkReal(-1.00000000000000))*(sj4)*(x13456)*(x13458)))+(((x13460)*(x13461)))+(((cj4)*(x13456)*(x13463)))+(((r21)*(x13459)*(x13461)))+(((x13462)*(x13467)))+(((IkReal(-1.00000000000000))*(x13462)*(x13465)))+(((sj6)*(x13457)*(x13462))))))) < IKFAST_ATAN2_MAGTHRESH && IKabs(((gconst4)*(((((sj1)*(x13467)))+(((IkReal(-1.00000000000000))*(x13460)*(x13464)))+(((x13456)*(x13457)))+(((IkReal(-1.00000000000000))*(x13458)*(x13459)*(x13464)))+(((IkReal(-1.00000000000000))*(sj6)*(x13463)*(x13464)))+(((IkReal(-1.00000000000000))*(x13462)*(x13466)))+(((IkReal(-1.00000000000000))*(sj1)*(x13465)))+(((r21)*(sj4)*(sj6)*(x13462))))))) < IKFAST_ATAN2_MAGTHRESH ) + continue; +j3array[0]=IKatan2(((gconst4)*(((((sj1)*(x13466)))+(((IkReal(-1.00000000000000))*(sj4)*(x13456)*(x13458)))+(((x13460)*(x13461)))+(((cj4)*(x13456)*(x13463)))+(((r21)*(x13459)*(x13461)))+(((x13462)*(x13467)))+(((IkReal(-1.00000000000000))*(x13462)*(x13465)))+(((sj6)*(x13457)*(x13462)))))), ((gconst4)*(((((sj1)*(x13467)))+(((IkReal(-1.00000000000000))*(x13460)*(x13464)))+(((x13456)*(x13457)))+(((IkReal(-1.00000000000000))*(x13458)*(x13459)*(x13464)))+(((IkReal(-1.00000000000000))*(sj6)*(x13463)*(x13464)))+(((IkReal(-1.00000000000000))*(x13462)*(x13466)))+(((IkReal(-1.00000000000000))*(sj1)*(x13465)))+(((r21)*(sj4)*(sj6)*(x13462))))))); +sj3array[0]=IKsin(j3array[0]); +cj3array[0]=IKcos(j3array[0]); +if( j3array[0] > IKPI ) +{ + j3array[0]-=IK2PI; +} +else if( j3array[0] < -IKPI ) +{ j3array[0]+=IK2PI; +} +j3valid[0] = true; +for(int ij3 = 0; ij3 < 1; ++ij3) +{ +if( !j3valid[ij3] ) +{ + continue; +} +_ij3[0] = ij3; _ij3[1] = -1; +for(int iij3 = ij3+1; iij3 < 1; ++iij3) +{ +if( j3valid[iij3] && IKabs(cj3array[ij3]-cj3array[iij3]) < IKFAST_SOLUTION_THRESH && IKabs(sj3array[ij3]-sj3array[iij3]) < IKFAST_SOLUTION_THRESH ) +{ + j3valid[iij3]=false; _ij3[1] = iij3; break; +} +} +j3 = j3array[ij3]; cj3 = cj3array[ij3]; sj3 = sj3array[ij3]; +{ +IkReal evalcond[6]; +IkReal x13468=IKcos(j3); +IkReal x13469=IKsin(j3); +IkReal x13470=((sj0)*(sj5)); +IkReal x13471=((r00)*(sj6)); +IkReal x13472=((IkReal(1.00000000000000))*(cj4)); +IkReal x13473=((cj6)*(r01)); +IkReal x13474=((cj0)*(cj5)); +IkReal x13475=((cj5)*(sj0)); +IkReal x13476=((cj6)*(r11)); +IkReal x13477=((cj6)*(sj4)); +IkReal x13478=((IkReal(1.00000000000000))*(cj1)); +IkReal x13479=((cj4)*(cj5)); +IkReal x13480=((cj6)*(r21)); +IkReal x13481=((r20)*(sj6)); +IkReal x13482=((r10)*(sj6)); +IkReal x13483=((cj0)*(sj5)); +IkReal x13484=((IkReal(1.00000000000000))*(cj0)); +IkReal x13485=((IkReal(1.00000000000000))*(x13483)); +IkReal x13486=((IkReal(1.00000000000000))*(x13469)); +IkReal x13487=((cj0)*(sj4)*(sj6)); +IkReal x13488=((cj2)*(x13469)); +IkReal x13489=((sj0)*(sj4)*(sj6)); +IkReal x13490=((IkReal(1.00000000000000))*(sj1)*(x13468)); +evalcond[0]=((((IkReal(-1.00000000000000))*(x13490)))+(((sj5)*(x13480)))+(((IkReal(-1.00000000000000))*(cj5)*(r22)))+(((sj5)*(x13481)))+(((IkReal(-1.00000000000000))*(x13478)*(x13488)))); +evalcond[1]=((((IkReal(-1.00000000000000))*(r21)*(sj4)*(sj6)))+(((x13479)*(x13480)))+(((cj1)*(cj2)*(x13468)))+(((IkReal(-1.00000000000000))*(sj1)*(x13486)))+(((cj4)*(r22)*(sj5)))+(((r20)*(x13477)))+(((x13479)*(x13481)))); +evalcond[2]=((((x13470)*(x13471)))+(((IkReal(-1.00000000000000))*(x13482)*(x13485)))+(((x13470)*(x13473)))+(((IkReal(-1.00000000000000))*(sj2)*(x13486)))+(((r12)*(x13474)))+(((IkReal(-1.00000000000000))*(x13476)*(x13485)))+(((IkReal(-1.00000000000000))*(r02)*(x13475)))); +evalcond[3]=((((sj1)*(x13488)))+(((IkReal(-1.00000000000000))*(x13470)*(x13476)))+(((IkReal(-1.00000000000000))*(x13468)*(x13478)))+(((r02)*(x13474)))+(((IkReal(-1.00000000000000))*(x13471)*(x13485)))+(((IkReal(-1.00000000000000))*(x13470)*(x13482)))+(((IkReal(-1.00000000000000))*(x13473)*(x13485)))+(((r12)*(x13475)))); +evalcond[4]=((((IkReal(-1.00000000000000))*(r10)*(x13477)*(x13484)))+(((IkReal(-1.00000000000000))*(r12)*(x13472)*(x13483)))+(((cj4)*(x13471)*(x13475)))+(((IkReal(-1.00000000000000))*(x13472)*(x13474)*(x13476)))+(((IkReal(-1.00000000000000))*(x13472)*(x13474)*(x13482)))+(((r00)*(sj0)*(x13477)))+(((r11)*(x13487)))+(((sj2)*(x13468)))+(((cj4)*(x13473)*(x13475)))+(((IkReal(-1.00000000000000))*(r01)*(x13489)))+(((cj4)*(r02)*(x13470)))); +evalcond[5]=((((IkReal(-1.00000000000000))*(x13471)*(x13472)*(x13474)))+(((IkReal(-1.00000000000000))*(cj2)*(x13490)))+(((r11)*(x13489)))+(((IkReal(-1.00000000000000))*(x13472)*(x13475)*(x13482)))+(((IkReal(-1.00000000000000))*(x13469)*(x13478)))+(((IkReal(-1.00000000000000))*(r10)*(sj0)*(x13477)))+(((IkReal(-1.00000000000000))*(r02)*(x13472)*(x13483)))+(((r01)*(x13487)))+(((IkReal(-1.00000000000000))*(x13472)*(x13475)*(x13476)))+(((IkReal(-1.00000000000000))*(r12)*(x13470)*(x13472)))+(((IkReal(-1.00000000000000))*(r00)*(x13477)*(x13484)))+(((IkReal(-1.00000000000000))*(x13472)*(x13473)*(x13474)))); +if( IKabs(evalcond[0]) > 0.000001 || IKabs(evalcond[1]) > 0.000001 || IKabs(evalcond[2]) > 0.000001 || IKabs(evalcond[3]) > 0.000001 || IKabs(evalcond[4]) > 0.000001 || IKabs(evalcond[5]) > 0.000001 ) +{ +continue; +} +} + +{ +std::vector > vinfos(7); +vinfos[0].jointtype = 1; +vinfos[0].foffset = j0; +vinfos[0].indices[0] = _ij0[0]; +vinfos[0].indices[1] = _ij0[1]; +vinfos[0].maxsolutions = _nj0; +vinfos[1].jointtype = 1; +vinfos[1].foffset = j1; +vinfos[1].indices[0] = _ij1[0]; +vinfos[1].indices[1] = _ij1[1]; +vinfos[1].maxsolutions = _nj1; +vinfos[2].jointtype = 1; +vinfos[2].foffset = j2; +vinfos[2].indices[0] = _ij2[0]; +vinfos[2].indices[1] = _ij2[1]; +vinfos[2].maxsolutions = _nj2; +vinfos[3].jointtype = 1; +vinfos[3].foffset = j3; +vinfos[3].indices[0] = _ij3[0]; +vinfos[3].indices[1] = _ij3[1]; +vinfos[3].maxsolutions = _nj3; +vinfos[4].jointtype = 1; +vinfos[4].foffset = j4; +vinfos[4].indices[0] = _ij4[0]; +vinfos[4].indices[1] = _ij4[1]; +vinfos[4].maxsolutions = _nj4; +vinfos[5].jointtype = 1; +vinfos[5].foffset = j5; +vinfos[5].indices[0] = _ij5[0]; +vinfos[5].indices[1] = _ij5[1]; +vinfos[5].maxsolutions = _nj5; +vinfos[6].jointtype = 1; +vinfos[6].foffset = j6; +vinfos[6].indices[0] = _ij6[0]; +vinfos[6].indices[1] = _ij6[1]; +vinfos[6].maxsolutions = _nj6; +std::vector vfree(0); +solutions.AddSolution(vinfos,vfree); +} +} +} + +} + +} +} +} + +} + +} +} +} + +} + +} + } +} +return solutions.GetNumSolutions()>0; +} + +static inline bool checkconsistency8(const IkReal* Breal) +{ + IkReal norm = 0.1; + for(int i = 0; i < 7; ++i) { + norm += IKabs(Breal[i]); + } + IkReal tol = 1e-5*norm; // have to increase the threshold since many computations are involved + return IKabs(Breal[0]*Breal[1]-Breal[2]) < tol && IKabs(Breal[1]*Breal[1]-Breal[3]) < tol && IKabs(Breal[0]*Breal[3]-Breal[4]) < tol && IKabs(Breal[1]*Breal[3]-Breal[5]) < tol && IKabs(Breal[0]*Breal[5]-Breal[6]) < tol; +} +/// \brief Solve the det Ax^2+Bx+C = 0 problem using the Manocha and Canny method (1994) +/// +/// matcoeffs is of length 54*3, for 3 matrices +static inline void solvedialyticpoly8qep(const IkReal* matcoeffs, IkReal* rawroots, int& numroots) +{ + const IkReal tol = 128.0*std::numeric_limits::epsilon(); + IkReal IKFAST_ALIGNED16(M[16*16]) = {0}; + IkReal IKFAST_ALIGNED16(A[8*8]); + IkReal IKFAST_ALIGNED16(work[16*16*15]); + int ipiv[8]; + int info, coeffindex; + const int worksize=16*16*15; + const int matrixdim = 8; + const int matrixdim2 = 16; + numroots = 0; + // first setup M = [0 I; -C -B] and A + coeffindex = 0; + for(int j = 0; j < 4; ++j) { + for(int k = 0; k < 6; ++k) { + M[matrixdim+(j+4)+2*matrixdim*k] = M[matrixdim+j+2*matrixdim*(k+2)] = -matcoeffs[coeffindex++]; + } + } + for(int j = 0; j < 4; ++j) { + for(int k = 0; k < 6; ++k) { + M[matrixdim+(j+4)+2*matrixdim*k+matrixdim*2*matrixdim] = M[matrixdim+j+2*matrixdim*(k+2)+matrixdim*2*matrixdim] = -matcoeffs[coeffindex++]; + } + } + for(int j = 0; j < 4; ++j) { + for(int k = 0; k < 6; ++k) { + A[(j+4)+matrixdim*k] = A[j+matrixdim*(k+2)] = matcoeffs[coeffindex++]; + } + for(int k = 0; k < 2; ++k) { + A[j+matrixdim*k] = A[(j+4)+matrixdim*(k+6)] = 0; + } + } + const IkReal lfpossibilities[4][4] = {{1,-1,1,1},{1,0,-2,1},{1,1,2,0},{1,-1,4,1}}; + int lfindex = -1; + bool bsingular = true; + do { + dgetrf_(&matrixdim,&matrixdim,A,&matrixdim,&ipiv[0],&info); + if( info == 0 ) { + bsingular = false; + for(int j = 0; j < matrixdim; ++j) { + if( IKabs(A[j*matrixdim+j]) < 100*tol ) { + bsingular = true; + break; + } + } + if( !bsingular ) { + break; + } + } + if( lfindex == 3 ) { + break; + } + // transform by the linear functional + lfindex++; + const IkReal* lf = lfpossibilities[lfindex]; + // have to reinitialize A + coeffindex = 0; + for(int j = 0; j < 4; ++j) { + for(int k = 0; k < 6; ++k) { + IkReal a = matcoeffs[coeffindex+48], b = matcoeffs[coeffindex+24], c = matcoeffs[coeffindex]; + A[(j+4)+matrixdim*k] = A[j+matrixdim*(k+2)] = lf[0]*lf[0]*a+lf[0]*lf[2]*b+lf[2]*lf[2]*c; + M[matrixdim+(j+4)+2*matrixdim*k] = M[matrixdim+j+2*matrixdim*(k+2)] = -(lf[1]*lf[1]*a + lf[1]*lf[3]*b + lf[3]*lf[3]*c); + M[matrixdim+(j+4)+2*matrixdim*k+matrixdim*2*matrixdim] = M[matrixdim+j+2*matrixdim*(k+2)+matrixdim*2*matrixdim] = -(2*lf[0]*lf[1]*a + (lf[0]*lf[3]+lf[1]*lf[2])*b + 2*lf[2]*lf[3]*c); + coeffindex++; + } + for(int k = 0; k < 2; ++k) { + A[j+matrixdim*k] = A[(j+4)+matrixdim*(k+6)] = 0; + } + } + } while(lfindex<4); + + if( bsingular ) { + return; + } + dgetrs_("No transpose", &matrixdim, &matrixdim2, A, &matrixdim, &ipiv[0], &M[matrixdim], &matrixdim2, &info); + if( info != 0 ) { + return; + } + + // set identity in upper corner + for(int j = 0; j < matrixdim; ++j) { + M[matrixdim*2*matrixdim+j+matrixdim*2*j] = 1; + } + IkReal IKFAST_ALIGNED16(wr[16]); + IkReal IKFAST_ALIGNED16(wi[16]); + IkReal IKFAST_ALIGNED16(vr[16*16]); + int one=1; + dgeev_("N", "V", &matrixdim2, M, &matrixdim2, wr, wi,NULL, &one, vr, &matrixdim2, work, &worksize, &info); + if( info != 0 ) { + return; + } + IkReal Breal[matrixdim-1]; + for(int i = 0; i < matrixdim2; ++i) { + if( IKabs(wi[i]) < tol*100 ) { + IkReal* ev = vr+matrixdim2*i; + if( IKabs(wr[i]) > 1 ) { + ev += matrixdim; + } + // consistency has to be checked!! + if( IKabs(ev[0]) < tol ) { + continue; + } + IkReal iconst = 1/ev[0]; + for(int j = 1; j < matrixdim; ++j) { + Breal[j-1] = ev[j]*iconst; + } + if( checkconsistency8(Breal) ) { + if( lfindex >= 0 ) { + const IkReal* lf = lfpossibilities[lfindex]; + rawroots[numroots++] = (wr[i]*lf[0]+lf[1])/(wr[i]*lf[2]+lf[3]); + } + else { + rawroots[numroots++] = wr[i]; + } + bool bsmall0=IKabs(ev[0]) > IKabs(ev[2]); + bool bsmall1=IKabs(ev[0]) > IKabs(ev[1]); + if( bsmall0 && bsmall1 ) { + rawroots[numroots++] = ev[2]/ev[0]; + rawroots[numroots++] = ev[1]/ev[0]; + } + else if( bsmall0 && !bsmall1 ) { + rawroots[numroots++] = ev[3]/ev[1]; + rawroots[numroots++] = ev[1]/ev[0]; + } + else if( !bsmall0 && bsmall1 ) { + rawroots[numroots++] = ev[6]/ev[4]; + rawroots[numroots++] = ev[7]/ev[6]; + } + else if( !bsmall0 && !bsmall1 ) { + rawroots[numroots++] = ev[7]/ev[5]; + rawroots[numroots++] = ev[7]/ev[6]; + } + } + } + } +}}; + + +/// solves the inverse kinematics equations. +/// \param pfree is an array specifying the free joints of the chain. +IKFAST_API bool ComputeIk(const IkReal* eetrans, const IkReal* eerot, const IkReal* pfree, IkSolutionListBase& solutions) { +IKSolver solver; +return solver.ComputeIk(eetrans,eerot,pfree,solutions); +} + +IKFAST_API const char* GetKinematicsHash() { return ""; } + +IKFAST_API const char* GetIkFastVersion() { return IKFAST_STRINGIZE(IKFAST_VERSION); } + +#ifdef IKFAST_NAMESPACE +} // end namespace +#endif + +#ifndef IKFAST_NO_MAIN +#include +#include +#ifdef IKFAST_NAMESPACE +using namespace IKFAST_NAMESPACE; +#endif +int main(int argc, char** argv) +{ + if( argc != 12+GetNumFreeParameters()+1 ) { + printf("\nUsage: ./ik r00 r01 r02 t0 r10 r11 r12 t1 r20 r21 r22 t2 free0 ...\n\n" + "Returns the ik solutions given the transformation of the end effector specified by\n" + "a 3x3 rotation R (rXX), and a 3x1 translation (tX).\n" + "There are %d free parameters that have to be specified.\n\n",GetNumFreeParameters()); + return 1; + } + + IkSolutionList solutions; + std::vector vfree(GetNumFreeParameters()); + IkReal eerot[9],eetrans[3]; + eerot[0] = atof(argv[1]); eerot[1] = atof(argv[2]); eerot[2] = atof(argv[3]); eetrans[0] = atof(argv[4]); + eerot[3] = atof(argv[5]); eerot[4] = atof(argv[6]); eerot[5] = atof(argv[7]); eetrans[1] = atof(argv[8]); + eerot[6] = atof(argv[9]); eerot[7] = atof(argv[10]); eerot[8] = atof(argv[11]); eetrans[2] = atof(argv[12]); + for(std::size_t i = 0; i < vfree.size(); ++i) + vfree[i] = atof(argv[13+i]); + bool bSuccess = ComputeIk(eetrans, eerot, vfree.size() > 0 ? &vfree[0] : NULL, solutions); + + if( !bSuccess ) { + fprintf(stderr,"Failed to get ik solution\n"); + return -1; + } + + printf("Found %d ik solutions:\n", (int)solutions.GetNumSolutions()); + std::vector solvalues(GetNumJoints()); + for(std::size_t i = 0; i < solutions.GetNumSolutions(); ++i) { + const IkSolutionBase& sol = solutions.GetSolution(i); + printf("sol%d (free=%d): ", (int)i, (int)sol.GetFree().size()); + std::vector vsolfree(sol.GetFree().size()); + sol.GetSolution(&solvalues[0],vsolfree.size()>0?&vsolfree[0]:NULL); + for( std::size_t j = 0; j < solvalues.size(); ++j) + printf("%.15f, ", solvalues[j]); + printf("\n"); + } + return 0; +} + +#endif diff --git a/src/ikfast/baxter_right_arm_ikfast_solver.cpp.REMOVED.git-id b/src/ikfast/baxter_right_arm_ikfast_solver.cpp.REMOVED.git-id deleted file mode 100644 index cc35cf4a..00000000 --- a/src/ikfast/baxter_right_arm_ikfast_solver.cpp.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -0d971bf8972ce62c168b0303c9952b21bdeebebb \ No newline at end of file